@media (min-width: 1441px) {
  body.home .aoc-header { width: 1250px; }
  .aoc-artisan-photo { height: auto; aspect-ratio: 560/759; }
  .aoc-project-image { height: auto; aspect-ratio: 470/610; }
}
@media (max-width: 1199px) {
  .aoc-intro-logo { top: 230px; left: 15%; width: 70%; }
  .aoc-header { width: calc(100% - 120px); }
  .aoc-navigation .wp-block-navigation-item { font-size: 16px; }
  .aoc-hero { --aoc-hero-gutter: 36px; --aoc-hero-top: 36px; --aoc-hero-bottom: 90px; min-height: 740px; }
  .aoc-hero-title { top: 280px; }
  .aoc-workshop { padding-block: 140px; }
  .aoc-artisan { margin-top: 120px; }
  .aoc-artisan-photo { height: 650px; }
  .aoc-artisan-intro { margin: 80px 0 0 40px !important; }
  .aoc-artisan-story { margin: 80px 0 0 !important; }
  .aoc-crafts { margin-top: 180px; }
  .aoc-crafts-grid { margin: 100px 35px 0; }
  .aoc-craft-image { height: 340px; }
  .aoc-craft-stairs .aoc-craft-image,.aoc-craft-furniture .aoc-craft-image { height: 360px; }
  .aoc-project-cta .wp-block-button__link { font-size: 24px; }
  .aoc-project-image { height: 480px; }
  .aoc-contact { padding-right: 24px; }
  .aoc-contact-channels { margin: 80px 25px 0; }
  .aoc-contact-row { padding: 18px; gap: 12px; }
  .aoc-contact-row p { font-size: 17px; }
}
@media (max-width: 781px) {
  .aoc-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .aoc-navigation .wp-block-navigation__responsive-container-open { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; margin-left: auto; }
  .aoc-navigation .wp-block-navigation__responsive-container.is-menu-open { background: #000; color: #fff; padding: 32px; }
  .aoc-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start; gap: 28px; padding-top: 70px; }
  .aoc-navigation .wp-block-navigation-item { margin: 0 !important; font-size: 24px; }
  :where([id]) { scroll-margin-top: 112px; }
  .aoc-header { --aoc-header-compact-top: 16px; top: calc(32px + var(--wp-admin--admin-bar--height, 0px)); width: calc(100% - 72px); }
  .aoc-logo { left: 0; transform: translateY(-50%); }
  .aoc-hero { --aoc-hero-gutter: 16px; --aoc-hero-top: 16px; --aoc-hero-bottom: 64px; min-height: 660px; }
  .aoc-hero-image img { object-fit: cover; }
  .aoc-hero-title { top: 270px; width: calc(100% - 64px); font-size: clamp(52px,8.3vw,72px); }
  .aoc-workshop { padding: 88px 0; }
  .aoc-artisan { grid-template-columns: 1fr; margin-top: 72px; }
  .aoc-artisan-photo { width: 78%; height: auto; aspect-ratio: 560/759; }
  .aoc-artisan-copy { padding: 48px 24px 0; }
  .aoc-artisan-line { display: none; }
  .aoc-artisan-intro { max-width: none; margin: 40px 0 0 !important; font-size: 18px; }
  .aoc-intro-lead { font-size: 26px; }
  .aoc-intro-emphasis { font-size: 21px; }
  .aoc-artisan-story { margin: 32px 0 0 !important; }
  .aoc-crafts { margin-top: 80px; }
  .aoc-crafts-title { padding-inline: 16px; }
  .aoc-crafts-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 10px; margin: 52px 16px 0; align-items: start; }
  .aoc-craft-column { display: contents; }
  .aoc-craft { display: flex; flex-direction: column; }
  .aoc-craft h3 { order: -1; padding-inline: 0; font-size: 28px; }
  .aoc-craft-image,.aoc-craft-stairs .aoc-craft-image,.aoc-craft-furniture .aoc-craft-image { height: auto; aspect-ratio: 259/413; }
  .aoc-project-cta { margin: 54px 16px 0 !important; }
  .aoc-project-cta .wp-block-button__link { font-size: 18px; gap: 15px; padding: 18px; }
  .aoc-projects { padding: 88px 16px; }
  .aoc-projects-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 48px 14px; margin-top: 60px; }
  .aoc-project-column { display: contents; }
  .aoc-project + .aoc-project { margin-top: 0; }
  .aoc-project-image { height: auto; aspect-ratio: 470/610; }
  .aoc-project h3 { margin: 14px 0 0; font-size: 30px; }
  .aoc-project p { margin: 12px 0 0; font-size: 13px; }
  .aoc-contact { padding: 80px 16px 36px; }
  .aoc-contact-title { margin-top: 70px !important; letter-spacing: .04em; }
  .aoc-contact-title span { padding-left: .6em; }
  .aoc-contact-grid { grid-template-columns: 1fr; margin-top: 54px; gap: 60px; }
  .aoc-contact-details { padding-top: 0; }
  .aoc-contact-channels { max-width: 490px; margin: 40px auto 0; }
  .aoc-contact-row { margin-bottom: 24px; }
  .aoc-contact-row p { font-size: clamp(16px,3.4vw,22px); }
  .aoc-social-icons { margin-top: 32px; }
  .aoc-contact-form { padding: 0; }
  .aoc-contact-form input:not([type=submit]),.aoc-contact-form textarea { min-height: 72px; padding: 22px; font-size: 20px; }
  .aoc-contact-form textarea { height: 260px; }
  .aoc-contact-form form p { margin-bottom: 20px; }
  .aoc-footer { flex-direction: column; align-items: center; gap: 16px; padding: 40px 20px 64px; font-size: 19px; }
}
@media (max-width: 420px) {
  .aoc-section-title { font-size: 35px; letter-spacing: .03em; }
  .aoc-hero-title { font-size: 52px; }
  .aoc-contact-title { font-size: 43px; }
  .aoc-contact-row { padding-inline: 14px; }
  .aoc-contact-row p { letter-spacing: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .aoc-header,.aoc-navigation { transition: none; }
  .aoc-intro-logo { display: none !important; }
  .aoc-hero-title,.aoc-logo,.aoc-reveal { opacity: 1 !important; translate: none !important; transition: none !important; }
  .aoc-project-image img,.aoc-craft-image img { transform: none !important; transition: none !important; }
  .aoc-navigation .wp-block-navigation-item,.aoc-contact-form input[type=submit],.aoc-project-cta a { transition: none !important; }
  .aoc-contact-form .wpcf7-spinner::before { animation: none !important; }
}
