@charset "UTF-8";
/* Theme Name: La Calma
 * Theme URI: https://3x5.co
 * Description: Theme for Alexandra's retreat
 *
 * Author: 3×5
 * Version: 1.1 */
/* */
@font-face {
  font-family: "HoneyScript-SemiBold";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/HoneyScript-SemiBold.woff") format("woff");
}
@font-face {
  font-family: "Prida36";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/Prida36.woff") format("woff");
}
html {
  height: 100%;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  background-color: #fafcff;
  font-size: 100.01%;
  margin: 0 0 0.01em;
  scroll-behavior: smooth;
}
@media screen and (max-width:30rem) {
  html {
    background-attachment: unset;
  }
}

body {
  position: static;
  text-align: center;
  margin: 0;
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: stretch;
  align-content: stretch;
  justify-content: space-between;
  font-family: Alegreya Sans;
  font-feature-settings: "liga", "clig", "swsh", "pnum", "onum", "ordn";
  background: linear-gradient(to bottom, #332e21, rgba(36, 55, 33, 0.5) 8rem);
  min-height: 100vh;
  font-size: 1.5rem;
  font-weight: 300;
  color: #333;
  line-height: 2rem;
}
body.interior {
  background: linear-gradient(to bottom, #332e21, rgba(36, 55, 33, 0.625) 8rem);
}

br {
  clear: both;
}

hr,
.wp-block-separator {
  clear: both;
  padding: 0;
  border: 0 none;
  margin-left: auto;
  margin-right: auto;
  height: 2px;
  margin: 6rem auto;
  width: 20rem;
  background: #3a4c2c;
  border-top: unset !important;
}

h2, h4, h5, h6 {
  clear: both;
  font-weight: 400;
  margin: 2rem 0;
}

h1 {
  clear: both;
  font-weight: 600;
  line-height: 0.5;
  margin: 0 0 1rem;
}
.home h1 {
  font-family: HoneyScript-SemiBold;
  font-feature-settings: "liga", "clig", "swsh", "pnum", "onum", "ordn";
  font-size: 15rem;
}
@media screen and (max-width:30rem) {
  h1 {
    font-size: 4rem;
  }
}

h2 {
  clear: both;
  font-weight: 900;
  font-family: Alegreya Sans;
  font-feature-settings: "liga", "clig", "swsh", "pnum", "onum", "ordn";
  font-style: italic;
  font-size: 3rem;
  line-height: 1.25;
  margin: 0 0 2rem;
}

h3 {
  margin: 4rem 0;
  font-weight: 500;
  font-size: 2.75rem;
  line-height: 0.8;
}
h3 strong {
  font-weight: 900;
}

h4 {
  font-weight: normal;
  font-size: 1.75rem;
}

h5 {
  font-family: Montserrat;
  font-feature-settings: "liga", "clig", "dlig", "swsh", "pnum", "onum", "ordn";
  margin: 1rem 0 0 0;
  font-size: 1.125rem;
  font-weight: 600;
}

h6 {
  font-size: 0.875rem;
}

a:link {
  color: #243721;
  text-decoration-thickness: 1px;
  text-decoration-style: wavy;
}
a:visited {
  color: #243721;
}

main {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
}

main ul li, #contact ul li {
  margin-left: 0;
  padding-left: 0;
  list-style-position: inside;
  list-style: none;
}
main ul li::before, #contact ul li::before {
  padding-right: 0.5em;
  vertical-align: 6%;
  font-size: 0.8em;
  content: "▸";
}

main ul li {
  margin-bottom: 2rem;
}

ul ul {
  margin-top: 2rem;
}

p {
  margin: 2rem 0;
  word-spacing: 0.1em;
}

sup, sub {
  position: relative;
  font-size: 0.75em;
  padding: 0 1px;
  line-height: 0;
}

small {
  font-size: 0.875rem;
}

em, i {
  font-style: italic;
}

strong, b {
  font-weight: bold;
}

big {
  font-size: 2rem;
}

figure {
  margin: 0;
  padding: 0;
}

img {
  max-width: 100%;
  height: auto;
}

input, textarea {
  box-sizing: border-box;
}
input::placeholder, textarea::placeholder {
  transition: all 0.2s ease-in-out;
  color: #000;
}
input:focus::placeholder, textarea:focus::placeholder {
  color: transparent;
}
input:hover, input:focus, input:active, textarea:hover, textarea:focus, textarea:active {
  outline: 2px solid #3a4c2c;
}

input, textarea, button, select {
  vertical-align: middle;
  margin: 4px 0 9px;
}

input:not([type=checkbox]), textarea, [readonly]:hover, select {
  color: #444;
  border: 1px solid #7f8080;
  font-size: 1.375rem;
  font-family: inherit;
  background-repeat: repeat-x;
  background-color: #white;
  background-position: 0px -718px;
}

input:not([type=checkbox]) {
  width: 100%;
  box-sizing: border-box;
  height: 3rem;
}

input:not([type=checkbox]), textarea {
  font-style: italic;
  line-height: 3rem;
  padding: 0 1rem;
}

input:not([type=checkbox]):hover, textarea:hover, select:hover {
  border: 1px solid #f15e70;
  color: #000;
  background-color: #f6e6ae;
}
input:not([type=checkbox]):focus, textarea:focus, select:focus {
  border: 1px solid #f15e70;
  color: #000;
  background-color: #f6e6ae;
}

select {
  border: 0 none;
  height: 2.5rem;
  padding: 0.5rem 0.75rem;
}
select:focus {
  outline: 0 none;
}
select:-moz-focusring {
  color: transparent;
}

option {
  padding: 5px;
}

textarea {
  padding-top: 0.75rem;
  width: 100%;
  resize: vertical;
  overflow: auto;
  min-height: 10rem;
  line-height: 1;
}

