/*
Theme Name: Hello IP Guardian
Theme URI: https://elementor.com
Description: Child theme for Hello Elementor to suit IP Guardian
Author: CLIQ Marketing Content
Author URI: https://cliqmc.com.au/
Template: hello-elementor
Version: 1.0.0
*/

/* Base + utility classes only. Every feature lives in its own module
   under assets/css/ — see README.md and inc/enqueue.php for the list
   and load order. Add one-off helpers here; add features as modules. */

html, body {
    overflow-x: hidden !important;
}

/* Site Feedback plugin overlay: it sizes .pfw-layer to the page's full
   scroll width, which includes content the rule above clips (e.g. the
   homepage device graphic bleeding 100px off the right on mobile). As an
   absolutely positioned layer it escapes that clip, so phones get a
   genuinely wider page and sideways scrolling. Capping it at the
   viewport stops that. Harmless once the plugin is gone at launch. */
.pfw-layer {
    max-width: 100vw !important;
}

a {
   transition: all ease 0.3s; 
}

.nowrap {
    text-wrap: nowrap;
}
.square {
	aspect-ratio: 1 / 1;
}

.carousel.off-canvas .swiper {
    overflow: visible;
}

.carousel.big-arrow .elementor-swiper-button {
    width: 48px;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.carousel.big-arrow .elementor-swiper-button:hover {
    width: 56px;
    height: 56px;
    margin: 0px -4px;
}

.carousel.big-arrow .swiper-button-disabled {
    opacity: 0 !important;
}

.carousel.small-arrow .elementor-swiper-button {
    width: 36px;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.carousel.big-arrow .elementor-swiper-button:hover {
    width: 40px;
    height: 40px;
    margin: 0px -4px;
}

.carousel.big-arrow .swiper-button-disabled {
    opacity: 0 !important;
}

.rounded-edges .elementor-motion-effects-container {
    border-radius: 24px;
}

ul {
    margin-bottom: 0px;
}

p {
    text-wrap: pretty;
}

.ipg {
    display: flex;
}

strong {
    font-weight: 500;
}

.pel-review-more:hover, .pel-review-more:active, .pel-review-more:focus {
    background-color: #FFFFFF00 !important;
}

.grayscale img {
    aspect-ratio: 21 / 9;
    filter: grayscale(100%);
    transition: all ease 0.3s;
}
.grayscale img:hover {
    filter: grayscale(0%);
}

.balance-text * {
    text-wrap: balance;
}

.tile .service-tile-cta {
    padding: 8px 8px 8px 16px;
    background-color: var(--ipg-white);
    border: solid 2px var(--ipg-cobalt) !important;
    border-radius: 999px;
    transition: all ease 0.3s;
}
.tile:hover .service-tile-cta {
    background-color: var(--ipg-cobalt);
}
.tile:hover .service-tile-cta .elementor-icon {
    background-color: var(--ipg-white) !important;
}
.tile:hover .service-tile-cta i {
    color: var(--ipg-cobalt) !important;
}
.tile:hover .service-tile-cta .elementor-icon-box-description {
    color: var(--ipg-white) !important;
}

.button-reset * {
    padding: 0px !important;
    border: none !important;
    font-size: 18px !important;
    color: var(--ipg-darknavy);
}

@media (max-width:767px) {
    .carousel.big-arrow .elementor-swiper-button {
    width: 36px;
    height: 36px;
    }
    .carousel.big-arrow .elementor-swiper-button:hover {
    width: 40px;
    height: 40px;
    }
    .wcu-icon-box {
    width: 300px;
    max-width: calc(100vw - 50px);
    }
}
