.tooltips_table .tooltipsall
	{
		border-bottom:none !important;
	}
	.tooltips_table span {
    color: inherit !important;
	}
	.qtip-content .tooltipsall
	{
		border-bottom:none !important;
		color: inherit !important;
	}
	
		.tooltipsincontent
	{
		border-bottom:2px dotted #888;	
	}

	.tooltipsPopupCreditLink a
	{
		color:gray;
	}
.navitems a
			{
				text-decoration: none !important;
			}
body {overflow-x:hidden;}
.footer-links a {color:var(--contrast);}
.footer-links a:hover {color:var(--accent);}

/* zipper effect */

.zipper {
  position: fixed; top: 0; left: 0;
  width: 100%; height: 100%;
  z-index: 999999;
  pointer-events: none;
}
.zipper-left, .zipper-right {
  position: absolute; top: 0;
  height: 100%; width: 50%; overflow: hidden;
}
.zipper-left  { left: 0; }
.zipper-right { right: 0; }
 
.zip {
  position: absolute; left: 0; width: 100%;
  background:  #481d5e;
  will-change: transform;
}

.zipper-left  .zip::after,
.zipper-right .zip::after {
  content: '';
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 7px; height: 6px; border-radius: 1px; background: #7a7a7a;
}
.zipper-left  .zip::after { right: 0; }
.zipper-right .zip::after { left: 0; }
.zipper-left  .zip:nth-child(odd)::after  { top: 25%; transform: none; }
.zipper-right .zip:nth-child(even)::after { top: 25%; transform: none; }
 

.zipper::after {
  content: '';
  position: absolute; top: 0; left: 50%; transform: translateX(-50%);
  width: 4px; height: 100%;
}

.zipper-handle {
  position: absolute; left: 50%;
  transform: translate(-50%, 0px);
  width: 40px; height: 52px;
  z-index: 2;
  filter: drop-shadow(0 2px 5px rgba(0,0,0,.7));
}
.zipper-handle svg { width: 100%; height: 100%; }
 
/* Notecard */
#zipper-notecard {
  position: fixed; 
	top: 70%; 
	left: 50vw; 
	transform: translateX(-50%);
  z-index: 9999999;
  background: rgba(255,255,255,.12); 
	backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.25); 
	color: #fff;
  padding: 1.5rem; 
	border-radius: 50px; 
	font-size: 24px;
  letter-spacing: .08em; 
	display: flex; 
	align-items: center; 
		flex-direction: row;
	column-gap: 8px;
  transition: opacity .5s ease, transform .5s ease; pointer-events: none;
  font-family: "Gabarito";
	font-weight:600;
	text-align: center;
	justify-content: center;
}

@media (max-width: 900px){
#zipper-notecard {
    width: 70%;
    margin: 0 auto;
}
}
#zipper-notecard .arr { animation: arr-bounce 1s ease-in-out infinite alternate; display: inline-block; }
#zipper-notecard.hide { opacity: 0; transform: translateX(-50%) translateY(12px); }
@keyframes arr-bounce { from { transform: translateY(0); } to { transform: translateY(5px); } }
/*victim statement letter*/
:root {
		--box-shadow-letter: 0 0 0 1px rgba(var(--rgb-black), 0.075), 0 0 0.1em 0.02em rgba(var(--rgb-black), 0.025), 0 0.4em 1.6em -0.8em rgba(var(--rgb-black), 0.1), 0 0.8em 1.2em -1.6em rgba(var(--rgb-black), 0.2), 0 1.2em 1.6em -2.4em rgba(var(--rgb-black), 0.3), 0 1.6em 2.4em -3.2em rgba(var(--rgb-black), 0.4);
	
	    --rgb-black: 11, 18, 21;
}
.letter-interior {
  flex: 0 0 82%;
  max-width: 60%;
  scroll-snap-align: center;
  scroll-snap-stop: always;
  box-sizing: border-box;
  transform: rotate(-0.2deg);
  background: #fff;
  border-radius: 0.025em;
  box-shadow: var(--box-shadow-letter);
  padding: 50px;
  display: block !important;
  position: relative;
  z-index: 1;
}
.letter-interior:before {
  content: "";
  position: absolute;
  inset: 0;
  background: white;
  border-radius: 0.025em;
  box-shadow: var(--box-shadow-letter);
  transform: rotate(-0.5deg) translate(3px, 1px);
  z-index: -10;
  pointer-events: none;
}

@media (max-width: 768px) {.letter-interior {
  max-width: 90%;
	padding:25px;}}
	
	@media (max-width: 9000px) {.letter-interior {
  max-width: 85%;
		padding:30px;}}

/* criminal case timeline*/
.timeline-container {
    position: relative;
}

.timeline-container::before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 3px;
    height: 100%;
    background-color: var(--accent);
    z-index: 1;
}


@media (max-width: 768px) {
    .timeline-container::before {
        left: 15px; 
    }
}

/* Fixes flex block issue on tooltips */
.gb-text:has(.tooltipsincontent) {
    display: block !important;
}

/* Squishy Button Code */
    .sqbtn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      font-family: system-ui, sans-serif;
      font-weight: 900;
      font-size: 13px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: #fff;
      padding: 0 28px;
      height: 44px;
      border: none;
      border-radius: 10px;
      cursor: pointer;
      user-select: none;
      -webkit-tap-highlight-color: transparent;
      outline: none;

      background: #ff4b3c;
      box-shadow:
        0 1px 0 1.5px #f9a0ae,
        0 6px 0 0 #a01e30,
        0 7px 0 1px #731522,
        0 10px 18px -4px rgba(160, 30, 48, 0.5);

      transition: transform 80ms ease, box-shadow 80ms ease;
    }

    .sqbtn:active,
    .sqbtn.pressed {
      transform: translateY(5px);
      box-shadow:
        0 1px 0 1.5px #f9a0ae,
        0 1px 0 0 #a01e30,
        0 2px 0 1px #731522,
        0 3px 8px -2px rgba(160, 30, 48, 0.4);
    }

    .icon {
      font-family: 'Material Icons';
      font-size: 18px;
      line-height: 1;
    }
