/* Attia Journey 1.1.0
 * Viewport-sized presentation panels, compact cards, and readable document flow.
 * Loaded after the content plugin's styles. No imported content is rewritten.
 */
:root {
  --attia-vh: 100vh;
  --attia-admin-height: 0px;
  --attia-header-size: 76px;
  --attia-header-height: var(--attia-header-size);
  --attia-offset: calc(var(--attia-admin-height) + var(--attia-header-height));
  --attia-screen: calc(var(--attia-vh) - var(--attia-admin-height));
  --attia-panel: calc(var(--attia-vh) - var(--attia-offset));
  --attia-space: clamp(16px, 3vh, 32px);
}
@supports (height: 100svh) { :root { --attia-vh: 100svh; } }
@supports (height: 100dvh) { :root { --attia-vh: 100dvh; } }
html:has(body.admin-bar) { --attia-admin-height: 32px; }
html { scroll-padding-top: calc(var(--attia-offset) + 12px); }
.attia-wordpress { --page-gutter: clamp(20px, 4vw, 80px); }
.attia-wordpress *, .attia-wordpress *::before, .attia-wordpress *::after { box-sizing: border-box; }
.attia-wordpress main { min-width: 0; }
.attia-wordpress .section-wrap,
.attia-wordpress .sticky-scene > .section-wrap,
.attia-wordpress .bim_article_wrap {
  width: min(1280px, calc(100% - var(--page-gutter) * 2));
  margin-inline: auto;
}
.attia-wordpress :is(h1, h2, h3, p, a, dd) { overflow-wrap: break-word; }
.attia-wordpress :is(.chapter-grid, .contact-layout, .about-grid, .academy-intro) > * { min-width: 0; }
.attia-wordpress #main section[id] { scroll-margin-top: 12px; }
.attia-wordpress [data-attia-scroll-focus]:focus-visible {
  outline: 2px solid #b37adb;
  outline-offset: -3px;
}
.attia-wordpress :is(.career-map-story, .sticky-scene, .ink-production-sticky,
  .bim_management_scene, .bim_management_integration, .overall-integration,
  .bim_article_hero, .yas_riva_hero, .case-head, .attia-entry-header,
  .about-copy, .attia-interests, .contact-layout) {
  scrollbar-width: thin;
  scrollbar-gutter: stable;
}

/* Keep the fixed header and WordPress toolbar outside the usable panel area. */
.attia-wordpress .site-header {
  height: var(--attia-header-size);
  top: var(--attia-admin-height);
  padding-inline: var(--page-gutter);
  gap: 20px;
}
.attia-wordpress .brand { min-width: 0; gap: 12px; }
.attia-wordpress .brand img { width: 58px; height: 40px; object-fit: contain; }
.attia-wordpress .brand strong { font-size: 16px; }
.attia-wordpress .brand-role { font-size: 10px; }
.attia-wordpress .attia-header-nav { gap: clamp(12px, 1.6vw, 24px); }
.attia-wordpress .attia-header-nav a { min-height: 44px; display: inline-flex; align-items: center; }
.attia-wordpress .attia-menu-toggle { min-height: 44px; flex-shrink: 0; }
.attia-wordpress .attia-menu-panel { margin-top: 0; }
.attia-wordpress .attia-menu-panel[data-open=true] {
  top: var(--attia-offset);
  max-height: var(--attia-panel);
  overflow-y: auto;
  padding: 16px var(--page-gutter) 24px;
}
.attia-wordpress .attia-menu-panel ul { gap: 2px; }
.attia-wordpress .attia-menu-panel a { display: flex; align-items: center; min-height: 44px; }
.attia-wordpress .site-footer { padding: 24px var(--page-gutter); gap: 18px; }

/* Home cover: the header, name, portrait and links share one screen. */
.attia-wordpress .hero {
  height: var(--attia-screen);
  min-height: 0;
  padding-top: var(--attia-header-height);
}
.attia-wordpress .hero-content {
  inset: var(--attia-header-height) var(--page-gutter) 68px;
  padding-top: 18px;
}
.attia-wordpress .hero-title {
  top: clamp(52px, 8vh, 90px);
  font-size: clamp(64px, min(20vw, 24vh), 245px);
  line-height: .92;
}
.attia-wordpress .hero-information { bottom: 12px; width: min(31%, 350px); }
.attia-wordpress .hero-description { font-size: clamp(14px, 1.25vw, 18px); line-height: 1.6; margin-top: 18px; }
.attia-wordpress .hero-portrait {
  height: calc(var(--attia-panel) - 80px);
  max-height: 74%;
  max-width: 48%;
  bottom: 68px;
  right: calc(var(--page-gutter) + 1vw);
}
.attia-wordpress .hero-bottom { height: 68px; min-height: 68px; }

/* Normal page headings no longer consume most of a laptop screen. */
.attia-wordpress .page-head { padding: calc(var(--attia-header-height) + var(--attia-space)) 0 var(--attia-space); }
.attia-wordpress .page-head h1 {
  font-size: clamp(34px, min(5.5vw, 8vh), 76px);
  line-height: 1.08;
  margin: 16px 0;
}
.attia-wordpress .page-head .intro { font-size: clamp(15px, 1.35vw, 18px); line-height: 1.65; max-width: 65ch; }
.attia-wordpress .eyebrow { font-size: 12px; line-height: 1.6; }

