:root {
  --font-family-primary: Lato, sans-serif;
  --font-family-heading: Montserrat, sans-serif;
  --font-weight-base: 400;
  --font-weight-heading: 700;
  --line-height-base: 1.6;
  --line-height-heading: 1.2;

  --sp-24-160: clamp(1.5rem, -1.7692rem + 13.0769vw, 10rem); /* 24 - 160 */
  --sp-40-112: clamp(2.5rem, 0.7692rem + 6.9231vw, 7rem); /* 40 - 112 */
  --sp-64-80: clamp(4rem, 3.6154rem + 1.5385vw, 5rem); /* 64 - 80 */
  --sp-40-80: clamp(2.5rem, 1.5385rem + 3.8462vw, 5rem); /* 40 - 80 */
  --sp-16-80: clamp(1rem, -0.5385rem + 6.1538vw, 5rem); /* 16 - 80 */
  --sp-24-64: clamp(1.5rem, 0.5385rem + 3.8462vw, 4rem); /* 24 - 64 */
  --sp-24-48: clamp(1.5rem, 0.9231rem + 2.3077vw, 3rem); /* 24 - 48 */
  --sp-24-40: clamp(1.5rem, 1.1154rem + 1.5385vw, 2.5rem); /* 24 - 40 */
  --sp-24-32: clamp(1.5rem, 1.3077rem + 0.7692vw, 2rem); /* 24 - 32 */
  --sp-16-40: clamp(1rem, 0.4231rem + 2.3077vw, 2.5rem); /* 16 - 40 */
  --sp-16-32: clamp(1rem, 0.6154rem + 1.5385vw, 2rem); /* 16 - 32 */
  --sp-16-24: clamp(1rem, 0.8077rem + 0.7692vw, 1.5rem); /* 16 - 24 */
  --sp-12-24: clamp(0.75rem, 0.4615rem + 1.1538vw, 1.5rem); /* 12 - 24 */
  --sp-0-16: clamp(0rem, -0.3846rem + 1.5385vw, 1rem); /* 0 - 16 */
  
  --border-r--40: clamp(1.5rem, 1.1154rem + 1.5385vw, 2.5rem); /* 24 - 40 */
  --border-r--24: clamp(0.75rem, 0.4615rem + 1.1538vw, 1.5rem); /* 12 - 24 */
  --border-r--16: clamp(0.75rem, 0.6538rem + 0.3846vw, 1rem); /* 12 - 16 */
  --border-r--12: clamp(0.5rem, 0.4038rem + 0.3846vw, 0.75rem); /* 8 - 12 */
  --border-r--8: clamp(0.25rem, 0.1538rem + 0.3846vw, 0.5rem); /* 4 - 8 */
}

