.elementor-513 .elementor-element.elementor-element-13f0372{--display:flex;--min-height:750px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-513 .elementor-element.elementor-element-13f0372:not(.elementor-motion-effects-element-type-background), .elementor-513 .elementor-element.elementor-element-13f0372 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://archiway.web-developers.co.za/wp-content/uploads/2026/06/Archiway-Architects-Circle-of-Life-Our-Approach-01.webp");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-513 .elementor-element.elementor-element-9129d9d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-513 .elementor-element.elementor-element-0873546{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:5;}.elementor-513 .elementor-element.elementor-element-76bbab5{--display:flex;border-style:solid;--border-style:solid;border-width:0px 0px 0px 5px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:5px;border-color:var( --e-global-color-blocksy_palette_1 );--border-color:var( --e-global-color-blocksy_palette_1 );--border-radius:8px 8px 8px 8px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-513 .elementor-element.elementor-element-76bbab5:not(.elementor-motion-effects-element-type-background), .elementor-513 .elementor-element.elementor-element-76bbab5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFFA8;}.elementor-513 .elementor-element.elementor-element-bcd1f15{font-size:20px;color:#3E6139;}.elementor-513 .elementor-element.elementor-element-49fb705 .elementor-heading-title{font-size:51px;font-weight:900;color:var( --e-global-color-blocksy_palette_3 );}.elementor-513 .elementor-element.elementor-element-93c896b{--display:flex;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;--z-index:5;}.elementor-513 .elementor-element.elementor-element-04cad5e{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:95px;--padding-bottom:95px;--padding-left:0px;--padding-right:0px;}.elementor-513 .elementor-element.elementor-element-04cad5e:not(.elementor-motion-effects-element-type-background), .elementor-513 .elementor-element.elementor-element-04cad5e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1E3A4224;}.elementor-513 .elementor-element.elementor-element-1506100{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:flex-start;}.elementor-513 .elementor-element.elementor-element-8c0b88a{--display:flex;--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:95px;--padding-bottom:95px;--padding-left:0px;--padding-right:0px;}.elementor-513 .elementor-element.elementor-element-ebc79e7{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;}.elementor-513 .elementor-element.elementor-element-c248aba{padding:30px 30px 30px 30px;}.elementor-513 .elementor-element.elementor-element-a9a3eb2{width:var( --container-widget-width, 750px );max-width:750px;padding:30px 30px 30px 30px;--container-widget-width:750px;--container-widget-flex-grow:0;}.elementor-513 .elementor-element.elementor-element-a9a3eb2.elementor-element{--align-self:flex-end;}.elementor-513 .elementor-element.elementor-element-6100e1e .elementor-button{background-color:#CC1441;font-size:20px;font-weight:900;box-shadow:0px 4px 10px 0px rgba(30, 58, 66, 0.25);transition-duration:0.25s;border-style:none;border-radius:8px 8px 8px 8px;padding:13px 24px 13px 24px;}.elementor-513 .elementor-element.elementor-element-6100e1e .elementor-button:hover, .elementor-513 .elementor-element.elementor-element-6100e1e .elementor-button:focus{background-color:#A80F34;box-shadow:0px 6px 16px 0px rgba(30, 58, 66, 0.35);}.elementor-513 .elementor-element.elementor-element-6100e1e.elementor-element{--align-self:center;}@media(min-width:768px){.elementor-513 .elementor-element.elementor-element-9129d9d{--width:1290px;}.elementor-513 .elementor-element.elementor-element-0873546{--width:36.5%;}.elementor-513 .elementor-element.elementor-element-93c896b{--width:63.5%;}.elementor-513 .elementor-element.elementor-element-1506100{--content-width:1290px;}.elementor-513 .elementor-element.elementor-element-ebc79e7{--content-width:1290px;}}@media(max-width:767px){.elementor-513 .elementor-element.elementor-element-13f0372{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;}.elementor-513 .elementor-element.elementor-element-13f0372:not(.elementor-motion-effects-element-type-background), .elementor-513 .elementor-element.elementor-element-13f0372 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-513 .elementor-element.elementor-element-9129d9d{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-513 .elementor-element.elementor-element-76bbab5{--margin-top:10px;--margin-bottom:10px;--margin-left:10px;--margin-right:10px;}.elementor-513 .elementor-element.elementor-element-49fb705 .elementor-heading-title{font-size:26px;}.elementor-513 .elementor-element.elementor-element-93c896b{--margin-top:0px;--margin-bottom:-50px;--margin-left:0px;--margin-right:0px;}.elementor-513 .elementor-element.elementor-element-7763553{padding:10px 10px 10px 10px;}}/* Start custom CSS for html, class: .elementor-element-4212ad6 *//* Archiway - Circle of Life 4-card section with outside rotating hashed circle */

.archi-circlelife-section {
  --archi-red: #CC1441;
  --archi-red-dark: #A80F34;
  --archi-dark: #1E3A42;
  --archi-text: #36454A;
  --archi-border: #DDE5E3;
  --archi-light: #EEF3F2;
  --archi-white: #FFFFFF;

  /*
    Circle controls:
    The circle is larger than the card group so it appears around the outside.
  */
  --archi-hash-size: clamp(900px, 105vw, 1440px);
  --archi-hash-opacity: 0.24;
  --archi-hash-line-opacity: 0.34;

  position: relative;
  width: 100%;
  max-width: 1290px;
  margin: 0 auto;
  padding: 0;
  overflow: visible;
  isolation: isolate;
}

/* Allow the decorative circle to overflow around the section */
.elementor-widget-html:has(.archi-circlelife-section),
.elementor-widget-container:has(.archi-circlelife-section) {
  overflow: visible !important;
}

/* Dynamic hashed circle behind the card group */
.archi-circlelife-section::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--archi-hash-size);
  height: var(--archi-hash-size);
  transform: translate(-50%, -50%) rotate(0deg);
  transform-origin: center center;
  opacity: var(--archi-hash-opacity);
  pointer-events: none;
  z-index: 0;
  border-radius: 50%;

  background: repeating-linear-gradient(
    -45deg,
    rgba(30, 58, 66, var(--archi-hash-line-opacity)) 0px,
    rgba(30, 58, 66, var(--archi-hash-line-opacity)) 1px,
    transparent 1px,
    transparent 6px
  );

  -webkit-mask-image: radial-gradient(
    circle,
    transparent 0 35%,
    #000 35.5% 72%,
    transparent 72.5% 100%
  );

  mask-image: radial-gradient(
    circle,
    transparent 0 35%,
    #000 35.5% 72%,
    transparent 72.5% 100%
  );

  animation: archiDynamicCircleSpin 200s linear infinite;
}

