:root { --main-bg: #fff; --light: #f5f5f5; --light-comp: #4d4d4d; --dark: #333; --dark-comp: #fff; --primary: #076a3b; --primary-comp: #fff; --secondary: #f78934; --secondary-comp: #fff; --accent: #1ba2b6; --dark-accent: #1ba2b6; }
/* GENERAL */
html, body { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-family: 'Poppins', Verdana, sans-serif; font-size: 18px; line-height: 1.5; text-align: center; }
body, .row1 .grid a, .contact a { color: var(--light-comp, #4d4d4d); }
body, header ul, .hero h1, .hero p, .row1 h2, .row1 h3 { padding: 0; margin: 0; }
h1, h2, h3, h4, h5, h6, p, th, td, dd, dt, li, blockquote { text-align: left; }
h1 { color: var(--dark, #333); }
img, iframe { max-width: 100%; height: auto; }
img,iframe,svg{display:block;margin:0 auto}
iframe { aspect-ratio: auto 16 / 9; width: 100%; margin: 1em auto; }
a img, iframe { border: none; }
a { transition: ease-in-out .3s; }
a, header a:hover, form input[type=submit]:hover, .btn:hover, .row1 a:hover, .contact a:hover { text-decoration: none; }
a, header a:hover, .row1 a:hover h3, .contact a:hover { color: var(--secondary, #1ba2b6); }
a:hover { text-decoration: underline; }
hr { border-width: 1px; border-color: var(--light, #e7e7e7); border-style: none none solid; margin: 40px 0; }
.imgLeft, .imgRight { max-width: 45%; }
.imgLeft { float: left; margin: 10px 4% 2% 0; }
.imgRight { float: right; margin: 10px 0 2% 4%; }
.nowrap, a[href^=tel] { white-space: nowrap; }
sup { line-height: 0; }
.center, .ccpaNotice, .hero h1, .hero p, .row1 h2, .row1 h3, .row1 p, .cta h2, .cta p, .contact li { text-align: center; }
.wrap { display: block; max-width: 1080px; margin: 0 auto; position: relative; }
.bg-dark, .bg-primary, .bg-primary a { color: var(--dark-comp, #fff); }
.bg-dark { background-color: var(--dark, #333); }
.bg-primary { background-color: var(--primary, #005342); }
.bg-light { background-color: var(--light, #e7e7e7); color: var(--dark, #333); }
.mid { align-items: center; align-self: center; }
.grid { display: grid; grid-gap: 10px 40px; }
.grid.half { grid-template-columns: repeat(2,1fr); }
.grid.third { grid-template-columns: repeat(3,1fr); }
.grid.fourth { grid-template-columns: repeat(4,1fr); }
.gridimg { height: 100%; }
.gridimg img{object-fit:cover;height:100%}
.bgimg { position: relative }
.bgimg > img:first-of-type { position: absolute; width: 100%; height: 100%; inset: 0; object-fit: cover; z-index: 0 }

/* HEADER & NAVIGATION */
header, .hero { position: relative; }
header { background-image: linear-gradient(rgba(0,0,0,.6),transparent); z-index: 999; }
header img{max-width:300px;width:100%}
header .wrap { padding: 20px 10px 0; }
header .grid { grid-template-columns: 200px 1fr; }
nav ul { text-align: right; }
.top, footer { font-size: 16px; }
.top { display: block; padding: 10px; }
.top:hover { background-color: var(--secondary, #1ba2b6); }
.top:hover, nav a, .hero h1, .hero p { color: var(--dark-comp, #fff); }
nav li { display: inline-block;  }
nav a{display:block;margin:5px;padding:5px;text-shadow:1px 1px 2px #000,-1px -1px 2px rgba(0,0,0,.5)}
/* HERO */
.row2 { background-size: cover; background-position: center; position: relative; }
.hero:before { content: ""; width: 100%; height: 100%; background-color: rgba(0,0,0,.3); position: absolute; inset: 0; z-index:1 }
.hero.bgimg > img{object-position:15% 65%}
.hero { width: 100%; }
.hero > .wrap { padding:80px 0 120px;z-index:2}
.hero h1, .hero p { line-height: 1.25; padding: 0 20px; text-shadow: 1px 1px 4px #000; }
.hero h1 { font-size: 36px; }
.hero .btn { margin-top: 20px; }
/* HOME */
.row1 .wrap { padding: 50px 10px 40px; }
.row1 h2, .cta h2 { font-size: 26px; }
.row1 .grid, .contact .grid { padding: 20px 0; }
.row2 .wrap,.row4 .wrap { padding: 40px 10px; }
.row4 h2, .row4 p { text-align: right; }
.row4 .btn { background-color: #222; }
.row2 img{object-position:65% 50%}
.row4 img{object-position:0 50%}
/* FORMS */
form { margin: 20px 0; }
form .grid { grid-gap: 0 10px; }
form label { display: block; }
form input[type=text], form input[type=email], form input[type=tel], form input[type=submit], form textarea, .btn { font-family: 'Poppins', sans-serif; font-size: 16px; }
form input[type=text], form input[type=email], form input[type=tel], form textarea { background-color: transparent; margin-bottom: 10px; padding: 0 10px; border: none; border-bottom: 1px solid #333; }
form input[type=text], form input[type=email], form input[type=tel] { height: 45px; }
form input[type=text], form input[type=email], form input[type=tel], form textarea { width: calc(100% - 20px); }
form textarea { height: 100px; padding: 15px 10px; }
form input[type=submit], .btn { display: inline-block; min-width: 110px; text-align: center; line-height: 1.6; background-color: var(--primary, #005342); color: var(--primary-comp, #fff); padding: 10px 30px; margin: 10px 0; border: none; border-radius: 3px; transition: ease-in-out .3s; }
form input[type=submit] { min-width: 250px; margin: 0; }
form input[type=submit]:hover, .btn:hover { cursor: pointer; background-color: var(--secondary, #1ba2b6); }
form input, form textarea, ::placeholder { color: var(--dark, #333); }
form input[type=submit]:hover, .btn:hover { color: var(--primary-comp, #fff); }
form input, form textarea { outline: none; }
/* FOOTER */
footer .wrap { padding: 20px 10px; }
.cta { background-image: url(/images/flowers-pattern-design.png); background-repeat: repeat; border-top: 2px solid #fafafa }
.cta .wrap { padding: 40px 10px 50px; }
.cta p { max-width: 900px; margin: auto; }
.ccpaNotice { text-align: center !important; }
.subfoot {border-top:1px solid var(--dark)}
.subfoot .grid{grid-template-columns:1fr 150px}
.subfoot a{display:block;margin:0 auto}
.a8bmark img{filter:invert(1)}
/* MAIN & EVERYTHING ELSE */
main { padding: 40px 10px 50px; }
main h1, main h2, .hero p, .row2 h3 { font-size: 24px; }
main h3, main h4 { font-size: 18px; }
main ul, main ol { padding-left: 25px; }
main li { margin: 5px 0; }
.contact ul { list-style: none; padding-left: 0; }
.grid.contact{grid-gap:10px 0}
.contact address{margin:1em 0;font-style:normal}

/*** mobile ***/
@media(forced-colors:active) {
    .a8bmark img { filter: unset }
    .btn,form input[type=submit]{border:1px solid #000}
}

@media(max-width:999px) {
    .back { display: block }
    .grid.contact{grid-template-columns:1fr 1fr}
}

@media(max-width:767px) {
    .grid.third{grid-template-columns:1fr}
    .grid.fourth{grid-template-columns:1fr 1fr}
}

@media(max-width:700px) {
    header .grid { grid-template-columns: 1fr }
    nav ul { text-align: center }
    nav a{font-size:20px}
    main .grid.half, .row2 .grid { grid-template-columns: 1fr }
    .row2 h2, .row2 h3 { text-align: center }
    .imgRight { float: none; margin: 0 auto; max-width: 100%; }
    main { margin-bottom: 50px }
}

@media(max-width:500px) {
    .grid.contact,.subfoot .grid { grid-template-columns: 1fr }
    .subfoot p{text-align:center}
}

@media(max-width:400px) {
    form input[type=submit] { max-width: unset; display: block; width: 100% }
}
