.elementor-kit-7{--e-global-color-primary:#93032E;--e-global-color-secondary:#465E44;--e-global-color-text:#1C1A18;--e-global-color-accent:#EFE6DE;--e-global-color-oa_pistachio:#A5AC8D;--e-global-color-oa_terracotta:#AA3C3B;--e-global-color-oa_surface:#FFFFFF;--e-global-color-oa_bone:#F7F2EC;--e-global-color-oa_orchid:#EFE6DE;--e-global-color-oa_ink:#1C1A18;--e-global-color-oa_muted:#5B524C;--e-global-color-oa_faint:#8A817A;--e-global-color-oa_burg_lo:#6B0220;--e-global-color-oa_burg_hi:#B4143F;--e-global-color-oa_green_lo:#334432;--e-global-color-oa_green_hi:#5C7859;--e-global-color-632d7de:#1E1B18;--e-global-color-aaf8a4d:#FFFFFF00;--e-global-typography-primary-font-family:"Migra Font";--e-global-typography-primary-font-size:84px;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-line-height:1.1em;--e-global-typography-primary-letter-spacing:0.02em;--e-global-typography-secondary-font-family:"Migra Font";--e-global-typography-secondary-font-size:56px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-secondary-letter-spacing:0em;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-line-height:30px;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:0.1em;--e-global-typography-oa_display_xl_italic-font-family:"Migra Font";--e-global-typography-oa_display_xl_italic-font-size:84px;--e-global-typography-oa_display_xl_italic-font-weight:500;--e-global-typography-oa_display_xl_italic-font-style:italic;--e-global-typography-oa_display_xl_italic-line-height:1.1em;--e-global-typography-oa_display_xl_italic-letter-spacing:0.02em;--e-global-typography-oa_display_l-font-family:"Migra Font";--e-global-typography-oa_display_l-font-size:72px;--e-global-typography-oa_display_l-font-weight:500;--e-global-typography-oa_display_l-font-style:normal;--e-global-typography-oa_display_l-line-height:1.1em;--e-global-typography-oa_display_l-letter-spacing:0.02em;--e-global-typography-oa_display_l_italic-font-family:"Migra Font";--e-global-typography-oa_display_l_italic-font-size:72px;--e-global-typography-oa_display_l_italic-font-weight:500;--e-global-typography-oa_display_l_italic-font-style:italic;--e-global-typography-oa_display_l_italic-line-height:1.1em;--e-global-typography-oa_display_l_italic-letter-spacing:0.02em;--e-global-typography-oa_h2-font-family:"Migra Font";--e-global-typography-oa_h2-font-size:42px;--e-global-typography-oa_h2-font-weight:500;--e-global-typography-oa_h2-font-style:normal;--e-global-typography-oa_h2-line-height:1.15em;--e-global-typography-oa_h2-letter-spacing:0.02em;--e-global-typography-oa_h3-font-family:"Migra Font";--e-global-typography-oa_h3-font-size:34px;--e-global-typography-oa_h3-font-weight:500;--e-global-typography-oa_h3-font-style:normal;--e-global-typography-oa_h3-line-height:1.2em;--e-global-typography-oa_h3-letter-spacing:0.02em;--e-global-typography-oa_h4-font-family:"Migra Font";--e-global-typography-oa_h4-font-size:24px;--e-global-typography-oa_h4-font-weight:500;--e-global-typography-oa_h4-font-style:normal;--e-global-typography-oa_h4-line-height:1.25em;--e-global-typography-oa_h4-letter-spacing:0.02em;--e-global-typography-oa_h5-font-family:"Montserrat";--e-global-typography-oa_h5-font-size:20px;--e-global-typography-oa_h5-font-weight:500;--e-global-typography-oa_h5-font-style:normal;--e-global-typography-oa_h5-line-height:1.3em;--e-global-typography-oa_h5-letter-spacing:0.02em;--e-global-typography-oa_body_l-font-family:"Montserrat";--e-global-typography-oa_body_l-font-size:18px;--e-global-typography-oa_body_l-font-weight:400;--e-global-typography-oa_body_l-font-style:normal;--e-global-typography-oa_body_l-line-height:2.1em;--e-global-typography-oa_body_l-letter-spacing:0em;--e-global-typography-oa_body_s-font-family:"Montserrat";--e-global-typography-oa_body_s-font-size:14px;--e-global-typography-oa_body_s-font-weight:400;--e-global-typography-oa_body_s-font-style:normal;--e-global-typography-oa_body_s-line-height:21px;--e-global-typography-oa_body_s-letter-spacing:0em;--e-global-typography-oa_nav-font-family:"Montserrat";--e-global-typography-oa_nav-font-size:16px;--e-global-typography-oa_nav-font-weight:500;--e-global-typography-oa_nav-text-transform:uppercase;--e-global-typography-oa_nav-font-style:normal;--e-global-typography-oa_nav-line-height:1.4em;--e-global-typography-oa_nav-letter-spacing:0.05em;--e-global-typography-oa_button-font-family:"Montserrat";--e-global-typography-oa_button-font-size:14px;--e-global-typography-oa_button-font-weight:500;--e-global-typography-oa_button-font-style:normal;--e-global-typography-oa_button-line-height:1.4em;--e-global-typography-oa_button-letter-spacing:0.5px;--e-global-typography-oa_button_l-font-family:"Montserrat";--e-global-typography-oa_button_l-font-size:16px;--e-global-typography-oa_button_l-font-weight:400;--e-global-typography-oa_button_l-font-style:normal;--e-global-typography-oa_button_l-line-height:1.4em;--e-global-typography-oa_button_l-letter-spacing:0.05em;background-color:var( --e-global-color-oa_orchid );}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 p{margin-block-end:0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-7{--e-global-typography-primary-font-size:60px;--e-global-typography-secondary-font-size:42px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:14px;--e-global-typography-oa_display_xl_italic-font-size:60px;--e-global-typography-oa_display_l-font-size:52px;--e-global-typography-oa_display_l_italic-font-size:52px;--e-global-typography-oa_h2-font-size:42px;--e-global-typography-oa_h3-font-size:34px;--e-global-typography-oa_h4-font-size:24px;--e-global-typography-oa_h5-font-size:20px;--e-global-typography-oa_body_l-font-size:17px;--e-global-typography-oa_body_s-font-size:14px;--e-global-typography-oa_nav-font-size:16px;--e-global-typography-oa_button-font-size:14px;--e-global-typography-oa_button_l-font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{--e-global-typography-primary-font-size:44px;--e-global-typography-secondary-font-size:32px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:14px;--e-global-typography-oa_display_xl_italic-font-size:52px;--e-global-typography-oa_display_l-font-size:48px;--e-global-typography-oa_display_l_italic-font-size:48px;--e-global-typography-oa_h2-font-size:36px;--e-global-typography-oa_h3-font-size:30px;--e-global-typography-oa_h4-font-size:22px;--e-global-typography-oa_h5-font-size:18px;--e-global-typography-oa_body_l-font-size:16px;--e-global-typography-oa_body_s-font-size:14px;--e-global-typography-oa_nav-font-size:16px;--e-global-typography-oa_button-font-size:14px;--e-global-typography-oa_button_l-font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ================================================
   OUTLINE ARCHITECTS — Global CSS
   Elementor → Site Settings → Custom CSS
   Breakpoints: Mobile < 767px · Tablet 768–1024px · Desktop > 1024px
   Content width: 1140px
   ================================================ */


/* ================================================
   01 — TYPOGRAPHY SYSTEM
   NOTE: These classes have lower specificity than Elementor's
   generated per-element CSS (post-XX.css). For headings already
   sized directly in the Elementor widget panel, Elementor's CSS
   will win. Use these classes on elements that do NOT have a
   font size set in the widget, or on custom HTML elements.
   Usage: Advanced → CSS Classes → oa-display-xl
   ================================================ */

/* --- Display XL — Migra Font Regular 84px --- */
.oa-display-xl {
  font-family: 'Migra Font', serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  font-size: 84px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.1 !important;
}

/* --- Display XL Italic — Migra Font Regular Italic 84px --- */
.oa-display-xl-italic {
  font-family: 'Migra Font', serif !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 84px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.1 !important;
}

/* --- Display L — Migra Font Regular 72px --- */
.oa-display-l {
  font-family: 'Migra Font', serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  font-size: 72px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.1 !important;
}

/* --- Display L Italic — Migra Font Regular Italic 72px --- */
.oa-display-l-italic {
  font-family: 'Migra Font', serif !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 72px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.1 !important;
}

/* --- H1 — Migra Font Medium 56px --- */
.oa-h1 {
  font-family: 'Migra Font', serif !important;
  font-weight: 500 !important;
  font-style: normal !important;
  font-size: 56px !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
}

/* --- H2 — Migra Font Medium 42px --- */
.oa-h2 {
  font-family: 'Migra Font', serif !important;
  font-weight: 500 !important;
  font-style: normal !important;
  font-size: 42px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.15 !important;
}

/* --- H3 — Migra Font Medium 34px --- */
.oa-h3 {
  font-family: 'Migra Font', serif !important;
  font-weight: 500 !important;
  font-style: normal !important;
  font-size: 34px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.2 !important;
}

/* --- H4 — Migra Font Medium 24px --- */
.oa-h4 {
  font-family: 'Migra Font', serif !important;
  font-weight: 500 !important;
  font-style: normal !important;
  font-size: 24px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.25 !important;
}

/* --- H5 — Montserrat Medium 20px --- */
.oa-h5 {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: 20px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.3 !important;
}

/* --- Body L — Montserrat Regular 18px --- */
.oa-body-l {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 18px !important;
  letter-spacing: 0 !important;
  line-height: 1.6 !important;
}

/* --- Body — Montserrat Regular 16px --- */
.oa-body {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  letter-spacing: 0 !important;
  line-height: 30px !important;
}

/* --- Body S — Montserrat Regular 14px --- */
.oa-body-s {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  line-height: 21px !important;
}

/* --- Captions — Montserrat Medium 14px uppercase --- */
.oa-captions {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  letter-spacing: 0.1em !important;
  line-height: 1.4 !important;
  text-transform: uppercase !important;
}

/* --- Nav Bar — Montserrat Medium 16px --- */
.oa-nav {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  letter-spacing: 0.05em !important;
  line-height: 1.4 !important;
}

/* --- Button — Montserrat Regular 14px --- */
.oa-button {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
}

/* --- Button L — Montserrat Regular 16px --- */
.oa-button-l {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
}


/* ================================================
   01b — TYPOGRAPHY BREAKPOINTS — TABLET (768–1024px)
   ================================================ */

@media (max-width: 1024px) {

  .oa-display-xl,
  .oa-display-xl-italic       { font-size: 60px !important; }

  .oa-display-l,
  .oa-display-l-italic        { font-size: 52px !important; }

  .oa-h1                      { font-size: 42px !important; }
  .oa-h2                      { font-size: 34px !important; }
  .oa-h3                      { font-size: 28px !important; }
  .oa-h4                      { font-size: 20px !important; }
  .oa-h5                      { font-size: 18px !important; }
  .oa-body-l                  { font-size: 17px !important; }
  .oa-body                    { font-size: 16px !important; line-height: 28px !important; }
  .oa-body-s                  { font-size: 14px !important; }
  .oa-captions                { font-size: 14px !important; }
  .oa-nav                     { font-size: 16px !important; }
  .oa-button                  { font-size: 14px !important; }
  .oa-button-l                { font-size: 16px !important; }

}


/* ================================================
   01c — TYPOGRAPHY BREAKPOINTS — MOBILE (< 767px)
   ================================================ */

@media (max-width: 767px) {

  .oa-display-xl,
  .oa-display-xl-italic       { font-size: 48px !important; }

  .oa-display-l,
  .oa-display-l-italic        { font-size: 42px !important; }

  .oa-h1                      { font-size: 36px !important; }
  .oa-h2                      { font-size: 32px !important; }
  .oa-h3                      { font-size: 28px !important; }
  .oa-h4                      { font-size: 22px !important; }
  .oa-h5                      { font-size: 20px !important; }
  .oa-body-l                  { font-size: 18px !important; }
  .oa-body                    { font-size: 16px !important; line-height: 26px !important; }
  .oa-body-s                  { font-size: 14px !important; }
  .oa-captions                { font-size: 14px !important; }
  .oa-nav                     { font-size: 16px !important; }
  .oa-button                  { font-size: 14px !important; }
  .oa-button-l                { font-size: 16px !important; }

}


/* ================================================
   02 — HEADER
   ================================================ */

.oa-header {
  background: rgba(239, 230, 222, 0.70) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

@media (max-width: 767px) {
  .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    z-index: 9999 !important;
  }
}

/* ================================================
   03 — PROJECTS GRID — Animation System
   ================================================ */

/* --- Grid parent --- */
.oa-projects-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
  align-items: start !important;
  transition: grid-template-columns 0.8s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.oa-projects-grid.expand-left  { grid-template-columns: 2fr 0fr !important; }
.oa-projects-grid.expand-right { grid-template-columns: 0fr 2fr !important; }

/* --- Columns --- */
.oa-col {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  overflow: hidden !important;
  transition: opacity 0.5s ease !important;
}

.oa-col-right { padding-top: 200px !important; }
.oa-col-right.has-expanded { padding-top: 0 !important; }

.oa-projects-grid.expand-left  .oa-col-right,
.oa-projects-grid.expand-right .oa-col-left {
  opacity: 0 !important;
  pointer-events: none !important;
}

/* --- Cards: default heights --- */
.oa-col-left  .oa-card:nth-child(1) { min-height: 540px; }
.oa-col-left  .oa-card:nth-child(2) { min-height: 620px; }
.oa-col-left  .oa-card:nth-child(3) { min-height: 580px; }
.oa-col-left  .oa-card:nth-child(4) { min-height: 680px; }
.oa-col-right .oa-card:nth-child(1) { min-height: 680px; }
.oa-col-right .oa-card:nth-child(2) { min-height: 580px; }
.oa-col-right .oa-card:nth-child(3) { min-height: 620px; }


/* --- Future cards (slots 5 and 6 per column) --- */
.oa-col-left  .oa-card:nth-child(5) { min-height: 540px; }
.oa-col-left  .oa-card:nth-child(6) { min-height: 620px; }
.oa-col-right .oa-card:nth-child(4) { min-height: 540px; }
.oa-col-right .oa-card:nth-child(5) { min-height: 680px; }
.oa-col-right .oa-card:nth-child(6) { min-height: 580px; }


/* --- Cards: base state --- */
.oa-card {
  position: relative !important;
  cursor: pointer !important;
  overflow: hidden !important;
  will-change: height, opacity;
  transition: height 0.8s cubic-bezier(0.4, 0, 0.2, 1),
              opacity 0.5s ease !important;
}

.oa-card.collapsed {
  height: 0 !important;
  min-height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* ================================================
   04 — HOVER OVERLAY
   ================================================ */

.oa-card .oa-hover-overlay {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.70) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  opacity: 0 !important;
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1) !important;
  pointer-events: none !important;
  z-index: 10 !important;
}