/* Career: reserve space for the heading, controls and a scrollable story.
 * The stage remains sticky on laptops, even below the old 780px cutoff.
 */
.attia-wordpress .career-map { --career-intro-height: clamp(84px, 13vh, 116px); }
.attia-wordpress .career-map-combined .career-map-intro {
  height: var(--career-intro-height);
  padding: 12px 0;
  margin-bottom: calc(0px - var(--career-intro-height));
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 24px;
  position: sticky;
  top: var(--attia-offset);
  z-index: 3;
  background: #0e0d11;
  overflow: auto;
}
.attia-wordpress .career-map-combined .career-map-intro h2 { font-size: clamp(24px, min(3vw, 4.3vh), 40px); line-height: 1.06; }
.attia-wordpress .career-map-combined .career-map-intro > p { font-size: 14px; line-height: 1.5; max-width: 52ch; }
.attia-wordpress .career-map-combined .career-map-track { height: 540svh; }
.attia-wordpress .career-map-combined .career-map-stage {
  position: sticky;
  top: var(--attia-offset);
  height: var(--attia-panel);
  min-height: 0;
  padding: calc(var(--career-intro-height) + 8px) 0 12px;
  gap: 10px;
}
.attia-wordpress .career-map-topline { flex-shrink: 0; min-height: 30px; }
.attia-wordpress :is(.career-map-topline > .eyebrow, .career-map-skip, .career-map-live, .career-map-tools button) { font-size: 12px; }
.attia-wordpress .career-map-skip { min-height: 30px; }
.attia-wordpress .career-map-path { gap: 0; overflow-x: auto; overflow-y: hidden; }
.attia-wordpress .career-map-combined .career-map-path > button { min-height: 80px; padding: 4px 12px 6px 0; }
.attia-wordpress .career-path-period { margin-bottom: 6px; font-size: 12px; }
.attia-wordpress .career-map-path > button::after { top: 32px; }
.attia-wordpress .career-map-path > button > i { width: 8px; height: 8px; margin-bottom: 6px; }
.attia-wordpress .career-map-path > button > strong { font-size: 14px; line-height: 1.3; }
.attia-wordpress .career-path-place { display: block; font-size: 11px; line-height: 1.4; margin-top: 3px; }
.attia-wordpress .career-map-combined .career-map-layout {
  flex: 1 1 0;
  min-height: 0;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  grid-template-rows: minmax(0, 1fr);
  gap: 24px;
}
.attia-wordpress .career-map-combined .career-map-story {
  align-self: stretch;
  min-height: 0;
  max-height: 100%;
  overflow: auto;
  padding: 4px 12px 8px 0;
}
.attia-wordpress .career-map-story-content { min-height: 0; display: block; }
.attia-wordpress .career-map-combined .career-map-context { margin-bottom: 6px; font-size: 12px; }
.attia-wordpress .career-map-combined .career-map-story h3 { font-size: clamp(27px, min(3.5vw, 5vh), 48px); line-height: 1.1; margin-bottom: 6px; }
.attia-wordpress .career-map-combined .career-map-employer { font-size: 16px; margin-top: 6px; }
.attia-wordpress .career-map-role-block { margin: 10px 0; padding-left: 12px; }
.attia-wordpress .career-map-role-block > .eyebrow { font-size: 11px; }
.attia-wordpress .career-map-combined .career-map-role { font-size: 18px; line-height: 1.35; }
.attia-wordpress .career-map-combined .career-map-description { display: block; font-size: 15px; line-height: 1.6; }
.attia-wordpress .career-map-concurrent { font-size: 12px; line-height: 1.5; }
.attia-wordpress .career-map-combined .career-map-projects { margin-top: 12px; }
.attia-wordpress .career-map-combined .career-map-projects > .eyebrow { display: block; font-size: 11px; margin-bottom: 5px; }
.attia-wordpress .career-map-combined .career-map-project { min-height: 44px; padding: 7px 0; gap: 12px; }
.attia-wordpress .career-map-combined .career-map-project strong { font-size: 16px; line-height: 1.35; }
.attia-wordpress .career-map-combined .career-map-project small { display: block; font-size: 12px; line-height: 1.5; }
.attia-wordpress .career-map-combined .career-map-stage-link { font-size: 13px; padding-top: 12px; }
.attia-wordpress .career-map-figure { min-height: 0; height: 100%; }
.attia-wordpress .career-map-tools { top: 10px; right: 10px; left: 10px; }
.attia-wordpress .career-map-tools button { min-height: 36px; padding: 6px 10px; }
.attia-wordpress .career-map-caption { font-size: 11px; }
.attia-wordpress .career-map-caption > a { font-size: 11px; }
.attia-wordpress .career-map-combined .career-map-footer { min-height: 52px; padding-top: 6px; gap: 10px; }
.attia-wordpress .career-map-footer :is(.career-map-bottomline, .career-map-scroll-hint, .career-map-manual-hint) { font-size: 12px; line-height: 1.45; }
.attia-wordpress .career-map-combined .career-map-bottomline > .career-map-scroll-hint { display: block; }
.attia-wordpress .career-map-combined .career-map-bottomline > .career-map-manual-hint { display: none; }
.attia-wordpress .career-map-footer .career-map-arrows { display: flex; flex-shrink: 0; }
.attia-wordpress .career-map-footer .career-map-arrows > button { width: 44px; height: 44px; }
.attia-wordpress .career-map-extra-places { flex-wrap: wrap; gap: 4px; }
.attia-wordpress .career-map-extra-places > button { font-size: 12px; min-height: 44px; padding: 6px 10px; }
.attia-wordpress .career-map-progress { flex-shrink: 0; }

