/* SIMPLE ONE-PAGE LAYOUT. Main palette is in editorial-theme.css. */
.site-header {position:relative;}
.header-inner {min-height:78px;gap:24px;}
.brand {font-size:20px;}
.brand span {font-size:10px;letter-spacing:.13em;font-weight:600;vertical-align:middle;}
.nav {display:flex;align-items:center;gap:25px;}
.nav a {font-size:11px;white-space:nowrap;}
.mobile-nav {display:none;}
.menu-toggle {display:none;}
.home-intro {padding-top:88px;padding-bottom:70px;}
.home-intro h1 {font-size:clamp(64px,10vw,152px);line-height:.95;letter-spacing:-.085em;margin:24px 0 25px;}
.home-intro>p:not(.eyebrow) {max-width:660px;color:var(--muted);font-size:16px;line-height:1.7;}
.home-intro .home-location {font-size:11px!important;text-transform:uppercase;letter-spacing:.12em;margin-top:30px;}
.gallery-section {border-top:1px solid var(--line);padding:42px 0 100px;}
.gallery-heading {display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:25px;}
.gallery-heading h2 {font-family:'DM Sans',Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;margin:0;}
.gallery-heading span {font-size:11px;color:var(--muted);}
.portfolio-gallery {columns:2;column-gap:19px;}
.gallery-item {break-inside:avoid;margin:0 0 29px;}
.gallery-item img {height:auto;width:100%;object-fit:contain;background:#eeede8;border-radius:2px;}
.gallery-item figcaption {display:flex;justify-content:space-between;gap:14px;margin-top:10px;color:var(--muted);font-size:10px;line-height:1.6;}
.gallery-item figcaption span:first-child {font-weight:700;color:var(--ink);min-width:105px;}
.gallery-item figcaption span:last-child {max-width:62%;text-align:right;}
.gallery-disclaimer {color:var(--muted);font-size:11px;margin-top:16px;}
.about-strip {border-top:1px solid var(--line);padding:75px 0 85px;}
.about-strip-inner {display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start;}
.about-strip h2 {font-size:clamp(40px,5vw,70px);letter-spacing:-.06em;margin-top:15px;}
.about-strip-inner>p {font-size:15px;color:var(--muted);max-width:460px;}
.sample-writing {font-size:11px!important;margin-top:11px!important;}
@media (max-width:900px) {
  .nav {gap:14px;}
  .nav a {font-size:10px;}
  .brand span {display:none;}
}
@media (max-width:700px) {
  .header-inner {min-height:68px;}
  .nav {display:none;}
  .menu-toggle {display:block;border:1px solid var(--line);background:transparent;border-radius:3px;padding:9px 11px;}
  .mobile-nav {display:none;position:absolute;top:68px;left:0;right:0;z-index:30;background:var(--paper);border-bottom:1px solid var(--line);padding:20px 22px;flex-direction:column;gap:20px;}
  .mobile-nav.open {display:flex;}
  .mobile-nav a {font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;}
  .home-intro {padding-top:65px;padding-bottom:56px;}
  .home-intro h1 {font-size:clamp(58px,14vw,90px);}
  .portfolio-gallery {columns:1;}
  .gallery-item {margin-bottom:35px;}
  .gallery-item figcaption {gap:8px;}
  .about-strip-inner {grid-template-columns:1fr;gap:10px;}
  .gallery-section {padding-bottom:70px;}
}
@media (max-width:390px) {.gallery-item figcaption {display:block;}.gallery-item figcaption span {display:block;max-width:100%!important;text-align:left!important;margin-bottom:3px;}}

/* PROJECT SECTIONS: each photo story stays together on the homepage. */
.portfolio-projects {display:flex; flex-direction:column; gap:84px;}
.portfolio-project {scroll-margin-top:28px;}
.project-heading {display:grid;grid-template-columns:105px minmax(0,1fr) 112px;gap:24px;align-items:start;margin-bottom:26px;padding-top:26px;border-top:1px solid var(--line);}
.project-number,.project-photo-count {font-size:10px;line-height:1.6;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700;}
.project-photo-count {text-align:right;}
.project-copy .eyebrow {margin:0 0 12px;}
.project-copy h3 {font-size:clamp(34px,5.5vw,70px);line-height:1.04;letter-spacing:-.06em;margin:0 0 14px;}
.project-dek {font-size:14px;line-height:1.65;color:var(--muted);max-width:560px;margin:0;}
.project-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 19px;align-items:start;}
.project-photo {min-width:0;margin:0;}
.project-photo img {display:block;width:100%;height:auto;object-fit:contain;background:#eeede8;border-radius:2px;}
.project-photo figcaption {display:flex;justify-content:space-between;gap:15px;margin-top:10px;font-size:10px;line-height:1.6;color:var(--muted);}
.project-photo figcaption span:first-child {white-space:nowrap;color:var(--ink);font-weight:700;}
.project-photo figcaption span:last-child {max-width:80%;text-align:right;}
@media (max-width:700px) {
 .portfolio-projects {gap:64px;}
 .project-heading {grid-template-columns:1fr auto;gap:10px 16px;margin-bottom:22px;}
 .project-number {grid-column:1;}
 .project-copy {grid-column:1 / -1;grid-row:2;}
 .project-photo-count {grid-column:2;grid-row:1;}
 .project-gallery {grid-template-columns:1fr;gap:25px;}
 .project-copy h3 {font-size:clamp(38px,10vw,58px);}
}
/* Preserve the original dimensions of project photos */

.project-gallery .project-photo {
  height: auto;
  aspect-ratio: auto;
  overflow: visible;
}

.project-gallery .project-photo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
}


/* Photo project write-ups */

.project-photo-column {
  min-width: 0;
}

.project-photo-column .project-photo {
  margin: 0;
}

.project-writeup {
  margin-top: 36px;
  max-width: 520px;
}

.project-writeup p {
  font-size: 14px;
  line-height: 1.85;
  color: var(--ink);
  margin: 0 0 20px;
}

@media (max-width: 700px) {
  .project-writeup {
    margin-top: 24px;
  }
}


/* A Sailing Soul write-up */

.project-photo-column {
  min-width: 0;
}

.project-writeup {
  display: block;
  margin-top: 32px;
  max-width: 100%;
}

.project-writeup p {
  font-size: 14px;
  line-height: 1.85;
  color: var(--ink);
  margin: 0 0 20px;
}