input[type=checkbox] {
  appearance: none;
  vertical-align: middle;
  margin-right: 0.5rem;
  background: #fafcff;
  height: 1rem;
  width: 1rem;
}
input[type=checkbox]:checked {
  background: linear-gradient(-45deg, transparent calc(50% - 2px), #3a4c2c calc(50% - 2px), #3a4c2c calc(50% + 2px), transparent calc(50% + 2px)), linear-gradient(45deg, transparent calc(50% - 2px), #3a4c2c calc(50% - 2px), #3a4c2c calc(50% + 2px), transparent calc(50% + 2px)) #fafcff;
}

[type=submit], button, .button, .wp-element-button {
  border: 0 none;
  text-transform: uppercase;
  display: inline-block;
  transition: all 0.2s ease-in-out;
  font-weight: 600;
  font-family: Montserrat;
  font-size: 1.125rem;
  cursor: pointer;
  padding: 1rem 1.5rem;
  color: #fafcff;
  line-height: 1;
  letter-spacing: 0.2em;
  background: #8f432e;
  border-radius: 0.25rem;
}
[type=submit]:link, [type=submit]:visited, button:link, button:visited, .button:link, .button:visited, .wp-element-button:link, .wp-element-button:visited {
  color: #fafcff;
}
[type=submit]:hover, [type=submit]:focus, [type=submit]:active, button:hover, button:focus, button:active, .button:hover, .button:focus, .button:active, .wp-element-button:hover, .wp-element-button:focus, .wp-element-button:active {
  text-decoration: none;
  background: #243721;
}

.altbuttons a {
  background: #243721;
}
.altbuttons a:hover, .altbuttons a:focus, .altbuttons a:active {
  background: #675182;
}

[disabled], [disabled]:hover {
  border: 1px solid #7f8080;
  color: #7f8080;
  background-color: #f7ffdf;
}

.hidden-fields-container {
  position: fixed;
  right: 120vw;
}

.ajax-loader,
.wpcf7-spinner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: none;
  background: rgba(214, 225, 173, 0.8);
  z-index: 3;
}
.submitting .ajax-loader,
.submitting .wpcf7-spinner {
  display: -ms-flexbox;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
}
.ajax-loader:before, .ajax-loader:after,
.wpcf7-spinner:before,
.wpcf7-spinner:after {
  content: "";
}
.ajax-loader:before,
.wpcf7-spinner:before {
  display: inline-block;
  font-size: 0;
  border-radius: 100%;
  height: 4rem;
  width: 4rem;
  background: rgba(214, 225, 173, 0.2);
  border: 0.75rem solid transparent;
  border-top-color: #3a4c2c;
  border-right-color: #3a4c2c;
  animation: rot8n 0.6s linear infinite;
}
.ajax-loader:after,
.wpcf7-spinner:after {
  display: block;
  position: absolute;
  font-size: 0;
  line-height: 0;
  height: 0;
  top: 100%;
}

@keyframes rot8n {
  to {
    transform: rotate(360deg);
  }
}
.wpcf7-response-output {
  position: absolute;
  text-align: center;
  right: 0;
  left: 0;
  bottom: 0;
  display: none;
  color: #fafcff;
  background: #3a4c2c;
  z-index: 2;
  font-weight: 600;
  margin: auto;
  line-height: 1.5rem;
  padding: 0.5rem;
}
.submitted .wpcf7-response-output, .invalid .wpcf7-response-output {
  display: block;
}

.wpcf7-form-control-wrap {
  position: relative;
}

.wpcf7-display-none, .screen-reader-response {
  display: none;
}

.wpcf7-not-valid-tip {
  position: absolute;
  right: 0;
  font-size: 0.75rem;
  z-index: 2;
  border: 2px solid #3a4c2c;
  background: #f3d549;
  font-weight: 600;
  padding: 6px;
  line-height: 1.125rem;
}

.wpcf7-not-valid-tip-no-ajax {
  display: block;
  color: #3a4c2c;
}

.carousel {
  position: relative;
  box-shadow: inset 0 0 6rem rgba(0, 0, 0, 0.7);
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: flex-end;
  min-height: 50rem;
  padding: 2rem 2rem 6rem 2rem;
  background-color: #3a4c2c;
  background-image: url(https://cdn.shortpixel.ai/spai/w_1920+q_lossy+ret_img+to_webp/q4-consulting.com/wp-content/uploads/2019/09/paper.jpg);
  background-blend-mode: multiply;
  scrollbar-color: transparent transparent;
  -ms-overflow-style: none;
}
.carousel > div {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  overflow-x: scroll;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
}
@media (hover: hover) {
  .carousel > div {
    position: static;
    overflow-x: hidden;
    overflow-y: visible;
    align-items: flex-end;
    justify-content: center;
  }
}
.carousel figure {
  position: relative;
  margin: 0;
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  box-sizing: border-box;
  scroll-snap-align: center;
  padding: 2rem 4rem;
  flex: 0 0 100%;
  width: 100%;
}
@media screen and (max-width:30rem) {
  .carousel figure {
    padding: 2.25rem;
  }
}
@media (hover: hover) {
  .carousel figure {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    bottom: 2rem;
    opacity: 0;
    transition: all 0.2s;
  }
  .carousel input:checked + figure {
    opacity: 1;
  }
}
.carousel::before, .carousel::after {
  z-index: 1;
  font-size: 4rem;
  color: rgba(250, 252, 255, 0.8);
  content: "";
  z-index: 1;
}
@media (hover: hover) {
  .carousel::before, .carousel::after {
    transform: translate(0, -1rem);
  }
}
.carousel::before, .carousel::after,
.carousel label {
  position: absolute;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 4rem;
  height: 4rem;
}
@media screen and (max-width:30rem) {
  .carousel::before, .carousel::after,
  .carousel label {
    width: 2rem;
    font-size: 2rem;
  }
}
.carousel label {
  cursor: pointer;
  z-index: 2;
  font-size: 0;
}
.carousel::before {
  content: "❮";
}
.carousel::after {
  content: "❯";
}
.carousel::before,
.carousel .lslide {
  left: 2rem;
}
@media screen and (max-width:70rem) {
  .carousel::before,
  .carousel .lslide {
    left: 0;
  }
}
.carousel::after,
.carousel .rslide {
  right: 2rem;
}
@media screen and (max-width:70rem) {
  .carousel::after,
  .carousel .rslide {
    right: 0;
  }
}
.carousel input {
  text-align: center;
  margin: 0;
  padding: 0;
  border: 0 none;
  height: 100%;
  position: relative;
  opacity: 0;
  left: 50%;
  cursor: pointer;
  appearance: none;
}
.carousel input:hover, .carousel input:focus, .carousel input:active {
  border: 0 none;
}
@media (hover: hover) {
  .carousel input {
    position: static;
    z-index: 2;
    opacity: 1;
    height: 1.5rem;
    width: 1.5rem;
    border: 3px solid #fafcff;
    border-radius: 100%;
    margin: 0 1rem;
  }
  .carousel input::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
  }
  .carousel input:hover, .carousel input:focus, .carousel input:active {
    background: none;
    border: 6px solid #fafcff;
  }
  .carousel input:checked {
    background: #fafcff;
  }
}
.carousel blockquote {
  margin: auto;
  max-width: 50rem;
  color: #fafcff;
}
.carousel blockquote p {
  position: relative;
  font-family: Montserrat;
  font-feature-settings: "liga", "clig", "dlig", "swsh", "pnum", "onum", "ordn";
  text-shadow: 0 0 1.5rem #000;
  z-index: 0;
  font-size: 1.75rem;
  line-height: 1.5;
}
@media screen and (max-width:70rem) {
  .carousel blockquote p {
    font-size: 1.25rem;
  }
}
@media screen and (max-width:30rem) {
  .carousel blockquote p {
    font-size: 1.125rem;
  }
}
.carousel blockquote p::before, .carousel blockquote p::after {
  position: relative;
  font-style: normal;
  line-height: 0;
  opacity: 0.3;
  z-index: -1;
  font-size: 12rem;
}
@media screen and (max-width:70rem) {
  .carousel blockquote p::before, .carousel blockquote p::after {
    font-size: 6em;
  }
}
.carousel blockquote p::before {
  top: -0.05em;
  content: "“";
  vertical-align: bottom;
}
.carousel blockquote p::after {
  top: -0.05em;
  content: "”";
  vertical-align: bottom;
}
.carousel cite {
  font-style: normal;
  text-align: right;
  text-shadow: 0 0 0.25rem #000;
  font-weight: 200;
  font-size: 1.25rem;
}
.carousel cite::before {
  content: "— ";
}
@media screen and (max-width:70rem) {
  .carousel cite {
    display: block;
    font-size: 1rem;
    line-height: 1.5;
  }
}

