:root {
  --brand-green: #2C4839;
  --brand-green-dark: #2C4839;
  --brand-green-dark-muted: #2C483999;
  --brand-gold: #B69C66;
  --brand-beige: #EFE4CC;
  --brand-ink: #1A150B;
  --surface-white: #F4EFE3;
  --text-default: var(--brand-green-dark);
  --text-default-muted: var(--brand-green-dark-muted);
  --light--white: white;
  --light--heading-text: #ced1bf;
  --light--dark-green: #283530;
  --desktop-separator: 5em;
  --mobile-separator: 3em;
  --desktop-padding-x: 2em;
  --mobile-padding-x: 1em;
  --light--heading-back-text\<deleted\|variable-d656b903-12b5-c10e-7964-da1c16d7bd25\>: #dce2e2;
  --light--yellow\<deleted\|variable-066e493e-2697-71e2-824a-99352318a34f\>: #fdd35b;
  --light--dark-text: #3d3937;
  --black\<deleted\|variable-309cef47\>: black;
  --light--orange: #cf8f7d;
  --light--paragraph-color: #f1f1f1;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.w-layout-vflex {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.w-commerce-commercecartwrapper {
  display: inline-block;
  position: relative;
}

.w-commerce-commercecartopenlink {
  color: #fff;
  cursor: pointer;
  appearance: none;
  background-color: #3898ec;
  border-width: 0;
  border-radius: 0;
  align-items: center;
  padding: 9px 15px;
  text-decoration: none;
  display: flex;
}

.w-commerce-commercecartopenlinkcount {
  color: #3898ec;
  text-align: center;
  background-color: #fff;
  border-radius: 9px;
  min-width: 18px;
  height: 18px;
  margin-left: 8px;
  padding-left: 6px;
  padding-right: 6px;
  font-size: 11px;
  font-weight: 700;
  line-height: 18px;
  display: inline-block;
}

.w-commerce-commercecartcontainerwrapper {
  z-index: 1001;
  background-color: #000c;
  position: fixed;
  inset: 0;
}

