/* Client-supplied style directory and static, directly linkable property details. */
.style-index,.property-selection{max-width:1440px;margin:auto;padding:86px 40px}.style-index-head{margin-bottom:38px}.style-kicker{color:#315f5c;font-size:12px;letter-spacing:.18em;margin:0 0 14px}.style-index-head h2{font-family:var(--serif);font-size:38px;line-height:1.4;color:#243e39;margin:0 0 16px}.style-index-head>p:last-child{font-size:15px;line-height:1.8;color:#607570}.style-strip{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 112px)/8);gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:6px 6px 20px;margin:0 -6px;scrollbar-color:#579b97 #e4ece8;scrollbar-width:thin}.style-tile{display:block;min-width:0;scroll-snap-align:start;text-decoration:none;color:#315f5c}.style-number{display:block;font-family:Georgia,serif;font-size:34px;line-height:1;margin-bottom:16px;font-weight:400}.style-cover{position:relative;display:block;height:300px;overflow:hidden;background:#dbe7e1}.style-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,28,25,.28),rgba(10,28,25,.2) 50%,rgba(10,28,25,.5))}.style-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s}.style-tile:hover .style-cover img{transform:scale(1.04)}.style-name{position:absolute;top:24px;left:50%;transform:translateX(-50%);z-index:1;writing-mode:vertical-rl;color:#fff;font-family:var(--serif);font-size:23px;letter-spacing:6px;line-height:1.2;text-shadow:0 1px 8px #153530}.style-caption{display:block;font-size:11px;line-height:1.7;color:#607570;margin-top:12px}.style-scroll-note{color:#607570;font-size:12px;margin-top:16px;text-align:right}.property-selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.property-card{display:block;border:1px solid #d9e2dc;background:#fff;color:#315f5c;text-decoration:none}.property-card img{width:100%;height:260px;object-fit:cover;display:block}.property-card h3{font-family:var(--serif);font-size:23px;margin:22px 22px 10px}.property-card p{font-size:13px;margin:0 22px 24px;color:#607570}
.style-detail{background:#f6f2ea;color:#1e2420}.style-detail-main{max-width:1280px;margin:auto;padding:120px 40px 70px}.style-back{display:inline-block;color:#315f5c;font-size:14px;padding:10px 0}.style-detail-head{margin:36px 0 60px}.style-detail-head h1{font-family:var(--serif);font-size:clamp(32px,4vw,54px);font-weight:500;line-height:1.3;margin:14px 0 20px}.style-detail-head>p:last-child{color:#607570;line-height:1.9}.property-group{margin:0 0 72px}.property-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;border-top:1px solid #d2dfd8;padding-top:24px;margin-bottom:26px}.property-heading h2{font-family:var(--serif);font-size:28px;font-weight:500;margin:0;color:#315f5c}.property-heading p{font-size:13px;color:#607570}.property-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.property-photos a{display:block;background:#e9eeea}.property-photos img{display:block;width:100%;height:auto}.style-contact{padding:40px;text-align:center;background:#e6efea}.style-contact h2{font-family:var(--serif);font-size:28px;font-weight:500;margin:0 0 20px}.style-contact>a{font-size:32px;color:#315f5c;display:inline-block;padding:10px}.style-contact p{color:#607570;font-size:14px;line-height:1.8;margin-top:16px}
@media(max-width:1100px){.style-strip{grid-auto-columns:calc((100% - 64px)/5)}.style-cover{height:300px}.property-card img{height:210px}}
@media(max-width:600px){.renovation-page .style-index,.renovation-page .property-selection{padding:60px 24px}.style-index-head h2{font-size:28px}.style-strip{grid-auto-columns:38%;gap:16px}.style-cover{height:260px}.style-number{font-size:30px}.style-name{font-size:22px}.style-caption{font-size:11px}.style-index-head{margin-bottom:28px}.property-selection-grid{grid-template-columns:1fr;gap:22px}.property-card img{height:240px}.style-detail-main{padding:104px 24px 48px}.style-detail-head{margin:26px 0 40px}.property-heading{display:block}.property-heading h2{font-size:24px}.property-heading p{margin-top:12px}.property-photos{grid-template-columns:1fr;gap:16px}.property-group{margin-bottom:48px}.style-contact{padding:30px 18px}.style-contact h2{font-size:24px}.style-contact>a{font-size:27px}}
@media(prefers-reduced-motion:reduce){.style-cover img{transition:none}.style-tile:hover .style-cover img{transform:none}}
/* Fullscreen in-page photo preview; native dialog handles focus and Escape. */
.photo-viewer{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:64px 76px;border:0;background:rgba(15,23,21,.96);color:#fff;overflow:hidden}.photo-viewer[open]{display:flex;align-items:center;justify-content:center}.photo-viewer::backdrop{background:rgba(15,23,21,.8)}.photo-viewer figure{margin:0;max-width:100%;display:flex;flex-direction:column;align-items:center;gap:16px}.photo-viewer img{max-width:100%;max-height:calc(100dvh - 170px);width:auto;height:auto;object-fit:contain;touch-action:pan-y pinch-zoom}.photo-viewer figcaption{font-size:13px;line-height:1.6;text-align:center;color:#e1e9e6}.photo-viewer button{position:absolute;display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff50;border-radius:50%;background:#243e39;color:#fff;cursor:pointer;font-family:Arial,sans-serif;font-size:36px;line-height:1}.photo-viewer button[hidden]{display:none}.photo-viewer button:focus-visible{outline:3px solid #fff;outline-offset:3px}.photo-close{right:20px;top:20px}.photo-prev{left:16px;top:calc(50% - 24px)}.photo-next{right:16px;top:calc(50% - 24px)}.property-photos a{cursor:zoom-in}@media(max-width:600px){.photo-viewer{padding:76px 12px 96px}.photo-viewer img{max-height:calc(100dvh - 220px)}.photo-viewer .photo-prev,.photo-viewer .photo-next{top:auto;bottom:calc(24px + env(safe-area-inset-bottom))}.photo-viewer .photo-prev{left:calc(50% - 64px)}.photo-viewer .photo-next{right:calc(50% - 64px)}.photo-viewer .photo-close{top:calc(16px + env(safe-area-inset-top));right:16px}}
.case-category-nav{max-width:1360px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 40px}.case-category-nav a{display:grid;grid-template-columns:40px 1fr;gap:8px 16px;border-top:1px solid #a7bdb6;border-bottom:1px solid #a7bdb6;padding:24px 0;color:#315f5c;text-decoration:none}.case-category-nav span{grid-row:span 2;font:24px Georgia,serif}.case-category-nav strong{font-family:var(--serif);font-size:26px;font-weight:500}.case-category-nav small{font-size:13px;color:#607570}.light-care-section{max-width:1440px;margin:auto;padding:72px 40px}.light-care-pending{border-top:1px solid #d2dfd8;padding:28px 0}.light-care-pending p{font-family:var(--serif);font-size:24px;color:#315f5c;margin:0 0 12px}.light-care-pending span{display:block;color:#607570;font-size:14px;line-height:1.8}.light-care-pending a{display:inline-block;margin-top:20px;color:#315f5c;padding:8px 0}@media(max-width:600px){.case-category-nav{padding:0 24px;gap:18px}.case-category-nav a{grid-template-columns:1fr;gap:10px}.case-category-nav span{grid-row:auto;font-size:20px}.case-category-nav strong{font-size:23px}.renovation-page #panel-light .light-care-section{padding:24px 24px 56px}}
.case-category-nav[role=tablist]{display:flex;gap:0;border-bottom:1px solid #cad9d2;padding-bottom:0}.case-category-nav[role=tablist] button{background:transparent;border:0;border-bottom:3px solid transparent;color:#607570;font-family:var(--serif);font-size:25px;padding:22px 38px;cursor:pointer}.case-category-nav[role=tablist] button[aria-selected=true]{color:#315f5c;border-bottom-color:#579b97;background:#e8efea}.case-category-nav[role=tablist] button:focus-visible{outline:2px solid #315f5c;outline-offset:-5px}[role=tabpanel][hidden]{display:none}@media(max-width:600px){.case-category-nav[role=tablist] button{flex:1;font-size:22px;padding:20px 12px}}
.style-detail-head .listing-price{font-size:28px;color:#315f5c;font-weight:500}.listing-price span{display:inline-block;font-size:13px;margin-left:12px;padding:4px 10px;background:#e4ece6;vertical-align:middle}.listing-facts{margin-bottom:64px;border-top:1px solid #d2dfd8}.listing-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:26px 40px;margin:28px 0}.listing-facts dt{font-size:12px;color:#607570;margin-bottom:8px}.listing-facts dd{margin:0;font-size:17px;line-height:1.8}.listing-equipment{padding:24px 0;border-top:1px solid #d2dfd8}.listing-equipment h2{font:24px var(--serif);color:#315f5c;margin:0 0 14px}.listing-equipment p{line-height:1.9;color:#607570}.listing-video{display:block;width:100%;max-height:75vh;background:#15201c}.listing-contacts{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:24px 0}.listing-contacts a{padding:14px 20px;color:#fff;background:#315f5c;font-size:17px}@media(max-width:600px){.listing-facts dl{grid-template-columns:1fr;gap:22px}.listing-facts dd{font-size:16px}.listing-contacts{flex-direction:column}.listing-contacts a{font-size:16px}}
/* Natural-ratio waterfall columns prevent portrait photos leaving empty grid rows. */
.property-photos{display:block;columns:2;column-gap:24px}.property-photos a{display:inline-block;width:100%;margin:0 0 24px;break-inside:avoid;vertical-align:top}.property-photos img{width:100%;height:auto}@media(max-width:600px){.property-photos{columns:1;column-gap:0}.property-photos a{margin-bottom:16px}}
/* Case context stays visible in the list, alongside each property's real photograph. */
.care-story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:44px;align-items:start;padding:44px 0;border-top:1px solid #d2dfd8}
.care-story-photo{display:block;position:relative;margin-top:4px;aspect-ratio:4/3;overflow:hidden;border-radius:2px}.care-story-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.care-story-content{min-width:0}.care-story-kicker{color:#607570;font-size:13px;margin:0 0 12px;line-height:1.7}
.care-story h3{font:500 30px/1.4 var(--serif);color:#254c46;margin:0 0 22px}.care-story h3 a{color:inherit;text-decoration:none}.care-story h4{font-size:16px;color:#284c43;margin:20px 0 8px;font-weight:600}
.care-story-content>p:not(.care-story-kicker){color:#52615a;font-size:15px;line-height:1.85;margin:0}
.care-story-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.care-story-metrics>div{background:#fff;border:1px solid #e0e5de;padding:16px 8px;text-align:center;min-width:0}.care-story-metrics dt{font:500 clamp(17px,1.7vw,25px)/1.5 var(--serif);color:#284c43}.care-story-metrics dd{font-size:12px;color:#607570;margin:5px 0 0}
.care-story-content>.care-story-note{font-size:13px!important}.care-story-link{display:inline-block;color:#315f5c;font-size:14px;text-decoration:none;border-bottom:1px solid #a9c5bc;padding:8px 0;margin-top:16px}
html:lang(en) .care-story-metrics dt{font-size:19px}html:lang(en) .care-story-metrics>div{overflow-wrap:normal}
@media(max-width:900px){.care-story{grid-template-columns:1fr;gap:24px}.care-story h3{font-size:28px}.care-story-metrics dt{font-size:23px}}
@media(max-width:600px){.care-story{padding:32px 0;gap:22px}.care-story h3{font-size:26px}.care-story-metrics{gap:8px}.care-story-metrics dt{font-size:19px}.care-story-metrics>div{padding:14px 6px}html:lang(en) .care-story-metrics{grid-template-columns:1fr}html:lang(en) .care-story-metrics>div{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;padding:12px}html:lang(en) .care-story-metrics dd{margin:0}}

/* Keep mobile case content close to its category tabs. */
@media(max-width:600px){.renovation-page #panel-renovation > #styles{padding-top:24px}}

/* Avoid stacking full section padding between the style directory and collection. */
.renovation-page #panel-renovation > #styles{padding-bottom:24px}
.renovation-page #panel-renovation > #styles + #renovation-homes{padding-top:32px}
@media(max-width:600px){.renovation-page #panel-renovation > #styles{padding-bottom:16px}.renovation-page #panel-renovation > #styles + #renovation-homes{padding-top:24px}}
