/* *************** */
/* *************** */
*,
*:before,
*:after {
  margin: 0;
  padding: 0;
  box-sizing: inherit; }

html {
  box-sizing: border-box; }

body {
  font-family: lato;
  width: 100%;
  overflow-x: hidden;
  text-align: center; }

img {
  max-width: 100%; }

a {
  text-decoration: none; }

li {
  list-style: none; }

/* The ::selection CSS pseudo-element applies styles to the part of a document that has been highlighted by the user (such as clicking and dragging the mouse across text).*/
:is(p, h2, h3, h4, span)::selection {
  color: #fff;
  background: #642c8c; }

/* *************** */
/* *************** */
/* Breakpoints */
/* **************** */
/* MIXINS */
/* *************** */
/* *************** */
.wrap {
  width: clamp(30ch, 80%, 75ch);
  margin: 0 auto;
  padding: 5em 3em; }

.header {
  width: 100%;
  min-height: 100vh;
  line-height: 1.4; }

.h2 {
  color: #7f4e9f;
  font-family: 'Paytone One', sans-serif;
  margin-bottom: 2.2em;
  font-size: clamp(2rem, 3vw, 3.5rem); }

.p {
  font-size: clamp(1.2rem, 1vw, 2.1rem);
  color: #23252f;
  line-height: 1.6; }

.her {
  color: #9970b2; }

.btn {
  display: inline-block;
  padding: .2em;
  position: relative;
  border-radius: 5px;
  z-index: 0;
  color: #009a65; }
  .btn:hover {
    color: #efe; }
  .btn::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 10%;
    background: #642c8c;
    bottom: 0;
    left: 0;
    transition: .4s;
    border-radius: 5px;
    z-index: -1; }
  .btn:hover::before {
    height: 100%;
    transition: .4s; }

/* ****************************** */
/* For myth section */
/* ****************************** */
.box {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3em 2em; }

.box-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #efe;
  border-radius: 100px;
  display: inline-block;
  width: 50px;
  height: 50px;
  padding: 2em;
  margin-bottom: 2em;
  font-family: 'Paytone One', sans-serif; }

/* ***************************************** */
.read-me-btn {
  border: none;
  outline: none;
  background: transparent;
  margin-top: 1em;
  border-radius: 5px;
  font-family: 'Paytone One', sans-serif; }
  .read-me-btn a {
    position: relative;
    text-decoration: none;
    color: #2aba83;
    padding: .4em .7em;
    overflow: hidden;
    border-radius: 5px;
    transition: .5s;
    font-size: clamp(1rem, 1vw, 2rem); }
  .read-me-btn a:hover {
    transition: 1s;
    background: #2aba83;
    box-shadow: 0 0 10px #2aba83;
    color: #efe;
    border-radius: 5px; }
  .read-me-btn a:active {
    animation: move-down .5s forwards;
    transition: .5s; }
  .read-me-btn a::before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    width: 50px;
    height: 20px;
    border-top: #2aba83 solid 3px;
    border-left: #2aba83 solid 3px;
    transition: 1s;
    border-radius: 5px 0 0 0; }
  .read-me-btn a:hover::before {
    width: 100%;
    height: 100%;
    border-top: #2aba83 solid 3px;
    border-left: #2aba83 solid 3px;
    transition: 1s;
    border-radius: 5px; }
  .read-me-btn a::after {
    content: "";
    display: inline-block;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50px;
    height: 20px;
    border-bottom: #2aba83 solid 3px;
    border-right: #2aba83 solid 3px;
    transition: 1s;
    border-radius: 0 0 5px 0; }
  .read-me-btn a:hover::after {
    width: 100%;
    height: 100%;
    border-bottom: #2aba83 solid 3px;
    border-right: #2aba83 solid 3px;
    transition: 1s;
    border-radius: 5px; }

.banner {
  width: 100%;
  background: url(/img/domestic-violence-banner.webp) center no-repeat;
  background-size: cover;
  min-height: 15vh; }

@media screen and (max-width: 767px) {
  .banner {
    min-height: 6vh; } }

#back-to-top-btn {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 26px;
  width: 50px;
  height: 50px;
  color: #642c8c;
  cursor: pointer;
  outline: none;
  border: 3px solid #642c8c;
  border-radius: 50%;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  transition-property: background-color, color; }

#back-to-top-btn:hover,
#back-to-top-btn:focus {
  background: #642c8c;
  color: #efe; }

@media screen and (max-width: 767px) {
  #back-to-top-btn {
    font-size: 22px;
    width: 40px;
    height: 40px;
    bottom: 17px;
    right: 10px; } }

/* Animations */
.btnEntrance {
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-name: btnEntrance; }

