/* V12.15: customer reference composition for IM C2010 only. Every visible phrase is live text. */
.detail-photo-story-v15 { --v15-blue:#0954df; --v15-ink:#102c4a; --v15-muted:#5a6f84; display:grid; gap:48px; padding:0 0 72px; font-family:"Pretendard Variable","Noto Sans KR",sans-serif; color:var(--v15-ink); }
.detail-photo-story-v15 * { box-sizing:border-box; }
.detail-photo-story-v15 :is(h2,h3,p,fieldset) { margin:0; }
.detail-photo-story-v15 :is(h2,h3,p,span) { word-break:keep-all; overflow-wrap:anywhere; }
.detail-photo-story-v15 .v15-panel { min-width:0; overflow:hidden; border:1px solid #e0e8f1; background:#fff; }
.detail-photo-story-v15 .v15-panel h2 { font-size:38px; line-height:1.32; letter-spacing:-.055em; font-weight:750; }
.detail-photo-story-v15 .v15-kicker { color:var(--v15-blue); font-size:18px; line-height:1.5; font-weight:650; margin-bottom:12px; }
.detail-photo-story-v15 .v15-crop { position:relative; isolation:isolate; contain:paint; overflow:hidden; width:100%; aspect-ratio:var(--crop-w) / var(--crop-h); flex:none; }
.detail-photo-story-v15 .v15-crop>img { position:absolute; display:block; max-width:none; margin:0; width:calc(var(--source-w) * 100% / var(--crop-w)); height:calc(var(--source-h) * 100% / var(--crop-h)); left:calc(var(--crop-x) * -100% / var(--crop-w)); top:calc(var(--crop-y) * -100% / var(--crop-h)); object-fit:fill; pointer-events:none; }
/* Crop rectangles use original image pixels; their aspect ratios never change by viewport. */
.detail-photo-story-v15 .v15-crop-hero { --source-w:1726; --source-h:911; --crop-x:0; --crop-y:0; --crop-w:1726; --crop-h:911; }
.detail-photo-story-v15 .v15-crop-paper-0 { --source-w:1503; --source-h:1047; --crop-x:150; --crop-y:577; --crop-w:325; --crop-h:222; }
.detail-photo-story-v15 .v15-crop-paper-1 { --source-w:1503; --source-h:1047; --crop-x:594; --crop-y:577; --crop-w:317; --crop-h:222; }
.detail-photo-story-v15 .v15-crop-paper-2 { --source-w:1503; --source-h:1047; --crop-x:1050; --crop-y:577; --crop-w:305; --crop-h:222; }
.detail-photo-story-v15 .v15-crop-closeup { --source-w:1726; --source-h:911; --crop-x:980; --crop-y:140; --crop-w:520; --crop-h:575; }
.detail-photo-story-v15 .v15-crop-engineer { --source-w:1774; --source-h:887; --crop-x:650; --crop-y:150; --crop-w:1124; --crop-h:737; }
.detail-photo-story-v15 .v15-crop-office { --source-w:1475; --source-h:1067; --crop-x:624; --crop-y:663; --crop-w:167; --crop-h:165; }
.detail-photo-story-v15 .v15-crop-realty { --source-w:1475; --source-h:1067; --crop-x:1013; --crop-y:663; --crop-w:167; --crop-h:165; }
.detail-photo-story-v15 .v15-crop-clinic { --source-w:1475; --source-h:1067; --crop-x:624; --crop-y:848; --crop-w:167; --crop-h:164; }
.detail-photo-story-v15 .v15-crop-classroom { --source-w:1475; --source-h:1067; --crop-x:1013; --crop-y:848; --crop-w:167; --crop-h:164; }
.detail-photo-story-v15 .v15-crop-example-office { --source-w:1365; --source-h:1152; --crop-x:99; --crop-y:536; --crop-w:392; --crop-h:115; }
.detail-photo-story-v15 .v15-crop-example-realty { --source-w:1365; --source-h:1152; --crop-x:515; --crop-y:536; --crop-w:381; --crop-h:115; }
.detail-photo-story-v15 .v15-crop-example-clinic { --source-w:1365; --source-h:1152; --crop-x:921; --crop-y:536; --crop-w:379; --crop-h:115; }
.detail-photo-story-v15 .v15-crop-consultant { --source-w:1365; --source-h:1152; --crop-x:677; --crop-y:846; --crop-w:275; --crop-h:261; }
.detail-photo-story-v15 .v15-product-intro { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); align-items:center; background:linear-gradient(110deg,#f8fbff,#edf7ff); }
.detail-photo-story-v15 .v15-intro-copy { padding:46px 0 46px 48px; position:relative; z-index:1; }
.detail-photo-story-v15 .v15-intro-copy>.v15-kicker { color:var(--v15-ink); font-size:18px; }
.detail-photo-story-v15 .v15-ricoh { color:#cf1332; font-size:35px; line-height:1.1; letter-spacing:-.025em; font-weight:800; margin-top:22px; }
.detail-photo-story-v15 .v15-product-intro h2 { font-size:74px; line-height:1.12; margin-top:7px; font-weight:800; letter-spacing:-.06em; }
.detail-photo-story-v15 .v15-intro-copy>h3 { font-size:32px; line-height:1.4; font-weight:720; letter-spacing:-.045em; margin:22px 0 18px; }
.detail-photo-story-v15 .v15-intro-copy>h3+p { font-size:21px; line-height:1.65; color:var(--v15-muted); }
.detail-photo-story-v15 .v15-intro-copy .v15-subnote { font-size:15px; color:#627c92; margin-top:13px; line-height:1.6; }
.detail-photo-story-v15 .v15-intro-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:26px; max-width:640px; }
.detail-photo-story-v15 .v15-intro-facts>div { padding:17px 10px; text-align:center; border-radius:9px; background:#ffffffeb; box-shadow:0 3px 16px #174e9b05; }
.detail-photo-story-v15 .v15-intro-facts svg { width:33px; height:33px; display:block; margin:0 auto 12px; color:var(--v15-blue); }
.detail-photo-story-v15 .v15-intro-facts strong { display:block; font-size:19px; line-height:1.4; font-weight:700; }
.detail-photo-story-v15 .v15-intro-facts span { display:block; margin-top:7px; font-size:14px; line-height:1.5; color:#698098; }
.detail-photo-story-v15 .v15-intro-art { min-width:0; align-self:stretch; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.detail-photo-story-v15 .v15-intro-art .v15-crop { max-width:430px; }
.detail-photo-story-v15 .v15-rental-plans { padding:46px; background:linear-gradient(145deg,#fff,#f9fcff); }
.detail-photo-story-v15 .v15-section-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:30px; margin-bottom:30px; }
.detail-photo-story-v15 .v15-section-heading h2+p { font-size:18px; line-height:1.75; color:var(--v15-muted); margin-top:16px; max-width:760px; }
.detail-photo-story-v15 .v15-coverage-note { background:#edf5ff; border-radius:7px; padding:15px 17px; font-size:15px; line-height:1.7; color:#466884; max-width:280px; }
.detail-photo-story-v15 .v15-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; padding:0; border:0; min-width:0; }
.detail-photo-story-v15 .v15-plan-card { position:relative; display:flex; flex-direction:column; min-width:0; border:1px solid #dce6f2; border-radius:9px; padding:25px 22px 19px; background:#fff; cursor:pointer; }
.detail-photo-story-v15 .v15-plan-card:has(input:checked) { border-color:#2370e6; box-shadow:inset 0 0 0 1px #2370e6,0 6px 20px #2661c908; }
.detail-photo-story-v15 .v15-plan-card:has(input:focus-visible) { outline:3px solid #f19a3b; outline-offset:4px; }
.detail-photo-story-v15 .v15-plan-card>input { width:22px; height:22px; min-height:22px; position:absolute; top:28px; left:22px; margin:0; padding:0; accent-color:var(--v15-blue); }
.detail-photo-story-v15 .v15-plan-heading { display:block; margin-left:34px; }
.detail-photo-story-v15 .v15-plan-heading b { display:block; font-size:25px; font-weight:750; letter-spacing:-.04em; line-height:1.3; }
.detail-photo-story-v15 .v15-plan-description { display:block; min-height:44px; margin-top:8px; font-size:16px; color:#697e93; line-height:1.6; }
.detail-photo-story-v15 .v15-plan-price { display:flex; justify-content:center; align-items:baseline; gap:4px; margin:20px 0 19px; }
.detail-photo-story-v15 .v15-plan-price strong { color:var(--v15-blue); font-size:42px; letter-spacing:-.055em; line-height:1.25; font-weight:760; }
.detail-photo-story-v15 .v15-plan-price small { font-size:20px; color:var(--v15-blue); font-weight:600; }
.detail-photo-story-v15 .v15-plan-price small:first-child { color:var(--v15-ink); margin-right:3px; }
.detail-photo-story-v15 .v15-plan-quota { display:block; padding:14px 8px; background:#f4f8fd; text-align:center; border-radius:7px; font-size:16px; line-height:1.5; color:#506780; }
.detail-photo-story-v15 .v15-plan-quota strong { display:block; margin-top:5px; color:var(--v15-ink); font-size:19px; }
.detail-photo-story-v15 .v15-plan-card>.v15-crop { width:min(100%,280px); align-self:center; margin-top:20px; }
.detail-photo-story-v15 .v15-plan-select-label { display:block; text-align:center; margin-top:10px; color:#7b8d9d; font-size:14px; }
.detail-photo-story-v15 .v15-plan-card:has(input:checked) .v15-plan-select-label { color:var(--v15-blue); font-weight:650; }
.detail-photo-story-v15 .v15-plan-live { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 12px; margin-top:23px; font-size:17px; color:var(--v15-ink); }
.detail-photo-story-v15 .v15-plan-live strong { color:var(--v15-blue); font-size:22px; }
.detail-photo-story-v15 .v15-plan-live span { flex-basis:100%; font-size:15px; color:#6b8194; line-height:1.7; }
.detail-photo-story-v15 .v15-condition-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; margin-top:25px; padding-top:25px; border-top:1px solid #e0e9f3; }
.detail-photo-story-v15 .v15-condition-row article { display:flex; gap:15px; align-items:flex-start; min-width:0; }
.detail-photo-story-v15 .v15-condition-row svg { width:34px; height:34px; flex:none; color:var(--v15-blue); }
.detail-photo-story-v15 .v15-condition-row h3 { font-size:17px; line-height:1.4; font-weight:700; margin-bottom:7px; }
.detail-photo-story-v15 .v15-condition-row p,.detail-photo-story-v15 .v15-condition-row span { font-size:15px; line-height:1.65; color:#637c92; }
.detail-photo-story-v15 .v15-condition-row span { display:block; font-size:14px; margin-top:4px; }
.detail-photo-story-v15 .v15-features { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr); background:#f7fbff; }
.detail-photo-story-v15 .v15-feature-copy { padding:42px 30px 44px 46px; }
.detail-photo-story-v15 .v15-feature-intro { color:var(--v15-muted); font-size:20px; line-height:1.8; margin-top:19px; }
.detail-photo-story-v15 .v15-feature-rows { margin-top:30px; display:grid; gap:27px; }
.detail-photo-story-v15 .v15-feature-rows article { display:flex; gap:20px; align-items:flex-start; }
.detail-photo-story-v15 .v15-feature-rows article>svg { width:44px; height:44px; flex:none; padding:9px; box-sizing:content-box; background:#e5f2ff; border-radius:50%; color:var(--v15-blue); }
.detail-photo-story-v15 .v15-feature-rows h3 { font-size:22px; font-weight:720; line-height:1.45; margin:2px 0 8px; }
.detail-photo-story-v15 .v15-feature-rows p { font-size:17px; color:#61798f; line-height:1.8; }
.detail-photo-story-v15 .v15-feature-art { display:flex; align-items:center; min-width:0; background:#f1f5fa; }
.detail-photo-story-v15 .v15-service-main { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; padding:43px 44px 0; background:linear-gradient(130deg,#f8fbff,#edf6fc); }
.detail-photo-story-v15 .v15-service-copy h2 { margin-top:5px; }
.detail-photo-story-v15 .v15-service-copy h2+p { font-size:20px; color:var(--v15-muted); line-height:1.8; margin-top:18px; }
.detail-photo-story-v15 .v15-service-main>.v15-crop-engineer { grid-column:1; grid-row:2; align-self:end; margin-top:0; }
.detail-photo-story-v15 .v15-service-cards { grid-column:2; grid-row:1/3; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding-bottom:33px; }
.detail-photo-story-v15 .v15-service-cards article { padding:25px 21px; text-align:center; background:#ffffffef; border-radius:9px; }
.detail-photo-story-v15 .v15-service-cards svg { color:var(--v15-blue); width:41px; height:41px; margin-bottom:18px; }
.detail-photo-story-v15 .v15-service-cards h3 { font-size:20px; line-height:1.45; font-weight:700; margin-bottom:12px; }
.detail-photo-story-v15 .v15-service-cards p { font-size:16px; line-height:1.75; color:#657d92; }
.detail-photo-story-v15 .v15-office-recommend { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:42px; padding:38px 44px; }
.detail-photo-story-v15 .v15-office-recommend h2 { font-size:30px; }
.detail-photo-story-v15 .v15-office-recommend h2+p { margin-top:17px; color:var(--v15-muted); font-size:17px; line-height:1.75; }
.detail-photo-story-v15 .v15-office-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.detail-photo-story-v15 .v15-office-grid article { display:grid; grid-template-columns:99px minmax(0,1fr); gap:13px; align-items:center; border:1px solid #e4ecf4; border-radius:7px; overflow:hidden; background:#fff; }
.detail-photo-story-v15 .v15-office-grid article>div:last-child { padding:12px 10px 12px 0; }
.detail-photo-story-v15 .v15-office-grid h3 { font-size:17px; line-height:1.45; margin-bottom:6px; font-weight:700; }
.detail-photo-story-v15 .v15-office-grid p { font-size:14px; line-height:1.65; color:#6a8095; }
.detail-photo-story-v15 .v15-button { display:inline-flex; align-items:center; justify-content:space-between; gap:18px; min-height:55px; padding:14px 22px; background:var(--v15-blue); color:#fff; border:1px solid var(--v15-blue); border-radius:7px; font-size:17px; font-weight:650; line-height:1.45; text-decoration:none; }
.detail-photo-story-v15 .v15-button:hover { background:#0644be; color:#fff; }
.detail-photo-story-v15 .v15-button-outline { background:#fff; color:var(--v15-blue); border-color:#9ac2f3; }
.detail-photo-story-v15 .v15-button-outline:hover { background:#f1f7ff; color:var(--v15-blue); }
.detail-photo-story-v15 a:focus-visible { outline:3px solid #f19a3b; outline-offset:4px; }
.detail-photo-story-v15 .v15-office-recommend .v15-button { margin-top:20px; font-size:15px; padding:12px 17px; }
.detail-photo-story-v15 .v15-environments { padding:43px 44px 33px; }
.detail-photo-story-v15 .v15-cases-button { white-space:nowrap; flex:none; font-size:15px; align-self:center; }
.detail-photo-story-v15 .v15-example-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.detail-photo-story-v15 .v15-example-grid article { border:1px solid #e0e8f2; border-radius:8px; overflow:hidden; }
.detail-photo-story-v15 .v15-example-grid article>div:last-child { padding:20px 22px 23px; }
.detail-photo-story-v15 .v15-example-label { display:inline-block; padding:4px 8px; border-radius:4px; font-size:12px; font-weight:600; color:#426b91; background:#edf5fd; margin-bottom:9px; }
.detail-photo-story-v15 .v15-example-grid h3 { font-size:20px; line-height:1.45; margin-bottom:10px; font-weight:700; }
.detail-photo-story-v15 .v15-example-grid p { color:#657c92; font-size:16px; line-height:1.8; }
.detail-photo-story-v15 .v15-consult-banner { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(150px,.65fr) minmax(235px,.75fr); align-items:center; gap:12px; border-radius:9px; overflow:hidden; background:#eaf5ff; margin-top:29px; padding:0 25px 0 29px; }
.detail-photo-story-v15 .v15-consult-banner>div:first-child { padding-block:27px; }
.detail-photo-story-v15 .v15-consult-banner h2 { color:var(--v15-blue); font-size:25px; line-height:1.45; }
.detail-photo-story-v15 .v15-consult-banner h2+p { font-size:17px; color:#52708c; line-height:1.75; margin-top:14px; }
.detail-photo-story-v15 .v15-consult-banner>.v15-crop-consultant { align-self:end; max-width:275px; }
.detail-photo-story-v15 .v15-consult-actions { display:grid; gap:10px; padding-block:22px; }
.detail-photo-story-v15 .v15-consult-actions .v15-button { font-size:17px; }
.detail-photo-story-v15 .v15-phone { text-align:center; display:flex; flex-direction:column; justify-content:center; min-height:82px; padding:12px; background:#fff; border-radius:7px; color:var(--v15-blue); }
.detail-photo-story-v15 .v15-phone strong { font-size:30px; line-height:1.25; letter-spacing:-.035em; }
.detail-photo-story-v15 .v15-phone span { margin-top:5px; color:#71879b; font-size:13px; line-height:1.5; }
@media(max-width:1200px) {
 .detail-photo-story-v15 .v15-panel h2 { font-size:32px; }
 .detail-photo-story-v15 .v15-product-intro { grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr); }
 .detail-photo-story-v15 .v15-intro-copy { padding:35px 0 35px 32px; }
 .detail-photo-story-v15 .v15-product-intro h2 { font-size:61px; }
 .detail-photo-story-v15 .v15-intro-copy>h3 { font-size:27px; }
 .detail-photo-story-v15 .v15-intro-copy>h3+p { font-size:18px; }
 .detail-photo-story-v15 .v15-intro-facts { gap:8px; }
 .detail-photo-story-v15 .v15-intro-facts strong { font-size:16px; }
 .detail-photo-story-v15 .v15-intro-facts span { font-size:12px; }
 .detail-photo-story-v15 .v15-intro-art .v15-crop { max-width:350px; }
 .detail-photo-story-v15 .v15-rental-plans { padding:35px 30px; }
 .detail-photo-story-v15 .v15-section-heading { display:block; }
 .detail-photo-story-v15 .v15-coverage-note { margin-top:20px; max-width:none; }
 .detail-photo-story-v15 .v15-plan-grid { gap:15px; }
 .detail-photo-story-v15 .v15-plan-card { padding-inline:17px; }
 .detail-photo-story-v15 .v15-plan-card>input { left:17px; }
 .detail-photo-story-v15 .v15-plan-heading b { font-size:23px; }
 .detail-photo-story-v15 .v15-plan-description { font-size:15px; }
 .detail-photo-story-v15 .v15-plan-price strong { font-size:36px; }
 .detail-photo-story-v15 .v15-plan-quota { font-size:14px; }
 .detail-photo-story-v15 .v15-condition-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px; }
 .detail-photo-story-v15 .v15-feature-copy { padding:33px 26px; }
 .detail-photo-story-v15 .v15-feature-rows article { gap:14px; }
 .detail-photo-story-v15 .v15-feature-rows article>svg { width:30px; height:30px; }
 .detail-photo-story-v15 .v15-feature-rows h3 { font-size:20px; }
 .detail-photo-story-v15 .v15-feature-rows p { font-size:16px; }
 .detail-photo-story-v15 .v15-service-main { padding:34px 30px 0; gap:22px; }
 .detail-photo-story-v15 .v15-service-copy h2+p { font-size:18px; }
 .detail-photo-story-v15 .v15-service-cards { gap:12px; }
 .detail-photo-story-v15 .v15-service-cards article { padding:20px 15px; }
 .detail-photo-story-v15 .v15-service-cards h3 { font-size:18px; }
 .detail-photo-story-v15 .v15-service-cards p { font-size:15px; }
 .detail-photo-story-v15 .v15-office-recommend { padding:32px 30px; gap:25px; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
 .detail-photo-story-v15 .v15-office-recommend h2 { font-size:27px; }
 .detail-photo-story-v15 .v15-office-grid article { grid-template-columns:80px minmax(0,1fr); gap:10px; }
 .detail-photo-story-v15 .v15-office-grid h3 { font-size:16px; }
 .detail-photo-story-v15 .v15-office-grid p { font-size:13px; }
 .detail-photo-story-v15 .v15-environments { padding:34px 30px 30px; }
 .detail-photo-story-v15 .v15-cases-button { margin-top:18px; }
 .detail-photo-story-v15 .v15-example-grid { gap:15px; }
 .detail-photo-story-v15 .v15-example-grid article>div:last-child { padding:17px; }
 .detail-photo-story-v15 .v15-example-grid h3 { font-size:18px; }
 .detail-photo-story-v15 .v15-consult-banner { grid-template-columns:minmax(0,1.1fr) minmax(130px,.6fr) minmax(210px,.75fr); padding-inline:21px; }
 .detail-photo-story-v15 .v15-consult-banner h2 { font-size:22px; }
 .detail-photo-story-v15 .v15-consult-banner h2+p { font-size:16px; }
 .detail-photo-story-v15 .v15-phone strong { font-size:27px; }
}
@media(max-width:920px) and (min-width:761px) {
 .detail-photo-story-v15 .v15-office-recommend { grid-template-columns:minmax(0,1fr); }
 .detail-photo-story-v15 .v15-office-grid article { grid-template-columns:100px minmax(0,1fr); }
 .detail-photo-story-v15 .v15-features { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); }
 .detail-photo-story-v15 .v15-feature-rows h3 { font-size:19px; }
 .detail-photo-story-v15 .v15-consult-banner { grid-template-columns:minmax(0,1fr) minmax(200px,.8fr); }
 .detail-photo-story-v15 .v15-consult-banner>.v15-crop-consultant { display:none; }
}
@media(max-width:760px) {
 .detail-photo-story-v15 { gap:24px; padding-bottom:42px; }
 .detail-photo-story-v15 .v15-panel h2 { font-size:28px; }
 .detail-photo-story-v15 .v15-kicker { font-size:16px; margin-bottom:10px; }
 .detail-photo-story-v15 .v15-product-intro { grid-template-columns:minmax(0,1fr); }
 .detail-photo-story-v15 .v15-intro-copy { padding:28px 24px; }
 .detail-photo-story-v15 .v15-intro-copy>.v15-kicker { font-size:16px; }
 .detail-photo-story-v15 .v15-ricoh { font-size:26px; margin-top:16px; }
 .detail-photo-story-v15 .v15-product-intro h2 { font-size:53px; }
 .detail-photo-story-v15 .v15-intro-copy>h3 { font-size:25px; margin:17px 0; }
 .detail-photo-story-v15 .v15-intro-copy>h3+p { font-size:17px; line-height:1.75; }
 .detail-photo-story-v15 .v15-intro-copy .v15-subnote { font-size:14px; }
 .detail-photo-story-v15 .v15-intro-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:21px; }
 .detail-photo-story-v15 .v15-intro-facts>div { padding:17px 10px; }
 .detail-photo-story-v15 .v15-intro-facts strong { font-size:17px; }
 .detail-photo-story-v15 .v15-intro-facts span { font-size:13px; }
 .detail-photo-story-v15 .v15-intro-art { background:#eef6fc; }
 .detail-photo-story-v15 .v15-intro-art .v15-crop { max-width:280px; }
 .detail-photo-story-v15 .v15-rental-plans { padding:29px 23px; }
 .detail-photo-story-v15 .v15-section-heading { margin-bottom:23px; }
 .detail-photo-story-v15 .v15-section-heading h2+p { font-size:16px; line-height:1.75; margin-top:14px; }
 .detail-photo-story-v15 .v15-coverage-note { font-size:14px; padding:13px 15px; }
 .detail-photo-story-v15 .v15-plan-grid { grid-template-columns:minmax(0,1fr); gap:15px; }
 .detail-photo-story-v15 .v15-plan-card { padding:24px 20px 17px; }
 .detail-photo-story-v15 .v15-plan-card>input { top:26px; left:20px; }
 .detail-photo-story-v15 .v15-plan-heading b { font-size:24px; }
 .detail-photo-story-v15 .v15-plan-description { min-height:0; font-size:16px; }
 .detail-photo-story-v15 .v15-plan-price { margin:22px 0 17px; }
 .detail-photo-story-v15 .v15-plan-price strong { font-size:40px; }
 .detail-photo-story-v15 .v15-plan-quota { font-size:16px; }
 .detail-photo-story-v15 .v15-plan-card>.v15-crop { max-width:245px; }
 .detail-photo-story-v15 .v15-plan-live { font-size:16px; }
 .detail-photo-story-v15 .v15-plan-live span { font-size:14px; }
 .detail-photo-story-v15 .v15-condition-row { grid-template-columns:minmax(0,1fr); gap:23px; margin-top:22px; padding-top:23px; }
 .detail-photo-story-v15 .v15-condition-row p { font-size:16px; }
 .detail-photo-story-v15 .v15-condition-row span { font-size:14px; }
 .detail-photo-story-v15 .v15-features { grid-template-columns:minmax(0,1fr); }
 .detail-photo-story-v15 .v15-feature-copy { padding:29px 23px; }
 .detail-photo-story-v15 .v15-feature-intro { font-size:17px; margin-top:15px; }
 .detail-photo-story-v15 .v15-feature-rows { gap:24px; margin-top:24px; }
 .detail-photo-story-v15 .v15-feature-rows article { gap:13px; }
 .detail-photo-story-v15 .v15-feature-rows article>svg { width:26px; height:26px; padding:7px; }
 .detail-photo-story-v15 .v15-feature-rows h3 { font-size:19px; margin-top:0; }
 .detail-photo-story-v15 .v15-feature-rows p { font-size:16px; }
 .detail-photo-story-v15 .v15-feature-art { max-height:none; }
 .detail-photo-story-v15 .v15-service-main { grid-template-columns:minmax(0,1fr); gap:23px; padding:29px 23px 0; }
 .detail-photo-story-v15 .v15-service-copy h2+p { font-size:17px; }
 .detail-photo-story-v15 .v15-service-main>.v15-crop-engineer { grid-row:2; }
 .detail-photo-story-v15 .v15-service-cards { grid-column:1; grid-row:3; padding-bottom:24px; gap:12px; }
 .detail-photo-story-v15 .v15-service-cards article { padding:20px 13px; }
 .detail-photo-story-v15 .v15-service-cards svg { width:34px; height:34px; margin-bottom:13px; }
 .detail-photo-story-v15 .v15-service-cards h3 { font-size:18px; }
 .detail-photo-story-v15 .v15-service-cards p { font-size:15px; }
 .detail-photo-story-v15 .v15-office-recommend { grid-template-columns:minmax(0,1fr); padding:27px 23px; gap:24px; }
 .detail-photo-story-v15 .v15-office-recommend h2 { font-size:27px; }
 .detail-photo-story-v15 .v15-office-recommend h2+p { font-size:16px; }
 .detail-photo-story-v15 .v15-office-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
 .detail-photo-story-v15 .v15-office-grid article { grid-template-columns:95px minmax(0,1fr); gap:13px; }
 .detail-photo-story-v15 .v15-office-grid h3 { font-size:17px; }
 .detail-photo-story-v15 .v15-office-grid p { font-size:14px; }
 .detail-photo-story-v15 .v15-environments { padding:29px 23px 23px; }
 .detail-photo-story-v15 .v15-cases-button { min-height:49px; }
 .detail-photo-story-v15 .v15-example-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
 .detail-photo-story-v15 .v15-example-grid article>div:last-child { padding:19px; }
 .detail-photo-story-v15 .v15-example-grid h3 { font-size:20px; }
 .detail-photo-story-v15 .v15-example-grid p { font-size:16px; }
 .detail-photo-story-v15 .v15-consult-banner { grid-template-columns:minmax(0,1fr); padding:25px 20px 22px; gap:0; }
 .detail-photo-story-v15 .v15-consult-banner>div:first-child { padding:0; }
 .detail-photo-story-v15 .v15-consult-banner h2 { font-size:25px; }
 .detail-photo-story-v15 .v15-consult-banner h2+p { font-size:16px; margin-top:13px; }
 .detail-photo-story-v15 .v15-consult-banner>.v15-crop-consultant { width:190px; justify-self:center; margin-top:18px; }
 .detail-photo-story-v15 .v15-consult-actions { padding:0; gap:10px; }
 .detail-photo-story-v15 .v15-consult-actions .v15-button { font-size:16px; }
 .detail-photo-story-v15 .v15-phone strong { font-size:28px; }
}
@media(max-width:380px) {
 .detail-photo-story-v15 .v15-intro-copy { padding-inline:20px; }
 .detail-photo-story-v15 .v15-product-intro h2 { font-size:45px; }
 .detail-photo-story-v15 .v15-intro-copy>h3 { font-size:23px; }
 .detail-photo-story-v15 .v15-rental-plans,.detail-photo-story-v15 .v15-feature-copy,.detail-photo-story-v15 .v15-office-recommend,.detail-photo-story-v15 .v15-environments { padding-inline:18px; }
 .detail-photo-story-v15 .v15-plan-price strong { font-size:36px; }
 .detail-photo-story-v15 .v15-plan-quota { font-size:15px; }
 .detail-photo-story-v15 .v15-service-main { padding-inline:18px; }
 .detail-photo-story-v15 .v15-service-cards { grid-template-columns:minmax(0,1fr); }
 .detail-photo-story-v15 .v15-office-grid article { grid-template-columns:81px minmax(0,1fr); gap:11px; }
 .detail-photo-story-v15 .v15-office-grid p { font-size:14px; }
 .detail-photo-story-v15 .v15-button { font-size:15px; padding-inline:16px; }
 .detail-photo-story-v15 .v15-consult-banner { padding-inline:17px; }
}

/* Clean full scene: copy and machine share one landscape without embedded claims. */
.detail-photo-story-v15 .v15-product-intro { position:relative; display:block; }
.detail-photo-story-v15 .v15-intro-copy { width:58%; padding:46px 0 46px 48px; }
.detail-photo-story-v15 .v15-intro-art { position:absolute; inset:0; z-index:0; }
.detail-photo-story-v15 .v15-intro-art::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#f6fbfff2 0%,#f6fbffe0 37%,#f6fbff2b 61%,transparent 72%); }
.detail-photo-story-v15 .v15-intro-art .v15-crop { width:100%; height:100%; max-width:none; aspect-ratio:auto; }
.detail-photo-story-v15 .v15-intro-art .v15-crop>img { width:100%; height:100%; left:0; top:0; object-fit:cover; object-position:center; }
@media(max-width:1200px) and (min-width:1101px) {
 .detail-photo-story-v15 .v15-intro-copy { padding:35px 0 35px 32px; }
}
@media(max-width:1100px) {
 .detail-photo-story-v15 .v15-intro-copy { width:100%; padding:35px 32px 24px; }
 .detail-photo-story-v15 .v15-intro-art { position:relative; background:#f0f7fc; }
 .detail-photo-story-v15 .v15-intro-art::after { display:none; }
 .detail-photo-story-v15 .v15-intro-art .v15-crop { height:auto; aspect-ratio:1726 / 911; }
 .detail-photo-story-v15 .v15-intro-art .v15-crop>img { object-fit:fill; }
 .detail-photo-story-v15 .v15-intro-facts { max-width:none; }
}
@media(max-width:760px) {
 .detail-photo-story-v15 .v15-intro-copy { padding:28px 24px; }
 .detail-photo-story-v15 .v15-intro-art .v15-crop { --crop-x:800; --crop-w:926; --crop-h:911; aspect-ratio:var(--crop-w) / var(--crop-h); }
 .detail-photo-story-v15 .v15-intro-art .v15-crop>img { width:calc(var(--source-w) * 100% / var(--crop-w)); height:100%; left:calc(var(--crop-x) * -100% / var(--crop-w)); top:0; }
}
@media(max-width:380px) {
 .detail-photo-story-v15 .v15-intro-copy { padding-inline:18px; }
}

/* V12.16: customer-approved short service labels, IM C2010 photo story only. */
.detail-photo-story-v15 .v15-service-cards article { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.detail-photo-story-v15 .v15-service-cards h3 { margin-bottom:0; }
