@import url("https://fonts.googleapis.com/css2?family=Playpen+Sans:wght@800&display=swap");
/* Import utilities */
/* _variables.scss */
/* _mixins.scss */
/* _animations.scss */
@keyframes oscillate {
  0%, 100% {
    transform: scale(1, 1);
  }
  12.5% {
    transform: scale(1.5, 0.5);
  } /* Squeeze hard vertically */
  37.5% {
    transform: scale(0.5, 1.5);
  } /* Squeeze hard horizontally */
  62.5% {
    transform: scale(1.25, 0.75);
  } /* Squeeze soft vertically */
  87.5% {
    transform: scale(0.75, 1.25);
  } /* Squeeze soft horizontally */
}
#testimonialArea img:hover {
  animation: oscillate 0.5s ease-in-out;
}

/*
.will-animate {
	opacity: 0;
	transform: translateY(10rem);
	transition: all 1s ease-in;
}

.in-view {
	opacity: 1;
	transform: translateY(0);
} */
.float-up-hidden {
  opacity: 0;
  transform: translateY(8rem);
  transition: opacity 0.6s cubic-bezier(0, 0, 0, 1), transform 0.6s cubic-bezier(0, 0, 0, 1);
}

.float-up-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Import base styles */
/* _reset.scss */
*, *::before, *::after {
  box-sizing: border-box;
}

body, header, footer, section, article, aside, h1, h2, h3, h4, h5, h6, p, ul, ol, li {
  margin: 0;
  padding: 0;
}

html {
  width: 100%;
  min-height: 100%;
  font-size: 16px;
  scroll-behavior: smooth;
  overflow-x: hidden;
  cursor: url("../images/cursors/dog-cursor.png") 0 4, auto;
}

ul, ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

img, picture, svg, video, audio {
  display: block;
  max-width: 100%;
  border: none;
}

button, input, select, textarea, address {
  margin: 0;
  border: none;
  background: transparent;
  font: inherit;
}

/* _typography.scss */
.heading {
  font-family: "Playpen Sans", cursive;
  color: #80af1e;
  text-shadow: 0.25rem 0.25rem 1rem #031f3d;
}

#comName {
  font-size: max(3vw, 1rem);
}

#comTagline {
  font-size: max(2vw, 0.875rem);
}
#comTagline sup {
  font-size: max(1vw, 0.4375rem);
}

#navBar {
  font-size: max(1.75vw, 0.875rem);
}

#aboutMeContainer p {
  font-family: Bahnschrift, "DIN Alternate", "Franklin Gothic Medium", "Nimbus Sans Narrow", sans-serif-condensed, sans-serif;
  color: #ffffff;
  line-height: 1.5rem;
}
#aboutMeContainer p:nth-of-type(2) {
  margin-block: 0.5rem;
}
#aboutMeContainer a {
  color: #c0ff2c;
  cursor: url("../images/cursors/paw-cursor.png") 16 16, pointer;
}
#aboutMeContainer a:hover {
  color: #00ffff;
}

#testimonialArea h2 {
  text-align: center;
}
#testimonialArea p {
  color: #ffffff;
  font-family: Bahnschrift, "DIN Alternate", "Franklin Gothic Medium", "Nimbus Sans Narrow", sans-serif-condensed, sans-serif;
}
#testimonialArea p:first-of-type {
  line-height: 1.5rem;
}
#testimonialArea p:not(:first-of-type) {
  text-align: right;
}
#testimonialArea .test-name {
  color: #80af1e;
}
#testimonialArea .test-date {
  font-size: 11.2px;
}

#siteMap {
  font-size: max(1.75vw, 0.875rem);
}
#siteMap div:first-of-type h3 {
  color: #c0ff2c;
}

#footerBottom {
  text-align: center;
  color: #ffffff;
}
#footerBottom a {
  color: #80af1e;
}
#footerBottom #contact a {
  color: #c0ff2c;
}
#footerBottom a:hover {
  color: #00ffff;
}
#footerBottom p {
  font-family: Bahnschrift, "DIN Alternate", "Franklin Gothic Medium", "Nimbus Sans Narrow", sans-serif-condensed, sans-serif;
  line-height: 1.5rem;
}

/* Import layout styles */
/* _layout.scss */
.grid {
  display: grid;
}

.flex {
  display: flex;
}

.flex-align-both {
  justify-content: center;
  align-items: center;
}

.border {
  border: 0.25rem solid #80af1e;
}

.box-shadow {
  box-shadow: 0.1rem 0.1rem 0.25rem #031f3d;
}