/* zoomIn */
/* @keyframes btnEntrance { 
    from {
      opacity: 0;
      transform: scale3d(0.3, 0.3, 0.3);
    }
    to {
      opacity: 1;
    }    
  } */
/* fadeInUp */
@keyframes btnEntrance {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }

.btnExit {
  animation-duration: 0.25s;
  animation-fill-mode: both;
  animation-name: btnExit; }

/* zoomOut */
/* @keyframes btnExit {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
      transform: scale3d(0.3, 0.3, 0.3);
    }
  } */
/* fadeOutDown */
@keyframes btnExit {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(0, 100%, 0); } }

/* ******************** */
/* Animation */
/* ******************** */
@keyframes fade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes move-right {
  0% {
    transform: translateX(-13px); }
  70% {
    transform: translateX(10px); }
  100% {
    transform: translateX(0); } }

/* ******************** */
/* Header */
/* ******************** */
.header-main {
  background: linear-gradient(rgba(22, 23, 36, 0.75), rgba(22, 23, 36, 0.8)), url(/img/main-header.webp) no-repeat top center;
  background-size: cover;
  background-attachment: fixed; }

/* REFACTOR THE CODES LATER
IT'S A MESS */
.header .hamburger-menu {
  padding: 1.1em;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  border-radius: 100px; }

.header .hamburger {
  position: absolute;
  cursor: pointer;
  height: 100%;
  width: 100%;
  padding: .5em;
  z-index: 1;
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  border-radius: 100px;
  top: 6px;
  left: 0; }

.header .line {
  margin-top: .27em;
  height: 3px;
  width: 30px;
  top: 0;
  background: #efe;
  transition: 1s;
  position: absolute; }

.header .two {
  top: 8px; }

.header .three {
  top: 16px; }

.header .menu {
  width: 25%;
  height: 100%;
  background: #23252f;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transform: translateX(-100%);
  z-index: 1;
  transition: 1s;
  position: fixed; }
  .header .menu ul {
    width: 100%;
    height: 100%;
    padding: 2em 0;
    overflow-y: scroll; }
    .header .menu ul li {
      display: flex;
      justify-content: center;
      margin: 1em 0; }
  .header .menu .menu-home {
    padding: 2em 0; }
    .header .menu .menu-home i {
      color: #ccb6d8;
      font-size: clamp(1.8rem, 3vw, 3rem); }
  .header .menu .menu-links {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /*
                  This is the outer svg wrapper that the SVG itself will 
                  fill. Multiple svg-wrapper classes can be put side by side.
              */
    /*
                This is where we define the fill, color, thickness,
                and stroke pattern of the SVG when there is no hover.
                The dasharray and offset together define the line position
                under the words. Here's also where the transition speed is set.
              */
    /* 
                  Pushing the text up into the SVG. Without this the
                  text would be below the div's.
              */
    /* 
                  Changing the shape on hover. I change the color of the stroke,
              make it thinner, then set it to again wrap around the entire parent element.
              */ }
    .header .menu .menu-links a {
      font-family: 'Paytone One', sans-serif;
      position: relative;
      padding: .8em 1.5em; }
    .header .menu .menu-links .spot {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0; }
    .header .menu .menu-links .svg-wrapper {
      margin-top: 0;
      position: relative;
      width: 150px;
      /*make sure to use same height/width as in the html*/
      height: 40px;
      display: inline-block;
      border-radius: 3px;
      margin-left: 5px;
      margin-right: 5px; }
      .header .menu .menu-links .svg-wrapper a {
        padding: 1em 0; }
    .header .menu .menu-links #shape {
      stroke-width: 4px;
      fill: transparent;
      stroke: #ccb6d8;
      stroke-dasharray: 85 400;
      stroke-dashoffset: -220;
      transition: 1s all ease; }
    .header .menu .menu-links #text {
      margin-top: -35px;
      text-align: center; }
    .header .menu .menu-links #text a {
      color: #fff;
      text-decoration: none; }
    .header .menu .menu-links .svg-wrapper:hover #shape {
      stroke-dasharray: 50 0;
      stroke-width: 4px;
      stroke-dashoffset: 0;
      stroke: #ccb6d8; }
    .header .menu .menu-links .svg-wrapper:nth-child(odd) #shape {
      stroke: #9970b2; }
    .header .menu .menu-links .svg-wrapper:nth-child(odd):hover #shape {
      stroke: #9970b2; }

