.listing-page img{object-fit:fill}.listing-page{background:#f3f2ee;color:#101820}.listing-page .site-header{background:rgba(243,242,238,.96);color:#101820;backdrop-filter:blur(14px);border-bottom:1px solid rgba(16,24,32,.08)}.listing-page .brand small{color:#72797c}.listing-page .desktop-nav a.is-active:after{right:0}.listing-main{padding-top:84px}.listing-hero{padding:88px 7vw 64px;background:#fff;border-bottom:1px solid var(--line)}.listing-hero-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:8vw;align-items:end}.listing-kicker{margin:0 0 22px;color:var(--gold-deep);font-size:11px;font-weight:700}.listing-hero h1{max-width:760px;margin:0;font-size:clamp(44px,5.3vw,76px);line-height:1.12;font-weight:550}.listing-hero-copy{margin:0;color:var(--muted);font-size:15px;line-height:1.9}.listing-content{max-width:1320px;margin:auto;padding:54px 7vw 112px}.filter-toolbar{position:sticky;top:72px;z-index:20;display:flex;align-items:center;gap:10px;margin:0 0 42px;padding:14px 0;background:rgba(243,242,238,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.filter-label{margin-right:14px;color:var(--muted);font-size:12px}.filter-button{min-height:38px;padding:8px 16px;border:1px solid #cfd3d0;background:transparent;color:var(--muted);cursor:pointer;white-space:nowrap}.filter-button.active{border-color:var(--gold);background:var(--gold);color:var(--ink);font-weight:600}.result-count{margin-left:auto;color:var(--muted);font-size:12px;white-space:nowrap}.result-count strong{color:var(--ink);font-size:18px;margin-right:4px}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}.listing-card{min-width:0;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}.listing-card[hidden]{display:none}.listing-card-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:#dfe3df}.listing-card-media img{width:100%;height:100%;background:#eef1ee;transition:transform .4s ease}.listing-card:hover .listing-card-media img{transform:scale(1.025)}.listing-tag{position:absolute;left:16px;top:16px;padding:7px 10px;background:var(--gold);color:var(--ink);font-size:10px;font-weight:700}.listing-card-body{min-height:230px;padding:25px 24px 24px;display:flex;flex-direction:column}.listing-card-meta{margin:0 0 12px;color:var(--gold-deep);font-size:10px;font-weight:700}.listing-card h2{min-height:58px;margin:0 0 14px;font-size:22px;line-height:1.35;font-weight:600}.listing-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.85}.listing-card-foot{margin-top:auto;padding-top:22px;display:flex;justify-content:space-between;gap:15px;color:#667079;font-size:11px;border-top:1px solid var(--line)}.resource-card .listing-card-body{min-height:250px}.resource-specs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:auto;padding-top:22px}.resource-specs span{display:grid;gap:4px;color:var(--muted);font-size:10px}.resource-specs strong{color:var(--ink);font-size:14px}.faq-grid{grid-template-columns:1fr 1fr;gap:16px}.faq-card{min-height:0;padding:0}.faq-card details{height:100%;background:#fff}.faq-card summary{min-height:92px;padding:25px 24px;display:grid;grid-template-columns:42px 1fr 18px;gap:8px;align-items:center;list-style:none;cursor:pointer;font-size:16px;line-height:1.5}.faq-card summary::-webkit-details-marker{display:none}.faq-card summary span{color:var(--gold-deep);font-size:10px}.faq-card summary i{position:relative;width:14px;height:14px}.faq-card summary i:before,.faq-card summary i:after{content:"";position:absolute;left:0;top:6px;width:14px;height:1px;background:var(--ink);transition:.2s}.faq-card summary i:after{transform:rotate(90deg)}.faq-card details[open] summary i:after{transform:none}.faq-answer{margin:0;padding:0 24px 26px 74px;color:var(--muted);font-size:13px;line-height:1.9}.listing-empty{display:none;padding:50px;text-align:center;color:var(--muted);background:#fff;border:1px solid var(--line)}.listing-empty.visible{display:block}.listing-cta{padding:76px 7vw;background:var(--ink-soft);color:#fff}.listing-cta-inner{max-width:1140px;margin:auto;display:flex;align-items:end;justify-content:space-between;gap:40px}.listing-cta h2{max-width:700px;margin:0;font-size:clamp(30px,4vw,52px);line-height:1.25}.listing-cta a{flex:0 0 auto;padding:17px 22px;background:var(--gold-light);color:var(--ink);font-size:14px}.listing-page footer{padding-left:7vw;padding-right:7vw}
@media(max-width:1050px){.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-hero-inner{gap:5vw}}
@media(max-width:900px){.listing-main{padding-top:70px}.listing-page .site-header:not(.is-scrolled){background:rgba(243,242,238,.96);color:var(--ink);backdrop-filter:blur(14px)}.listing-page .site-header:not(.is-scrolled) .brand small{color:#72797c}.listing-page .site-header:not(.is-scrolled) .menu-button{border-color:rgba(17,24,32,.2);background:rgba(245,246,244,.65)}.listing-page .site-header:not(.is-scrolled) .menu-button i{background:var(--ink)}.listing-hero{padding:64px 6vw 50px}.listing-hero-inner{grid-template-columns:1fr;gap:28px}.listing-hero h1{font-size:48px}.listing-content{padding:38px 6vw 88px}.filter-toolbar{top:70px;overflow-x:auto;align-items:center;margin-left:-6vw;margin-right:-6vw;padding-left:6vw;padding-right:6vw}.filter-label{display:none}.result-count{position:sticky;right:0;padding:8px 0 8px 16px;background:rgba(243,242,238,.96)}.listing-cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.listing-hero h1{font-size:38px}.listing-grid,.faq-grid{grid-template-columns:1fr}.listing-card h2{min-height:0}.listing-card-body,.resource-card .listing-card-body{min-height:0}.listing-card-foot,.resource-specs{margin-top:24px}.faq-card summary{min-height:82px;padding:22px 18px;grid-template-columns:34px 1fr 18px;font-size:15px}.faq-answer{padding:0 18px 24px 60px}.listing-cta{padding:62px 6vw}.listing-cta a{width:100%;display:flex;justify-content:space-between}}

/* Real map overrides */
.resource-map-canvas{background:#edf0ed!important;filter:none!important}
.resource-map-canvas:after{display:none!important}

/* Compact resources masthead matching the editorial reference layout. */
.resources-page .listing-main{padding-top:84px}
.resources-page .listing-hero{height:239px;display:flex;align-items:center;padding:0 7vw;background:#fff;border-bottom:1px solid #d8dcd8}
.resources-page .listing-hero-inner{width:100%;max-width:1340px;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:7vw;align-items:center}
.resources-page .listing-kicker{margin:0 0 24px;font-size:12px;letter-spacing:0;color:#87601c}
.resources-page .listing-hero h1{font-size:clamp(56px,5.2vw,78px);line-height:1.06;letter-spacing:0;font-weight:600}
.resources-page .listing-hero-copy{max-width:470px;font-size:15px;line-height:1.9;color:#68737a}
/* Match the cases masthead geometry while keeping the resources white treatment. */
.resources-page .listing-hero{min-height:410px;height:auto;padding:70px 7vw 62px;align-items:flex-end}
.resources-page .listing-hero{color:#fff;background-image:linear-gradient(90deg,rgba(8,15,21,.84) 0%,rgba(8,15,21,.58) 52%,rgba(8,15,21,.34) 100%),url("assets/case-network-real-hd.jpg");background-size:cover;background-position:center 48%;border-bottom:0}
.resources-page .listing-hero-inner{max-width:1320px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:8vw;align-items:end}
.resources-page .listing-kicker{margin-bottom:16px}
.resources-page .listing-hero h1{font-size:clamp(48px,5vw,68px);color:#fff}
.resources-page .listing-hero-copy{max-width:440px;padding-left:24px;border-left:2px solid var(--gold);line-height:1.85;color:rgba(255,255,255,.82)}
.listing-page:has(.faq-grid) .listing-hero{min-height:410px;height:auto;padding:70px 7vw 62px;display:flex;align-items:flex-end;color:#fff;background-image:linear-gradient(90deg,rgba(8,15,21,.84),rgba(8,15,21,.5) 52%,rgba(8,15,21,.3)),url("assets/case-featured-real-hd.jpg");background-size:cover;background-position:center 48%;border-bottom:0}
.listing-page:has(.faq-grid) .listing-hero-inner{width:100%;max-width:1320px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:8vw;align-items:end}.listing-page:has(.faq-grid) .listing-hero h1{font-size:clamp(48px,5vw,68px);color:#fff}.listing-page:has(.faq-grid) .listing-hero-copy{max-width:440px;padding-left:24px;border-left:2px solid var(--gold);color:rgba(255,255,255,.82);line-height:1.85}
@media(max-width:900px){.listing-page:has(.faq-grid) .listing-hero{min-height:360px;padding:54px 6vw 46px}.listing-page:has(.faq-grid) .listing-hero-inner{grid-template-columns:1fr;gap:24px}.listing-page:has(.faq-grid) .listing-hero h1{font-size:46px}.listing-page:has(.faq-grid) .listing-hero-copy{max-width:520px;padding-left:16px}}
@media(max-width:620px){.listing-page:has(.faq-grid) .listing-hero{min-height:340px;padding-top:48px;padding-bottom:40px}.listing-page:has(.faq-grid) .listing-hero h1{font-size:40px}.listing-page:has(.faq-grid) .listing-hero-copy{font-size:14px}}
@media(max-width:900px){.resources-page .listing-hero{min-height:360px;padding:54px 6vw 46px}.resources-page .listing-hero-inner{grid-template-columns:1fr;gap:24px}.resources-page .listing-hero h1{font-size:46px}.resources-page .listing-hero-copy{max-width:520px;padding-left:16px}}
@media(max-width:620px){.resources-page .listing-hero{min-height:340px;padding-top:48px;padding-bottom:40px}.resources-page .listing-hero h1{font-size:40px}.resources-page .listing-hero-copy{font-size:14px}}
@media(max-width:900px){.resources-page .listing-hero{height:auto;min-height:280px;padding:58px 6vw 52px}.resources-page .listing-hero-inner{grid-template-columns:1fr;gap:26px}.resources-page .listing-hero h1{font-size:52px}}
@media(max-width:620px){.resources-page .listing-hero{min-height:300px;padding:52px 6vw 46px}.resources-page .listing-hero h1{font-size:42px}.resources-page .listing-hero-copy{font-size:14px}}

.resources-page .listing-hero,.resources-page .listing-content,.resources-page .listing-cta{display:none}.resources-page .resource-map-view{position:relative;height:calc(100vh - 84px);min-height:650px;overflow:hidden;background:#e9eeeb}.resource-map-canvas{position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.22),rgba(255,255,255,.22)),url("assets/case-network-real-hd.jpg") center/cover;filter:saturate(.25) brightness(1.3)}.resource-map-canvas:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px);background-size:64px 64px}.resource-pin{position:absolute;z-index:2;transform:translate(-50%,-50%);border:0;border-radius:4px;background:#fff;color:#101820;padding:9px 12px;font-weight:600;box-shadow:0 4px 18px rgba(16,24,32,.2);cursor:pointer}.resource-pin:after{content:"";position:absolute;left:50%;top:100%;width:14px;height:14px;border-radius:50%;background:#e95032;border:4px solid rgba(233,80,50,.28);transform:translate(-50%,5px)}.resource-drawer{position:absolute;z-index:5;top:0;right:0;width:min(440px,100%);height:100%;padding:42px 38px;overflow:auto;background:#fff;box-shadow:-20px 0 50px rgba(16,24,32,.14);transform:translateX(105%);transition:transform .35s ease}.resource-drawer.is-open{transform:none}.resource-drawer-close{position:absolute;right:30px;top:28px;width:48px;height:48px;border:0;background:#f1f1f1;font-size:32px;color:#666;cursor:pointer}.resource-drawer h2{margin:8px 60px 12px 0;font-size:30px}.resource-drawer>[data-detail-type]{display:inline-block;padding:8px 14px;border-radius:999px;background:#e95032;color:#fff}.resource-drawer h3{margin:34px 0 14px;color:#74797c;font-size:16px}.resource-drawer img{height:220px;border-radius:6px}.resource-drawer p{color:#51595f;line-height:1.9}.resources-page footer{display:none}@media(max-width:900px){.resources-page .resource-map-view{height:calc(100vh - 70px);min-height:600px}.resource-pin{max-width:150px;font-size:11px}.resource-drawer{padding:34px 24px}.resource-drawer h2{font-size:24px}}

.location-marker{--point-color:#ef6545;width:180px;min-height:62px;padding:0;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;cursor:pointer;font-family:inherit;white-space:nowrap}.location-marker span{position:relative;max-width:220px;padding:9px 13px;border-radius:4px;background:#fff;color:#202934;font-size:13px;font-weight:650;line-height:1.25;box-shadow:0 3px 14px rgba(20,31,38,.2);transition:transform .2s,box-shadow .2s}.location-marker span:after{content:"";position:absolute;left:50%;top:100%;border:6px solid transparent;border-top-color:#fff;transform:translateX(-50%)}.location-marker i{width:18px;height:18px;margin-top:8px;border:4px solid #fff;border-radius:50%;background:var(--point-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--point-color) 30%,transparent),0 2px 8px rgba(0,0,0,.16)}.location-marker--highway{--point-color:#1ea9df}.location-marker--transit{--point-color:#ef6545}.location-marker--landmark{--point-color:#a53bb7}.location-marker:hover span,.location-marker.is-selected span{transform:translateY(-2px);box-shadow:0 6px 18px rgba(20,31,38,.25)}.location-marker.is-selected i{animation:location-pulse 1.8s infinite}.resource-drawer{z-index:130}@keyframes location-pulse{0%{box-shadow:0 0 0 4px color-mix(in srgb,var(--point-color) 30%,transparent)}70%{box-shadow:0 0 0 13px transparent}100%{box-shadow:0 0 0 4px transparent}}@media(max-width:620px){.location-marker{width:138px}.location-marker span{max-width:154px;overflow:hidden;text-overflow:ellipsis;padding:7px 9px;font-size:11px}.location-marker i{width:16px;height:16px;margin-top:7px}.resource-drawer img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}}

/* Resource detail drawer */
.resources-page .resource-drawer{width:min(820px,57vw);padding:0;display:grid;grid-template-rows:auto minmax(0,1fr) 68px;background:#fafafa;color:#17182c}.drawer-header{min-height:106px;padding:24px 28px 20px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #e7e7e7;background:#fff}.drawer-header>div{padding-left:17px;border-left:4px solid #a62cbb}.resources-page .drawer-header h2{margin:0 0 9px;font-size:21px;line-height:1.25;font-weight:700}.resources-page .drawer-header [data-detail-type]{display:inline-flex;padding:6px 13px;border-radius:999px;background:#a62cbb;color:#fff;font-size:12px;font-weight:700}.resources-page .resource-drawer-close{position:static;flex:0 0 40px;width:40px;height:40px;border-radius:12px;font-size:25px;line-height:1}.drawer-scroll{min-height:0;padding:20px 24px 24px;overflow:auto;display:grid;gap:14px}.drawer-card{padding:18px 20px;border:1px solid #e7e8ea;border-radius:8px;background:#fff}.drawer-card-title{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:#696b70}.drawer-card-title h3{margin:0;font-size:14px}.drawer-card-title b{margin-left:auto;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f0f0f2;color:#686a70;font-size:11px}.drawer-icon{font-size:19px;color:#97999d}.drawer-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}.resources-page .drawer-gallery img{width:100%;height:auto;aspect-ratio:4/3;border-radius:7px;object-fit:cover}.drawer-stat{display:flex;align-items:center;gap:16px}.drawer-stat .stat-icon{flex:0 0 54px;width:54px;height:54px;display:grid;place-items:center;border-radius:12px;background:#ffe7e7;color:#ff5358;font-size:27px}.drawer-stat div{display:grid;gap:5px}.drawer-stat small{color:#96979b;font-size:13px;font-weight:600}.drawer-stat strong{color:#ff5055;font-size:18px}.drawer-size .stat-icon{background:#e0f3ff;color:#269bea}.drawer-size strong{color:#17182c;font-size:16px}.drawer-location{background:#f4faff}.drawer-location p,.drawer-description p{margin:0;color:#282a35;font-size:13px;line-height:1.7}.drawer-tags>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.drawer-tags>div:last-child span{padding:7px 12px;border:1px solid #e1e2e5;border-radius:999px;background:#f7f7f8;color:#5d5f64;font-size:12px;font-weight:600}.drawer-actions{height:68px;padding:10px 24px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;border-top:1px solid #e5e6e8;background:rgba(255,255,255,.96)}.drawer-actions a,.drawer-actions button{border:0;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:7px;background:#f6f7f8;color:#777b81;font:600 13px inherit;cursor:pointer}.drawer-actions .drawer-navigate{background:#1f83d5;color:#fff}@media(max-width:900px){.resources-page .resource-drawer{width:57vw}.drawer-header{padding-left:20px;padding-right:20px}.drawer-scroll{padding:16px 18px}.drawer-card{padding:16px}.drawer-actions{padding-left:18px;padding-right:18px}}@media(max-width:560px){.resources-page .resource-drawer{width:100%}.drawer-header{min-height:102px;padding:18px 16px}.drawer-header>div{padding-left:13px}.resources-page .drawer-header h2{font-size:18px;margin-right:8px}.drawer-scroll{padding:14px;gap:12px}.drawer-card{padding:15px}.drawer-gallery{gap:7px}.drawer-stat .stat-icon{flex-basis:48px;width:48px;height:48px}.drawer-stat strong{font-size:16px}.drawer-actions{height:64px;padding:8px 14px}.drawer-actions span{font-size:11px}}

/* The reference uses a fixed 480px detail rail on desktop. */
.resources-page .resource-drawer{width:480px;max-width:100%;grid-template-rows:auto minmax(0,1fr) 82px}.drawer-actions{height:82px;padding-top:12px;padding-bottom:12px}@media(max-width:560px){.resources-page .resource-drawer{width:100%}}

/* Keep only the drawer accents in the site's gold brand system. */
.resources-page .drawer-header>div{border-left-color:var(--gold-deep)}.resources-page .drawer-header [data-detail-type]{background:var(--gold);color:var(--ink)}.resources-page .drawer-actions .drawer-navigate{background:var(--gold);color:var(--ink)}

/* Use one brand color across every drawer information state. */
.resources-page .drawer-stat .stat-icon{background:var(--gold-wash);color:var(--gold-deep)}.resources-page .drawer-stat strong{color:var(--gold-deep)}.resources-page .drawer-size .stat-icon{background:var(--gold-wash);color:var(--gold-deep)}.resources-page .drawer-size strong{color:var(--ink)}.resources-page .drawer-location{background:#fffaf0;border-color:#eadfc8}

/* Blend the detail rail into the warm navigation surface. */
.resources-page .resource-drawer{background:#f3f2ee}.resources-page .drawer-header{background:#f3f2ee;border-bottom-color:#deddd8}.resources-page .drawer-scroll{background:#f3f2ee}.resources-page .drawer-card{background:rgba(255,255,255,.88);border-color:#deddd8}.resources-page .drawer-stat .stat-icon{background:#f1ede3;color:#87601c}.resources-page .drawer-stat strong{color:var(--ink)}.resources-page .drawer-location{background:rgba(255,255,255,.88);border-color:#deddd8}.resources-page .drawer-actions{background:rgba(243,242,238,.97);border-top-color:#d8d7d2}.resources-page .drawer-actions .drawer-navigate{background:var(--ink);color:#fff}.resources-page .drawer-header [data-detail-type]{background:#e5bb58;color:var(--ink)}

/* Cases page: use a real media scene to establish the page immediately. */
.cases-page .listing-hero{min-height:410px;padding:70px 7vw 62px;display:flex;align-items:flex-end;color:#fff;background-image:linear-gradient(90deg,rgba(8,15,21,.84) 0%,rgba(8,15,21,.58) 52%,rgba(8,15,21,.34) 100%),url("assets/case-featured-real-hd.jpg");background-size:cover;background-position:center 48%;border-bottom:0}.cases-page .listing-hero-inner{width:100%;max-width:1320px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:8vw;align-items:end}.cases-page .listing-kicker{margin-bottom:16px;color:var(--gold-light)}.cases-page .listing-hero h1{font-size:clamp(48px,5vw,68px);color:#fff}.cases-page .listing-hero-copy{max-width:440px;padding-left:24px;border-left:2px solid var(--gold);color:rgba(255,255,255,.82);line-height:1.85}
@media(max-width:900px){.cases-page .listing-hero{min-height:360px;padding:54px 6vw 46px;background-position:center}.cases-page .listing-hero-inner{grid-template-columns:1fr;gap:24px}.cases-page .listing-hero h1{font-size:46px}.cases-page .listing-hero-copy{max-width:520px;padding-left:16px}}
@media(max-width:620px){.cases-page .listing-hero{min-height:340px;padding-top:48px;padding-bottom:40px}.cases-page .listing-hero h1{font-size:40px}.cases-page .listing-hero-copy{font-size:14px}}
/* Traditional CMS detail templates */
.detail-content{max-width:1080px;margin:0 auto;padding-top:48px;padding-bottom:80px}.detail-cover{margin:28px 0;aspect-ratio:16/9;overflow:hidden}.detail-cover img{width:100%;height:100%;object-fit:cover}.detail-body{max-width:800px;margin:0 auto;font-size:17px;line-height:1.9;color:#343434}.detail-body img{max-width:100%;height:auto}.detail-body video{display:block;width:100%;max-width:100%;height:auto;margin:24px 0;background:#101820}.detail-navigation{max-width:800px;margin:48px auto 0;padding-top:24px;border-top:1px solid #ddd;display:flex;justify-content:space-between;gap:24px}.listing-image-placeholder{height:100%;display:grid;place-items:center;background:#202020;color:#fff;font-size:32px}.listing-card>a{color:inherit;text-decoration:none}.listing-pagination{display:flex;justify-content:center;gap:8px;margin-top:40px}.listing-pagination a{padding:9px 14px;border:1px solid #ddd;color:inherit;text-decoration:none}.listing-pagination a.active{background:#111;color:#fff}
.detail-back,.detail-actions{max-width:800px;margin:48px auto 0;padding-top:24px;border-top:1px solid var(--line)}.detail-actions{display:flex;justify-content:space-between;gap:24px}.resource-detail-specs{max-width:800px;margin:34px auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}.resource-detail-specs div{padding:20px 0;border-bottom:1px solid var(--line)}.resource-detail-specs dt{color:var(--muted);font-size:11px}.resource-detail-specs dd{margin:7px 0 0;font-size:15px}.case-detail-page .listing-hero,.resource-detail-page .listing-hero{padding-top:70px}.case-detail-page .listing-hero h1,.resource-detail-page .listing-hero h1{font-size:clamp(38px,4.4vw,64px)}
@media(max-width:620px){.resource-detail-specs{grid-template-columns:1fr}.detail-actions{flex-direction:column}}
.cases-page .listing-grid .listing-card:first-child{grid-column:1/-1}.cases-page .listing-grid .listing-card:first-child .listing-card-media{min-height:420px}
@media(max-width:900px){.cases-page .filter-toolbar,.news-page .filter-toolbar{overflow-x:visible;flex-wrap:wrap;margin-left:0;margin-right:0;padding-left:0;padding-right:0}.cases-page .filter-button,.news-page .filter-button{flex:0 0 auto}.cases-page .result-count,.news-page .result-count{position:static;right:auto;flex:1 0 100%;margin-left:0;padding:6px 0 0;background:transparent}}
@media(max-width:620px){.cases-page .filter-button{max-width:100%;white-space:normal}.cases-page .listing-card-foot{flex-wrap:wrap}.cases-page .listing-grid .listing-card:first-child{grid-column:auto}.cases-page .listing-grid .listing-card:first-child .listing-card-media{min-height:0}.listing-pagination{max-width:100%;flex-wrap:wrap;justify-content:flex-start}.listing-pagination a{min-width:42px;text-align:center}.listing-cta-inner,.listing-cta h2,.listing-cta a{min-width:0;max-width:100%}.listing-cta a{white-space:normal;gap:12px}}
@media(max-width:620px){.cases-page .listing-card-media{height:auto;aspect-ratio:auto}.cases-page .listing-card-media img{height:auto;max-height:none;object-fit:contain;background:#20262b}}
.detail-supporting-copy{margin-top:36px;padding-top:28px;border-top:1px solid rgba(17,24,32,.14)}.detail-supporting-copy h2{margin:0 0 14px;font-size:22px;color:#111820}.detail-supporting-copy p{margin:0;color:#4f5961;line-height:1.9}
.resources-page .drawer-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.resources-page .drawer-gallery img{display:block;cursor:zoom-in}.resources-page .drawer-gallery img:only-child{grid-column:1/-1}.drawer-media-empty{margin:0;padding:36px 16px;text-align:center;color:var(--muted);background:#f3f2ee}.image-lightbox{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.86);display:grid;place-items:center;padding:30px;cursor:zoom-out}.image-lightbox img{max-width:92vw;max-height:90vh;width:auto;height:auto;object-fit:contain}.image-lightbox button{position:absolute;right:24px;top:18px;border:0;background:none;color:#fff;font-size:40px;cursor:pointer}
.resource-detail-gallery{margin:28px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.resource-detail-gallery button{min-width:0;padding:0;border:0;background:#e9e9e6;cursor:zoom-in;overflow:hidden}.resource-detail-gallery button:first-child:nth-last-child(odd){grid-column:1/-1}.resource-detail-gallery img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .3s ease}.resource-detail-gallery button:hover img{transform:scale(1.02)}
@media(max-width:620px){.resources-page .drawer-gallery,.resource-detail-gallery{grid-template-columns:1fr}.resource-detail-gallery button:first-child:nth-last-child(odd){grid-column:auto}}
.drawer-info h3{margin:0 0 10px;color:#74797c;font-size:14px}.drawer-info p{margin:0;color:#282a35;font-size:13px;line-height:1.7;white-space:pre-wrap}.drawer-info[hidden]{display:none}
/* ============ 公司概况页 about ============ */
.about-page .about-hero{min-height:410px;height:auto;padding:70px 7vw 62px;display:flex;align-items:flex-end;color:#fff;background-image:linear-gradient(90deg,rgba(8,15,21,.84) 0%,rgba(8,15,21,.58) 52%,rgba(8,15,21,.34) 100%),var(--about-hero-image,url("assets/hero-city.jpg"));background-size:cover;background-position:center 42%;border-bottom:0}
.about-page .about-hero .listing-hero-inner{width:100%;max-width:1320px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:8vw;align-items:end}
.about-page .about-hero .listing-kicker{margin-bottom:16px;color:var(--gold-light)}
.about-page .about-hero h1{font-size:clamp(48px,5vw,68px);color:#fff}
.about-page .about-hero .listing-hero-copy{max-width:440px;padding-left:24px;border-left:2px solid var(--gold);color:rgba(255,255,255,.82);line-height:1.85}
.about-content{display:grid;gap:84px}
.about-content>*{min-width:0}
.about-section-head{max-width:820px;margin:0 0 40px}
.about-section-kicker{position:relative;margin:0 0 14px;padding-left:34px;color:var(--gold-deep);font-size:11px;font-weight:700;letter-spacing:.06em}
.about-section-kicker:before{content:"";position:absolute;left:0;top:50%;width:22px;height:2px;background:var(--gold)}
.about-section-head h2{margin:0;font-size:clamp(28px,3vw,42px);line-height:1.3;font-weight:600;color:var(--ink)}
.about-section-sub{margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.8}
.about-intro-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:5.5vw;align-items:start}
.about-intro-grid--solo{grid-template-columns:minmax(0,1120px)}
.about-intro-copy p{position:relative;margin:0 0 18px;padding-left:18px;color:#4f5961;font-size:15px;line-height:1.9;text-align:justify}
.about-intro-copy p:last-child{margin-bottom:0}
.about-intro-copy p:not(.about-intro-lead):before{content:"";position:absolute;left:0;top:.92em;width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.about-intro-copy p:not(.about-intro-lead):not(:last-child):after{content:"";position:absolute;left:18px;right:0;bottom:-10px;height:1px;background:linear-gradient(90deg,var(--line),transparent 78%)}
.about-intro-lead{margin-bottom:26px;padding:14px 18px 14px 20px;border-left:3px solid var(--gold);color:var(--ink);font-size:16.5px;font-weight:500;background:linear-gradient(90deg,var(--gold-wash),transparent 72%)}
.about-timeline-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
.about-timeline{margin:0;padding:40px 4px 8px;list-style:none;display:flex;gap:18px;position:relative;min-width:max-content}
.about-timeline:before{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:var(--line)}
.about-timeline-item{position:relative;flex:0 0 305px;width:305px;padding:24px 22px;background:#fff;border:1px solid var(--line);border-top:2px solid transparent;transition:border-color .3s ease,box-shadow .3s ease}
.about-timeline-item:hover{border-top-color:var(--gold);box-shadow:0 12px 30px rgba(16,24,32,.08)}
.about-timeline-item:before{content:"";position:absolute;left:22px;top:-39px;width:11px;height:11px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--gold-wash)}
.about-timeline-index{display:block;margin-bottom:10px;color:#b9beba;font-size:11px;font-weight:700;letter-spacing:.14em}
.about-timeline-year{display:block;color:var(--gold-deep);font-size:23px;font-weight:700;line-height:1.2;white-space:nowrap}
.about-timeline-item h3{margin:10px 0 8px;font-size:16px;font-weight:600;color:var(--ink)}
.about-timeline-item p{margin:0;color:#4f5961;font-size:13px;line-height:1.85}
.about-honor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.about-honor-card{padding:16px;background:#fff;border:1px solid var(--line);border-top:2px solid var(--gold);transition:transform .3s ease,box-shadow .3s ease}
.about-honor-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(16,24,32,.08)}
.about-honor-image{aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;background:#f3f2ee;margin-bottom:16px;cursor:zoom-in}
.about-honor-image img{width:100%;height:100%;object-fit:contain}
.about-honor-card h3{margin:0 0 8px;font-size:16px;line-height:1.5;font-weight:600;color:var(--ink)}
.about-honor-card p{margin:0;color:var(--muted);font-size:12px}
.about-client-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.about-client-item{margin:0;padding:26px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#fff;border:1px solid var(--line);min-height:130px}
.about-client-item img{max-width:82%;max-height:56px;filter:none;opacity:1}
.about-client-item figcaption{color:var(--muted);font-size:12px;text-align:center}
.about-client-item--text figcaption{color:#4f5961;font-size:15px;font-weight:600;letter-spacing:.02em}
.about-client-item--text:hover{border-color:var(--gold)}
@media(max-width:900px){.about-page .about-hero{min-height:360px;padding:54px 6vw 46px}.about-page .about-hero .listing-hero-inner{grid-template-columns:1fr;gap:24px}.about-page .about-hero h1{font-size:46px}.about-page .about-hero .listing-hero-copy{max-width:520px;padding-left:16px}.about-content{gap:64px}.about-intro-grid{grid-template-columns:1fr;gap:40px}.about-timeline-item{flex-basis:280px;width:280px}.about-honor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.about-page .about-hero{min-height:340px;padding-top:48px;padding-bottom:40px}.about-page .about-hero h1{font-size:40px}.about-page .about-hero .listing-hero-copy{font-size:14px}.about-content{gap:54px}.about-section-head{margin-bottom:28px}.about-timeline-item{flex-basis:250px;width:250px;padding:22px 18px 20px}.about-honor-grid{grid-template-columns:1fr}.about-client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* About page refinement: stronger rhythm, clearer reading zones, and touch-friendly scrolling. */
.about-page .about-hero{position:relative;min-height:460px;padding-top:92px;padding-bottom:76px;background-position:center 46%;}
.about-page .about-hero:after{content:"";position:absolute;inset:auto 7vw 28px;max-width:1320px;height:1px;background:rgba(255,255,255,.26);pointer-events:none}
.about-page .about-hero .listing-hero-inner{position:relative;z-index:1}
.about-page .about-hero h1{letter-spacing:.01em;text-wrap:balance}
.about-page .about-hero .listing-kicker{letter-spacing:.16em}
.about-page .about-hero .listing-hero-copy{font-size:16px}
.about-content{padding-top:42px}
.about-content-intro{display:flex;align-items:center;gap:14px;margin:0 0 -36px;color:var(--muted);font-size:12px;letter-spacing:.04em}
.about-content-rule{display:block;width:38px;height:2px;background:var(--gold)}
.about-section{position:relative}
.about-section-head{margin-bottom:44px}
.about-section-head h2{letter-spacing:.01em}
.about-intro-copy{max-width:1120px}
.about-intro-copy p{font-size:15px;line-height:1.9}
.about-intro-lead{font-size:17px!important;line-height:1.75!important}
.about-history{padding-top:8px}
.about-timeline-wrap{margin-right:-7vw;padding:2px 7vw 18px 0;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}
.about-timeline{gap:20px;padding-top:42px}
.about-timeline:before{top:6px;background:linear-gradient(90deg,var(--gold),var(--line) 28%,var(--line) 72%,transparent)}
.about-timeline-item{flex-basis:318px;width:318px;min-height:244px;padding:26px 24px 24px;border-color:#dfe2df;border-top-color:var(--gold);box-shadow:0 2px 0 rgba(16,24,32,.02)}
.about-timeline-item:before{top:-39px}
.about-timeline-item p{font-size:13.5px;line-height:1.9}
.about-honor-grid{gap:16px}
.about-honor-card{min-height:0;padding:16px;border-top-width:3px}
.about-honor-card h3{font-size:17px}
.about-client-grid{gap:14px}
.about-client-item{min-height:142px;padding:22px 18px;border-color:#dfe2df;transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease}
.about-client-item:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 10px 24px rgba(16,24,32,.07)}
.about-client-item img{max-height:62px}
.about-page .listing-cta{margin-top:0}
@media(max-width:900px){.about-page .about-hero{min-height:420px;padding-top:72px;padding-bottom:58px}.about-page .about-hero:after{left:6vw;right:6vw}.about-content-intro{margin-bottom:-24px}.about-timeline-wrap{margin-right:-6vw;padding-right:6vw}.about-timeline-item{flex-basis:290px;width:290px}}
@media(max-width:620px){.about-page .about-hero{min-height:370px;padding-top:58px;padding-bottom:46px}.about-page .about-hero h1{font-size:42px}.about-page .about-hero .listing-hero-copy{font-size:14px}.about-content{padding-top:32px}.about-content-intro{margin-bottom:-16px;font-size:11px}.about-section-head{margin-bottom:30px}.about-intro-copy p{font-size:14.5px;line-height:1.85}.about-intro-lead{font-size:16px!important}.about-timeline-item{flex-basis:258px;width:258px;min-height:250px;padding:22px 18px 20px}.about-client-item{min-height:118px;padding:18px 12px}.about-client-item--text figcaption{font-size:14px}}