@keyframes archiDynamicCircleSpin {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

.archi-circlelife-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  overflow: visible;
}

.archi-circlelife-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 34px 30px 32px;
  background: var(--archi-white);
  border: 1px solid rgba(30, 58, 66, 0.10);
  border-radius: 4px 44px 4px 44px;
  box-shadow: 0 14px 34px rgba(30, 58, 66, 0.10);
  overflow: hidden;
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.archi-circlelife-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: var(--archi-red);
  z-index: 1;
}

.archi-circlelife-card::after {
  content: "";
  position: absolute;
  top: -85px;
  right: -85px;
  width: 170px;
  height: 170px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    rgba(204, 20, 65, 0.10) 0%,
    rgba(204, 20, 65, 0.04) 55%,
    rgba(204, 20, 65, 0) 72%
  );
  pointer-events: none;
  z-index: 0;
}

.archi-circlelife-card:hover {
  transform: translateY(-6px);
  border-color: rgba(204, 20, 65, 0.24);
  box-shadow: 0 22px 46px rgba(30, 58, 66, 0.16);
}

.archi-circlelife-top {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}

.archi-circlelife-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  background: var(--archi-light);
  border-radius: 50%;
  color: var(--archi-dark);
}

.archi-circlelife-icon svg {
  width: 24px;
  height: 24px;
  stroke: currentColor;
}

.archi-circlelife-label {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 7px 12px;
  background: var(--archi-light);
  color: var(--archi-dark);
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.archi-circlelife-card h3 {
  position: relative;
  z-index: 2;
  margin: 0 0 16px;
  color: var(--archi-dark);
  font-size: 28px;
  line-height: 1.12;
  font-weight: 800;
  letter-spacing: -0.025em;
}

.archi-circlelife-card p {
  position: relative;
  z-index: 2;
  margin: 0 0 18px;
  color: var(--archi-text);
  font-size: 16px;
  line-height: 1.65;
}

.archi-circlelife-subtitle {
  position: relative;
  z-index: 2;
  margin: 4px 0 12px;
  color: var(--archi-dark);
  font-size: 15px;
  line-height: 1.4;
  font-weight: 800;
}

.archi-circlelife-list {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 10px;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}

.archi-circlelife-list li {
  position: relative;
  padding-left: 24px;
  color: var(--archi-text);
  font-size: 15.5px;
  line-height: 1.5;
}

.archi-circlelife-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  background: var(--archi-red);
  border-radius: 50%;
}

.archi-circlelife-card.is-soft {
  background: var(--archi-white);
}

@media (max-width: 1024px) {
  .archi-circlelife-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .archi-circlelife-section::before {
    --archi-hash-size: min(115vw, 920px);
    --archi-hash-opacity: 0.18;
  }
}

@media (max-width: 640px) {
  .archi-circlelife-card {
    padding: 30px 24px 28px;
    border-radius: 4px 34px 4px 34px;
  }

  .archi-circlelife-top {
    margin-bottom: 18px;
  }

  .archi-circlelife-card h3 {
    font-size: 24px;
  }

  .archi-circlelife-card p,
  .archi-circlelife-list li {
    font-size: 15px;
  }

  .archi-circlelife-section::before {
    --archi-hash-size: 720px;
    --archi-hash-opacity: 0.12;
  }
}

@media (prefers-reduced-motion: reduce) {
  .archi-circlelife-section::before {
    animation: none;
  }
}/* End custom CSS */