.menu {
  font-family: Montserrat;
  font-feature-settings: "liga", "clig", "dlig", "swsh", "pnum", "onum", "ordn";
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 1rem;
  font-weight: 600;
}
@media screen and (max-width:70rem) {
  .menu {
    font-size: 1.5rem;
  }
}

.home .menu .active,
.footer .contact {
  display: none;
}

.social {
  font-size: 0;
}
.social a {
  display: block;
  border-radius: 100%;
  margin: 6px;
  height: 2rem;
  width: 2rem;
  background-size: auto 2rem;
  background-position: center;
}

.skip {
  position: fixed;
  right: 120vw;
}
.skip:hover, .skip:focus, .skip:active {
  position: static;
}

.logo {
  font-family: HoneyScript-SemiBold;
  font-feature-settings: "liga", "clig", "swsh", "pnum", "onum", "ordn";
  position: relative;
  display: inline-block;
  width: fit-content;
  font-size: 4rem;
  font-weight: 200;
  z-index: 1;
  line-height: 1;
}
.logo:link, .logo:visited {
  text-decoration: none;
  color: #fafcff;
}
.logo div {
  display: block;
  font-size: 1.1rem;
}
.logo img:first-child {
  margin-right: 0.75rem;
  max-width: 4rem;
}
.logo img:first-child + img {
  vertical-align: bottom;
  height: 3rem;
}
.logo:hover {
  text-decoration: none;
}
.logo svg {
  fill: #f3d549;
  left: 0;
  position: absolute;
  top: -0.75rem;
  z-index: -1;
  width: 10rem;
}
.logo div {
  position: relative;
  z-index: 1;
}
[role=banner] .logo {
  flex-grow: 1;
  flex-shrink: 0;
}
[role=contentinfo] .logo strong {
  display: block;
}

[role=banner] {
  position: relative;
}
[role=banner] nav {
  margin-left: auto;
  margin-right: auto;
  max-width: 144rem;
  position: relative;
  text-align: left;
  padding: 1rem 2rem 1rem 1rem;
  gap: 1rem 2rem;
  text-shadow: 0 0 0.5rem #332e21, 0 0 1rem #332e21;
}
@media screen and (min-width:70rem) {
  [role=banner] nav {
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-content: flex-end;
  }
}
[role=banner] nav > ul {
  position: relative;
  margin: 0;
  padding-left: 1rem;
  line-height: 1;
  z-index: 1;
  list-style: none;
}
@media screen and (min-width:70rem) {
  [role=banner] nav > ul {
    display: -ms-flexbox;
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-content: flex-end;
    gap: 2rem;
  }
}
@media screen and (max-width:70rem) {
  [role=banner] nav > ul {
    display: none;
  }
  [role=banner] nav > ul li {
    margin: 2rem 0;
  }
}
[role=banner] nav > ul a:link, [role=banner] nav > ul a:visited, [role=banner] nav > ul span {
  text-decoration: none;
  display: block;
  position: relative;
  color: #fafcff;
}
[role=banner] nav > ul a:link:hover, [role=banner] nav > ul a:link:focus, [role=banner] nav > ul a:link:active, [role=banner] nav > ul a:visited:hover, [role=banner] nav > ul a:visited:focus, [role=banner] nav > ul a:visited:active, [role=banner] nav > ul span:hover, [role=banner] nav > ul span:focus, [role=banner] nav > ul span:active {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-style: wavy;
  text-underline-offset: 0.125em;
  text-decoration-color: rgba(250, 252, 255, 0.75);
}
[role=banner] nav > ul .active a:link,
[role=banner] nav > ul .active a:visited {
  color: #d6e1ad;
  box-shadow: 0 1px 1px #332e21;
}