.w-commerce-commercecartcontainerwrapper--cartType-modal {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.w-commerce-commercecartcontainerwrapper--cartType-leftSidebar {
  flex-direction: row;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.w-commerce-commercecartcontainerwrapper--cartType-rightSidebar {
  flex-direction: row;
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
}

.w-commerce-commercecartcontainerwrapper--cartType-leftDropdown {
  background-color: #0000;
  position: absolute;
  inset: 100% auto auto 0;
}

.w-commerce-commercecartcontainerwrapper--cartType-rightDropdown {
  background-color: #0000;
  position: absolute;
  inset: 100% 0 auto auto;
}

.w-commerce-commercecartcontainer {
  background-color: #fff;
  flex-direction: column;
  width: 100%;
  min-width: 320px;
  max-width: 480px;
  display: flex;
  overflow: auto;
  box-shadow: 0 5px 25px #00000040;
}

.w-commerce-commercecartheader {
  border-bottom: 1px solid #e6e6e6;
  flex: none;
  justify-content: space-between;
  align-items: center;
  padding: 16px 24px;
  display: flex;
  position: relative;
}

.w-commerce-commercecartheading {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.w-commerce-commercecartcloselink {
  width: 16px;
  height: 16px;
}

.w-commerce-commercecartformwrapper {
  flex-direction: column;
  flex: 1;
  display: flex;
}

.w-commerce-commercecartform {
  flex-direction: column;
  flex: 1;
  justify-content: flex-start;
  display: flex;
}

.w-commerce-commercecartlist {
  -webkit-overflow-scrolling: touch;
  flex: 1;
  padding: 12px 24px;
  overflow: auto;
}

.w-commerce-commercecartitem {
  align-items: flex-start;
  padding-top: 12px;
  padding-bottom: 12px;
  display: flex;
}

.w-commerce-commercecartitemimage {
  width: 60px;
  height: 0%;
}

.w-commerce-commercecartiteminfo {
  flex-direction: column;
  flex: 1;
  margin-left: 16px;
  margin-right: 16px;
  display: flex;
}

.w-commerce-commercecartproductname {
  font-weight: 700;
}

.w-commerce-commercecartoptionlist {
  margin-bottom: 0;
  padding-left: 0;
  text-decoration: none;
  list-style-type: none;
}

.w-commerce-commercecartquantity {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 60px;
  height: 38px;
  margin-bottom: 10px;
  padding: 8px 6px 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecartquantity::placeholder {
  color: #999;
}

.w-commerce-commercecartquantity:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecartfooter {
  border-top: 1px solid #e6e6e6;
  flex-direction: column;
  flex: none;
  padding: 16px 24px 24px;
  display: flex;
}

.w-commerce-commercecartlineitem {
  flex: none;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 16px;
  display: flex;
}

.w-commerce-commercecartordervalue {
  font-weight: 700;
}

.w-commerce-commercecartapplepaybutton {
  color: #fff;
  cursor: pointer;
  appearance: none;
  background-color: #000;
  border-width: 0;
  border-radius: 2px;
  align-items: center;
  height: 38px;
  min-height: 30px;
  margin-bottom: 8px;
  padding: 0;
  text-decoration: none;
  display: flex;
}

.w-commerce-commercecartapplepayicon {
  width: 100%;
  height: 50%;
  min-height: 20px;
}

.w-commerce-commercecartquickcheckoutbutton {
  color: #fff;
  cursor: pointer;
  appearance: none;
  background-color: #000;
  border-width: 0;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  height: 38px;
  margin-bottom: 8px;
  padding: 0 15px;
  text-decoration: none;
  display: flex;
}

.w-commerce-commercequickcheckoutgoogleicon, .w-commerce-commercequickcheckoutmicrosofticon {
  margin-right: 8px;
  display: block;
}

.w-commerce-commercecartcheckoutbutton {
  color: #fff;
  cursor: pointer;
  appearance: none;
  text-align: center;
  background-color: #3898ec;
  border-width: 0;
  border-radius: 2px;
  align-items: center;
  padding: 9px 15px;
  text-decoration: none;
  display: block;
}

.w-commerce-commercecartemptystate {
  flex: 1;
  justify-content: center;
  align-items: center;
  padding-top: 100px;
  padding-bottom: 100px;
  display: flex;
}

.w-commerce-commercecarterrorstate {
  background-color: #ffdede;
  flex: none;
  margin: 0 24px 24px;
  padding: 10px;
}

.w-commerce-commerceaddtocartform {
  margin: 0 0 15px;
}

.w-commerce-commerceaddtocartoptionpillgroup {
  margin-bottom: 10px;
  display: flex;
}

.w-commerce-commerceaddtocartoptionpill {
  color: #000;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #000;
  margin-right: 10px;
  padding: 8px 15px;
}

.w-commerce-commerceaddtocartoptionpill.w--ecommerce-pill-selected {
  color: #fff;
  background-color: #000;
}

.w-commerce-commerceaddtocartoptionpill.w--ecommerce-pill-disabled {
  color: #666;
  cursor: not-allowed;
  background-color: #e6e6e6;
  border-color: #e6e6e6;
  outline-style: none;
}

.w-commerce-commerceaddtocartquantityinput {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 60px;
  height: 38px;
  margin-bottom: 10px;
  padding: 8px 6px 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commerceaddtocartquantityinput::placeholder {
  color: #999;
}

.w-commerce-commerceaddtocartquantityinput:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commerceaddtocartbutton {
  color: #fff;
  cursor: pointer;
  appearance: none;
  background-color: #3898ec;
  border-width: 0;
  border-radius: 0;
  align-items: center;
  padding: 9px 15px;
  text-decoration: none;
  display: flex;
}

.w-commerce-commerceaddtocartbutton.w--ecommerce-add-to-cart-disabled {
  color: #666;
  cursor: not-allowed;
  background-color: #e6e6e6;
  border-color: #e6e6e6;
  outline-style: none;
}

.w-commerce-commercebuynowbutton {
  color: #fff;
  cursor: pointer;
  appearance: none;
  background-color: #3898ec;
  border-width: 0;
  border-radius: 0;
  align-items: center;
  margin-top: 10px;
  padding: 9px 15px;
  text-decoration: none;
  display: inline-block;
}

.w-commerce-commercebuynowbutton.w--ecommerce-buy-now-disabled {
  color: #666;
  cursor: not-allowed;
  background-color: #e6e6e6;
  border-color: #e6e6e6;
  outline-style: none;
}

.w-commerce-commerceaddtocartoutofstock {
  background-color: #ddd;
  margin-top: 10px;
  padding: 10px;
}

.w-commerce-commerceaddtocarterror {
  background-color: #ffdede;
  margin-top: 10px;
  padding: 10px;
}

.w-commerce-commercecheckoutformcontainer {
  background-color: #f5f5f5;
  width: 100%;
  min-height: 100vh;
  padding: 20px;
}

.w-commerce-commercelayoutcontainer {
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.w-commerce-commercelayoutmain {
  flex: 0 800px;
  margin-right: 20px;
}

.w-commerce-commercecheckoutcustomerinfowrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutblockheader {
  background-color: #fff;
  border: 1px solid #e6e6e6;
  justify-content: space-between;
  align-items: baseline;
  padding: 4px 20px;
  display: flex;
}

.w-commerce-commercecheckoutblockcontent {
  background-color: #fff;
  border-bottom: 1px solid #e6e6e6;
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  padding: 20px;
}

.w-commerce-commercecheckoutlabel {
  margin-bottom: 8px;
}

.w-commerce-commercecheckoutemailinput {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 0;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutemailinput::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutemailinput:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingaddresswrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutshippingfullname {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutshippingfullname::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingfullname:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingstreetaddress {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutshippingstreetaddress::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddress:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstreetaddressoptional:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutrow {
  margin-left: -8px;
  margin-right: -8px;
  display: flex;
}

.w-commerce-commercecheckoutcolumn {
  flex: 1;
  padding-left: 8px;
  padding-right: 8px;
}

.w-commerce-commercecheckoutshippingcity {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutshippingcity::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcity:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingstateprovince {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutshippingstateprovince::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingstateprovince:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingzippostalcode {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutshippingzippostalcode::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingzippostalcode:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingcountryselector {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 0;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutshippingcountryselector::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutshippingcountryselector:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutshippingmethodswrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutshippingmethodslist {
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
}

.w-commerce-commercecheckoutshippingmethoditem {
  background-color: #fff;
  border-bottom: 1px solid #e6e6e6;
  flex-direction: row;
  align-items: baseline;
  margin-bottom: 0;
  padding: 16px;
  font-weight: 400;
  display: flex;
}

.w-commerce-commercecheckoutshippingmethoddescriptionblock {
  flex-direction: column;
  flex-grow: 1;
  margin-left: 12px;
  margin-right: 12px;
  display: flex;
}

.w-commerce-commerceboldtextblock {
  font-weight: 700;
}

.w-commerce-commercecheckoutshippingmethodsemptystate {
  text-align: center;
  background-color: #fff;
  border-bottom: 1px solid #e6e6e6;
  border-left: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  padding: 64px 16px;
}

.w-commerce-commercecheckoutpaymentinfowrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutcardnumber {
  appearance: none;
  cursor: text;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutcardnumber::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardnumber:focus, .w-commerce-commercecheckoutcardnumber.-wfp-focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutcardexpirationdate {
  appearance: none;
  cursor: text;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutcardexpirationdate::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardexpirationdate:focus, .w-commerce-commercecheckoutcardexpirationdate.-wfp-focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutcardsecuritycode {
  appearance: none;
  cursor: text;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutcardsecuritycode::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutcardsecuritycode:focus, .w-commerce-commercecheckoutcardsecuritycode.-wfp-focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingaddresstogglewrapper {
  flex-direction: row;
  display: flex;
}

.w-commerce-commercecheckoutbillingaddresstogglecheckbox {
  margin-top: 4px;
}

.w-commerce-commercecheckoutbillingaddresstogglelabel {
  margin-left: 8px;
  font-weight: 400;
}

.w-commerce-commercecheckoutbillingaddresswrapper {
  margin-top: 16px;
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutbillingfullname {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutbillingfullname::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingfullname:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingstreetaddress {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutbillingstreetaddress::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddress:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstreetaddressoptional:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingcity {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutbillingcity::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingcity:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingstateprovince {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutbillingstateprovince::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingstateprovince:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingzippostalcode {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 16px;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutbillingzippostalcode::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingzippostalcode:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutbillingcountryselector {
  appearance: none;
  background-color: #fafafa;
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  height: 38px;
  margin-bottom: 0;
  padding: 8px 12px;
  line-height: 20px;
  display: block;
}

.w-commerce-commercecheckoutbillingcountryselector::placeholder {
  color: #999;
}

.w-commerce-commercecheckoutbillingcountryselector:focus {
  border-color: #3898ec;
  outline-style: none;
}

.w-commerce-commercecheckoutorderitemswrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutsummaryblockheader {
  background-color: #fff;
  border: 1px solid #e6e6e6;
  justify-content: space-between;
  align-items: baseline;
  padding: 4px 20px;
  display: flex;
}

.w-commerce-commercecheckoutorderitemslist {
  margin-bottom: -20px;
}

.w-commerce-commercecheckoutorderitem {
  margin-bottom: 20px;
  display: flex;
}

.w-commerce-commercecheckoutorderitemdescriptionwrapper {
  flex-grow: 1;
  margin-left: 16px;
  margin-right: 16px;
}

.w-commerce-commercecheckoutorderitemquantitywrapper {
  white-space: pre-wrap;
  display: flex;
}

.w-commerce-commercecheckoutorderitemoptionlist {
  margin-bottom: 0;
  padding-left: 0;
  text-decoration: none;
  list-style-type: none;
}

.w-commerce-commercelayoutsidebar {
  flex: 0 0 320px;
  position: sticky;
  top: 20px;
}

.w-commerce-commercecheckoutordersummarywrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutsummarylineitem, .w-commerce-commercecheckoutordersummaryextraitemslistitem {
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 8px;
  display: flex;
}

.w-commerce-commercecheckoutsummarytotal {
  font-weight: 700;
}

.w-commerce-commercecheckoutplaceorderbutton {
  color: #fff;
  cursor: pointer;
  appearance: none;
  text-align: center;
  background-color: #3898ec;
  border-width: 0;
  border-radius: 3px;
  align-items: center;
  margin-bottom: 20px;
  padding: 9px 15px;
  text-decoration: none;
  display: block;
}

.w-commerce-commercecheckouterrorstate {
  background-color: #ffdede;
  margin-top: 16px;
  margin-bottom: 16px;
  padding: 10px 16px;
}

.w-commerce-commercepaypalcheckoutformcontainer {
  background-color: #f5f5f5;
  width: 100%;
  min-height: 100vh;
  padding: 20px;
}

.w-commerce-commercecheckoutcustomerinfosummarywrapper {
  margin-bottom: 20px;
}

.w-commerce-commercecheckoutsummaryitem, .w-commerce-commercecheckoutsummarylabel {
  margin-bottom: 8px;
}

.w-commerce-commercecheckoutsummaryflexboxdiv {
  flex-direction: row;
  justify-content: flex-start;
  display: flex;
}

.w-commerce-commercecheckoutsummarytextspacingondiv {
  margin-right: .33em;
}

.w-commerce-commercecheckoutpaymentsummarywrapper {
  margin-bottom: 20px;
}

.w-commerce-commercepaypalcheckouterrorstate {
  background-color: #ffdede;
  margin-top: 16px;
  margin-bottom: 16px;
  padding: 10px 16px;
}

.w-commerce-commerceorderconfirmationcontainer {
  background-color: #f5f5f5;
  width: 100%;
  min-height: 100vh;
  padding: 20px;
}

.w-commerce-commercecheckoutshippingsummarywrapper {
  margin-bottom: 20px;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

@media screen and (max-width: 991px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }

  .w-commerce-commercelayoutcontainer {
    flex-direction: column;
    align-items: stretch;
  }

  .w-commerce-commercelayoutmain {
    flex-basis: auto;
    margin-right: 0;
  }

  .w-commerce-commercelayoutsidebar {
    flex-basis: auto;
  }
}

@media screen and (max-width: 479px) {
  .w-commerce-commercecartcontainerwrapper--cartType-modal {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
  }

  .w-commerce-commercecartcontainerwrapper--cartType-leftDropdown, .w-commerce-commercecartcontainerwrapper--cartType-rightDropdown {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    display: flex;
    position: fixed;
    inset: 0;
  }

  .w-commerce-commercecartquantity, .w-commerce-commerceaddtocartquantityinput, .w-commerce-commercecheckoutemailinput, .w-commerce-commercecheckoutshippingfullname, .w-commerce-commercecheckoutshippingstreetaddress, .w-commerce-commercecheckoutshippingstreetaddressoptional {
    font-size: 16px;
  }

  .w-commerce-commercecheckoutrow {
    flex-direction: column;
  }

  .w-commerce-commercecheckoutshippingcity, .w-commerce-commercecheckoutshippingstateprovince, .w-commerce-commercecheckoutshippingzippostalcode, .w-commerce-commercecheckoutshippingcountryselector, .w-commerce-commercecheckoutcardnumber, .w-commerce-commercecheckoutcardexpirationdate, .w-commerce-commercecheckoutcardsecuritycode, .w-commerce-commercecheckoutbillingfullname, .w-commerce-commercecheckoutbillingstreetaddress, .w-commerce-commercecheckoutbillingstreetaddressoptional, .w-commerce-commercecheckoutbillingcity, .w-commerce-commercecheckoutbillingstateprovince, .w-commerce-commercecheckoutbillingzippostalcode, .w-commerce-commercecheckoutbillingcountryselector {
    font-size: 16px;
  }
}

body {
  background-color: var(--surface-white);
  color: var(--brand-green-dark);
  font-family: Inter, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
}

p {
  color: var(--brand-ink);
}

h1 {
  color: var(--brand-green-dark);
  margin-top: .4em;
  margin-bottom: .2em;
  font-family: Fraunces, sans-serif;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1;
}

h2 {
  margin-top: .4em;
  margin-bottom: .2em;
  font-family: Fraunces, sans-serif;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1;
}

h3 {
  color: var(--brand-green-dark);
  letter-spacing: 1px;
  margin-top: .4em;
  margin-bottom: .2em;
  font-family: Fraunces, sans-serif;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1;
}

h4 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: Fraunces, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
}

h5 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: Fraunces, sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
}

h6 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: Fraunces, sans-serif;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1;
}

p {
  margin-bottom: .2em;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6;
}

a {
  color: var(--brand-green-dark);
  text-decoration: none;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 1em;
  padding-left: 2em;
}

li {
  margin-bottom: .5em;
}

img {
  object-fit: cover;
  width: 100%;
  max-width: 100%;
  height: 100%;
  display: inline-block;
}

strong {
  font-weight: 700;
}

blockquote {
  border-left: 3px solid var(--light--heading-text);
  margin-bottom: 1em;
  padding: 1em 2em;
  font-size: 1rem;
  line-height: 1;
}

figure {
  margin-bottom: 1em;
  margin-left: 0;
  margin-right: 0;
}

figcaption {
  text-align: center;
  margin-top: .5em;
}

.page-wrapper {
  display: block;
}

.section {
  z-index: 2;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.section.overflow-visible {
  overflow: visible;
}

.section.gallery {
  display: flex;
  overflow: visible;
}

.section.for--faq {
  background-color: var(--surface-white);
}

.section.about-section {
  height: 350vh;
  overflow: clip;
}

.section.gallery-section {
  height: 150rem;
  overflow: clip;
}

.section.gallery-section.dark-bg.second-version {
  height: 260rem;
}

.section.third-hero {
  height: 200vh;
  overflow: clip;
}

.section.services-hero {
  width: 100%;
  height: 300vh;
  position: relative;
  overflow: visible;
}

.section.dark-bg {
  background-color: var(--brand-green-dark);
}

.section.dark-bg.slider-section {
  padding-top: var(--desktop-separator);
  padding-bottom: 0;
}

.section.have--light-bg {
  background-color: var(--surface-white);
}

.section.light-work-section {
  padding-top: var(--desktop-separator);
  background-color: var(--surface-white);
  padding-bottom: 0;
}

.section.light-work-section.full-height {
  height: 100vh;
  max-height: 1400px;
  padding-top: 0;
}

.section.position-relative {
  position: relative;
}

.section.hide {
  display: none;
}

.section.bg-green {
  padding-top: var(--desktop-separator);
  padding-bottom: 0;
}

.section.bg-green.full-height {
  height: 100vh;
  max-height: 1400px;
  padding-top: 0;
}

.section._1 {
  background-image: url('../images/service-hero.svg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: auto;
}

.container {
  max-width: 1100px;
  height: 100%;
  padding: var(--desktop-separator) var(--desktop-padding-x);
}

.container.footer-container {
  background-color: var(--brand-beige);
  max-width: none;
  padding-bottom: 2em;
  position: relative;
}

.amenities-section { position: relative; isolation: isolate; }
.amenities-section .footer-lottie { z-index: -1 !important; opacity: 0.35; }
.amenities-section .home-about-wrapper { position: relative; z-index: 1; }

/* Per-section palette */
.hero-section.for--home-page { background-color: var(--brand-beige); }
.section.third-hero { background-color: var(--brand-beige); }
.section.services-hero { background-color: var(--brand-beige); }
.about-section.about-hero { background-color: var(--brand-beige); }
.section:has(> .vertical-wrapper.sticky > .big-text-box) { background-color: var(--surface-white); }
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper) { background-color: var(--surface-white); }
.section.amenities-section { background-color: var(--brand-beige) !important; }
.section.accommodations-section { background-color: var(--brand-beige) !important; }
.section.gallery { background-color: var(--brand-beige); }
.gold-bg { background-color: var(--brand-beige) !important; }

/* Light text on green */
.section.dark-bg,
.home-hero-left,
.about-history-left,
.fourthiary-button.main:hover,
.global-button.secondary:hover {
  --text-default: var(--surface-white);
  --text-default-muted: #ced1bf;
}

/* CTA button at rest: gold bg, green text */
.fourthiary-button.main {
  --text-default: var(--brand-green-dark);
  --text-default-muted: var(--brand-green-dark);
}
.hero-section.for--home-page { --text-default: var(--brand-green-dark); --text-default-muted: var(--brand-green-dark); }
.section.third-hero { --text-default: var(--brand-green-dark); --text-default-muted: var(--brand-green-dark); }
.section.services-hero { --text-default: var(--brand-green-dark); --text-default-muted: var(--brand-green-dark); }
.about-section.about-hero { --text-default: var(--brand-gold); --text-default-muted: var(--brand-gold); }
.section:has(> .vertical-wrapper.sticky > .big-text-box) { --text-default: var(--brand-green-dark); --text-default-muted: var(--brand-green-dark); }
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper) { --text-default: var(--brand-green-dark); --text-default-muted: var(--brand-green-dark); }

.section.dark-bg,
.section.dark-bg p,
.section.dark-bg h1,
.section.dark-bg h2,
.section.dark-bg h3,
.section.dark-bg h4,
.section.dark-bg h5,
.section.dark-bg h6,
.section.dark-bg a,
.hero-section.for--home-page,
.hero-section.for--home-page p,
.hero-section.for--home-page h1,
.hero-section.for--home-page h2,
.hero-section.for--home-page h3,
.hero-section.for--home-page a,
.section.third-hero,
.section.third-hero p,
.section.third-hero h1,
.section.third-hero h2,
.section.third-hero h3,
.section.third-hero a,
.section.services-hero,
.section.services-hero p,
.section.services-hero h1,
.section.services-hero h2,
.section.services-hero h3,
.section.services-hero a,
.about-history-left,
.about-history-left p,
.about-history-left h1,
.about-history-left h2,
.about-history-left h3,
.about-history-left a {
  color: var(--brand-green-dark);
}

/* Hero text on the green panel: gold so it reads against brand-green-dark */
.home-hero-left,
.home-hero-left p,
.home-hero-left h1,
.home-hero-left h2,
.home-hero-left h3,
.home-hero-left h4,
.home-hero-left h5,
.home-hero-left h6,
.home-hero-left a {
  color: var(--brand-gold);
}

/* About hero text: gold on beige */
.about-section.about-hero,
.about-section.about-hero p,
.about-section.about-hero h1,
.about-section.about-hero h2,
.about-section.about-hero h3,
.about-section.about-hero h4,
.about-section.about-hero h5,
.about-section.about-hero h6,
.about-section.about-hero a {
  color: var(--brand-gold);
}

/* Footer: cream bg, dark-green text */
.footer-container { --text-default: var(--brand-green-dark); --text-default-muted: var(--brand-green-dark-muted); }
.footer-container,
.footer-container p,
.footer-container h1,
.footer-container h2,
.footer-container h3,
.footer-container h4,
.footer-container a,
.footer-container .global-small-link,
.footer-container .footer-big-name {
  color: var(--brand-green-dark);
}

/* Light text on green for XX+ section */
.section:has(> .vertical-wrapper.sticky > .big-text-box),
.section:has(> .vertical-wrapper.sticky > .big-text-box) p,
.section:has(> .vertical-wrapper.sticky > .big-text-box) h1,
.section:has(> .vertical-wrapper.sticky > .big-text-box) h2,
.section:has(> .vertical-wrapper.sticky > .big-text-box) h3,
.section:has(> .vertical-wrapper.sticky > .big-text-box) .big-text { color: var(--brand-green-dark); }

/* Light text on green for contact section */
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper),
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper) p,
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper) h1,
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper) h2,
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper) h3,
.section:has(> .w-layout-blockcontainer.container > .contact-details-wrapper) a { color: var(--brand-green-dark); }

/* Dark text on gold (amenities + accommodations) — must come after .dark-bg block to win cascade */
.section.amenities-section,
.section.accommodations-section {
  --text-default: var(--brand-green-dark);
  --text-default-muted: var(--brand-green-dark-muted);
}
.section.amenities-section,
.section.amenities-section p,
.section.amenities-section h1,
.section.amenities-section h2,
.section.amenities-section h3,
.section.amenities-section h4,
.section.amenities-section h5,
.section.amenities-section h6,
.section.amenities-section a,
.section.accommodations-section,
.section.accommodations-section p,
.section.accommodations-section h1,
.section.accommodations-section h2,
.section.accommodations-section h3,
.section.accommodations-section h4,
.section.accommodations-section h5,
.section.accommodations-section h6,
.section.accommodations-section a {
  color: var(--brand-green-dark);
}

/* Top-nav CTA: gold pill, green text */
.fourthiary-button.main.for--navbar,
.fourthiary-button.main.for--navbar:hover {
  background-color: var(--brand-gold);
  border-color: var(--brand-gold);
  color: var(--brand-green-dark);
}
.fourthiary-button.main.for--navbar > div { color: var(--brand-green-dark); }

/* Giant text section CTA: cream text */
.section.light-work-section .fourthiary-button.main,
.section.light-work-section .fourthiary-button.main > div,
.section.light-work-section .fourthiary-button.main:hover,
.section.light-work-section .fourthiary-button.main:hover > div {
  color: var(--surface-white);
}

/* Accommodation overlay text: white on image */
.section.accommodations-section .small-h3,
.section.accommodations-section .text-box,
.section.accommodations-section .text-wrapper,
.section.accommodations-section .project-box .small-h3 {
  color: var(--surface-white);
}

.container.hero-container {
  padding: 0;
}

.container.hero-container.second-version {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

.container.checkout-container {
  padding: 1em 0;
}

.container.none-padding.for--works, .container.for-client {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.container.for-client.none-padding-bottom {
  padding-bottom: 0;
}

.container.none-padding-x {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.container.none-padding-x.for--works {
  padding-bottom: 0;
}

.container.space {
  flex-flow: column;
  display: flex;
}

.animation-text-container {
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
}

.text-line-block {
  z-index: 6;
  height: 100%;
  position: absolute;
  overflow: hidden;
}

.animation-text {
  color: var(--text-default-muted);
  -webkit-text-stroke-color: var(--text-default-muted);
  text-transform: uppercase;
  white-space: nowrap;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Rowdies;
  font-size: 5rem;
  font-weight: 700;
  line-height: .9;
}

.animation-text.back {
  color: var(--text-default);
  -webkit-text-stroke-color: var(--light--heading-back-text\<deleted\|variable-d656b903-12b5-c10e-7964-da1c16d7bd25\>);
}

.cursor-wrapper {
  z-index: 1000;
  pointer-events: none;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
  position: fixed;
}

.cursor {
  z-index: 999;
  justify-content: center;
  align-items: center;
  position: relative;
}

.cursor-main {
  border: 1px solid var(--light--heading-text);
  border-radius: 50%;
  width: 18px;
  height: 18px;
  position: relative;
}

.global-button {
  background-color: var(--text-default);
  color: #404145;
  text-transform: capitalize;
  border: 1px #404145;
  border-radius: 2.5em;
  justify-content: center;
  align-items: center;
  min-height: 45px;
  padding: .7em 1.3em;
  font-family: Inter Tight, sans-serif;
  font-weight: 600;
  display: flex;
  position: relative;
}

.global-button.secondary {
  border-style: solid;
  border-color: var(--brand-green);
  min-width: 120px;
  min-height: 50px;
  color: var(--brand-green);
  text-transform: uppercase;
  background-color: #0000;
  padding-left: 1em;
  padding-right: 1em;
  transition: color .2s, background-color .2s;
}

.global-button.secondary:hover {
  background-color: var(--brand-green);
  color: var(--text-default-muted);
}

.global-button.secondary.for--product {
  width: 100%;
}

.global-button.secondary.for--checkout {
  border-style: solid;
  border-color: var(--text-default-muted);
  background-color: var(--surface-white);
}

.global-button.secondary.for--checkout:hover {
  color: var(--text-default-muted);
  background-color: #0000;
}

.buttons-wrapper {
  display: flex;
  position: relative;
}

.navbar-wrapper {
  display: block;
}

.social-links-wrapper {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.social-links-wrapper.for--footer {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  justify-content: flex-start;
  align-items: flex-end;
}

.spacer-medium {
  padding-top: 1em;
  padding-bottom: 1em;
  display: flex;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-hidden.position-relative {
  z-index: 5;
  position: relative;
}

.first-line {
  display: block;
  position: relative;
}

.text-animation-wrapper {
  z-index: 10;
  flex-flow: column;
  display: flex;
  position: relative;
}

.text-animation-wrapper.right {
  margin-left: auto;
}

.text-animation-wrapper.home-title {
  margin-top: 2em;
}

.text-animation-wrapper.hide {
  display: none;
}

.hero-section {
  height: 100vh;
  margin-bottom: 15em;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: visible;
}

.hero-section.for--home-page {
  margin-bottom: 0;
}

.hero-section.for--home-page.second-version {
  height: 260vh;
}

.hero-section.for--home-page.overflow-hidden {
  overflow: hidden;
}

.footer {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  justify-content: space-between;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.footer-links-flex {
  grid-column-gap: 6em;
  grid-row-gap: 6em;
  display: flex;
}

.footer-links-holder {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  display: flex;
}

.footer-links-holder.have--max-width {
  max-width: 75%;
}

.small-text-title {
  color: var(--text-default-muted);
  text-transform: capitalize;
  font-size: 1.1rem;
}

.small-text-title.size-large {
  font-size: 1.4rem;
  font-weight: 500;
}

.small-text-title.size-large.breaking-no-wrap {
  color: var(--text-default-muted);
  white-space: nowrap;
}

.small-text-title.partner {
  color: var(--text-default);
  text-transform: capitalize;
  font-family: Fraunces, sans-serif;
  font-size: 1.6rem;
  font-weight: 300;
}

.partner-box {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  background-color: var(--text-default);
  border-radius: 1.5em;
  flex-flow: column;
  padding: 1.5em;
  display: flex;
}

.partner-box.for--tab {
  height: 100%;
  padding-right: var(--desktop-padding-x);
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  background-color: #0000;
  border-radius: 1.2em;
  justify-content: space-between;
  align-items: flex-start;
  padding-left: 0;
}

.partner-details-wrpper {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.partner-name-wrapper {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.partner-p {
  text-transform: capitalize;
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1.8;
}

.hero-p {
  color: var(--text-default);
  text-transform: uppercase;
  margin-bottom: 0;
  font-size: .85rem;
  font-weight: 300;
}

.success-message {
  background-color: var(--light--yellow\<deleted\|variable-066e493e-2697-71e2-824a-99352318a34f\>);
  padding: 1.5em;
}

.error-message {
  padding: 1.5em;
}

.contact-form {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  flex-flow: column;
  width: 100%;
  display: flex;
}

.contact-form-row {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  justify-content: space-between;
  display: flex;
}

.contact-form-input-wrapper {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  width: 50%;
  display: flex;
}

.contact-form-input-wrapper.full-width {
  width: 100%;
}

.contact-form-input {
  border-style: solid;
  border-width: 1px;
  border-color: transparent transparent var(--light--heading-text);
  color: var(--text-default-muted);
  background-color: #0000;
  border-radius: 0;
  margin-bottom: 0;
  padding: 1.7em 0 2em;
  font-size: 1.1rem;
  transition: background-color .1s;
}

.contact-form-input:focus {
  border-style: none none solid;
  border-color: black black var(--light--white);
}

.contact-form-input::placeholder {
  color: var(--text-default-muted);
  text-transform: capitalize;
}

.contact-form-input.text-area {
  min-width: 100%;
  max-width: 100%;
  min-height: 150px;
  max-height: 150px;
  padding-top: 1em;
}

.contact-form-input.for-light {
  border-bottom-color: var(--light--dark-green);
  color: var(--brand-green-dark);
}

.contact-form-input.for-light::placeholder {
  color: var(--brand-green-dark);
}

.flex-right {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.flex-right.left {
  justify-content: flex-start;
  align-items: center;
}

.slider-arrow {
  background-color: var(--text-default);
  width: 45px;
  height: 45px;
  color: var(--light--dark-text);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-family: Bebas Neue;
  font-size: 1.5rem;
  transition: transform .2s;
  display: flex;
  position: absolute;
  overflow: hidden;
}

.slider-arrow:hover {
  transform: scale(1.2);
}

.slider-arrow.is--right {
  left: 5%;
}

.slider-arrow.position-static {
  transition-property: none;
  position: static;
}

.slider-arrow.position-static:hover {
  transform: none;
}

.project-details-wrapper {
  justify-content: space-between;
  display: flex;
}

.project-detail {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  display: flex;
}

.full-width-wrap {
  justify-content: center;
  align-items: center;
  padding: 0;
  display: flex;
  overflow: hidden;
}

.project-main-image {
  border-radius: 0;
  max-height: 600px;
}

.project-detail-text {
  font-size: 1.2rem;
}

.color-block {
  border-radius: 5px;
  min-width: 100px;
  height: 60px;
}

.color-block.body-bg {
  border: 2px solid var(--black\<deleted\|variable-309cef47\>);
  background-color: var(--brand-green);
}

.color-block.dark-text {
  background-color: var(--light--dark-text);
}

.color-block.white {
  border: 2px solid var(--black\<deleted\|variable-309cef47\>);
  background-color: var(--text-default);
}

.color-block.heading-text {
  background-color: var(--surface-white);
}

.color-block.orange {
  background-color: var(--light--orange);
}

.spacer-small {
  padding-top: .3em;
  padding-bottom: .3em;
}

.spacer-small.have--border {
  border: 1px solid var(--light--white);
}

.style-guide-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
}

.style-guide-title.for-structures {
  font-size: 1.3rem;
}

.text-align-center {
  text-align: center;
}

.text-align-center.for--legal-page {
  margin-top: .2em;
  font-size: 4rem;
}

.text-align-center.for--legal-page.left {
  text-align: left;
}

.horizontal-flex {
  justify-content: space-between;
  display: flex;
}

.title-wrapper-for-legal {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  padding-top: 3em;
  display: flex;
}

.spacer-medium-style-guide {
  padding-top: 1em;
  padding-bottom: 1em;
}

.spacer-medium-style-guide.have--border {
  border: 1px solid var(--light--white);
}

.style-guide-block {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 2em;
  padding-bottom: 2em;
  display: flex;
}

.style-guide-colors-layout {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: wrap;
  width: 40%;
  display: flex;
}

.global-link-for-legal {
  color: #f7ffff;
  text-transform: capitalize;
  font-weight: 500;
  transition: opacity .2s;
}

.global-link-for-legal:hover {
  opacity: .7;
}

.global-link-for-legal.nav-link {
  color: var(--text-default-muted);
  font-size: 1.5rem;
  font-weight: 600;
  transition: opacity .2s;
}

.global-link-for-legal.nav-link:hover {
  opacity: .7;
}

.spacer-large-style-guide {
  padding-top: 3em;
  padding-bottom: 3em;
}

.spacer-large-style-guide.have--border {
  border: 1px solid var(--light--white);
}

.title-wrapper-for--legal {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  display: flex;
}

.licences-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 40%;
  display: grid;
}

.licences-row {
  padding-top: 5em;
  display: flex;
}

.title-wrapper-fir-licenses {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  display: flex;
}

.licences-image {
  width: 100%;
  height: 150px;
}

.licences-font-box {
  padding-top: 5em;
}

.licences-text-box {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 60%;
  padding-left: 2em;
  display: flex;
}

.utility-page-wrapper {
  justify-content: center;
  align-items: center;
  max-width: 100%;
  height: auto;
  display: flex;
}

.title-wrapper-for-404 {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  display: flex;
}

.utility-page--content {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 425px;
  display: flex;
}

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

.footer-bottom {
  justify-content: space-between;
  display: flex;
}

.global-small-link {
  color: var(--brand-green);
  text-transform: capitalize;
  font-size: 1.2rem;
}

.global-small-link.for--footer {
  color: var(--text-default);
  text-transform: uppercase;
  font-family: Inter Tight, sans-serif;
  font-weight: 300;
  transition: letter-spacing .4s;
}

.global-small-link.for--footer:hover {
  letter-spacing: 2px;
}

.global-small-link.for--footer.for--project {
  color: var(--brand-green);
}

.global-small-link.for--footer._1 {
  line-height: 1.2;
}

.global-small-link.footer-powered {
  color: var(--text-default);
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: 500;
}

.global-small-link.footer-powered.hide {
  display: none;
}

.contact-details-wrapper {
  grid-column-gap: 2.5em;
  grid-row-gap: 2.5em;
  justify-content: space-between;
  display: flex;
}

.contact-details-wrapper.second {
  padding: 3em var(--desktop-padding-x);
  background-color: var(--surface-white);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
}

.contact-details-wrapper.second.horizontal-flex {
  flex-flow: row;
}

.contact-form-wrapper {
  width: 55%;
  margin-bottom: 0;
}

.contact-form-wrapper.second {
  width: 100%;
}

.contact-form-wrapper.second.third-contact {
  width: 70%;
}

.contact-details-right {
  grid-column-gap: 1.8em;
  grid-row-gap: 1.8em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  width: 45%;
  padding-top: 0;
  display: flex;
}

.hero-content-wrapper {
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  height: 140vh;
  display: flex;
  position: sticky;
  top: 0;
}

.sticky-block {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  display: flex;
}

.faq-dropdown-list {
  background-color: #0000;
  padding-top: 1.3em;
  display: none;
  position: static;
}
.faq-dropdown.w--open > .faq-dropdown-list,
.w-dropdown.w--open > .faq-dropdown-list {
  display: block;
}

.sticky-content-wrap {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  justify-content: space-between;
  display: flex;
}

.faq-dropdown-toggle {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0;
  transition: opacity .2s;
  display: flex;
  position: relative;
}

.faq-dropdown-toggle:hover {
  opacity: .65;
}

.sticky-content-left {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  width: 100%;
}

.dropdown-circle {
  background-color: #0000;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 25px;
  height: 25px;
  padding: .2em;
  display: flex;
  position: relative;
}

.accordion-p {
  max-width: 90%;
  color: var(--text-default);
  white-space: pre-wrap;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.2;
}

.accordion-p.for--dropdown {
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.4;
}

.sticky-content-right {
  grid-column-gap: 5em;
  grid-row-gap: 2em;
  flex-flow: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  display: grid;
}

.faq-dropdown {
  width: 100%;
  min-height: 7em;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  position: static;
  overflow: hidden;
}

.plus-text {
  z-index: 2;
  color: var(--text-default-muted);
  font-size: 2rem;
  font-weight: 300;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pricing-tab-link {
  color: var(--text-default-muted);
  text-transform: uppercase;
  background-color: #0000;
  border-radius: 1em;
  padding: .7em 2.5em;
  font-family: Inter, sans-serif;
  font-weight: 500;
}

.pricing-tab-link.w--current {
  background-color: var(--surface-white);
  color: var(--brand-green);
  border-radius: 5em;
}

.card-item-wrapper {
  width: 32%;
}

.card-item-wrapper.size-large {
  width: 45%;
}

.global-bold-text {
  font-size: 1rem;
}

.pricing-tab-content {
  width: 100%;
  margin-top: 2em;
}

.cards-row {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  justify-content: space-between;
  padding-top: 2em;
  display: flex;
}

.pricing-tab {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  padding-top: 1em;
  display: flex;
}

.pricing-tab-menu {
  border: 1px solid var(--light--heading-text);
  background-color: #0000;
  border-radius: 5em;
  justify-content: center;
  align-items: center;
  padding: .2em;
  display: flex;
}

.check {
  width: 15px;
  height: 15px;
}

.card {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  background-color: var(--surface-white);
  border-radius: 3px;
  flex-flow: column;
  width: 100%;
  padding: 2em 2.5em;
  display: flex;
}

.card.popular {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  transform: scale3d(1none, 1none, 1none);
  transform-style: preserve-3d;
  margin-top: -35px;
  padding-top: 3em;
}

.card-title {
  color: var(--brand-green);
  text-align: center;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: .3em;
  font-size: 1.3rem;
  font-weight: 600;
}

.card-title.price {
  font-size: 2rem;
}

.card-detail-row {
  grid-column-gap: .3em;
  grid-row-gap: .3em;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: .3em;
  display: flex;
}

.card-detail-row.first {
  margin-top: 1em;
}

.x-small-p {
  color: var(--brand-green-dark);
  text-align: center;
  font-size: .8rem;
  font-weight: 400;
}

.x-small-p.color-black {
  color: #1d232f;
}

.x-small-p.color-black.text-align-center {
  color: var(--brand-green);
}

.card-detail-text {
  font-size: .9rem;
  font-weight: 400;
}

.card-block {
  grid-column-gap: .7em;
  grid-row-gap: .7em;
  color: var(--brand-green);
  flex-flow: column;
  display: flex;
}

.card-block.have--gap {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
}

.check-wrapper {
  flex-flow: column;
  width: 15px;
  height: 15px;
  display: flex;
  overflow: hidden;
}

.product-detail-wrapper {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  justify-content: space-between;
  display: flex;
}

.product-detail-content-wrapper {
  background-color: var(--surface-white);
  width: 50%;
  color: var(--brand-green);
  border-radius: 3px;
  flex-flow: column;
  justify-content: space-around;
  padding: 2em;
}

.select-option {
  border: 1px solid var(--black\<deleted\|variable-309cef47\>);
  background-color: var(--light--dark-text);
  width: 100%;
  height: 56px;
  color: var(--text-default);
  border-radius: 2.5em;
  padding: 1.2em 1.5em;
  font-weight: 600;
}

.select-option:active, .select-option:focus {
  border-color: var(--black\<deleted\|variable-309cef47\>);
}

.select-option.for--checkout {
  border-color: var(--brand-green);
  background-color: var(--text-default);
  color: var(--light--dark-text);
  padding-left: 1em;
  padding-right: 1em;
}

.product-rich-text {
  line-height: 1.4;
}

.global-radius-box {
  color: var(--brand-green);
  border-radius: 3px;
  overflow: hidden;
}

.checkout-form {
  background-color: #0000;
  padding: 0;
}

.block-header {
  background-color: var(--surface-white);
  color: var(--brand-green);
  border-style: none;
}

.block-content {
  background-color: var(--surface-white);
  color: var(--brand-green);
  border: 1px #000;
}

.checkout-button {
  border-radius: .8em;
}

.checkout-input {
  color: var(--light--dark-text);
  border-style: none;
  border-radius: 8px;
  padding: 1.5em 1em;
}

.slider-arrow-wrap {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 50%;
  display: flex;
}

.arrow {
  width: 45%;
  height: 45%;
}

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

.global-button-wrapper {
  text-transform: capitalize;
  justify-content: flex-start;
  align-items: center;
  height: 45px;
  display: flex;
}

.project-link {
  color: var(--brand-green);
  border-bottom: 1px solid #ffffff2e;
  display: block;
  position: relative;
}

.line-underline {
  background-color: var(--brand-green);
  width: 100%;
  height: 1px;
  position: absolute;
  inset: auto 0% 0%;
}

.line-underline.color-white, .line-underline.is--color-white {
  background-color: var(--text-default);
}

.footer-links-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 65%;
  display: block;
}

.footer-links-grid-child {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.client-tab {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column-reverse;
  justify-content: flex-start;
  align-items: center;
  width: 40%;
  display: flex;
}

.client-tab-menu {
  grid-column-gap: .7em;
  grid-row-gap: .7em;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.client-tab-link {
  aspect-ratio: 1;
  background-color: var(--text-default);
  border-radius: 15px;
  width: 11px;
  height: auto;
  padding: 0;
  transition: filter .4s, opacity .4s;
  overflow: hidden;
}

.client-tab-link:hover {
  opacity: .7;
  filter: grayscale(0%);
}

.client-tab-link.w--current {
  background-color: var(--light--orange);
}

.client-tab-content {
  z-index: 1000;
  position: static;
}

.client-tab-pane {
  z-index: 100;
  height: 100%;
  position: static;
}

.is--color-white {
  color: var(--text-default);
}

.checkout-sticky-block {
  top: 90px;
}

.global-collection-list {
  grid-column-gap: 2em;
  grid-row-gap: 4em;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.global-collection-item {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  border-radius: 1.5em;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.collection-item-link {
  grid-column-gap: .6em;
  grid-row-gap: .6em;
  flex-flow: column;
  width: 100%;
  display: flex;
  position: relative;
}

.collection-image-wrapper {
  border-radius: 3px;
  height: 250px;
  overflow: hidden;
}

.hover-image {
  transition: transform .4s;
}

.hover-image:hover {
  transform: scale(1.1);
}

.collection-item-title {
  color: var(--text-default-muted);
  letter-spacing: 0;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Inter, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.3;
}

.categorie {
  background-color: var(--surface-white);
  color: var(--light--dark-text);
  border-radius: 2px;
  padding: .3em .5em;
  font-size: .8rem;
  position: absolute;
  inset: 3% auto auto 3%;
}

.blog-image-for--single {
  border-radius: 3px;
  height: 600px;
  margin-top: 3em;
}

.blog-rich-text {
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
  line-height: 2;
}

.discover-wrapper {
  z-index: 999;
  flex-flow: column;
  justify-content: center;
  align-items: flex-end;
  display: flex;
  position: fixed;
  top: 0%;
  bottom: 0%;
  right: 0%;
}

.discover-box {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-flow: column;
  grid-template-rows: auto auto auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.discover-block {
  aspect-ratio: 1;
  color: #201428;
  object-fit: cover;
  background-color: #fff;
  border-bottom: 1px solid #494949;
  border-left: 1px solid #494949;
  justify-content: center;
  align-items: center;
  width: 3rem;
  transition: color .5s cubic-bezier(.645, .045, .355, 1);
  display: flex;
  position: relative;
}

.discover-block:hover {
  color: #7400ab;
}

.discover-block.first {
  border-top: 1px solid #494949;
  border-top-left-radius: .75rem;
}

.discover-block.last {
  border-bottom-left-radius: .75rem;
}

.discover-icon {
  aspect-ratio: 1;
  color: #172123;
  width: 1.3rem;
  overflow: hidden;
}

.discover-text-block {
  z-index: -1;
  color: #172123;
  background-color: #fff;
  border: 1px solid #494949;
  border-radius: 1rem;
  justify-content: flex-end;
  align-items: center;
  min-width: max-content;
  height: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: .8rem;
  display: flex;
  position: absolute;
  right: calc(100% + .5rem);
}

.discover-button {
  background-color: #fff;
  display: none;
}

.logo-main {
  width: 110px;
  position: absolute;
  left: 50%;
  transform: translate(-50%);
}

.header-content {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-top: 1em;
  padding-bottom: 1em;
  display: flex;
  position: relative;
}

.hamburger-menu-wrapper {
  flex-flow: column;
  justify-content: space-between;
  align-items: stretch;
  height: 15px;
  padding-top: 3px;
  padding-bottom: 3px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.navbar-container {
  max-width: 1100px;
  padding-right: var(--desktop-padding-x);
  padding-left: var(--desktop-padding-x);
  position: relative;
}

.simple-link-wrapper {
  z-index: 9998;
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  align-items: center;
  font-size: .8rem;
  font-weight: 300;
  display: flex;
  position: relative;
}

.open-logo-line {
  background-image: linear-gradient(90deg, var(--brand-green), #f8f0e8 55%);
  width: 65px;
  height: 1px;
}

.layer {
  background-color: var(--brand-green);
  width: 50%;
  height: 1px;
  position: absolute;
  inset: auto 0% 3px;
}

.layer.top {
  height: 1px;
  inset: 3px 0% auto;
}

.fourthiary-button {
  background-color: #0000;
  border: 1px solid #515258;
  border-radius: 25px;
  padding: 1.1em 2.3em;
  font-size: .7rem;
  transition: border-color .7s cubic-bezier(.165, .84, .44, 1), background-color .7s cubic-bezier(.165, .84, .44, 1);
}

.fourthiary-button:hover {
  background-color: #a9abb533;
  border-color: #333338;
}

.fourthiary-button.main {
  grid-column-gap: .6em;
  grid-row-gap: .6em;
  border-style: solid;
  border-color: var(--brand-gold);
  background-color: var(--brand-gold);
  color: var(--brand-green-dark);
  text-transform: uppercase;
  border-radius: 20em;
  justify-content: flex-start;
  align-items: center;
  font-size: .85rem;
  font-weight: 500;
  transition: color .7s cubic-bezier(.165, .84, .44, 1), background-color .7s cubic-bezier(.165, .84, .44, 1);
  display: flex;
}

.fourthiary-button.main:hover, .fourthiary-button.main.secondary {
  color: var(--surface-white);
  background-color: var(--brand-green-dark);
  border-color: var(--brand-green-dark);
}

.fourthiary-button.main.secondary:hover {
  background-color: var(--surface-white);
  color: var(--brand-green);
}

.fourthiary-button.main.secondary.color-black {
  border-color: var(--light--dark-green);
  color: var(--brand-green-dark);
}

.fourthiary-button.main.secondary.color-black:hover {
  background-color: var(--brand-green);
  color: var(--text-default-muted);
}

.fourthiary-button.main.secondary.hide {
  display: none;
}

.navbar {
  z-index: 9997;
  position: absolute;
  inset: 0% 0% auto;
}

.header-content-new {
  display: flex;
  align-items: center;
  gap: 2em;
  width: 100%;
  padding-top: 1em;
  padding-bottom: 1em;
  position: relative;
}
.header-content-new .logo-main-new {
  width: 150px;
  flex-shrink: 0;
  display: inline-block;
}
.header-content-new .logo-main-new img {
  width: 100%;
  height: auto;
  display: block;
}
.top-nav-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.5em;
  margin-left: auto;
  background: transparent;
}
.top-nav-link {
  color: var(--brand-green-dark);
  text-decoration: none;
  font-size: 0.95rem;
  font-weight: 400;
  text-transform: capitalize;
  white-space: nowrap;
}
.top-nav-link { transition: color 0.25s ease; }
.top-nav-link:hover { color: var(--brand-gold); }
.top-nav-link.w--current,
.top-nav-link[aria-current="page"] {
  color: var(--brand-gold);
  font-weight: 600;
  position: relative;
}
.top-nav-link.w--current::after,
.top-nav-link[aria-current="page"]::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 2px;
  background-color: var(--brand-gold);
}
/* Highlight the current page's link in the footer nav column */
.footer-links-grid-child .w--current .for--footer,
.footer-links-grid-child a[aria-current="page"] .for--footer {
  color: var(--brand-gold);
  font-weight: 600;
}
/* Contain horizontal overflow WITHOUT breaking sticky/scroll animations.
   overflow-x: clip does not create a new scroll container, so
   position: sticky children still track the page scroll. Applied
   only to .page-wrapper (the main content wrapper), not html/body. */
.page-wrapper { overflow-x: clip; }
/* The community gallery section uses negative margins to fan the
   tiles across the viewport - clip them to their own section box
   so they cannot spill past the page edge. */
.section.gallery { overflow-x: clip; }
/* Back-to-top button (injected by js/back-to-top.js on every page) */
.back-to-top {
  position: fixed;
  right: 5rem;
  bottom: 5rem;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 999px;
  border: 1px solid var(--brand-beige);
  background-color: var(--brand-green-dark);
  color: var(--brand-beige);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.35s ease, transform 0.35s ease, background-color 0.25s ease, color 0.25s ease;
  box-shadow: 0 8px 24px rgba(26, 21, 11, 0.18);
  -webkit-tap-highlight-color: transparent;
}
.back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.back-to-top:hover {
  background-color: var(--brand-gold);
  color: var(--brand-ink);
}
.back-to-top:focus-visible {
  outline: 2px solid var(--brand-gold);
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .back-to-top {
    right: 1.25rem;
    bottom: 1.25rem;
    width: 2.75rem;
    height: 2.75rem;
  }
}
/* Let clicks reach the video tiles inside the community gallery.
   .galler-content is an absolute overlay for the CTA - it was
   blocking the iframes below it. */
.section.gallery .galler-content { pointer-events: none; }
.section.gallery .home-gallery-block,
.section.gallery .home-gallery-block * { pointer-events: auto; }
.section.gallery .testimonial-video-tile,
.section.gallery .testimonial-video-tile iframe { pointer-events: auto; }
@media screen and (max-width: 991px) {
  .top-nav-links { gap: 1em; font-size: 0.85rem; }
}
@media screen and (max-width: 767px) {
  .header-content-new { flex-wrap: wrap; gap: 1em; }
  .top-nav-links { order: 3; width: 100%; justify-content: flex-start; flex-wrap: wrap; }
}

.nav-link {
  color: #fff;
  font-size: 2.7rem;
}

.cover-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.big-text {
  width: 100%;
  color: var(--text-default);
  text-align: center;
  font-family: Fraunces, sans-serif;
  font-size: 9rem;
  font-weight: 400;
  line-height: 1;
}

.vertical-wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.vertical-wrapper.sticky {
  height: 100vh;
  position: sticky;
  top: 0;
  left: 0;
  overflow: hidden;
}

.big-text-box {
  z-index: 1;
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.text-box {
  z-index: 9999;
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.full-container {
  max-width: none;
  padding-left: 1em;
  padding-right: 1em;
  position: relative;
}

.full-container.no-padding {
  padding-left: 0;
  padding-right: 0;
}

.large-text-section-lottie {
  z-index: -1;
  width: 200%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.large-text-section-lottie.small {
  width: 100%;
}

.text-wrapper {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: row;
  justify-content: center;
  align-items: center;
  display: flex;
}

.project-box {
  aspect-ratio: 3 / 4;
  object-fit: cover;
  flex-flow: column;
  justify-content: center;
  align-self: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.small-h3 {
  color: var(--text-default);
  text-align: center;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.5rem;
}

.small-h3.size--large {
  font-size: 3.4rem;
}

.section-part-second {
  position: relative;
}

.box {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.projects-container {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.projects-container.second {
  flex-flow: row;
}

.normal-spacer {
  width: 100%;
  padding-top: 6em;
}

.dark-layer {
  background-image: linear-gradient(#00000080, #00000080);
  position: absolute;
  inset: 0%;
}

.frame-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.frame-image.absoulte {
  position: absolute;
  inset: 0%;
}

.normal-title {
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3rem;
  font-weight: 400;
}

.normal-title.size-large {
  color: var(--text-default);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 7rem;
  font-weight: 200;
  line-height: 1.3;
}

.normal-title.size-large.text-align-left {
  text-align: left;
}

.normal-title.size-large.for--service {
  color: var(--text-default);
  -webkit-text-fill-color: inherit;
  background-image: none;
  background-clip: border-box;
  font-size: 4.5rem;
}

.normal-title.size-medium {
  color: var(--text-default);
  text-align: center;
  font-size: 4.5rem;
}

.normal-title.size-medium.for-third-home {
  font-weight: 300;
}

.normal-title.center {
  color: var(--text-default);
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3.3rem;
  font-weight: 300;
  line-height: 1.3;
}

.normal-title.center.is--color-dark-green {
  color: var(--brand-green-dark);
}

.normal-title.center.is--color-dark-green.big {
  font-size: 8rem;
  font-weight: 200;
}

.normal-title.center.left {
  text-align: left;
}

.normal-title.center.left.color-dark-green {
  color: var(--brand-green-dark);
}

.normal-title.center.for--about {
  z-index: 10;
  font-size: 5rem;
  line-height: 1.2;
  position: relative;
}

.normal-title.center.large {
  color: var(--brand-green-dark);
  text-transform: uppercase;
  font-size: 9rem;
  font-weight: 200;
  line-height: 1;
}

.normal-title.for--inner-pages {
  text-align: center;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(90deg, #fae2dd, #fac3b1);
  -webkit-background-clip: text;
  background-clip: text;
  font-size: 3.5rem;
  line-height: 1.3;
}

.gallery-wrap {
  height: 100vh;
  display: flex;
  position: relative;
  overflow: clip;
}

.gallery-wrap.for--gallery-page {
  z-index: 100;
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  height: auto;
  margin-top: 20em;
  display: grid;
}

.home-gallery-image-wrap.second {
  margin-left: -34vw;
}

.home-gallery-image-wrap.third {
  margin-left: -35vw;
}

.home-gallery-image {
  z-index: 1;
  width: 60vw;
  height: 100vh;
  position: relative;
}

.home-gallery-image.first {
  margin-left: -10vw;
}

.home-gallery-image.for--gallery-page {
  width: 100%;
  height: auto;
  position: static;
}

.home-gallery-image.for--gallery-page.land-scape {
  aspect-ratio: 3 / 2;
}

.gallery-item {
  position: relative;
}

.gallery-item.for--gallery-page {
  width: 100%;
  height: 100%;
}

.dark-layer {
  z-index: 1;
  pointer-events: none;
  background-image: linear-gradient(#0000004d, #0000004d);
}

.dark-layer.high-dark {
  background-image: linear-gradient(#0006, #0006);
}

.galler-content {
  z-index: 5;
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: 0%;
}

.home-gallery-block {
  z-index: 3;
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: absolute;
  bottom: 4rem;
  left: 50%;
  transform: translate(-50%);
}

.gallery-link {
  color: #000;
  text-align: center;
  text-transform: uppercase;
  background-image: linear-gradient(90deg, #fae2dd, #deb7ac);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  font-size: .8rem;
  line-height: 1.3;
  display: flex;
}

.gallery-link.relative {
  z-index: 5;
  position: relative;
}

.hero-image-wrap {
  z-index: 2;
  aspect-ratio: 3 / 2;
  width: 75%;
  margin-top: -5em;
  position: relative;
  overflow: hidden;
}

.hero-top {
  justify-content: space-between;
  width: 100%;
  padding-top: 3em;
  padding-left: 5em;
  padding-right: 5em;
  display: flex;
  position: relative;
}

.hero-top.low-padding {
  padding-top: 4em;
}

.hero-center-lottie-wrapper {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: absolute;
  left: 50%;
  transform: translate(-50%);
}

.hero-lottie {
  width: 75%;
  margin-top: 2em;
}

.hero-lottie.more-margin {
  margin-top: 15em;
}

.hero-title-wrap {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  justify-content: space-around;
  margin-top: 5em;
  display: flex;
}

.hero-title-wrap.right { margin-top: 9em; }

.small-circle {
  background-color: var(--text-default);
  border-radius: 50%;
  width: 10px;
  height: 10px;
}

.project-box-collection {
  width: 50%;
}

.contact-lottie {
  max-height: 600px;
}

.form-button {
  border: 1px solid var(--brand-gold);
  background-color: var(--brand-gold);
  width: 100%;
  color: var(--brand-green-dark);
  border-radius: 10em;
  padding-top: 1em;
  padding-bottom: 1em;
  font-weight: 500;
  transition: color .4s, background-color .4s;
}

.form-button:hover {
  color: var(--surface-white);
  background-color: var(--brand-green-dark);
  border-color: var(--brand-green-dark);
}

.form-button.for-light {
  border-color: var(--light--dark-green);
  background-color: var(--brand-green);
  color: var(--text-default-muted);
}

.form-button.for-light:hover {
  color: var(--brand-green-dark);
  background-color: #0000;
}

.contact-bottom {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.contact-bottom.child {
  flex-flow: column;
  width: 30%;
}

.contact-bottom.child.full {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  width: 100%;
}

.contact-text {
  color: var(--text-default-muted);
  text-transform: capitalize;
  font-weight: 500;
}

.contact-text.large {
  font-size: 1.3rem;
  font-weight: 400;
}

.contact-text.large.dark {
  color: var(--brand-green-dark);
}

.contact-text.no-link {
  color: var(--text-default);
  font-weight: 400;
}

.contact-text.no-link.second {
  color: var(--brand-green);
}

.contact-text.second {
  color: var(--brand-green-dark);
}

.blog-date {
  color: var(--text-default-muted);
  text-transform: uppercase;
  font-size: .8rem;
  font-weight: 400;
}

.next-project-wrapper {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
}

.next-project-image {
  width: 300px;
  height: 12rem;
}

.next-item {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.next-project {
  color: var(--brand-green);
  text-align: center;
  font-size: 3.5rem;
}

.service-left {
  width: 45%;
}

.service-rich-text {
  line-height: 1.5;
}

._404-wrapper {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

._404-left {
  width: 45%;
}

._404-right {
  width: 50%;
}

.home-about-wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
  overflow: hidden;
}

.home-about-wrapper.third-home {
  flex-flow: row;
  justify-content: flex-start;
  align-items: flex-start;
}

.home-about-wrapper.for--home {
  padding-top: var(--desktop-separator);
  padding-bottom: var(--desktop-separator);
  justify-content: center;
  align-items: stretch;
  position: sticky;
}

.home-about-wrapper.for--home.top {
  justify-content: flex-start;
  align-items: stretch;
}

.home-about_image-zoom {
  z-index: 10;
  width: 100vw;
  max-width: none;
  height: 100vh;
  position: absolute;
  inset: 0%;
  transform: scale(.2);
}

.about-title-wrapper {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.about-title-wrapper.for--gallery {
  position: static;
}

.about-p {
  text-align: center;
  text-transform: capitalize;
  font-weight: 400;
}

.about-p.text-align-left {
  text-align: left;
  max-width: 75%;
}

.about-p.text-align-left.second-version {
  max-width: 100%;
}

.about-p.text-align-left.second-version.color-dark-green {
  color: var(--brand-green-dark);
}

.about-p.text-align-left.second-version.color-dark-green.text-bold {
  font-weight: 600;
}

.about-p.for--service {
  text-align: left;
  font-size: 1.3rem;
}

.about-p.for--service.small {
  font-size: .8rem;
}

.about-top-left {
  width: 12rem;
  height: auto;
  position: absolute;
  top: -30vh;
  bottom: auto;
  left: 10%;
}

.about-top-left.right {
  aspect-ratio: 3 / 2;
  width: 15rem;
  top: -20vh;
  left: auto;
  right: 5%;
}

.about-top-left.bottom {
  top: 25vh;
  left: auto;
  right: 5%;
}

.home-v3-gallery-image-left {
  z-index: 5;
  width: 18vw;
  max-width: 22.5rem;
  position: absolute;
  top: 0;
  left: 10vw;
}

.home-v3-gallery-image-left.first-project {
  width: 40vw;
  max-width: none;
}

.home-v3-gallery-image-center {
  z-index: 6;
  width: 23vw;
  max-width: 22.5rem;
  position: absolute;
  top: 0;
  left: 15vw;
}

.home-v3-gallery-image-center.second-project {
  width: 35vw;
  max-width: none;
}

.home-v3-gallery-image-right {
  z-index: 7;
  width: 23vw;
  max-width: 22.5rem;
  position: absolute;
  top: 0;
  right: 12.2vw;
}

.home-v3-gallery-image-right.third-project {
  width: 30vw;
  max-width: none;
}

.full-size {
  width: 100%;
  height: 100%;
}

.third-hero-image {
  position: absolute;
  inset: 0%;
}

.home-hero-left {
  background-color: var(--brand-green-dark);
  flex-flow: column;
  justify-content: space-between;
  width: 50%;
  height: 100%;
  display: flex;
  position: relative;
}

.third-home-lottie {
  width: 50%;
  margin-left: auto;
  margin-right: auto;
}

.third-home-top {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 5em;
  padding-left: 4em;
  padding-right: 4em;
  display: flex;
}

.works-slider {
  background-color: #0000;
  height: auto;
}

.works-slider-wrap {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
  position: relative;
}

.works-center-wrapper {
  z-index: 10;
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  flex-flow: column;
  display: flex;
  position: absolute;
}

.work-center-p {
  text-align: center;
  text-transform: uppercase;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.7;
}

.works-arrow {
  justify-content: center;
  align-items: center;
  min-width: 400px;
  display: flex;
}

.works-arrow.left {
  left: 0;
}

.works-arrow.right {
  right: 0;
}

.work-arrow-wrap {
  grid-column-gap: 7px;
  grid-row-gap: 0px;
  background-color: var(--brand-green);
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 98px;
  display: flex;
  position: absolute;
}

.work-arrow-wrap.left {
  left: 0;
}

.work-arrow-wrap.right {
  right: 0;
}

.work-arrow-text {
  font-size: .8rem;
}

.work-slider-arrow {
  margin: auto 0 auto 2em;
  font-size: .8rem;
  position: static;
}

.work-slider-arrow.right {
  margin-left: auto;
  margin-right: 3em;
}

.work-arrow-hover-wrap {
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
}

.work-arrow-inner-hover {
  max-width: 235px;
  height: 100%;
  max-height: 325px;
  overflow: hidden;
}

.work-arrow-image-wrapper {
  display: flex;
  position: relative;
}

.work-slider-image-wrapper {
  flex: none;
  width: 100%;
  overflow: clip;
}

.arrow-text {
  z-index: 5;
  margin-bottom: 0;
  font-family: Italiana, sans-serif;
  font-size: 7rem;
  position: absolute;
}

.loop-box {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  flex: none;
  justify-content: flex-start;
  align-items: center;
  width: auto;
  height: auto;
  display: flex;
}

.loop-wrapper {
  width: 100%;
  height: 150px;
  position: relative;
  overflow: hidden;
}

.loop-wrapper.for--inner-pages {
  border-bottom: 1px solid #5f573a;
  margin-top: -.6em;
}

.loop-wrapper.for--inner-pages.none-border {
  border-bottom-style: none;
}

.loop-row {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: absolute;
  bottom: 50%;
  right: 50%;
  transform: translate(50%, 50%);
}

.global-title {
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 5.3rem;
  font-weight: 400;
}

.global-title.blend {
  color: #fff;
  mix-blend-mode: difference;
}

.global-title.blend.size-x-large {
  color: var(--text-default);
  text-transform: uppercase;
  mix-blend-mode: normal;
  font-family: Italiana, sans-serif;
  font-size: 5rem;
  font-weight: 500;
}

.text-loop-wrapper {
  border-top: 1px solid #5f573a;
  border-bottom: 1px solid #5f573a;
  padding-top: 2em;
  padding-bottom: 1em;
  display: block;
}

.text-loop-wrapper.none-border {
  border-top-style: none;
  border-bottom-style: none;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 105vw;
  margin-left: -1em;
  padding-top: 3em;
  padding-bottom: 3em;
  display: flex;
  position: relative;
  overflow: hidden;
}

.text-loop-wrapper.none-border.absolute {
  z-index: 10;
  mix-blend-mode: difference;
  position: absolute;
  inset: 35% 0% 0%;
}

.text-loop-wrapper.none-border.absolute.for--works {
  mix-blend-mode: normal;
  top: auto;
}

.hero-blocks-grid {
  z-index: 12;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  pointer-events: none;
  grid-template-rows: auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100%;
  display: grid;
  position: absolute;
  inset: 0%;
}

.block-line {
  background-color: var(--brand-green);
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transform: rotateX(90deg)rotateY(0)rotateZ(0);
}

.horizontal-wrapper {
  width: 100%;
  padding-bottom: 100vh;
  position: relative;
}

.section-height {
  width: 100%;
  height: 500vw;
}

.sticky-wrapper {
  position: absolute;
  inset: 0%;
}

.sticky-element {
  width: 100%;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
  overflow: hidden;
}

.track {
  flex: none;
  display: flex;
  position: relative;
  transform: translate(0);
}

.track-flex {
  margin-right: -100vw;
  display: flex;
}

.horizontal-scroll {
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
}

.horizontal-scroll-content {
  z-index: 5;
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

.about-legacy {
  height: 100%;
}

.about-container {
  width: 100%;
  height: 100%;
  padding: var(--desktop-separator) var(--desktop-padding-x);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.about-history-title-wrapper {
  margin-bottom: auto;
}

.history-content {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  margin-top: 0;
  display: flex;
}

.history-content.first {
  margin-left: 200px;
  margin-right: 280px;
}

.history-content.second {
  margin-right: 250px;
  position: relative;
}

.history-content.third {
  margin-right: 350px;
}

.history-content.fourth {
  margin-top: 150px;
  margin-right: 200px;
}

.history-date {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3rem;
}

.history-image-wrapper {
  z-index: 1;
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  justify-content: center;
  align-items: center;
  width: auto;
  height: 275px;
  display: flex;
  position: relative;
  overflow: visible;
}

.history-image {
  z-index: 3;
}

.image-layer {
  z-index: 2;
  background-color: var(--brand-green);
  pointer-events: none;
  height: 0%;
  position: absolute;
  inset: 0%;
}

.history-p {
  max-width: 270px;
  margin-bottom: 0;
  font-size: .9rem;
  font-weight: 400;
}

.about-scroll {
  z-index: 4;
  pointer-events: auto;
  flex: none;
  justify-content: flex-start;
  align-items: center;
  width: 90%;
  display: flex;
  position: absolute;
  inset: auto 0% auto 50px;
}

.line-wrapper {
  z-index: 4;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
  position: absolute;
  inset: auto 0% auto 48px;
  overflow: hidden;
}

.line {
  z-index: 4;
  position: relative;
  inset: auto 0%;
  overflow: clip;
}

.absolute-line {
  z-index: 4;
  background-color: var(--text-default);
  width: 20vw;
  height: 2px;
  position: absolute;
  inset: 0%;
}

.about-image-scrolling {
  overflow: clip;
}

.about-sticky {
  padding-top: 6rem;
  position: sticky;
  top: 0;
}

.about-component {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.about-image-block {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  justify-content: center;
  align-items: flex-end;
  display: flex;
}

.top-about-image {
  width: 35em;
  height: 30em;
  position: relative;
  left: 5em;
}

.side-about-image-block {
  width: 15em;
  height: 20em;
}

.about-center-image-block {
  width: 30em;
  height: 30em;
  overflow: hidden;
}

.bottom-about-image {
  width: 35em;
  height: 28em;
}

.about-flex {
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.about-flex.center {
  justify-content: space-between;
  align-items: center;
}

.about-flex.top {
  grid-column-gap: 1.375rem;
  grid-row-gap: 1.375rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
}

.about-flex.top.button {
  flex-flow: column-reverse;
}

.about-flex.spavcce {
  grid-column-gap: 3.75rem;
  grid-row-gap: 3.75rem;
  align-items: center;
  width: 100%;
}

.about-flex-right {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  display: flex;
}

.about-flex-right.second {
  justify-content: space-between;
  width: 100%;
}

.about-flex-right.second.hide {
  display: none;
}

.about-year-wrapper {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.about-year {
  font-size: 5.5rem;
}

.about-year.size--small {
  font-size: 3.5rem;
}

.about-year.size--small.color-dark-green {
  color: var(--brand-green-dark);
}

.global-small-text {
  font-size: .8rem;
}

.global-small-text.text-align-center.color-dark-green {
  color: var(--brand-green-dark);
}

.about-right {
  grid-column-gap: 4em;
  grid-row-gap: 4em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 45%;
  display: flex;
}

.about-right.para-full {
  width: 100%;
  padding-bottom: 3.4375rem;
}

.about-right.shot {
  grid-column-gap: .875rem;
  grid-row-gap: .875rem;
  width: 463px;
}

.about-animation-image-wrapper {
  width: 45%;
  position: relative;
}

.about-animation-image-wrapper.for--client {
  width: 50vw;
  height: 450px;
  position: absolute;
  inset: -20% auto auto -150%;
}

.about-animation-image-wrapper.for-about-page {
  width: 50%;
  height: 650px;
}

.about-animation-image-wrapper.for-about-page.full {
  width: 100%;
  height: 378px;
}

.about-animation-image-wrapper.for-about-page.full.ad {
  width: 32rem;
  max-width: 32rem;
  height: auto;
}

.overlay-wrapper {
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.image-overlay {
  background-color: var(--surface-white);
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
}

.contain-image-block {
  width: 40%;
  height: auto;
  position: absolute;
  top: 50%;
  right: -20%;
  overflow: hidden;
  transform: translate(0, -50%);
}

.contain-image-block.for--client {
  z-index: 200;
  width: 35%;
  height: 225px;
  top: 40%;
  left: -45%;
  right: auto;
}

.image-contain-wrapper {
  width: 100%;
  height: 100%;
}

.image-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.service-hero {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.services-sticky {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.service-hero-title-wrapper {
  z-index: 100;
  position: relative;
}

.service-hero-title-wrapper.second {
  position: relative;
  left: -130%;
}

.service-hero-title-wrapper.first {
  position: relative;
  top: -10%;
}

.service-hero-title-wrapper.third {
  position: relative;
  bottom: -10%;
}

.service-hero-content {
  grid-column-gap: 50px;
  grid-row-gap: 50px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.service-hero-image-content {
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  inset: 0%;
}

.service-hero-image-wrapper {
  width: 380px;
  height: 160px;
  position: relative;
  overflow: hidden;
}

.menu-animation-white-bg {
  z-index: 997;
  background-color: #cf8f7d;
  width: 100%;
  height: 100vh;
  display: none;
  position: fixed;
  inset: auto auto 0% 0%;
}

.drop-menu-cta-links-wrapper {
  grid-column-gap: .7em;
  grid-row-gap: .7em;
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.drop-menu-content-wrapper {
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  padding-bottom: 2em;
  padding-left: 6em;
  padding-right: 6em;
  display: flex;
}

.drop-menu-right {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.drop-links.fifth.hide {
  display: none;
}

.drop-menu {
  z-index: 9997;
  background-color: var(--surface-white);
  width: 100%;
  height: 100vh;
  display: none;
  position: fixed;
  inset: auto auto 0% 0%;
}

.drop-menu-links-wrapper {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.global-link {
  font-size: 1.3rem;
}

.global-link.for--menu {
  color: var(--brand-green);
  text-transform: uppercase;
}

.cart-quantity {
  color: #1d232f;
  justify-content: center;
  align-items: center;
  width: 15px;
  min-width: 15px;
  height: 15px;
  min-height: 15px;
  margin-top: -1rem;
  margin-left: -8px;
  padding-top: 6px;
  padding-bottom: 6px;
  font-size: 10px;
  display: flex;
  position: absolute;
  inset: 20% 0% auto auto;
}

.checkout-input-for--cart {
  background-color: var(--text-default);
  color: var(--brand-green);
  border-style: none;
  border-radius: 8px;
  padding: 1.5em 1em;
}

.cart-button {
  border: 1px solid var(--light--white);
  background-color: #0000;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 10px;
  transition: opacity .2s;
}

.cart-button:hover {
  opacity: .6;
}

.error-state {
  color: #000;
  border-radius: 8px;
}

.close-button {
  cursor: pointer;
  transition: opacity .2s;
}

.close-button:hover {
  opacity: .6;
}

.cart {
  z-index: 1005;
  width: 100%;
  height: 100%;
}

.cart-wrapper {
  z-index: 9999;
  background-color: #0000;
}

.cart-container {
  background-color: var(--surface-white);
  min-width: 365px;
  box-shadow: none;
  color: var(--brand-green);
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  margin-top: 0;
}

.empty-state, .icon {
  color: #000;
}

.nav-right {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  display: flex;
}

.cart-image {
  width: 22px;
  height: auto;
}

.remove-button {
  color: var(--light--dark-text);
}

.cart-item-block {
  grid-column-gap: .4em;
  grid-row-gap: .4em;
}

.text-animation-wrapper-second-version {
  flex-flow: column;
  display: flex;
}

.title-p {
  color: var(--text-default-muted);
  text-align: center;
  text-transform: capitalize;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.1;
}

.title-p.is--color-dark-green {
  color: var(--brand-green-dark);
}

.title-p.is--color-dark-green.align-left {
  text-align: left;
}

.global-title-wrapper {
  z-index: 100;
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
}

.global-title-wrapper.hide {
  display: none;
}

.global-title-wrapper.padding {
  margin-bottom: 6.53333rem;
}

.is--color-orange {
  color: var(--light--orange);
}

.button-arrow {
  width: 18px;
  position: absolute;
  inset: 0%;
  transform: rotate(-35deg);
}

.button-arrow.black.secondary, .button-arrow.light {
  opacity: 0;
}

.button-arrow.light.secondary {
  opacity: 1;
}

.arrow-wrapper {
  width: 18px;
  height: 18px;
  position: relative;
  background-color: var(--brand-beige);
  -webkit-mask: url("../images/icons8-arrow-32-1_1icons8-arrow-32-1.png") center / contain no-repeat;
          mask: url("../images/icons8-arrow-32-1_1icons8-arrow-32-1.png") center / contain no-repeat;
}

.arrow-wrapper > .button-arrow { display: none; }

.orange-link {
  color: var(--light--orange);
}

.footer-big-name {
  letter-spacing: 35px;
  text-transform: uppercase;
  font-family: Italiana, sans-serif;
  font-size: 5rem;
}
img.footer-big-name { height: 19.8rem; width: auto; display: block; letter-spacing: 0; }
.logo-main-new .cover-image,
.logo-main .cover-image { width: 290px !important; height: auto; max-width: 100%; }
.footer-container .social-link img { filter: brightness(0) saturate(100%) invert(20%) sepia(26%) saturate(486%) hue-rotate(96deg) brightness(95%) contrast(92%); }

.social-link {
  width: 30px;
  transition: opacity .4s;
}

.social-link:hover {
  opacity: .6;
}

.footer-lottie {
  width: 50%;
  height: 150%;
  margin-top: 3em;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.footer-lottie.for--works {
  z-index: 3;
  width: 100%;
  height: 150vh;
  margin-top: 15em;
  position: absolute;
  inset: 0% auto auto 0%;
}

.hero-text-box {
  z-index: 1;
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.hero-text-box.hero {
  min-width: 82vw;
  max-width: none;
  height: 40vw;
  position: relative;
}

.absolute-image-two {
  z-index: 4;
  width: 14vw;
  height: 8.75vw;
  position: absolute;
  top: -.7vw;
  left: 24vw;
  overflow: hidden;
}

.absolute-image-five {
  z-index: 1;
  width: 16.5vw;
  height: 23.5vw;
  position: absolute;
  top: 9vw;
  left: 30vw;
  overflow: hidden;
}

.absolute-image-one {
  z-index: 2;
  width: 17vw;
  height: 18.2vw;
  position: absolute;
  top: 9vw;
  left: 45vw;
  overflow: hidden;
}

.absolute-image-six {
  z-index: 4;
  width: 23vw;
  height: 16vw;
  position: absolute;
  top: 12.5vw;
  left: 11.5vw;
  overflow: hidden;
}

.absolute-image-three {
  z-index: 4;
  width: 22.5vw;
  height: 14.2vw;
  position: absolute;
  top: -.1vw;
  left: 40vw;
  overflow: hidden;
}

.about-section {
  position: relative;
}

.about-section.about-hero {
  height: 200vh;
}

.absolute-image-four {
  z-index: 3;
  width: 25vw;
  height: 13vw;
  position: absolute;
  top: 26vw;
  left: 31vw;
  overflow: hidden;
}

.absolute-image-seven {
  z-index: 5;
  width: 22vw;
  height: 14vw;
  position: absolute;
  top: 23vw;
  left: 44vw;
  overflow: hidden;
}

.vertical-wrap {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.vertical-wrap.sticky {
  height: 100vh;
  position: sticky;
  top: 0;
  left: 0;
  overflow: hidden;
}

.image-cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.text-animation-flex {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: .5em;
  display: flex;
}

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

.text-animation-flex.center.more-gap {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
}

.text-image-wrapper {
  width: 12rem;
  height: 5rem;
  overflow: hidden;
}

.text-image-wrapper.big {
  height: 7rem;
}

.about-hero-lottie {
  width: 50%;
  height: 200%;
  margin-top: 5em;
  position: absolute;
  top: 0%;
  left: 50%;
  right: auto;
  transform: translate(-50%);
}

.about-history-section {
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
}

.about-history-left {
  background-color: var(--brand-green-dark);
  justify-content: center;
  align-items: center;
  width: 50%;
  height: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.about-history-left.second-version {
  background-color: var(--brand-green-dark);
  width: 40%;
}

.about-history-right {
  width: 50%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.about-history-right.second-version {
  width: 60%;
  padding-top: var(--desktop-separator);
  padding-bottom: var(--desktop-separator);
  flex-flow: column;
  justify-content: space-around;
  display: flex;
}

.history-lottie {
  width: 100%;
  height: 125%;
  margin-top: 85%;
}

.absolute-h2 {
  margin-top: 1em;
  font-weight: 400;
  position: absolute;
  inset: 0% auto auto 2em;
}

.history-second-p {
  color: var(--brand-green-dark);
  letter-spacing: -2px;
  text-transform: uppercase;
  margin-bottom: -.1em;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.1;
}

.history-second-p.second {
  color: var(--text-default);
  font-family: Italiana, sans-serif;
  font-size: 1.5rem;
}

.services-dropdown {
  width: 100%;
  position: static;
  overflow: hidden;
}

.services-dropdown.hide {
  display: none;
}

.accordion-p-for--history {
  white-space: pre-wrap;
  font-size: 1.2rem;
  font-weight: 500;
}

.accordion-p-for--history.for--dropdown {
  color: var(--brand-green-dark);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
}

.accordion-p-for--history.for--dropdown.light {
  max-width: 85%;
  color: var(--text-default);
  line-height: 1.6;
}

.dropdown-list {
  background-color: #0000;
  max-width: 100%;
  padding-top: 1em;
  display: block;
  position: static;
}

.dropdown-list.f {
  display: none;
}

.dropdown-circle-second {
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
  position: relative;
}

.dropdown-circle-second.second {
  width: 2rem;
  height: auto;
}

.first-line-second-version {
  display: block;
}

.button-link {
  position: relative;
  overflow: hidden;
}

.dropdown-toggle {
  grid-column-gap: .1em;
  grid-row-gap: .1em;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  padding: 0;
  display: flex;
  position: relative;
}

.dropdown-toggle.second {
  border-bottom: 1px solid var(--light--white);
  justify-content: space-between;
  align-items: center;
  padding-top: 2em;
  padding-bottom: 2em;
  transition: opacity .4s;
}

.dropdown-toggle.second:hover {
  opacity: .6;
}

.project-item {
  cursor: pointer;
  width: 100%;
  height: 100%;
  position: relative;
}

.project-content-block {
  width: 100%;
  height: 100%;
  position: relative;
}

.project-content-block.right {
  transform-origin: 0 0;
}

.project-link-block {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

.project-image-wrap {
  width: 100%;
  height: 100%;
  max-height: 100vh;
  overflow: hidden;
}

.projects-grid {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  height: 100%;
  position: absolute;
  inset: 0 2rem;
}

.project-info-block {
  z-index: 2;
  grid-column-gap: .3em;
  grid-row-gap: .3em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  display: flex;
  position: relative;
}

.project-content-wrapper {
  width: 100%;
  height: 100%;
}

.project-name {
  font-family: Italiana, sans-serif;
  font-size: 5rem;
  font-weight: 400;
}

.project-cursor-wrapper {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  inset: 0%;
}

.project-cursor-wrapper.event-none {
  pointer-events: none;
}

.project-cursor {
  z-index: 20;
  border: 2px solid var(--light--heading-text);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 6rem;
  height: 6rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: absolute;
}

.project-cursor.small {
  width: 3rem;
  height: 3rem;
}

.cursor-icon-wrapper {
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.cursor-icon-wrapper.small {
  width: 1rem;
  height: 1rem;
}

.cursor-icon {
  width: 1.5rem;
  height: 1.5rem;
  position: absolute;
  inset: 0%;
  transform: rotate(-45deg);
}

.cursor-icon.small {
  width: 1rem;
  height: 1rem;
}

.project-list-block {
  width: 100%;
  height: 200vh;
}

.project-list-content-wrapper {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.project-list-image {
  width: 100vw;
  min-width: 100vw;
  max-width: none;
  height: 100vh;
  min-height: 100vh;
}

.project-list-content {
  z-index: 10;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  min-width: 100vw;
  height: 100vh;
  min-height: 100vh;
  display: flex;
  position: absolute;
}

.project-list-content-wrap {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.service-drop-wrap {
  grid-column-gap: .4em;
  grid-row-gap: .4em;
  flex-flow: column;
  display: flex;
}

.service-title {
  color: var(--text-default);
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 1.3rem;
}

.accordion-title {
  color: var(--brand-green-dark);
  letter-spacing: -2px;
  text-transform: uppercase;
  margin-bottom: -.1em;
  font-family: Italiana, sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.1;
  transition: letter-spacing .4s;
}

.accordion-title:hover {
  letter-spacing: 0;
}

.plus-text-menu {
  z-index: 2;
  color: #434548;
  font-size: 1.2rem;
  font-weight: 300;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.plus-text-menu.for--footer {
  color: var(--text-default);
}

.dropdown-circle-menu {
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
  position: relative;
}

.nav-dropdown-link {
  color: var(--brand-green-dark);
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 600;
  transition: letter-spacing .4s;
}

.nav-dropdown-link:hover {
  letter-spacing: 2px;
}

.nav-dropdown-link.for--footer {
  color: var(--text-default);
  font-size: 1rem;
  font-weight: 300;
}

.nav-dropdown-link.for--footer.none-hover:hover {
  letter-spacing: 0;
}

.nav-dropdown-link.for--footer.ss {
  flex: none;
}

.vertical-flex {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  display: flex;
}

.vertical-flex.horizontal {
  flex-flow: row;
}

.vertical-flex.hide {
  display: none;
}

.about-left {
  width: 45%;
  height: 600px;
}

.about-left.client {
  height: 450px;
}

.client-image-block {
  display: none;
}

.service-title-wrapper {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.center-flex-wrapper {
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.third-home-project-wrapper {
  justify-content: space-between;
  display: flex;
}

.full {
  justify-content: space-between;
  width: 100%;
  display: flex;
  position: relative;
}

.project-third-left {
  width: 400px;
  height: 400px;
  position: relative;
  overflow: hidden;
}

.project-third-left.full {
  width: 100%;
  height: 400px;
}

.scale-image {
  transition: transform .4s;
}

.scale-image:hover {
  transform: scale(1.1);
}

.full-width {
  width: 100%;
}

.third-project-details-wrapper {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.third-project-details-wrapper.second {
  justify-content: space-between;
}

.third-project-title {
  color: var(--text-default);
  font-size: 3.5rem;
  font-weight: 300;
}

.image-right-wrapper {
  width: 300px;
  height: 150px;
  position: relative;
  overflow: hidden;
}

.third-project-p {
  max-width: 300px;
  font-size: .85rem;
  font-weight: 300;
  line-height: 1.4;
}

.third-project-link {
  color: var(--text-default-muted);
  text-transform: capitalize;
  font-size: .9rem;
  text-decoration: underline;
  transition: opacity .4s;
}

.third-project-link:hover {
  opacity: .6;
}

.heading-line {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.service-animation-title {
  text-align: center;
  letter-spacing: -3px;
  text-transform: uppercase;
  white-space: nowrap;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 4.5rem;
  font-weight: 900;
}

.service-animation-title.first-font {
  opacity: 1;
  color: var(--brand-green-dark-muted);
  text-transform: capitalize;
  font-family: Inter, sans-serif;
  font-size: 5.5rem;
  font-weight: 400;
}

.home-service-wrap {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.service-wrap {
  height: 216vh;
  position: relative;
}

.container-large {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.section-tag {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  text-transform: capitalize;
  justify-content: center;
  align-items: center;
  display: flex;
}

.padding-global {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.section-tag-text {
  color: inherit;
  font-size: 1.2rem;
  font-weight: 300;
}

.service-animation-image {
  width: 150px;
  height: 200px;
  position: absolute;
  inset: -89% auto auto 4%;
}

.service-animation-image.second {
  height: 270px;
  left: auto;
  right: 4%;
}

.service-animation-image.third {
  top: -19%;
  left: 7%;
}

.service-animation-image.fourth {
  height: 250px;
  top: -211%;
  left: auto;
  right: 6%;
}

.service-animation-image.sixth {
  height: 300px;
  top: -6%;
  left: auto;
  right: 5%;
}

.service-animation-image.eighth {
  height: 250px;
  inset: -90% 2% auto auto;
}

.building-image-wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  height: 100vh;
  padding-left: 3em;
  display: flex;
  position: sticky;
  top: 0;
}

.building-image {
  z-index: 10;
  width: 60%;
  height: auto;
  position: absolute;
  inset: auto 0% 0% auto;
}

.building-sticky-wrapper {
  height: 225vh;
  position: relative;
}

.building-text-wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.work-archive-detail-row {
  z-index: 2;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
  position: relative;
}

.work-info-tag {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  text-transform: capitalize;
  justify-content: center;
  align-items: center;
  display: flex;
}

.work-archive-item-v2 {
  height: 4rem;
  transition: color .3s;
}

.work-archive-item-v2:hover {
  color: #050505;
}

.work-archive-main-box-v2 {
  z-index: 3;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: column;
  height: 100vh;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  display: flex;
}

.work-section {
  overflow-x: clip;
}

.work-section.for-work-archive-v2 {
  position: relative;
  overflow: hidden;
}

.empty-message {
  background-color: #0a0a0a;
  padding: .75rem;
}

.section-header {
  z-index: 2;
  grid-column-gap: 1.25rem;
  grid-row-gap: 1.25rem;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
  position: relative;
}

.section-header.show-in-tablet {
  display: none;
}

.work-archive-content-v2 {
  flex-flow: column;
  height: 100%;
  display: flex;
  overflow: auto;
}

.work-archive-detail-cell {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.work-info-tag-text {
  font-family: Fraunces, sans-serif;
  font-size: 2rem;
  font-weight: 300;
}

.work-archive-card-image-wrapper-v1 {
  z-index: 0;
  pointer-events: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  inset: 0%;
  overflow: hidden;
}

.work-archive-card-image-layer {
  z-index: 2;
  background-image: linear-gradient(#00000080, #00000080);
  position: absolute;
  inset: 0%;
}

.work-archive-card-v2 {
  z-index: 2;
  width: 100%;
  height: 4rem;
  color: inherit;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.work-archive-card-detail-row {
  z-index: 2;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100%;
  display: grid;
  position: relative;
}

.work-archive-detail-text {
  font-size: 1rem;
  font-weight: 300;
}

.work-archive-card-color-layer {
  z-index: 1;
  background-color: #fff;
  width: 100vw;
  height: 0%;
  position: absolute;
}

.client-name-wrapper {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  display: flex;
}

.client-job {
  font-weight: 300;
}

.partner-logo {
  width: 100px;
  height: auto;
}

.home-v1-project-wrapper {
  z-index: 6;
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 65%;
  display: flex;
  position: relative;
}

.home-v1-project-wrapper.full {
  width: 100%;
}

.expertise {
  text-transform: capitalize;
  font-family: Fraunces, sans-serif;
  font-size: 2rem;
  font-weight: 300;
}

.contact-details-row {
  grid-column-gap: 4.5em;
  grid-row-gap: 4.5em;
  display: flex;
}

.contact-details-row.second {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.contact-details-box {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.contact-details-box.second {
  grid-column-gap: .6em;
  grid-row-gap: .6em;
  flex-flow: row;
}

.contact-icon-block {
  aspect-ratio: 1;
  background-color: var(--brand-green);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: auto;
  display: flex;
}

.contact-icon-block.small {
  width: 40px;
}

.contact-icon {
  width: 25px;
  height: auto;
}

.contact-icon.phone {
  transform: rotate(180deg);
}

.contact-icon.small {
  width: 18px;
}

.contact-link {
  transition: opacity .4s;
}

.contact-link:hover {
  opacity: .6;
}

.contact-link.second {
  color: var(--brand-green);
}

.contact-vertical-flex {
  grid-column-gap: .4em;
  grid-row-gap: .4em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.third-contact-right {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  flex-flow: column;
  width: 25%;
  height: 100%;
  display: flex;
}

.dark-color {
  color: var(--brand-green-dark);
}

.tabs-content {
  overflow: visible;
}

.cover-image-for--client {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.client-info-wrapper {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.bullet {
  background-color: var(--text-default);
  border-radius: 50%;
  width: 11px;
  height: 11px;
  padding: 0;
}

.bullet.w--current {
  background-color: var(--light--orange);
}

.tabs-menu {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  justify-content: center;
  margin-top: 40px;
  display: flex;
  position: absolute;
  inset: auto 18% -7% auto;
}

.tab-content {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  height: 600px;
  max-height: 70vh;
  display: flex;
}

.quote-image {
  width: 150px;
  height: auto;
}

.client-image {
  width: 50%;
  height: 475px;
  position: relative;
  overflow: hidden;
}

.tab-text-content {
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  padding-top: 1em;
  padding-bottom: 1em;
  display: flex;
}

.image-loader {
  background-color: #121212;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0%;
  left: 0%;
}

.image-loader.clients {
  background-color: var(--surface-white);
}

.client-p {
  font-size: 1.2rem;
}

.spase-1rem {
  padding-top: 1rem;
}

.hire-rows-wrapper {
  grid-column-gap: .3rem;
  grid-row-gap: .3rem;
  flex-flow: column;
  margin-top: 1rem;
  display: flex;
}

.customization-dropdown-list-2 {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  background-color: #0000;
  flex-flow: column;
  height: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  display: block;
  position: static;
}

.hire-icon-2 {
  aspect-ratio: 1;
  color: #fff;
  width: 1.2rem;
  overflow: hidden;
}

.custom-page-fixed-block {
  z-index: 1300;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  color: #000;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 20rem;
  font-weight: 500;
  display: flex;
  position: fixed;
  top: auto;
  bottom: 2rem;
  left: 1%;
}

.hire-row-text-2 {
  flex: 1;
  font-size: .85rem;
  font-weight: 400;
}

.image-2 {
  transform-origin: 0 100%;
  width: 1.6rem;
  height: auto;
}

.image-2.is-2 {
  z-index: 0;
  perspective-origin: 100% 100%;
  position: absolute;
  inset: auto 0% 0% auto;
}

.customization-dropdown-3 {
  background-color: #fff;
  border-radius: .4rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 0 .6rem;
  font-size: .8rem;
  overflow: hidden;
}

.customization-dropdown-toggle-3 {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: .7rem 1rem 0;
  transition: opacity .2s;
  display: flex;
  position: relative;
}

.customization-dropdown-toggle-3:hover {
  opacity: .65;
}

.custom-notifbar {
  z-index: 1300;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  color: #000;
  background-color: #f4faff;
  border-radius: .5rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 21rem;
  max-width: 21rem;
  padding: .2rem;
  font-weight: 500;
  display: flex;
  position: fixed;
  top: auto;
  bottom: 2rem;
  left: 1%;
  overflow: clip;
}

.div-block-2 {
  justify-content: flex-start;
  align-items: flex-start;
  width: 2.6rem;
  height: 2.5rem;
  display: flex;
  position: relative;
}

.hire-row-3 {
  grid-column-gap: .7rem;
  grid-row-gap: .7rem;
  color: #000;
  justify-content: flex-start;
  align-items: center;
  font-weight: 500;
  transition: opacity .2s;
  display: flex;
}

.hire-row-3:hover {
  opacity: .9;
}

.customization-heading-row-2 {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.image-3 {
  width: 1.4rem;
  height: auto;
}

.plus-text-3 {
  z-index: 2;
  color: #000;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1;
}

.customization-text-3 {
  white-space: normal;
  font-size: .95rem;
  font-weight: 600;
}

.text-subtitle-discover-2 {
  color: #050505;
  font-size: .92rem;
  font-weight: 400;
}

.hire-icon-wrapper-3 {
  aspect-ratio: 1;
  background-color: #181818;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 2.25rem;
  display: flex;
}

.spase-1-5rem {
  padding-top: 1.5rem;
}

.light-blue-notifbar {
  filter: blur(5px);
  background-image: linear-gradient(90deg, #fff, #3fa2ff);
  width: 240%;
  height: 50%;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
}

.about-para {
  grid-column-gap: 1.25rem;
  grid-row-gap: 1.25rem;
  flex-flow: column;
  display: flex;
}

.text-64 {
  font-family: Fraunces, sans-serif;
  font-size: 4rem;
  font-weight: 300;
}

.flex-blok {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  display: flex;
}

.list-wrapper {
  grid-column-gap: 2.1875rem;
  grid-row-gap: 2.1875rem;
  flex-flow: column;
  display: flex;
}

.list {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  display: flex;
}

.block {
  background-color: #fff;
  border-radius: .6875rem;
  width: 6.25rem;
  height: 6.25rem;
}

._2-image-wrap {
  height: 575px;
}

.cross-cards {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  display: flex;
}

.cross-card {
  grid-column-gap: 2.1875rem;
  grid-row-gap: 2.1875rem;
  background-color: #ced1bf;
  border-radius: .6875rem;
  flex-flow: column;
  width: 100%;
  max-width: 26.25rem;
  padding: 2.625rem 1.6rem 3rem;
  display: flex;
}

.cross-bloc {
  background-color: #fff;
  border-radius: .6875rem;
  width: 5rem;
  height: 5rem;
  margin-left: auto;
  margin-right: auto;
}

.div-block-3 {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-flow: column;
  display: flex;
}

.text-32 {
  color: var(--light--orange);
  font-size: 1.8rem;
}

.text-24 {
  color: var(--light--dark-text);
  font-size: 1.5rem;
  font-weight: 300;
}

@media screen and (min-width: 1280px) {
  h3 {
    font-size: 5rem;
  }

  .container {
    max-width: 1200px;
  }

  .animation-text {
    font-size: 6rem;
  }

  .text-animation-wrapper.home-title {
    margin-top: 4em;
  }

  .hero-section.for--home-page {
    margin-bottom: 18em;
  }

  .hero-section.for--home-page.second-version, .hero-section.for--home-page.overflow-hidden {
    margin-bottom: 0;
  }

  .footer {
    max-width: 1200px;
    padding-right: var(--desktop-padding-x);
    padding-left: var(--desktop-padding-x);
  }

  .footer-links-holder.have--max-width {
    max-width: 70%;
  }

  .small-text-title.size-large, .small-text-title.partner {
    font-size: 1.5rem;
  }

  .partner-p {
    font-size: 1.2rem;
  }

  .hero-p {
    font-size: .9rem;
  }

  .contact-form-input {
    font-size: 1.3rem;
  }

  .project-main-image {
    max-height: 700px;
  }

  .licences-image {
    height: 200px;
  }

  .global-small-link.for--footer {
    font-size: 1.3rem;
  }

  .contact-details-right {
    grid-column-gap: 2.45em;
    grid-row-gap: 2.45em;
  }

  .hero-content-wrapper {
    height: 175vh;
  }

  .accordion-p {
    font-size: 1.3rem;
  }

  .sticky-content-right {
    grid-column-gap: 7em;
    grid-row-gap: 2em;
  }

  .plus-text {
    font-size: 1.5rem;
  }

  .global-bold-text {
    font-size: 1.1rem;
  }

  .card-title {
    font-size: 1.4rem;
  }

  .card-title.price {
    font-size: 2.5rem;
  }

  .x-small-p, .card-detail-text {
    font-size: 1rem;
  }

  .footer-links-grid {
    width: 60%;
  }

  .collection-item-title {
    font-size: 1.3rem;
  }

  .navbar-container {
    max-width: 1250px;
  }

  .fourthiary-button.main {
    font-size: .95rem;
  }

  .big-text {
    font-size: 12rem;
  }

  .small-h3 {
    font-size: 3rem;
  }

  .small-h3.size--large {
    font-size: 3.7rem;
  }

  .normal-title {
    font-size: 3.5rem;
  }

  .normal-title.size-large {
    font-size: 7.5rem;
  }

  .normal-title.size-large.for--service {
    font-size: 5.5rem;
  }

  .normal-title.size-medium.for-third-home {
    font-size: 7rem;
  }

  .normal-title.center {
    font-size: 3.5rem;
  }

  .normal-title.center.for--about {
    font-size: 6rem;
  }

  .normal-title.center.large {
    font-size: 11rem;
  }

  .normal-title.for--inner-pages {
    font-size: 4.5rem;
  }

  .gallery-wrap.for--gallery-page {
    margin-top: 25em;
  }

  .gallery-link {
    width: 105px;
    height: 105px;
  }

  .hero-image-wrap {
    margin-top: -2em;
  }

  .hero-top {
    padding-left: 7em;
    padding-right: 7em;
  }

  .hero-lottie {
    width: 65%;
  }

  .contact-text {
    font-size: 1.2rem;
  }

  .contact-text.large {
    font-size: 1.4rem;
  }

  .next-project-image {
    width: 340px;
  }

  .about-p.for--service {
    font-size: 1.5rem;
  }

  .about-p.for--service.small {
    font-size: .9rem;
  }

  .third-home-top {
    padding-top: 6em;
    padding-left: 5em;
    padding-right: 5em;
  }

  .loop-wrapper.for--inner-pages {
    justify-content: flex-start;
    align-items: center;
    height: 200px;
    margin-top: .3em;
  }

  .global-title {
    font-size: 5.7rem;
  }

  .global-title.blend.size-x-large {
    font-size: 7rem;
    line-height: 1.4;
  }

  .about-flex-right {
    grid-column-gap: 4em;
    grid-row-gap: 4em;
  }

  .about-right {
    grid-column-gap: 5em;
    grid-row-gap: 5em;
    width: 40%;
  }

  .about-animation-image-wrapper.for-about-page {
    width: 55%;
  }

  .drop-menu-links-wrapper {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
  }

  .title-p {
    font-size: 1.2rem;
  }

  .text-image-wrapper.big {
    height: 8rem;
  }

  .absolute-h2, .accordion-title {
    font-size: 3rem;
  }

  .plus-text-menu {
    font-size: 1.5rem;
  }

  .nav-dropdown-link {
    font-size: 1.4rem;
  }

  .nav-dropdown-link.for--footer {
    font-size: 1.1rem;
  }

  .project-third-left {
    width: 475px;
  }

  .service-animation-title {
    font-size: 5rem;
  }

  .service-animation-title.first-font {
    font-size: 6rem;
  }

  .section-tag-text {
    font-size: 1.3rem;
  }

  .building-image {
    width: 55%;
  }

  .work-info-tag-text {
    font-size: 2.5rem;
  }

  .partner-logo {
    width: 120px;
  }

  .expertise {
    font-size: 2.5rem;
  }

  .contact-icon-block {
    width: 65px;
  }

  .contact-icon {
    width: 35px;
  }

  .contact-link {
    font-size: 1.2rem;
  }

  .quote-image {
    width: 200px;
  }

  .client-image {
    height: 550px;
  }

  .client-p {
    font-size: 1.4rem;
  }

  .custom-page-fixed-block, .custom-notifbar {
    max-width: 20rem;
  }

  .plus-text-3 {
    font-size: 1.1rem;
  }
}

@media screen and (min-width: 1440px) {
  body {
    font-size: 1.1rem;
  }

  h1 {
    font-size: 3.5rem;
  }

  h2 {
    font-size: 3rem;
  }

  h3 {
    font-size: 5.5rem;
  }

  p {
    font-size: 1.1rem;
  }

  .container {
    max-width: 1350px;
  }

  .animation-text {
    font-size: 7rem;
  }

  .second-line {
    justify-content: space-between;
    align-items: center;
  }

  .overflow-hidden {
    justify-content: flex-start;
    align-items: center;
  }

  .footer {
    max-width: 1350px;
  }

  .small-text-title.size-large {
    font-size: 1.6rem;
  }

  .small-text-title.partner {
    font-size: 1.7rem;
  }

  .partner-p {
    font-size: 1.3rem;
  }

  .hero-p {
    font-size: 1rem;
  }

  .project-main-image {
    max-height: 750px;
  }

  .project-detail-text {
    font-size: 1.3rem;
  }

  .text-align-center.for--legal-page {
    font-size: 3.2rem;
  }

  .global-link-for-legal {
    font-size: 1.05rem;
  }

  .licences-image {
    height: 260px;
  }

  .global-small-link.for--footer {
    font-size: 1.4rem;
  }

  .contact-details-wrapper {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
  }

  .contact-details-right {
    grid-column-gap: 1.75em;
    grid-row-gap: 1.75em;
  }

  .dropdown-circle {
    width: 27px;
    height: 27px;
  }

  .accordion-p {
    font-size: 1.6rem;
  }

  .accordion-p.for--dropdown {
    font-size: 1rem;
  }

  .sticky-content-right {
    grid-column-gap: 8em;
    grid-row-gap: 2em;
  }

  .card-item-wrapper.size-large {
    width: 40%;
  }

  .global-bold-text {
    font-size: 1.2rem;
  }

  .card-title {
    font-size: 1.5rem;
  }

  .card-title.price {
    font-size: 3rem;
  }

  .x-small-p, .card-detail-text {
    font-size: 1.1rem;
  }

  .select-option.for--checkout {
    line-height: 15px;
  }

  .collection-item-title {
    font-size: 1.4rem;
  }

  .blog-image-for--single {
    height: 700px;
  }

  .blog-rich-text {
    max-width: 75%;
  }

  .navbar-container {
    max-width: 1350px;
  }

  .fourthiary-button.main {
    font-size: 1.05rem;
  }

  .big-text {
    font-size: 15rem;
  }

  .small-h3 {
    font-size: 3.4rem;
  }

  .small-h3.size--large {
    font-size: 4rem;
  }

  .normal-title.size-large {
    font-size: 8.5rem;
  }

  .normal-title.size-large.for--service {
    font-size: 6rem;
  }

  .normal-title.size-medium {
    font-size: 5rem;
  }

  .normal-title.size-medium.for-third-home {
    font-size: 8rem;
  }

  .normal-title.center {
    font-size: 4rem;
  }

  .normal-title.center.is--color-dark-green.big {
    font-size: 10rem;
  }

  .normal-title.center.for--about {
    font-size: 6.5rem;
  }

  .normal-title.center.large {
    font-size: 13rem;
  }

  .normal-title.for--inner-pages {
    font-size: 5.5rem;
  }

  .hero-top {
    padding-left: 7.5em;
    padding-right: 7.5em;
  }

  .contact-text.large {
    font-size: 1.5rem;
  }

  .blog-date {
    font-size: 1rem;
  }

  .next-project-image {
    width: 360px;
  }

  .home-about-wrapper {
    overflow: hidden;
  }

  .about-p.for--service {
    font-size: 1.7rem;
  }

  .about-p.for--service.small {
    font-size: 1rem;
  }

  .work-center-p {
    font-size: 1.2rem;
  }

  .loop-wrapper.for--inner-pages {
    margin-top: -1em;
  }

  .global-title {
    font-size: 6rem;
  }

  .global-title.blend.size-x-large {
    font-size: 8rem;
  }

  .text-loop-wrapper.none-border {
    padding-top: 4em;
    padding-bottom: 4em;
  }

  .history-p {
    font-size: 1rem;
  }

  .about-animation-image-wrapper.for--client {
    height: 500px;
  }

  .about-animation-image-wrapper.for-about-page {
    height: 700px;
  }

  .contain-image-block.for--client {
    height: 260px;
  }

  .global-link {
    font-size: 1.5rem;
  }

  .title-p {
    font-size: 1.3rem;
  }

  .footer-big-name {
    font-size: 5.5rem;
  }

  .text-image-wrapper.big {
    height: 9rem;
  }

  .about-history-right.second-version._1 {
    grid-column-gap: 2.9375rem;
    grid-row-gap: 2.9375rem;
    justify-content: center;
    align-items: flex-start;
  }

  .absolute-h2 {
    font-size: 3.5rem;
  }

  .accordion-p-for--history.for--dropdown {
    font-size: 1.1rem;
  }

  .dropdown-circle-second {
    width: 27px;
    height: 27px;
  }

  .project-info-block {
    font-size: 1.4rem;
  }

  .project-name {
    font-size: 5.5rem;
  }

  .accordion-title {
    font-size: 3.3rem;
  }

  .dropdown-circle-menu {
    width: 27px;
    height: 27px;
  }

  .nav-dropdown-link {
    font-size: 1.6rem;
  }

  .nav-dropdown-link.for--footer {
    font-size: 1.2rem;
  }

  .about-left.client {
    height: 500px;
  }

  .project-third-left {
    width: 525px;
  }

  .image-right-wrapper {
    width: 350px;
  }

  .service-animation-title {
    font-size: 5.5rem;
  }

  .service-animation-title.first-font {
    font-size: 6.5rem;
  }

  .section-tag-text {
    font-size: 1.5rem;
  }

  .building-image {
    width: 55%;
  }

  .work-info-tag-text {
    font-size: 2.1rem;
  }

  .work-archive-detail-text {
    font-size: 1.3rem;
  }

  .expertise {
    font-size: 3rem;
  }

  .contact-details-row {
    grid-column-gap: 5em;
    grid-row-gap: 5em;
  }

  .client-image {
    height: 575px;
  }

  .client-p {
    font-size: 1.5rem;
  }

  .text-64 {
    font-size: 3.8rem;
  }
}

@media screen and (min-width: 1920px) {
  .section._1 {
    background-size: contain;
  }

  .container {
    max-width: 1650px;
  }

  .hero-section {
    max-height: 750px;
  }

  .hero-section.for--home-page.second-version {
    max-height: none;
  }

  .footer {
    max-width: 1650px;
  }

  .project-main-image {
    max-height: 950px;
  }

  .accordion-p {
    font-size: 1.6rem;
  }

  .navbar-container {
    max-width: 1650px;
  }

  .loop-wrapper.for--inner-pages {
    margin-top: -2.3em;
  }

  .text-loop-wrapper.none-border {
    padding-top: 8em;
    padding-bottom: 8em;
  }

  .about-flex {
    justify-content: space-between;
    align-items: center;
  }

  .about-flex.spavcce {
    justify-content: center;
  }

  .about-animation-image-wrapper.for--client {
    height: 600px;
  }

  .about-animation-image-wrapper.for-about-page.full.ad {
    width: 100%;
    max-width: 39.3rem;
    height: 40rem;
  }

  .contain-image-block.for--client {
    height: 325px;
    top: 50%;
  }

  .accordion-title {
    font-size: 5rem;
  }

  .about-left.client {
    height: 600px;
  }

  ._2-image-wrap {
    height: 770px;
  }

  .cross-card {
    max-width: none;
  }
}

@media screen and (max-width: 991px) {
  h1 {
    font-size: 2rem;
  }

  h2 {
    font-size: 2.2rem;
  }

  p {
    font-size: 1.1rem;
  }

  .container {
    max-width: 100vw;
  }

  .container.hero-container, .container.none-padding-x {
    padding-right: var(--desktop-padding-x);
    padding-left: var(--desktop-padding-x);
  }

  .container.none-padding-x.for--works.none-padding-on-mobile, .container.none-padding-x.for-contact {
    padding-left: 0;
    padding-right: 0;
  }

  .animation-text {
    font-size: 6rem;
    line-height: .85;
  }

  .cursor-wrapper {
    display: none;
  }

  .hero-section.for--home-page {
    height: auto;
    margin-bottom: 2em;
  }

  .hero-section.for--home-page.second-version {
    height: 140vh;
    margin-bottom: 0;
  }

  .hero-section.for--home-page.overflow-hidden {
    height: 100vh;
  }

  .footer {
    max-width: none;
    height: auto;
  }

  .slider-arrow.is--right {
    left: 8%;
  }

  .slider-arrow.position-static.is--left {
    display: none;
  }

  .text-align-center.for--legal-page {
    font-size: 2.5rem;
  }

  .global-link-for-legal {
    font-size: .9rem;
  }

  .spacer-large-style-guide {
    flex-flow: column;
    padding-top: 1em;
    padding-bottom: 1em;
  }

  .licences-grid {
    width: 100%;
  }

  .licences-row {
    flex-flow: column;
  }

  .licences-image {
    height: 300px;
  }

  .licences-text-box {
    width: 100%;
    padding-left: 0;
  }

  .global-small-link {
    font-size: 1rem;
  }

  .contact-details-wrapper, .contact-details-wrapper.second.horizontal-flex {
    flex-flow: column;
  }

  .contact-form-wrapper, .contact-form-wrapper.second.third-contact, .contact-details-right {
    width: 100%;
  }

  .hero-content-wrapper {
    width: auto;
  }

  .sticky-content-wrap {
    flex-flow: column;
  }

  .sticky-content-left {
    width: 100%;
  }

  .accordion-p.for--dropdown {
    font-size: .9rem;
  }

  .sticky-content-right {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .card-item-wrapper {
    width: 48%;
  }

  .card-item-wrapper.size-large {
    width: 70%;
  }

  .cards-row {
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
    padding-top: 0;
  }

  .card.popular {
    grid-column-gap: 1.5em;
    grid-row-gap: 1.5em;
    height: auto;
    margin-top: 0;
    padding-top: 2em;
  }

  .slider-arrow-wrap, .line-underline, .line-underline.color-white {
    display: none;
  }

  .footer-links-grid-child {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .global-collection-list {
    grid-template-columns: 1fr;
  }

  .blog-rich-text {
    max-width: 100%;
    line-height: 1.5;
  }

  .discover-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    top: auto;
    bottom: 4rem;
  }

  .discover-text-block {
    display: none;
  }

  .discover-button {
    z-index: 3;
    aspect-ratio: 1;
    cursor: pointer;
    object-fit: cover;
    border-top: 1px solid #494949;
    border-bottom: 1px solid #494949;
    border-left: 1px solid #494949;
    border-radius: 1rem 0 0 1rem;
    justify-content: center;
    align-items: center;
    width: 3rem;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .navbar-container {
    width: 100%;
    max-width: none;
  }

  .layer {
    display: none;
  }

  .vertical-wrapper.sticky {
    height: 80vh;
  }

  .full-container {
    width: 100%;
    max-width: none;
  }

  .project-box {
    grid-column-gap: 8em;
    grid-row-gap: 8em;
    width: 100%;
    min-height: auto;
    padding-left: 1em;
    padding-right: 1em;
  }

  .small-h3 {
    font-size: 2.3rem;
  }

  .box {
    width: 100%;
  }

  .projects-container {
    flex-flow: column;
    padding-top: 2em;
  }

  .projects-container.second {
    flex-flow: column;
  }

  .normal-title {
    margin-top: 0;
  }

  .normal-title.size-large {
    font-size: 4rem;
  }

  .normal-title.size-large.for--service {
    font-size: 3.5rem;
  }

  .normal-title.center {
    font-size: 3rem;
  }

  .normal-title.center.is--color-dark-green.big {
    font-size: 7rem;
  }

  .normal-title.center.for--about {
    font-size: 4rem;
  }

  .normal-title.center.large {
    font-size: 6rem;
  }

  .gallery-wrap {
    height: 550px;
  }

  .hero-lottie {
    width: 100%;
  }

  .hero-title-wrap.right {
    justify-content: space-around;
    align-items: center;
  }

  .project-box-collection {
    width: 100%;
  }

  .contact-lottie {
    height: 500px;
    max-height: 400px;
  }

  .contact-bottom {
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
  }

  .contact-bottom.child {
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
  }

  .about-p.text-align-left.second-version {
    font-size: 1rem;
  }

  .third-home-lottie {
    width: 100%;
  }

  .third-home-top {
    padding-left: 1em;
    padding-right: 1em;
  }

  .work-center-p {
    font-size: .9rem;
  }

  .work-arrow-hover-wrap {
    display: none;
  }

  .global-title {
    margin-top: .2em;
    font-size: 4rem;
    font-weight: 300;
  }

  .global-title.blend {
    color: #fcf9cf;
    mix-blend-mode: normal;
    font-size: 5rem;
  }

  .text-loop-wrapper.none-border.absolute.for--works {
    z-index: 50;
    mix-blend-mode: normal;
  }

  .history-image {
    aspect-ratio: 3 / 2;
  }

  .about-year {
    font-size: 4.5rem;
  }

  .about-year.size--small.color-dark-green {
    font-size: 2rem;
  }

  .about-animation-image-wrapper.for--client {
    top: -15%;
  }

  .about-animation-image-wrapper.for-about-page {
    height: auto;
  }

  .contain-image-block.for--client {
    height: 200px;
  }

  .service-hero-image-wrapper {
    width: 300px;
    height: 140px;
  }

  .drop-menu-content-wrapper {
    padding-bottom: 4em;
    padding-left: 1.5em;
    padding-right: 1.5em;
  }

  .footer-lottie {
    width: 40%;
  }

  .text-image-wrapper {
    width: 6rem;
    height: 4rem;
  }

  .about-history-section {
    flex-flow: column;
    height: 150vh;
  }

  .about-history-section.second {
    height: auto;
  }

  .about-history-left {
    width: 100%;
  }

  .about-history-left.second-version {
    display: none;
  }

  .about-history-right {
    width: 100%;
  }

  .about-history-right.second-version {
    width: 100%;
    padding-right: var(--desktop-padding-x);
    padding-left: var(--desktop-padding-x);
    grid-column-gap: 3em;
    grid-row-gap: 3em;
  }

  .history-lottie {
    height: 150%;
    margin-top: 20%;
  }

  .history-second-p {
    font-size: 2.7rem;
  }

  .accordion-p-for--history.for--dropdown {
    font-size: .9rem;
  }

  .project-image-wrap {
    height: 450px;
    max-height: none;
  }

  .project-cursor-wrapper {
    display: none;
  }

  .nav-dropdown-link.for--footer {
    font-size: .9rem;
  }

  .about-left.client {
    height: 500px;
  }

  .full {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
  }

  .project-third-left {
    width: 100%;
  }

  .third-project-details-wrapper.second {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .heading-line {
    grid-column-gap: 1.5em;
    grid-row-gap: 1.5em;
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
  }

  .service-animation-title.first-font {
    width: 100%;
    color: var(--brand-green-dark);
    font-size: 4rem;
  }

  .home-service-wrap {
    height: auto;
    position: static;
  }

  .service-wrap {
    height: auto;
  }

  .padding-global {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .service-animation-image {
    width: 45%;
    height: 300px;
    position: static;
  }

  .service-animation-image.second, .service-animation-image.fourth, .service-animation-image.eighth {
    height: 300px;
  }

  .work-archive-detail-row {
    display: none;
  }

  .work-archive-list-v2 {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
    flex-flow: column;
    display: flex;
  }

  .work-archive-item-v2 {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    flex-flow: column;
    height: auto;
    display: flex;
  }

  .work-archive-item-v2:hover {
    color: #fff;
  }

  .work-archive-main-box-v2 {
    height: auto;
    padding-top: 9rem;
  }

  .section-header.show-in-tablet {
    display: flex;
  }

  .work-archive-content-v2 {
    overflow: visible;
  }

  .work-archive-detail-cell.hide-in-tablet {
    display: none;
  }

  .work-archive-card-image-wrapper-v1 {
    aspect-ratio: 3 / 2;
    width: 100%;
    height: auto;
    position: static;
  }

  .work-archive-card-image-layer {
    display: none;
  }

  .work-archive-card-v2 {
    height: auto;
  }

  .work-archive-card-detail-row {
    grid-template-columns: 1fr 1fr;
    justify-content: space-between;
    align-items: center;
    display: flex;
  }

  .work-archive-detail-text {
    font-size: 1.2rem;
  }

  .third-contact-right {
    width: 100%;
  }

  .tabs-menu {
    position: relative;
    bottom: auto;
    right: auto;
  }

  .tab-content {
    flex-flow: column;
    height: auto;
    max-height: none;
  }

  .quote-image {
    width: 120px;
  }

  .client-image {
    aspect-ratio: 1;
    object-fit: cover;
    width: 100%;
    height: auto;
    overflow: hidden;
  }

  .tab-text-content {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .hire-icon-wrapper-3 {
    width: 2.25rem;
  }

  .flex-blok {
    flex-flow: column;
  }

  .cross-card {
    padding-top: 1.25rem;
    padding-left: .9rem;
    padding-right: .9rem;
  }

  .text-32 {
    font-size: 1.25rem;
  }

  .text-24 {
    font-size: 1rem;
  }
}

@media screen and (max-width: 767px) {
  h2 {
    font-size: 2rem;
  }

  h3 {
    font-size: 3rem;
  }

  p {
    font-size: 1.1rem;
  }

  .container {
    max-width: none;
    padding-top: 4em;
    padding-bottom: 4em;
  }

  .container.footer-container {
    padding-bottom: 1em;
  }

  .container.checkout-container {
    max-width: 100vw;
  }

  .container.for-client {
    padding-right: var(--desktop-padding-x);
    padding-left: var(--desktop-padding-x);
  }

  .container.for-client.none-padding-bottom {
    padding-left: 0;
    padding-right: 0;
  }

  .animation-text {
    font-size: 5rem;
  }

  .global-button {
    min-width: 160px;
  }

  .spacer-medium {
    padding-top: .5em;
    padding-bottom: .5em;
  }

  .text-animation-wrapper.mobile-none {
    display: none;
  }

  .hero-section.for--home-page.second-version {
    height: 110vh;
  }

  .footer {
    justify-content: space-between;
    align-items: flex-start;
  }

  .footer-links-flex {
    grid-column-gap: 1.5em;
    grid-row-gap: 1.5em;
    flex-flow: column;
    margin-bottom: 1.5em;
  }

  .small-text-title.size-large {
    font-size: 1.2rem;
  }

  .partner-box.for--tab {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    padding-right: 0;
  }

  .partner-name-wrapper {
    flex-flow: wrap;
  }

  .hero-p {
    font-size: .8rem;
  }

  .contact-form {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
  }

  .contact-form-row {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
  }

  .contact-form-input-wrapper {
    width: 100%;
  }

  .slider-arrow.is--right {
    left: 10%;
  }

  .project-details-wrapper {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: wrap;
  }

  .text-align-center.for--legal-page {
    font-size: 2rem;
  }

  .style-guide-colors-layout {
    width: 100%;
  }

  .footer-bottom {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
  }

  .hero-content-wrapper {
    height: 120vh;
  }

  .faq-dropdown-list {
    padding-top: 1.5em;
  }

  .accordion-p {
    font-size: 1rem;
  }

  .card-item-wrapper, .card-item-wrapper.size-large {
    width: 100%;
  }

  .product-detail-wrapper {
    flex-flow: column;
  }

  .product-detail-content-wrapper {
    width: 100%;
  }

  .footer-links-grid {
    grid-column-gap: 1em;
    grid-row-gap: 3em;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }

  .footer-links-grid-child {
    grid-row-gap: 2em;
  }

  .client-tab {
    justify-content: flex-end;
    align-items: center;
    width: 100%;
  }

  .collection-item-title {
    font-size: 1.2rem;
  }

  .blog-image-for--single {
    height: 400px;
  }

  .discover-icon {
    width: 1.2rem;
  }

  .logo-main {
    width: 90px;
    display: block;
  }

  .navbar-container {
    max-width: none;
  }

  .nav-link {
    font-size: 2.1rem;
  }

  .full-container {
    max-width: none;
  }

  .small-h3 {
    font-size: 1.8rem;
  }

  .normal-spacer {
    padding-top: 4em;
  }

  .normal-title {
    font-size: 2.7rem;
  }

  .normal-title.size-large {
    font-size: 3.5rem;
  }

  .normal-title.size-large.text-align-left {
    text-align: right;
  }

  .normal-title.size-large.for--service {
    font-size: 3rem;
  }

  .normal-title.size-medium {
    font-size: 2rem;
  }

  .normal-title.size-medium.for-third-home {
    font-size: 3.5rem;
  }

  .normal-title.center {
    font-size: 2.2rem;
  }

  .normal-title.center.is--color-dark-green.big {
    font-size: 5rem;
  }

  .normal-title.center.for--about {
    font-size: 3rem;
  }

  .normal-title.center.large {
    font-size: 5rem;
  }

  .normal-title.for--inner-pages {
    font-size: 3rem;
  }

  .gallery-wrap {
    height: 500px;
  }

  .hero-top {
    padding-left: 3em;
    padding-right: 3em;
  }

  .contact-bottom {
    margin-left: 0;
  }

  .service-left {
    width: 100%;
  }

  ._404-wrapper {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: column;
  }

  ._404-left, ._404-right {
    width: 100%;
  }

  .about-p {
    font-size: .9rem;
  }

  .about-p.for--service {
    font-size: 1.1rem;
  }

  .home-v3-gallery-image-left {
    width: 25vw;
  }

  .home-v3-gallery-image-center {
    width: 30vw;
  }

  .home-v3-gallery-image-right {
    width: 32vw;
  }

  .third-home-lottie {
    width: 100%;
  }

  .work-center-p {
    max-width: 70%;
    font-size: .8rem;
  }

  .works-arrow {
    min-width: 100px;
  }

  .work-arrow-wrap {
    width: 75px;
    height: 55px;
  }

  .work-slider-arrow {
    display: none;
  }

  .loop-box.move-to-left {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
  }

  .loop-wrapper.for--inner-pages {
    margin-top: 0;
  }

  .global-title {
    font-size: 2.6rem;
  }

  .global-title.blend {
    font-size: 3.5rem;
  }

  .global-title.blend.size-x-large {
    font-size: 5.5rem;
  }

  .text-loop-wrapper.none-border {
    padding-top: 2.5em;
    padding-bottom: 2em;
  }

  .about-container {
    padding-top: 4em;
    padding-bottom: 4em;
  }

  .top-about-image {
    width: 25em;
    height: 25em;
  }

  .side-about-image-block {
    width: 7em;
    height: 10em;
  }

  .about-center-image-block {
    width: 15em;
    height: 20em;
  }

  .bottom-about-image {
    width: 20em;
    height: 18em;
  }

  .about-flex {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .about-year {
    font-size: 2.5rem;
  }

  .about-right {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
  }

  .about-animation-image-wrapper {
    width: 80%;
  }

  .about-animation-image-wrapper.for--client {
    width: 100%;
    height: 400px;
    inset: -110% auto auto 0%;
  }

  .about-animation-image-wrapper.for-about-page {
    width: 100%;
    height: 400px;
  }

  .contain-image-block.for--client {
    display: none;
  }

  .service-hero-title-wrapper.second {
    left: -100%;
  }

  .drop-menu-cta-links-wrapper {
    justify-content: flex-end;
    align-items: flex-start;
  }

  .drop-menu-content-wrapper {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 8em;
    padding-left: 1em;
    padding-right: 1em;
    overflow: auto;
  }

  .drop-menu-right {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .drop-menu-links-wrapper {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
  }

  .cart-container {
    min-width: 250px;
  }

  .footer-big-name {
    letter-spacing: 20px;
  }

  .footer-lottie {
    display: none;
  }

  .text-animation-flex {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
  }

  .text-animation-flex.center.more-gap {
    grid-column-gap: 1.5em;
    grid-row-gap: 1.5em;
  }

  .text-image-wrapper {
    width: 5rem;
    height: 4rem;
  }

  .text-image-wrapper.big {
    height: 4rem;
  }

  .about-hero-lottie {
    width: 100%;
    height: 300%;
  }

  .history-second-p.second {
    font-size: 1.3rem;
  }

  .accordion-p-for--history {
    font-size: 1rem;
  }

  .dropdown-list {
    padding-top: 1.5em;
  }

  .dropdown-toggle {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
  }

  .project-image-wrap {
    height: 350px;
  }

  .project-name {
    font-size: 4rem;
  }

  .service-title {
    font-size: 1.2rem;
  }

  .accordion-title {
    font-size: 2.2rem;
  }

  .about-left {
    width: 100%;
    height: 400px;
  }

  .about-left.client {
    height: 410px;
  }

  .name-wrapper {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .client-image-block {
    aspect-ratio: 1;
    border-radius: 50%;
    width: 40px;
    display: block;
    overflow: hidden;
  }

  .project-third-left {
    height: 350px;
  }

  .project-third-left.full {
    height: 300px;
  }

  .service-animation-title.first-font {
    font-size: 3.5rem;
  }

  .service-wrap {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column-reverse;
    padding-top: 5em;
  }

  .padding-global {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .work-archive-list-v2 {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .work-archive-item-v2 {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .work-archive-detail-text {
    font-size: 1.1rem;
  }

  .contact-details-row {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: wrap;
  }

  .quote-image {
    width: 100px;
  }

  .hire-icon-2 {
    width: 1.1rem;
  }

  .custom-page-fixed-block, .custom-notifbar {
    max-width: 16rem;
    left: 1rem;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 1rem;
  }

  h2 {
    font-size: 1.8rem;
  }

  h3 {
    font-size: 2rem;
  }

  p {
    font-size: .9rem;
  }

  .section.gallery-section.dark-bg.second-version {
    height: auto;
  }

  .section.dark-bg.slider-section {
    padding-top: var(--mobile-separator);
  }

  .section.light-work-section.full-height, .section.bg-green.full-height {
    height: auto;
  }

  .section._1 {
    background-image: none;
    background-position: 0 0;
    background-repeat: repeat;
    background-size: auto;
  }

  .container {
    padding: var(--mobile-separator) var(--mobile-padding-x);
  }

  .container.hero-container, .container.for-client, .container.none-padding-x {
    padding-right: var(--mobile-padding-x);
    padding-left: var(--mobile-padding-x);
  }

  .animation-text {
    font-size: 3rem;
  }

  .global-button {
    font-size: .85rem;
  }

  .hero-section.for--home-page.second-version {
    height: 90vh;
  }

  .footer-links-holder.have--max-width {
    max-width: 100%;
  }

  .small-text-title {
    font-size: .9rem;
  }

  .small-text-title.size-large {
    font-size: 1.2rem;
  }

  .partner-box.for--tab {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
  }

  .partner-name-wrapper {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .partner-p {
    max-width: 100%;
    font-size: .85rem;
  }

  .hero-p {
    font-size: .7rem;
  }

  .contact-form-input {
    padding: 1.5em .9em;
    font-size: 1rem;
  }

  .contact-form-input.text-area {
    min-height: 225px;
    max-height: 225px;
  }

  .slider-arrow.is--right {
    left: 15%;
  }

  .project-details-wrapper {
    margin-top: 2em;
  }

  .text-align-center.for--legal-page {
    margin-top: 2em;
    font-size: 1.5rem;
  }

  .text-align-center.for--legal-page.left {
    margin-top: 2em;
  }

  .global-link-for-legal {
    font-size: .8rem;
  }

  .global-link-for-legal.nav-link {
    font-size: .9rem;
  }

  .licences-image {
    height: 150px;
  }

  .global-small-link.for--footer {
    white-space: nowrap;
    font-size: .9rem;
  }

  .global-small-link.footer-powered {
    font-size: .9rem;
    line-height: 1.5;
  }

  .contact-details-wrapper.second {
    padding: 1.5em var(--mobile-padding-x);
  }

  .hero-content-wrapper {
    justify-content: flex-start;
    height: 110vh;
  }

  .sticky-block {
    grid-column-gap: 1.2em;
    grid-row-gap: 1.2em;
  }

  .faq-dropdown-list {
    padding-top: 1.7em;
  }

  .sticky-content-wrap {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .dropdown-circle {
    width: 20px;
    height: 20px;
  }

  .accordion-p {
    width: 90%;
    font-size: 1.1rem;
  }

  .accordion-p.for--dropdown {
    width: 100%;
    color: var(--text-default);
    font-size: .8rem;
  }

  .faq-dropdown {
    padding-top: 1.9em;
  }

  .plus-text {
    font-size: 1rem;
  }

  .global-bold-text {
    font-size: .9rem;
  }

  .check {
    width: 100%;
    height: 100%;
  }

  .card {
    padding: 2em 1.5em;
  }

  .product-detail-content-wrapper {
    padding: 1.5em 1em;
  }

  .product-rich-text {
    font-size: .8rem;
  }

  .block-header, .block-content {
    padding-left: 10px;
    padding-right: 10px;
  }

  .footer-links-grid {
    grid-column-gap: 3.5em;
    justify-content: space-between;
    width: 100%;
  }

  .footer-links-grid-child {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    flex-flow: wrap;
    width: 100%;
  }

  .is--color-white {
    font-size: .9rem;
  }

  .global-collection-list {
    grid-row-gap: 2em;
  }

  .collection-image-wrapper {
    height: 250px;
  }

  .collection-item-title {
    font-size: 1.2rem;
  }

  .categorie {
    font-size: .7rem;
  }

  .blog-image-for--single {
    height: 275px;
  }

  .blog-rich-text {
    line-height: 2;
  }

  .logo-main {
    width: 80px;
  }

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

  .navbar-container {
    padding-right: var(--mobile-padding-x);
    padding-left: var(--mobile-padding-x);
  }

  .fourthiary-button.main.for--404.w--current {
    display: block;
  }

  .fourthiary-button.main.for--navbar {
    display: none;
  }

  .fourthiary-button.main.secondary {
    z-index: 2;
    position: relative;
  }

  .nav-link {
    font-size: 2rem;
  }

  .big-text {
    font-size: 25vw;
  }

  .vertical-wrapper.sticky {
    height: 60vh;
    padding-right: var(--mobile-padding-x);
    padding-left: var(--mobile-padding-x);
  }

  .small-h3 {
    font-size: 1.6rem;
  }

  .normal-spacer {
    padding-top: 3em;
  }

  .normal-title {
    margin-top: .2em;
    margin-bottom: 0;
    font-size: 2.2rem;
  }

  .normal-title.size-large {
    font-size: 2rem;
  }

  .normal-title.size-medium {
    font-size: 1.4rem;
  }

  .normal-title.size-medium.for-third-home {
    font-size: 3rem;
  }

  .normal-title.center {
    font-size: 2rem;
  }

  .normal-title.center.is--color-dark-green.big {
    font-size: 3.2rem;
  }

  .normal-title.center.for--about {
    font-size: 2.5rem;
  }

  .normal-title.center.large {
    font-size: 2.4rem;
  }

  .normal-title.for--inner-pages {
    font-size: 2.5rem;
  }

  .gallery-wrap {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    flex-flow: column-reverse;
    width: 100%;
    height: auto;
  }

  .gallery-wrap.for--gallery-page {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: 1fr;
    margin-top: 10em;
  }

  .gallery-wrap.wrap-up {
    flex-flow: column wrap-reverse;
  }

  .home-gallery-image {
    width: 100%;
    height: 300px;
  }

  .home-gallery-image.first {
    margin-left: 0;
  }

  .dark-layer.none-on-mobile {
    display: none;
  }

  .galler-content {
    margin-top: 1em;
    margin-bottom: 2em;
    position: static;
  }

  .home-gallery-block {
    position: static;
    transform: none;
  }

  .gallery-link {
    font-size: .6rem;
  }

  .hero-image-wrap {
    margin-top: 10em;
  }

  .hero-top {
    padding-left: 1em;
    padding-right: 1em;
  }

  .hero-lottie {
    margin-top: 10em;
  }

  .hero-title-wrap {
    margin-top: 5em;
  }

  .contact-lottie {
    display: none;
  }

  .contact-text.second {
    font-size: .9rem;
  }

  .next-project {
    font-size: 2.5rem;
  }

  .service-rich-text {
    line-height: 2;
  }

  .home-about-wrapper.for--home {
    justify-content: flex-start;
    align-items: stretch;
  }

  .home-about-wrapper.for--home.top.second-version {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    height: auto;
  }

  .about-title-wrapper {
    padding-right: var(--mobile-padding-x);
    padding-left: var(--mobile-padding-x);
  }

  .about-title-wrapper.for--gallery {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
  }

  .about-p, .about-p.text-align-left.second-version {
    font-size: .8rem;
  }

  .about-p.for--service {
    font-size: 1.3rem;
    line-height: 1.4;
  }

  .about-top-left {
    width: 8rem;
  }

  .about-top-left.right {
    width: 10rem;
  }

  .home-v3-gallery-image-left {
    width: 50vw;
  }

  .home-v3-gallery-image-left.first-project {
    width: 100%;
    position: static;
  }

  .home-v3-gallery-image-center {
    width: 50vw;
  }

  .home-v3-gallery-image-center.second-project {
    width: 100%;
    position: static;
  }

  .home-v3-gallery-image-right {
    width: 50vw;
  }

  .home-v3-gallery-image-right.third-project {
    width: 100%;
    position: static;
  }

  .third-home-lottie {
    margin-top: 3em;
  }

  .work-center-p {
    max-width: 90%;
    font-size: .7rem;
  }

  .works-arrow {
    min-width: 70px;
  }

  .work-arrow-wrap {
    bottom: 70px;
  }

  .loop-box.move-to-left {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .loop-wrapper {
    height: 100px;
  }

  .global-title {
    font-size: 2rem;
    font-weight: 400;
  }

  .global-title.blend {
    font-size: 2.5rem;
  }

  .global-title.blend.size-x-large {
    font-size: 3.5rem;
  }

  .text-loop-wrapper.none-border {
    padding-top: 2em;
    padding-bottom: 1em;
  }

  .text-loop-wrapper.none-border.absolute.for--works {
    bottom: 5%;
  }

  .horizontal-wrapper {
    padding-bottom: 0;
  }

  .section-height {
    height: auto;
  }

  .sticky-wrapper {
    position: static;
  }

  .sticky-element {
    height: auto;
  }

  .track {
    flex: 0 auto;
  }

  .track-flex {
    margin-right: 0;
  }

  .horizontal-scroll-content {
    width: 100%;
    height: auto;
  }

  .about-legacy {
    height: auto;
  }

  .about-container {
    height: auto;
    padding: 3em var(--mobile-padding-x);
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .about-history-title-wrapper {
    display: none;
  }

  .history-content.first, .history-content.second, .history-content.third {
    margin-left: 0;
    margin-right: 0;
  }

  .history-content.fourth {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .history-content.fifth {
    margin-left: 0;
    margin-right: 0;
  }

  .history-p {
    max-width: none;
  }

  .about-scroll {
    display: none;
  }

  .top-about-image {
    width: 12em;
    height: 15em;
  }

  .side-about-image-block {
    width: 5em;
    height: 6em;
  }

  .about-center-image-block {
    width: 8em;
    height: 12em;
  }

  .bottom-about-image {
    width: 10em;
    height: 10em;
  }

  .about-flex {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .about-flex-right.second {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }

  .about-year-wrapper {
    grid-column-gap: .2em;
    grid-row-gap: .2em;
    justify-content: center;
    align-items: flex-start;
  }

  .about-year.size--small {
    font-size: 2.5rem;
  }

  .about-year.size--small.color-dark-green {
    font-size: 3rem;
  }

  .about-right {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
  }

  .about-animation-image-wrapper {
    width: 100%;
  }

  .about-animation-image-wrapper.for--client {
    height: 300px;
    top: -90%;
  }

  .service-hero-title-wrapper.second {
    display: none;
  }

  .drop-menu-cta-links-wrapper {
    grid-column-gap: .4em;
    grid-row-gap: .4em;
    justify-content: flex-end;
    align-items: flex-start;
  }

  .drop-menu-content-wrapper {
    grid-column-gap: 5em;
    grid-row-gap: 5em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 10em 1em 0;
  }

  .drop-menu-right {
    justify-content: flex-end;
    align-items: flex-start;
  }

  .drop-menu-links-wrapper {
    grid-column-gap: 1.3em;
    grid-row-gap: 1.3em;
    grid-template-columns: 1fr;
  }

  .cart {
    width: auto;
    height: auto;
  }

  .cart-container {
    min-width: 100vw;
    margin-left: 0;
  }

  .nav-right {
    justify-content: space-between;
    width: 100%;
  }

  .title-p.is--color-dark-green.align-left {
    text-align: center;
  }

  .footer-big-name {
    letter-spacing: 10px;
    font-size: 3rem;
  }

  .social-link {
    width: 25px;
  }

  .absolute-image-two {
    width: 25vw;
    height: 18vw;
  }

  .absolute-image-five {
    width: 20vw;
    height: 30vw;
  }

  .absolute-image-one {
    width: 30vw;
    height: 25vw;
  }

  .absolute-image-six {
    width: 35vw;
    height: 20vw;
  }

  .absolute-image-three, .absolute-image-four {
    width: 35vw;
    height: 25vw;
  }

  .absolute-image-seven {
    width: 35vw;
    height: 20vw;
  }

  .text-animation-flex {
    grid-column-gap: .3em;
    grid-row-gap: .3em;
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
  }

  .text-image-wrapper {
    border-radius: 6px;
    height: 3rem;
  }

  .text-image-wrapper.big {
    height: 3rem;
  }

  .about-hero-lottie {
    width: 100%;
    height: 400%;
  }

  .about-history-section {
    height: 100vh;
  }

  .about-history-right.second-version {
    padding: var(--mobile-separator) var(--mobile-padding-x);
    grid-column-gap: 2em;
    grid-row-gap: 2em;
  }

  .history-lottie {
    height: 100%;
  }

  .history-second-p {
    font-size: 2.2rem;
  }

  .accordion-p-for--history {
    width: 90%;
    font-size: .85rem;
  }

  .accordion-p-for--history.for--dropdown {
    width: 100%;
    font-size: .8rem;
  }

  .accordion-p-for--history.for--dropdown.light {
    max-width: 100%;
  }

  .dropdown-list {
    padding-top: 1.7em;
  }

  .dropdown-circle-second {
    width: 20px;
    height: 20px;
  }

  .dropdown-toggle {
    grid-column-gap: .3em;
    grid-row-gap: .3em;
  }

  .project-image-wrap {
    height: 275px;
  }

  .projects-grid {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    display: flex;
    left: 0;
    right: 0;
  }

  .project-info-block {
    font-size: 1rem;
  }

  .project-name {
    font-size: 3rem;
  }

  .service-title {
    font-size: 1rem;
  }

  .accordion-title {
    font-size: 2.2rem;
  }

  .plus-text-menu {
    font-size: 1rem;
  }

  .dropdown-circle-menu {
    width: 20px;
    height: 20px;
  }

  .nav-dropdown-link.for--footer {
    font-size: .8rem;
  }

  .about-left, .about-left.client {
    height: 300px;
  }

  .name-wrapper {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .client-image-block {
    width: 50px;
  }

  .service-title-wrapper {
    justify-content: flex-start;
    align-items: center;
  }

  .project-third-left {
    height: 275px;
  }

  .image-right-wrapper {
    width: 100%;
  }

  .heading-line {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .service-animation-title.first-font {
    font-size: 2.8rem;
  }

  .home-service-wrap {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
  }

  .service-wrap {
    padding-top: 3em;
  }

  .padding-global {
    padding-left: .75rem;
    padding-right: .75rem;
  }

  .section-tag-text {
    font-size: 1.1rem;
  }

  .service-animation-image {
    width: 100%;
  }

  .building-image-wrapper {
    height: 450px;
    padding-left: 1em;
    position: static;
  }

  .building-image {
    width: 55%;
    bottom: -5%;
  }

  .building-sticky-wrapper {
    height: auto;
    overflow: hidden;
  }

  .work-archive-detail-text {
    font-size: 1rem;
  }

  .home-v1-project-wrapper {
    width: 100%;
  }

  .home-v1-project-wrapper.full {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
  }

  .contact-details-row {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    justify-content: center;
    align-items: center;
  }

  .contact-icon-block {
    width: 40px;
  }

  .contact-icon {
    width: 17px;
  }

  .contact-icon.phone {
    width: 18px;
  }

  .contact-link {
    font-size: .85rem;
  }

  .contact-link.second {
    font-size: .9rem;
  }

  .quote-image {
    width: 80px;
  }

  .customization-dropdown-list-2 {
    padding: .5rem;
  }

  .hire-icon-2 {
    width: 1.1rem;
  }

  .custom-page-fixed-block {
    max-width: 15rem;
    left: .75rem;
  }

  .customization-dropdown-toggle-3 {
    padding-left: .5rem;
    padding-right: .5rem;
  }

  .custom-notifbar {
    max-width: 15rem;
    left: .75rem;
  }

  .hire-row-3 {
    font-size: .8rem;
  }

  .plus-text-3 {
    font-size: 1rem;
  }

  ._2-image-wrap {
    height: auto;
  }

  .cross-cards {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    flex-flow: column;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: flex;
  }

  .cross-card {
    grid-column-gap: 2.1875rem;
    grid-row-gap: 2.1875rem;
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
    grid-auto-columns: 1fr;
  }
}

#w-node-_28ed76a3-4c95-508c-6097-f9774f5523f7-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f552437-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f552477-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f5524b7-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f5524f7-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f552537-f47c6985 {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-_0387a11a-91ea-7295-5ce1-acd64cf9cba7-f47c698c {
  grid-area: 1 / 1 / 3 / 2;
}

#w-node-_0387a11a-91ea-7295-5ce1-acd64cf9cbae-f47c698c {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-_0387a11a-91ea-7295-5ce1-acd64cf9cbb5-f47c698c {
  grid-area: 1 / 3 / 2 / 4;
}

#w-node-_60fb04f4-912d-e910-cf29-2b8cfd223f7b-f47c698c {
  grid-area: 3 / 1 / 4 / 2;
}

#w-node-e1db6143-c825-6aab-8210-5f2402e007b6-f47c698c {
  grid-area: 2 / 2 / 4 / 3;
}

#w-node-_48898ab6-6c57-9dd4-3e3f-9aece766bb27-f47c698c {
  grid-area: 2 / 3 / 4 / 4;
}

@media screen and (max-width: 479px) {
  #w-node-_28ed76a3-4c95-508c-6097-f9774f5523f7-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f552437-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f552477-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f5524b7-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f5524f7-f47c6985, #w-node-_28ed76a3-4c95-508c-6097-f9774f552537-f47c6985 {
    grid-area: 1 / 2 / 2 / 3;
  }

  #w-node-_0387a11a-91ea-7295-5ce1-acd64cf9cba7-f47c698c {
    grid-row-end: 2;
  }

  #w-node-_0387a11a-91ea-7295-5ce1-acd64cf9cbae-f47c698c {
    grid-area: 2 / 1 / 3 / 2;
  }

  #w-node-_0387a11a-91ea-7295-5ce1-acd64cf9cbb5-f47c698c {
    grid-area: 3 / 1 / 4 / 2;
  }

  #w-node-_60fb04f4-912d-e910-cf29-2b8cfd223f7b-f47c698c {
    grid-row: 4 / 5;
  }

  #w-node-e1db6143-c825-6aab-8210-5f2402e007b6-f47c698c {
    grid-area: 5 / 1 / 6 / 2;
  }

  #w-node-_48898ab6-6c57-9dd4-3e3f-9aece766bb27-f47c698c {
    grid-area: 6 / 1 / 7 / 2;
  }
}



/* Hide arrow-in-circle cursor/pointer overlays on image cards site-wide */
.project-cursor,
.project-cursor-wrapper {
  display: none !important;
}

/* Neutralize Webflow IX2 preset upscales that pixelate images */
/* Accommodation tile images should render 1:1 (was scale3d 1.3) */
html.w-mod-js:not(.w-mod-ix) [data-w-id="0390a7df-2cd7-d899-3866-58b24c44a26a"],
html.w-mod-js:not(.w-mod-ix) [data-w-id="0390a7df-2cd7-d899-3866-58b24c44a279"],
html.w-mod-js:not(.w-mod-ix) [data-w-id="0390a7df-2cd7-d899-3866-58b24c44a289"] {
  transform: none !important;
}
/* Sharpen image rendering hint for crisp downscale/upscale */
.frame-image,
.scale-image,
.about-cover-image,
.villa-hero-photo,
.villa-floor-plan,
.villa-nav-card img {
  image-rendering: -webkit-optimize-contrast;
}
/* Amenity tile hover zoom: reduce from 1.1 to 1.03 to avoid soft pixelation */
.scale-image:hover {
  transform: scale(1.03) !important;
}

/* Home hero Lottie: leave native green (revert gold tint) */

/* Home hero: push subtext to right edge and right-align */
.hero-section .hero-title-wrap.right {
  align-items: flex-end !important;
  text-align: right !important;
  margin-left: auto !important;
}
.hero-section .hero-title-wrap.right .text-animation-wrapper.mobile-none,
.hero-section .hero-title-wrap.right .hero-p {
  text-align: right !important;
}

/* Force footer links clickable regardless of animation state */
.footer-links-grid-child .text-animation-wrapper,
.footer-links-grid-child .overflow-hidden,
.footer-links-grid-child .first-line {
  pointer-events: auto !important;
  overflow: visible !important;
}
.footer-links-grid-child a {
  pointer-events: auto !important;
  display: inline-block !important;
  cursor: pointer !important;
  position: relative !important;
  z-index: 2 !important;
}
.footer-links-grid-child .global-small-link.for--footer {
  pointer-events: auto !important;
}

/* ============================================================
   Custom mobile navigation (hamburger + slide-in overlay)
   Added during QA (Group C). Overlay is built by js/nav.js
   from the page's real .top-nav-links, so no dead template
   links appear. Breakpoint: hamburger at <= 991px.
   ============================================================ */
@media screen and (min-width: 992px) {
  .nav-right { display: none !important; }
}
@media screen and (max-width: 991px) {
  .top-nav-links { display: none !important; }
  .fourthiary-button.for--navbar { display: none !important; }
  .drop-menu { display: none !important; }
  .header-content-new { flex-wrap: nowrap !important; gap: 1em !important; }
  .nav-right {
    display: flex !important;
    margin-left: auto;
    align-items: center;
  }
}
/* the slide-in panel */
.m-nav-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: var(--surface-white);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1.15rem;
  padding: 5.5rem 2rem 3rem;
  box-sizing: border-box;
  transform: translateX(100%);
  transition: transform 0.38s cubic-bezier(0.6, 0, 0.2, 1);
  visibility: hidden;
}
body.m-nav-open .m-nav-overlay { transform: translateX(0); visibility: visible; }
body.m-nav-open { overflow: hidden; }
.m-nav-overlay a {
  color: var(--brand-green);
  font-family: Fraunces, "Times New Roman", serif;
  font-size: 2rem;
  line-height: 1.15;
  font-weight: 400;
  text-decoration: none;
  letter-spacing: 0.01em;
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.4s ease, transform 0.4s ease, color 0.2s ease;
}
body.m-nav-open .m-nav-overlay a { opacity: 1; transform: none; }
.m-nav-overlay a:nth-child(2) { transition-delay: 0.06s; }
.m-nav-overlay a:nth-child(3) { transition-delay: 0.11s; }
.m-nav-overlay a:nth-child(4) { transition-delay: 0.16s; }
.m-nav-overlay a:nth-child(5) { transition-delay: 0.21s; }
.m-nav-overlay a:nth-child(6) { transition-delay: 0.26s; }
.m-nav-overlay a:nth-child(7) { transition-delay: 0.31s; }
.m-nav-overlay a:nth-child(8) { transition-delay: 0.36s; }
.m-nav-overlay a:hover { color: var(--brand-gold); }
.m-nav-overlay a.m-nav-cta {
  margin-top: 1.25rem;
  font-family: Inter, sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #fff;
  background: var(--brand-green);
  padding: 0.85rem 1.7rem;
  border-radius: 2px;
}
.m-nav-overlay a.m-nav-cta:hover { color: #fff; background: var(--brand-gold); }
.m-nav-close {
  position: absolute;
  top: 1.4rem;
  right: 1.6rem;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  color: var(--brand-green);
  font-size: 2.4rem;
  line-height: 1;
  cursor: pointer;
}
.m-nav-close:hover { color: var(--brand-gold); }

/* --- mobile nav part 2: injected hamburger, logo shrink, hero title scale --- */
.m-nav-burger { display: none; }
@media screen and (max-width: 991px) {
  .hamburger-menu-wrapper { display: none !important; }   /* original renders 0-width; hide it */
  .m-nav-burger {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 30px;
    height: 30px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    margin-left: auto;
  }
  .m-nav-burger span {
    display: block;
    width: 26px;
    height: 2px;
    background: var(--brand-green);
    border-radius: 2px;
  }
  /* shrink the oversized 150px logo so the absolute header is short */
  .header-content-new .logo-main-new,
  .header-content-new .logo-main-new img {
    width: 104px !important;
    height: auto !important;
  }
  /* scale the hero title down from the inline 8.5rem so it fits + stops clipping */
  .normal-title.size-large { font-size: 3.2rem !important; line-height: 1.06 !important; }
}
@media screen and (max-width: 479px) {
  .normal-title.size-large { font-size: 2.55rem !important; }
  .header-content-new .logo-main-new,
  .header-content-new .logo-main-new img { width: 92px !important; }
}

/* mobile nav part 3: stop .nav-right + burger collapsing to 0 width */
@media screen and (max-width: 991px) {
  .header-content-new { align-items: center !important; }
  .nav-right {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 30px !important;
    overflow: visible !important;
    margin-left: auto !important;
  }
  .m-nav-burger { flex: 0 0 30px !important; min-width: 30px !important; }
}
