.elementor-412 .elementor-element.elementor-element-f58167b{width:auto;max-width:auto;}.elementor-412 .elementor-element.elementor-element-f58167b .elementor-icon-wrapper{text-align:end;}.elementor-412 .elementor-element.elementor-element-f58167b.elementor-view-stacked .elementor-icon{background-color:#ffffff;}.elementor-412 .elementor-element.elementor-element-f58167b.elementor-view-framed .elementor-icon, .elementor-412 .elementor-element.elementor-element-f58167b.elementor-view-default .elementor-icon{color:#ffffff;border-color:#ffffff;}.elementor-412 .elementor-element.elementor-element-f58167b.elementor-view-framed .elementor-icon, .elementor-412 .elementor-element.elementor-element-f58167b.elementor-view-default .elementor-icon svg{fill:#ffffff;}.elementor-412 .elementor-element.elementor-element-f58167b .elementor-icon{font-size:3rem;}.elementor-412 .elementor-element.elementor-element-f58167b .elementor-icon svg{height:3rem;}.elementor-412 .elementor-element.elementor-element-f2864bc .elementor-icon-wrapper{text-align:center;}.elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-stacked .elementor-icon{background-color:#EFCEDE;}.elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-framed .elementor-icon, .elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-default .elementor-icon{color:#EFCEDE;border-color:#EFCEDE;}.elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-framed .elementor-icon, .elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-default .elementor-icon svg{fill:#EFCEDE;}.elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-stacked .elementor-icon:hover{background-color:#EFCEDE;}.elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-framed .elementor-icon:hover, .elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-default .elementor-icon:hover{color:#EFCEDE;border-color:#EFCEDE;}.elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-framed .elementor-icon:hover, .elementor-412 .elementor-element.elementor-element-f2864bc.elementor-view-default .elementor-icon:hover svg{fill:#EFCEDE;}.elementor-412 .elementor-element.elementor-element-f2864bc .elementor-icon{font-size:20px;}.elementor-412 .elementor-element.elementor-element-f2864bc .elementor-icon svg{height:20px;}.elementor-412 .elementor-element.elementor-element-27e3c1b{margin:0rem 1rem calc(var(--kit-widget-spacing, 0px) + 1.5rem) 1rem;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-412 .elementor-element.elementor-element-f58167b{width:auto;max-width:auto;}.elementor-412 .elementor-element.elementor-element-f58167b .elementor-icon{font-size:2em;}.elementor-412 .elementor-element.elementor-element-f58167b .elementor-icon svg{height:2em;}}@media(max-width:767px){.elementor-412 .elementor-element.elementor-element-27e3c1b{margin:0rem 1rem calc(var(--kit-widget-spacing, 0px) + 0rem) 1rem;}}/* Start custom CSS for icon, class: .elementor-element-f58167b */.elementor-icon:hover { color: #ff0000 !important; transform: rotate(45deg); transition: all 0.3s ease-in-out; }/* End custom CSS */
/* Start custom CSS */:root {
  --bg-color: #0b0c0e;
  --text-pink: #f5b7cb;
  --text-red: #d1121d;
  --text-light: #e0e0e0;
  --text-muted: #808388;
  --grid-line: rgba(255, 255, 255, 0.05);
  --font-mono: 'Courier New', Courier, monospace;
  --font-sans: 'Helvetica Neue', Arial, sans-serif;
}
body {
  background-color: #0b0c0e;
  color: #e0e0e0;
  font-family: 'Courier New', Courier, monospace;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow-x: hidden;
  position: relative;
}
/* Fine grain noise texture overlay
body::before {
  content: "";
  position: fixed;
  top: 0; left: 0; width: 100vw; height: 100vh;
  background: radial-gradient(circle, rgba(255,255,255,0.1) 1px, transparent 1px);
  background-size: 3px 3px;
  pointer-events: none;
  z-index: 0;
}*/
body:before {
    content: "";
    background-image: url(https://perryfarrell.com/wp-content/uploads/2026/07/33419745w.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    opacity: .1;
    position: fixed;
    top: 0; left: 0; 
    width: 100vw; height: 100vh;
}
[data-elementor-type="wp-page"] {
background-image: 
    linear-gradient(to right, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: min(10vw, 80px) min(10vh, 80px);
}

.venn-icon {
  margin-top: 20px;
  display: flex;
}

.venn-icon svg {
  width: 45px;
  height: 20px;
}

.geo-coords {
  font-size: 0.65rem;
  color: #808388;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

.stamp-badge {
  position: absolute;
  top: 10px;
  right: 20px;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.stamp-badge text {
  fill: #808388;
  font-size: 16px;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.bottom-right-box {
  background-color: rgba(255, 255, 255, 0.075);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 15px;
  position: relative;
  height: 115px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.box-num-left, .box-num-right {
  position: absolute;
  font-size: 0.55rem;
  color: #808388;
  top: 5px;
}
.box-num-left { left: 5px; }
.box-num-right { right: 5px; }

.box-asterisk {
  color: #808388;
  font-size: 1.5rem;
}
.box-subtext {
  position: absolute;
  bottom: -20px;
  font-size: 0.55rem;
  color: #808388;
  letter-spacing: 0.15em;
}

.triptych-panel {
  flex: 1;
  background-image: url('https://perryfarrell.com/wp-content/uploads/2026/07/770-kaos.jpg');
  background-repeat: no-repeat;
  background-size: 300% 150%;
}

/* Offset each panel to display its respective slice 
 Part 1 */
.wrap-1 {
  transform: rotate(0deg) translate(0px, 0px);
  transition: all 600ms linear;
}
.wrap-1:hover {
  transform: rotate(5deg) translate(-15px, 15px);
}
.part-1 {
  background-position: 0% 0%;
  animation: moveBackgroundp1 4.5s ease-in-out infinite;
    animation-delay: 0s;
    box-shadow: 0 -10px 25px rgba(0, 0, 0, 0.35);
    transition: all 600ms ease-in-out;
}
.wrap-1:hover .part-1 {
    box-shadow: -15px -15px 15px rgba(0, 0, 0, 0.5);
}

/* Part 2 */
.wrap-2 {
  transform: rotate(0deg) translate(0px, 0px);
  transition: all 600ms linear;
}
.wrap-2:hover {
  transform: rotate(-5deg) translate(15px, -15px);
}
.part-2 {
  animation: moveBgLeftRight 7s linear infinite;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35);
  transition: all 600ms ease-in-out;
}
.wrap-2:hover .part-2 {
    box-shadow: 15px 15px 15px rgba(0, 0, 0, 0.5);
}

/* part 3 */
.wrap-3 {
  transform: rotate(0deg) translate(0px, 0px);
  transition: all 600ms linear;
}
.wrap-3:hover {
  transform: rotate(5deg) translate(-15px, -15px);
}
.part-3 {
  background-position: 100% 100%;
  animation: moveBackgroundp3 5.5s ease-in-out infinite;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35);
    transition: all 600ms ease-in-out;
}
.wrap-3:hover .part-3 {
    box-shadow: 15px 15px 15px rgba(0, 0, 0, 0.5);
}

.flash {
    cursor: pointer;
    user-select: none;
    touch-action: manipulation;
  
    /* Smooth fade-out when released */
    transition: box-shadow 0.6s ease-out,
              border-color 0.6s ease-out,
              background-color 0.6s ease-out;
    background-color: hsla(var(--glow-hue), 30%, 15%, 0%);
    border: 1px solid rgba(255, 255, 255, 0.1);
    /* Removes the tap highlight overlay on iOS Safari / Chrome Android */
    -webkit-tap-highlight-color: transparent;

    /* Prevents long-press text/image selection popups while tapping quickly */
    -webkit-user-select: none;
    user-select: none;

    /* Removes default iOS callout menus (like "Save Image" or "Copy") on long touch */
    -webkit-touch-callout: none;
}
.flash:hover {
    border-color: rgba(255, 255, 255, 0.2);
}
.active {
    /* Instant trigger response */
    transition: box-shadow 0.04s ease-out,
              background-color 0.04s ease-out,
              border-color 0.04s ease-out;

    /* Surface and border tint using dynamic hue */
    border-color: hsl(var(--glow-hue), var(--glow-sat), var(--glow-light));
    background-color: hsla(var(--glow-hue), 30%, 50%, 30%);

    /* Ambient light emitted around and underneath using dynamic alpha channels */
    box-shadow: 
    0 0 15px hsla(var(--glow-hue), var(--glow-sat), var(--glow-light), 0.8),
    0 0 40px hsla(var(--glow-hue), var(--glow-sat), var(--glow-light), 0.5),
    0 15px 50px hsla(var(--glow-hue), var(--glow-sat), var(--glow-light), 0.4),
    inset 0 0 20px hsla(var(--glow-hue), var(--glow-sat), var(--glow-light), 0.3);
}
@media(max-width: 1024px){
    .stamp-badge {
        top: -40px;
    }
}

@media(max-width: 767px){
    .part-1 {
        background-size: 150% 150%;
        background-position: 50% 0%;
    }
    .stamp-badge {
        top: -10px;
    }
}

@keyframes moveBackgroundp1 {
  0% { background-position: 0% 0%;
        transform: rotate(180deg);
  }
  50% { background-position: 0% 35%;
        transform: rotate(180deg);
  }
  100% { background-position: 0% 0%; 
        transform: rotate(180deg);
  }
}

@keyframes moveBackgroundp3 {
  0% { background-position: 100% 100%;
  }
  50% { background-position: 100% 65%;
  }
  100% { background-position: 100% 100%;
  }
}

@keyframes moveBgLeftRight {
  0%   { background-position: 0% 0%;
  }     /* left */
  50%  { background-position: 35% 0%;
  }   /* right */
  100% { background-position: 0% 0%;
  }     /* left again */
}/* End custom CSS */