.mobile[type=checkbox] {
  appearance: none;
  display: inline-block;
  position: absolute;
  border: 0 none;
  margin: 0;
  background: linear-gradient(to bottom, #243721 20%, transparent 20%, transparent 40%, #243721 40%, #243721 60%, transparent 60%, transparent 80%, #243721 80%) transparent;
  border-radius: 0;
  top: 1.5rem;
  right: 1.5rem;
  width: 2rem;
  height: 2rem;
  z-index: 2;
}
.mobile[type=checkbox]:hover, .mobile[type=checkbox]:focus, .mobile[type=checkbox]:active {
  outline: 0 none;
}
.mobile[type=checkbox]:checked {
  background: linear-gradient(-45deg, transparent calc(50% - 2px), #243721 calc(50% - 2px), #243721 calc(50% + 2px), transparent calc(50% + 2px)), linear-gradient(45deg, transparent calc(50% - 2px), #243721 calc(50% - 2px), #243721 calc(50% + 2px), transparent calc(50% + 2px)) transparent;
}
@media screen and (max-width:70rem) {
  .mobile[type=checkbox]:checked + ul {
    display: block;
  }
}
@media screen and (min-width:70rem) {
  .mobile[type=checkbox] {
    display: none;
  }
}

.hero {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: flex-end;
  padding: 2rem;
  color: #fafcff;
  min-height: 10rem;
}
.home .hero {
  min-height: calc(100vh - 160px);
}
.interior .hero {
  border-bottom: 0.25rem solid #d6e1ad;
}
.hero h1, .hero h3 {
  text-shadow: 0 1px 0 #332e21, 0 -1px 0 #332e21, 1px 0 0 #332e21, -1px 0 0 #332e21, 0 0 0.5em #332e21, 0 0 0.5em #332e21, 0 0 1em #332e21, 0 0 1em #332e21;
}
.hero h3, .interior .hero h1 {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-family: Prida36;
}
.hero h3 {
  margin: 1.5rem 0 0 0;
  font-size: 2.25rem;
}
@media screen and (max-width:30rem) {
  .hero h3 {
    font-size: 2rem;
  }
}
.interior .hero h1 {
  font-size: 4rem;
  text-shadow: 0 1px 0 #332e21, 0 0 0.125em #332e21, 0 0 0.125em #332e21, 0 0 0.125em #332e21, 0 0 0.375em #332e21, 0 0 0.375em #332e21;
}
.hero .button {
  margin-bottom: 2rem;
  text-decoration: none;
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.5);
}
.hero .button:hover, .hero .button:focus, .hero .button:active {
  box-shadow: 0 0 3rem rgba(250, 252, 255, 0.5);
}

.marquees {
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: left;
  padding: 0.5rem 0;
  background: rgba(51, 51, 51, 0.9);
}
.marquees header {
  text-transform: uppercase;
  margin: 0;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  box-sizing: content-box;
  white-space: normal;
  padding: 1rem 9rem 1rem 1rem;
  line-height: 1.2;
  background: linear-gradient(to left, transparent 2rem, #333 9rem);
  max-width: 10rem;
  z-index: 1;
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.2em;
  font-family: Montserrat;
}

.marquee {
  white-space: nowrap;
  display: inline-block;
  position: relative;
  width: fit-content;
}
.marquee img {
  vertical-align: middle;
  margin: 0 2rem;
  object-fit: contain;
  max-height: 2.25rem;
  max-width: 7.5rem;
}
.marquee div {
  display: inline-block;
  position: relative;
  width: fit-content;
}
.marquee div:first-child {
  animation: marquee 60s linear infinite;
  transform: rotateZ(360deg);
}

@keyframes marquee {
  0% {
    margin-left: 0;
  }
  100% {
    margin-left: -50%;
  }
}
.statement, .why {
  line-height: 1.5;
}

.statement {
  text-align: left;
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  font-size: 1.25rem;
  background: #e1e2e1;
}
@media screen and (min-width:70rem) {
  .statement {
    display: -ms-flexbox;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    align-content: center;
    justify-content: center;
    background: url(https://us-ord-1.linodeobjects.com/q-4/bodyshot_bio.jpg) no-repeat calc(50% - 21rem) top/auto 100%, linear-gradient(to right, #232323 40%, #e1e2e1 40%);
    justify-content: flex-end;
  }
}
.statement.block-editor-block-list__block {
  background: #e1e2e1;
}
.statement ul {
  padding-left: 0;
}
.statement li {
  margin-bottom: 1rem;
}
.statement p:first-child strong {
  font-size: 1.25em;
}
.statement > div {
  margin-left: auto;
  margin-right: auto;
  max-width: 84rem;
  gap: 4rem;
  padding: 0.1em 2rem 0 2rem;
}
@media screen and (min-width:70rem) {
  .statement > div {
    padding: 4rem 2rem 0 2rem;
  }
  .statement > div figure, .statement > div > div {
    flex: 1 1 0;
  }
}
.statement > div > div {
  padding-bottom: 4rem;
  margin: 0 0 0 auto;
}
@media screen and (min-width:70rem) {
  .statement > div > div {
    width: 50%;
  }
}
.statement img {
  float: left;
  width: 50%;
  min-width: 20rem;
  margin: -2rem -3rem 0 -2rem;
}
@media screen and (max-width:30rem) {
  .statement img {
    margin-right: -1rem;
    width: 60%;
    min-width: unset;
  }
}
@media screen and (min-width:70rem) {
  .statement img {
    display: none;
  }
}

.why {
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  text-align: left;
  position: relative;
  min-height: 100vh;
  box-shadow: inset 0 0 6rem rgba(0, 0, 0, 0.7);
  padding: 2rem 0 4rem 0;
  color: #fafcff;
  min-height: 100vh;
  background-color: #3a4c2c;
  background-image: url(https://cdn.shortpixel.ai/spai/w_1920+q_lossy+ret_img+to_webp/q4-consulting.com/wp-content/uploads/2019/09/paper.jpg);
  background-size: cover;
  background-blend-mode: multiply;
}
.why > div {
  margin-left: auto;
  margin-right: auto;
  max-width: 84rem;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  padding: 0 2rem;
}
@media screen and (min-width:70rem) {
  .why {
    padding: 4rem 2rem;
  }
}
.why > div {
  margin-bottom: 1rem;
  max-width: 72rem;
}
@media screen and (max-width:30rem) {
  .why > div {
    display: block;
  }
}
.why h2 {
  text-shadow: 0 0 0.75rem #000;
}
.why h4 {
  text-transform: uppercase;
  text-shadow: 0 0 0.75rem #000;
  font-size: 1.5rem;
  letter-spacing: 0.2em;
  word-spacing: 0.5em;
  font-family: Montserrat;
}
.why ul, .why li {
  margin-left: 0;
  padding-left: 0;
}
.why p, .why li {
  text-shadow: 0 0 0.75rem #000;
}
.why figure {
  text-align: center;
}
@media screen and (min-width:30rem) {
  .why div + .wp-block-image {
    min-width: 24rem;
  }
  .why .wp-block-gallery figure {
    min-width: 12rem;
  }
}
.why > div > figure, .why > div > div:first-child {
  flex: 1 1 0px;
}
@media screen and (min-width:30rem) {
  .why > div > div:first-child {
    min-width: 18rem;
  }
}
.why .wp-block-gallery {
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  align-content: center;
  justify-content: space-around;
  width: 100%;
  box-sizing: border-box;
  padding: 0 1rem;
  gap: 3rem;
}
.why .wp-block-gallery a {
  display: block;
}
.why .wp-block-gallery img {
  width: auto;
  max-height: 2.5rem;
  max-width: 14rem;
}
@media screen and (min-width:70rem) {
  .why .wp-block-gallery {
    margin-top: 4rem;
  }
  .why .wp-block-gallery figure:first-child img {
    position: relative;
    top: 0.5rem;
  }
}

.more h2 + p, .content h2 + p {
  line-height: 2.25rem;
  font-size: 1.625rem;
}

.more {
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  position: relative;
  box-shadow: inset 0 0 6rem rgba(0, 0, 0, 0.7);
  color: #fafcff;
  padding: 5rem 0;
  background: #3a4c2c;
}
@media screen and (min-width:70rem) {
  .more {
    padding: 7rem 0;
  }
}
.more h2, .more strong {
  color: #f6e6ae;
}
.more h2 + p, .more strong + p {
  margin-bottom: 4rem;
  max-width: 50rem;
}
.more img {
  border-radius: 100%;
  width: 26rem;
  aspect-ratio: 1/1;
  object-fit: cover;
  border: 0.75rem solid #fafcff;
  box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.3);
}
.more hr {
  border: 0 none;
  width: 5rem;
  margin: 3rem auto;
  background-color: #d6e1ad;
}
.more figure {
  padding: 0;
  margin: 0 0 2rem 0;
}
.more figcaption {
  margin-top: 1.5rem;
  color: #f6e6ae;
}
.more hr ~ div figcaption {
  min-height: 5rem;
}
.more > div {
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  width: 100%;
  justify-content: center;
  box-sizing: border-box;
  align-items: flex-start;
  gap: 6rem 8rem;
  padding: 0 2rem;
}
@media screen and (min-width:30rem) {
  .more > div {
    padding: 0 4rem;
  }
}
.more > div > div {
  flex: 1 1 0;
  max-width: 30rem;
}
@media screen and (min-width:30rem) {
  .more > div > div {
    min-width: 20rem;
  }
}
.more h3 {
  font-family: Montserrat;
  font-feature-settings: "liga", "clig", "dlig", "swsh", "pnum", "onum", "ordn";
  font-size: 2rem;
  line-height: 1;
}
.more h4 {
  font-family: Montserrat;
  font-feature-settings: "liga", "clig", "dlig", "swsh", "pnum", "onum", "ordn";
  margin-top: 0.5rem;
  margin-bottom: 0;
  font-size: 1.25rem;
}
.more ul, .more li {
  margin: 0;
  padding: 0;
}
.more strong {
  position: relative;
}
.more strong:has(a) {
  display: inline-block;
  margin-top: 2rem;
}
.more strong a {
  text-decoration: underline;
  color: #fff;
}
.more ul {
  margin-top: 1rem;
  text-shadow: 0 0 0.5rem #3a4c2c, 0 0 0.5rem #3a4c2c;
}
.more li {
  margin: 1rem 0;
  line-height: 1.25;
}
.more li::before {
  content: none;
  vertical-align: 12%;
}
.more hr ~ li, .more hr ~ div p, .more hr ~ h2, .more hr ~ div h3, .more hr ~ div h4, .more hr ~ div h5 {
  color: #000;
}
.more hr ~ div figure + p {
  min-height: 6em;
}
.more hr ~ div a {
  color: #3a4c2c;
}
.more hr ~ div ul {
  color: #000;
  text-shadow: none;
}
.more p {
  margin: 0;
  position: relative;
  word-spacing: 0;
  font-weight: 300;
}
.more figure + p {
  min-height: 5em;
}
.more .wp-block-buttons {
  margin-top: 5rem;
}

.leftover a {
  display: block;
  color: #f3d549;
  background: #fff;
  border: 12px solid #fff;
  font-size: 1.5rem;
  font-weight: 600;
  text-shadow: 0 0 0.75rem #000, 0 0 1.25rem #000;
}
@media screen and (min-width:70rem) {
  .leftover a {
    width: 24rem;
    margin: 0.75rem;
  }
}
@media screen and (max-width:70rem) {
  .leftover a {
    margin-bottom: 1.5rem;
    width: 100%;
  }
}
.leftover figure {
  position: relative;
  text-align: center;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  align-content: center;
  justify-content: center;
}
@media screen and (max-width:70rem) {
  .leftover figure {
    width: 100%;
  }
}
.leftover figure::before {
  display: block;
  padding-top: 60%;
  content: "";
}
.leftover figure::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  content: "";
}
.leftover figcaption {
  position: relative;
  z-index: 1;
}
.leftover img {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  object-fit: cover;
}

.contribute {
  position: relative;
  box-shadow: inset 0 0 6rem rgba(0, 0, 0, 0.7);
  border-top: 0.75rem double #d6e1ad;
  gap: 4rem;
  color: white;
  z-index: 2;
  padding: 9rem 4rem 8rem 4rem;
  overflow-x: hidden;
  background: #3a4c2c;
}
.contribute a {
  color: #d6e1ad;
  text-decoration-color: rgba(214, 225, 173, 0.5);
}
.contribute p {
  line-height: 2.25rem;
  font-size: 1.625rem;
}
.contribute p + p {
  font-size: 1.375rem;
}
.contribute > div {
  text-align: left;
}
@media screen and (min-width:70rem) {
  .contribute {
    display: -ms-flexbox;
    display: flex;
    flex-flow: row-reverse nowrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-content: center;
  }
  .contribute > div {
    max-width: 25rem;
    flex-shrink: 0;
    flex-grow: 1;
  }
}
@media screen and (max-width:70rem) {
  .contribute {
    padding: 4rem;
  }
}
@media screen and (max-width:30rem) {
  .contribute {
    padding: 4rem 2rem 2rem 2rem;
  }
}
.contribute .wp-block-video {
  position: relative;
}
@media screen and (min-width:70rem) {
  .contribute .wp-block-video {
    float: left;
  }
}
.contribute iframe {
  width: 100%;
  height: auto;
  max-width: 70rem;
  aspect-ratio: 5/3;
  box-shadow: 0 0 2rem rgba(0, 0, 0, 0.5);
}
.contribute video {
  box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.5);
  max-width: 100%;
}
@media screen and (min-width:95rem) {
  .contribute video {
    max-width: 50rem;
  }
}
.contribute ul {
  padding-left: 0;
  margin: 4rem auto 0 auto;
  max-width: 90rem;
  column-width: 15rem;
  column-count: 4;
  column-gap: 6rem;
  color: #fafcff;
}
.contribute li {
  text-align: left;
}
@media screen and (min-width:70rem) {
  .contribute li {
    margin-bottom: 4rem;
  }
}
.contribute span {
  border-radius: 2rem;
  text-transform: uppercase;
  display: inline-block;
  line-height: 1;
  font-weight: 700;
  background: #fafcff;
  padding: 6px 2rem;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
}

.join {
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  text-align: left;
  position: relative;
  min-height: 100vh;
  box-shadow: inset 0 0 6rem rgba(0, 0, 0, 0.7);
  padding: 2rem;
  background: linear-gradient(rgba(36, 55, 33, 0.8), rgba(36, 55, 33, 0.8)), url(https://q4-consulting.com/wp-content/uploads/2019/03/sunset-over-mountains.jpg) center/cover fixed #f3d549;
}
.join > div {
  margin-left: auto;
  margin-right: auto;
  max-width: 84rem;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  padding: 0 2rem;
}
.join::before, .join::after {
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  cursor: pointer;
  z-index: 1;
  font-size: 4rem;
  color: rgba(250, 252, 255, 0.8);
}
.join::before {
  left: 2rem;
  content: "❮";
}
.join::after {
  right: 2rem;
  content: "❯";
}
.join blockquote {
  max-width: 50rem;
  color: #fafcff;
}
.join blockquote p {
  font-style: italic;
  position: relative;
  z-index: 0;
  font-size: 2.5rem;
  line-height: 1.25;
}
.join blockquote p::before, .join blockquote p::after {
  font-style: normal;
  opacity: 0.1;
  z-index: -1;
}
.join blockquote p::before {
  position: absolute;
  left: -4.5rem;
  content: "“";
  font-size: 15rem;
}
.join blockquote p::after {
  position: relative;
  margin-left: 0.25rem;
  top: 2rem;
  line-height: 0;
  content: "”";
  font-size: 15rem;
  vertical-align: bottom;
}
.join cite {
  font-style: normal;
  font-weight: bold;
  text-align: right;
  font-size: 1.25rem;
}
.join cite::before {
  content: "—";
}
.join a {
  text-align: center;
  padding-bottom: 2rem;
  background: #fafcff;
  box-shadow: 0 0 4rem #000;
  font-size: 1.375rem;
  font-weight: 600;
}
.join h2 {
  width: 100%;
  color: #fafcff;
  background: #f15e70;
}
@media screen and (min-width:70rem) {
  .join h2 {
    padding: 4rem;
  }
}
@media screen and (max-width:70rem) {
  .join h2 {
    padding: 4rem;
  }
}
.join > div {
  padding-bottom: 2rem;
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  background: #fafcff;
  box-shadow: 0 0 1.5rem #000;
}

.about h2, .about h3, .about li::before, .content h2, .content h3, .content li::before {
  color: #3a4c2c;
}
.about strong, .content strong {
  color: #332e21;
  font-weight: 500;
}

.about {
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  text-align: left;
  position: relative;
  min-height: 100vh;
  color: #222;
  font-weight: 300;
  overflow-x: hidden;
  background: #f7ffdf;
  padding: 6rem 4rem;
}
.about > div {
  margin-left: auto;
  margin-right: auto;
  max-width: 84rem;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  padding: 0 2rem;
}
@media screen and (max-width:70rem) {
  .about {
    padding: 4rem 2rem 2rem 2rem;
    background-size: cover;
  }
}
.about a {
  font-weight: 400;
  text-decoration-color: rgba(58, 76, 44, 0.75);
}
.about a:hover, .about a:focus, .about a:active {
  color: #000;
  text-decoration-color: #000;
}
.about p {
  max-width: 35e;
}
.about h3 {
  font-family: Alegreya Sans;
  font-feature-settings: "liga", "clig", "swsh", "pnum", "onum", "ordn";
  font-style: italic;
  margin-top: 4rem;
  font-weight: 800;
}
.about h3 ~ h3 {
  margin-bottom: 2rem;
}
.about ul {
  margin-left: 0;
  padding-left: 0;
}
.about figure {
  text-align: center;
  margin: 2rem auto;
}
.about article {
  width: 100%;
  max-width: 79rem;
}
@media screen and (min-width:70rem) {
  .about article > figure {
    float: right;
    margin: 0 0 2rem 2rem;
  }
  .about article section + figure {
    margin-top: 5rem;
  }
}
.about img {
  border: 0.75rem solid #fff;
  box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.3);
}
@media screen and (min-width:70rem) {
  .about section {
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    align-content: flex-start;
    justify-content: space-between;
  }
}
.about figure:nth-of-type(2) img {
  transform: rotate(-3deg);
}
.about .wp-block-image img {
  width: 100%;
  object-fit: cover;
  transform: rotate(3deg);
  max-width: 32rem;
  max-height: 40rem;
}
@media screen and (min-width:70rem) {
  .about section figure.wp-block-image {
    text-align: left;
    margin: 2rem 2rem 0 0;
  }
}
.about section figure.wp-block-image img {
  transform: rotate(-3deg);
}
.about div {
  max-width: 45rem;
  text-shadow: 0 0 0.25rem #fff;
}

.wp-block-jetpack-tiled-gallery {
  background: #3a4c2c;
  padding: 0.25rem;
}

.content {
  text-align: left;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  color: #222;
  font-weight: 300;
  padding: 8rem 4rem 8rem 4rem;
  max-width: 90rem;
  z-index: 1;
}
.content p, .content li {
  max-width: 50rem;
}
.content::before, .content::after {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  margin-left: calc(50% - 100vw);
  margin-right: calc(50% - 100vw);
  width: 200vw;
  left: 50%;
  z-index: -1;
  background: #f7ffdf;
  content: "";
}

.columns {
  clear: both;
  column-count: 3;
  column-gap: 4rem;
  column-rule: none;
  margin-bottom: 0;
}
.columns li, .columns p {
  break-inside: avoid;
}

.columns2 {
  column-count: 3;
  column-gap: 4rem;
  column-rule: none;
  clear: both;
  margin-left: 0;
  padding-left: 0;
}
.columns2 li, .columns2 p {
  break-inside: avoid;
}

.array {
  text-align: center;
}
.array li {
  display: inline;
  padding-right: 2rem;
}

.thumb {
  float: right;
  overflow: hidden;
  max-width: 30rem;
  aspect-ratio: 1/1;
  border: 0.75rem solid #fafcff;
  box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.3);
}

