/* 
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, .balance * {
  text-wrap: balance;
}

p {
	text-wrap: pretty;
}

.p-no-margin p:last-of-type{
    margin: 0 !important;
}

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

li {
	margin-bottom: 10px;
}

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


@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: calc(var(--vert) + 90px);
	--horz-extra: calc(var(--horz) * 1.5);
}

.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(--horz);
}

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

.pad-horz {
    padding-inline-start: var(--horz);
    padding-inline-end: var(--horz);
}

.pad-horz-extra {
    padding-inline-start: var(--horz-extra);
    padding-inline-end: var(--horz-extra);
}

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

.pad-btm {
    padding-block-end: var(--vert);
}

.pad-vert  {
    padding-block-start: var(--vert);
    padding-block-end: var(--vert);
}

.pad-vert-extra  {
    padding-block-start: var(--vert-extra);
    padding-block-end: var(--vert-extra);
}



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

main.elementor>.elementor-element:first-child {
    --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
}



/* Text Animations */


.textLineReveal .elementor-heading-title .line {
	overflow: hidden !important;
}
	
.textLineReveal.fadeInUp .elementor-heading-title .word {
	transform:translateY(100%);
}

.textLineReveal.fadeInUp .elementor-heading-title .word {
	animation: goUp 0.4s cubic-bezier(0, 0, 0.24, 1.02) forwards;
	transform-origin: 0 0;
}
	
.textWordReveal .elementor-heading-title .line {
	overflow: hidden !important;
}
	
.textWordReveal.fadeInUp .elementor-heading-title .word {
	transform:translateY(100%);
}

.textWordReveal.fadeInUp .elementor-heading-title .word {
	animation: goUp 0.4s cubic-bezier(0, 0, 0.24, 1.02) forwards;
	transform-origin: 0 0;
}

@keyframes goUp {
	0% {
		transform:translateY(100%);
	}
	100% {
		transform:translateY(0);
	}
}



/* Sequence Animation */

body:not(.elementor-editor-active) .sequence-container .sequence {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

body:not(.elementor-editor-active) .sequence-container .sequence.animated {
    opacity: 1;
    transform: translateY(0);
}