* {
    --ts-red: #e62614;
    --ts-forrest: #1c6533;
    --ts-gold: #eaaa02;
    --ts-teal: #31857e;
    --ts-navy: #0d2140;
    --ts-lime: #8fad16;
    --ts-black: #212123;
    --ts-darkgrey: #363636;
    --ts-lightgrey: #fafafa;
    --ts-white: #ffffff;
    --section-padding: 4em;
	--font-heading: 'HeadlinesCore';
	--font-sub: 'le-monde-livre-std';
	--font-body: 'Texta';
  }
  * html,
  * body {
    padding: 0;
    margin: 0;
    border-sizing: border-box;
  }
  * section {
    position: relative;
    -webkit-padding-after: var(--section-padding);
            padding-block-end: var(--section-padding);
  }
  * section.home.home__hero span.scrolldown {
    width: 50px;
    height: 50px;
    background: var(--ts-gold);
    position: absolute;
    display: block;
    left: 50%;
    border-radius: 50vw;
    bottom: var(--section-padding);
    transform: translate(-50%, 50%);
	cursor: pointer;
  }
 * section.home.home__hero span.scrolldown:hover {
    background: var(--ts-navy);
	transition: all 320ms ease-in;
	 color: var(--ts-white);
  }
  * section.home.home__hero span.scrolldown > svg {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
 
  @media screen and (min-width: 900px) {
    * section.home.home__hero .row {
      display: flex;
      align-items: center;
    }
	* section.home.home__hero .container {
      max-width: 1320px;
    }
  }
  
  * section.home.home__hero .hero--intro {
    padding-block: 3em;
	padding-left: 20px;
  }
  @media screen and (max-width: 900px) {
    * section.home.home__hero .hero--intro {
      padding-block: 1em;
    }
	* section.home.home__hero .hero--intro h1 {
      padding-left: 10px;
    }
  }
	* section.home.home__hero .home__hero--slider {
		height: clamp(300px, 300px + 2vh + 8vw, 680px);
		width: calc(100% + var(--site-pl));
		background: var(--ts-red);
		overflow: hidden;
		position: relative;
	}

  @media screen and (max-width: 900px) {
	  * section.home.home__hero .home__hero--slider {
    	width: calc(100% + (var(--site-pl) * 2 ));
    	margin-left: calc(var(--site-pl) * -1 );
	}
  }
  * section.home.home__hero .home__hero--slider .flickity-viewport {
    width: 100%;
    min-height: 100%;
  }
  * section.home.home__hero .home__hero--slider .flickity-slider {
    width: 100%;
    height: 100%;
  }
  * section.home.home__hero .home__hero--slider .flickity-page-dots {
    position: absolute;
    width: unset;
    bottom: 0;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    line-height: 1;
    right: 0;
    padding: 1em;
  }
  * section.home.home__hero .home__hero--slider .flickity-page-dots .dot {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin: 0 8px;
    background: var(--ts-white);
    border-radius: 50%;
    cursor: pointer;
    border: 1px solid var(--ts-lightgrey);
    opacity: 1;
  }
  * section.home.home__hero .home__hero--slider .flickity-page-dots .dot.is-selected {
    background: var(--ts-lime);
    border: 1px solid var(--ts-lime);
  }
  * section.home.home__hero .home__hero--slider .hero--slide {
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
  }
  * section.home.home__hero .home__hero--slider .hero--slide:before {
    content: '';
    width: 100%;
    height: 40%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
}
  * section.home.home__hero .home__hero--slider .hero--slide > .slide--content {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    padding: 1em;
    margin: 2em 1em;
    color: var(--ts-white);
  }
  * section.home.home__hero .home__hero--slider .hero--slide > .slide--content > p {
	 font-size: clamp(20px, 24px + 1.5vw, 25px);
	  padding: 0;
	  margin: 0;
  }
  * section.home.home__hero .home__hero--slider .hero--slide > .slide--content > a.button {
    color: var(--ts-white);
	padding: 0;
	background: none;
	border-bottom: 1px solid var(--ts-white);
  }
  * section.home.home__hero .home__hero--slider .hero--slide > img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  * section.home.home__intro h2 {
	font-family: var(--font-body);
	text-transform: none;
  } 
  * section.home__news .news--card {
    width: 100%;
    position: relative;
  }
  * section.home__news .news--card:hover, * section.home__news .news--card:focus {
    transition: all 320ms ease-out;
  }
  * section.home__news .news--card:hover a .card--content, * section.home__news .news--card:focus a .card--content {
    background: var(--ts-navy);
  }
  * section.home__news .news--card a .card--img {
    aspect-ratio: 16/9;
    position: relative;
    width: 100%;
    display: block;
  }
  * section.home__news .news--card a .card--img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  * section.home__news .news--card a .card--content {
    background: var(--ts-teal);
    padding: 1.25em;
    width: 100%;
    aspect-ratio: 4.5/3;
    transition: all 320ms ease-out;
	min-height: 260px;
  }
  * section.home__news .news--card a .card--content .card--type {
    color: var(--ts-white);
    font-size: 0.85em;
    text-transform: uppercase;
    display: block;
	font-family: var(--font-body);
	line-height:1;
  }
  * section.home__news .news--card a .card--content .news--date {
    color: var(--ts-white);
    font-size: 1em;
    text-transform: uppercase;
    display: block;
	font-family: var(--font-body);
	padding-bottom: 1em;
  }
  * section.home__news .news--card a .card--content span.button {
    color: var(--ts-white);
    display: inline-block;
    position: absolute;
    bottom: 20px;
  }
  * section.home__news .news--card a .card--content h3 {
    color: var(--ts-white);
	font-family: var(--font-body);
	font-size: clamp(20px, 20px + 1.5vw, 24px);
    padding: 0;
    margin: 0.3em 0;
	line-height:1.04;
  }
  * section.home__case--focus .case--focus__single {
    display: block;
    width: 100%;
  }

@media screen and (max-width: 991px) {
	* section.home__news .news--card a .card--content h3 {
		font-size: clamp(20px, 20px + 1.5vw, 20px);
	}
}

@media screen and (max-width: 575px) {
	* section.home__cta .row {
    background: var(--ts-forrest);
    padding: 5em 0 !important;
		margin-bottom: calc(var(--section-padding) * -1);
}
}
  * section.home__case--focus .case--focus__single a:hover, * section.home__case--focus .case--focus__single a:focus {
    transition: all 320ms ease-out;
  }
  * section.home__case--focus .case--focus__single a:hover > .case__content, * section.home__case--focus .case--focus__single a:focus > .case__content {
    -webkit-border-after: 3px solid var(--ts-red);
    border-block-end: 3px solid var(--ts-red);
  }
  * section.home__case--focus .case--focus__single a:hover > .case__content > *, * section.home__case--focus .case--focus__single a:focus > .case__content > * {
    text-decoration: none;
    color: var(--ts-darkgrey);
    transition: all 320ms ease-in;
  }
  * section.home__case--focus .case--focus__single a > .case__content > h3 {
	font-family: var(--font-body);
	font-size: clamp(20px, 20px + 1.5vw, 24px);
	padding: 10px 0;
  }
  * section.home__case--focus .case--focus__single a > .case__img {
    width: 100%;
    aspect-ratio: 16/9;
    position: relative;
    display: block;
  }
  * section.home__case--focus .case--focus__single a > .case__img > img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
  }
  * section.home__case--focus .case--focus__single a > .case__content {
    color: var(--ts-black);
    -webkit-padding-after: 1em;
            padding-block-end: 1em;
    -webkit-border-after: 0 solid var(--ts-red);
            border-block-end: 0 solid var(--ts-red);
    transition: all 320ms ease-in;
  }
  * section.home__cta .row {
    background: var(--ts-forrest);
    padding: 4em;
  }
  * section.home__cta .row h3 {
    color: var(--ts-white);
    font-size: 2em;
    font-weight: 400;
  }
  * section.home__cta .row p {
    color: var(--ts-white);
    font-size: 120%;
  }
  * section.home__cta .row a.button {
    padding: 1em;
    background: var(--ts-white);
    color: var(--ts-forrest);
    text-transform: uppercase;
    transition: all 320ms ease-in;
  }
  * section.home__cta .row a.button:hover, * section.home__cta .row a.button:focus {
    color: var(--ts-white);
    background: var(--ts-lime);
    transition: all 320ms ease-in;
    text-decoration: none;
    transition: all 320ms ease-out;
  }
  * section.home__link--garden .link--garden__services {
    --text-colour: var(--ts-black);
    --text-border: var(--ts-white);
    background: var(--ts-gold);
    /*-webkit-padding-start: var(--site-pl);
    padding-inline-start: var(--site-pl);*/
	-webkit-padding-start: 3em;
    padding-inline-start: 3em;
    -webkit-margin-start: calc(var(--site-pl) * -1);
    margin-inline-start: calc(var(--site-pl) * -1);
    padding-block: var(--section-padding);
    -webkit-padding-end: 3em;
    padding-inline-end: 3em;
  }
  /*@media screen and (max-width: 900px) {
    * section.home__link--garden .link--garden__services {
      -webkit-padding-end: var(--site-pl);
              padding-inline-end: var(--site-pl);
      -webkit-margin-end: calc(var(--site-pl) * -1);
              margin-inline-end: calc(var(--site-pl) * -1);
    }
  }*/
  * section.home__link--garden .link--garden__explore {
    --text-colour: var(--ts-white);
    --text-border: var(--ts-lime);
    background: var(--ts-navy);
    /* -webkit-padding-end: var(--site-pl);
    padding-inline-end: var(--site-pl); */
	-webkit-padding-end: 3em;
    padding-inline-end: 3em;
    -webkit-margin-end: calc(var(--site-pl) * -1);
    margin-inline-end: calc(var(--site-pl) * -1);
    padding-block: var(--section-padding);
    -webkit-padding-start: 3em;
    padding-inline-start: 3em;
  }
  /* @media screen and (max-width: 900px) {
    * section.home__link--garden .link--garden__explore {
      -webkit-padding-start: var(--site-pl);
              padding-inline-start: var(--site-pl);
      -webkit-margin-start: calc(var(--site-pl) * -1);
              margin-inline-start: calc(var(--site-pl) * -1);
    }
  } */
  * section.home__link--garden h3 {
    color: var(--text-colour);
    font-size: 2em;
    font-weight: 400;
	font-family: var(--font-body);
  }
  * section.home__link--garden .link--list {
    -moz-columns: var(--col-count);
         columns: var(--col-count);
    gap: 2em;
  }
