/* Approved photography treatment. Scoped to recovered-photo sections. */
.hts-field-carousel{--field-gutter:max(48px,calc((100vw - 1200px)/2));padding:60px 0 40px;background:#f5f5f7;overflow:hidden;scroll-margin-top:110px;position:relative}
.hts-field-carousel .hts-field-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:3rem;margin-bottom:36px}
.hts-field-carousel .eyebrow{font-size:13px;line-height:1.5;letter-spacing:.09em;color:#6d7077;margin:0 0 14px;text-transform:uppercase;font-weight:600}
.hts-field-carousel h2{font-size:clamp(2.25rem,4.3vw,3.7rem);font-weight:650;line-height:1.05;letter-spacing:-.045em;margin:0;color:#1d1d1f}
.hts-field-carousel .hts-field-summary{max-width:310px;font-size:17px;line-height:1.55;color:#63636a;margin:0 0 4px;letter-spacing:-.012em}
.hts-field-carousel .hts-field-rail{display:flex;gap:22px;overflow-x:auto;overflow-y:hidden;padding:0 var(--field-gutter) 8px;scroll-padding-inline:var(--field-gutter);scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:none;touch-action:pan-x pan-y;outline-offset:-3px}
.hts-field-carousel .hts-field-rail::-webkit-scrollbar{display:none}
.hts-field-carousel .hts-field-slide{flex:0 0 340px;min-width:0;margin:0;scroll-snap-align:start}
.hts-field-carousel .hts-field-frame{aspect-ratio:3/4;border-radius:22px;background:#e4e5e8;overflow:hidden}
.hts-field-carousel .hts-field-frame img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%}
.hts-field-carousel figcaption{padding:18px 3px 0}
.hts-field-carousel figcaption h3{margin:0 0 5px;font-size:18px;line-height:1.3;font-weight:600;letter-spacing:-.02em;color:#1d1d1f}
.hts-field-carousel figcaption p{font-size:14px;line-height:1.5;margin:0;color:#6a6a70}
.hts-field-carousel .hts-field-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px}
.hts-field-carousel .hts-field-count{font-size:13px;letter-spacing:.04em;color:#74747a;font-variant-numeric:tabular-nums}
.hts-field-carousel .hts-field-controls{display:flex;gap:8px}
.hts-field-carousel .hts-field-controls[hidden]{display:none}
.hts-field-carousel button{appearance:none;border:0;background:#e5e5e9;border-radius:999px;color:#262629;padding:12px 20px;min-height:44px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;transition:background .15s ease,color .15s ease}
.hts-field-carousel button:hover:not(:disabled){background:#1d1d1f;color:#fff}
.hts-field-carousel button:disabled{opacity:.38;cursor:default}
.hts-field-carousel button:focus-visible,.hts-field-carousel .hts-field-rail:focus-visible{outline:3px solid #16729b;outline-offset:3px}
.hts-field-anchor{position:absolute;top:0;scroll-margin-top:110px}
.hts-field-single .hts-field-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:clamp(36px,6vw,90px);align-items:center}
.hts-field-single .hts-field-intro{display:block;margin:0}
.hts-field-single .hts-field-summary{max-width:360px;margin-top:24px}
.hts-field-single .hts-field-frame{aspect-ratio:auto}
.hts-field-single .hts-field-frame img{height:auto;max-height:460px;object-fit:contain}
.hts-field-single .hts-field-slide{width:100%;max-width:460px;justify-self:end}
@media(min-width:1500px){.hts-field-carousel .hts-field-slide{flex-basis:360px}}
@media(max-width:1200px){.hts-field-carousel{--field-gutter:32px}}
@media(max-width:1000px){.hts-field-carousel .hts-field-slide{flex-basis:42vw}.hts-field-carousel .hts-field-summary{max-width:270px}}
@media(max-width:680px){.hts-field-carousel{--field-gutter:20px}}
@media(max-width:600px){.hts-field-carousel{--field-gutter:20px;padding:42px 0 32px}.hts-field-carousel .hts-field-intro{display:block;margin-bottom:26px}.hts-field-carousel h2{font-size:2.4rem}.hts-field-carousel .hts-field-summary{max-width:290px;font-size:16px;margin-top:18px}.hts-field-carousel .hts-field-slide{flex-basis:78vw}.hts-field-carousel .hts-field-rail{gap:14px}.hts-field-carousel .hts-field-frame{border-radius:18px}.hts-field-carousel figcaption{padding-top:14px}.hts-field-carousel .hts-field-footer{margin-top:20px}.hts-field-carousel button{padding:12px 16px}.hts-field-carousel .eyebrow{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hts-field-carousel button{transition:none}}
@media(max-width:600px){.hts-field-single .hts-field-feature{grid-template-columns:minmax(0,1fr);gap:26px}.hts-field-single .hts-field-intro{margin:0}.hts-field-single .hts-field-slide{max-width:none}.hts-field-single .hts-field-frame img{max-height:420px}}
