/* Interior pages share the home palette, type, spacing, buttons and header/footer. */
.ahf-design-page :is(#showroom,#service-paths,#project-gallery) { scroll-margin-top: 110px; }

.ahf-design-page .ahf-inner-hero,
.ahf-design-page .ahf-inner-section,
.ahf-design-page .ahf-inner-cta {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  padding-left: clamp(20px,4.5vw,72px) !important;
  padding-right: clamp(20px,4.5vw,72px) !important;
}
.ahf-design-page .ahf-inner-section,
.ahf-design-page .ahf-inner-cta {
  padding-top: clamp(64px,7vw,96px) !important;
  padding-bottom: clamp(64px,7vw,96px) !important;
}
.ahf-design-page .ahf-inner-hero {
  position: relative;
  isolation: isolate;
  min-height: clamp(490px,54vw,660px);
  justify-content: center;
  align-items: flex-start;
  padding-top: 88px !important;
  padding-bottom: 88px !important;
  background-color: var(--ahf-dark);
  background-position: center;
  background-size: cover;
  color: #fff;
}
.ahf-design-page .ahf-inner-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg,rgba(20,17,14,.93),rgba(20,17,14,.75) 48%,rgba(20,17,14,.18));
}
.ahf-design-page .ahf-inner-hero-copy {
  width: min(100%,840px) !important;
  max-width: 840px !important;
  gap: 0;
}
.ahf-design-page .ahf-inner-hero-copy > .elementor-widget:first-child p {
  margin: 0 0 40px;
  color: #e5dcd0;
  font-size: 14px;
}
.ahf-design-page .ahf-inner-hero-copy > .elementor-widget:first-child a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ahf-design-page .ahf-inner-hero-copy > .elementor-widget:nth-child(2) p,
.ahf-design-page .ahf-inner-section-head > .elementor-widget:first-child p,
.ahf-design-page .ahf-inner-cta > .elementor-widget:first-child p,
.ahf-design-page .ahf-inner-service-card-body > .elementor-widget:first-child p,
.ahf-design-page .ahf-inner-project-card-body > .elementor-widget:first-child p {
  font-family: Poppins,sans-serif !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  line-height: 1.5;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ahf-ochre-light);
  margin: 0 0 16px;
}
.ahf-design-page .ahf-inner-hero-copy > .elementor-widget:nth-child(2) p,
.ahf-design-page .ahf-inner-cta > .elementor-widget:first-child p { color: var(--ahf-gold); }
.ahf-design-page .ahf-inner-hero h1 {
  color: #fff;
  font-family: Georgia,serif !important;
  font-size: clamp(3.25rem,6.2vw,5.7rem) !important;
  font-weight: 400 !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em;
  max-width: 15ch;
}
.ahf-design-page .ahf-inner-hero-copy > .elementor-widget:nth-child(4) p {
  max-width: 64ch;
  color: #f1eee9;
  font-size: clamp(1.05rem,1.5vw,1.25rem);
  line-height: 1.6;
  margin: 22px 0 30px;
}
.ahf-design-page .ahf-inner-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
.ahf-design-page .ahf-inner-actions > .e-con { width: auto !important; }
.ahf-design-page :is(.ahf-inner-hero,.ahf-inner-section,.ahf-inner-cta) .elementor-button {
  min-height: 48px !important;
  padding: 12px 24px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  font-family: Poppins,sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.3;
  text-align: center;
  text-decoration: none !important;
  transition: color .2s ease,border-color .2s ease,background-color .2s ease;
}
.ahf-design-page .ahf-inner-hero .elementor-button,
.ahf-design-page .ahf-inner-cta .ahf-action-outline .elementor-button { color: #fff !important; }
.ahf-design-page .ahf-inner-hero .elementor-button:hover,
.ahf-design-page .ahf-inner-cta .ahf-action-outline .elementor-button:hover { color: var(--ahf-gold) !important; border-color: var(--ahf-gold) !important; }
.ahf-design-page :is(.ahf-inner-section,.ahf-inner-service-card) .elementor-button { color: var(--ahf-walnut) !important; }
.ahf-design-page :is(.ahf-inner-section,.ahf-inner-service-card) .elementor-button:hover { color: var(--ahf-ochre-light) !important; border-color: var(--ahf-ochre-light) !important; }
.ahf-design-page :is(.ahf-inner-hero,.ahf-inner-cta) .ahf-action-primary .elementor-button {
  background: var(--ahf-gold) !important;
  border-color: var(--ahf-gold) !important;
  color: var(--ahf-walnut) !important;
  box-shadow: 0 3px 12px rgb(0 0 0 / 15%) !important;
}
.ahf-design-page :is(.ahf-inner-hero,.ahf-inner-cta) .ahf-action-primary .elementor-button:hover {
  background: var(--ahf-gold-hover) !important;
  border-color: var(--ahf-gold-hover) !important;
  color: var(--ahf-walnut) !important;
}
.ahf-design-page .ahf-inner-section { align-items: stretch; gap: 32px; }
.ahf-design-page .ahf-inner-muted { background: var(--ahf-surface); }
.ahf-design-page .ahf-inner-section-head { width: 100% !important; max-width: 920px !important; }
.ahf-design-page .ahf-inner-section-head h2,
.ahf-design-page .ahf-inner-cta h2 {
  font-family: Georgia,serif !important;
  font-size: clamp(2.5rem,4.2vw,3.75rem) !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em;
  color: var(--ahf-ink);
  max-width: 21ch;
}
.ahf-design-page .ahf-inner-section-head > .elementor-widget:last-child p {
  max-width: 66ch;
  color: var(--ahf-muted);
  font-size: clamp(1rem,1.35vw,1.15rem);
  line-height: 1.65;
  margin: 20px 0 0;
}
.ahf-design-page :is(.ahf-inner-service-grid,.ahf-inner-info-grid,.ahf-inner-steps-grid,.ahf-inner-project-grid,.ahf-inner-photo-grid) {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(16px,2vw,28px);
  width: 100% !important;
  align-items: stretch;
}
.ahf-design-page :is(.ahf-inner-service-grid,.ahf-inner-info-grid,.ahf-inner-steps-grid,.ahf-inner-project-grid,.ahf-inner-photo-grid) > .e-con { width: 100% !important; min-width: 0; }
.ahf-design-page .ahf-inner-service-card,
.ahf-design-page .ahf-inner-project-card {
  overflow: hidden;
  border: 1px solid var(--ahf-border);
  border-radius: var(--ahf-radius-card);
  background: #fff;
}
.ahf-design-page .ahf-inner-service-card > .elementor-widget-image,
.ahf-design-page .ahf-inner-project-card > .elementor-widget-image,
.ahf-design-page .ahf-inner-service-card > .elementor-widget-image .elementor-widget-container,
.ahf-design-page .ahf-inner-project-card > .elementor-widget-image .elementor-widget-container { width: 100%; }
.ahf-design-page .ahf-inner-service-card img {
  display: block;
  width: 100%;
  height: clamp(210px,20vw,280px);
  object-fit: cover;
}
.ahf-design-page .ahf-inner-service-card-body { flex: 1; align-items: flex-start; padding: 28px !important; }
.ahf-design-page .ahf-inner-service-card h3,
.ahf-design-page .ahf-inner-project-card h3,
.ahf-design-page .ahf-inner-step h3 {
  font-family: Poppins,sans-serif !important;
  font-size: clamp(1.4rem,1.9vw,1.75rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  color: var(--ahf-ink);
}
.ahf-design-page .ahf-inner-service-card-body > .elementor-widget:nth-child(3) p,
.ahf-design-page .ahf-inner-step > .elementor-widget:last-child p {
  color: var(--ahf-muted);
  line-height: 1.65;
  margin: 14px 0 24px;
}
.ahf-design-page .ahf-inner-service-card-body > .elementor-widget:last-child { margin-top: auto; }
.ahf-design-page .ahf-inner-step {
  padding: 28px !important;
  border: 1px solid var(--ahf-border);
  border-top: 3px solid var(--ahf-gold);
  border-radius: 0 0 var(--ahf-radius-card) var(--ahf-radius-card);
  background: #fff;
}
.ahf-design-page .ahf-inner-step > .elementor-widget:first-child p {
  color: var(--ahf-ochre-light);
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: .1em;
  margin: 0 0 24px;
}
.ahf-design-page .ahf-inner-step > .elementor-widget:last-child p { margin-bottom: 0; }
.ahf-design-page .ahf-inner-photo-grid img {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: var(--ahf-radius-card);
}
.ahf-design-page .ahf-inner-project-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  transition: transform .25s ease;
}
.ahf-design-page .ahf-inner-project-card a:hover img { transform: scale(1.025); }
.ahf-design-page .ahf-inner-project-card-body { padding: 24px !important; }
.ahf-design-page .ahf-inner-project-card-body > .elementor-widget:first-child p { margin-bottom: 10px; }
.ahf-design-page .ahf-inner-project-card h3 { font-size: clamp(1.25rem,1.7vw,1.5rem) !important; }
.ahf-design-page .ahf-inner-related { padding-top: 64px !important; border-top: 1px solid var(--ahf-border); }
.ahf-design-page .ahf-inner-related-links { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 12px; }
.ahf-design-page .ahf-inner-related-links > .elementor-widget-button { width: auto; }
.ahf-design-page .ahf-inner-cta {
  background: var(--ahf-dark);
  align-items: flex-start;
  gap: 0;
}
.ahf-design-page .ahf-inner-cta h2 { color: #fff; max-width: 20ch; }
.ahf-design-page .ahf-inner-cta > .elementor-widget:nth-child(3) p {
  max-width: 60ch;
  color: #e2dcd4;
  font-size: clamp(1rem,1.35vw,1.15rem);
  line-height: 1.6;
  margin: 22px 0 30px;
}
.ahf-design-page .ahf-inner-about { display: grid !important; grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); gap: clamp(32px,5vw,80px); align-items: center; }
.ahf-design-page .ahf-inner-about > .e-con { width: 100% !important; min-width: 0; }
.ahf-design-page .ahf-inner-about-copy > .elementor-widget-text-editor p { max-width: 62ch; line-height: 1.7; }
.ahf-design-page .ahf-inner-about-photo img { display: block; width: 100%; max-height: 550px; aspect-ratio: 4/5; object-fit: cover; border-radius: var(--ahf-radius-card); }

/* The About team shares the content gutter, palette and card radius of the service pages. */
.ahf-design-page .ahf-team-section { gap: 34px; }
.ahf-design-page .ahf-team-grid {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(18px,2.2vw,30px);
  width: 100% !important;
  min-width: 0;
}
.ahf-design-page .ahf-team-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0;
  overflow: hidden;
  padding: 0 !important;
  border: 1px solid var(--ahf-border);
  border-radius: var(--ahf-radius-card);
  background: #fff;
}
.ahf-design-page .ahf-team-card .elementor-widget-image,
.ahf-design-page .ahf-team-card .elementor-widget-image .elementor-widget-container { width: 100%; }
.ahf-design-page .ahf-team-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  object-position: center 25%;
}
.ahf-design-page .ahf-team-card-body {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start;
  gap: 7px;
  padding: clamp(22px,2.2vw,30px) !important;
}
.ahf-design-page .ahf-team-card h3 {
  margin: 0;
  color: var(--ahf-ink);
  font-family: Poppins,sans-serif !important;
  font-size: clamp(1.3rem,1.8vw,1.55rem);
  font-weight: 600;
  line-height: 1.25;
}
.ahf-design-page .ahf-team-card-body p {
  margin: 0;
  color: var(--ahf-ochre-light);
  font-family: Poppins,sans-serif;
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.45;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .ahf-design-page .ahf-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ahf-design-page .ahf-team-card:last-child {
    grid-column: 1 / -1;
    width: calc((100% - clamp(18px,2.2vw,30px))/2);
    justify-self: center;
  }
}
@media (max-width: 620px) {
  .ahf-design-page .ahf-team-grid { grid-template-columns: 1fr; }
  .ahf-design-page .ahf-team-card:last-child { grid-column: auto; width: 100%; }
}