.oa-card:not(.expanded):not(.collapsed):hover .oa-hover-overlay {
  opacity: 1 !important;
  pointer-events: auto !important;
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.1s !important;
}

.oa-hover-overlay .oa-hover-title {
  font-family: 'Migra Font', serif !important;
  font-weight: 500 !important;
  font-size: 34px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.2 !important;
  color: #EFE6DE !important;
  text-align: center !important;
  padding: 0 32px !important;
  margin: 0 !important;
}

.oa-hover-overlay .oa-hover-subtitle {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  letter-spacing: 0.1em !important;
  line-height: 1.4 !important;
  text-transform: uppercase !important;
  color: #EFE6DE !important;
  text-align: center !important;
  padding: 0 32px !important;
  margin: 0 !important;
}

/* ================================================
   04.1 — HOVER OVERLAY PROFILE PICTURES
   ================================================ */
/* --- About Us — hover overlay (no click, no expand) --- */
.oa-team-card {
  position: relative !important;
  cursor: default !important;
  overflow: hidden !important;
}

.oa-team-card .oa-hover-overlay {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.70) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  opacity: 0 !important;
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1) !important;
  pointer-events: none !important;
  z-index: 10 !important;
}

.oa-team-card:hover .oa-hover-overlay {
  opacity: 1 !important;
}