.navbar {
  width: 100%;
  position: fixed;
  z-index: 1;
  display: flex;
  justify-content: space-around;
  align-items: center;
  background: #161724;
  color: #efe;
  font-family: 'Paytone One', sans-serif;
  font-size: clamp(1.2rem, 1.5vw, 2.5rem);
  padding: .5em 0;
  z-index: 2; }
  .navbar .navbar-logo {
    width: 5vmin;
    height: 5vmin;
    background: #efe;
    border-radius: 100px; }
  .navbar .empty-space p {
    visibility: hidden; }

.header-text-box {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: clamp(320px, 70%, 1100px);
  padding: 3em 2em;
  font-family: 'Paytone One', sans-serif;
  display: flex;
  flex-direction: column;
  align-items: center; }
  .header-text-box h1 {
    background: -webkit-linear-gradient(#ccb6d8 0%, #9970b2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: clamp(3.5rem, 7vw, 5rem);
    display: flex;
    flex-direction: column;
    animation: move-right 1s; }
  .header-text-box h2 {
    width: clamp(180px, 40%, 1100px);
    font-size: clamp(1.5rem, 2.2vw, 1.8rem);
    font-family: lato, sans-serif;
    color: #ccb6d8;
    letter-spacing: 5px;
    border-radius: 10px;
    margin-top: .5em;
    display: flex;
    flex-direction: column;
    animation: fade 1.5s .15s backwards; }

/* ******************** */
@media screen and (min-width: 768px) {
  /* hiding the I Believe Her element which is a seperate element, on big screens  */
  .container .navbar-text__small-screen {
    display: none; } }

@media screen and (max-width: 767px) {
  /* created a whole new element for I Believe Her for smaller screen */
  .container .navbar-text__small-screen {
    width: 100%;
    color: #efe;
    position: fixed;
    background: #161724;
    z-index: 1;
    font-family: 'Paytone One', sans-serif;
    padding: .5em 0; }
  .container .navbar {
    max-width: 70%;
    min-height: 8vh;
    bottom: 8px;
    left: 50%;
    transform: translate(-50%);
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    border-radius: 10px; }
    .container .navbar .navbar-text {
      display: none; }
    .container .navbar .navbar-logo {
      width: 5vmax;
      height: 5vmax; }
    .container .navbar .hamburger-menu {
      display: flex;
      align-items: flex-end;
      justify-content: center; }
  .container .menu {
    width: 100%; }
    .container .menu ul {
      padding-bottom: 8em; } }

/* ******************** */
/* Intro Section */
/* ******************** */
.intro-section {
  width: clamp(35ch, 80%, 75ch); }
  .intro-section__text {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column; }
    .intro-section__text__last-paragraph {
      width: clamp(30ch, 50%, 75ch);
      color: #642c8c; }
    .intro-section__text > p {
      margin: 1.2em 0; }

/* ******************** */
/* How to support victim section */
/* ******************** */
.support-section {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(rgba(100, 44, 140, 0.7), rgba(100, 44, 140, 0.7)), url(/img/support-section.webp) center no-repeat;
  background-size: cover;
  background-attachment: fixed;
  color: #efe; }
  .support-section .support-box {
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    background: rgba(153, 112, 178, 0.7);
    border-radius: 10px; }
    .support-section .support-box__title {
      color: #efe; }
    .support-section .support-box__text {
      color: #efe; }
      .support-section .support-box__text__link {
        color: #341b45; }
        .support-section .support-box__text__link a {
          color: #332b8c;
          text-decoration: underline; }
          .support-section .support-box__text__link a:hover {
            color: rgba(51, 43, 140, 0.8); }

/* ******************** */
/* Myth Section */
/* ******************** */
.myth-section {
  width: clamp(300px, 80%, 1100px);
  margin: 0 auto 9em auto;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  .myth-section__title {
    margin-top: 6em; }
  .myth-section__intro-text {
    margin-bottom: 5em; }
  .myth-section .intro-box {
    width: clamp(25ch, 80%, 75ch);
    margin: 0 auto;
    padding: 1em 3em; }
  .myth-section__container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; }
    .myth-section__container__myth-box {
      width: clamp(25ch, 40%, 30ch);
      padding: 2em 1em;
      margin: 4em 2em;
      box-shadow: 0 0 8px 1px rgba(153, 112, 178, 0.4);
      border-radius: 8px;
      transition: .4s;
      background: rgba(204, 182, 216, 0.4);
      position: relative;
      z-index: 0; }
      .myth-section__container__myth-box__title {
        /* background of the myth title should be the same as body background */
        border: solid rgba(204, 182, 216, 0.4);
        background: #fff;
        position: absolute;
        z-index: -2; }
      .myth-section__container__myth-box__myths {
        margin-top: .5em; }
      .myth-section__container__myth-box h4 {
        color: #23252f;
        font-family: 'lato', sans-serif;
        position: absolute;
        left: 50%;
        transform: translate(-50%);
        top: -16px;
        padding: .6em 1.6em;
        border-radius: 8px; }
      .myth-section__container__myth-box P {
        color: #23252f; }
      .myth-section__container__myth-box:hover {
        transition: .4s; }
      .myth-section__container__myth-box__title {
        color: #642c8c;
        font-family: 'Paytone One', sans-serif; }
      .myth-section__container__myth-box__myths {
        margin: 1em; }

.footer {
  background: #23252f;
  width: 100%;
  padding: 5em 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-weight: bold; }
  .footer .footer-ul {
    width: clamp(320px, 70%, 1100px);
    margin: 0 auto;
    font-size: clamp(1rem, 1vw, 1.5rem); }
    .footer .footer-ul li {
      padding: 1em 0; }
    .footer .footer-ul__title {
      color: #ccb6d8;
      font-family: 'Paytone One', sans-serif; }
    .footer .footer-ul__col {
      display: flex;
      justify-content: center;
      align-items: baseline;
      flex-wrap: wrap;
      padding: 2em 0; }
      .footer .footer-ul__col > * {
        width: clamp(320px, 40%, 1100px); }
      .footer .footer-ul__col a {
        color: #efe;
        position: relative; }
        .footer .footer-ul__col a::before {
          content: "";
          position: absolute;
          display: block;
          width: 100%;
          height: 2px;
          bottom: -7px;
          left: 0;
          background: #2aba83;
          transform: scaleX(0);
          transition: transform 0.3s ease; }
        .footer .footer-ul__col a:hover::before {
          transform: scaleX(1); }
  .footer .copywrite {
    color: #efe; }

.hedear-myth {
  background: linear-gradient(rgba(22, 23, 36, 0.75), rgba(22, 23, 36, 0.8)), url(/img/amber-heard-0601221.webp) no-repeat center;
  background-size: cover;
  background-attachment: fixed;
  transition: .4s; }

@media screen and (max-width: 767px) {
  .hedear-myth {
    transition: .4s;
    background: linear-gradient(rgba(22, 23, 36, 0.75), rgba(22, 23, 36, 0.8)), url(/img/_125019362_index.jpg) center no-repeat;
    background-size: cover;
    background-attachment: fixed; } }

.myth-header__text-box {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }
  .myth-header__text-box h2 {
    font-size: clamp(4.2rem, 6vw, 14rem);
    width: clamp(320px, 60%, 1100px);
    padding: .7em 0;
    font-family: 'Paytone One', sans-serif; }

.myth {
  background: rgba(127, 78, 159, 0.05);
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #23252f; }
  .myth .myth-vs-fac-box {
    display: flex;
    justify-content: center;
    align-items: baseline;
    flex-wrap: wrap; }
  .myth .myth-vs-fact {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center; }
    .myth .myth-vs-fact .myth-box {
      width: clamp(320px, 50%, 1100px); }
      .myth .myth-vs-fact .myth-box__myth-title {
        background: #ef3b3c;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative; }
        .myth .myth-vs-fact .myth-box__myth-title i {
          position: absolute;
          background: #c11b28;
          bottom: -8px;
          padding: .2em .4em;
          border-radius: 100px; }
    .myth .myth-vs-fact .fact-box {
      width: clamp(320px, 50%, 1100px);
      padding: 2em; }
      .myth .myth-vs-fact .fact-box__main-fact-box__title {
        position: relative;
        background: #009a65;
        display: flex;
        justify-content: center;
        align-items: center; }
        .myth .myth-vs-fact .fact-box__main-fact-box__title i {
          position: absolute;
          background: #2aba83;
          border-radius: 100px;
          bottom: -8px;
          padding: .25em; }
  .myth .source-box {
    width: clamp(30ch, 70%, 70ch); }
    .myth .source-box__text-box {
      display: flex;
      flex-direction: column;
      align-items: center;
      box-shadow: 0 0 8px #ccb6d8;
      border-radius: 8px;
      padding: 3.5em 2.5em;
      margin: 0 auto;
      margin-bottom: 7em; }
      .myth .source-box__text-box > p {
        color: #23252f; }
      .myth .source-box__text-box ul li {
        list-style: circle;
        margin: 1em 0; }
      .myth .source-box__text-box a {
        display: inline-block;
        color: #8c2b84; }
        .myth .source-box__text-box a:hover {
          color: #332b8c; }
      .myth .source-box__text-box__text img {
        margin-bottom: 5em;
        border-radius: 10px; }
      .myth .source-box__text-box__text__src {
        width: clamp(20ch, 20%, 50ch);
        margin-top: 2em; }
        .myth .source-box__text-box__text__src > p {
          color: #542673; }
