/* November 3 visual revision: loaded only by the added staging-page recreations. */
.photo-redesign .expansion-hero-grid { grid-template-columns: 1.02fr 1fr; gap: 58px; padding-top: 48px; padding-bottom: 65px; }
.photo-redesign .expansion-image-frame { height: 505px; padding: 10px; border-radius: 52px 18px 52px 18px; }
.photo-redesign .expansion-image-frame picture { display:block; width:100%; height:100%; }
.photo-redesign .expansion-image-frame img { display:block; width:100%; height:100%; object-position:var(--photo-position,50% 50%); }
.photo-redesign .expansion-hero-figure { position:relative; }
.photo-redesign .photo-service-label { display:inline-flex; align-items:center; gap:9px; margin:16px 0 0; padding:10px 14px; border:1px solid rgba(255,255,255,.28); border-radius:8px; background:rgba(255,255,255,.1); color:white; font-size:11px; font-weight:750; }
.photo-service-label::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--gold); }
.photo-redesign .expansion-hero-figure figcaption { font-size:10px; max-width:510px; }
.visual-story { padding:90px 0; background:var(--cream) url('https://assets.cdn.filesafe.space/cngY16os978TmprBXKVV/media/6ae07f46c62ddbd638d38c32.svg') repeat; background-size:640px 520px; }
.visual-story-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:68px; align-items:center; }
.visual-story-figure { margin:0; min-width:0; }
.visual-story-photo { position:relative; padding:10px; border-radius:28px 12px 28px 12px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow-sm); }
.visual-story-photo img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:20px 7px 20px 7px; }
.visual-story-photo.diagram img { object-fit:contain; background:#edf7fc; }
.visual-story-figure figcaption { margin-top:12px; color:var(--muted); font-size:10px; line-height:1.6; }
.visual-story h2 { margin:18px 0 21px; color:var(--navy); font:600 clamp(33px,3.6vw,50px)/1.07 Georgia,'Times New Roman',serif; letter-spacing:-.035em; }
.visual-story h2 em { display:block; color:var(--emerald-deep); }
.visual-story-copy > p { margin:0; color:var(--muted); font-size:15px; line-height:1.8; }
.visual-story-points { list-style:none; margin:25px 0; padding:0; display:grid; gap:14px; }
.visual-story-points li { display:flex; align-items:flex-start; gap:11px; color:var(--ink); font-size:13px; line-height:1.7; }
.visual-story-points li::before { content:'✓'; flex:0 0 24px; height:24px; display:grid; place-items:center; border-radius:50%; color:var(--emerald-deep); background:#e5f1e1; font-size:12px; font-weight:900; }
.visual-story .expansion-caution { margin:42px 0 0; background:white; }
.visual-story .button { margin-top:3px; }
.visual-region-pictures { padding:42px 0 6px; background:white; }
.visual-region-pictures .site-shell { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.visual-region-pictures figure { margin:0; min-width:0; }
.visual-region-pictures img { width:100%; aspect-ratio:4/3; display:block; object-fit:cover; border-radius:18px; }
.visual-region-pictures figcaption { margin-top:12px; color:var(--navy); font:600 21px Georgia,serif; }
.visual-region-pictures figcaption small { display:block; color:var(--muted); font:11px/1.6 Arial,sans-serif; margin-top:6px; }
@media(max-width:1050px){.photo-redesign .expansion-hero-grid{gap:30px}.photo-redesign .expansion-image-frame{height:450px}.visual-story-grid{gap:35px}.visual-story{padding:65px 0}}
@media(max-width:800px){.photo-redesign .expansion-hero-grid{grid-template-columns:1fr;padding-top:32px;padding-bottom:44px;gap:22px}.photo-redesign .expansion-image-frame{height:auto;aspect-ratio:4/3;max-height:520px}.photo-redesign .expansion-hero-figure{margin-top:10px}.visual-story-grid{grid-template-columns:1fr;gap:34px}.visual-story-figure{max-width:680px}.visual-story{padding:54px 0}.visual-region-pictures .site-shell{gap:14px}.visual-region-pictures figcaption{font-size:17px}}
@media(max-width:540px){.photo-redesign .expansion-image-frame{border-radius:30px 12px 30px 12px;padding:7px}.photo-redesign .expansion-image-frame img{border-radius:24px 7px 24px 7px}.visual-story-points li{font-size:12px}.visual-story .expansion-caution{padding:20px 17px;gap:12px}.visual-region-pictures .site-shell{grid-template-columns:1fr}.visual-region-pictures figure{display:grid;grid-template-columns:115px minmax(0,1fr);gap:16px;align-items:center}.visual-region-pictures figcaption{margin:0}.visual-story h2{font-size:35px}}