@media (max-width: 1100px) {
  .ahf-design-page :is(.ahf-inner-service-grid,.ahf-inner-info-grid,.ahf-inner-steps-grid,.ahf-inner-project-grid,.ahf-inner-photo-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .ahf-design-page :is(#showroom,#service-paths,#project-gallery) { scroll-margin-top: 120px; }
  .ahf-design-page .ahf-inner-hero { min-height: 0; padding-top: 64px !important; padding-bottom: 72px !important; }
  .ahf-design-page .ahf-inner-hero::before { background: linear-gradient(90deg,rgba(20,17,14,.9),rgba(20,17,14,.7)); }
  .ahf-design-page .ahf-inner-hero h1 { font-size: clamp(2.7rem,11vw,3.5rem) !important; }
  .ahf-design-page .ahf-inner-hero-copy > .elementor-widget:first-child p { margin-bottom: 32px; }
  .ahf-design-page .ahf-inner-actions { flex-direction: column !important; align-items: stretch; }
  .ahf-design-page .ahf-inner-actions > .e-con,
  .ahf-design-page .ahf-inner-actions .elementor-button { width: 100% !important; }
  .ahf-design-page :is(.ahf-inner-service-grid,.ahf-inner-info-grid,.ahf-inner-steps-grid,.ahf-inner-project-grid,.ahf-inner-photo-grid) { grid-template-columns: 1fr; gap: 20px; }
  .ahf-design-page .ahf-inner-section-head h2,
  .ahf-design-page .ahf-inner-cta h2 { font-size: clamp(2.15rem,9vw,2.8rem) !important; }
  .ahf-design-page .ahf-inner-service-card img { height: 230px; }
  .ahf-design-page .ahf-inner-service-card-body,
  .ahf-design-page .ahf-inner-step { padding: 24px !important; }
  .ahf-design-page .ahf-inner-related-links { flex-direction: column !important; }
  .ahf-design-page .ahf-inner-related-links .elementor-button { width: 100%; }
  .ahf-design-page .ahf-inner-about { grid-template-columns: 1fr; }
  .ahf-design-page .ahf-inner-about-photo img { aspect-ratio: 4/3; }
}
@media (prefers-reduced-motion: reduce) {
  .ahf-design-page .ahf-inner-project-card img { transition: none; }
}

/* Round 6: introductions follow the purpose of each interior page. */
.ahf-design-page :is(#materials,#evaluation,#stair-details,#ahf-main-content) { scroll-margin-top: 108px; }
.ahf-design-page .ahf-page-intro {
  display: grid !important;
  grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr);
  align-items: center;
  gap: clamp(36px,5vw,80px);
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  padding: clamp(44px,4.5vw,66px) clamp(20px,4.5vw,72px) !important;
  background: #fff;
}
.ahf-design-page .ahf-page-intro > .e-con { width: 100% !important; min-width: 0; }
.ahf-design-page .ahf-page-intro-copy { align-items: flex-start; }
.ahf-design-page .ahf-page-intro-copy > .elementor-widget:first-child p {
  margin: 0 0 18px;
  color: var(--ahf-ochre-light);
  font-family: Poppins,sans-serif !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  line-height: 1.5;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ahf-design-page .ahf-feature-copy > .elementor-widget:first-child p,
.ahf-design-page .ahf-assessment-card > .elementor-widget:first-child p {
  margin: 0 0 18px;
  color: var(--ahf-ochre-light);
  font-family: Poppins,sans-serif !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  line-height: 1.5;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ahf-design-page .ahf-page-intro h1 {
  max-width: 17ch;
  margin: 0;
  color: var(--ahf-ink);
  font-family: Georgia,serif !important;
  font-size: clamp(3.1rem,4.8vw,4.5rem) !important;
  font-weight: 400 !important;
  line-height: 1.07 !important;
  letter-spacing: -.035em;
}
.ahf-design-page .ahf-page-intro-copy > .elementor-widget:nth-child(3) p {
  max-width: 61ch;
  margin: 18px 0 0;
  color: var(--ahf-muted);
  font-size: clamp(1.05rem,1.45vw,1.2rem);
  line-height: 1.65;
}
.ahf-design-page .ahf-page-intro .ahf-inner-actions { margin-top: 24px; }
.ahf-design-page .ahf-page-intro .elementor-button {
  display: inline-flex;
  min-height: 48px !important;
  align-items: center;
  justify-content: center;
  padding: 12px 24px !important;
  border: 1px solid var(--ahf-walnut) !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--ahf-walnut) !important;
  font-family: Poppins,sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.3;
  text-decoration: none !important;
}
.ahf-design-page .ahf-page-intro .ahf-action-primary .elementor-button {
  border-color: var(--ahf-gold) !important;
  background: var(--ahf-gold) !important;
  color: var(--ahf-walnut) !important;
  box-shadow: 0 3px 12px rgb(0 0 0 / 12%) !important;
}
.ahf-design-page .ahf-page-intro .elementor-button:hover { border-color: var(--ahf-ochre-light) !important; color: var(--ahf-ochre-light) !important; }
.ahf-design-page .ahf-page-intro .ahf-action-primary .elementor-button:hover { border-color: var(--ahf-gold-hover) !important; background: var(--ahf-gold-hover) !important; color: var(--ahf-walnut) !important; }
.ahf-design-page .ahf-page-intro-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 5/4;
  object-fit: cover;
  border-radius: var(--ahf-radius-card);
}
.ahf-design-page .ahf-intro-plain { grid-template-columns: minmax(0,1fr); padding-bottom: 8px !important; }
.ahf-design-page .ahf-intro-plain .ahf-page-intro-copy { max-width: 980px !important; }
.ahf-design-page .ahf-intro-plain h1 { max-width: none; }
.ahf-design-page .ahf-intro-services .ahf-page-intro-copy > .elementor-widget:first-child,
.ahf-design-page .ahf-intro-projects .ahf-page-intro-copy > .elementor-widget:first-child { display: none; }
.ahf-design-page .ahf-paths-direct,
.ahf-design-page .ahf-gallery-direct { padding-top: 12px !important; }
.ahf-design-page .ahf-paths-direct { padding-top: 8px !important; gap: 20px; }
.ahf-design-page .ahf-paths-direct > .elementor-widget:first-child p { margin: 0; color: var(--ahf-ochre-light); font-size: .82rem; font-weight: 600; letter-spacing: .12em; }
.ahf-design-page .ahf-intro-projects { padding-bottom: 8px !important; }
.ahf-design-page .ahf-intro-stairs { background: var(--ahf-surface); grid-template-columns: 1fr; padding-bottom: clamp(44px,4.5vw,66px) !important; }
.ahf-design-page .ahf-intro-about .ahf-page-intro-photo img { aspect-ratio: 4/5; max-height: 560px; object-position: center 25%; }
.ahf-design-page .ahf-intro-assessment { background: var(--ahf-surface); }
.ahf-design-page .ahf-assessment-card {
  padding: clamp(28px,3vw,44px) !important;
  border-radius: var(--ahf-radius-card);
  background: var(--ahf-dark);
  color: #fff;
}
.ahf-design-page .ahf-assessment-card > .elementor-widget:first-child p { color: var(--ahf-gold); }
.ahf-design-page .ahf-assessment-card h2 {
  color: #fff;
  font-family: Georgia,serif !important;
  font-size: clamp(2rem,3vw,3rem) !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
}
.ahf-design-page .ahf-assessment-card ul { margin: 24px 0 0; padding-left: 20px; }
.ahf-design-page .ahf-assessment-card li { margin: 0 0 16px; color: #f0eae0; line-height: 1.55; }
.ahf-design-page .ahf-assessment-card li::marker { color: var(--ahf-gold); }
.ahf-design-page .ahf-feature-split {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: center;
  gap: clamp(40px,6vw,88px);
}
.ahf-design-page .ahf-feature-split > .e-con { width: 100% !important; min-width: 0; }
.ahf-design-page .ahf-feature-media img { display: block; width: 100%; aspect-ratio: 5/4; object-fit: cover; border-radius: var(--ahf-radius-card); }
.ahf-design-page :is(.ahf-about-archive,.ahf-about-operation) .ahf-feature-media img {
  aspect-ratio: 3/4;
  max-height: 620px;
  object-position: center;
}
.ahf-design-page .ahf-about-operation { background: var(--ahf-surface); }
.ahf-design-page .ahf-about-operation .ahf-feature-copy { order: 1; }
.ahf-design-page .ahf-about-operation .ahf-feature-media { order: 2; }
.ahf-design-page .ahf-feature-copy h2 {
  max-width: 18ch;
  color: var(--ahf-ink);
  font-family: Georgia,serif !important;
  font-size: clamp(2.5rem,4.2vw,3.75rem) !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em;
}
.ahf-design-page .ahf-feature-copy > .elementor-widget:nth-child(3) p { max-width: 56ch; margin: 22px 0 0; color: var(--ahf-muted); font-size: clamp(1rem,1.35vw,1.15rem); line-height: 1.7; }
.ahf-design-page .ahf-feature-copy .ahf-inner-actions { margin-top: 28px; }
.ahf-design-page .ahf-photo-section .ahf-inner-actions { margin-top: 8px; }

@media (max-width: 950px) {
  .ahf-design-page .ahf-page-intro,
  .ahf-design-page .ahf-feature-split { grid-template-columns: 1fr; }
  .ahf-design-page .ahf-page-intro-photo img { max-height: 470px; }
}
@media (max-width: 767px) {
  .ahf-design-page :is(#materials,#evaluation,#stair-details,#ahf-main-content) { scroll-margin-top: 120px; }
  .ahf-design-page .ahf-page-intro { gap: 32px; padding-top: 44px !important; padding-bottom: 54px !important; }
  .ahf-design-page .ahf-page-intro h1 { font-size: clamp(2.65rem,10vw,3.5rem) !important; }
  .ahf-design-page .ahf-intro-plain { padding-bottom: 8px !important; }
  .ahf-design-page .ahf-intro-plain h1 { font-size: clamp(3rem,12vw,4rem) !important; }
  .ahf-design-page .ahf-paths-direct,
  .ahf-design-page .ahf-gallery-direct { padding-top: 28px !important; }
  .ahf-design-page .ahf-page-intro-photo img,
  .ahf-design-page .ahf-intro-about .ahf-page-intro-photo img { aspect-ratio: 4/3; }
  .ahf-design-page .ahf-feature-split { gap: 32px; }
  .ahf-design-page .ahf-feature-copy h2 { font-size: clamp(2.15rem,9vw,2.8rem) !important; }
}

/* Service choices keep the home card structure on a light surface. */
.ahf-design-page .ahf-inner-service-card {
  gap: 0 !important;
  padding: 0 !important;
  border-color: var(--ahf-border);
  background: var(--ahf-surface);
}
.ahf-design-page .ahf-page-intro-copy,
.ahf-design-page .ahf-inner-service-grid,
.ahf-design-page .ahf-inner-photo-grid,
.ahf-design-page .ahf-inner-project-grid,
.ahf-design-page .ahf-inner-info-grid,
.ahf-design-page .ahf-inner-steps-grid,
.ahf-design-page .ahf-inner-related-links,
.ahf-design-page .ahf-feature-media,
.ahf-design-page .ahf-feature-copy,
.ahf-design-page .ahf-inner-section:not(.ahf-photo-section) > .ahf-inner-section-head { padding: 0 !important; }
.ahf-design-page .ahf-inner-service-card > .elementor-widget-image,
.ahf-design-page .ahf-inner-service-card > .elementor-widget-image .elementor-widget-container {
  display: block;
  width: 100% !important;
  padding: 0 !important;
}
.ahf-design-page .ahf-inner-service-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  object-fit: cover;
}
.ahf-design-page .ahf-inner-service-card-body {
  gap: 0 !important;
  min-height: 255px;
  padding: 28px !important;
}
.ahf-design-page .ahf-inner-service-card-body > .elementor-widget { margin: 0 !important; }
.ahf-design-page .ahf-inner-service-card h3 { color: var(--ahf-ink) !important; margin: 0 0 16px; }
.ahf-design-page .ahf-inner-service-card-body > .elementor-widget:nth-child(2) p {
  margin: 0 0 28px;
  color: var(--ahf-muted);
  font-size: 1rem;
  line-height: 1.6;
}
.ahf-design-page .ahf-inner-service-card .elementor-button {
  color: var(--ahf-walnut) !important;
  border-color: var(--ahf-walnut) !important;
}
.ahf-design-page .ahf-inner-service-card .elementor-button:hover {
  color: var(--ahf-ochre-light) !important;
  border-color: var(--ahf-ochre-light) !important;
}

/* Editorial facts use rules and spacing instead of a second card style. */
.ahf-design-page :is(.ahf-inner-info-grid,.ahf-inner-steps-grid) .ahf-inner-step,
.ahf-design-page .ahf-inner-note {
  gap: 0 !important;
  padding: 22px 0 0 !important;
  border: 0;
  border-top: 1px solid var(--ahf-border);
  border-radius: 0;
  background: transparent;
}
.ahf-design-page :is(.ahf-inner-info-grid,.ahf-inner-steps-grid) .ahf-inner-step > .elementor-widget:first-child p { margin: 0 0 16px; }
.ahf-design-page :is(.ahf-inner-info-grid,.ahf-inner-steps-grid) .ahf-inner-step > .elementor-widget:last-child p,
.ahf-design-page .ahf-inner-note p { margin: 12px 0 0; color: var(--ahf-muted); line-height: 1.65; }
.ahf-design-page .ahf-inner-note h3 { margin: 0; color: var(--ahf-ink); font-family: Poppins,sans-serif !important; font-size: clamp(1.25rem,1.8vw,1.6rem) !important; font-weight: 600 !important; }

/* Work photography fills the viewport width, following the home gallery. */
.ahf-design-page .ahf-photo-section,
.ahf-design-page .ahf-gallery-direct {
  gap: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.ahf-design-page .ahf-photo-section > .ahf-inner-section-head { padding: 0 clamp(20px,4.5vw,72px) 34px !important; }
.ahf-design-page .ahf-photo-section .ahf-inner-photo-grid,
.ahf-design-page .ahf-gallery-direct .ahf-inner-project-grid { gap: 0 !important; }
.ahf-design-page .ahf-inner-photo-grid > .elementor-widget-image,
.ahf-design-page .ahf-inner-photo-grid > .elementor-widget-image .elementor-widget-container { width: 100% !important; min-width: 0; padding: 0 !important; }
.ahf-design-page .ahf-inner-photo-grid img {
  width: 100%;
  aspect-ratio: 4/3;
  border-radius: 0;
}
.ahf-design-page .ahf-photo-section > .ahf-inner-actions { padding: 28px clamp(20px,4.5vw,72px) 0 !important; margin: 0; }
.ahf-design-page .ahf-gallery-direct { padding-bottom: 0 !important; }
.ahf-design-page .ahf-inner-project-card {
  position: relative;
  aspect-ratio: 4/3;
  gap: 0 !important;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: #242424;
}
.ahf-design-page .ahf-inner-project-card > .elementor-widget-image,
.ahf-design-page .ahf-inner-project-card > .elementor-widget-image .elementor-widget-container,
.ahf-design-page .ahf-inner-project-card > .elementor-widget-image a {
  display: block;
  width: 100% !important;
  height: 100% !important;
}
.ahf-design-page .ahf-inner-project-card img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; }
.ahf-design-page .ahf-inner-project-card-body {
  position: absolute !important;
  inset: auto 0 0;
  z-index: 1;
  width: 100% !important;
  gap: 4px !important;
  padding: 52px 22px 20px !important;
  background: linear-gradient(transparent,rgb(17 15 13 / 82%));
  pointer-events: none;
}
.ahf-design-page .ahf-inner-project-card-body > .elementor-widget { margin: 0 !important; }
.ahf-design-page .ahf-inner-project-card-body > .elementor-widget:first-child p { margin: 0 0 4px; color: var(--ahf-gold); }
.ahf-design-page .ahf-inner-project-card .ahf-inner-project-card-body h3 { margin: 0; color: #fff !important; font-size: clamp(1.1rem,1.45vw,1.35rem) !important; line-height: 1.3 !important; }

.ahf-design-page .ahf-stairs-lead-image,
.ahf-design-page .ahf-stairs-lead-image > .elementor-widget-image,
.ahf-design-page .ahf-stairs-lead-image .elementor-widget-container { width: 100% !important; padding: 0 !important; }
.ahf-design-page .ahf-stairs-lead-image img { display: block; width: 100%; height: clamp(400px,54vw,720px); object-fit: cover; object-position: center 42%; }
.ahf-design-page .ahf-intro-stairs { padding-bottom: clamp(44px,4.5vw,66px) !important; }
.ahf-design-page .ahf-stairs-bridge { gap: 28px; }

@media (min-width: 768px) and (max-width: 1100px) {
  .ahf-design-page .ahf-inner-photo-grid { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
  .ahf-design-page .ahf-inner-service-grid > .ahf-inner-service-card:last-child { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
  .ahf-design-page .ahf-inner-service-card-body { min-height: 0; padding: 24px !important; }
  .ahf-design-page .ahf-inner-service-card img { height: auto; }
  .ahf-design-page .ahf-inner-photo-grid { grid-template-columns: 1fr !important; }
  .ahf-design-page .ahf-stairs-lead-image img { height: 340px; }
  .ahf-design-page .ahf-photo-section > .ahf-inner-section-head { padding-bottom: 24px !important; }
}

/* Shared interior rhythm: Elementor's container gaps and padding must not double the text spacing. */
.ahf-design-page :is(.ahf-page-intro-copy,.ahf-inner-section-head,.ahf-feature-copy,.ahf-assessment-card) { gap: 0 !important; }
.ahf-design-page .ahf-inner-actions,
.ahf-design-page .ahf-inner-actions > .e-con { padding: 0 !important; }
.ahf-design-page .ahf-inner-cta > .elementor-widget:nth-child(3) p { margin: 20px 0 24px; }
