:root {
  --ed-paper: #fcfbf8;
  --ed-ink: #102346;
  --ed-ink-soft: #354765;
  --ed-muted: #54647b;
  --ed-shadow: none;
}
body { background: var(--ed-paper); }
.site-header { background: rgba(252, 251, 248, .97); }
.site-branding { flex-direction: row; align-items: center; gap: 26px; min-width: 0; }
.site-title { font-size: 16px; }
.site-description { font-size: 12px; white-space: nowrap; }
.site-description::before { content: ""; display: inline-block; width: 6px; height: 6px; background: #d95a3e; border-radius: 50%; margin-right: 8px; }
.main-navigation .menu { gap: 22px; }
.main-navigation .menu a { font-size: 13px; }
.button { gap: 10px; }
.header-cta { box-shadow: none; }
.reference-photo { background-image: url('../reference-collage.png'); background-repeat: no-repeat; width: 100%; min-height: 100px; aspect-ratio: 1.45; }
img.reference-photo { background-image: none; object-fit: cover; }
.reference-photo--portrait { background-size: 914.3% 656.4%; background-position: 24.49% 13.71%; aspect-ratio: 1.07; }
.reference-photo--mountains { background-size: 882.8% 660.6%; background-position: 57.93% 7.13%; aspect-ratio: 1.12; }
.reference-photo--landscape { background-size: 1290.8% 2438.1%; background-position: 2.19% 79.73%; }
.reference-photo--architecture { background-size: 1371.4% 2438.1%; background-position: 13.48% 79.73%; }
.reference-photo--workshop { background-size: 1371.4% 2327.3%; background-position: 24.93% 80%; }
.reference-photo--workspace { background-size: 1030.9% 812.7%; background-position: 92.43% 7.91%; }
.andreas-hero { position: relative; min-height: 565px; display: flex; align-items: center; padding: 16px 0 58px; }
.andreas-hero__copy { position: relative; z-index: 2; width: 58%; max-width: 670px; }
.andreas-hero h1 { font-family: var(--ed-sans); font-size: 30px; font-weight: 650; margin-bottom: 16px; }
.andreas-hero h2 { font-size: 62px; line-height: 1.04; margin-bottom: 24px; }
.andreas-hero .lede { font-size: 17px; max-width: 565px; }
.andreas-hero__media { position: absolute; width: 39%; right: 0; top: 48px; height: 430px; overflow: hidden; border-radius: 44% 48% 32% 43% / 29% 38% 50% 46%; }
.andreas-hero__media > * { height: 100%; width: 100%; object-fit: cover; }
.reference-note { display: block; color: var(--ed-ink); font-family: "Bradley Hand", cursive; font-size: 19px; line-height: 1.5; transform: rotate(-7deg); }
.hero-reference-note { position: absolute; bottom: 48px; right: 15px; z-index: 3; padding: 16px; background: var(--ed-paper); border-radius: 5px; }
.stats { margin: 0 0 48px; border-inline: 0; background: var(--ed-line); }
.stat { display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: center; background: var(--ed-paper); min-height: 90px; padding: 18px; }
.stat__value { font-family: var(--ed-sans); font-size: 36px; font-weight: 750; }
.stat__label { font-size: 12px; margin: 0; }
.stat__value--place { font-size: 17px; display: flex; align-items: center; gap: 6px; }
.stat .dashicons { font-size: 26px; width: 26px; height: 26px; }
.selected-work h2 { font-size: 36px; }
.project-card, .post-card { background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.project-card__image, .post-card__image { border-radius: 5px; aspect-ratio: 1.75; }
.project-card__image .reference-photo, .post-card__image .reference-photo { height: 100%; aspect-ratio: auto; }
.project-card__body, .post-card__body { padding: 16px 0; }
.project-card__meta { color: #0756d7; font-size: 11px; }
.project-card h3, .post-card h3 { font-size: 18px; line-height: 1.3; }
.chip { border-radius: 4px; }
.personal-band { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1fr); align-items: center; gap: 64px; padding-block: 44px; border-block: 1px solid var(--ed-line); }
.personal-band > .reference-photo { max-height: 350px; aspect-ratio: 1.08; border-radius: 43% 39% 40% 26% / 28% 40% 30% 39%; }
.personal-band h2 { font-size: 40px; line-height: 1.1; }
.personal-band p { color: var(--ed-ink-soft); }
h1 { font-size: 68px; line-height: 1.04; }
h2 { line-height: 1.08; }
.about-split, .contact-split, .experience-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .8fr); gap: 70px; align-items: center; }
.about-media, .contact-media, .experience-media { position: relative; }
.about-media > .reference-photo, .about-media > img { max-height: 445px; border-radius: 32% 35% 44% 28% / 24% 24% 47% 42%; width: 100%; object-fit: cover; }
.about-media .reference-note { position: absolute; right: 0; bottom: -26px; padding: 10px; background: var(--ed-paper); }
.contact-media > .reference-photo--portrait, .contact-media > img { max-height: 390px; border-radius: 43% 44% 28% 41% / 29% 34% 41% 43%; object-fit: cover; width: 100%; }
.contact-media .reference-note { position: absolute; top: 22px; right: -20px; background: var(--ed-paper); padding: 10px; }
.contact-secondary { margin-top: 30px; max-height: 250px; border-radius: 7px; aspect-ratio: 1.7 !important; }
.experience-media .reference-photo, .experience-media img { aspect-ratio: 1.25; max-height: 335px; border-radius: 6px; object-fit: cover; }
.experience-media .reference-note { position: absolute; bottom: -20px; right: -16px; background: var(--ed-paper); padding: 12px; }
.experience-intro .lede { font-size: 17px; }
.working-principles { gap: 30px; padding-block: 30px; border-block: 1px solid var(--ed-line); }
.working-principles h3 { font-family: var(--ed-sans); font-size: 18px; }
.working-principles p { font-size: 15px; }
.page-content > .working-principles { max-width: 1180px; }
.timeline-item__content { grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); }
.timeline-item__content > div:last-child { border-left: 1px solid var(--ed-line); padding-left: 22px; }
.timeline-item__content p { font-size: 15px; }
.experience-quote { position: relative; margin: 30px 0 40px; padding: 25px 0 25px 65px; border-top: 1px solid var(--ed-line); font-size: 22px; max-width: 850px; color: var(--ed-ink-soft); }
.experience-quote::before { content: "\201C"; position: absolute; top: 18px; left: 0; font-size: 82px; line-height: 1; color: var(--ed-blue); font-family: Georgia, serif; }
.experience-quote p { margin: 0; }
.contact-list .dashicons { color: var(--ed-blue); font-size: 24px; width: 24px; height: 24px; flex: 0 0 auto; }
.contact-list .contact-detail > span { color: var(--ed-muted); font-size: 14px; }
.contact-list { margin-top: 38px; gap: 24px; }
.interest-item h3 { font-size: 25px; }
.single-hero .reference-photo { border-radius: 6px; }
.archive-header { margin-bottom: 36px; }
.archive-header h1 { max-width: 900px; }
.archive-header .lede { font-size: 17px; }
.project-facts:empty { display: none; }
.site-footer { background: var(--ed-paper); }
@media (max-width: 1080px) {
  .site-branding { gap: 10px; }
  .site-description { display: none; }
  .andreas-hero h2 { font-size: 52px; }
  .stat { grid-template-columns: 1fr; gap: 8px; }
}
@media (max-width: 920px) {
  .about-split, .contact-split, .experience-intro { grid-template-columns: 1fr; gap: 35px; }
  .about-media, .contact-media, .experience-media { max-width: 540px; }
  .personal-band { gap: 32px; }
  .personal-band h2 { font-size: 34px; }
  .timeline-item__content { grid-template-columns: 1fr; }
  .timeline-item__content > div:last-child { border: 0; padding: 0; }
  .stat { grid-template-columns: auto 1fr; }
}
@media (max-width: 640px) {
  .andreas-hero { display: block; min-height: 670px; padding: 0 0 255px; }
  .andreas-hero__copy { width: 100%; }
  .andreas-hero h1 { font-size: 24px; }
  .andreas-hero h2 { font-size: 40px; }
  .andreas-hero .lede { font-size: 16px; }
  .andreas-hero__media { top: auto; bottom: 24px; right: 16px; width: 210px; height: 210px; }
  .hero-reference-note { bottom: 56px; right: auto; left: 0; font-size: 16px; max-width: 135px; }
  .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat { grid-template-columns: 1fr; padding: 16px 12px; }
  .stat__label { min-height: 40px; }
  .stat__value { font-size: 30px; }
  .stat__value--place { font-size: 18px; min-height: 30px; }
  .personal-band { grid-template-columns: 1fr; }
  .personal-band > .reference-photo { max-width: 360px; }
  h1 { font-size: 48px; }
  .about-media .reference-note, .experience-media .reference-note { right: 0; }
  .contact-media .reference-note { right: 0; top: auto; bottom: 220px; font-size: 16px; }
  .reference-note { max-width: 190px; }
  .section-spacer { margin-top: 48px; }
  .working-principles { flex-wrap: wrap !important; }
  .working-principles > .wp-block-column { flex-basis: calc(50% - 15px) !important; flex-grow: 0; }
  .experience-quote { font-size: 19px; padding-left: 45px; }
  .experience-quote::before { font-size: 65px; }
}
