@charset "UTF-8";

/* The established serif and hero stay at the centre of the art direction. */
.ink-panel, .site-footer {
  --red: #e0a18b;
  --muted: #c2beb3;
  --rule: rgba(241, 238, 229, .28);
  background: var(--ink);
  color: var(--paper);
}

.home-intro {
  border-top: 6px solid var(--red);
  padding-block: clamp(42px, 5vw, 88px);
}
.home-intro h2 { font-size: clamp(50px, 7.5vw, 136px); }
.home-intro h2 span + span { padding-left: .16em; }
.home-intro .section-copy { border-left: 0; padding-left: 4%; padding-top: 8px; }
.home-history {
  margin-inline: 0;
  padding: clamp(46px, 5.6vw, 100px) 4.2%;
  grid-template-columns: 1.08fr 1fr;
}
.home-section.home-history { border-top: 0; }
.home-history h2 { font-size: clamp(64px, 8.8vw, 164px); line-height: .9; }
.home-history h2 span + span { font-style: italic; }
.home-history .eyebrow { margin-bottom: 28px; }
.home-history .section-copy { padding-top: 12px; }
.home-milestones span { font-size: 37px; }
.home-milestones li { padding-block: 17px; }
.home-event {
  margin-block: 0;
  padding-block: clamp(48px, 5.8vw, 104px);
  border-top: 0;
  grid-template-columns: 1.18fr .82fr;
}
.event-copy { padding-top: 8%; }
.event-copy h2 { font-size: clamp(54px, 7.1vw, 128px); line-height: .92; margin-bottom: 30px; }
.home-event figcaption { font-size: 12px; }
.salon-band { padding-block: 52px 58px; border-top: 5px solid #963c2d; }
.salon-band h2 { font-size: clamp(68px, 11.8vw, 210px); }

.page-header { padding-block: clamp(42px, 5.4vw, 96px) 54px; }
.page-header h1 { font-size: clamp(76px, 12.5vw, 200px); line-height: .9; letter-spacing: -.055em; }
.page-header .lead { max-width: 34ch; margin-top: 32px; }
.content-section { padding-block: 56px 68px; }
.content-section > h2 { font-size: clamp(42px, 5.2vw, 84px); line-height: .98; }

.profile-spread { border-top: 4px solid var(--red); padding-top: 42px; padding-bottom: 80px; }
.profile-heading { padding-top: 34px; }
.profile-teaching-wrap { margin-inline: 0; padding-inline: 4.2%; }
.profile-teaching-wrap .content-section { border-top: 0; padding-block: 66px 78px; }
.profile-teaching-wrap h2 { font-size: clamp(50px, 6.6vw, 108px); }

.solecka-page .page-header h1 { color: var(--red); font-size: clamp(82px, 15vw, 240px); }
.solecka-page .page-header > p:last-child { max-width: 58ch; }
.solecka-page .content-section > h2 { font-size: clamp(45px, 5.3vw, 85px); }
.solecka-page .salon-address { margin-block: 24px 34px; }
.solecka-page .content-section:last-child { padding-bottom: 90px; }
.contact-page .page-header h1 { color: var(--red); max-width: none; }
.contact-page .content-section:first-child { border-top: 5px solid var(--red); }
.contact-page .content-section:first-child > h2 { font-style: italic; }
.contact-page .mail-link { font-size: clamp(25px, 3vw, 46px); letter-spacing: -.02em; }
.contact-page .email-actions { column-gap: 24px; }
.contact-page .inquiry-list h3 { font-size: clamp(34px, 3.7vw, 58px); }

.site-footer { margin-inline: 0; padding-inline: 4.2%; border-top: 1px solid var(--rule); }
.footer-main { padding-block: 64px 60px; }
.footer-wordmark { font-size: clamp(56px, 6.5vw, 108px); }
.footer-contact h2 { font-size: clamp(34px, 3.6vw, 56px); }
.footer-nav a { padding-block: 13px; }
.footer-current { font-size: 11px; }
.footer-label, .footer-domain { font-size: 11px; }
.footer-bottom { padding-bottom: 18px; }

@media (max-width: 1000px) {
  .profile-heading { padding-top: 0; }
  .profile-spread { padding-top: 32px; padding-bottom: 58px; }
}
@media (max-width: 900px) {
  .home-history { padding-block: 52px 60px; }
  .home-event { grid-template-columns: 1fr 1fr; }
  .event-copy { padding-top: 0; }
  .event-copy h2 { font-size: clamp(46px, 7.1vw, 72px); }
  .home-history .section-copy { padding-left: 8%; }
  .profile-teaching-wrap h2 { font-size: 54px; }
  .footer-main { padding-block: 48px; }
}
@media (max-width: 600px) {
  .home-intro { padding-block: 36px 44px; }
  .home-intro h2 { font-size: clamp(40px, 11.6vw, 66px); }
  .home-intro .section-copy { padding: 0; }
  .home-history { padding: 40px 6% 48px; grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .home-history h2 { font-size: clamp(60px, 16.5vw, 96px); }
  .home-history .section-copy { padding: 0; border-left: 0; }
  .home-history .eyebrow { margin-bottom: 22px; }
  .home-milestones { margin-top: 30px; }
  .home-milestones span { font-size: 33px; }
  .home-milestones li { gap: 20px; font-size: 17px; }
  .home-event { grid-template-columns: minmax(0, 1fr); padding-block: 40px 46px; gap: 30px; }
  .event-copy h2 { font-size: clamp(58px, 15.5vw, 82px); }
  .salon-band { padding-block: 34px 40px; }
  .salon-band h2 { font-size: clamp(56px, 20.5vw, 100px); }
  .page-header { padding-block: 38px 40px; }
  .page-header h1 { font-size: clamp(64px, 16vw, 96px); }
  .page-header .lead { margin-top: 26px; }
  .content-section { padding-block: 36px 44px; }
  .content-section > h2 { font-size: clamp(42px, 11.8vw, 62px); }
  .profile-spread { padding-top: 28px; padding-bottom: 44px; }
  .profile-teaching-wrap { padding-inline: 6%; }
  .profile-teaching-wrap .content-section { padding-block: 40px 46px; }
  .profile-teaching-wrap h2 { font-size: clamp(43px, 12vw, 64px); }
  .solecka-page .page-header h1 { font-size: clamp(80px, 23vw, 132px); }
  .solecka-page .content-section > h2 { font-size: clamp(36px, 10vw, 54px); }
  .solecka-page .content-section:last-child { padding-bottom: 52px; }
  .contact-page .page-header h1 { font-size: clamp(68px, 19vw, 108px); }
  .contact-page .inquiry-list h3 { font-size: clamp(32px, 8.8vw, 46px); }
  .site-footer { padding-inline: 6%; }
  .footer-main { padding-block: 42px; }
  .footer-wordmark { font-size: 70px; }
  .footer-contact h2 { font-size: 39px; }
}