h1, h2, h3 {text-wrap: balance;}
p {text-wrap:pretty;}



@media (max-width: 370px) {
    .gb-text-1baaf271 {
font-size: 2.4rem;
    }}
    .gb-menu-item-mi1c16d6:is(.current-menu-item,.current-menu-item:hover,.current-menu-item:focus-within) {
        color: var(--accent) !important;
    }
}

/* inside court carousel captions on hover*/
.caption-hover figure {
    position: relative;
    overflow: hidden;
    display: inline-block; 
    margin: 0;
	border-radius: 20px;
}

.caption-hover figure img {
    display: block; 
    width: 100%;
}

.caption-hover figcaption {
    position: absolute;
    inset: 0;
    margin: 0;
    padding: 16px;
    background: rgba(122, 37, 182, 0.75);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.caption-hover figure:hover figcaption {
    opacity: 1;
}

/* Kids Rights Page Chat Bubbles */
 :root {
  /* Left bubble (person) */
  --person-bg: #0a84ff;
  --person-text: #ffffff;

  /* Right bubble (judge) */
  --judge-bg: #e5f0ff;
  --judge-text: #000000;
}

aside.dialogue {
  max-width: 600px;
  margin: 2rem auto;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  position: relative;
}

aside.dialogue blockquote {
  position: relative;
  margin: 0;
  padding: 0.75rem 1rem;
  max-width: 75%;
  font-size: 1rem;
	font-style: normal;
  line-height: 1.4;
  border-radius: 18px;
  box-shadow: none;

  /* start hidden & shifted down for the fadeUp animation */
  opacity: 0;
  transform: translateY(10px);
  animation: fadeUp 0.5s ease-out forwards;
}

/* Stagger each message by 1s, now through the 9th */
aside.dialogue blockquote:nth-child(1) { animation-delay: 0s; }
aside.dialogue blockquote:nth-child(2) { animation-delay: 1s; }
aside.dialogue blockquote:nth-child(3) { animation-delay: 2s; }
aside.dialogue blockquote:nth-child(4) { animation-delay: 3s; }
aside.dialogue blockquote:nth-child(5) { animation-delay: 4s; }
aside.dialogue blockquote:nth-child(6) { animation-delay: 5s; }
aside.dialogue blockquote:nth-child(7) { animation-delay: 6s; }
aside.dialogue blockquote:nth-child(8) { animation-delay: 7s; }
aside.dialogue blockquote:nth-child(9) { animation-delay: 8s; }

aside.dialogue .answer {
  align-self: flex-start;
  background: var(--person-bg);
  color: var(--person-text);
}

aside.dialogue .question {
  align-self: flex-end;
  background: var(--judge-bg);
  color: var(--judge-text);
}

/* Avatars */
aside.dialogue .answer::before,
aside.dialogue .question::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
}

aside.dialogue .answer::before {
  left: -64px;
  background-image: url('/wp-content/uploads/2026/03/person-avatar.png');
}

aside.dialogue .question::before {
  right: -64px;
  background-image: url('/wp-content/uploads/2026/03/judge-avatar.png');
}

/* Tails */
aside.dialogue .answer::after,
aside.dialogue .question::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border: 8px solid transparent;
}

aside.dialogue .answer::after {
  left: -12px;
  border-right-color: var(--person-bg);
}

aside.dialogue .question::after {
  right: -12px;
  border-left-color: var(--judge-bg);
}

/* Animation keyframes */
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* —— Mobile tweaks —— */
@media (max-width: 600px) {
  aside.dialogue {
    margin: 1rem;
  }

  aside.dialogue blockquote {
    max-width: 90%;
    padding: 0.5rem 0.75rem;
    font-size: 0.95rem;
  }

  aside.dialogue .answer::before,
  aside.dialogue .question::before {
    width: 40px;
    height: 40px;
  }

  aside.dialogue .answer::before {
    left: -56px;
  }
  aside.dialogue .question::before {
    right: -56px;
  }

  aside.dialogue .answer::after,
  aside.dialogue .question::after {
    border-width: 6px;
  }

  aside.dialogue .answer::after {
    left: -8px;
  }
  aside.dialogue .question::after {
    right: -8px;
  }
}


/* smileys slider */

@keyframes scroll {
	0% { transform: translateX(0); }
	100% { transform: translateX(calc(-150px * 6))}
}

.slider {
	overflow:hidden;
	position: relative;}

.slide-track {
	animation: scroll 40s linear infinite;
	display: flex;
	width: calc(150px * 16);
	}
	
	.slide {
	height: auto;
	width: 150px;
		margin:2rem;
	}

/* animations for images */
.hoverimg {
  animation: floatUpDown 5s ease-in-out infinite;
  display: inline-block; /* important to allow transform */
}
@keyframes floatUpDown {
  0%, 100% {transform: translateY(0);}
  50% {transform: translateY(-20px); /* adjust the distance here */ }
}

.anxiety-circle-rotation {
  animation: rotate360 60s linear infinite;
  transform-origin: center center;
  display: block;
}
@keyframes rotate360 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}


/* gradients for headlines */
.gradient-purple {
    background: linear-gradient(90deg, #8C00FF 0%, #713A8E 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
/* menu fixes and styling */
.gb-menu-toggle--clone {right: calc(50% - 13px) !important;
    top: 50px!important;}
.gb-menu-toggle-369a5492 svg {
    width: auto;
	height: 26px;
}