.photo-hero{background-image:url("/assets/images/daniel-island-marshfront.svg")}
.photo-cottage{background-image:url("/assets/images/daniel-island-cottage.svg")}
.photo-townhomes{background-image:url("/assets/images/daniel-island-townhomes.svg")}
.photo-interior{background-image:url("/assets/images/daniel-island-interior.svg")}
.photo-planning{background-image:url("/assets/images/daniel-island-planning.svg")}
.site-photo{display:block;width:100%;background-position:center;background-size:cover;background-repeat:no-repeat}
.spectrum-feature .site-photo{aspect-ratio:16/9}
.spectrum-thumbs .site-photo,.campaign-photo-pair .site-photo{aspect-ratio:16/9}
.campaign-photo .site-photo{aspect-ratio:4/3}
/* Shared editorial image system for Daniel Island-inspired imagery */
.home-spectrum{background:#f2ece2;padding:88px 0;border-top:1px solid rgba(24,33,38,.08);border-bottom:1px solid rgba(24,33,38,.08)}
.spectrum-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.spectrum-feature,.spectrum-thumbs figure,.campaign-photo,.campaign-photo-pair figure{margin:0}
.spectrum-feature{background:#182126;box-shadow:0 26px 60px rgba(16,22,25,.13)}
.spectrum-feature img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.spectrum-feature figcaption{padding:14px 16px;color:#cdd3cf;font-size:9px;line-height:1.5;letter-spacing:.06em;text-transform:uppercase}
.spectrum-copy h2,.campaign-photo-copy h2,.campaign-photo-head h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(38px,4.7vw,58px);line-height:1;letter-spacing:-.04em;margin:14px 0 20px}
.spectrum-copy>p,.campaign-photo-copy>p,.campaign-photo-head>p{color:#626a66;max-width:680px}
.spectrum-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
.spectrum-thumbs figure{background:#fcfaf6;border:1px solid rgba(24,33,38,.12)}
.spectrum-thumbs img{width:100%;aspect-ratio:16/9;display:block;object-fit:cover}
.spectrum-thumbs figcaption{padding:11px 12px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#525b56}
.visual-note{font-size:9px!important;color:#838b86!important;letter-spacing:.03em;margin-top:12px!important}
.campaign-photo-section{padding:72px 0;background:#f4efe7;border-bottom:1px solid rgba(24,33,38,.08)}
.campaign-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.campaign-photo-grid.reverse .campaign-photo{order:2}
.campaign-photo-grid.reverse .campaign-photo-copy{order:1}
.campaign-photo{box-shadow:0 24px 56px rgba(16,22,25,.12);background:#182126;overflow:hidden}
.campaign-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.campaign-photo-copy .eyebrow,.campaign-photo-head .eyebrow{margin-bottom:6px}
.campaign-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
.campaign-photo-pair figure{background:#fcfaf6;border:1px solid rgba(24,33,38,.12);overflow:hidden}
.campaign-photo-pair img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.campaign-photo-pair figcaption{padding:11px 13px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#525b56}
@media(max-width:850px){
  .home-spectrum{padding:64px 0}
  .spectrum-grid,.campaign-photo-grid{grid-template-columns:1fr;gap:34px}
  .campaign-photo-grid.reverse .campaign-photo,.campaign-photo-grid.reverse .campaign-photo-copy{order:initial}
  .campaign-photo-section{padding:58px 0}
}
@media(max-width:560px){
  .home-spectrum{padding:50px 0}
  .spectrum-thumbs,.campaign-photo-pair{grid-template-columns:1fr}
  .campaign-photo-section{padding:48px 0}
  .spectrum-copy h2,.campaign-photo-copy h2,.campaign-photo-head h2{font-size:38px}
}