@font-face {
    font-family: Lato;
    src: url("/wp-content/themes/agencjagood/assets/fonts/lato-300.woff2") format("woff2"),
         url("/wp-content/themes/agencjagood/assets/fonts/lato-300.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Lato;
    src: url("/wp-content/themes/agencjagood/assets/fonts/lato-400.woff2") format("woff2"),
         url("/wp-content/themes/agencjagood/assets/fonts/lato-400.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Lato;
    src: url("/wp-content/themes/agencjagood/assets/fonts/lato-700.woff2") format("woff2"),
         url("/wp-content/themes/agencjagood/assets/fonts/lato-700.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: Montserrat;
    src: url("/wp-content/themes/agencjagood/assets/fonts/montserrat-400.woff2") format("woff2"),
         url("/wp-content/themes/agencjagood/assets/fonts/montserrat-400.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Montserrat;
    src: url("/wp-content/themes/agencjagood/assets/fonts/montserrat-700.woff2") format("woff2"),
         url("/wp-content/themes/agencjagood/assets/fonts/montserrat-700.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}


html {
  -webkit-font-smoothing: antialiased;
  font-family: var(--font-family-primary);  
  scroll-behavior: smooth;
}
body {
    overflow-x: clip;
    font-size: 18px;
    font-weight: var(--font-weight-base);
    line-height: var(--line-height-base);
    overflow-x: clip;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: #fff;
    color: var(--color-body-text);
}
body, nav, h1, h2, h3, h4, h5, h6, header, footer, address,
p, hr, blockquote, ol, ul, li, dl, dt, figure, figcaption, div, main,
a, strong, s, q, data, time, code, var, sub, sup, i, b, u, rt, span, br,
img, iframe, embed, object, param, video, source, track, map, area,
form, label, optgroup, option, output, progress {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: inherit;
  vertical-align: baseline;
}
img {
	height: auto;
}
.img__holder {
	position: relative;
}
figcaption, figure, footer, header, main, nav {
  display: block;
}

hr {
  height: 0;
  border-bottom: 1px solid #000;
}


blockquote {
  page-break-inside: avoid;
}

strong, b {
  font-weight: 700;
}

sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: auto;
}

 th, td {
  text-align: left;
  font-weight: normal;
}

a {
  text-decoration: none;
  transition: color .2s;
  cursor: pointer;
}

*, *:before, *:after {
  box-sizing: border-box;
}




h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h4, .h5, .h6 {
  font-family: var(--font-family-heading);
  line-height: var(--line-height-heading);
  font-weight: var(--font-weight-heading);
  color: var(--color-headings--dark);
}
.ff--head {
    font-family: var(--font-family-heading)!important;
}
.fs--italic {
    font-style: italic;
}
.tt--upper {
    text-transform: uppercase;
}
h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child, .h1:last-child, .h2:last-child, .h3:last-child, .h4:last-child, .h5:last-child, .h6:last-chil {
  margin-bottom: 0;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .h1 a, .h2 a, .h3 a, .h4 a, .h4 a, .h5 a, .h6 a, a {
  color: inherit;
  transition: color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
p {
  margin-bottom: 1.5rem;
  line-height: var(--line-height-base);
}
p:last-child {
  margin-bottom: 0;
}


/* 34 - 64px */
.fs--64 {
    font-size: clamp(2.125rem, 1.4038rem + 2.8846vw, 4rem);
}
/* 32 - 48px */
.fs--48 {
    font-size: clamp(2rem, 1.6154rem + 1.5385vw, 3rem);
}
/* 28 - 40px */
.fs--40 {
    font-size: clamp(1.75rem, 1.4615rem + 1.1538vw, 2.5rem);
}
/* 26 - 36px */
.fs--36 {
    font-size: clamp(1.5rem, 1.2115rem + 1.1538vw, 2.25rem);
}
/* 24 - 32px */
.fs--32 {
    font-size: clamp(1.5rem, 1.3077rem + 0.7692vw, 2rem);
}
/* 22 - 28px */
.fs--28 {
    font-size: clamp(1.375rem, 1.2308rem + 0.5769vw, 1.75rem);
}
/* 20 - 24px */
.fs--24 {
    font-size: clamp(1.25rem, 1.1538rem + 0.3846vw, 1.5rem);
}
/* 18 - 22px */
.fs--22 {
    font-size: clamp(1.125rem, 1.0288rem + 0.3846vw, 1.375rem);
}
/* 18 - 20px */
.fs--20 {
    font-size: clamp(1.125rem, 1.0769rem + 0.1923vw, 1.25rem);
}
/* 16 - 18px */
.fs--18 {
    font-size: clamp(1rem, 0.9519rem + 0.1923vw, 1.125rem);
}
/* 15 - 16px */
.fs--16 {
    font-size: clamp(0.9375rem, 0.9135rem + 0.0962vw, 1rem);
}
.fs--14 {
    font-size: 14px;
}
.fs--12 {
    font-size: 12px;
}
.text-stroke--white {
	text-shadow: rgb(255, 255, 255) 1px 0px 0px, rgb(255, 255, 255) 0.540302px 0.841471px 0px, rgb(255, 255, 255) -0.416147px 0.909297px 0px, rgb(255, 255, 255) -0.989992px 0.14112px 0px, rgb(255, 255, 255) -0.653644px -0.756802px 0px, rgb(255, 255, 255) 0.283662px -0.958924px 0px, rgb(255, 255, 255) 0.96017px -0.279415px 0px;
}
.l-h--1 {
	line-height: 1;
}
.l-h--13 {
	line-height: 1.3;
}

.wp-block-heading {
    font-size: clamp(1.125rem, 1.0574rem + 0.2703vw, 1.25rem);
}

.fc--white {
    color: #fff;
}
.fc--light {
    color: var(--color-body-light);
}
.fc--dark {
    color: var(--color-bg-dark);
}
.fc--primary {
    color: var(--color-primary);
}
.fc--secondary {
    color: var(--color-secondary);
}
.fc--head-light {
	color: var(--color-headings--light);
}
.fc--head-medium {
	color: var(--color-headings--medium);
}
.fc--head-dark {
	color: var(--color-headings--dark);
}
.fc--body {
	color: var(--color-body-text);
}

.fw--700 {
    font-weight: 700;
}
.fw--600 {
    font-weight: 600;
}
.fw--500 {
    font-weight: 500;
}
.fw--400 {
    font-weight: 400;
}
.fw--300 {
    font-weight: 300;
}
.text--underline {
    text-decoration: underline;
}
.text--center {
    width: 100%;
    text-align: center;
}



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

main section:first-child .container {
	padding-top: 148px;
}

.container {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 1440px;
    padding: var(--sp-64-80) 20px;
    position: relative;
}
section {
	scroll-margin-top: 3rem;
}
@media(max-width: 540px) {
    .container {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/*
#page section:first-child .container {
    padding-top:24px;
}
*/
.pt--0 {
    padding-top: 0;
}
.pt--24 {
    padding-top: 24px;
}
.pb--0 {
    padding-bottom: 0;
}
.pt--xl {
	padding-top: clamp(5rem, 4.3421rem + 2.6316vw, 7.5rem); /* 80 - 120px */
}
.pb--xl {
	padding-bottom: clamp(5rem, 4.3421rem + 2.6316vw, 7.5rem); /* 80 - 120px */
}
.w--100 {
    width: 100%;
}

.col-wrap {
    display: flex;
    gap: var(--sp-40-80);
}

.col--80 {
    width: 80%;
}
.col--70 {
    width: 70%;
}
.col--65 {
    width: 65%;
}
.col--60 {
    width: 60%;
}
.col--55 {
    width: 55%;
}
.col--50 {
    width: 50%;
}
.col--45 {
    width: 45%;
}
.col--40 {
    width: 40%;
}
.col--35 {
    width: 35%;
}
.col--30 {
    width: 30%;
}
.col--20 {
    width: 20%;
}
.max-w--1080 {
    width: 100%;
    max-width: 1080px;
}
.max-w--900 {
	width: 100%;
    max-width: 900px;
}
.max-w--800 {
	width: 100%;
    max-width: 800px;
}
.max-w--750 {
	width: 100%;
    max-width: 750px;
}
.max-w--700 {
	width: 100%;
    max-width: 700px;
}
.max-w--650 {
	width: 100%;
    max-width: 650px;
}

@media (max-width: 992px) {
    .col-wrap {
        flex-direction: column;
    }
    .--mobile-reverse {
        flex-direction: column-reverse!important
    }
    .col--80,
    .col--70, 
    .col--65,
    .col--60,
    .col--55, 
    .col--50, 
    .col--45,
    .col--40,
    .col--35,
    .col--30,
    .col--20 {
        width: 100%;
    }
}
.p--relative {
	position: relative;
}
.d-flex--row {
	display: flex;
	flex-direction: row;
}
.vert--center {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.vert--bottom {
    display: flex;
    align-items: flex-end;
}
.align--right {
    margin-left: auto;
}
.align--center {
    margin-left: auto;
    margin-right: auto;
	display: flex;
    flex-direction: column;
    align-items: center;
}


.max-w--440 {
    width: 100%;
    max-width: 440px;
}
.max-w--640 {
    width: 100%;
    max-width: 640px;
}
.max-w--900 {
    width: 100%;
    max-width: 900px;
}
.mb--4 {
    margin-bottom: 4px;
}
.mb--6 {
    margin-bottom: 6px;
}
.mb--8 {
    margin-bottom: 8px;
}
.mb--12 {
    margin-bottom: 12px;
}
.mb--16 {
    margin-bottom: 16px;
}
.mb--24 {
    margin-bottom: 24px;
}
.mb--32 {
    margin-bottom: 32px;
}
.mb--40 {
    margin-bottom: 40px;
}
.mb--48 {
    margin-bottom: 48px;
}
.mb--56 {
    margin-bottom: 56px;
}
.mb--64 {
    margin-bottom: 64px;
}
.mb--80 {
    margin-bottom: 80px;
}
.mb--120 {
    margin-bottom: 120px;
}

.border-r--4 {
	border-radius: var(--border-radius--4);
}
.border-r--8 {
	border-radius: var(--border-radius--8);
}
.border-r--12 {
	border-radius: var(--border-radius--12);
}
.border-r--16 {
	border-radius: var(--border-radius--16);
}
.border-r--24 {
	border-radius: var(--border-radius--24);
}


.grid--2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
.grid--3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap:  24px;
}
.grid--4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap:  24px;
}
.grid--5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap:  24px;
}
.grid--6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap:  24px;
}
.grid--8 {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap:  24px;
}
@media (max-width: 1024px) {
    .grid--5 {
        grid-template-columns: repeat(3, 1fr);
    } 
    .grid--8 {
        grid-template-columns: repeat(4, 1fr);
    } 
}
@media (max-width: 991px) {
    .grid--6 {
        grid-template-columns: repeat(3, 1fr);
    }
    .grid--3 {
        grid-template-columns: repeat(1, 1fr);
    }
   .grid--4 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 540px) {
    .grid--2,
    .grid--3,
    .grid--4 {
        grid-template-columns: repeat(1, 1fr);
    }
    .grid--6,
    .grid--8 {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* #Progress
================================================== */

.progress-wrap {
	position: fixed;
	right: 10px;
	bottom: 10px;
	height: 46px;
	width: 46px;
	cursor: pointer;
	display: block;
	border-radius: 50px;
	box-shadow: inset  0 0 0 2px rgba(0,110,55,0.5);
	z-index: 990;
	opacity: 0;
	visibility: hidden;
	transform: translateY(15px);
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
}
.progress-wrap.active-progress {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.progress-wrap__icon {
	position: absolute;
	height: 18px;
	width: 18px;
	cursor: pointer;
	display: block;
	z-index: 1;
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.progress-wrap .progress-wrap__icon svg path {
    fill: #000
}
.progress-wrap:hover .progress-wrap__icon {
	opacity: 1;
}

.progress-wrap svg.progress-circle path { 
	fill: none; 
}
.progress-wrap svg.progress-circle path {
	stroke: grey;
	stroke-width: 4;
	box-sizing:border-box;
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
}





.faq-rep {
    width: 100%;
	align-items: start;
	gap: 24px 40px;
    
    .faq-el {
        padding: 18px 18px 18px 0;
        border-radius: 6px;
		border: 1px solid var(--color-tertiary);
		min-height: 66px;
		
        .faq-el__header {
            display: flex;
            position: relative;
            cursor: pointer;
            
            .faq-el__header__title {
               padding-left: 42px;
            }
            .faq-el__header__icon {
				position: absolute;
				left: -21px;
				top: 50%;
				transform: translateY(-50%);
                width: 42px;
                height: 42px;
				background: var(--color-primary);
                display: flex;
                align-items: center;
                border-radius: 0 12px 0 12px;;
                
                .faq__icon--1,
                .faq__icon--2 {
                    position: absolute;
                    left: 50%;
                    top: 50%;
                    transition: .2s;
                    transform: translate(-50%, -50%);
                }
                .faq__icon--1 {
                    transform: translate(-50%, -50%) rotate(90deg);
                }
            }
            &.active {
                .faq__icon--1 {
                    transform: translate(-50%, -50%) rotate(0deg);
                }
            }
        }
        .faq-el__content {
            padding-top: 16px;
            padding-left: 42px;
        }
    }
}
@media (max-width: 992px) {
	.d-mobile--none {
		display: none;
	}
	main section:first-child .container {
		padding-top: 120px;
	}
}
@media (max-width: 768px) {
	.faq-el__header__icon {
		left: -14px!important;
		width: 28px!important;
		height: 28px!important;
	}
}