/* Presentation scenes use the remaining height. Extra text can still scroll. */
.attia-wordpress :is(.sticky-scene, .ink-production-sticky, .bim_management_scene,
  .bim_management_manager[data-pinned=true] .bim_management_scene) {
  top: var(--attia-offset);
  height: var(--attia-panel);
  min-height: 0;
  display: block;
  overflow: auto;
  padding-block: var(--attia-space);
}
.attia-wordpress :is(#architect, .bim_management_integration, .overall-integration,
  .selected-projects, .knowledge-section, .journal-preview, .closing) {
  height: var(--attia-panel);
  min-height: 0;
  overflow: auto;
  display: block;
  padding-block: var(--attia-space);
}
.attia-wordpress :is(.chapter-header, .sticky-scene .chapter-header, .bim_management_chapterHeader) { margin-bottom: 22px; padding-bottom: 12px; gap: 12px; flex-wrap: wrap; }
.attia-wordpress :is(.chapter-copy h2, .scene-title, .production-title,
  .ink-production-copy > h2, .bim_management_managerTitle) {
  font-size: clamp(30px, min(4.2vw, 6.5vh), 62px);
  line-height: 1.08;
  margin: 14px 0 18px;
}
.attia-wordpress :is(.chapter-copy p, .scene-description, .ink-intro, .bim_management_intro) { font-size: 16px; line-height: 1.65; }
.attia-wordpress :is(.scene-index, .chapter-copy .eyebrow, .bim_management_kicker) { margin-bottom: 12px; }
.attia-wordpress .architecture-quote { font-size: clamp(18px, 2vw, 25px); margin: 24px 0 0 20%; }
.attia-wordpress :is(.chapter-grid, .ink-production-grid, .bim_management_managerGrid) { gap: 4%; min-height: 0; }
.attia-wordpress .sticky-scene .chapter-grid { min-height: 0; }
.attia-wordpress .technical-svg { max-height: min(42vh, 380px); object-fit: contain; }
.attia-wordpress .sticky-scene .diagram-panel .technical-svg { height: min(42vh, 360px); min-height: 0; }
.attia-wordpress :is(.scene-keywords, .scene-control, .diagram-status, .diagram-caption) { font-size: 12px; gap: 10px; margin-top: 12px; }
.attia-wordpress .ink-view { height: clamp(180px, 40vh, 420px); }
.attia-wordpress .ink-step-copy { min-height: 0; margin-top: 18px; padding-top: 14px; }
.attia-wordpress .ink-step-copy > p { font-size: 15px; line-height: 1.6; }
.attia-wordpress .ink-step-copy h3 { font-size: 19px; margin: 10px 0; }
.attia-wordpress .ink-view-credit { font-size: 11px; padding: 8px 0; }
.attia-wordpress .ink-stage-controls > button { min-height: 44px; padding: 10px 6px; font-size: 12px; }
.attia-wordpress .bim_management_diagram { grid-template-rows: auto 60px auto; gap: 10px; }
.attia-wordpress .bim_management_node { padding: 10px 12px; }
.attia-wordpress .bim_management_node > strong { font-size: 14px; }
.attia-wordpress .bim_management_nodeDetail { font-size: 12px; }
.attia-wordpress .bim_management_core { padding: 10px; }
.attia-wordpress .bim_management_core > strong { font-size: 20px; }
.attia-wordpress .bim_management_tab[data-slot=tabs-trigger] { min-height: 44px; padding: 8px; font-size: 12px; }
.attia-wordpress .bim_management_phaseContent[data-slot=tabs-content] { min-height: 0; padding-top: 14px; }
.attia-wordpress .bim_management_phaseContent h3 { font-size: 21px; }
.attia-wordpress .bim_management_phaseContent p { font-size: 14px; line-height: 1.6; }
.attia-wordpress .bim_management_integrationInner { gap: 18px; }
.attia-wordpress .bim_management_integrationTitle { font-size: clamp(28px, min(4vw, 6vh), 56px); }
.attia-wordpress .bim_management_hours { margin-top: 20px; padding-top: 20px; }
.attia-wordpress .integration-heading h2 { font-size: clamp(30px, min(4.3vw, 6vh), 58px); }
.attia-wordpress .integration-dashboard { margin-top: 26px; padding: 20px; }
.attia-wordpress .dashboard-metrics { margin: 18px auto; padding-block: 12px; }
.attia-wordpress .dashboard-metric > strong { font-size: clamp(32px, 5vw, 60px); }
.attia-wordpress .collection-heading { gap: 4%; margin-bottom: 24px; }
.attia-wordpress :is(.collection-heading h2, .amso-home h2, .journal-preview > .section-wrap > h2, .closing h2) { font-size: clamp(32px, min(4.7vw, 7vh), 68px); margin: 16px 0 22px; }
.attia-wordpress :is(.collection-heading > div:last-child > p, .amso-home .knowledge-intro > p) { font-size: 16px; line-height: 1.6; }
.attia-wordpress .amso-home-signature { padding: 16px 0; }
.attia-wordpress .amso-home-signature > img { max-width: 330px; }
.attia-wordpress .amso-home .knowledge-intro { margin-top: 20px; gap: 24px; }
.attia-wordpress .amso-home .academy-strip { margin-top: 24px; }
.attia-wordpress .amso-home .academy-strip > div { padding-block: 16px; }
.attia-wordpress .amso-home .academy-strip .eyebrow { margin-bottom: 10px; }
.attia-wordpress .amso-home .academy-strip h3 { font-size: 20px; }
.attia-wordpress .amso-home .academy-strip p { font-size: 15px; }
.attia-wordpress .closing-tags { margin-top: 24px; gap: 12px 24px; }

