/* Collection adaptation of the ORIGINAL page-manzanita-homes.php:
   centered Bodoni heading, full-width featured card, permanent photo captions,
   navy/tan details and a two-column project grid. */
.collection-page {
  padding-top: 0;
  background: #fff;
  color: #28313b;
}
.collection-page main { overflow: clip; }
.collection-page main:focus { outline: none; }
.collection-page h1,
.collection-page h2,
.collection-page h3 {
  font-family: "Bodoni Moda", "Didot", Georgia, serif;
  font-weight: 400;
  color: #01173E;
}
.collection-page h1 em,
.collection-page h2 em,
.collection-page h3 em {
  color: #93733f;
  font-weight: 400;
}
.collection-page .collection-eyebrow {
  font-size: 13px;
  line-height: 1.6;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #65543a;
  margin: 0 0 12px;
}
.collection-header {
  padding: 154px 24px 44px;
  text-align: center;
  background: #fff;
}
:is(.collection-header h1, .collection-header h2) {
  font-size: clamp(38px, 4.3vw, 62px);
  line-height: 1.15;
  margin: 0 0 20px;
}
.collection-intro {
  font-size: 17px;
  line-height: 1.7;
  color: #4b535c;
}
.collection-gold-line {
  width: 56px;
  height: 2px;
  background: #CAB186;
  margin: 28px auto 0;
}
.collection-shell {
  width: calc(100% - 96px);
  max-width: 1280px;
  margin: 0 auto;
}
.collection-jump-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 34px;
  padding: 0 16px 26px;
  margin-bottom: 28px;
  border-bottom: 1px solid #e6ddcf;
}
.collection-jump-links a {
  font-size: 14px;
  line-height: 1.6;
  font-weight: 500;
  color: #01173E;
  text-decoration: none;
  padding: 8px 0;
  border-bottom: 1px solid transparent;
}
.collection-jump-links a:hover { border-bottom-color: #93733f; }
.collection-page a:focus-visible {
  outline: 3px solid #01173E;
  outline-offset: 5px;
}
.collection-feature,
.collection-more,
.collection-transformation,
.collection-story { scroll-margin-top: 126px; }
.collection-featured-card {
  display: block;
  height: clamp(380px, 40vw, 550px);
  position: relative;
  border: 1px solid #d4c1a2;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
}
.collection-featured-card > img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 56%;
}
.collection-featured-card::after {
  content: "";
  position: absolute;
  inset: 35% 0 0;
  background: linear-gradient(transparent, rgba(1,23,62,.68));
  pointer-events: none;
}
.collection-featured-text {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 32px 40px;
  color: #fff;
}
.collection-card-kicker {
  font-size: 14px;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 1.5px;
  margin-bottom: 8px;
}
.collection-featured-name {
  font-family: "Bodoni Moda", "Didot", Georgia, serif;
  font-size: clamp(34px, 4vw, 49px);
  line-height: 1.2;
}
.collection-featured-name em { color: #e6d3ae; }
.collection-card-action {
  position: absolute;
  bottom: 39px;
  right: 40px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  display: flex;
  align-items: center;
  gap: 20px;
}
.collection-card-action span { font-size: 25px; font-weight: 400; }
.collection-project-intro {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 64px;
  padding: 46px 0 38px;
}
.collection-project-intro h2,
.collection-section-heading h2 {
  font-size: clamp(30px, 3vw, 43px);
  line-height: 1.2;
  max-width: 520px;
}
.collection-project-copy p,
.collection-work-card-copy p,
.collection-dry-creek-card p,
.collection-bio p {
  font-size: 16px;
  line-height: 1.85;
  color: #37414b;
  font-weight: 400;
}
.collection-project-copy p + p { margin-top: 16px; }
.collection-photo-grid,
.collection-work-grid,
.collection-comparison-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px;
}
.collection-photo,
.collection-comparison-photo {
  margin: 0;
  min-width: 0;
}
.collection-photo > a,
.collection-comparison-photo > a,
.collection-construction-image {
  display: block;
  position: relative;
  overflow: hidden;
  border: 1px solid #e5ded3;
  color: #01173E;
}
.collection-photo img {
  display: block;
  width: 100%;
  height: 330px;
  object-fit: cover;
}
.collection-enlarge {
  position: absolute;
  right: 15px;
  bottom: 15px;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 1px solid #d2bb94;
  color: #01173E;
  font-size: 24px;
  line-height: 1;
}
.collection-photo figcaption {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6px 16px;
  padding: 15px 0 0;
  font-size: 16px;
  color: #01173E;
  font-weight: 500;
}
.collection-photo figcaption span {
  font-size: 14px;
  font-weight: 400;
  color: #4b535c;
}
.collection-more {
  margin-top: 74px;
  padding-top: 54px;
  border-top: 1px solid #e6ddcf;
}
.collection-section-heading { margin-bottom: 30px; }
.collection-work-card { border: 1px solid #e5ded3; }
.collection-construction-image { border: 0; }
.collection-construction-image img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  display: block;
}
.collection-work-card-copy { padding: 28px 30px 32px; }
.collection-work-card-copy h3,
.collection-dry-creek-card h3 {
  font-size: 32px;
  line-height: 1.25;
  margin: 0 0 14px;
}
.collection-work-card-copy .collection-eyebrow,
.collection-dry-creek-card .collection-eyebrow {
  font-size: 13px;
  line-height: 1.6;
  color: #65543a;
}
.collection-dry-creek-card {
  padding: clamp(32px, 4.5vw, 64px);
  background: #f7f5f0;
  border: 1px solid #e5ded3;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.collection-dry-creek-rule {
  width: 52px;
  height: 2px;
  background: #CAB186;
  margin: 0 0 34px;
}
.collection-dry-creek-card p + p { margin-top: 18px; }
.collection-transformation {
  margin-top: 72px;
  padding-top: 12px;
  border-top: 1px solid #e6ddcf;
  padding-bottom: 78px;
}
.collection-comparison-photo img {
  width: 100%;
  height: 470px;
  object-fit: cover;
  display: block;
}
.collection-comparison-photo:first-child img { object-position: center 55%; }
.collection-comparison-photo:last-child img { object-position: center 45%; }
.collection-comparison-photo figcaption {
  display: flex;
  align-items: baseline;
  gap: 15px;
  padding: 18px 0 0;
  font-size: 17px;
  font-weight: 500;
  color: #01173E;
}
.collection-comparison-photo figcaption span {
  font-family: "Bodoni Moda", "Didot", Georgia, serif;
  font-size: 22px;
  color: #93733f;
}
.collection-story {
  padding: 82px 48px;
  border-top: 1px solid #e5ded3;
  border-bottom: 1px solid #e5ded3;
  background: #f7f5f0;
}
.collection-story-inner {
  max-width: 1176px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: .8fr 1.4fr;
  gap: 80px;
  align-items: start;
}
.collection-story-heading h2 {
  font-size: clamp(34px, 3.5vw, 48px);
  line-height: 1.2;
  margin: 14px 0 22px;
}
.collection-story-heading h2 em { display: block; }
.collection-role {
  font-size: 16px;
  line-height: 1.8;
  color: #37414b;
}
.collection-story-rule {
  width: 56px;
  height: 2px;
  background: #CAB186;
  margin: 32px 0;
}
.collection-story-logo {
  width: 94px;
  height: 94px;
  object-fit: contain;
}
.collection-bio p + p { margin-top: 22px; }
.collection-cta {
  text-align: center;
  padding: 72px 24px 80px;
  background: #fff;
}
.collection-cta h2 {
  font-size: clamp(32px, 3.5vw, 46px);
  line-height: 1.2;
  margin: 0 0 30px;
}
.collection-cta .btn-gold {
  background: #CAB186;
  border: 1px solid #b79c6e;
  color: #01173E;
  font-size: 14px;
  line-height: 1.6;
  padding: 16px 34px;
  transform: none;
}
@media (max-width: 1024px) {
  .collection-shell { width: calc(100% - 64px); }
  .collection-project-intro { gap: 38px; }
  .collection-story-inner { gap: 44px; grid-template-columns: .8fr 1.3fr; }
  .collection-work-card-copy { padding: 24px; }
  .collection-dry-creek-card { padding: 32px; }
  .collection-photo img { height: 280px; }
  .collection-comparison-photo img { height: 430px; }
}
@media (max-width: 760px) {
  .collection-header { padding: 126px 22px 34px; }
  :is(.collection-header h1, .collection-header h2) { font-size: 40px; }
  .collection-intro { font-size: 16px; max-width: 330px; margin: 0 auto; }
  .collection-shell { width: calc(100% - 40px); }
  .collection-jump-links { gap: 4px 20px; padding: 0 0 20px; margin-bottom: 22px; }
  .collection-jump-links a { font-size: 13px; padding: 8px 0; }
  .collection-featured-card { height: 370px; }
  .collection-featured-card > img { object-position: 55% center; }
  .collection-featured-text { padding: 25px; }
  .collection-featured-name { font-size: 38px; }
  .collection-card-kicker { font-size: 13px; letter-spacing: 1px; }
  .collection-card-action { position: static; margin-top: 10px; gap: 12px; }
  .collection-project-intro { grid-template-columns: 1fr; gap: 22px; padding: 34px 0 28px; }
  .collection-project-intro h2,
  .collection-section-heading h2 { font-size: 33px; }
  .collection-photo-grid { gap: 18px; }
  .collection-photo img { height: 220px; }
  .collection-photo figcaption { font-size: 15px; }
  .collection-photo figcaption span { font-size: 13px; }
  .collection-work-grid { grid-template-columns: 1fr; gap: 22px; }
  .collection-more { margin-top: 45px; padding-top: 36px; }
  .collection-dry-creek-card { padding: 34px 26px; }
  .collection-dry-creek-rule { margin-bottom: 24px; }
  .collection-construction-image img { height: 280px; }
  .collection-transformation { margin-top: 46px; padding-top: 0; padding-bottom: 48px; }
  .collection-comparison-grid { gap: 18px; }
  .collection-comparison-photo img { height: 330px; }
  .collection-comparison-photo figcaption { font-size: 15px; gap: 8px; }
  .collection-story { padding: 48px 24px; }
  .collection-story-inner { grid-template-columns: 1fr; gap: 30px; }
  .collection-story-heading h2 { font-size: 40px; }
  .collection-story-heading h2 em { display: inline; }
  .collection-story-rule { margin: 24px 0 0; }
  .collection-story-logo { display: none; }
  .collection-cta { padding: 48px 24px 56px; }
}
@media (max-width: 480px) {
  .collection-header { padding: 116px 20px 28px; }
  :is(.collection-header h1, .collection-header h2) { font-size: 36px; max-width: 330px; margin: 0 auto 17px; }
  .collection-header .collection-eyebrow { font-size: 12px; letter-spacing: 1.5px; }
  .collection-shell { width: calc(100% - 32px); }
  .collection-jump-links { display: grid; grid-template-columns: 1fr 1fr; gap: 0 10px; text-align: center; }
  .collection-featured-card { height: 340px; }
  .collection-featured-text { padding: 22px; }
  .collection-card-kicker { font-size: 12px; }
  .collection-featured-name { font-size: 34px; }
  .collection-photo-grid,
  .collection-comparison-grid { grid-template-columns: 1fr; gap: 25px; }
  .collection-photo img { height: 260px; }
  .collection-photo figcaption span { font-size: 14px; }
  .collection-construction-image img { height: 240px; }
  .collection-comparison-photo img { height: 420px; }
  .collection-comparison-photo figcaption { font-size: 16px; }
  .collection-enlarge { width: 36px; height: 36px; font-size: 22px; }
  .collection-story { padding: 42px 20px; }
  .collection-story-heading h2 { font-size: 38px; }
  .collection-bio p { line-height: 1.8; }
}
@media (prefers-reduced-motion: reduce) {
  .collection-page { scroll-behavior: auto; }
}

