.photo-story-page ::selection{background:#e4eadc;color:var(--ink)}
.photo-story-hero h1{font-size:clamp(52px,6.3vw,108px);line-height:1.08;letter-spacing:-.06em;max-width:1450px}
.photo-story-hero h1>span{display:block;white-space:normal;font-size:.6em;line-height:1.3;letter-spacing:-.04em;color:var(--muted);margin-top:16px}
.photo-story-hero .hero-film{height:500px}
.story-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:42px}
.story-heading>p{font-size:17px;line-height:1.8;color:var(--muted);max-width:390px}
.story-selection{border-top:1px solid var(--border);margin-top:45px}
.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.story-grid article{min-width:0;padding-top:24px;border-top:1px solid var(--border)}
.story-grid h3{font-size:23px}
.story-grid p{font-size:16px;line-height:1.8;color:var(--muted);margin-top:17px}
.storyboard-section{background:var(--panel);max-width:none}
.storyboard{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:0;list-style:none}
.storyboard li{min-width:0}
.storyboard img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:6px}
.storyboard h3{margin-top:23px;font-size:23px}
.storyboard p{font-size:15px;line-height:1.8;color:var(--muted);margin-top:12px}
.story-result{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:55px;padding-top:55px;margin-top:50px;border-top:1px solid var(--border)}
.story-result-copy>p{margin-top:20px;font-size:16px;line-height:1.8;color:var(--muted)}
.story-result-copy h3{font-size:32px;letter-spacing:-.04em}
.story-montage{margin:0;min-width:0}
.story-montage-media{position:relative;border-radius:6px;overflow:hidden;background:#182224;aspect-ratio:3/2}
.story-montage video{display:block;width:100%;height:100%;object-fit:contain}
.story-montage .round{position:absolute;right:18px;bottom:18px}
.story-montage figcaption{font-size:13px;line-height:1.8;color:var(--muted);margin-top:15px}
.story-transitions{border-bottom:1px solid var(--border)}
.story-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}
.story-lead{max-width:420px;color:var(--muted);font-size:16px;line-height:1.8;margin-top:28px}
.transition-list article{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:28px;padding:25px 0;border-bottom:1px solid var(--border)}
.transition-list article:first-child{padding-top:0}
.transition-list h3{font-size:23px}
.transition-list p{margin-top:12px;color:var(--muted);font-size:16px;line-height:1.8}
.transition-mark{height:85px;position:relative;display:flex;align-items:center;justify-content:center}
.transition-mark span{display:block;width:62px;height:68px;border:1px solid #bac3b0;border-radius:6px;background:#e6ebdf;transform:rotate(-6deg)}
.transition-mark span+span{background:#dadfd4;transform:rotate(6deg);margin-left:-20px}
.transition-mark.cut span{transform:none;margin-left:0;border-radius:0}
.transition-mark.cut span+span{background:#66745a;border-left:3px solid #fff}
.transition-mark.fade span+span{opacity:.65}
.transition-mark.match span:after{content:'';display:block;width:20px;height:20px;border-radius:50%;background:#768768;margin:23px auto}
.story-table-wrap{overflow-x:auto;margin-top:45px}
.story-table{border-collapse:collapse;width:100%;min-width:580px;text-align:left}
.story-table th{font-size:13px;color:var(--muted);font-weight:600;letter-spacing:.035em;padding:18px 24px;border-bottom:1px solid var(--border);background:var(--panel)}
.story-table td{padding:25px 24px;border-bottom:1px solid var(--border);vertical-align:top;font-size:15px;line-height:1.8;color:var(--muted)}
.story-table td:first-child{color:var(--ink);font-weight:500;width:26%;font-size:17px}
.story-table td:nth-child(2){width:32%}
.story-table caption{text-align:left;font-size:14px;line-height:1.8;color:var(--muted);caption-side:bottom;padding-top:18px}
.story-assembly{background:var(--panel);max-width:none}
.assembly-list{list-style:none;margin:0;padding:0}
.assembly-list li{position:relative;padding:26px 0;border-bottom:1px solid var(--border)}
.assembly-list li:first-child{padding-top:0}


.assembly-list h3{font-size:23px}
.assembly-list p{margin-top:12px;font-size:16px;line-height:1.8;color:var(--muted)}
.story-qc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px 55px}
.story-qc-grid article{padding:24px 0;border-top:1px solid var(--border)}
.story-qc-grid h3{font-size:23px}
.story-qc-grid p{font-size:16px;line-height:1.8;margin-top:16px;color:var(--muted)}
.story-final{border-top:1px solid var(--border)}
.story-final>p{max-width:660px;margin-left:auto;margin-right:auto}
.story-next-link{display:inline-block;margin-top:25px;font-size:14px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.story-layout{gap:45px}.story-grid{gap:24px}.story-result{gap:35px}.transition-list article{grid-template-columns:110px 1fr;gap:18px}.transition-mark span{width:50px;height:60px}.transition-mark.match span:after{margin:19px auto}.storyboard{gap:18px}}
@media(max-width:800px){.story-heading{display:block}.story-heading>p{margin-top:24px;max-width:none}.story-layout,.story-result{grid-template-columns:1fr;gap:35px}.story-lead{max-width:none}.storyboard{grid-template-columns:1fr;gap:34px}.storyboard img{max-height:460px}.story-grid{grid-template-columns:1fr;gap:28px}.story-table th,.story-table td{padding-left:16px;padding-right:16px}.photo-story-hero .hero-film{height:440px}}
@media(max-width:700px){.photo-story-hero h1{font-size:11.5vw;line-height:1.12}.photo-story-hero h1>span{font-size:.64em;margin-top:13px}.photo-story-hero .hero-film{height:390px}.story-selection{margin-top:25px}.story-heading{margin-bottom:30px}.story-heading>p{font-size:16px}.story-qc-grid{grid-template-columns:1fr;gap:24px}.story-result{padding-top:35px;margin-top:35px}.story-result-copy h3{font-size:28px}.storyboard h3{margin-top:18px}.transition-list article{grid-template-columns:85px 1fr;gap:15px}.transition-mark span{width:40px;height:52px}.transition-mark.match span:after{width:15px;height:15px;margin:17px auto}.transition-list h3{font-size:21px}.transition-list p{font-size:15px}.story-table-wrap{margin-top:30px}.story-final h2{font-size:clamp(34px,7.8vw,52px)}}