/* Projects: consistent, smaller tiles including stages with a single project. */
.attia-wordpress .work-stage { height: var(--attia-panel); min-height: 0; padding-block: var(--attia-space); overflow: auto; }
.attia-wordpress .work-stage-heading { grid-template-columns: 44px minmax(0, 1fr); gap: 20px; }
.attia-wordpress .work-stage-number { font-size: 36px; }
.attia-wordpress .work-stage-heading h2 { margin: 10px 0; font-size: clamp(26px, 3vw, 44px); }
.attia-wordpress .work-stage-role { font-size: 17px; }
.attia-wordpress .work-stage-summary { padding-left: 64px; margin: 22px 0; gap: 5%; }
.attia-wordpress .work-stage-summary > h3 { font-size: 24px; }
.attia-wordpress .work-stage-summary > div > p { font-size: 16px; line-height: 1.65; }
.attia-wordpress .work-stage-navigation { gap: 16px; margin-bottom: 0; }
.attia-wordpress .work-stage-navigation > a { font-size: 14px; padding-block: 10px; }
.attia-wordpress .work-stage-navigation > a > span { font-size: 11px; }
.attia-wordpress :is(.work-stage-cases, .work-stage-cases.single-case) {
  grid-template-columns: repeat(3, minmax(0, 340px));
  gap: 26px 22px;
  padding-left: 64px;
  margin: 24px 0;
  align-items: stretch;
}
.attia-wordpress .selected-project-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.attia-wordpress .work-stage-cases.single-case .project-card { display: flex; flex-direction: column; grid-column: auto; }
.attia-wordpress .work-stage-cases.single-case .project-card > * { grid-area: auto; }
.attia-wordpress .project-card { min-width: 0; }
.attia-wordpress :is(.project-card-image, .work-stage-cases .project-card-image, .work-stage-cases.single-case .project-card-image) {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  max-height: 205px;
  flex-shrink: 0;
}
.attia-wordpress :is(.project-card h3, .work-stage-cases .project-card h3,
  .work-stage-cases .project-card[data-project=special-task-accommodation] h3) {
  font-size: clamp(23px, 2vw, 30px);
  line-height: 1.15;
  margin: 12px 0 8px;
}
.attia-wordpress .project-card-meta { gap: 6px 12px; padding: 10px 0 8px; font-size: 11px; }
.attia-wordpress :is(.project-card-role, .project-card-intro) { font-size: 14px; line-height: 1.65; }
.attia-wordpress .project-card-company { font-size: 11px; margin: 4px 0 10px; }
.attia-wordpress .project-card-intro { margin-bottom: 14px; }
.attia-wordpress .project-card-link { min-height: 44px; padding-top: 8px; font-size: 14px; }
.attia-wordpress .project-card-open { width: 32px; height: 32px; bottom: 8px; right: 8px; }