/* Revision 3: genuine Adams photography and Christopher’s supplied portrait. */
.collection-film-link{display:inline-flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:10px;padding:15px 20px;border:1px solid #b49b70;color:#01173e;text-decoration:none;font-size:14px;font-weight:500;line-height:1.5}
.collection-film-link span{font-size:12px;font-weight:400;color:#59616b;letter-spacing:.02em}
.collection-film-link:hover,.collection-film-link:focus-visible{background:#f5f0e7;outline:2px solid #01173e;outline-offset:3px}
.collection-portrait{margin:0 0 30px;padding:10px;border:1px solid #d4c4a8;background:white;max-width:360px}
.collection-portrait img{display:block;width:100%;height:auto;filter:none!important}
.collection-page main img[data-photo-tone],#gallery-dialog img[data-photo-tone]{filter:none}
@media(max-width:760px){.collection-portrait{max-width:350px;margin-bottom:25px}}

/* Revision 6: an unpaired final photograph closes the two-column gallery. */
@media (min-width: 481px) {
  .collection-photo-grid > .collection-photo:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }
  .collection-photo-grid > .collection-photo:last-child:nth-child(odd) img {
    height: clamp(280px, 40vw, 480px);
    object-position: center 20%;
  }
}

/* Revision 8: add the supplied dry-creek photograph to its original work card. */
.collection-dry-creek-card{scroll-margin-top:126px}
.collection-dry-creek-original-image{display:block;position:relative;flex:none;width:100%;margin:0 0 24px}
.collection-page .collection-dry-creek-card img[src$="dry-creek-exterior-bluegrey-roof-rev21.png"]{display:block;width:100%;height:auto;object-fit:contain;filter:none!important}


/* Revision22: the Adams Street film keeps its native portrait proportions. */
.collection-page .collection-film { display:grid; grid-template-columns:minmax(0,360px) minmax(0,1fr); align-items:center; gap:clamp(32px,4vw,64px); width:100%; max-width:1000px; margin:44px auto 0; padding:40px; border:1px solid #d2c3aa; background:#fbfaf7; box-sizing:border-box; }
.collection-page .collection-film-stage { position:relative; width:100%; max-width:360px; aspect-ratio:9/16; justify-self:center; overflow:hidden; background:#01173e; }
.collection-page .collection-film-poster { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center; filter:none; }
.collection-page .collection-film-play { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; width:100%; border:0; padding:20px; background:#01173e18; color:#01173e; cursor:pointer; }
.collection-page .collection-film-play[hidden] { display:none; }
.collection-page .collection-film-play-disc { display:grid; place-items:center; width:82px; height:82px; border:1px solid #01173e; border-radius:50%; background:#cab186; }
.collection-page .collection-film-play-disc svg { display:block; margin-left:3px; }
.collection-page .collection-film-play-label { padding:7px 13px; background:#01173e; color:#fff; font:500 13px/1.6 var(--sans); letter-spacing:.07em; }
.collection-page .collection-film-play:hover .collection-film-play-disc { background:#d8c49e; }
.collection-page .collection-film-play:focus-visible { outline:3px solid #cab186; outline-offset:-7px; }
.collection-page .collection-film-player { position:absolute; inset:0; display:block; width:100%; height:100%; border:0; }
.collection-page .collection-film-caption { display:block; min-width:0; width:100%; max-width:42ch; padding:0; margin:0; border:0; }
.collection-page .collection-film-caption .collection-film-eyebrow { margin:0 0 18px; color:#65502f; font:500 13px/1.65 var(--sans); letter-spacing:.09em; }
.collection-page .collection-film-caption h3 { margin:0; color:#01173e; font:400 clamp(38px,3.5vw,48px)/1.15 var(--serif); letter-spacing:-.025em; }
.collection-page .collection-film-caption .collection-film-description { margin:24px 0 26px; max-width:34ch; color:#354153; font:400 16px/1.85 var(--sans); }
.collection-page .collection-film-caption .collection-film-duration { margin:0 0 14px; color:#65502f; font:400 16px/1.8 var(--sans); }
.collection-page .collection-film-caption .collection-film-link { display:inline-flex; flex-direction:row; align-items:center; flex-wrap:wrap; gap:12px; max-width:100%; margin:0; padding:5px 0; border:0; border-bottom:1px solid #b49b70; background:transparent; }
.collection-page .collection-film-caption .collection-film-link:hover { background:transparent; text-decoration:underline; text-underline-offset:5px; }
.collection-page .collection-film-nojs { margin:16px 0 0; font:400 16px/1.8 var(--sans); color:#354153; }
@media(max-width:1000px) {
 .collection-page .collection-film { grid-template-columns:minmax(0,300px) minmax(0,1fr); padding:32px; gap:32px; }
 .collection-page .collection-film-caption h3 { font-size:38px; }
}
@media(max-width:760px) {
 .collection-page .collection-film { grid-template-columns:minmax(0,1fr); max-width:520px; padding:24px; gap:28px; }
 .collection-page .collection-film-stage { max-width:340px; }
 .collection-page .collection-film-caption { max-width:340px; margin-inline:auto; }
}
@media(max-width:600px) {
 .collection-page .collection-film { margin-bottom:34px; padding:18px; }
 .collection-page .collection-film-play-disc { width:64px; height:64px; }
 .collection-page .collection-film-caption h3 { font-size:36px; }
 .collection-page .collection-film-caption .collection-film-description { margin:20px 0; }
}

.collection-page .collection-film-caption h3 em { color:#846a40; font-weight:400; }

/* Revision31: confirmed project hierarchy and introduction before the Collection. */
.collection-page .collection-story-first { padding-top:176px; }
.collection-story-heading h1 { margin:14px 0 22px; color:#01173e; font:400 clamp(35px,3.2vw,46px)/1.2 var(--serif); letter-spacing:-.02em; }
.collection-page .collection-project-name { margin:0 0 12px; font:400 clamp(30px,3vw,43px)/1.2 var(--serif); color:#01173e; }
.collection-work-grid .collection-project-name { font-size:32px; }
.collection-page .collection-project-scope { margin:0 0 8px; color:#65543a; font:500 16px/1.65 var(--sans); }
.collection-page .collection-project-timeline { margin:0 0 24px; color:#465264; font:400 14px/1.7 var(--sans); font-size:14px!important; }
.collection-work-grid .collection-project-scope { min-height:0; }
.collection-work-grid .collection-project-scope + .collection-project-timeline { margin-top:0; }
@media(max-width:1000px) { .collection-page .collection-story-first { padding-top:148px; } }
@media(max-width:760px) { .collection-page .collection-story-first { padding-top:128px; } .collection-story-heading h1 { font-size:clamp(32px,6vw,40px); } .collection-page .collection-project-name { font-size:33px; } .collection-work-grid .collection-project-scope { min-height:0; } }
@media(max-width:480px) { .collection-story-heading h1 { font-size:32px; } .collection-page .collection-project-name { font-size:30px; } }