.oa-team-card .oa-hover-title {
  font-family: 'Migra', serif !important;
  font-weight: 600 !important;
  font-size: 28px !important;
  color: #EFE6DE !important;
  text-align: center !important;
  padding: 0 24px !important;
  margin: 0 !important;
}

.oa-team-card .oa-hover-subtitle {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  color: #EFE6DE !important;
  text-align: center !important;
  padding: 0 24px !important;
  margin: 0 !important;
}


/* ================================================
   05 — EXPANDED PANEL
   Panel structure (fixed, no Awards field):
     Hero image:   600px
     Info area:    title + 3 left fields (Location, Client, Status)
                         + 2 right fields (Sector, Size)
   Calculated heights:
     Desktop: hero 600 + title ~50 + fields ~267 + padding 48 = ~965px → 950px
     Mobile:  hero 600 + title ~40 + 5 stacked fields ~335 + padding 48 = ~1023px → 1050px
   DEV NOTE: If content variability becomes an issue, replace the fixed
   height on .oa-card.expanded with a dynamic JS measurement:
   After populating fields, read panel.scrollHeight and set
   card.style.height = panel.scrollHeight + 'px'
   The CSS transition on .oa-card will animate smoothly to that value.
   ================================================ */

/* --- Expanded card height --- */
.oa-card.expanded {
  height: 950px !important;
  min-height: 0 !important;
}