body {
  grid-template-columns: 1.5rem 1fr 1.5rem;
  grid-template-areas: "header header header" ". about ." ". testimony ." "gallery gallery gallery" "footer footer footer";
}
@media (min-width: 769px) and (max-width: 1280px) {
  body {
    grid-template-columns: 1fr 1fr 66.67% 1fr 1fr;
    grid-template-areas: "header header header header header" ". . about . ." ". . testimony . ." ". gallery gallery gallery ." "footer footer footer footer footer";
  }
}
@media (min-width: 1281px) {
  body {
    grid-template-columns: 1fr 1fr 50% 1fr 1fr;
    grid-template-areas: ". header header header ." ". . about . ." ". . testimony . ." ". gallery gallery gallery ." ". footer footer footer .";
  }
}
body header, body section {
  margin: 0 0 1rem 0;
}

header {
  grid-area: header;
}

#aboutMeContainer {
  grid-area: about;
}

#testimonialArea {
  grid-area: testimony;
}

#imageGallery {
  grid-area: gallery;
}

footer {
  grid-area: footer;
}

.nav-bar {
  flex-wrap: wrap; /* Allow row wrapping */
  padding: 0.5rem 1rem 0.5rem 1rem;
  background-color: rgba(3, 31, 61, 0.8);
}
.nav-bar a {
  cursor: url("../images/cursors/paw-cursor.png") 16 16, pointer; /* Set pointer cursor for links and buttons */
  padding: 0 1rem;
}
.nav-bar a:first-of-type, .nav-bar a:last-of-type {
  color: #c0ff2c;
}
.nav-bar a:hover {
  color: #00ffff;
}

#comDetails {
  padding: 1rem;
}

#aboutMeContainer {
  background-color: rgba(3, 31, 61, 0.8);
  padding: 1rem;
}

#testimonialArea {
  background-color: rgba(3, 31, 61, 0.8);
  padding: 1rem;
}
#testimonialArea #testimonialCarousel {
  flex-direction: column;
  position: relative;
  gap: 1rem;
  margin: 1rem 0 0 0;
}
#testimonialArea #testimonialCarousel .arrow {
  align-self: center;
}
#testimonialArea .rating {
  flex-direction: row;
  gap: 1rem;
}
#testimonialArea .testimonial-list {
  position: relative;
}
#testimonialArea .testimony {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s ease-in, visibility 0.3s ease-in;
  z-index: 10;
}
#testimonialArea .testimony.active {
  visibility: visible;
  opacity: 1;
  z-index: 20;
}

#imageGallery {
  position: relative;
  overflow: hidden;
}
#imageGallery .slide-wrapper {
  min-width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}

#footer {
  flex-direction: column;
  gap: 1rem;
  padding: 1rem;
}

#siteMap {
  gap: 1rem;
}

#footerBottom {
  gap: 1rem;
  flex-direction: column;
}
@media (min-width: 513px) {
  #footerBottom {
    flex-direction: row;
  }
}
#footerBottom a {
  cursor: url("../images/cursors/paw-cursor.png") 16 16, pointer;
}

@supports (backdrop-filter: blur(1rem)) {
  .bg-blur {
    background-color: rgba(3, 31, 61, 0.8);
    backdrop-filter: blur(1rem); /* Blur the page background through a transparent element */
  }
}
/* Import specific UI component styles */
/* _images.scss */
body {
  background-image: url("../images/raster/dogs-playing-in-mountain-lake.png");
  background-position: center bottom; /* Position background along X and Y axes */
  background-attachment: fixed; /* Fix background while scrolling */
  background-repeat: no-repeat; /* Avoid repeating */
  background-size: cover; /* Stretch to fill screen */
}

header {
  background-image: url("../images/raster/man-and-his-dog-upper-echo-lake.jpeg");
  background-size: cover; /* Fill the entire container */
  background-position: center; /* Center background along X- and Y-axes */
}

svg path {
  fill: #80af1e;
}

.arrow {
  width: max(5vw, 3rem);
  cursor: url("../images/cursors/paw-cursor.png") 16 16, pointer;
  z-index: 10;
}

.arrow:hover svg path {
  fill: #00ffff;
}

.down-arrow {
  transform: rotate(180deg);
}

#headerLogo {
  width: clamp(5rem, 15vw, 15rem);
}

#avatarImage {
  border-radius: 5rem;
  shape-outside: polygon(0px 0px, 0px 100%, 100% 0px, 100% 85%, 75% 100%);
  float: left;
  width: clamp(7.5rem, 20vw, 15rem);
  margin: 0 0.5rem 0.5rem 0;
}

#imageGallery img {
  width: 100%;
}
#imageGallery button {
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
}
#imageGallery button:nth-of-type(2) {
  right: 0;
}
#imageGallery .arrow-prev {
  transform: rotate(270deg);
  width: 20%;
}
#imageGallery .arrow-next {
  transform: translateY(-50%) rotate(90deg);
  position: absolute;
  right: 0;
  width: 20%;
}

/*# sourceMappingURL=style.css.map */
