/* Scoped copy of the approved continuation; source untouched. */
.approved-story{
  color-scheme: light;
  --paper: #fbfaf7;
  --ink: #2f2b28;
  --muted: #73675e;
  --line: #d8cec5;
  --accent: #80644f;
  font-family: Georgia, 'Times New Roman', serif;
  color: var(--ink);
  background: var(--paper);
}
.approved-story *{ box-sizing: border-box; }
.approved-story{ margin: 0; }
.approved-story a{ color: inherit; text-underline-offset: .28em; }
.approved-story a:focus-visible,.approved-story button:focus-visible{ outline: 2px solid var(--accent); outline-offset: 5px; }
.approved-story .skip{ position: fixed; top: -100px; left: 20px; z-index: 20; padding: 14px; background: white; }
.approved-story .skip:focus{ top: 10px; }
.approved-story .preview-note{ padding: 11px 20px; background: #eee8e1; color: #60534a; text-align: center; font: 12px/1.5 Arial, sans-serif; letter-spacing: .025em; }
.approved-story .preview-note span{ padding: 0 .7em; }
.approved-story .masthead{ max-width: 1220px; padding: 34px 34px 28px; margin: 0 auto; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.approved-story .brand{ font: 17px/1.3 Georgia, serif; letter-spacing: .07em; }
.approved-story .trademark{ font: 10px Arial, sans-serif; vertical-align: super; margin-left: 2px; }
.approved-story .byline{ display: block; margin-top: 9px; font: 12px/1.4 Arial, sans-serif; letter-spacing: .20em; }
.approved-story .original-link{ color: var(--muted); font: 14px/1.5 Arial, sans-serif; text-decoration: none; }
.approved-story .original-link:hover{ text-decoration: underline; }
.approved-story .original-link span{ margin-left: 8px; }
.approved-story main{ padding: 0 34px; }
.approved-story article{ max-width: 1120px; margin: 0 auto; }
.approved-story .story-heading{ max-width: 680px; margin: 48px auto 44px; }
.approved-story .eyebrow{ margin: 0 0 21px; color: var(--accent); font: 12px/1.5 Arial, sans-serif; letter-spacing: .19em; }
.approved-story h2.continuation-title{ margin: 0; font-size: clamp(54px,6vw,82px); font-weight: normal; line-height: 1.06; letter-spacing: -.052em; }
.approved-story h2.continuation-title em{ color: var(--accent); font-weight: normal; }
.approved-story .intro{ margin: 25px 0 0; font-size: 19px; line-height: 1.6; color: var(--muted); }
.approved-story .prose{ min-width: 0; font-size: 19px; line-height: 1.84; font-weight: normal; }
.approved-story .prose p{ margin: 0 0 1.4em; }
.approved-story .prose p:last-child{ margin-bottom: 0; }
.approved-story .reading{ max-width: 680px; margin: 40px auto; }
.approved-story .spread{ display: grid; grid-template-columns: minmax(0,1.14fr) minmax(0,1fr); align-items: start; gap: clamp(35px,6vw,84px); margin: 44px 0; }
.approved-story .opening{ grid-template-columns: minmax(0,1.25fr) minmax(0,.85fr); margin-top: 0; }
.approved-story .photos{ min-width: 0; }
.approved-story figure{ min-width: 0; margin: 0; }
.approved-story .photo-link{ display: block; text-decoration: none; cursor: zoom-in; }
.approved-story img{ display: block; width: 100%; height: auto; }
.approved-story figcaption,.approved-story .group-caption{ color: var(--muted); font: 13px/1.65 Arial, sans-serif; margin: 13px 0 0; letter-spacing: .015em; }
.approved-story .group-caption{ text-align: center; }
.approved-story .photo-group{ display: grid; gap: 14px; align-items: center; }
.approved-story .pair,.approved-story .grid-two{ grid-template-columns: repeat(2,minmax(0,1fr)); }
.approved-story .grid-three{ grid-template-columns: repeat(3,minmax(0,1fr)); }
.approved-story .grid-four{ grid-template-columns: repeat(4,minmax(0,1fr)); }
.approved-story .press-grid{ display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; align-items: start; }
.approved-story .press-grid figure:nth-child(3){ width: 50%; grid-column: 1/-1; justify-self: center; }
.approved-story .press-photos{ padding: 9px 0 0 24px; border-left: 1px solid var(--line); }
.approved-story .wide{ margin: 36px auto 40px; }
.approved-story .sunset{ max-width: 990px; }
.approved-story .sunset-grid{ display: grid; grid-template-columns: .79fr 1.21fr; align-items: center; gap: 15px; }
.approved-story .sunset-pair{ display: grid; gap: 15px; }
.approved-story .intimate{ align-items: center; }
.approved-story .single-photo{ max-width: 350px; justify-self: center; }
.approved-story .intimate .single-photo{ max-width: 275px; }
.approved-story .sf-goodbye{ display: grid; grid-template-columns: 1.18fr 1fr; gap: 23px; align-items: center; }
.approved-story .garage{ align-items: center; }
.approved-story .garage .photo-group{ gap: 10px; }
.approved-story .remodel-process .photo-group{ align-items: center; }
.approved-story .remodeled{ align-items: center; }
.approved-story .final-room{ display: grid; grid-template-columns: 1.36fr .8fr; gap: 16px; align-items: end; }
.approved-story .room-detail{ margin-bottom: 51px; }
.approved-story .adu-home{ align-items: center; }
.approved-story .adu-home .single-photo{ max-width: 290px; }
.approved-story .pregnancy{ align-items: center; }
.approved-story .pregnancy-gallery{ display: grid; grid-template-columns: .87fr 1fr; gap: 16px; align-items: center; }
.approved-story .pregnancy-gallery .photo-group{ gap: 10px; }
.approved-story .motherhood{ align-items: center; }
.approved-story .rebuilding{ font-size: 23px; line-height: 1.65; color: #76523f; }
.approved-story .alamo{ align-items: center; }
.approved-story .detail-pair{ margin-top: 20px; padding: 0 30px; }
.approved-story .cosmo-photos{ max-width: 900px; }
.approved-story .cosmo-grid{ display: grid; grid-template-columns: .85fr 1fr 1.2fr; gap: 24px; align-items: center; }
.approved-story .banks-copy{ font-size: 22px; line-height: 1.75; }
.approved-story .banks-photos{ background: #fff; padding: 20px; }
.approved-story .banks-photos .photo-group{ gap: 5px 16px; }
.approved-story .banks-photos .group-caption{ margin-bottom: 8px; }
.approved-story .reflection{ align-items: center; }
.approved-story .reflection .photos{ padding: 0 10px; }
.approved-story .clients-copy{ font-size: 21px; line-height: 1.78; }
.approved-story .clients-photos{ background: #fff; padding: 18px; }
.approved-story .client-last-pair{ width: 66.666%; margin: 12px auto 0; }
.approved-story .closing-features{ max-width: 730px; }
.approved-story .closing-features .photo-group{ gap: 20px; }
.approved-story .closing{ max-width: 660px; margin: 48px auto 44px; text-align: center; }
.approved-story .closing-portraits{ display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; align-items: end; }
.approved-story .closing-portrait{ margin: 0; }
.approved-story .closing-portrait img{ width: 100%; height: auto; }
.approved-story .signoff{ margin: 30px 0 0; color: var(--accent); }
.approved-story .signoff span{ display: block; color: #4b3325; font: 700 clamp(30px,4vw,42px)/1.05 Georgia,serif; letter-spacing: .015em; }
.approved-story .signature-image{ display: block; width: min(320px,78%); height: auto; margin: 2px auto 0; }
.approved-story footer{ max-width: 1152px; padding: 25px 0 36px; margin: 0 auto; border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 15px; color: var(--muted); font: 12px/1.6 Arial,sans-serif; letter-spacing: .035em; }
.approved-story .lightbox{ border: 0; padding: 55px 24px 20px; width: min(1100px,96vw); max-height: 96dvh; background: var(--paper); color: var(--ink); }
.approved-story .lightbox::backdrop{ background: rgb(23 19 16 / 88%); }
.approved-story .lightbox img{ width: auto; max-width: 100%; height: auto; max-height: 78dvh; object-fit: contain; margin: 0 auto; }
.approved-story .lightbox-caption{ font: 13px/1.5 Arial,sans-serif; color: var(--muted); text-align: center; margin: 15px 0 0; }
.approved-story .close-photo{ position: absolute; top: 15px; right: 20px; border: none; background: transparent; color: var(--ink); font: 15px/1.5 Arial,sans-serif; cursor: pointer; min-height: 32px; }
.approved-story .close-photo span{ font-size: 24px; vertical-align: middle; margin-left: 8px; }
.approved-story body.photo-open{ overflow: hidden; }
@media (min-width: 1500px){.approved-story .prose{ font-size: 20px; }
 }
@media (max-width: 850px){.approved-story .masthead{ padding: 25px 25px; }
.approved-story .brand{ font-size: 15px; }
.approved-story main{ padding: 0 25px; }
.approved-story .spread{ gap: 34px; }
.approved-story .prose{ font-size: 18px; line-height: 1.8; }
.approved-story .press-photos{ padding-left: 15px; }
.approved-story footer{ margin: 0 25px; }

}
@media (max-width: 680px){.approved-story .preview-note{ font-size: 12px; padding: 10px 16px; }
.approved-story .preview-note span{ padding: 0 .25em; }
.approved-story .masthead{ padding: 24px 21px; align-items: start; }
.approved-story .brand{ max-width: 220px; font-size: 14px; line-height: 1.45; }
.approved-story .byline{ font-size: 12px; margin-top: 5px; }
.approved-story .original-link{ max-width: 108px; font-size: 14px; line-height: 1.5; text-align: right; }
.approved-story .original-link span{ margin-left: 0; }
.approved-story main{ padding: 0 22px; }
.approved-story .story-heading{ margin: 32px 0 30px; }
.approved-story h2.continuation-title{ font-size: 59px; }
.approved-story .eyebrow{ margin-bottom: 19px; }
.approved-story .intro{ font-size: 17px; margin-top: 20px; }
.approved-story .prose{ font-size: 18px; line-height: 1.82; }
.approved-story .prose p{ margin-bottom: 1.25em; }
.approved-story .spread,.approved-story .opening{ grid-template-columns: 1fr; gap: 27px; margin: 30px 0; }
.approved-story .opening{ margin-top: 0; }
.approved-story .reading{ margin: 28px 0; }
.approved-story .press-photos{ padding: 0; border: 0; }
.approved-story .press-grid{ grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; align-items: center; }
.approved-story .press-grid figure:nth-child(3){ width: auto; grid-column: auto; }
.approved-story .wide{ margin: 28px 0 30px; }
.approved-story .sunset-grid{ grid-template-columns: .85fr 1.15fr; gap: 8px; }
.approved-story .sunset-pair{ gap: 8px; }
.approved-story .single-photo{ max-width: 285px; }
.approved-story .intimate .single-photo{ max-width: 265px; }
.approved-story .sf-goodbye{ grid-template-columns: 1fr; gap: 22px; }
.approved-story .sf-goodbye .photo-group{ padding: 0 22px; }
.approved-story .photo-group{ gap: 12px; }
.approved-story .grid-four{ grid-template-columns: repeat(2,minmax(0,1fr)); }
.approved-story .remodel-process .photo-group{ gap: 14px; }
.approved-story .final-room{ grid-template-columns: 1.2fr .8fr; }
.approved-story .room-detail{ margin-bottom: 48px; }
.approved-story .pregnancy-gallery{ grid-template-columns: .87fr 1fr; gap: 14px; }
.approved-story .pregnancy-gallery .group-caption{ font-size: 12px; }
.approved-story .rebuilding,.approved-story .banks-copy,.approved-story .clients-copy{ font-size: 20px; line-height: 1.76; }
.approved-story .detail-pair{ padding: 0 15px; }
.approved-story .cosmo-grid{ gap: 13px; grid-template-columns: 1fr 1fr; }
.approved-story .cosmo-grid figure:last-child{ grid-column: 1/-1; max-width: 245px; justify-self: center; }
.approved-story .banks-photos{ margin-left: -8px; margin-right: -8px; padding: 10px; }
.approved-story .banks-photos .photo-group{ grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2px 10px; }
.approved-story .reflection .photos{ padding: 0; }
.approved-story .clients-photos{ padding: 8px; margin-left: -8px; margin-right: -8px; }
.approved-story .clients-photos .grid-three{ gap: 7px; }
.approved-story .client-last-pair{ width: 76%; gap: 8px; }
.approved-story .closing-features .photo-group{ gap: 10px; }
.approved-story .closing{ margin: 48px 0 52px; }
.approved-story .closing-portraits{ gap: 10px; }
.approved-story .signature-image{ width: min(280px,76%); }
.approved-story footer{ margin: 0 22px; padding: 23px 0; flex-direction: column; gap: 5px; font-size: 12px; }
.approved-story .lightbox{ padding: 55px 12px 16px; }

}
@media (prefers-reduced-motion: no-preference){.approved-story .photo-link{ transition: opacity .18s ease; }
.approved-story .photo-link:hover{ opacity: .88; }
 }
@media print{.approved-story .preview-note,.approved-story .original-link,.approved-story .lightbox{ display: none; }
.approved-story .spread{ break-inside: avoid; }
.approved-story figure{ break-inside: avoid; }

}

