/* 
Theme Name: A&H Theme
Description: Custom WordPress Theme
Author: Archer & Hound Advertising
Author URI: https://archerandhound.com/
Template: hello-elementor
Version: 2.0.0
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


html, body {
	max-width: 100%;
	overflow-x: hidden;
}

body {
    -webkit-font-smoothing: antialiased;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

* {
	scroll-behavior: smooth;
	scroll-margin-top: 100px;
}

.grecaptcha-badge { 
    visibility: hidden !important;
}

/* --- */


footer {
  margin-top: auto;
}

h1, h2, h3, h4, h5, h6, .elementor-heading-title {
  text-wrap: balance;
}

p {
	text-wrap: pretty;
}

ul, ol {
	margin: 30px 0px;
}

li {
	margin-bottom: 10px;
}

button, .elementor-button, a {
    cursor: pointer;
}

button:not(.cky-btn), .elementor-button {
    margin-top: 10px;
}

@media only screen and (min-width:768px) {
    button, .elementor-button {
        white-space: nowrap;
    }
}


/*Containers*/
:root {
	--vert: clamp(60px, 12%, 80px);
	--horz: clamp(30px, 7%, 60px);
	--vert-extra: clamp(150px, 18%, 170px);
	--horz-extra: clamp(200px, 20%, 240px);
}

.no-pad, .no-pad.e-con>.e-con-inner {
    padding-block-start: 0;
    padding-block-end: 0;
    padding-inline-start: 0;
    padding-inline-end: 0;
}

.pad-right {
    padding-inline-end: var(--container-default-padding-right, --horz);
}

.pad-left {
    padding-inline-start: var(--container-default-padding-left, --horz);
}

.pad-horz {
    padding-inline-start: var(--container-default-padding-left, --horz);
    padding-inline-end: var(--container-default-padding-right, --horz);
}

.pad-horz-extra {
    padding-inline-start: var(--container-default-padding-left, --horz-extra);
    padding-inline-end: var(--container-default-padding-right, --horz-extra);
}

.pad-top {
    padding-block-start: var(--container-default-padding-top, --vert);
}

.pad-btm {
    padding-block-end: var(--container-default-padding-bottom, --vert);
}

.pad-vert  {
    padding-block-start: var(--container-default-padding-top, --vert);
    padding-block-end: var(--container-default-padding-bottom, --vert);
}

.pad-vert-extra  {
    padding-block-start: var(--container-default-padding-top, --vert-extra);
    padding-block-end: var(--container-default-padding-bottom, --vert-extra);
}



/*Default padding for 1st container on every page*/

.elementor:not([data-elementor-type="header"], [data-elementor-type="footer"], [data-elementor-type="popup"]) .e-con:first-of-type:not(.e-con *) {
    --container-default-padding-top: var(--vert-extra);
}

.site-main {
	padding-top: var(--vert-extra);
}



/* Animations */

@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translate3d(0,-100px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInDown {
    animation-name: fadeDown
}

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translate3d(-100px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInLeft {
    animation-name: fadeLeft
}

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translate3d(100px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInRight {
    animation-name: fadeRight
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translate3d(0,100px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInUp {
    animation-name: fadeUp
}