/* Local catalogue treatment; shared navigation behavior is retained. */
.project-cases{--bg:#FAF8F5;--bg-alt:#FAF8F5;--text:#1F1F1F;--text-sub:#1F1F1F;--line:rgba(31,31,31,.18);--accent:#1F1F1F;--accent-dk:#1F1F1F;--font-head:Georgia,'Times New Roman',serif;--font-body:Arial,Helvetica,sans-serif;--container:1280px;--pad-x:40px;--radius:0;background:#FAF8F5;color:#1F1F1F;font-family:var(--font-body);line-height:1.6;padding-bottom:68px}
.project-cases h1,.project-cases h2,.project-cases h3{font-weight:400;letter-spacing:-.025em}
.project-cases h1{font-size:clamp(39.06px,4.8vw,61.04px);line-height:1.08;max-width:12ch}
.project-cases h2{font-size:39.06px;line-height:1.15;max-width:22ch}
.project-cases h3{font-size:25px;line-height:1.25}
.project-cases p{max-width:72ch}
.project-cases a{color:#1F1F1F}
.project-cases :focus-visible{outline:2px solid #1F1F1F;outline-offset:5px}
.skip-link{position:fixed;top:8px;left:20px;z-index:300;transform:translateY(-180%);background:#FAF8F5;padding:12px 20px}
.skip-link:focus{transform:translateY(0)}
.project-cases .site-header{background:#FAF8F5}
.project-cases .nav-logo-img{filter:grayscale(1);object-fit:contain}
.project-cases .nav-links{gap:16px}
.project-cases .nav-links>li>a{font-size:13px}
.project-cases .btn{min-height:46px;padding:12px 20px;white-space:normal;font-size:14px;font-weight:500;transition:opacity .25s}
.project-cases .btn--primary{background:#1F1F1F;border-color:#1F1F1F;color:#FAF8F5}
.project-cases .btn--primary:hover{opacity:.85}
.project-cases .breadcrumb{font-size:12.8px;padding-top:24px}
.project-cases .breadcrumb li:not(:last-child)::after{color:#1F1F1F;opacity:.5}
.eyebrow{font:500 12.8px/1.6 Arial,Helvetica,sans-serif;letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px}
.eyebrow::before{content:'';display:inline-block;width:22px;height:2px;background:#B08D57;vertical-align:middle;margin-right:10px}
.project-hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;padding-top:56px;padding-bottom:88px;align-items:center}
.hero-copy{grid-column:span 5}
.hero-copy>p:not(.eyebrow){margin-top:18px}
.hero-copy .hero-deck{font:400 25px/1.3 Georgia,'Times New Roman',serif;margin-top:24px}
.project-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}
.text-link{display:inline-block;font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:5px;line-height:1.7}
.hero-figure{grid-column:7 / span 6;min-width:0}
.hero-figure img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.project-cases figcaption{font-size:12.8px;line-height:1.6;margin-top:12px}
.project-section{padding:96px 0;border-top:1px solid var(--line)}
.section-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:end;margin-bottom:48px}
.section-intro>div{grid-column:span 6}
.section-intro>p{grid-column:8 / span 5;font-size:14px}
.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px}
.project-card{grid-column:span 4;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.project-card figure{width:100%;margin-bottom:28px}
.project-card figure img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform .25s}
.project-card figure:hover img{transform:scale(1.02)}
.project-card .eyebrow{font-size:10.24px;margin-bottom:12px}
.project-card>p:not(.eyebrow){font-size:14px;margin-top:16px}
.project-card dl{width:100%;margin:24px 0;font-size:12.8px;border-top:1px solid var(--line)}
.project-card dl>div{display:grid;grid-template-columns:1fr 1.5fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.project-card dt{font-weight:600}
.project-card dd{overflow-wrap:anywhere}
.project-card>.text-link{margin-bottom:12px}
.project-card .related{padding-top:16px;border-top:1px solid var(--line);font-size:12.8px}
.project-cases .related a,.project-cases .process-links a,.inquiry-actions p a{text-decoration:underline;text-underline-offset:3px}
.route-grid,.faq-grid,.inquiry-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px}
.route-grid>div:first-child,.faq-grid>div:first-child{grid-column:span 4}
.route-grid>div:first-child p:not(.eyebrow),.faq-grid>div:first-child p:not(.eyebrow){margin:24px 0}
.route-options,.case-faq{grid-column:6 / span 7}
.route-options article{display:flex;gap:24px;border-top:1px solid var(--line);padding:28px 0}
.route-options article p{margin-top:12px;font-size:14px}
.route-number{font:25px Georgia,serif}
.process-links{font-size:14px;border-top:1px solid var(--line);padding:24px 0}
.planning-list>div{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;padding:28px 0;border-top:1px solid var(--line)}
.planning-list dt{grid-column:span 4;font:25px/1.3 Georgia,serif}
.planning-list dd{grid-column:6 / span 7;overflow-wrap:anywhere}
.planning-list strong{font-size:16px;font-weight:500}
.planning-list p{font-size:14px;margin-top:8px}
.section-bottom{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:28px;font-size:14px}
.case-faq details{border-top:1px solid var(--line);padding:22px 0}
.case-faq details:last-child{border-bottom:1px solid var(--line)}
.case-faq summary{cursor:pointer;font-size:16px;list-style:none;display:flex;justify-content:space-between;gap:20px}
.case-faq summary::-webkit-details-marker{display:none}
.case-faq summary::after{content:'+';flex:none;font-size:20px;line-height:1.3}
.case-faq details[open] summary::after{content:'−'}
.case-faq details p{margin-top:16px;font-size:14px;overflow-wrap:anywhere}
.inquiry-grid>div:first-child{grid-column:span 7}
.inquiry-grid>div:first-child>p:last-child{margin-top:24px}
.inquiry-actions{grid-column:9 / span 4;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:22px}
.inquiry-actions p{font-size:12.8px;overflow-wrap:anywhere}
.case-contact-bar{position:fixed;bottom:0;left:0;right:0;z-index:110;min-height:60px;background:#FAF8F5;border-top:1px solid #B08D57;padding:12px max(24px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:flex-end;gap:28px;font-size:14px}
.case-contact-bar span{margin-right:auto}
.case-contact-bar a{min-height:36px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.project-cases .site-footer{background:#FAF8F5;color:#1F1F1F;border-color:var(--line)}
.project-cases .footer-col h4{font-family:Arial,Helvetica,sans-serif;color:#1F1F1F;font-size:12.8px}
.project-cases .site-footer p,.project-cases .site-footer a,.project-cases .footer-bottom{color:#1F1F1F}
@media(min-width:1025px) and (max-width:1279px){.project-cases .nav{gap:12px}.project-cases .nav-logo-img{width:150px;height:auto}.project-cases .nav-links{gap:10px}.project-cases .nav-cta .btn{padding-inline:12px;font-size:12px}}
@media(max-width:1024px){.project-cases .nav-links,.project-cases .dropdown{background:#FAF8F5}.project-hero{gap:24px}.hero-copy{grid-column:span 6}.hero-figure{grid-column:7 / span 6}.project-grid{gap:20px}}
@media(max-width:768px){.project-cases{--pad-x:24px}.project-cases h2{font-size:31.25px}.project-section{padding:56px 0}.project-hero{padding-top:36px;padding-bottom:56px}.hero-copy,.hero-figure{grid-column:1/-1}.hero-copy{max-width:65ch}.hero-figure{margin-top:12px}.hero-copy .hero-deck{font-size:25px}.section-intro{gap:24px;margin-bottom:32px}.section-intro>div,.section-intro>p{grid-column:1/-1}.project-grid{gap:48px}.project-card{grid-column:1/-1;max-width:520px;margin-inline:auto;width:100%}.project-card figure{margin-bottom:24px}.project-card dl{font-size:14px}.route-grid,.faq-grid,.inquiry-grid{gap:32px}.route-grid>div:first-child,.faq-grid>div:first-child,.route-options,.case-faq,.inquiry-grid>div:first-child,.inquiry-actions{grid-column:1/-1}.planning-list>div{gap:12px}.planning-list dt,.planning-list dd{grid-column:1/-1}.case-contact-bar{gap:20px;font-size:12.8px}.case-contact-bar span{display:none}.case-contact-bar{justify-content:space-between}.project-cases .footer-grid{gap:32px}.project-cases .footer-bottom{gap:16px}}
@media(max-width:375px){.project-cases{--pad-x:20px}.project-actions{gap:16px}.project-cases .nav-logo-img{width:160px;height:42px}.project-cases .nav{height:66px}.project-hero{padding-top:28px}.hero-copy>p:not(.eyebrow){margin-top:16px}.eyebrow{letter-spacing:.08em}.project-actions{margin-top:22px}.project-cases .breadcrumb{padding-top:18px}.case-contact-bar{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-cases *{transition:none!important}.project-card figure:hover img{transform:none}}
@media(max-width:768px){.project-hero,.section-intro,.project-grid,.route-grid,.faq-grid,.inquiry-grid,.planning-list>div{grid-template-columns:minmax(0,1fr)}}
@media(max-width:375px){.project-cases .nav-links{top:66px}}