#clearfooter {
  font-size: 0;
  line-height: 0;
  height: 0;
}

[role=contentinfo] {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
  justify-content: space-around;
  background: url(/assets/photo_plants.jpg) no-repeat center/cover fixed;
  min-height: 100vh;
  font-size: 1.375rem;
}
[role=contentinfo] a {
  text-decoration: none;
}
[role=contentinfo] p {
  margin: 1rem 0;
}
[role=contentinfo] h3 {
  font-style: italic;
  font-weight: 900;
  line-height: 1;
}
[role=contentinfo] img {
  max-width: 8rem;
  opacity: 0.5;
}
[role=contentinfo] div {
  box-sizing: border-box;
}
[role=contentinfo] fieldset {
  text-align: center;
  border: 0 none;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1rem;
  text-align: left;
  padding: 0.1em 0 0.5rem 0;
}
[role=contentinfo] legend {
  font-style: italic;
  text-align: center;
  padding: 1rem 0;
}
[role=contentinfo] label {
  position: fixed;
  right: 120vw;
  font-weight: 400;
  cursor: pointer;
}
@media screen and (min-width:30rem) {
  [role=contentinfo] label {
    white-space: nowrap;
  }
}
[role=contentinfo] .wpcf7-checkbox {
  display: block;
}
[role=contentinfo] .wpcf7-checkbox label {
  position: static;
}
[role=contentinfo] .wpcf7-checkbox .wpcf7-list-item {
  margin-top: 1rem;
  padding-right: 2rem;
  text-align: left;
  line-height: 0.6;
}
[role=contentinfo] form {
  margin-left: auto;
  margin-right: auto;
}
[role=contentinfo] form p {
  margin: 0;
}
[role=contentinfo] .logo {
  text-align: center;
  margin-bottom: 1rem;
}
@media screen and (min-width:70rem) {
  [role=contentinfo] .logo {
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    align-content: center;
    justify-content: flex-start;
  }
}
[role=contentinfo] .menu {
  text-align: left;
  padding: 0;
  list-style: none;
  font-size: 1.25rem;
  border-bottom: 1px solid rgba(127, 128, 128, 0.5);
}
[role=contentinfo] .menu li {
  border-top: 1px solid rgba(127, 128, 128, 0.5);
}
[role=contentinfo] .menu a {
  display: block;
  width: 12rem;
  padding: 0.75rem 0;
  color: #243721;
}
[role=contentinfo] .menu a:hover, [role=contentinfo] .menu a:focus, [role=contentinfo] .menu a:active {
  color: #3a4c2c;
}
[role=contentinfo] > div:first-child {
  width: 100%;
  flex-grow: 1;
}
[role=contentinfo] > div:first-child > div {
  background: rgba(247, 255, 223, 0.8);
  padding: 4rem 2rem;
}
@media screen and (max-width:70rem) {
  [role=contentinfo] > div:first-child > div:target {
    padding: 0;
  }
}
@media screen and (min-width:30rem) {
  [role=contentinfo] > div:first-child > div {
    display: -ms-flexbox;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    align-content: center;
    justify-content: center;
  }
}
[role=contentinfo] > div:first-child > div:first-child {
  position: relative;
  background: #d6e1ad;
}
[role=contentinfo] > div:first-child > div:first-child h3 {
  margin: 0;
  color: #332e21;
}
[role=contentinfo] > div:first-child > div:first-child h3, [role=contentinfo] > div:first-child > div:first-child p {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1rem;
  max-width: 40rem;
}
[role=contentinfo] > div:first-child > div:first-child input, [role=contentinfo] > div:first-child > div:first-child textarea {
  margin-left: auto;
  margin-right: auto;
}
[role=contentinfo] > div:first-child > div:first-child fieldset input {
  margin-right: 0.5rem;
  border: 1px solid #3a4c2c;
}
[role=contentinfo] > div:first-child > div:first-child form {
  max-width: 40rem;
}
@media screen and (min-width:70rem) {
  [role=contentinfo] > div:first-child {
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;
    align-items: stretch;
    align-content: stretch;
    justify-content: flex-end;
  }
  [role=contentinfo] > div:first-child > div {
    width: 50%;
  }
}
@media screen and (max-width:70rem) {
  [role=contentinfo] > div:first-child {
    display: -ms-flexbox;
    display: flex;
    flex-flow: column nowrap;
    align-items: stretch;
    align-content: stretch;
    justify-content: space-between;
  }
  [role=contentinfo] > div:first-child > div {
    flex-grow: 1;
  }
}