/* Listing pages occupy one screen; a larger collection scrolls within its list. */
.attia-wordpress:is(.attia-page-writing, .attia-page-interests, .attia-page-contact) #main {
  height: var(--attia-screen);
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-top: var(--attia-header-height);
}
.attia-wordpress:is(.attia-page-writing, .attia-page-interests, .attia-page-contact) .page-head {
  padding: 20px 0;
  flex: 0 0 auto;
  max-height: 45%;
  overflow: auto;
}
.attia-wordpress:is(.attia-page-writing, .attia-page-interests, .attia-page-contact) .page-head h1 {
  font-size: clamp(28px, min(4.3vw, 6vh), 60px);
  margin: 10px 0;
}
.attia-wordpress:is(.attia-page-writing, .attia-page-interests) #main { background: #f7f7f5; color: #111; }
.attia-wordpress:is(.attia-page-writing, .attia-page-interests) .page-head .intro { color: #62576e; }
.attia-wordpress.attia-page-writing #main > section,
.attia-wordpress.attia-page-interests .attia-interests,
.attia-wordpress.attia-page-contact .contact-layout {
  flex: 1 1 0;
  min-height: 0;
  overflow: auto;
  /* Imported writing pages have an inline 80px bottom padding. */
  padding-block: 0 24px !important;
}
.attia-wordpress .attia-filter { gap: 8px; margin: 0 0 18px; }
.attia-wordpress .attia-filter a { padding: 7px 15px; min-height: 40px; font-size: 13px; }
.attia-wordpress :is(.article_card_grid, .article_card_homeGrid) { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: start; }
.attia-wordpress .article_card_cover { height: clamp(100px, 17vh, 175px); aspect-ratio: auto; }
.attia-wordpress .article_card_open { width: 30px; height: 30px; right: 8px; bottom: 8px; }
.attia-wordpress .article_card_meta { padding: 8px 0; font-size: 11px; gap: 4px 10px; }
.attia-wordpress .article_card_status { margin-top: 8px; font-size: 11px; }
.attia-wordpress :is(.article_card_title, .article_card_homeGrid .article_card_title) { font-size: clamp(18px, 1.6vw, 22px); line-height: 1.35; margin: 8px 0 10px; }
.attia-wordpress .article_card_title[dir=rtl] { line-height: 1.6; }
.attia-wordpress .article_card_summary { font-size: 14px; line-height: 1.6; margin-bottom: 12px; }
.attia-wordpress .article_card_summary[dir=rtl] { line-height: 1.8; }
.attia-wordpress .article_card_action { min-height: 40px; padding-top: 8px; font-size: 13px; }
.attia-wordpress .attia-interest-grid { gap: 18px 28px; }
.attia-wordpress .attia-interest-grid article { padding: 18px 0; }
.attia-wordpress .attia-interest-grid h2 { font-size: 22px; }
.attia-wordpress .attia-interest-grid p { font-size: 15px; margin-top: 8px; line-height: 1.65; }

/* Article and case-study covers fit a screen; their full text stays in flow. */
.attia-wordpress :is(.bim_article_hero, .yas_riva_hero, .case-head, .attia-entry-header) {
  height: var(--attia-screen);
  min-height: 0;
  overflow: auto;
  padding-top: calc(var(--attia-header-height) + var(--attia-space));
  padding-bottom: var(--attia-space);
}
.attia-wordpress .bim_article_heroGrid { grid-template-columns: minmax(0, 1fr) minmax(170px, 25%); gap: 4%; margin-top: clamp(18px, 4vh, 42px); }
.attia-wordpress .bim_article_hero h1 { font-size: clamp(27px, min(3.4vw, 5.4vh), 44px); line-height: 1.2; }
.attia-wordpress .bim_article_root[dir=rtl] .bim_article_hero h1 { line-height: 1.65; letter-spacing: 0; }
.attia-wordpress .bim_article_kicker { margin-bottom: 12px; font-size: 12px; }
.attia-wordpress .bim_article_byline { margin-top: 18px; padding-block: 12px; font-size: 12px; gap: 8px 18px; }
.attia-wordpress .bim_article_heroActions { margin-top: 14px; gap: 8px 20px; }
.attia-wordpress .bim_article_heroActions a { font-size: 13px; min-height: 44px; }
.attia-wordpress .bim_article_cover { max-width: 275px; justify-self: end; }
.attia-wordpress .bim_article_cover img { max-height: 48vh; object-fit: contain; }
.attia-wordpress .bim_article_cover figcaption { margin-top: 8px; font-size: 11px; }
.attia-wordpress .bim_roles_article_titlePrefix { margin-bottom: 8px; }
.attia-wordpress .bim_roles_article_titleAside { margin-top: 8px; }
.attia-wordpress .bim_article_contents { top: calc(var(--attia-offset) + 18px); max-height: calc(var(--attia-panel) - 36px); }
.attia-wordpress .yas_riva_sidebar { top: calc(var(--attia-offset) + 18px); max-height: calc(var(--attia-panel) - 36px); overflow: auto; }
.attia-wordpress :is(.yas_riva_hero h1, .case-head h1) { font-size: clamp(36px, min(5.7vw, 8vh), 84px); line-height: 1.1; margin: 24px 0; }
.attia-wordpress .yas_riva_hero h1 > span { margin-top: 8px; }
.attia-wordpress :is(.yas_riva_heroDescription, .case-head .case-subtitle) { font-size: clamp(15px, 1.6vw, 20px); line-height: 1.7; margin-top: 20px; }
.attia-wordpress :is(.yas_riva_facts, .case-facts, .case-facts-expanded) { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin-top: 24px; padding-top: 18px; }
.attia-wordpress :is(.yas_riva_facts dt, .case-facts dt) { font-size: 11px; }
.attia-wordpress :is(.yas_riva_facts dd, .case-facts dd) { font-size: 15px; line-height: 1.6; }
.attia-wordpress .attia-entry-header h1 { font-size: clamp(28px, min(4vw, 6vh), 56px); }
.attia-wordpress .attia-entry-cover { max-height: 35vh; width: auto; max-width: 100%; object-fit: contain; margin-top: 20px; }

/* Supporting pages use the same scale and sensible image/form dimensions. */
.attia-wordpress.attia-page-about .page-head { padding-bottom: 20px; }
.attia-wordpress.attia-page-about .about-grid { height: calc(var(--attia-screen) - var(--attia-pagehead-height, 280px)); min-height: 0; padding-bottom: 24px; gap: 5%; align-items: stretch; overflow: auto; }
.attia-wordpress .about-portrait.about-portrait-suit { min-height: 0; height: 100%; }
.attia-wordpress .about-portrait.about-portrait-suit > img { height: 110%; max-width: 115%; object-fit: contain; }
.attia-wordpress .about-portrait.about-portrait-suit > .about-word { font-size: clamp(26px, 3.5vw, 48px); top: 18px; left: 16px; }
.attia-wordpress .about-copy { min-height: 0; overflow: auto; padding-right: 12px; }
.attia-wordpress .about-grid .about-copy p { font-size: 16px; line-height: 1.75; margin-bottom: 18px; }
.attia-wordpress .contact-layout { gap: 5%; align-content: start; }
.attia-wordpress .contact-layout h2 { font-size: 23px; margin-bottom: 12px; }
.attia-wordpress .contact-layout p { font-size: 15px; line-height: 1.6; margin-bottom: 16px; }
.attia-wordpress .contact-form label { font-size: 11px; margin-bottom: 14px; }
.attia-wordpress .contact-form :is(input, textarea) { padding: 10px 0; font-size: 16px; }
.attia-wordpress .contact-form textarea { min-height: 80px; height: 80px; }
.attia-wordpress .contact-channels { margin-top: 16px; }
.attia-wordpress .contact-channels a { padding-block: 10px; font-size: 15px; min-height: 44px; }
.attia-wordpress .amso-academy .page-head { height: var(--attia-screen); overflow: auto; padding-bottom: var(--attia-space); }
.attia-wordpress .amso-academy .page-head h1 { font-size: clamp(32px, min(5.6vw, 8.5vh), 78px); }
.attia-wordpress .amso-academy .page-head .intro { font-size: 17px; }
.attia-wordpress .amso-academy .academy-intro { gap: 4%; }
.attia-wordpress .amso-academy .academy-mark { max-width: 400px; padding-block: 22px; }
.attia-wordpress .amso-academy .academy-mark > span { margin-top: 14px; font-size: 13px; }

@media (max-width: 1100px) {
  .attia-wordpress .selected-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .attia-wordpress :is(.work-stage-cases, .work-stage-cases.single-case) { grid-template-columns: repeat(2, minmax(0, 340px)); }
  .attia-wordpress .bim_management_managerGrid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
}
@media (max-width: 1000px) {
  :root { --attia-header-size: 64px; }
  .attia-wordpress .attia-header-nav { display: none; }
  .attia-wordpress .attia-menu-toggle { display: block; background: transparent; border: 1px solid #ffffff70; padding: 8px 12px; color: #fff; }
  .attia-wordpress .attia-menu-panel[data-open=true] { display: block; position: fixed; inset-inline: 0; background: #111; z-index: 99; }
  .attia-wordpress .journey-rail { display: none; }
  .attia-wordpress .career-map-combined .career-map-track { height: auto; }
  .attia-wordpress .career-map-combined :is(.career-map-intro, .career-map-stage) { position: relative; top: auto; }
  .attia-wordpress .career-map-combined .career-map-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); }
  .attia-wordpress .career-map-figure, .attia-wordpress .career-map-combined .career-map-story { grid-row: auto; }
  .attia-wordpress .career-map-combined .career-map-bottomline > .career-map-scroll-hint { display: none; }
  .attia-wordpress .career-map-combined .career-map-bottomline > .career-map-manual-hint { display: block; }
  .attia-wordpress .career-map-path { grid-auto-columns: minmax(145px, 1fr); }
  .attia-wordpress .career-map-path > button { flex-basis: 145px; }
  .attia-wordpress .work-stage-heading { grid-template-columns: 36px minmax(0, 1fr); gap: 14px; }
  .attia-wordpress :is(.work-stage-summary, .work-stage-cases, .work-stage-cases.single-case) { padding-left: 50px; }
  .attia-wordpress .amso-academy .academy-intro { grid-template-columns: 1.25fr .75fr; }
}
@media (max-width: 782px) {
  html:has(body.admin-bar) { --attia-admin-height: 46px; }
  .attia-wordpress #wpadminbar { position: fixed; }
}
@media (max-width: 760px) {
  .attia-wordpress .hero-information { width: 46%; }
  .attia-wordpress .hero-portrait { max-width: 59%; height: calc(var(--attia-panel) - 130px); }
  .attia-wordpress .hero-title { font-size: clamp(64px, min(23vw, 20vh), 150px); }
  .attia-wordpress .hero-description { font-size: 14px; }
  .attia-wordpress .hero-bottom { gap: 10px; font-size: 11px; }
  .attia-wordpress .career-map { --career-intro-height: 100px; }
  .attia-wordpress .career-map-combined .career-map-intro { grid-template-columns: .9fr 1.1fr; gap: 12px; }
  .attia-wordpress .career-map-combined .career-map-intro h2 { font-size: 24px; }
  .attia-wordpress .career-map-combined .career-map-intro > p { font-size: 12px; }
  .attia-wordpress .career-map-combined .career-map-stage { gap: 8px; }
  .attia-wordpress .career-map-combined .career-map-path > button { min-height: 76px; }
  .attia-wordpress .career-map-combined .career-map-layout { grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, .8fr) minmax(0, 1fr); gap: 12px; }
  .attia-wordpress .career-map-figure { grid-row: 1; min-height: 0; }
  .attia-wordpress .career-map-combined .career-map-story { grid-row: 2; }
  .attia-wordpress .career-map-combined .career-map-story h3 { font-size: 26px; }
  .attia-wordpress .career-map-tools { top: 6px; left: 6px; right: 6px; }
  .attia-wordpress .career-map-live { font-size: 10px; }
  .attia-wordpress :is(.chapter-grid, .ink-production-grid, .bim_management_managerGrid) { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .attia-wordpress .technical-svg { max-height: 27vh; }
  .attia-wordpress .sticky-scene .diagram-panel .technical-svg { height: 27vh; }
  .attia-wordpress .architecture-quote { margin-left: 0; }
  .attia-wordpress .amso-home-heading { grid-template-columns: 1fr 1fr; gap: 16px; }
  .attia-wordpress .amso-home-signature > span { font-size: 11px; margin-top: 12px; }
  .attia-wordpress .amso-home h2 { font-size: 30px; }
  .attia-wordpress .collection-heading { grid-template-columns: 1fr; gap: 12px; }
  .attia-wordpress .collection-heading > div:last-child { justify-self: start; max-width: none; }
  .attia-wordpress :is(.work-stage-cases, .work-stage-cases.single-case, .work-stage-summary) { padding-left: 0; }
  .attia-wordpress .work-stage-navigation { grid-auto-columns: minmax(150px, 1fr); overflow-x: auto; }
  .attia-wordpress .work-stage-summary { grid-template-columns: 1fr; gap: 14px; }
  .attia-wordpress .work-stage-number { font-size: 28px; }
  .attia-wordpress :is(.article_card_grid, .article_card_homeGrid) { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .attia-wordpress .article_card_link { display: grid; grid-template-columns: 92px minmax(0, 1fr); align-content: start; column-gap: 14px; }
  .attia-wordpress .article_card_link > * { grid-column: 2; min-width: 0; }
  .attia-wordpress .article_card_cover { grid-column: 1; grid-row: 1 / 6; height: 125px; }
  .attia-wordpress .article_card_meta { padding-top: 0; font-size: 10px; }
  .attia-wordpress :is(.article_card_title, .article_card_homeGrid .article_card_title) { font-size: 17px; margin: 6px 0 10px; }
  .attia-wordpress .article_card_summary { font-size: 14px; }
  .attia-wordpress .article_card_action { grid-column: 1 / -1; }
  .attia-wordpress .attia-interest-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .attia-wordpress .bim_article_topBar { gap: 8px; }
  .attia-wordpress .bim_article_backLink { font-size: 11px; letter-spacing: 0; }
  .attia-wordpress .bim_article_languages a { padding: 6px 10px; font-size: 12px; }
  .attia-wordpress .bim_article_heroGrid { grid-template-columns: minmax(0, 1fr) 100px; gap: 12px; margin-top: 18px; }
  .attia-wordpress .bim_article_heroGrid > div { display: contents; }
  .attia-wordpress .bim_article_kicker { grid-column: 1 / -1; grid-row: 1; margin: 0; }
  .attia-wordpress .bim_article_hero h1 { grid-column: 1 / -1; grid-row: 2; font-size: clamp(22px, 4.5vw, 30px); margin: 0; }
  .attia-wordpress .bim_article_byline { grid-column: 1; grid-row: 3; margin: 0; padding-block: 10px; align-content: start; font-size: 11px; gap: 6px; }
  .attia-wordpress .bim_article_byline > span { width: 100%; }
  .attia-wordpress .bim_article_cover { grid-column: 2; grid-row: 3; max-width: 100%; width: 100%; }
  .attia-wordpress .bim_article_cover img { height: 125px; max-height: none; width: 100%; object-fit: contain; }
  .attia-wordpress .bim_article_cover figcaption { font-size: 10px; line-height: 1.5; }
  .attia-wordpress .bim_article_heroActions { grid-row: 4; grid-column: 1 / -1; margin: 0; gap: 8px 16px; }
  .attia-wordpress .bim_article_contents { top: auto; max-height: none; overflow: visible; }
  .attia-wordpress .yas_riva_sidebar { position: static; max-height: none; }
  .attia-wordpress :is(.yas_riva_hero h1, .case-head h1) { font-size: clamp(30px, min(8vw, 7vh), 52px); margin: 20px 0; }
  .attia-wordpress :is(.yas_riva_facts, .case-facts, .case-facts-expanded) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .attia-wordpress.attia-page-about .about-grid { grid-template-columns: .8fr 1.2fr; gap: 20px; }
  .attia-wordpress .about-portrait.about-portrait-suit > .about-word { font-size: 22px; }
  .attia-wordpress .contact-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 480px) {
  .attia-wordpress { --page-gutter: 18px; }
  .attia-wordpress .site-header { gap: 8px; }
  .attia-wordpress .brand { gap: 8px; }
  .attia-wordpress .brand img { width: 36px; height: 34px; }
  .attia-wordpress .brand strong { font-size: 13px; }
  .attia-wordpress .brand-role { font-size: 9px; letter-spacing: 0; }
  .attia-wordpress .attia-menu-toggle { font-size: 12px; padding-inline: 10px; }
  .attia-wordpress .hero-content { bottom: 68px; }
  .attia-wordpress .hero-information { width: 47%; }
  .attia-wordpress :is(.work-stage-cases, .work-stage-cases.single-case, .selected-project-grid) { grid-template-columns: minmax(0, 1fr); max-width: 380px; }
  .attia-wordpress .project-card-image { max-height: 175px; aspect-ratio: 16 / 9; }
  .attia-wordpress .work-stage-cases .project-card-image { max-height: 175px; aspect-ratio: 16 / 9; }
  .attia-wordpress .work-stage-cases.single-case .project-card-image { max-height: 175px; aspect-ratio: 16 / 9; }
  .attia-wordpress .attia-interest-grid { grid-template-columns: minmax(0, 1fr); }
  .attia-wordpress .article_card_link { grid-template-columns: 72px minmax(0, 1fr); gap: 0 12px; }
  .attia-wordpress .article_card_cover { height: 100px; }
  .attia-wordpress .bim_article_hero h1 { font-size: 22px; }
  .attia-wordpress .bim_article_heroGrid { grid-template-columns: minmax(0, 1fr) 85px; }
  .attia-wordpress .bim_article_cover img { height: 106px; }
  .attia-wordpress.attia-page-about .about-grid { grid-template-columns: minmax(0, 1fr); grid-template-rows: 160px minmax(0, 1fr); gap: 18px; }
  .attia-wordpress .about-copy { padding-right: 8px; }
  .attia-wordpress .about-portrait.about-portrait-suit > img { height: 145%; }
  .attia-wordpress .amso-academy .academy-intro { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .attia-wordpress .amso-academy .academy-mark { width: 220px; max-width: 100%; padding-block: 12px; }
  .attia-wordpress .amso-academy .academy-mark > span { margin-top: 8px; font-size: 11px; }
}
/* Manual controls and scrolling remain reachable in landscape or with zoom. */
@media (max-height: 620px) {
  :root { --attia-space: 14px; }
  .attia-wordpress .career-map { --career-intro-height: 76px; }
  .attia-wordpress .career-map-combined .career-map-track { height: auto; }
  .attia-wordpress .career-map-combined :is(.career-map-intro, .career-map-stage) { position: relative; top: auto; }
  .attia-wordpress .career-map-combined .career-map-stage { overflow: auto; }
  .attia-wordpress .career-map-combined .career-map-layout { flex-basis: auto; flex-shrink: 0; height: 240px; }
  .attia-wordpress .career-map-combined .career-map-intro h2 { font-size: 22px; }
  .attia-wordpress .career-map-combined .career-map-intro > p { font-size: 12px; }
  .attia-wordpress .career-map-combined .career-map-bottomline > .career-map-scroll-hint { display: none; }
  .attia-wordpress .career-map-combined .career-map-bottomline > .career-map-manual-hint { display: block; }
  .attia-wordpress .hero { overflow: auto; }
  .attia-wordpress .hero-content { position: relative; inset: auto; min-height: 290px; height: calc(var(--attia-panel) - 68px); margin-inline: var(--page-gutter); }
  .attia-wordpress .hero-title { top: 56px; font-size: clamp(58px, min(18vw, 22vh), 100px); }
  .attia-wordpress .hero-description { font-size: 13px; margin-top: 10px; }
  .attia-wordpress .hero-bottom { position: relative; left: auto; right: auto; margin-inline: var(--page-gutter); }
}
@media (max-height: 480px) and (min-width: 600px) {
  .attia-wordpress .career-map-combined .career-map-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); }
  .attia-wordpress .career-map-figure, .attia-wordpress .career-map-combined .career-map-story { grid-row: auto; }
  .attia-wordpress .career-map-combined .career-map-intro h2 br { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .attia-wordpress :is(.career-map-combined .career-map-track, .sticky-chapter, .ink-production) { height: auto; }
  .attia-wordpress :is(.career-map-combined .career-map-intro, .career-map-combined .career-map-stage, .sticky-scene, .ink-production-sticky) { position: relative; top: auto; }
  .attia-wordpress .career-map-combined .career-map-bottomline > .career-map-scroll-hint { display: none; }
  .attia-wordpress .career-map-combined .career-map-bottomline > .career-map-manual-hint { display: block; }
}
/* Printed articles and content must never be limited to screen-height panels. */
@media print {
  :root { --attia-header-size: 0px; --attia-header-height: 0px !important; --attia-admin-height: 0px !important; }
  .attia-wordpress #wpadminbar { display: none; }
  .attia-wordpress :is(#main, .hero, .page-head, .career-map-intro, .career-map-track,
    .career-map-stage, .career-map-story, .career-map-layout, .sticky-chapter,
    .sticky-scene, .ink-production, .ink-production-sticky, .bim_management_scene,
    .bim_management_integration, .overall-integration, #architect, .selected-projects,
    .knowledge-section, .journal-preview, .closing, .bim_article_hero, .yas_riva_hero,
    .case-head, .attia-entry-header, .about-grid, .about-copy, .attia-interests, .work-stage,
    .contact-layout, .attia-page-writing #main > section) {
    position: static !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    margin-bottom: 0 !important;
  }
  .attia-wordpress .career-map-combined .career-map-stage { padding-top: 12px; }
  .attia-wordpress .bim_article_hero { padding-top: 12px; }
}
