/* Scoped to project detail; palette and dimensions follow the home/about pages. */
.case-page{--ink:#123349;--blue:#004877;--blue-dark:#003653;--sky:#e9f4f7;--line:#d6e3e9;--accent:#f0a13a;gap:0;padding:0;color:var(--ink)}
.case-page *{box-sizing:border-box}.case-inner{width:min(118rem,calc(100% - 4rem));margin-inline:auto}.case-page a{color:var(--blue);text-underline-offset:.3em}.case-page :focus-visible{outline:3px solid var(--accent);outline-offset:5px}.case-page [id]{scroll-margin-top:11rem}.case-page h2{font-size:clamp(2.5rem,2.8vw,3.5rem);line-height:1.4;color:var(--ink)}
.case-hero{background:var(--sky);padding:2.8rem 0 6rem}.case-breadcrumb{font-size:1.3rem;line-height:1.7;color:#506a79;margin-bottom:4.4rem}.case-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.6rem 1rem;list-style:none}.case-breadcrumb li+li:before{content:'/';margin-right:1rem;color:#8097a4}.case-breadcrumb a{text-decoration:none}.case-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5rem;align-items:center}.case-page .project-hero__content,.case-page .project-hero__image{grid-column:auto;min-width:0}.case-page .project-hero__content{display:block}.case-eyebrow{display:flex;align-items:center;gap:.8rem;color:var(--blue);font-size:1.3rem;font-weight:800;letter-spacing:.12em;margin:0 0 1.6rem}.case-eyebrow:before{content:'';width:3.2rem;height:.3rem;background:var(--accent);border-radius:9rem;flex-shrink:0}.case-page h1{font-size:clamp(3.4rem,4vw,5.4rem);line-height:1.2;letter-spacing:-.035em;color:var(--ink)}.case-lead{margin:2.4rem 0;color:#506a79;font-size:1.7rem;line-height:1.9}.case-tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:2.6rem}.case-tags a{padding:.65rem 1.2rem;border:1px solid #0048772e;border-radius:9rem;background:#ffffffba;font-size:1.4rem;font-weight:700;text-decoration:none}.case-facts{border-top:1px solid var(--line);padding-top:1.6rem;display:grid;gap:1rem;font-size:1.4rem}.case-facts>div{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:1.6rem}.case-facts dt{color:#506a79}.case-facts dd{margin:0;font-weight:600}.case-facts a{text-decoration:none}.case-cover{margin:0;position:relative;border-radius:1.6rem;overflow:hidden;background:#d6e3e9;box-shadow:0 1.8rem 5rem #002d481c}.case-cover a{display:block}.case-page .case-cover img{width:100%;max-width:100%;height:48rem;object-fit:cover}.case-cover figcaption{background:#fff;padding:1.2rem 1.8rem;font-size:1.3rem;color:#506a79}
.case-toc{display:flex;align-items:center;flex-wrap:wrap;gap:1.2rem 2.8rem;padding:2.4rem 0;border-bottom:1px solid var(--line);font-size:1.5rem}.case-toc span{font-weight:800}.case-toc a{text-decoration:none}.case-toc a:hover{text-decoration:underline}.case-story{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:7rem;padding:7rem 0}.case-section-label>p:last-child{font-size:1.4rem;color:#617987;line-height:1.8;margin-top:1.6rem}.case-prose{min-width:0}.case-prose-group+.case-prose-group{margin-top:3.6rem;padding-top:3.2rem;border-top:1px solid var(--line)}.case-prose h3{font-size:2.2rem;color:var(--blue);line-height:1.5;margin-bottom:1.6rem}.case-prose p{font-size:1.7rem;line-height:1.95;color:#435f70;margin:0 0 1.4rem;overflow-wrap:anywhere}.case-prose p:last-child{margin-bottom:0}
.case-page .case-gallery,.case-page .case-video,.case-page .case-feedback{display:block;padding:6rem 0;border-top:1px solid var(--line)}.case-page .project-construction__header{gap:2rem;margin-bottom:3rem}.case-section-note{color:#617987;font-size:1.5rem;line-height:1.7;margin-top:1rem}.case-page .project-construction__btn{width:4.4rem;height:4.4rem;border-radius:.8rem;cursor:pointer;font-size:1.8rem;flex-shrink:0}.case-page .project-construction__nav{gap:.8rem}.case-page .swiper-slide{height:auto}.case-page .slider-card{height:100%;margin:0;border:1px solid var(--line);border-radius:1.2rem;background:#fff;overflow:hidden;gap:0}.case-page .slider-card__image a{display:block;height:100%}.case-page .slider-card figcaption{padding:1.8rem}.case-page .slider-card strong{font-size:1.7rem;line-height:1.5;display:block;color:var(--ink)}.case-page .slider-card p{font-size:1.5rem;line-height:1.8;color:#506a79;margin-top:.8rem}.case-page .project-video__header{margin-bottom:2.8rem}.case-page .project-video__video{padding:0;aspect-ratio:16/9;overflow:hidden;border-radius:1.2rem;background:#102f41}.case-page iframe{border:0}.case-video-link{margin-top:1.6rem;font-size:1.5rem}.case-page .project-feedback__content{margin:2.8rem 0 0;padding:3rem;border-radius:1.2rem;background:var(--sky);gap:2rem}.case-page .project-feedback__detail{margin:0;border-left:.3rem solid var(--accent);padding-left:2rem;font-size:1.7rem;line-height:1.9;color:#435f70}.case-feedback figcaption{font-size:1.4rem;text-align:right;color:var(--blue)}
.case-cta{padding:7rem 0;background:var(--ink)}.case-cta-grid{display:flex;align-items:center;justify-content:space-between;gap:4rem}.case-cta h2{margin:0;color:#fff;font-size:clamp(2.8rem,4vw,4.4rem);line-height:1.5}.case-cta p{margin:1.2rem 0 0;color:#c9dae3;font-size:1.7rem;line-height:1.5}.case-actions{display:flex;flex:0 0 auto;flex-direction:column;gap:1.2rem;min-width:24rem}.case-page .case-button{min-height:5.2rem;display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:1.2rem 2.2rem;border:.1rem solid var(--accent);border-radius:.8rem;background:var(--accent);color:#1f3340;text-decoration:none;font-size:1.6rem;font-weight:800;transition:.2s;width:100%}.case-page .case-button:hover{transform:translateY(-.2rem)}.case-page .case-button-line{background:#06c755;border-color:#06c755;color:#fff}
@media(max-width:640px){.case-cta .case-inner{width:calc(100% - 3.2rem)}.case-cta-grid{align-items:flex-start;flex-direction:column}.case-actions{width:100%;min-width:0}}
.case-page .swiper:not(.swiper-initialized) .swiper-wrapper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
@media(max-width:900px){.case-hero-grid{grid-template-columns:1fr;gap:3rem}.case-page .case-cover img{height:auto;aspect-ratio:4/3}.case-story{grid-template-columns:1fr;gap:3rem;padding:4.8rem 0}.case-hero{padding-bottom:4rem}.case-breadcrumb{margin-bottom:3rem}.case-page .case-gallery,.case-page .case-video,.case-page .case-feedback{padding:4rem 0}.case-page .swiper:not(.swiper-initialized) .swiper-wrapper{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.case-inner{width:calc(100% - 3.2rem)}.case-page h1{font-size:3.4rem}.case-toc{gap:1.2rem 1.8rem}.case-toc span{width:100%}.case-page .project-construction__header{align-items:flex-start}.case-page .project-construction__nav{padding-top:.4rem}.case-page .project-feedback__content{padding:2.2rem 1.8rem}.case-page .swiper:not(.swiper-initialized) .swiper-wrapper{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.case-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