* section.home__link--garden > .link--list {
	font-family: var(--font-body);
}
  @media screen and (max-width: 900px) {
    * section.home__link--garden .link--list {
      -moz-columns: 1;
           columns: 1;
    }
  }
  * section.home__link--garden .link--list a {
    display: block;
    color: var(--text-colour);
    -webkit-border-after: 1px solid var(--text-border);
            border-block-end: 1px solid var(--text-border);
    padding-block: 1em 0.5em;
    position: relative;
	  z-index: 2;
  }
* section.home__link--garden .link--list a {
	z-index: 2;
}
* section.home__link--garden .link--list a:hover {
	z-index: 2;
	padding-left: 15px;
	padding-right: 15px;
}
* section.home__link--garden .link--list a:before {
	content: '';
	width: 100%;
	height: 0%;
	background: var(--text-border);
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	transition: all 320ms ease-in-out;
	z-index: -1;
}
* section.home__link--garden .link--list a:hover:before {
	height: 90%;
	transition: all 320ms ease-in-out;
}
  * section.home__link--garden .link--list a:after {
    content: ">";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
	  transition: all 320ms ease-in-out;
  }
  * section.home__link--garden .link--list a:hover:after {
    content: ">";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
	  transition: all 320ms ease-in-out;
  }
  * section.home__link--garden .link--list a:hover, * section.home__link--garden .link--list a:focus {
    text-decoration: none;
    transition: all 320ms ease-out;
  }
  * section.home__case--study .case--study__single {
    display: block;
    width: 100%;
  }
  * section.home__case--study .case--study__single a:hover, * section.home__case--study .case--study__single a:focus {
    transition: all 320ms ease-out;
  }
  /*
  * section.home__case--study .case--study__single a:hover > .case__content, * section.home__case--study .case--study__single a:focus > .case__content {
    -webkit-border-after: 3px solid var(--ts-red);
    border-block-end: 3px solid var(--ts-red);
  }
  */
  * section.home__case--study .case--study__single a:hover > .case__content > *, * section.home__case--study .case--study__single a:focus > .case__content > * {
    text-decoration: none;
    color: var(--ts-darkgrey);
    transition: all 320ms ease-in;
  }
  * section.home__case--study .case--study__single a h3 {
    font-size: clamp(20px, 20px + 1.5vw, 24px);
	padding: 10px 0;
  }
  * section.home__case--study .case--study__single a > .case__img {
    width: 100%;
    aspect-ratio: 16/9;
    position: relative;
    display: block;
  }
  * section.home__case--study .case--study__single a > .case__img > img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
  }
  * section.home__case--study .case--study__single a > .case__content {
    color: var(--ts-black);
    -webkit-padding-after: 1em;
            padding-block-end: 1em;
    -webkit-border-after: 0 solid var(--ts-red);
            border-block-end: 0 solid var(--ts-red);
    transition: all 320ms ease-in;
  }
  * section.home__case--study .case--study__single a > .case__content .button {
    -webkit-border-after: 2px solid var(--ts-forrest);
            border-block-end: 2px solid var(--ts-forrest);
    display: inline-block;
    -webkit-margin-after: 2em;
            margin-block-end: 2em;
    -webkit-padding-after: 0.25em;
            padding-block-end: 0.25em;
  }
  * section.home__awards {
    -webkit-padding-before: var(--section-padding);
            padding-block-start: var(--section-padding);
    background: var(--ts-lightgrey);
  }