/* --- Panel wrapper --- */
.oa-card .oa-panel {
  position: absolute !important;
  inset: 0 !important;
  background: #EFE6DE !important;
  opacity: 0 !important;
  pointer-events: none !important;
  overflow-y: hidden !important;
  z-index: 20 !important;
  transition: opacity 0.5s ease 0.05s !important;
  display: flex !important;
  flex-direction: column !important;
}

.oa-card.expanded .oa-panel {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.oa-card:not(.expanded) .oa-panel {
  transition: opacity 0.2s ease !important;
}

/* --- Hero image --- */
.oa-panel-hero {
  position: relative !important;
  width: 100% !important;
  height: 600px !important;
  flex-shrink: 0 !important;
  background-color: #1C1A18 !important;
  background-size: cover !important;
  background-position: center center !important;
}

/* --- Close button --- */
.oa-panel-close {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  width: 48px !important;
  height: 48px !important;
  background: #EFE6DE !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 30 !important;
  transition: background 0.2s ease !important;
}

.oa-panel-close:hover { background: #1C1A18 !important; }

.oa-panel-close svg {
  width: 18px !important;
  height: 18px !important;
  stroke: #1C1A18 !important;
  transition: stroke 0.2s ease !important;
}

.oa-panel-close:hover svg { stroke: #EFE6DE !important; }

/* --- Prev / Next arrows --- */
.oa-panel-prev,
.oa-panel-next {
  position: absolute !important;
  bottom: 16px !important;
  width: 56px !important;
  height: 48px !important;
  background: #EFE6DE !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 30 !important;
  transition: background 0.2s ease !important;
}

.oa-panel-prev { left: 16px !important; }
.oa-panel-next { right: 16px !important; }

.oa-panel-prev:hover,
.oa-panel-next:hover { background: #1C1A18 !important; }

.oa-panel-prev svg,
.oa-panel-next svg {
  width: 20px !important;
  height: 20px !important;
  stroke: #1C1A18 !important;
  transition: stroke 0.2s ease !important;
}

.oa-panel-prev:hover svg,
.oa-panel-next:hover svg { stroke: #EFE6DE !important; }

/* --- Info area --- */
.oa-panel-info {
  padding: 24px 24px 24px 48px !important;
  flex: 1 !important;
  background: #F7F2EC !important;
}

/* --- Project title --- */
.oa-panel-title {
  font-family: 'Migra Font', serif !important;
  font-weight: 500 !important;
  font-size: 40px !important;
  line-height: normal !important;
  color: #4B4230 !important;
  letter-spacing: 0.45px !important;
}

/* --- 2-column meta grid --- */
.oa-panel-meta {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 40px !important;
}

/* --- Field blocks --- */
.oa-panel-field {
  margin-bottom: 24px !important;
}

.oa-panel-label {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 20px !important;
  line-height: 30.8px !important;
  color: #4B4230 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  margin: 0 0 4px !important;
  display: block !important;
}

.oa-panel-value {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 18px !important;
  color: #797670 !important;
  letter-spacing: -0.1px !important;
  margin: 0 !important;
  display: block !important;
}


/* ================================================
   06 — CONTACT
   ================================================ */

.oa-contact-grid {
  grid-template-columns: 160px 1fr !important;
}

.oa-btn-full {
  width: 100% !important;
}


/* ================================================
   MOBILE (< 767px)
   ================================================ */

@media (max-width: 767px) {

  /* --- Projects grid: single column, no offset --- */
  .oa-projects-grid {
    grid-template-columns: 1fr !important;
  }

  .oa-col-right {
    padding-top: 0 !important;
  }

  .oa-projects-grid.expand-left,
  .oa-projects-grid.expand-right {
    grid-template-columns: 1fr !important;
  }

  /* --- Expanded card height (5 fields stacked) --- */
  .oa-card.expanded {
    height: 1050px !important;
  }

  /* --- Panel info --- */
  .oa-panel-info {
    padding: 24px 20px !important;
  }

  /* --- Meta: single column --- */
  .oa-panel-meta {
    grid-template-columns: 1fr !important;
  }

  /* --- Panel typography --- */
  .oa-panel-title  { font-size: 28px !important; }
  .oa-panel-label  { font-size: 15px !important; }
  .oa-panel-value  { font-size: 13px !important; }

  /* --- Contact --- */
  .oa-contact-grid {
    grid-template-columns: 120px 1fr !important;
  }

}

/*---icon arrow right---*/
#start-project .elementor-button-icon {
  font-size: 24px !important;
}

.oa-panel-hero {
  transition: opacity 0.4s ease !important;
}

#oa-btn-full .elementor-button-icon {
  font-size: 30px !important;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Migra Font';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://outline.ie/wp-content/uploads/2026/04/migra-regular.woff') format('woff');
}
@font-face {
	font-family: 'Migra Font';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://outline.ie/wp-content/uploads/2026/04/migra-medium.woff') format('woff');
}
@font-face {
	font-family: 'Migra Font';
	font-style: italic;
	font-weight: normal;
	font-display: auto;
	src: url('https://outline.ie/wp-content/uploads/2026/04/migraitalic-italic.woff') format('woff');
}
@font-face {
	font-family: 'Migra Font';
	font-style: italic;
	font-weight: 500;
	font-display: auto;
	src: url('https://outline.ie/wp-content/uploads/2026/04/migraitalic-mediumitalic.woff') format('woff');
}
/* End Custom Fonts CSS */