.social {
  display: -ms-flexbox;
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-end;
  align-content: flex-end;
  justify-content: flex-end;
  justify-content: flex-end;
  gap: 1rem;
}
.social .facebook {
  background-image: url('data:image/svg+xml,%3Csvg version="1.1" fill="%23d6e1ad" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"%3E%3Cpath d="M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
  background-size: auto 1.5rem;
}
.social .linkedin {
  background-image: url('data:image/svg+xml,%3Csvg version="1.1" fill="%23d6e1ad" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"%3E%3Cpath d="M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
}
.social .twitter {
  background-image: url('data:image/svg+xml,%3Csvg version="1.1" fill="%23d6e1ad" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"%3E%3Cpath d="M512 97c-19 8-39 14-60 17 22-13 38-33 46-58 -20 12-43 21-67 25C412 61 384 48 354 48c-58 0-105 47-105 105 0 8 1 16 2 24 -87-4-164-46-216-110 -9 16-14 34-14 53 0 36 19 69 47 87 -17 0-33-5-47-13 0 0 0 1 0 1 0 51 36 93 84 103 -9 2-18 3-28 3 -7 0-14 0-20-2 14 42 52 72 98 73 -36 28-81 45-130 45 -9 0-17 0-25-1C46 447 102 464 161 464c193 0 299-160 299-299 0-5 0-9 0-14C480 137 498 118 512 97z"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
}
.social .instagram {
  background-image: url('data:image/svg+xml,%3Csvg version="1.1" fill="%23d6e1ad" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"%3E%3Cpath d="M256,49.471c67.266,0,75.233.257,101.8,1.469,24.562,1.121,37.9,5.224,46.778,8.674a78.052,78.052,0,0,1,28.966,18.845,78.052,78.052,0,0,1,18.845,28.966c3.45,8.877,7.554,22.216,8.674,46.778,1.212,26.565,1.469,34.532,1.469,101.8s-0.257,75.233-1.469,101.8c-1.121,24.562-5.225,37.9-8.674,46.778a83.427,83.427,0,0,1-47.811,47.811c-8.877,3.45-22.216,7.554-46.778,8.674-26.56,1.212-34.527,1.469-101.8,1.469s-75.237-.257-101.8-1.469c-24.562-1.121-37.9-5.225-46.778-8.674a78.051,78.051,0,0,1-28.966-18.845,78.053,78.053,0,0,1-18.845-28.966c-3.45-8.877-7.554-22.216-8.674-46.778-1.212-26.564-1.469-34.532-1.469-101.8s0.257-75.233,1.469-101.8c1.121-24.562,5.224-37.9,8.674-46.778A78.052,78.052,0,0,1,78.458,78.458a78.053,78.053,0,0,1,28.966-18.845c8.877-3.45,22.216-7.554,46.778-8.674,26.565-1.212,34.532-1.469,101.8-1.469m0-45.391c-68.418,0-77,.29-103.866,1.516-26.815,1.224-45.127,5.482-61.151,11.71a123.488,123.488,0,0,0-44.62,29.057A123.488,123.488,0,0,0,17.3,90.982C11.077,107.007,6.819,125.319,5.6,152.134,4.369,179,4.079,187.582,4.079,256S4.369,333,5.6,359.866c1.224,26.815,5.482,45.127,11.71,61.151a123.489,123.489,0,0,0,29.057,44.62,123.486,123.486,0,0,0,44.62,29.057c16.025,6.228,34.337,10.486,61.151,11.71,26.87,1.226,35.449,1.516,103.866,1.516s77-.29,103.866-1.516c26.815-1.224,45.127-5.482,61.151-11.71a128.817,128.817,0,0,0,73.677-73.677c6.228-16.025,10.486-34.337,11.71-61.151,1.226-26.87,1.516-35.449,1.516-103.866s-0.29-77-1.516-103.866c-1.224-26.815-5.482-45.127-11.71-61.151a123.486,123.486,0,0,0-29.057-44.62A123.487,123.487,0,0,0,421.018,17.3C404.993,11.077,386.681,6.819,359.866,5.6,333,4.369,324.418,4.079,256,4.079h0Z"/%3E%3Cpath d="M256,126.635A129.365,129.365,0,1,0,385.365,256,129.365,129.365,0,0,0,256,126.635Zm0,213.338A83.973,83.973,0,1,1,339.974,256,83.974,83.974,0,0,1,256,339.973Z"/%3E%3Ccircle cx="390.476" cy="121.524" r="30.23"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
}
.social .youtube {
  background-image: url('data:image/svg+xml,%3Csvg version="1.1" fill="%23d6e1ad" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"%3E%3Cpath d="M549.7 124.1c-6.3-23.6-24.8-42.3-48.3-48.6C458.8 64 288 64 288 64S117.2 64 74.6 75.5c-23.5 6.3-42 24.9-48.3 48.6-11.4 42.9-11.4 132.3-11.4 132.3s0 89.4 11.4 132.3c6.3 23.7 24.8 41.5 48.3 47.8C117.2 448 288 448 288 448s170.8 0 213.4-11.5c23.5-6.3 42-24.2 48.3-47.8 11.4-42.9 11.4-132.3 11.4-132.3s0-89.4-11.4-132.3zm-317.5 213.5V175.2l142.7 81.2-142.7 81.2z"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
}
.social .signal {
  background-image: url('data:image/svg+xml,%3Csvg version="1.1" fill="%23d6e1ad" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"%3E%3Cpath d="m320 64-39 3 4 24a230 230 0 0 1 70 0l4-24zm61 7-6 24q36 8 66 27l12-21q-33-19-72-30m76 62q29 21 50 50l20-14q-24-32-56-55zm82 54-21 13q19 30 28 65l23-6q-10-38-30-72m10 98a230 230 0 0 1 0 70l24 4a265 265 0 0 0 0-78zm-31 156 21 12q20-33 30-72l-23-6q-9 36-28 66m9 30-20-14q-21 29-50 50l14 20q32-23 56-56zm-86 47q-30 20-66 27l6 24q39-10 72-30zm-82 55-4-24a230 230 0 0 1-70 0l-4 24a265 265 0 0 0 78 0m-94-28q-26-6-50-18l-8-4-33 8 6 23 24-6q27 14 55 21zm-106 14-5-24-42 10c-10 2-19-7-17-17l10-42-24-5-9 41c-7 28 18 53 46 46zm-50-93 8-33-4-8q-12-23-18-50l-24 6q7 29 21 55l-6 24zM67 359l24-4a230 230 0 0 1 0-70l-24-4a253 253 0 0 0 0 78m28-94q8-35 27-65l-21-13q-19 34-30 72zm19-96 19 14q21-29 50-50l-14-19q-32 23-55 55zm86-47q30-19 65-27l-6-24q-39 10-72 30zm120 406a208 208 0 1 0-182-107q2 4 1 9l-21 92 92-21q5-1 10 1 45 26 100 26"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
}
.social .whatsapp {
  background-image: url('data:image/svg+xml,%3Csvg version="1.1" fill="%23d6e1ad" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"%3E%3Cpath d="M477 161a222 222 0 0 0-349 268L96 544l118-31q49 27 106 27c122 0 224-99 224-222 0-59-25-115-67-157M320 503q-51 0-94-26l-7-4-70 18 19-68-4-7q-29-45-29-98a185 185 0 0 1 315-130c35 35 57 81 57 130 0 102-85 185-187 185m101-138c-5-3-33-17-38-18q-8-4-12 2l-18 22q-4 6-12 2c-32-17-54-30-75-66-6-10 5-10 16-31q3-5-1-9l-17-42c-4-10-9-9-12-9h-11q-5-1-15 7c-5 5-19 19-19 46s20 54 23 57c2 4 39 60 94 84 36 15 49 17 67 14 11-2 33-13 37-26 5-13 5-25 4-27q-2-3-11-6"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
}

#subfoot {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  font-style: italic;
  border-top: 0.75rem double #d6e1ad;
  gap: 2rem;
  font-size: 1.375rem;
  word-spacing: 0.2em;
  background: #243721;
  padding: 2rem;
  color: #fafcff;
}
#subfoot a {
  white-space: nowrap;
  text-decoration: underline;
  text-decoration-color: rgba(214, 225, 173, 0.25);
  text-decoration-thickness: 1px;
  text-decoration-style: wavy;
  text-underline-offset: 0.125em;
  color: #d6e1ad;
}

#contact {
  font-weight: 400;
}
#contact ul {
  padding: 0;
  margin: 1rem 0;
}
#contact li {
  text-align: left;
  display: inline;
}
#contact li + li {
  margin-left: 2rem;
}
#contact a {
  text-decoration: underline;
  color: #3a4c2c;
  font-weight: 500;
  text-decoration-thickness: 1px;
  text-decoration-style: wavy;
  text-underline-offset: 0.125em;
}
#contact > a {
  display: none;
}
#contact:target {
  position: fixed;
  text-align: center;
  top: 0;
  left: 0;
  overflow: hidden;
  height: 100%;
  width: 100%;
  outline: 0 none;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  align-content: center;
  justify-content: center;
  background: rgba(51, 46, 33, 0.9);
  z-index: 999;
}
#contact:target > div {
  text-align: center;
  box-sizing: border-box;
  background: #d6e1ad;
  max-height: 95vh;
  max-width: 55rem;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-color: #fafcff transparent;
  box-shadow: 0 0 2rem rgba(36, 55, 33, 0.2);
  padding: 4rem;
  color: #000;
}
@media screen and (max-width:30rem) {
  #contact:target > div {
    padding: 1rem;
  }
}
#contact:target > a {
  top: 0;
  bottom: 0;
  position: absolute;
  display: block;
  font-size: 0;
  background: linear-gradient(-45deg, transparent calc(50% - 2px), #fafcff calc(50% - 2px), #fafcff calc(50% + 2px), transparent calc(50% + 2px)), linear-gradient(45deg, transparent calc(50% - 2px), #fafcff calc(50% - 2px), #fafcff calc(50% + 2px), transparent calc(50% + 2px)) #675182;
  right: 1rem;
  top: 1rem;
  border: 17px solid #675182;
  border-radius: 0.5rem;
  padding: 7px 6px 6px 7px;
  margin: 0 0 auto auto;
  height: 1rem;
  width: 1rem;
}
#contact:target > a:hover, #contact:target > a:active {
  background: linear-gradient(-45deg, transparent calc(50% - 2px), #fafcff calc(50% - 2px), #fafcff calc(50% + 2px), transparent calc(50% + 2px)), linear-gradient(45deg, transparent calc(50% - 2px), #fafcff calc(50% - 2px), #fafcff calc(50% + 2px), transparent calc(50% + 2px)) #243721;
  border-color: #243721;
}
#contact:target > a:before {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  content: "";
  z-index: -1;
}
#contact:target > a:after {
  position: fixed;
  right: 1rem;
  top: 4rem;
}
@media screen and (min-width:70rem) {
  #contact:target > a {
    left: 0;
    bottom: 0;
  }
}

@media print {
  * {
    color: black;
    background-color: transparent;
    background-image: none;
  }
  .logo {
    box-shadow: none;
  }
  .logo img {
    display: block;
  }
  @page {
    size: auto;
    margin: 1in;
    font-size: 18pt;
  }
  section {
    padding: 0 2rem;
  }
  #main, #main p {
    font-size: 12pt;
    word-spacing: 0.2em;
    line-height: 18pt;
  }
  a:link, a:visited {
    color: black;
    text-decoration: none;
  }
  main p, main ul {
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto;
    max-width: 36rem;
    display: block;
    text-align: left;
  }
  .about main > section:first-child h3 {
    padding: 4rem 0;
  }
  .work main figure {
    display: block;
  }
  .work main img {
    margin-top: 2rem;
    min-width: 30rem;
  }
  .contents a:after {
    content: "";
  }
  h1 {
    font-size: 20pt;
  }
  h2 {
    font-size: 40pt;
    line-height: 36pt;
  }
  h1 a:link:after, h2 a:link:after, h3 a:link:after, h4 a:link:after, h5 a:link:after, h6 a:link:after {
    content: "";
  }
  section {
    text-align: left;
  }
  abbr:after {
    border: 0 none;
    content: " (" attr(title) ")";
  }
}

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