/* Project stories: photography and article content share the same aligned column. */
.gr-case-designed{background:#fff}
.cs-container{width:min(1180px,calc(100% - var(--gr-gutter)*2));margin-inline:auto}
.cs-breadcrumb{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:22px;font-size:12px;color:var(--gr-muted)}
.cs-breadcrumb a{color:var(--gr-blue-action)}
.cs-breadcrumb>span{font-size:10px;letter-spacing:.08em}
.cs-hero{padding-block:32px 0;background:#fff;color:var(--gr-ink)}
.cs-label,.cs-chapter-label{display:block;font-size:11px!important;font-weight:600!important;line-height:1.6!important;letter-spacing:.08em;color:var(--gr-blue-action);margin:0 0 17px}
.cs-hero h1{font-size:clamp(42px,4.6vw,62px);font-weight:600;line-height:1.12;letter-spacing:-.045em;margin:0 0 22px;color:var(--gr-ink);max-width:1100px;text-wrap:balance}
.cs-hero-intro{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:34px}
.cs-hero .cs-lead{font-size:19px!important;line-height:1.7!important;color:var(--gr-muted);margin:0;max-width:760px}
.cs-story-link{display:inline-flex;align-items:center;gap:24px;flex-shrink:0;border-bottom:1px solid var(--gr-line);padding-bottom:9px;font-size:14px;font-weight:600;color:var(--gr-blue-action)}
.cs-story-link>span{font-size:19px}.cs-story-link:hover{color:var(--gr-blue)}
.cs-hero-photo{margin:0}
.cs-image{position:relative;display:block;width:100%;padding:0;border:0;border-radius:10px;background:var(--gr-blue-pale);overflow:hidden;line-height:0;cursor:zoom-in}
.cs-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.cs-image:hover img{transform:scale(1.015)}
.cs-image:focus-visible{outline:3px solid var(--gr-blue-action);outline-offset:5px}
.cs-hero-photo .cs-image{height:480px}.cs-hero-photo img{object-position:center 58%}
.gr-case-designed figcaption{font-size:12px;line-height:1.7;color:var(--gr-muted);padding-top:13px}
.cs-hero-photo figcaption{display:flex;justify-content:space-between;gap:28px}
.cs-hero-photo figcaption>span:last-child{flex-shrink:0;font-size:11px}
.cs-zoom{position:absolute;right:18px;bottom:18px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#fffffff2;color:var(--gr-blue-deep);font-size:23px;font-weight:500;line-height:1}
.cs-article{padding-bottom:78px}
.gr-case-designed :where(main) h2{font-size:36px;font-weight:600;line-height:1.22;letter-spacing:-.035em;color:var(--gr-ink);margin:0 0 24px}
.cs-chapter,.cs-design,.cs-experience-copy{width:100%;max-width:none;margin-inline:0;padding-block:64px;scroll-margin-top:30px}
.cs-prose p{font-size:17px!important;line-height:1.9!important;color:#415f73;margin:0 0 23px;overflow-wrap:break-word}.cs-prose p:last-child{margin-bottom:0}
.cs-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.cs-photo-pair figure,.cs-experience figure{margin:0;min-width:0}
.cs-photo-pair .cs-image{height:370px}.cs-photo-pair img{object-position:center 42%}
.cs-photo-pair img[src$="camp-water-adventures-2.jpg"]{object-position:center 20%}
.cs-design-heading{margin-bottom:28px}
.cs-design-heading>p{font-size:17px!important;line-height:1.85!important;color:var(--gr-muted);margin:0}
.cs-detail-list{border-top:1px solid var(--gr-line)}
.cs-detail-list article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px 18px;padding:27px 0;border-bottom:1px solid var(--gr-line);align-items:baseline}
.cs-detail-list article>span{font-size:12px;color:var(--gr-blue-action);font-weight:600}
.cs-detail-list h3{font-size:23px;line-height:1.35;font-weight:600;margin:0;color:var(--gr-ink)}
.cs-detail-list p{grid-column:2;font-size:17px!important;line-height:1.85!important;color:#415f73;margin:0}
.cs-experience{display:block;padding:0;background:none;border-radius:0}
.cs-experience>.cs-experience-copy{padding-block:48px 60px}
.cs-experience .cs-image{height:450px}.cs-experience img{object-position:center 50%}
.cs-prose>.gr-underlined{display:inline-block;margin-top:7px;font-size:14px}
.cs-prose .cs-source{font-size:12px!important;line-height:1.7!important;color:var(--gr-muted);margin-top:25px}
.cs-invitation{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:44px 48px;background:var(--gr-blue-deep);border-radius:12px}
.cs-invitation .cs-label{color:var(--gr-yellow);margin-bottom:15px}
.gr-case-designed :where(main) .cs-invitation h2{color:#fff;margin:0;font-size:34px}.cs-invitation .gr-button{flex-shrink:0}
.cs-related{padding-top:66px}.cs-related-heading{margin-bottom:26px}.cs-related-heading .cs-label{margin-bottom:12px}
.cs-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.cs-related-card{display:block;min-width:0;color:var(--gr-ink)}
.cs-related-card>img{display:block;width:100%;height:210px;object-fit:cover;border-radius:8px}
.cs-related-card>div{position:relative;padding:19px 30px 0 0}
.cs-related-card span{display:block;font-size:10px;line-height:1.7;letter-spacing:.06em;color:var(--gr-blue-action);margin-bottom:9px}
.cs-related-card h3{font-size:21px;line-height:1.35;font-weight:600;margin:0;color:inherit}
.cs-related-card b{position:absolute;right:0;top:41px;font-size:22px;font-weight:500;color:var(--gr-blue-action)}.cs-related-card:hover{color:var(--gr-blue)}
@media(max-width:1000px){
 .cs-hero-intro{align-items:flex-start;gap:25px}.cs-hero .cs-lead{font-size:17px!important}
 .cs-hero-photo .cs-image{height:420px}.cs-photo-pair .cs-image{height:310px}
 .cs-related-grid{gap:20px}.cs-related-card>img{height:180px}.cs-related-card h3{font-size:19px}
 .cs-invitation{padding:36px}.gr-case-designed :where(main) .cs-invitation h2{font-size:30px}
}
@media(max-width:700px){
 .cs-breadcrumb{padding-block:18px}.cs-breadcrumb>span{display:none}
 .cs-hero{padding-top:22px}.cs-hero h1{font-size:40px;line-height:1.13;margin-bottom:20px}
 .cs-hero-intro{display:block;margin-bottom:27px}.cs-hero .cs-lead{font-size:17px!important;line-height:1.75!important;margin-bottom:20px}
 .cs-story-link{font-size:13px}.cs-hero-photo .cs-image{height:270px}
 .cs-hero-photo figcaption{display:block}.cs-hero-photo figcaption>span{display:block}.cs-hero-photo figcaption>span:last-child{margin-top:8px}
 .cs-zoom{width:34px;height:34px;right:12px;bottom:12px;font-size:21px}
 .gr-case-designed :where(main) h2{font-size:30px;line-height:1.22;margin-bottom:22px}
 .cs-chapter,.cs-design,.cs-experience-copy{padding-block:42px}.cs-chapter-label{margin-bottom:14px}
 .cs-prose p,.cs-detail-list p{font-size:16px!important;line-height:1.85!important;margin-bottom:20px}
 .cs-photo-pair{grid-template-columns:1fr;gap:25px}.cs-photo-pair .cs-image{height:300px}
 .cs-design-heading>p{font-size:16px!important}.cs-detail-list article{grid-template-columns:23px minmax(0,1fr);gap:10px 12px;padding-block:24px}
 .cs-detail-list h3{font-size:21px}.cs-detail-list p{margin:0}
 .cs-experience .cs-image{height:300px}.cs-experience>.cs-experience-copy{padding-block:35px 42px}
 .cs-invitation{display:block;padding:30px 25px;border-radius:10px}
 .gr-case-designed :where(main) .cs-invitation h2{font-size:28px;margin-bottom:26px}
 .cs-invitation .gr-button{width:100%;justify-content:space-between;font-size:14px;padding-inline:19px}
 .cs-related{padding-top:43px}.cs-related-grid{grid-template-columns:1fr;gap:29px}
 .cs-related-card>img{height:230px}.cs-related-card h3{font-size:22px}.cs-related-card span{font-size:11px}
 .cs-article{padding-bottom:48px}
}
@media(prefers-reduced-motion:reduce){.cs-image img{transition:none}}