/* Typography */
h1 {
	font-family: var(--font-heading);
	text-transform: uppercase; 
	font-weight: 700!important;
	font-size: clamp(36px, 24px + 1.5vw, 48px);
	line-height: 1;
}

h2 {
	font-family: var(--font-heading);
	text-transform: uppercase; 
	font-weight: 700 !important;
	font-size: clamp(28px, 24px + 1.5vw, 34px);
	line-height: 1.25;
}

h3 {
	font-family: var(--font-body);
	font-weight: 500;
	padding-bottom: 1em;
	line-height: 1.25;
}

.serif {
	font-family: var(--font-sub);
	text-transform: none;
	color: var(--ts-red);
	font-style: italic;
}

p {
	font-family: var(--font-body);
	font-size: clamp(16px, 17px + 1.5vw, 20px);
	line-height: 1.5;
	padding-bottom: 0.5em;
}

/* Buttons */

a.button {
    background: var(--ts-red);
    opacity: 1;
    padding: 1em;
	margin-top: 0.5em;
    display: inline-block;
	color: var(--ts-white);
	position: relative;
	transition: all 320ms ease-in;
}
a.button:hover, a.button:focus {
	background:var(--ts-navy);
	transition: all 320ms ease-in;
}
span.button {
    opacity: 1;
	margin-top: 1em;
    display: inline-block;
	color: var(--ts-white);
	position: relative;
	border-bottom: 1px solid var(--ts-white);
	padding-bottom: 5px;
}
div.button {
    opacity: 1;
	margin-top: 1em;
    display: inline-block;
	color: var(--ts-black);
	position: relative;
	border-bottom: 1px solid var(--ts-black);
	padding-bottom: 5px;
}
a.button::after, span.button::after {
	content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' height='1em' viewBox='0 0 320 512'><path d='M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z'/></svg>");
	width: 100%;
	height: 100%;
	filter: invert(1);
	padding-left: 1em;
	top: 2px;
    position: relative;
}
div.button::after {
	content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' height='1em' viewBox='0 0 320 512'><path d='M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z'/></svg>");
	width: 100%;
	height: 100%;
	padding-left: 10px;
	top: 2px;
    position: relative;
}

/* Header 
.header2__upper {
    background-color: var(--ts-white);
    padding: 30px 0;
}

span.header2-menu-btn__label {
    color: var(--ts-black);
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 34px;
    height: 4px;
    background-color: var(--ts-red);
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
}

.header2__buttons {
	background: none;
}

.header2__btn {
	background: var(--ts-forrest)
}

.header2-call {
    color: var(--ts-black);
}
*/