.references-page{--reference-gutter:max(40px,calc((100vw - 1180px)/2));background:#fff}
.reference-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:65px;align-items:end;padding-block:32px 45px}
.reference-intro .eyebrow{margin-bottom:17px}
.reference-intro h1{font:600 clamp(40px,4.9vw,67px)/1.065 var(--font-display);letter-spacing:-.05em;max-width:780px}
.reference-intro h1 span{color:#4a7e31}
.reference-intro-copy{max-width:345px;padding-bottom:5px}
.reference-intro-copy p{color:var(--muted);font-size:15px;line-height:1.8}
.reference-intro-copy>a{display:inline-flex;gap:18px;align-items:center;font-size:12px;font-weight:550;margin-top:19px;padding-block:5px;border-bottom:1px solid #91af7b}
.reference-intro-copy>a span{font-size:20px;line-height:1}
.reference-gallery{padding-block:34px 35px;background:#f3f5f0;border-top:1px solid #e3e8dd;border-bottom:1px solid #e3e8dd}
.reference-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}
.reference-gallery-heading h2{font:500 15px/1.5 var(--font-body);letter-spacing:-.01em}
.reference-gallery-heading>p{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:9px}
.reference-gallery-heading>p span{display:inline-block;width:21px;height:1px;background:#7e9a6a;position:relative}
.reference-gallery-heading>p span:before,.reference-gallery-heading>p span:after{content:'';position:absolute;width:5px;height:5px;border-top:1px solid #7e9a6a;border-left:1px solid #7e9a6a;top:-2px}
.reference-gallery-heading>p span:before{left:0;transform:rotate(-45deg)}
.reference-gallery-heading>p span:after{right:0;transform:rotate(135deg)}
.reference-rail{display:flex;gap:22px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:var(--reference-gutter);padding:4px var(--reference-gutter) 18px;scrollbar-color:#9db58b transparent;scrollbar-width:thin;overscroll-behavior-x:contain;cursor:grab;position:relative;touch-action:pan-x pan-y pinch-zoom}
.reference-rail:focus-visible{outline:2px solid #4a7e31;outline-offset:-2px}
.reference-rail.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;user-select:none}
.reference-card{margin:0;min-width:0;flex:0 0 356px;scroll-snap-align:start;scroll-snap-stop:normal}
.reference-card--landscape{flex-basis:630px}
.reference-card-link{display:flex;position:relative;align-items:center;justify-content:center;width:100%;height:475px;background:#e4e9de;overflow:hidden;border:1px solid #d5ddcd;border-radius:4px;touch-action:pan-x pan-y pinch-zoom}
.reference-card-link>img{width:100%;height:100%;object-fit:contain;display:block;user-select:none;-webkit-user-drag:none;pointer-events:none}
.reference-zoom{position:absolute;right:12px;bottom:12px;width:35px;height:35px;display:grid;place-items:center;background:#fffffff0;color:var(--ink);border:1px solid #fff8;border-radius:50%;font-size:17px;transition:background .2s,transform .2s;box-shadow:0 2px 12px #0e1a2812}
.reference-card-link:hover .reference-zoom{background:var(--signal);transform:scale(1.06)}
.reference-card figcaption{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:17px 1px 0}
.reference-card figcaption>span{min-width:0}
.reference-card figcaption strong{display:block;font-size:12px;font-weight:550;line-height:1.5}
.reference-location{display:block;font-size:11px;line-height:1.7;color:#5b6851;margin-top:4px;min-height:19px}
.reference-number{font-size:10px;line-height:1.7;font-variant-numeric:tabular-nums;color:#6b7961;padding-top:1px}
.reference-controls{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:21px}
.reference-controls[hidden]{display:none}
.reference-controls>p{font-size:11px;color:#637256}
.reference-controls-actions{display:flex;align-items:center;gap:10px}
.reference-counter{min-width:105px;text-align:center;font:500 12px/1.5 var(--font-body);font-variant-numeric:tabular-nums;color:#596c4b;letter-spacing:.025em}
.reference-arrow{width:48px;height:48px;border:1px solid #ccd7c2;background:#fff;color:var(--ink);border-radius:50%;display:grid;place-items:center;font-size:23px;line-height:1;transition:background .18s,border-color .18s}
.reference-arrow:not(:disabled):hover{background:var(--signal);border-color:var(--signal)}
.reference-arrow:disabled{opacity:.35;cursor:default}
.reference-story{display:grid;grid-template-columns:.8fr 1fr;gap:95px;padding-block:75px 80px;align-items:start}
.reference-story h2{font:600 clamp(27px,3vw,39px)/1.16 var(--font-display);letter-spacing:-.04em;max-width:450px}
.reference-story p{font-size:15px;color:var(--muted);line-height:1.85;max-width:530px}
.reference-story .eyebrow{font-size:10px;margin-bottom:14px}
.reference-story-links{display:flex;flex-wrap:wrap;gap:11px 23px;margin-top:22px}
.reference-story-links a{font-size:12px;font-weight:500;display:inline-flex;gap:12px;align-items:center;border-bottom:1px solid #c7d5bc;padding-bottom:5px}
.reference-dialog{width:min(1380px,calc(100% - 48px));max-width:none;height:min(920px,calc(100dvh - 48px));max-height:none;border:1px solid #ffffff20;background:var(--ink);color:#fff;padding:0;border-radius:7px;overflow:hidden;box-shadow:0 20px 100px #0008}
.reference-dialog::backdrop{background:#07111bdc;backdrop-filter:blur(5px)}
.reference-dialog-inner{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.reference-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;border-bottom:1px solid #ffffff18}
.reference-dialog-bar>p{font-size:10px;font-weight:500;letter-spacing:.13em;color:#b4cba5}
.reference-close{min-width:42px;height:42px;display:flex;align-items:center;justify-content:center;gap:10px;background:transparent;border:1px solid #ffffff35;border-radius:4px;color:#fff;font-size:11px;padding-inline:12px}
.reference-close span{font-size:24px;line-height:1;font-weight:300}
.reference-close:hover{background:#ffffff12}
.reference-dialog-image{display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;padding:18px 24px}
.reference-dialog-image img{width:100%;height:100%;object-fit:contain}
.reference-dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff18;padding:15px 20px}
.reference-dialog-caption{font-size:12px;color:#d1ddc9;max-width:65%;line-height:1.7}
.reference-dialog .reference-counter{color:#c7d6bd;min-width:77px}
.reference-dialog .reference-arrow{width:42px;height:42px;border-color:#ffffff35;background:transparent;color:#fff}
.reference-dialog .reference-arrow:not(:disabled):hover{background:var(--signal);border-color:var(--signal);color:var(--ink)}
.reference-dialog button:focus-visible{outline-color:#a2d383}
@media(max-width:1080px){.references-page{--reference-gutter:30px}.reference-intro{gap:35px;grid-template-columns:1.4fr 1fr}.reference-intro h1{font-size:53px}.reference-intro-copy p{font-size:14px}.reference-card{flex-basis:320px}.reference-card--landscape{flex-basis:555px}.reference-card-link{height:420px}.reference-story{gap:60px}.references-page .seo-header-inner>.seo-nav{display:none}.references-page .seo-header-cta{margin-left:auto}.references-page .seo-menu{display:block;position:relative}.references-page .seo-menu summary{cursor:pointer;display:flex;gap:10px;align-items:center;min-height:42px;padding:10px 12px;border:1px solid var(--line);border-radius:3px;font-size:12px;list-style:none}.references-page .seo-menu summary::-webkit-details-marker{display:none}.references-page .seo-mobile-nav{position:absolute;right:0;top:calc(100% + 15px);display:flex;flex-direction:column;align-items:stretch;gap:0;width:240px;background:#fff;border:1px solid var(--line);padding:12px 20px;box-shadow:0 16px 28px #0e1a2812;z-index:50;margin:0;font-size:15px}.references-page .seo-menu:not([open]) .seo-mobile-nav{display:none}}
@media(max-width:700px){.reference-intro{grid-template-columns:1fr;gap:22px;padding-block:23px 35px}.reference-intro h1{font-size:clamp(39px,8vw,53px)}.reference-intro-copy{max-width:510px}.reference-intro-copy p{font-size:14px}.reference-intro-copy>a{margin-top:12px}.reference-gallery{padding-top:24px}.reference-gallery-heading{align-items:flex-start;gap:15px;margin-bottom:19px}.reference-gallery-heading>p{max-width:140px;font-size:10px;text-align:right}.reference-gallery-heading>p span{display:none}.reference-gallery-heading h2{font-size:13px}.reference-card,.reference-card--landscape{flex-basis:min(80vw,430px)}.reference-card-link{height:420px}.reference-rail{gap:16px}.reference-controls{padding-top:13px}.reference-controls>p{max-width:130px;font-size:10px}.reference-controls-actions{gap:5px}.reference-arrow{width:43px;height:43px}.reference-counter{min-width:88px;font-size:10px}.reference-story{grid-template-columns:1fr;gap:20px;padding-block:48px 54px}.reference-story h2{max-width:480px;font-size:33px}.reference-story p{font-size:14px}.reference-dialog{width:calc(100% - 20px);height:calc(100dvh - 20px)}.reference-dialog-bar{padding:11px 13px}.reference-dialog-bar>p{font-size:9px}.reference-dialog-image{padding:14px 10px}.reference-dialog-bottom{padding:13px;align-items:center;gap:12px}.reference-dialog-caption{font-size:10px;max-width:48%}.reference-dialog .reference-counter{min-width:54px;font-size:10px}.reference-dialog .reference-arrow{width:37px;height:37px}.reference-close{min-width:40px;height:40px;font-size:0;gap:0}}
@media(max-width:600px){.references-page{--reference-gutter:20px}.reference-card-link{height:390px}.references-page .seo-menu summary{font-size:0;padding:10px;min-height:40px;gap:0}.references-page .seo-menu summary span{font-size:14px}}
@media(max-width:390px){.reference-card-link{height:355px}.reference-controls>p{max-width:100px}.reference-controls{gap:10px}.reference-gallery-heading>p{max-width:117px}.reference-intro h1{font-size:38px}.reference-dialog-caption{max-width:44%}}
@media(max-width:350px){.references-page{--reference-gutter:16px}.references-page .seo-header-cta>span{display:none}}
@media(prefers-reduced-motion:reduce){.reference-rail{scroll-behavior:auto}.reference-zoom,.reference-arrow{transition:none}.reference-card-link:hover .reference-zoom{transform:none}}
@media print{.reference-intro{padding:20px 0}.reference-rail{display:grid;grid-template-columns:1fr 1fr;overflow:visible;padding:0;gap:20px}.reference-card{break-inside:avoid}.reference-card-link{height:250px}.reference-gallery-heading>p,.reference-controls,.reference-zoom,.seo-header,.preview-bar,.seo-cta,.seo-footer,.reference-dialog{display:none!important}.reference-gallery{background:#fff}.reference-story{padding-block:25px}.references-page .container{width:100%}}
