@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/CormorantGaramond-400-italic.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/CormorantGaramond-300.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/CormorantGaramond-400.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/CormorantGaramond-500.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/Manrope-400.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/Manrope-500.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/Manrope-600.woff2') format('woff2')}
/* ---- Calm, refined restyle (2026-09-26) ---- */
:root { --serif:'Cormorant Garamond',Georgia,serif; --sans:'Manrope',Arial,sans-serif; }

/* Typography */
h1,h2 { font-family:var(--serif);font-weight:400;letter-spacing:-.015em;line-height:1.08 }
.wordmark { font-family:var(--serif);font-weight:500;letter-spacing:.26em }
.wordmark span { font-family:var(--sans);font-weight:500;letter-spacing:.3em }
.header nav { font-family:var(--sans);font-weight:500 }
.eyebrow { font-family:var(--sans);font-weight:500;letter-spacing:.22em }
.collection-heading h3 { font-family:var(--serif);font-weight:400;letter-spacing:0 }
.collection-heading>span { font-family:var(--sans) }
.collection-nav { font-family:var(--sans);font-weight:500 }
.project-caption { font-family:var(--serif);font-weight:500;font-size:22px;letter-spacing:.06em }
.project-kind { font-family:var(--sans);font-weight:400;letter-spacing:.04em }
.project-note { font-family:var(--serif);font-style:italic;font-weight:400;font-size:18px }
.project-page-summary { font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.55 }
.project-narrative,.section-prose { line-height:1.85 }
.section-prose { font-family:var(--sans);font-weight:400;font-size:15px;color:#cdcabf }
.project-narrative { font-family:var(--sans);font-weight:400;font-size:15px;color:#cdcabf }
.materials { font-family:var(--sans);font-weight:400 }
.materials strong { font-family:var(--serif);font-weight:500;font-size:18px;letter-spacing:.04em }
.project-page-sections h2 { font-family:var(--serif);font-weight:500;letter-spacing:0 }
.project-page-copy .project-narrative strong { font-family:var(--serif);font-weight:500;font-size:18px;letter-spacing:.04em }
.service-grid h3,.process-grid h3 { font-family:var(--serif);font-weight:500 }
.contact h2 { font-family:var(--serif);font-weight:400 }
.contact-button { font-family:var(--sans);font-weight:500;letter-spacing:.06em }
.image-size-link { font-family:var(--sans);font-weight:500;letter-spacing:.06em }
.disclosure { font-family:var(--sans) }
footer { font-family:var(--sans) }
.text-link { font-family:var(--sans);font-weight:500 }

/* Hero */
h1 { margin:34px 0 28px;font-size:clamp(60px,8vw,120px) }

/* Rhythm & spacing */
.collection { margin-bottom:110px }
.collection-heading { padding:30px 0 }
.projects { gap:56px 44px }
.project-caption { margin-top:20px }
.project-note { margin-top:12px }
.project-page { max-width:1080px }
.project-page-copy { padding:56px 0 }
.project-page h1 { margin:24px 0 30px;font-weight:400 }
.project-lead-image { margin:36px 0 44px }
.detail-images { gap:36px;padding:0 3% 4% }
.project-page-sections { gap:48px 40px;margin-top:48px }
.project-page-sections section { padding-top:28px }
.image-size-link { padding:14px 4px }
.hero-bottom { padding:26px 0 }
.header { padding:26px 4% }

@media (max-width:900px) {
  .collection { margin-bottom:80px }
  .projects { gap:44px }
  .detail-images { gap:24px }
  h1 { font-size:clamp(52px,12vw,84px) }
  .project-page-copy { padding:40px 0 }
}

/* Footer note */
footer { flex-wrap:wrap }
.footer-note { flex-basis:100%;margin-top:18px;font-size:12.5px;letter-spacing:.06em;color:#cdcabf;opacity:.75 }

/* Contact form */
.contact-form { display:flex;flex-direction:column;gap:22px;max-width:560px;margin:44px auto 0;text-align:left }
.contact-form label { display:flex;flex-direction:column;gap:8px;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#cdcabf }
.contact-form input,.contact-form textarea { background:rgba(255,255,255,.045);border:1px solid rgba(205,202,191,.28);border-radius:2px;padding:14px 16px;color:#efece4;font-family:var(--sans);font-size:15px;font-weight:300 }
.contact-form input:focus,.contact-form textarea:focus { outline:none;border-color:rgba(205,202,191,.6) }
.contact-form textarea { resize:vertical;min-height:130px }
.contact-form button { align-self:flex-start;margin-top:6px;background:transparent;border:1px solid rgba(205,202,191,.55);color:#efece4;padding:15px 34px;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:background .25s ease }
.contact-form button:hover { background:rgba(205,202,191,.12) }
.contact-alt { margin-top:22px;font-size:14px;color:#cdcabf }
.contact-alt a { color:inherit }

/* ---- Homepage polish (2026-09-27): breathing room + full-bleed frames ---- */
html, body { overflow-x:clip }
.collection { margin-bottom:150px }
.collection-heading { padding:36px 0 }
.projects { gap:88px 56px }
.project-caption { margin-top:24px }

.fullbleed { width:100vw;margin-left:calc(50% - 50vw);height:94svh;overflow:hidden }
.fullbleed img { width:100%;height:100%;object-fit:cover;display:block }
.hero + .fullbleed { margin-top:72px }
.work .fullbleed { margin-bottom:150px }

@media (max-width:900px) {
  .collection { margin-bottom:104px }
  .projects { gap:64px }
  .project-caption { margin-top:20px }
  .fullbleed { height:64svh }
  .hero + .fullbleed { margin-top:48px }
  .work .fullbleed { margin-bottom:104px }
}
