/*
Theme Name:   Hello Elementor Child
Theme URI:    https://elementor.com/hello-theme/
Description:  A lightweight child theme of Hello Elementor
Author URI:   https://emma42.com
Template:     hello-elementor
Version:      1.0.0
Text Domain:  hello-elementor-child
*/

@import url("../hello-elementor/style.css");  

:root {
	--width-global: 90%;
}

/* tablet */
@media (min-width: 768px) {
	:root { --width-global: 85%; }
}

/* laptop */
@media (min-width: 1024px) {
	:root { --width-global: 90%; }
}

/* desktop */
@media (min-width: 1280px) {
	:root { --width-global: 90%; }
}

/* large desktop */
@media (min-width: 1600px) {
	:root { --width-global: 60%; }
}

@media (min-width: 2400px) {
	:root { --width-global: 50%; }
}

@media (min-width: 2550px) {
	:root { --width-global: 40%; }
}

@media (min-width: 3200px) {
	:root { --width-global: 40%; }
}

/* Mobile : pleine largeur */
@media (max-width: 768px) {
	:root { --width-global: 100%; }
}

.gwidth {
	max-width: var(--width-global) !important;
	width: var(--width-global) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.gwidth .e-con-inner {
	max-width: var(--width-global) !important;
	width: var(--width-global) !important;
}

.gwidthn,
.elementor div.gwidthn{
	max-width: var(--width-global) !important;
	width: var(--width-global) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.gwidthn .e-con-inner {
	max-width: var(--width-global) !important;
	width: var(--width-global) !important;
}
/* =========================
   SELECTEUR DE LANGUE
   ========================= */

/* Langue principale : Fr / EN */
.lang_selec ul li a.elementor-item,

.lang_selec ul li a.elementor-item:hover,

.lang_selec ul li a.elementor-item:focus,

.lang_selec ul li a.elementor-item:active,

.lang_selec ul li a.elementor-item.elementor-item-active {
    color: #444 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Supprimer l'underline vert Elementor */

.lang_selec ul li a.elementor-item::after,

.lang_selec ul li a.elementor-item::before {
    background: transparent !important;
    color: transparent !important;
}

/* Flèche */

.lang_selec ul li a.elementor-item .sub-arrow,

.lang_selec ul li a.elementor-item .sub-arrow svg {
    color: #444 !important;
    fill: #444 !important;
}

/* =========================
   DROPDOWN
   ========================= */


.lang_selec ul .elementor-nav-menu--dropdown {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Tous les éléments du dropdown */
.lang_selec ul .elementor-nav-menu--dropdown li,
.lang_selec ul .elementor-nav-menu--dropdown li a {
    background: transparent !important;
    box-shadow: none !important;
}

/* Texte EN / FR */
.lang_selec ul .elementor-nav-menu--dropdown .elementor-sub-item {
    color: #444 !important;
    background: transparent !important;
    font-family: 'Gilroy-Medium', sans-serif !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 400 !important; 
    letter-spacing: -0.36px !important;	
    padding: 0 11px;
}

/* Hover */
.lang_selec ul .elementor-nav-menu--dropdown .elementor-sub-item:hover,
.lang_selec ul .elementor-nav-menu--dropdown .elementor-sub-item:focus,
.lang_selec ul .elementor-nav-menu--dropdown .elementor-sub-item:active {
    color: #444 !important;
    background: transparent !important;
}
/*cards icon */
.cards-icons p.elementor-icon-box-description{
    width: 100% !important;
}


/* Elément actif EN */
.lang_selec ul .elementor-nav-menu--dropdown .current-menu-item > a,
.lang_selec ul .elementor-nav-menu--dropdown .elementor-item-active {
    color: #444 !important;
    background: transparent !important;
}
.lang_selec ul {
    --e-global-color-accent: #444 !important;
    --e-global-color-primary: #444 !important;
}

.lang_selec ul .elementor-item:hover,
.lang_selec ul .elementor-item.elementor-item-active,
.lang_selec ul .elementor-sub-item:hover,
.lang_selec ul .elementor-sub-item.elementor-item-active {
    color: #444 !important;
    background-color: transparent !important;
}

/* =========================
   QA 24 août 2026
   ========================= */

@media (min-width: 1024px) {
    :root {
        --width-global: min(1600px, calc(100% - 80px));
    }

    .elementor-location-header .elementor-element-f470a29 {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }

    .elementor-location-header .elementor-element-1851eea9,
    .elementor-location-header .elementor-element-1851eea9 img {
        width: 148px !important;
        max-width: 148px !important;
    }

    .elementor-location-header .elementor-element-1851eea9 img {
        height: auto !important;
    }

 /*   .elementor-location-header .elementor-element-2c4717fc .elementor-button {
        width: 157px !important;
        min-width: 157px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 10px 20px !important;
        border-radius: 32px !important;
        font-family: "Poppins", sans-serif !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        line-height: 15.4px !important;
        white-space: nowrap !important;*/
    }/*
}















.page-id-1679 .ccw-title {
    width: 749px !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}



.page-id-1713 .ccw-title strong,
.page-id-1679 .ccw-title strong {
    font-family: "Gilroy-Medium", "Gilroy", sans-serif !important;
    font-weight: 500 !important;
}




#forminator-module-1658,
#forminator-module-1659 {
    width: 100% !important;
    max-width: 886px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 4px !important;
    box-sizing: border-box !important;
}

#forminator-module-1658 > .forminator-row,
#forminator-module-1659 > .forminator-row {
    margin-left: -13px !important;
    margin-right: -13px !important;
}

#forminator-module-1658 .forminator-col,
#forminator-module-1659 .forminator-col {
    padding-left: 13px !important;
    padding-right: 13px !important;
}

#forminator-module-1658 .forminator-field-address > .forminator-row,
#forminator-module-1659 .forminator-field-address > .forminator-row {
    margin-left: -13px !important;
    margin-right: -13px !important;
}

#forminator-module-1658 .forminator-label,
#forminator-module-1659 .forminator-label {
    margin-bottom: 6px !important;
    font-family: "Gilroy-Medium", "Gilroy", sans-serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    line-height: 28.8px !important;
}

#forminator-module-1658 .forminator-input,
#forminator-module-1659 .forminator-input,
#forminator-module-1658 .select2-selection,
#forminator-module-1659 .select2-selection {
    height: 38px !important;
    min-height: 38px !important;
}

#forminator-module-1658 .forminator-input,
#forminator-module-1659 .forminator-input,
#forminator-module-1658 .forminator-textarea,
#forminator-module-1659 .forminator-textarea,
#forminator-module-1658 .select2-selection__rendered,
#forminator-module-1659 .select2-selection__rendered,
#forminator-module-1658 .select2-selection__placeholder,
#forminator-module-1659 .select2-selection__placeholder {
    font-family: "Poppins", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: -0.28px !important;
}

#forminator-module-1658 .forminator-input,
#forminator-module-1659 .forminator-input {
    padding: 0 12px !important;
}

#forminator-module-1658 .forminator-textarea,
#forminator-module-1659 .forminator-textarea {
    height: 150px !important;
    min-height: 150px !important;
    max-height: 150px !important;
    padding: 9px 12px !important;
}

#forminator-module-1658 > .forminator-row:nth-of-type(2),
#forminator-module-1659 > .forminator-row:nth-of-type(2) {
    margin-bottom: 14.2px !important;
}

#forminator-module-1658 > .forminator-row:nth-of-type(3),
#forminator-module-1659 > .forminator-row:nth-of-type(3) {
    margin-bottom: 27.2px !important;
}

#forminator-module-1658 > .forminator-row:nth-of-type(4),
#forminator-module-1659 > .forminator-row:nth-of-type(4) {
    margin-bottom: 25.2px !important;
}

#forminator-module-1658 > .forminator-row:nth-of-type(5),
#forminator-module-1659 > .forminator-row:nth-of-type(5) {
    margin-bottom: 27.2px !important;
}

#forminator-module-1658 .forminator-checkbox__wrapper,
#forminator-module-1659 .forminator-checkbox__wrapper {
    align-items: flex-start !important;
}

#forminator-module-1658 .forminator-checkbox-box,
#forminator-module-1659 .forminator-checkbox-box {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
}

#forminator-module-1658 .forminator-consent__label,
#forminator-module-1659 .forminator-consent__label {
    width: calc(100% - 40px) !important;
    margin-left: 12px !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
}

#forminator-module-1658 .forminator-consent__label p,
#forminator-module-1659 .forminator-consent__label p {
    font-family: "Poppins", sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
}

#forminator-module-1658 .forminator-consent__label p:first-child,
#forminator-module-1659 .forminator-consent__label p:first-child {
    margin: 7px 0 0 !important;
    color: #000 !important;
    line-height: 17px !important;
}

#forminator-module-1658 .forminator-consent__label p:nth-child(2),
#forminator-module-1659 .forminator-consent__label p:nth-child(2) {
    width: calc(100% + 40px) !important;
    min-height: 85px !important;
    margin: 22px 0 0 -40px !important;
    color: #999 !important;
    line-height: 25px !important;
    text-align: justify !important;
}

#forminator-module-1658 > .forminator-row:nth-of-type(6),
#forminator-module-1659 > .forminator-row:nth-of-type(6) {
    margin-bottom: 22px !important;
}

#forminator-module-1658 > .forminator-row-last,
#forminator-module-1659 > .forminator-row-last {
    margin-bottom: 0 !important;
}

#forminator-module-1658 .forminator-button-submit,
#forminator-module-1659 .forminator-button-submit {
    display: block !important;
    width: 168px !important;
    min-width: 168px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 10px 29px !important;
    border-radius: 32px !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 15.4px !important;
}

@media (min-width: 1024px) {
    .elementor-location-footer .elementor-element-1853be4d {
        height: 367px !important;
        min-height: 367px !important;
        padding: 52px 40px 20px !important;
        box-sizing: border-box !important;
    }

    .elementor-location-footer .elementor-element-6312be6c {
        flex: 0 0 50% !important;
        width: 50% !important;
        padding-right: 0 !important;
        gap: 34px !important;
    }

    .elementor-location-footer .elementor-element-e21ada2 {
        flex: 0 0 18% !important;
        width: 18% !important;
    }

    .elementor-location-footer .elementor-element-290fb0a {
        flex: 0 0 10% !important;
        width: 10% !important;
    }

    .elementor-location-footer .elementor-element-5af04f7 {
        flex: 0 0 22% !important;
        width: 22% !important;
    }

    .elementor-location-footer .elementor-element-50ecfca,
    .elementor-location-footer .elementor-element-50ecfca img {
        width: 320px !important;
        max-width: 320px !important;
    }

    .elementor-location-footer #forminator-module-1047 {
        margin-bottom: 0 !important;
    }

    .elementor-location-footer #forminator-module-1047 .forminator-button-submit {
        width: 130px !important;
        min-width: 130px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 10px 11px !important;
        font-family: "Poppins", sans-serif !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        line-height: 15.4px !important;
    }

    .elementor-location-footer .elementor-icon-list-text {
        font-family: "Poppins", sans-serif !important;
        font-size: 18px !important;
        font-weight: 300 !important;
        line-height: 25px !important;
        color: #3e3e3e !important;
    }

    .elementor-location-footer .elementor-element-0edc614 {
        height: 96px !important;
        min-height: 96px !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
}


@media (min-width: 1024px) {
    .elementor-location-header .elementor-element-1851eea9 img {
        transform: translateY(2.5px);
    }

    .elementor-location-footer .elementor-element-e21ada2 {
        padding-left: 10px !important;
        box-sizing: border-box !important;
    }

    .elementor-location-footer .elementor-element-0edc614 {
        display: grid !important;
        grid-template-columns: 50% 30% 20% !important;
        align-items: start !important;
    }

    .elementor-location-footer .elementor-element-045c523,
    .elementor-location-footer .elementor-element-4651ddc,
    .elementor-location-footer .elementor-element-a5a0eab {
        width: 100% !important;
        max-width: none !important;
    }

    .elementor-location-footer .elementor-element-045c523 {
        padding: 11px 0 0 !important;
    }

    .elementor-location-footer .elementor-element-15e0ac3 {
        width: 270px !important;
        align-self: flex-start !important;
        text-align: left !important;
    }

    .elementor-location-footer .elementor-element-4651ddc {
        padding: 14px 0 0 !important;
    }

    .elementor-location-footer .elementor-element-0e82db0 {
        width: 100% !important;
        align-self: flex-start !important;
    }

    .elementor-location-footer .elementor-element-0e82db0 .elementor-nav-menu {
        justify-content: flex-start !important;
    }

    .elementor-location-footer .elementor-element-a5a0eab {
        padding: 19px 0 0 36px !important;
    }

    .elementor-location-footer .elementor-element-5c91fac {
        align-self: flex-start !important;
    }
}


/* Page d'accueil — QA 24 août */
.page-id-20 .ccw-overlay {
    background: radial-gradient(ellipse 76% 329% at 15% 56%, #008cf0 0%, #006ebd 50%, #00518a 100%) !important;
    opacity: 0.6 !important;
}

.page-id-20 .ccw-content {
    transform: translateY(39px);
}

.page-id-20 .ccw-title p {
    font-size: 44px !important;
    line-height: 50px !important;
    letter-spacing: 1px !important;
}

.page-id-20 .ccw-title-line-1 p {
    font-family: "Gilroy-Medium", "Gilroy", sans-serif !important;
    font-weight: 500 !important;
}

.page-id-20 .ccw-title-line-2 p {
    font-family: "Gilroy light", "Gilroy", sans-serif !important;
    font-weight: 300 !important;
}






/* === WEBSITE FINAL 25 AUG 2026: PAGE HEIGHT ROUNDING === */


/* === WEBSITE FINAL 25 AUG 2026: HOME FINAL PIXEL === */
@media (min-width:1025px){
  body.home.page-id-20 .elementor.elementor-20{
    margin-bottom:1px!important;
  }
}

/* === WEBSITE FINAL 25 AUG 2026: HOME FOOTER GAP === */
@media (min-width:1025px){
  body.home.page-id-20 .elementor.elementor-20{
    margin-bottom:0!important;
  }
  body.home.page-id-20 .elementor-location-footer{
    margin-top:0!important;
  }
  body.home.page-id-20 .elementor-20 > .elementor-element-faace35{
    margin-bottom:105px!important;
  }
}

/* === 25 AUG 2026: HOME RELIABILITY ULTRAWIDE ONLY === */
@media (min-width:1441px){
  body.home.page-id-20 .elementor-20 > .elementor-element-7d8154a{
    display:flex!important;
    width:1440px!important;
    max-width:1440px!important;
    margin:0 auto!important;
  }
}

/* === WEBSITE FINAL: MOBILE 430PX ALIGNMENT === */
@media (max-width: 767px) {
  /* Shared 64px header from Website Final. */
  .elementor-location-header,
  .elementor-location-header .elementor-element-f470a29 {
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
  }

  /* Shared 762px mobile footer, with the exact Figma order and coordinates. */
/*  .elementor-location-footer {
    position: relative !important;
    width: 100% !important;
    height: 762px !important;
    min-height: 762px !important;
    max-height: 762px !important;
    overflow: hidden !important;
  }
  .elementor-location-footer .elementor-element-1853be4d {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 580px !important;
    min-height: 580px !important;
    max-height: 580px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
*/




  .elementor-location-footer .elementor-element-045c523 {
    position: absolute !important;
    left: 0 !important;
    top: 137px !important;
    width: 100% !important;
    height: 29px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor-location-footer .elementor-element-15e0ac3 {
    width: 201px !important;
    height: 29px !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  /* Prevent the default 80/90px Elementor gaps between mobile page sections. */
  body > .elementor:not(.elementor-location-header):not(.elementor-location-footer) > .elementor-element {
    flex: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
  }

  /* HOME — exact section bands from the 430px Figma frame. */
  body.home.page-id-20 .elementor-20 > .elementor-element-099fdf8 { height: 467px !important; min-height: 467px !important; }
  body.home.page-id-20 .elementor-20 > .elementor-element-4d1e43c { height: 739px !important; min-height: 739px !important; }
  body.home.page-id-20 .elementor-20 > .elementor-element-b756fb7 { height: 89px !important; min-height: 89px !important; }
  body.home.page-id-20 .elementor-20 > .elementor-element-c707f15 { height: 274px !important; min-height: 274px !important; }
  body.home.page-id-20 .elementor-20 > .elementor-element-4a8e25e { height: 1370px !important; min-height: 1370px !important; }
  body.home.page-id-20 .elementor-20 > .elementor-element-7d8154a { position: relative !important; height: 501px !important; min-height: 501px !important; }
  body.home.page-id-20 .elementor-20 > .elementor-element-1cbd8f1 { position: relative !important; height: 626px !important; min-height: 626px !important; }
  body.home.page-id-20 .elementor-20 > .elementor-element-faace35 { height: 1698px !important; min-height: 1698px !important; }
  body.home.page-id-20 .elementor-element-099fdf8 .ccw-hero { height: 467px !important; min-height: 467px !important; }
  body.home.page-id-20 .elementor-element-099fdf8 .ccw-content { transform: none !important; }

  body.home.page-id-20 .elementor-element-7d8154a .elementor-element-b9c3e09 {
    position: absolute !important;
    left: 0 !important;
    top: 167px !important;
    width: 430px !important;
    height: 229px !important;
    margin: 0 !important;
  }
  body.home.page-id-20 .elementor-element-7d8154a .elementor-element-b9dae32 {
    width: 430px !important;
    height: 229px !important;
    margin: 0 !important;
    background: url("https://trihome.e42.ca/wp-content/uploads/2026/08/image-45-_1_.webp") center / contain no-repeat !important;
  }


  body.home.page-id-20 .elementor-element-d3732bb { position: absolute !important; left: 22px !important; top: 84px !important; width: 386px !important; }
  body.home.page-id-20 .elementor-element-e0e02b8 { position: absolute !important; left: 22px !important; top: 109px !important; width: 386px !important; }
  body.home.page-id-20 .elementor-element-f47148c { display: none !important; }
  body.home.page-id-20 .elementor-element-a7885b2 {
    position: absolute !important;
    left: 20px !important;
    top: 200px !important;
    width: 390px !important;
    height: 337px !important;
  }
  body.home.page-id-20 .elementor-element-61ec5e8 { width: 390px !important; height: 337px !important; }
  body.home.page-id-20 .elementor-element-faace35 .elementor-element-d4be7be { margin-top: 42px !important; height: 1561px !important; }
  body.home.page-id-20 .elementor-element-faace35 .e42-title { font-size: 22px !important; line-height: 25px !important; width: 249px !important; }
  body.home.page-id-20 .elementor-element-faace35 .e42-grid { row-gap: 60px !important; }
  body.home.page-id-20 .elementor-element-faace35 .e42-card { width: 392px !important; height: 437px !important; margin: 0 auto !important; }

  /* ABOUT — rebuild the first image/text block and match the Figma vertical rhythm. */

 
  body.page-id-23 .elementor-element-11f76e3 img { opacity: 0 !important; }
  body.page-id-23 .elementor-element-11c1ab0 { position: absolute !important; inset: 0 !important; width: 430px !important; height: 583px !important; }
  body.page-id-23 .elementor-element-53bb69d { position: absolute !important; left: 19px !important; top: 341px !important; width: 390px !important; height: 119px !important; }
  body.page-id-23 .elementor-element-cce95df { position: absolute !important; left: 19px !important; top: 446px !important; width: 390px !important; height: 137px !important; }
  body.page-id-23 .elementor-element-17f9c15 { position: absolute !important; inset: 0 !important; width: 430px !important; height: 713px !important; }
  body.page-id-23 .elementor-element-ff6207e { position: absolute !important; left: 22px !important; top: 64px !important; width: 386px !important; }








 



  

  /* PRIVACY + TERMS — exact 535px legal blocks and 50px inter-block rhythm. */
  body.page-id-78 .elementor-78 > .elementor-element-54d309d2,
  body.page-id-75 .elementor-75 > .elementor-element-a9fe301 { height: 249px !important; min-height: 249px !important; margin-top: 20px !important; margin-bottom: 56px !important; }
  body.page-id-78 .elementor-78 > .elementor-element-7e0a841,
  body.page-id-78 .elementor-78 > .elementor-element-206605d,
  body.page-id-78 .elementor-78 > .elementor-element-a30c037,
  body.page-id-78 .elementor-78 > .elementor-element-9bede24,
  body.page-id-78 .elementor-78 > .elementor-element-a1b1a3f,
  body.page-id-78 .elementor-78 > .elementor-element-246f878,
  body.page-id-78 .elementor-78 > .elementor-element-e50bf8c,
  body.page-id-78 .elementor-78 > .elementor-element-4ca03a1 { height: 535px !important; min-height: 535px !important; margin-bottom: 50px !important; }
  body.page-id-78 .elementor-78 > .elementor-element-4ca03a1 { margin-bottom: 114px !important; }
  body.page-id-75 .elementor-75 > .elementor-element-8bff0d8,
  body.page-id-75 .elementor-75 > .elementor-element-134a669,
  body.page-id-75 .elementor-75 > .elementor-element-f33f210,
  body.page-id-75 .elementor-75 > .elementor-element-68a389b { height: 1120px !important; min-height: 1120px !important; margin-bottom: 50px !important; }
  body.page-id-75 .elementor-75 > .elementor-element-68a389b { margin-bottom: 114px !important; }
}

@media (max-width: 767px) {
  /* Position corrections that must use transforms because Elementor keeps an
     internal positioned wrapper around these widgets. */
  body.home.page-id-20 .elementor-element-7d8154a .elementor-element-b9c3e09 {
    top: 167px !important;
    transform: translateY(-37px) !important;
  }
  body.home.page-id-20 .elementor-element-7d8154a .elementor-element-2b8d438 {
    top: 375px !important;
    transform: translateY(-121px) !important;
  }



  /* Contact and Demo: transforms create the Figma gap; padding contributes the
     same space to document flow so the footer begins at y=1732. */




  /* Terms: four Elementor sections each contain two 535px Figma blocks. */
  body.page-id-75 .elementor.elementor-75 {
    padding-bottom: 340px !important;
    box-sizing: content-box !important;
  }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-a9fe301 { transform: translateY(20px) !important; }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-8bff0d8 { transform: translateY(76px) !important; }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-134a669 { transform: translateY(126px) !important; }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-f33f210 { transform: translateY(176px) !important; }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-68a389b { transform: translateY(226px) !important; }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-8bff0d8,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-134a669,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-f33f210,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-68a389b {
    margin: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }
}

/* Final conflict-resolution pass: these selectors intentionally outrank the
   older QA rules already present in the child theme. */
@media (max-width: 767px) {
  /* Every mobile flex item must be allowed to shrink without pushing text
     outside the 430px canvas. */
  body:not(.page-id-78):not(.page-id-75) main .e-con,
  body:not(.page-id-78):not(.page-id-75) main .elementor-widget,
  body:not(.page-id-78):not(.page-id-75) main .elementor-widget-container {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }

  /* HOME: the two 650px cards in Figma sit at y=1633 and y=2353. */
  body.home.page-id-20 .elementor.elementor-20 > .elementor-element-4a8e25e {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    padding: 0 !important;
  }
  body.home.page-id-20 .elementor-element-4a8e25e .cs-container,
  body.home.page-id-20 .elementor-element-4a8e25e .cs-grid {
    display: block !important;
    width: 430px !important;
    max-width: 430px !important;
    height: 1370px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.home.page-id-20 .elementor-element-4a8e25e .cs-card {
    display: flex !important;
    flex-direction: column !important;
    width: 390px !important;
    max-width: 390px !important;
    height: 650px !important;
    min-height: 650px !important;
    margin: 0 auto 70px !important;
    overflow: hidden !important;
  }
  body.home.page-id-20 .elementor-element-4a8e25e .cs-card:last-child { margin-bottom: 0 !important; }
  body.home.page-id-20 .elementor-element-4a8e25e .cs-card-img-wrap {
    flex: 0 0 205px !important;
    width: 390px !important;
    height: 205px !important;
    min-height: 205px !important;
    overflow: hidden !important;
  }
  body.home.page-id-20 .elementor-element-4a8e25e .cs-card-img {
    width: 390px !important;
    height: 205px !important;
    object-fit: cover !important;
  }
  body.home.page-id-20 .elementor-element-4a8e25e .cs-card-content {
    flex: 0 0 445px !important;
    width: 390px !important;
    height: 445px !important;
    min-height: 445px !important;
    padding: 40px 21px 18px !important;
    box-sizing: border-box !important;
  }
  body.home.page-id-20 .elementor-element-7d8154a { overflow: hidden !important; }
  body.home.page-id-20 .elementor-element-7d8154a .elementor-element-b9c3e09 { top: 167px !important; }
  body.home.page-id-20 .elementor-element-7d8154a .elementor-element-2b8d438 {
    top: 375px !important;
    font-size: 14px !important;
    line-height: 18px !important;
  }
  body.home.page-id-20 .elementor-element-7d8154a .elementor-element-2b8d438 p {
    font-size: 14px !important;
    line-height: 18px !important;
    margin: 0 !important;
  }
  body.home.page-id-20 .elementor-element-1cbd8f1 { overflow: hidden !important; }
  body.home.page-id-20 .elementor-element-1cbd8f1 .elementor-element-a7885b2 { top: 118px !important; }




 
 

  
  
 





 



  /* LEGAL: the earlier generic rule had higher specificity and zeroed all
     vertical margins. Matching it restores the exact Figma spacing. */
  body.page-id-78 .elementor.elementor-78 > .elementor-element-54d309d2,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-a9fe301 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  body.page-id-78 .elementor.elementor-78 > .elementor-element-7e0a841,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-206605d,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a30c037,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-9bede24,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a1b1a3f,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-246f878,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-e50bf8c { margin-bottom: 0 !important; }
  body.page-id-78 .elementor.elementor-78 > .elementor-element-4ca03a1 { margin-bottom: 0 !important; }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-8bff0d8,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-134a669,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-f33f210 { margin-bottom: 0 !important; }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-68a389b { margin-bottom: 0 !important; }
}

@media (max-width: 767px) {
  body.home.page-id-20 .elementor.elementor-20 { overflow: hidden !important; }



  /* Exact legal block anatomy: 50px title + 30px gap + 455px body. */
  body.page-id-78 .elementor.elementor-78 > .elementor-element-7e0a841,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-206605d,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a30c037,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-9bede24,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a1b1a3f,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-246f878,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-e50bf8c,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-4ca03a1,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-8bff0d8,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-134a669,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-f33f210,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-68a389b {
    display: block !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: hidden !important;
  }
  body.page-id-78 .elementor.elementor-78 > .elementor-element-7e0a841 > .elementor-widget-heading,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-206605d > .elementor-widget-heading,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a30c037 > .elementor-widget-heading,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-9bede24 > .elementor-widget-heading,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a1b1a3f > .elementor-widget-heading,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-246f878 > .elementor-widget-heading,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-e50bf8c > .elementor-widget-heading,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-4ca03a1 > .elementor-widget-heading,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-8bff0d8 > .elementor-widget-heading,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-134a669 > .elementor-widget-heading,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-f33f210 > .elementor-widget-heading,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-68a389b > .elementor-widget-heading {
    width: 100% !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 0 30px !important;
    padding: 0 !important;
  }
  body.page-id-78 .elementor.elementor-78 > .elementor-element-7e0a841 > .elementor-widget-text-editor,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-206605d > .elementor-widget-text-editor,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a30c037 > .elementor-widget-text-editor,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-9bede24 > .elementor-widget-text-editor,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-a1b1a3f > .elementor-widget-text-editor,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-246f878 > .elementor-widget-text-editor,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-e50bf8c > .elementor-widget-text-editor,
  body.page-id-78 .elementor.elementor-78 > .elementor-element-4ca03a1 > .elementor-widget-text-editor,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-8bff0d8 > .elementor-widget-text-editor,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-134a669 > .elementor-widget-text-editor,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-f33f210 > .elementor-widget-text-editor,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-68a389b > .elementor-widget-text-editor {
    width: 100% !important;
    height: 455px !important;
    min-height: 455px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 20px !important;
    line-height: 25px !important;
  }
  body.page-id-78 .elementor.elementor-78 .elementor-widget-text-editor p,
  body.page-id-75 .elementor.elementor-75 .elementor-widget-text-editor p {
    margin: 0 !important;
    font-size: 20px !important;
    line-height: 25px !important;
  }
  body.page-id-75 .elementor.elementor-75 > .elementor-element-8bff0d8 > .elementor-widget-text-editor + .elementor-widget-heading,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-134a669 > .elementor-widget-text-editor + .elementor-widget-heading,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-f33f210 > .elementor-widget-text-editor + .elementor-widget-heading,
  body.page-id-75 .elementor.elementor-75 > .elementor-element-68a389b > .elementor-widget-text-editor + .elementor-widget-heading {
    margin-top: 50px !important;
  }
}

@media (max-width: 767px) {
  /* Four-pixel browser rounding unique to the Home composition. */
  body.home.page-id-20 .elementor-location-footer { margin-top: -4px !important; }

  /* Exact Figma video posters instead of the empty grey Elementor fallback. */
  body.home.page-id-20 .elementor-element-61ec5e8,
  body.home.page-id-20 .elementor-element-61ec5e8 .elementor-custom-embed-image-overlay {
    background-image: url("https://trihome.e42.ca/wp-content/uploads/2026/07/video_bg_home-scaled.webp") !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }
  body.single-post.postid-2412 .hero-video-box,
  body.single-post.postid-2412 .elementor-element-55484b2 .elementor-custom-embed-image-overlay {
    background-image: url("https://trihome.e42.ca/wp-content/uploads/2026/08/article-final-video.png") !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }

  /* Article listing title: the nested spans retained a 44px desktop size. */
  body.page-id-1211 .elementor-element-465f56c .e42-title,
  body.page-id-1211 .elementor-element-465f56c .e42-title *,
  body.page-id-1211 .elementor-element-465f56c .main-title,
  body.page-id-1211 .elementor-element-465f56c .sub-title {
    font-size: 22px !important;
    line-height: 25px !important;
  }
  body.page-id-1211 .elementor-element-465f56c .e42-title {
    width: 390px !important;
    max-width: 390px !important;
  }

  /* Website Final uses “Browse our articles & resources” here, not the
     temporary “Related articles” template label. */
  body.single-post .elementor-element-96cdb5a .e42-title,
  body.single-post .elementor-element-96cdb5a .e42-title * {
    font-size: 0 !important;
    line-height: 0 !important;
  }
  body.single-post .elementor-element-96cdb5a .e42-title::before {
    content: "Browse our articles\A& resources";
    display: block !important;
    white-space: pre-line !important;
    width: 249px !important;
    color: #008cf0 !important;
    font-family: Gilroy, sans-serif !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    line-height: 25px !important;
    letter-spacing: 1px !important;
  }

  /* Contact and Demo fields are 391px wide at x=19 in the Figma frame. */



@media (max-width: 767px) {
  body.home.page-id-20 .elementor-element-61ec5e8 .hero-video-box,
  body.single-post.postid-2412 .elementor-element-55484b2 .hero-video-box {
    position: relative !important;
    isolation: isolate !important;
    background-color: transparent !important;
  }
  body.home.page-id-20 .elementor-element-61ec5e8 .hero-video-box::before,
  body.single-post.postid-2412 .elementor-element-55484b2 .hero-video-box::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    display: block !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }
  body.home.page-id-20 .elementor-element-61ec5e8 .hero-video-box::before {
    background-image: url("https://trihome.e42.ca/wp-content/uploads/2026/07/video_bg_home-scaled.webp") !important;
  }
  body.single-post.postid-2412 .elementor-element-55484b2 .hero-video-box::before {
    background-image: url("https://trihome.e42.ca/wp-content/uploads/2026/08/article-final-video-1024x938.png") !important;
  }
}

@media (min-width: 768px) {
  body.home.page-id-20 .elementor-element-61ec5e8 .hero-video-box {
    position: relative !important;
    isolation: isolate !important;
    background-color: transparent !important;
  }
  body.home.page-id-20 .elementor-element-61ec5e8 .hero-video-box::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    display: block !important;
    background: url("https://trihome.e42.ca/wp-content/uploads/2026/07/video_bg_home-scaled.webp") center / cover no-repeat !important;
  }
}

@media (min-width: 1025px) {
  body.home.page-id-20 .elementor-location-footer { margin-top: -1px !important; }
}

/* ABOUT US — Website Final desktop frame (1440px).
   Keep the header untouched; only rebuild the first page section. */
@media (min-width: 1024px) {


  /* Privacy / Terms: restore the 40px desktop frame gutters from Figma. */
  body.page-id-78 .elementor-78 > .e-con.e-atomic-element.e-flexbox-base,
  body.page-id-75 .elementor-75 > .e-con.e-atomic-element.e-flexbox-base {
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
  }

  /* Article video: the 8.9MB original loaded after the section appeared.
     Use WordPress' optimized derivative with the same crop. */
  body.single-post.postid-2412 .hero-video-box {
    background-image: url("https://trihome.e42.ca/wp-content/uploads/2026/08/article-final-video-1024x938.png") !important;
    background-size: 108.06% auto !important;
    background-position: left -45.54px top -405.67px !important;
    background-repeat: no-repeat !important;
  }
}

/* TriHome Go: the four benefit-card descriptions in Elementor were copies of
   the About page. Display the approved Website Final wording at every size. */
body.page-id-1683 .elementor-element-cc00bab .elementor-icon-box-title {
  margin: 9px 0 14px !important;
}
body.page-id-1683 .elementor-element-0750f0a .elementor-icon-box-title {
  font-size: 0 !important;
  line-height: 0 !important;
}
body.page-id-1683 .elementor-element-0750f0a .elementor-icon-box-title::before {
  content: "Freedom & Mobility" !important;
  display: block !important;
  color: #3e3e3e !important;
  font-family: Gilroy, sans-serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  line-height: 28.8px !important;
  white-space: nowrap !important;
}
body.page-id-1683 .elementor-element-cc00bab .elementor-element-0750f0a .elementor-icon-box-description,
body.page-id-1683 .elementor-element-cc00bab .elementor-element-5c87230 .elementor-icon-box-description,
body.page-id-1683 .elementor-element-cc00bab .elementor-element-96604b7 .elementor-icon-box-description,
body.page-id-1683 .elementor-element-cc00bab .elementor-element-62a66d3 .elementor-icon-box-description {
  width: 296px !important;
  font-size: 0 !important;
  line-height: 0 !important;
}
body.page-id-1683 .elementor-element-cc00bab .elementor-icon-box-description::before {
  display: block !important;
  color: #3e3e3e !important;
  font-family: Poppins, sans-serif !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  line-height: 23px !important;
  text-align: justify !important;
}
body.page-id-1683 .elementor-element-0750f0a .elementor-icon-box-description::before {
  content: "Stay active and independent wherever life takes you." !important;
}
body.page-id-1683 .elementor-element-5c87230 .elementor-icon-box-description::before {
  content: "Your GPS location is shared instantly in case of emergency." !important;
}
body.page-id-1683 .elementor-element-96604b7 .elementor-icon-box-description::before {
  content: "Get help anytime with one simple press on your smartwatch." !important;
}
body.page-id-1683 .elementor-element-62a66d3 .elementor-icon-box-description::before {
  content: "Monitor your daily activity and stay informed about your health." !important;
}

@media (max-width: 767px) {
  body.page-id-1683 .elementor-element-cc00bab > .e-con {
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }
  body.page-id-1683 .elementor-element-cc00bab .elementor-widget-icon-box {
    padding: 45px 9px 10px 18px !important;
  }
  body.page-id-1683 .elementor-element-cc00bab .elementor-icon-box-description::before {
    font-size: 14px !important;
    line-height: 25px !important;
  }
}

@media (min-width: 1441px) {
  /* Product heroes keep the 1440px Website Final composition centered on
     ultrawide monitors; only the blue gradient continues to the viewport edge. */
  body.page-id-1681 .elementor-element-880899d,
  body.page-id-1683 .elementor-element-e7c1110 {
    background: linear-gradient(110deg, #35aaf2 37%, #00518a 83%) !important;
  }
  body.page-id-1681 .elementor-element-cb22327,
  body.page-id-1683 .elementor-element-3412ec3 {
    width: 1440px !important;
    max-width: 1440px !important;
    min-width: 1440px !important;
    flex: 0 0 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Sections that are 1360px wide at x=40 in the 1440px Figma frame. */
  .elementor-element-4d1e43c,
  .elementor-element-faace35,
  .elementor-element-719359a,
  .elementor-element-226bebd,
  .elementor-element-465f56c,
  .elementor-element-22ca95b,
  .elementor-element-96cdb5a {
    width: 1360px !important;
    max-width: 1360px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Final product CTA overlays retain their Figma x=40 coordinate inside the
     centered 1440px frame instead of staying pinned to the browser edge. */
  body.page-id-1681 .elementor-element-10ac1c4,
  body.page-id-1681 .elementor-element-aacbcf2,
  body.page-id-1683 .elementor-element-3476120,
  body.page-id-1683 .elementor-element-e5dcd5a {
    left: calc((100vw - 1440px) / 2 + 40px) !important;
  }

  /* Legal pages: the blue title band is 1440px; text sections start at x=0
     inside that frame and carry their own 40px content gutters. */
  body.page-id-78 .elementor-78 > .elementor-element-54d309d2,
  body.page-id-75 .elementor-75 > .elementor-element-a9fe301 {
    width: 1440px !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.page-id-78 .elementor-78 > .elementor-element-7e0a841,
  body.page-id-78 .elementor-78 > .elementor-element-206605d,
  body.page-id-78 .elementor-78 > .elementor-element-a30c037,
  body.page-id-78 .elementor-78 > .elementor-element-9bede24,
  body.page-id-78 .elementor-78 > .elementor-element-a1b1a3f,
  body.page-id-78 .elementor-78 > .elementor-element-246f878,
  body.page-id-78 .elementor-78 > .elementor-element-e50bf8c,
  body.page-id-78 .elementor-78 > .elementor-element-4ca03a1,
  body.page-id-75 .elementor-75 > .elementor-element-8bff0d8,
  body.page-id-75 .elementor-75 > .elementor-element-134a669,
  body.page-id-75 .elementor-75 > .elementor-element-f33f210,
  body.page-id-75 .elementor-75 > .elementor-element-68a389b {
    width: 1360px !important;
    max-width: 1360px !important;
    margin-left: calc((100vw - 1440px) / 2) !important;
    margin-right: 0 !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    transform: translateX(calc((100vw - 1440px) / 2)) !important;
  }

  /* Keep the Figma footer composition inside its 1440px frame while the
     lavender background continues across the full viewport. */
  .elementor-location-footer {
    background: #edeffc !important;
  }
  .elementor-location-footer > .elementor-element-1853be4d,
  .elementor-location-footer > .elementor-element-0edc614 {
    width: 1440px !important;
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (min-width: 768px) {
  body.single-post.postid-2412 .elementor-element-55484b2 .hero-video-box {
    position: relative !important;
    isolation: isolate !important;
    background-image: none !important;
  }
  body.single-post.postid-2412 .elementor-element-55484b2 .hero-video-box::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    display: block !important;
    background-image: url("https://trihome.e42.ca/wp-content/uploads/2026/08/article-final-video-1024x938.png") !important;
    background-size: 108.06% auto !important;
    background-position: left -45.54px top -405.67px !important;
    background-repeat: no-repeat !important;
  }
}
/* home page header */
.ccw-description {
	margin-bottom:50px!important;
}

/** dropdown menu nav **/ 
ul.sub-menu.elementor-nav-menu--dropdown {
	border-radius: 0 0 10px 10px;
	overflow:hidden!important;
}

#first_text_about h1.mwt-wrapper {
    line-height: 22px !important;
}

.forminator-ui#forminator-module-1659.forminator-design--default .forminator-checkbox, .forminator-ui#forminator-module-1659.forminator-design--default .forminator-checkbox__label, .forminator-ui#forminator-module-1659.forminator-design--default .forminator-checkbox__label p {
    font-size: 14px!important;
    font-family: Poppins!important;
    font-weight: 400!important;
}
.forminator-ui#forminator-module-1659.forminator-design--default .forminator-button-submit {
    font-size: 14px;
    font-family: Poppins!important;
    font-weight: 500;
}
	
	/** fixed marge bottom style **/ 
	.footer_mobile.gwidthn {
      margin-block-end:inherit!important;
}
	
	.hiw-illustration{
    padding:0px!important;
}
  

