.elementor-625 .elementor-element.elementor-element-be1a424{--display:flex;}.elementor-625 .elementor-element.elementor-element-be1a424.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-625 .elementor-element.elementor-element-21f6c02{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-3b11ab7{--display:flex;}.elementor-625 .elementor-element.elementor-element-1862373{--display:flex;}.elementor-625 .elementor-element.elementor-element-590a10c .elementor-heading-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#39FFAE;}.elementor-625 .elementor-element.elementor-element-73e1237 .elementor-heading-title{font-size:40px;}.elementor-625 .elementor-element.elementor-element-0c5ef9a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-a298a46{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-625 .elementor-element.elementor-element-f0a5219{--display:flex;}.elementor-625 .elementor-element.elementor-element-ac87133{--display:flex;}.elementor-625 .elementor-element.elementor-element-0fc3db5{--display:flex;}.elementor-625 .elementor-element.elementor-element-27fc001{--display:flex;}.elementor-625 .elementor-element.elementor-element-e99e082 .elementor-button{background-color:#63FFC2;fill:#06110D;color:#06110D;}.elementor-625 .elementor-element.elementor-element-e99e082 .elementor-button:hover, .elementor-625 .elementor-element.elementor-element-e99e082 .elementor-button:focus{background-color:#8AFFD1;}.elementor-625 .elementor-element.elementor-element-e99e082:hover{--e-transform-translateY:-3px;}.elementor-625 .elementor-element.elementor-element-ad82d44 .elementor-button{background-color:#0C912326;border-style:solid;border-width:1px 1px 1px 1px;border-color:#05AC676B;}.elementor-625 .elementor-element.elementor-element-ad82d44 .elementor-button:hover, .elementor-625 .elementor-element.elementor-element-ad82d44 .elementor-button:focus{background-color:#39FFAE06;}.elementor-625 .elementor-element.elementor-element-ad82d44:hover{--e-transform-translateY:-3px;}.elementor-625 .elementor-element.elementor-element-6228dbb{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-a09dab7{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-ade5a0d.elementor-element{--align-self:flex-start;}.elementor-625 .elementor-element.elementor-element-516237a .elementor-heading-title{font-size:40px;font-weight:800;}.elementor-625 .elementor-element.elementor-element-e363494{--display:flex;}.elementor-625 .elementor-element.elementor-element-344a0b5{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-dc0e53c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-46c7616{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-acd9b11{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-ab8dc79{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-1c1c1ed{--display:flex;}.elementor-625 .elementor-element.elementor-element-0f13070 .elementor-heading-title{font-size:12px;font-weight:600;letter-spacing:1px;color:#39FFAE;}.elementor-625 .elementor-element.elementor-element-4d9b486{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-bf1f317{color:#6F8A77;}.elementor-625 .elementor-element.elementor-element-c5c2e2c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-68c1fc6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-6b123e8.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-bcc7443.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-6e913e8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-76396c5.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-6a82153.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-7c560d4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-b5f68a7.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-1e45604.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-b5f93d9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-7f16545.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-57be3ad.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-a0bfad9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-4f0929d.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-d0e55dc.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-7f3367d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-6851800.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-76fc190.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-e537cd3{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-27b6358.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-b13762c.elementor-element{--align-self:center;}.elementor-625 .elementor-element.elementor-element-3e9a9a0{--display:flex;}.elementor-625 .elementor-element.elementor-element-3734355{--display:flex;}.elementor-625 .elementor-element.elementor-element-f3d34be{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-3f8512f{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.woocommerce .elementor-625 .elementor-element.elementor-element-382e2d8 .woocommerce-product-gallery__trigger + .woocommerce-product-gallery__wrapper,
				.woocommerce .elementor-625 .elementor-element.elementor-element-382e2d8 .flex-viewport, .woocommerce .elementor-625 .elementor-element.elementor-element-382e2d8 .flex-control-thumbs img{border-style:double;}.woocommerce .elementor-625 .elementor-element.elementor-element-382e2d8 .woocommerce-product-gallery__trigger + .woocommerce-product-gallery__wrapper,
					.woocommerce .elementor-625 .elementor-element.elementor-element-382e2d8 .flex-viewport{border-radius:20px 20px 20px 20px;}.elementor-625 .elementor-element.elementor-element-aa80e4e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-f726cfa{--display:flex;}.elementor-625 .elementor-element.elementor-element-958e5c3 .elementor-icon-wrapper{text-align:center;}.elementor-625 .elementor-element.elementor-element-7f78878{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-de0f016{--display:flex;}.elementor-625 .elementor-element.elementor-element-5bfd77d .elementor-icon-wrapper{text-align:center;}.elementor-625 .elementor-element.elementor-element-07727f1{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-40e8c51{--display:flex;}.elementor-625 .elementor-element.elementor-element-dfa7a64 .elementor-icon-wrapper{text-align:center;}.elementor-625 .elementor-element.elementor-element-3046eea{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-ee22a98{--display:flex;}.elementor-625 .elementor-element.elementor-element-af04ad7 .elementor-icon-wrapper{text-align:center;}.elementor-625 .elementor-element.elementor-element-0ff46e5{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-0d5f9ea{--display:flex;}.elementor-625 .elementor-element.elementor-element-8943726 .elementor-icon-wrapper{text-align:center;}.elementor-625 .elementor-element.elementor-element-e34b3db{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-32f497e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-a826b69{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-2fbfab5 .elementor-icon-wrapper{text-align:center;}.elementor-625 .elementor-element.elementor-element-0e84c6b{--display:flex;}.elementor-625 .elementor-element.elementor-element-5f8e149{--display:flex;}.elementor-625 .elementor-element.elementor-element-63a7ffb{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-15759a1{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-8719946{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-d8839d6{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-4e6d69f{--display:flex;}.elementor-625 .elementor-element.elementor-element-22270f6{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-4ef1c30{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-22f0519{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-44a2672{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-5036c8a{--display:flex;}.elementor-625 .elementor-element.elementor-element-0488ab2{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-ba7da06{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-82f4244{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-870ab4e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-b2d3e1c .elementor-icon-wrapper{text-align:center;}.elementor-625 .elementor-element.elementor-element-ec44f43{--display:flex;}.elementor-625 .elementor-element.elementor-element-adeff07{--display:flex;}.elementor-625 .elementor-element.elementor-element-50ab96a{--display:flex;}.elementor-625 .elementor-element.elementor-element-394b3f5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-65a3470{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-f0eeffd{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-03d6b55{--display:flex;}.elementor-625 .elementor-element.elementor-element-3f5a8c9{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-65acab7{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-73bdb28{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-552b2e1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-602d9d1{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-40c420e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-8447514{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-3b5d243{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-e209170{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-59598b2{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-f1a584e{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-f7f25e4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-ee78017{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-625 .elementor-element.elementor-element-a7a82ec{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-420930d{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-9199546{--display:flex;}.elementor-625 .elementor-element.elementor-element-dfe0d21{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-c7573f0{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-625 .elementor-element.elementor-element-485d1c5{--display:flex;}.elementor-625 .elementor-element.elementor-element-316b3a6{--display:flex;}.elementor-625 .elementor-element.elementor-element-5fa1331{--display:flex;}.elementor-625 .elementor-element.elementor-element-b8dcb5d{--display:flex;}.elementor-625 .elementor-element.elementor-element-831eb51{--display:flex;}.elementor-625 .elementor-element.elementor-element-f807dd2{--display:flex;}.elementor-625 .elementor-element.elementor-element-ee7eb65{--display:flex;}.elementor-625 .elementor-element.elementor-element-06f5339{--display:flex;}.elementor-625 .elementor-element.elementor-element-8f8f7ed{--display:flex;}.elementor-625 .elementor-element.elementor-element-0719ac2{--display:flex;}.elementor-625 .elementor-element.elementor-element-b112cc8{--display:flex;}.elementor-625 .elementor-element.elementor-element-67e0d57{--display:flex;}.elementor-625 .elementor-element.elementor-element-50cfbf5{--n-accordion-title-font-size:1rem;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:15px;}.elementor-625 .elementor-element.elementor-element-1dc0d03{--display:flex;}.elementor-625 .elementor-element.elementor-element-c4ca5cf{--display:flex;}.elementor-625 .elementor-element.elementor-element-554bc79{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-c7b9c86{--display:flex;}.elementor-625 .elementor-element.elementor-element-b54cb6f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-625 .elementor-element.elementor-element-db7f554{--display:flex;}@media(max-width:1024px){.elementor-625 .elementor-element.elementor-element-a298a46{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-625 .elementor-element.elementor-element-be1a424{--width:81.869%;}.elementor-625 .elementor-element.elementor-element-3b11ab7{--width:45%;}.elementor-625 .elementor-element.elementor-element-1862373{--width:55%;}.elementor-625 .elementor-element.elementor-element-a298a46{--width:100%;}.elementor-625 .elementor-element.elementor-element-aa80e4e{--width:83%;}}@media(max-width:767px){.elementor-625 .elementor-element.elementor-element-a298a46{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for container, class: .elementor-element-be1a424 *//* =========================================================
   GN FORTUNE PRODUCT HERO V2
   Elementor Optimized
========================================================= */

.gn-product-hero{
    position:relative !important;
    overflow:hidden !important;
    isolation:isolate;
    width:100% !important;

    background:#070D0B !important;

    padding:72px 30px 82px !important;
}

/* GRID BACKGROUND */
.gn-product-hero::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;

    background-image:
        linear-gradient(rgba(57,255,174,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(57,255,174,.045) 1px,transparent 1px);

    background-size:72px 72px;

    -webkit-mask-image:
        linear-gradient(to bottom,#000 0%,rgba(0,0,0,.65) 65%,transparent 100%);
    mask-image:
        linear-gradient(to bottom,#000 0%,rgba(0,0,0,.65) 65%,transparent 100%);

    pointer-events:none;
}

/* GREEN GLOW */
.gn-product-hero::after{
    content:"";
    position:absolute;

    width:800px;
    height:800px;

    left:-330px;
    top:-410px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(57,255,174,.15) 0%,
            rgba(57,255,174,.055) 35%,
            transparent 70%
        );

    filter:blur(18px);

    z-index:-1;
    pointer-events:none;
}


/* =========================================================
   MAIN TWO COLUMN LAYOUT
========================================================= */

.gn-product-hero .gn-hero-inner{
    position:relative !important;

    width:100% !important;
    max-width:1280px !important;

    margin:0 auto !important;

    display:grid !important;

    grid-template-columns:
        minmax(0,1.05fr)
        minmax(0,.95fr) !important;

    gap:68px !important;

    align-items:center !important;

    flex-direction:unset !important;
}


/* Elementor children */
.gn-product-hero .gn-hero-inner > .e-con{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}


/* =========================================================
   LEFT PRODUCT VISUAL
========================================================= */

.gn-product-hero .gn-hero-visual{
    position:relative !important;

    width:100% !important;
    max-width:none !important;

    min-height:570px !important;
    height:570px !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    overflow:hidden !important;

    padding:45px !important;

    border-radius:28px !important;

    background:
        linear-gradient(
            145deg,
            #101915 0%,
            #0A110E 60%,
            #101914 100%
        ) !important;

    border:
        1px solid rgba(57,255,174,.14) !important;

    box-shadow:
        0 35px 90px rgba(0,0,0,.32),
        inset 0 1px 0 rgba(255,255,255,.025) !important;
}


/* PRODUCT INNER GLOW */
.gn-product-hero .gn-hero-visual::before{
    content:"";

    position:absolute;

    width:500px;
    height:500px;

    left:50%;
    top:48%;

    transform:translate(-50%,-50%);

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(57,255,174,.12),
            rgba(57,255,174,.035) 42%,
            transparent 70%
        );

    pointer-events:none;
}


/* DECORATIVE RINGS */
.gn-product-hero .gn-hero-visual::after{
    content:"";

    position:absolute;

    width:350px;
    height:350px;

    right:-210px;
    bottom:-220px;

    border-radius:50%;

    border:1px solid rgba(57,255,174,.09);

    box-shadow:
        0 0 0 60px rgba(57,255,174,.014),
        0 0 0 120px rgba(57,255,174,.008);

    pointer-events:none;
}


/* =========================================================
   PRODUCT IMAGE
========================================================= */

.gn-product-hero .gn-hero-image{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:500px !important;

    margin:auto !important;
}

.gn-product-hero .gn-hero-image .elementor-widget-container{
    width:100%;
}

.gn-product-hero .gn-hero-image img{
    display:block !important;

    width:100% !important;
    max-width:500px !important;

    height:auto !important;
    max-height:460px !important;

    object-fit:contain !important;

    margin:auto !important;

    filter:
        drop-shadow(0 30px 30px rgba(0,0,0,.28));

    transition:
        transform .4s ease,
        filter .4s ease;
}

.gn-product-hero .gn-hero-visual:hover .gn-hero-image img{
    transform:
        translateY(-5px)
        scale(1.012);

    filter:
        drop-shadow(0 36px 34px rgba(0,0,0,.32));
}


/* =========================================================
   OPTIONAL IMAGE INFO
========================================================= */

.gn-product-hero .gn-image-info{
    position:absolute !important;

    left:20px !important;
    right:20px !important;
    bottom:20px !important;

    width:auto !important;

    z-index:5;

    padding:13px 16px !important;

    display:flex !important;
    flex-direction:row !important;

    align-items:center !important;
    justify-content:space-between !important;

    border-radius:13px !important;

    background:
        rgba(7,13,11,.76) !important;

    border:
        1px solid rgba(57,255,174,.15) !important;

    backdrop-filter:blur(15px);
    -webkit-backdrop-filter:blur(15px);
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.gn-product-hero .gn-hero-content{
    position:relative !important;

    width:100% !important;
    max-width:none !important;

    padding:5px 0 !important;

    display:flex !important;
    flex-direction:column !important;

    align-items:flex-start !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.gn-product-hero .gn-eyebrow{
    position:relative;

    width:auto !important;

    margin:0 0 20px !important;

    display:flex !important;
    flex-direction:row !important;

    align-items:center !important;

    gap:10px !important;

    color:#39FFAE !important;

    font-size:11px !important;
    font-weight:700 !important;

    line-height:1.3 !important;

    letter-spacing:1.8px !important;

    text-transform:uppercase;
}

.gn-product-hero .gn-eyebrow *,
.gn-product-hero .gn-eyebrow p,
.gn-product-hero .gn-eyebrow span,
.gn-product-hero .gn-eyebrow .elementor-heading-title{
    margin:0 !important;

    color:#39FFAE !important;

    font-size:inherit !important;
    font-weight:inherit !important;

    letter-spacing:inherit !important;
}


/* DOT */
.gn-product-hero .gn-eyebrow::before{
    content:"";

    width:6px;
    height:6px;

    flex:0 0 6px;

    border-radius:50%;

    background:#39FFAE;

    box-shadow:
        0 0 8px rgba(57,255,174,.9),
        0 0 16px rgba(57,255,174,.35);
}


/* LINE */
.gn-product-hero .gn-eyebrow::after{
    content:"";

    width:27px;
    height:1px;

    flex:0 0 27px;

    background:#39FFAE;

    opacity:.55;
}


/* =========================================================
   H1
========================================================= */

.gn-product-hero .gn-hero-title{
    width:100% !important;

    margin:0 !important;
}

.gn-product-hero .gn-hero-title h1,
.gn-product-hero .gn-hero-title .elementor-heading-title{

    margin:0 !important;

    max-width:620px !important;

    color:#F4FFF9 !important;

    font-size:58px !important;

    line-height:1.04 !important;

    letter-spacing:-2.5px !important;

    font-weight:600 !important;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.gn-product-hero .gn-hero-description{
    width:100% !important;
    max-width:600px !important;

    margin:
        23px 0 29px !important;
}

.gn-product-hero .gn-hero-description p,
.gn-product-hero .gn-hero-description span,
.gn-product-hero .gn-hero-description{
    color:#91A69E !important;

    font-size:16px !important;

    line-height:1.7 !important;

    font-weight:400 !important;
}

.gn-product-hero .gn-hero-description p{
    margin:0 !important;
}


/* =========================================================
   DATA GRID
========================================================= */

.gn-product-hero .gn-hero-data{

    width:100% !important;
    max-width:610px !important;

    display:grid !important;

    grid-template-columns:
        repeat(2,minmax(0,1fr)) !important;

    grid-template-rows:
        repeat(2,auto) !important;

    flex-direction:unset !important;

    gap:0 !important;

    margin:
        0 0 30px !important;

    padding:0 !important;

    border-top:
        1px solid rgba(255,255,255,.10);

    border-bottom:
        1px solid rgba(255,255,255,.10);
}


/* FORCE ELEMENTOR CHILD WIDTH */
.gn-product-hero .gn-hero-data > .gn-data-item{

    width:100% !important;

    max-width:none !important;

    min-width:0 !important;

    min-height:83px !important;

    margin:0 !important;

    padding:
        17px 18px !important;

    display:flex !important;

    align-items:center !important;

    box-sizing:border-box;
}


/* LEFT COLUMN */
.gn-product-hero .gn-data-item:nth-child(odd){
    padding-left:0 !important;
}


/* RIGHT COLUMN */
.gn-product-hero .gn-data-item:nth-child(even){

    border-left:
        1px solid rgba(255,255,255,.10);
}


/* FIRST ROW */
.gn-product-hero .gn-data-item:nth-child(1),
.gn-product-hero .gn-data-item:nth-child(2){

    border-bottom:
        1px solid rgba(255,255,255,.10);
}


/* =========================================================
   DATA TEXT
========================================================= */

.gn-product-hero .gn-data-item .elementor-widget-container,
.gn-product-hero .gn-data-item p{

    margin:0 !important;
}

.gn-product-hero .gn-data-label,
.gn-product-hero .gn-data-value{

    display:block !important;
}

.gn-product-hero .gn-data-label{

    margin-bottom:6px !important;

    color:#617A70 !important;

    font-size:9px !important;

    line-height:1.25 !important;

    font-weight:700 !important;

    letter-spacing:1.3px !important;

    text-transform:uppercase;
}

.gn-product-hero .gn-data-value{

    color:#F2FFF9 !important;

    font-size:16px !important;

    line-height:1.35 !important;

    font-weight:700 !important;
}


/* =========================================================
   BUTTON AREA
========================================================= */

.gn-product-hero .gn-hero-actions{

    width:100% !important;

    display:flex !important;

    flex-direction:row !important;

    flex-wrap:wrap !important;

    align-items:center !important;

    gap:12px !important;
}

.gn-product-hero .gn-hero-actions > .elementor-element{

    width:auto !important;
    max-width:none !important;
}


/* =========================================================
   ALL BUTTON BASE
========================================================= */

.gn-product-hero .gn-hero-actions .elementor-button{

    min-height:52px !important;

    padding:
        0 25px !important;

    display:inline-flex !important;

    align-items:center !important;
    justify-content:center !important;

    border-radius:999px !important;

    font-size:13px !important;

    line-height:1 !important;

    font-weight:700 !important;

    transition:
        .25s ease !important;
}


/* =========================================================
   FIRST BUTTON
========================================================= */

.gn-product-hero .gn-hero-actions > .elementor-element:first-child .elementor-button{

    background:#39FFAE !important;

    color:#06110D !important;

    border:
        1px solid #39FFAE !important;

    box-shadow:
        0 10px 30px rgba(57,255,174,.14) !important;
}

.gn-product-hero .gn-hero-actions > .elementor-element:first-child .elementor-button *{

    color:#06110D !important;
}

.gn-product-hero .gn-hero-actions > .elementor-element:first-child .elementor-button:hover{

    background:#68FFC4 !important;

    border-color:#68FFC4 !important;

    transform:translateY(-2px);
}


/* =========================================================
   SECOND BUTTON
========================================================= */

.gn-product-hero .gn-hero-actions > .elementor-element:nth-child(2) .elementor-button{

    background:
        rgba(255,255,255,.025) !important;

    color:#DCEAE5 !important;

    border:
        1px solid rgba(255,255,255,.15) !important;
}

.gn-product-hero .gn-hero-actions > .elementor-element:nth-child(2) .elementor-button *{

    color:#DCEAE5 !important;
}

.gn-product-hero .gn-hero-actions > .elementor-element:nth-child(2) .elementor-button:hover{

    background:
        rgba(57,255,174,.045) !important;

    color:#39FFAE !important;

    border-color:
        rgba(57,255,174,.40) !important;

    transform:translateY(-2px);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1024px){

    .gn-product-hero{

        padding:
            60px 26px 68px !important;
    }

    .gn-product-hero .gn-hero-inner{

        max-width:760px !important;

        grid-template-columns:
            1fr !important;

        gap:48px !important;
    }

    .gn-product-hero .gn-hero-content{

        order:1;
    }

    .gn-product-hero .gn-hero-visual{

        order:2;

        height:540px !important;

        min-height:540px !important;
    }

    .gn-product-hero .gn-hero-title h1,
    .gn-product-hero .gn-hero-title .elementor-heading-title{

        font-size:54px !important;
    }

    .gn-product-hero .gn-hero-data{

        max-width:100% !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    .gn-product-hero{

        padding:
            48px 16px 55px !important;
    }

    .gn-product-hero::before{

        background-size:
            52px 52px;
    }

    .gn-product-hero .gn-hero-inner{

        gap:38px !important;
    }


    /* TITLE */

    .gn-product-hero .gn-hero-title h1,
    .gn-product-hero .gn-hero-title .elementor-heading-title{

        font-size:39px !important;

        line-height:1.07 !important;

        letter-spacing:-1.5px !important;
    }


    /* DESCRIPTION */

    .gn-product-hero .gn-hero-description{

        margin:
            19px 0 25px !important;
    }

    .gn-product-hero .gn-hero-description,
    .gn-product-hero .gn-hero-description p{

        font-size:15px !important;
    }


    /* DATA */

    .gn-product-hero .gn-hero-data{

        grid-template-columns:
            1fr !important;
    }

    .gn-product-hero .gn-hero-data > .gn-data-item{

        min-height:auto !important;

        padding:
            14px 0 !important;

        border-left:0 !important;

        border-bottom:
            1px solid rgba(255,255,255,.10) !important;
    }

    .gn-product-hero .gn-hero-data > .gn-data-item:last-child{

        border-bottom:0 !important;
    }


    /* BUTTONS */

    .gn-product-hero .gn-hero-actions{

        flex-direction:
            column !important;

        align-items:
            stretch !important;

        gap:9px !important;
    }

    .gn-product-hero .gn-hero-actions > .elementor-element{

        width:100% !important;
    }

    .gn-product-hero .gn-hero-actions .elementor-button-wrapper{

        width:100% !important;
    }

    .gn-product-hero .gn-hero-actions .elementor-button{

        width:100% !important;
    }


    /* PRODUCT VISUAL */

    .gn-product-hero .gn-hero-visual{

        height:420px !important;

        min-height:420px !important;

        padding:28px !important;

        border-radius:21px !important;
    }

    .gn-product-hero .gn-hero-image{

        max-width:380px !important;
    }

    .gn-product-hero .gn-hero-image img{

        max-height:340px !important;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:480px){

    .gn-product-hero .gn-hero-title h1,
    .gn-product-hero .gn-hero-title .elementor-heading-title{

        font-size:35px !important;
    }

    .gn-product-hero .gn-hero-visual{

        height:370px !important;

        min-height:370px !important;
    }

}
/* =========================================================
   ELEMENTOR LAYOUT FORCE FIX
   放在现有 Hero CSS 最后面
========================================================= */

/* 强制 Hero 左右双栏 */
.gn-hero-inner{
    display:grid !important;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
    gap:68px !important;
    align-items:center !important;

    flex-direction:unset !important;
    flex-wrap:unset !important;

    width:100% !important;
    max-width:1280px !important;
    margin:0 auto !important;
}

/* 关键：Elementor 子容器不要自己占满一整行 */
.gn-hero-inner > .e-con,
.gn-hero-inner > .elementor-element,
.gn-hero-inner > div{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
    flex-basis:auto !important;
    flex-grow:0 !important;
    flex-shrink:1 !important;
}

/* 左右区域 */
.gn-hero-visual,
.gn-hero-content{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}


/* =========================================================
   PARAMETER GRID FORCE FIX
========================================================= */

.gn-hero-data{
    display:grid !important;

    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-flow:row !important;

    gap:0 !important;

    flex-direction:unset !important;
    flex-wrap:unset !important;

    width:100% !important;
    max-width:610px !important;
}

/* 参数子容器不要被 Elementor 设置成100%一行一个 */
.gn-hero-data > .gn-data-item{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
    flex-basis:auto !important;
    flex-grow:0 !important;
    flex-shrink:1 !important;

    margin:0 !important;
}


/* =========================================================
   BUTTON FORCE FIX
========================================================= */

.gn-hero-actions{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;

    gap:12px !important;
}

.gn-hero-actions > .elementor-element{
    width:auto !important;
    max-width:none !important;

    flex:0 0 auto !important;
}


/* PRIMARY */
.gn-hero-actions .elementor-element:first-child .elementor-button{
    background:#39FFAE !important;
    color:#06110D !important;
    border:1px solid #39FFAE !important;

    border-radius:999px !important;

    min-height:52px !important;
    padding:0 26px !important;

    font-weight:700 !important;

    box-shadow:
        0 10px 30px rgba(57,255,174,.14) !important;
}

/* SECONDARY */
.gn-hero-actions .elementor-element:nth-child(2) .elementor-button{
    background:rgba(255,255,255,.025) !important;
    color:#DCEAE5 !important;

    border:1px solid rgba(255,255,255,.15) !important;

    border-radius:999px !important;

    min-height:52px !important;
    padding:0 26px !important;

    font-weight:600 !important;
}


/* =========================================================
   EYEBROW FORCE FIX
========================================================= */

.gn-eyebrow,
.gn-eyebrow *,
.gn-eyebrow .elementor-heading-title{
    color:#39FFAE !important;
}


/* =========================================================
   DESKTOP ONLY LOCK
========================================================= */

@media(min-width:1025px){

    .gn-hero-inner{
        display:grid !important;
        grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
    }

    .gn-hero-data{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1024px){

    .gn-hero-inner{
        grid-template-columns:1fr !important;
        gap:48px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    .gn-hero-data{
        grid-template-columns:1fr !important;
    }

    .gn-hero-actions{
        flex-direction:column !important;
    }

    .gn-hero-actions > .elementor-element{
        width:100% !important;
    }

    .gn-hero-actions .elementor-button{
        width:100% !important;
    }

}

/* =========================================================
   HERO IMAGE INFO BAR — TEXT FIX
========================================================= */

.gn-image-info{
    position:absolute !important;

    left:18px !important;
    right:18px !important;
    bottom:18px !important;

    width:auto !important;

    padding:16px 18px !important;

    border-radius:14px !important;

    background:rgba(7,13,11,.82) !important;

    border:1px solid rgba(57,255,174,.18) !important;

    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);

    box-shadow:
        0 12px 35px rgba(0,0,0,.22) !important;

    z-index:10 !important;
}


/* 强制覆盖 Elementor Text Editor 文字颜色 */

.gn-image-info,
.gn-image-info .elementor-widget-container,
.gn-image-info .elementor-text-editor,
.gn-image-info p,
.gn-image-info span,
.gn-image-info div{
    color:#AFC1BA !important;
}


/* 清除默认段落间距 */

.gn-image-info p{
    margin:0 !important;

    font-size:13px !important;
    line-height:1.6 !important;

    font-weight:400 !important;
}


/* 如果文本里面有 strong / b，则作为重点显示 */

.gn-image-info strong,
.gn-image-info b{
    color:#F3FFF9 !important;
    font-weight:600 !important;
}


/* 如果有链接 */

.gn-image-info a{
    color:#39FFAE !important;
    text-decoration:none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6228dbb *//* =========================================================
   GN FORTUNE
   02 PRODUCT OVERVIEW + KEY FEATURES
   Elementor Boxed Container Fixed Version
========================================================= */


/* =========================================================
   01. SECTION ROOT
========================================================= */

.gn-overview{
    position:relative !important;
    overflow:hidden !important;

    width:100% !important;

    padding:105px 30px 115px !important;

    background:
        linear-gradient(
            180deg,
            #F5F9F7 0%,
            #EEF5F1 100%
        ) !important;

    box-sizing:border-box;
}


/* 左下柔和绿色光晕 */
.gn-overview::before{
    content:"";

    position:absolute;

    width:650px;
    height:650px;

    left:-300px;
    bottom:-340px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(57,255,174,.10) 0%,
            rgba(57,255,174,.025) 42%,
            transparent 70%
        );

    filter:blur(12px);

    pointer-events:none;
}


/* 弱网格 */
.gn-overview::after{
    content:"";

    position:absolute;
    inset:0;

    background-image:
        linear-gradient(
            rgba(18,61,51,.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(18,61,51,.025) 1px,
            transparent 1px
        );

    background-size:86px 86px;

    opacity:.45;

    -webkit-mask-image:
        linear-gradient(
            to right,
            rgba(0,0,0,.75),
            transparent 58%
        );

    mask-image:
        linear-gradient(
            to right,
            rgba(0,0,0,.75),
            transparent 58%
        );

    pointer-events:none;
}


/* =========================================================
   02. ELEMENTOR BOXED INNER
   这里才是真正左右两栏的父级
========================================================= */

.gn-overview > .e-con-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;

    display:grid !important;

    grid-template-columns:
        minmax(0,.82fr)
        minmax(0,1.18fr) !important;

    gap:76px !important;

    align-items:start !important;
}


/* 防止 Elementor 子容器宽度继续干扰 */
.gn-overview > .e-con-inner > .e-con,
.gn-overview > .e-con-inner > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


/* =========================================================
   03. LEFT CONTENT
========================================================= */

.gn-overview-left{
    position:relative;

    width:100% !important;
    max-width:470px !important;

    padding-top:4px;
}


/* =========================================================
   04. EYEBROW
========================================================= */

.gn-section-eyebrow{
    display:inline-flex !important;

    align-items:center !important;

    width:auto !important;

    margin:0 0 25px !important;

    padding:9px 14px !important;

    border-radius:999px !important;

    background:
        rgba(57,255,174,.10) !important;

    border:
        1px solid rgba(18,185,120,.16) !important;

    color:#137D5A !important;

    font-size:11px !important;
    line-height:1 !important;

    font-weight:700 !important;

    letter-spacing:1.6px !important;

    text-transform:uppercase !important;
}

.gn-section-eyebrow *,
.gn-section-eyebrow .elementor-heading-title,
.gn-section-eyebrow p,
.gn-section-eyebrow span{
    color:#137D5A !important;
}


/* 绿色圆点 */
.gn-section-eyebrow::before{
    content:"";

    width:6px;
    height:6px;

    flex:0 0 6px;

    margin-right:9px;

    border-radius:50%;

    background:#39FFAE;

    box-shadow:
        0 0 8px rgba(57,255,174,.55);
}


/* =========================================================
   05. OVERVIEW TITLE
========================================================= */

.gn-overview-title{
    width:100% !important;

    margin:0 !important;
}

.gn-overview-title,
.gn-overview-title *{
    color:#123D33 !important;
}

.gn-overview-title h2,
.gn-overview-title .elementor-heading-title{
    margin:0 !important;

    max-width:470px;

    color:#123D33 !important;

    font-size:52px !important;

    line-height:1.07 !important;

    letter-spacing:-2px !important;

    font-weight:600 !important;
}


/* =========================================================
   06. OVERVIEW TEXT
========================================================= */

.gn-overview-text{
    width:100% !important;

    max-width:455px !important;

    margin-top:27px !important;
}

.gn-overview-text,
.gn-overview-text p,
.gn-overview-text span{
    color:#687A73 !important;

    font-size:16px !important;

    line-height:1.75 !important;

    font-weight:400 !important;
}

.gn-overview-text p{
    margin:0 !important;
}


/* 左侧底部装饰线 */
.gn-overview-left::after{
    content:"";

    display:block;

    width:70px;
    height:2px;

    margin-top:34px;

    background:
        linear-gradient(
            90deg,
            #39FFAE,
            rgba(57,255,174,0)
        );
}


/* =========================================================
   07. FEATURE GRID
========================================================= */

.gn-feature-grid{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    display:grid !important;

    grid-template-columns:
        repeat(2,minmax(0,1fr)) !important;

    gap:20px !important;

    align-items:stretch !important;

    flex:unset !important;
}


/* Elementor 子容器强制占满 Grid Cell */
.gn-feature-grid > .gn-feature-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


/* =========================================================
   08. FEATURE CARD
========================================================= */

.gn-feature-card{
    position:relative;

    overflow:hidden;

    min-height:235px !important;

    padding:29px 29px 27px !important;

    display:flex !important;

    flex-direction:column !important;

    align-items:flex-start !important;

    justify-content:flex-start !important;

    border-radius:20px !important;

    background:
        rgba(255,255,255,.86) !important;

    border:
        1px solid rgba(18,61,51,.09) !important;

    box-shadow:
        0 12px 35px rgba(18,61,51,.035);

    box-sizing:border-box;

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease,
        background .3s ease;
}


/* 顶部强调线 */
.gn-feature-card::before{
    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:2px;

    background:
        linear-gradient(
            90deg,
            #39FFAE 0%,
            rgba(57,255,174,.15) 65%,
            transparent 100%
        );

    opacity:.55;

    transition:.3s ease;
}


/* 右上弱光 */
.gn-feature-card::after{
    content:"";

    position:absolute;

    width:210px;
    height:210px;

    right:-115px;
    top:-120px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(57,255,174,.11),
            transparent 70%
        );

    opacity:.55;

    pointer-events:none;
}


/* Hover */
.gn-feature-card:hover{
    transform:translateY(-6px);

    background:#FFFFFF !important;

    border-color:
        rgba(19,125,90,.22) !important;

    box-shadow:
        0 22px 55px rgba(18,61,51,.08);
}

.gn-feature-card:hover::before{
    opacity:1;
}


/* =========================================================
   09. FEATURE NUMBER
========================================================= */

.gn-feature-number{
    position:relative;

    z-index:2;

    width:42px !important;
    height:42px !important;

    flex:0 0 42px;

    margin:0 0 27px !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;

    background:
        rgba(57,255,174,.11) !important;

    border:
        1px solid rgba(19,125,90,.13) !important;

    color:#137D5A !important;

    font-size:11px !important;

    line-height:1 !important;

    font-weight:700 !important;
}

.gn-feature-number *,
.gn-feature-number .elementor-heading-title,
.gn-feature-number p,
.gn-feature-number span{
    color:#137D5A !important;
}


/* Hover number */
.gn-feature-card:hover .gn-feature-number{
    background:#39FFAE !important;

    border-color:#39FFAE !important;

    box-shadow:
        0 8px 24px rgba(57,255,174,.18);
}

.gn-feature-card:hover .gn-feature-number,
.gn-feature-card:hover .gn-feature-number *{
    color:#082018 !important;
}


/* =========================================================
   10. FEATURE TITLE
========================================================= */

.gn-feature-title{
    position:relative;

    z-index:2;

    width:100% !important;

    margin:0 0 12px !important;
}

.gn-feature-title,
.gn-feature-title *{
    color:#173B31 !important;
}

.gn-feature-title h3,
.gn-feature-title h4,
.gn-feature-title .elementor-heading-title{
    margin:0 !important;

    color:#173B31 !important;

    font-size:21px !important;

    line-height:1.25 !important;

    letter-spacing:-.4px !important;

    font-weight:600 !important;

    word-break:normal !important;

    overflow-wrap:normal !important;
}


/* =========================================================
   11. FEATURE TEXT
========================================================= */

.gn-feature-text{
    position:relative;

    z-index:2;

    width:100% !important;

    margin:0 !important;
}

.gn-feature-text,
.gn-feature-text p,
.gn-feature-text span{
    color:#6D7E78 !important;

    font-size:14px !important;

    line-height:1.68 !important;

    font-weight:400 !important;

    word-break:normal !important;

    overflow-wrap:normal !important;
}

.gn-feature-text p{
    margin:0 !important;
}


/* =========================================================
   12. DESKTOP OFFSET
========================================================= */

@media(min-width:1025px){

    .gn-feature-card:nth-child(2),
    .gn-feature-card:nth-child(4){
        transform:translateY(18px);
    }

    .gn-feature-card:nth-child(2):hover,
    .gn-feature-card:nth-child(4):hover{
        transform:translateY(12px);
    }

}


/* =========================================================
   13. TABLET
========================================================= */

@media(max-width:1024px){

    .gn-overview{
        padding:
            85px 26px 90px !important;
    }

    .gn-overview > .e-con-inner{
        grid-template-columns:
            1fr !important;

        gap:48px !important;

        max-width:760px !important;
    }

    .gn-overview-left{
        max-width:680px !important;
    }

    .gn-overview-title h2,
    .gn-overview-title .elementor-heading-title{
        max-width:650px;

        font-size:47px !important;
    }

    .gn-overview-text{
        max-width:630px !important;
    }

    .gn-feature-card{
        min-height:220px !important;
    }

}


/* =========================================================
   14. MOBILE
========================================================= */

@media(max-width:767px){

    .gn-overview{
        padding:
            66px 16px 72px !important;
    }

    .gn-overview > .e-con-inner{
        gap:36px !important;
    }

    .gn-section-eyebrow{
        margin-bottom:20px !important;
    }

    .gn-overview-title h2,
    .gn-overview-title .elementor-heading-title{
        font-size:37px !important;

        line-height:1.08 !important;

        letter-spacing:-1.4px !important;
    }

    .gn-overview-text{
        margin-top:21px !important;
    }

    .gn-overview-text,
    .gn-overview-text p,
    .gn-overview-text span{
        font-size:15px !important;
    }

    .gn-feature-grid{
        grid-template-columns:
            1fr !important;

        gap:13px !important;
    }

    .gn-feature-card{
        min-height:auto !important;

        padding:
            24px 22px !important;

        border-radius:
            17px !important;
    }

    .gn-feature-number{
        width:38px !important;
        height:38px !important;

        flex-basis:38px;

        margin-bottom:21px !important;
    }

    .gn-feature-title h3,
    .gn-feature-title h4,
    .gn-feature-title .elementor-heading-title{
        font-size:19px !important;
    }

}


/* =========================================================
   15. SMALL MOBILE
========================================================= */

@media(max-width:480px){

    .gn-overview{
        padding-left:14px !important;
        padding-right:14px !important;
    }

    .gn-overview-title h2,
    .gn-overview-title .elementor-heading-title{
        font-size:34px !important;
    }

}
/* =========================================================
   02 FEATURE GRID — FINAL REFINEMENT
========================================================= */

/* 右侧整体区域更宽、更紧凑 */
.gn-feature-grid{
    width:100% !important;
    max-width:640px !important;

    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;

    gap:14px !important;

    align-self:center !important;
}


/* 取消之前 02 / 04 的下沉错位 */
.gn-feature-card:nth-child(2),
.gn-feature-card:nth-child(4){
    transform:none !important;
}

.gn-feature-card:nth-child(2):hover,
.gn-feature-card:nth-child(4):hover{
    transform:translateY(-5px) !important;
}


/* 卡片整体更扁、更宽 */
.gn-feature-card{
    min-height:215px !important;

    padding:
        25px 26px 24px !important;

    border-radius:18px !important;

    background:
        rgba(255,255,255,.88) !important;

    border:
        1px solid rgba(18,61,51,.085) !important;

    box-shadow:
        0 10px 30px rgba(18,61,51,.035) !important;
}


/* 卡片 Hover */
.gn-feature-card:hover{
    transform:translateY(-5px) !important;

    border-color:
        rgba(57,255,174,.28) !important;

    box-shadow:
        0 18px 45px rgba(18,61,51,.07) !important;
}


/* 编号缩小一点，不抢标题 */
.gn-feature-number{
    width:38px !important;
    height:38px !important;
    flex-basis:38px !important;

    margin-bottom:22px !important;

    font-size:10px !important;
}


/* 标题稍微收紧 */
.gn-feature-title{
    margin-bottom:10px !important;
}

.gn-feature-title h3,
.gn-feature-title h4,
.gn-feature-title .elementor-heading-title{
    font-size:20px !important;
    line-height:1.23 !important;

    letter-spacing:-.35px !important;
}


/* 描述文字 */
.gn-feature-text,
.gn-feature-text p,
.gn-feature-text span{
    font-size:13.5px !important;
    line-height:1.62 !important;

    color:#71817B !important;
}


/* 让整个左右区域更协调 */
.gn-overview > .e-con-inner{
    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr) !important;

    gap:68px !important;

    align-items:center !important;
}


/* 左侧稍微放宽 */
.gn-overview-left{
    max-width:500px !important;
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1024px){

    .gn-feature-grid{
        max-width:none !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    .gn-feature-grid{
        grid-template-columns:1fr !important;
        gap:12px !important;
    }

    .gn-feature-card{
        min-height:auto !important;
    }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ab8dc79 *//* =========================================================
   03 TECHNICAL SPECIFICATIONS
   GN FORTUNE PRODUCT TEMPLATE
   ========================================================= */

/* ---------- Section ---------- */
.gn-specs{
    position:relative;
    width:100%;
    overflow:hidden;
    padding:110px 30px 115px !important;
    background:
        radial-gradient(circle at 12% 20%, rgba(57,255,174,.08), transparent 34%),
        radial-gradient(circle at 88% 78%, rgba(57,255,174,.045), transparent 28%),
        linear-gradient(180deg,#08110E 0%,#0A1511 100%) !important;
    box-sizing:border-box;
}

/* subtle grid */
.gn-specs::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.18;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size:44px 44px;
}

/* boxed container support */
.gn-specs > .e-con-inner{
    position:relative;
    z-index:2;
    width:100% !important;
    max-width:1200px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr) !important;
    gap:78px !important;
    align-items:center !important;
}

/* reset Elementor child widths */
.gn-specs > .e-con-inner > .e-con,
.gn-specs > .e-con-inner > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    flex:unset !important;
}


/* =========================================================
   LEFT
   ========================================================= */

.gn-specs-left{
    width:100% !important;
    max-width:470px !important;
    min-width:0 !important;
}

/* eyebrow */
.gn-specs-eyebrow{
    width:max-content !important;
    margin-bottom:24px !important;
    padding:8px 12px !important;
    border-radius:999px !important;
    background:rgba(57,255,174,.07) !important;
    border:1px solid rgba(57,255,174,.14) !important;
}

.gn-specs-eyebrow,
.gn-specs-eyebrow *{
    color:#39FFAE !important;
}

.gn-specs-eyebrow .elementor-heading-title,
.gn-specs-eyebrow p{
    margin:0 !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:1.7px !important;
    text-transform:uppercase !important;
}


/* title */
.gn-specs-title{
    margin-bottom:20px !important;
}

.gn-specs-title .elementor-heading-title,
.gn-specs-title h2,
.gn-specs-title h3{
    margin:0 !important;
    max-width:460px !important;
    color:#F4FFF9 !important;
    font-size:50px !important;
    line-height:1.05 !important;
    font-weight:600 !important;
    letter-spacing:-1.7px !important;
}


/* description */
.gn-specs-text{
    max-width:440px !important;
    margin-bottom:38px !important;
}

.gn-specs-text,
.gn-specs-text p,
.gn-specs-text span{
    color:#9DAFA8 !important;
    font-size:15px !important;
    line-height:1.75 !important;
    font-weight:400 !important;
}


/* =========================================================
   KEY SPECIFICATION CARD
   ========================================================= */

.gn-key-spec{
    position:relative !important;
    width:100% !important;
    max-width:390px !important;
    padding:26px 28px 28px !important;
    border-radius:20px !important;
    overflow:hidden;
    background:
        linear-gradient(145deg,rgba(57,255,174,.095),rgba(57,255,174,.025)) !important;
    border:1px solid rgba(57,255,174,.17) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.03),
        0 18px 50px rgba(0,0,0,.18) !important;
}

/* accent line */
.gn-key-spec::before{
    content:"";
    position:absolute;
    left:0;
    top:26px;
    bottom:26px;
    width:2px;
    border-radius:2px;
    background:linear-gradient(
        180deg,
        rgba(57,255,174,0),
        #39FFAE,
        rgba(57,255,174,0)
    );
    box-shadow:0 0 12px rgba(57,255,174,.55);
}


/* kicker */
.gn-key-spec-kicker{
    margin-bottom:16px !important;
}

.gn-key-spec-kicker,
.gn-key-spec-kicker *{
    color:#6FFFBE !important;
}

.gn-key-spec-kicker .elementor-heading-title,
.gn-key-spec-kicker p{
    margin:0 !important;
    font-size:10px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:1.6px !important;
    text-transform:uppercase !important;
}


/* value */
.gn-key-spec-value{
    margin-bottom:9px !important;
}

.gn-key-spec-value,
.gn-key-spec-value *{
    color:#FFFFFF !important;
}

.gn-key-spec-value .elementor-heading-title,
.gn-key-spec-value h3,
.gn-key-spec-value p{
    margin:0 !important;
    font-size:42px !important;
    line-height:1 !important;
    font-weight:600 !important;
    letter-spacing:-1.3px !important;
}


/* label */
.gn-key-spec-label,
.gn-key-spec-label *{
    color:#94AAA1 !important;
}

.gn-key-spec-label .elementor-heading-title,
.gn-key-spec-label p{
    margin:0 !important;
    font-size:13px !important;
    line-height:1.5 !important;
    font-weight:500 !important;
}


/* =========================================================
   RIGHT SPECIFICATIONS PANEL
   ========================================================= */

.gn-specs-table{
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    padding:10px 30px !important;
    border-radius:24px !important;
    overflow:hidden;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.022)
        ) !important;
    border:1px solid rgba(255,255,255,.075) !important;
    box-shadow:
        0 24px 60px rgba(0,0,0,.20),
        inset 0 1px 0 rgba(255,255,255,.025) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}


/* top glow */
.gn-specs-table::before{
    content:"";
    position:absolute;
    left:12%;
    right:12%;
    top:-1px;
    height:1px;
    background:linear-gradient(
        90deg,
        rgba(57,255,174,0),
        rgba(57,255,174,.65),
        rgba(57,255,174,0)
    );
}


/* =========================================================
   DYNAMIC REPEATER ROWS
   ========================================================= */

.gn-spec-row{
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:minmax(130px,.72fr) minmax(0,1.28fr) !important;
    gap:28px !important;
    align-items:center !important;
    padding:20px 0 !important;
    border-bottom:1px solid rgba(255,255,255,.065) !important;
}

.gn-spec-row:last-child{
    border-bottom:0 !important;
}


/* subtle hover */
.gn-spec-row::after{
    content:"";
    position:absolute;
    left:-30px;
    right:-30px;
    top:0;
    bottom:0;
    pointer-events:none;
    opacity:0;
    background:linear-gradient(
        90deg,
        rgba(57,255,174,.035),
        rgba(57,255,174,.012),
        transparent
    );
    transition:opacity .25s ease;
}

.gn-spec-row:hover::after{
    opacity:1;
}


/* spec name */
.gn-spec-name{
    position:relative;
    z-index:2;
    min-width:0 !important;
}

.gn-spec-name,
.gn-spec-name *{
    color:#8FA29B !important;
}

.gn-spec-name .elementor-heading-title,
.gn-spec-name p,
.gn-spec-name span{
    margin:0 !important;
    font-size:12px !important;
    line-height:1.45 !important;
    font-weight:600 !important;
    letter-spacing:.3px !important;
}


/* spec value */
.gn-spec-value{
    position:relative;
    z-index:2;
    min-width:0 !important;
}

.gn-spec-value,
.gn-spec-value *{
    color:#EEF8F4 !important;
}

.gn-spec-value .elementor-heading-title,
.gn-spec-value p,
.gn-spec-value span{
    margin:0 !important;
    font-size:14px !important;
    line-height:1.55 !important;
    font-weight:500 !important;
}


/* optional stronger first row */
.gn-spec-row:first-child .gn-spec-value,
.gn-spec-row:first-child .gn-spec-value *{
    color:#39FFAE !important;
}


/* =========================================================
   OPTIONAL: SHORTCODE / ACF REPEATER OUTPUT
   if repeater HTML sits directly inside the table
   ========================================================= */

.gn-specs-table .gn-spec-row > *{
    min-width:0 !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1024px){

    .gn-specs{
        padding:85px 26px 90px !important;
    }

    .gn-specs > .e-con-inner{
        grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr) !important;
        gap:46px !important;
    }

    .gn-specs-title .elementor-heading-title,
    .gn-specs-title h2,
    .gn-specs-title h3{
        font-size:41px !important;
    }

    .gn-key-spec-value .elementor-heading-title,
    .gn-key-spec-value h3,
    .gn-key-spec-value p{
        font-size:36px !important;
    }

    .gn-specs-table{
        padding:8px 24px !important;
    }

    .gn-spec-row{
        grid-template-columns:minmax(115px,.68fr) minmax(0,1.32fr) !important;
        gap:22px !important;
        padding:18px 0 !important;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:767px){

    .gn-specs{
        padding:70px 18px 74px !important;
    }

    .gn-specs > .e-con-inner{
        display:flex !important;
        flex-direction:column !important;
        gap:42px !important;
        align-items:stretch !important;
    }

    .gn-specs-left{
        max-width:none !important;
    }

    .gn-specs-eyebrow{
        margin-bottom:18px !important;
    }

    .gn-specs-title{
        margin-bottom:16px !important;
    }

    .gn-specs-title .elementor-heading-title,
    .gn-specs-title h2,
    .gn-specs-title h3{
        max-width:none !important;
        font-size:36px !important;
        line-height:1.08 !important;
        letter-spacing:-1px !important;
    }

    .gn-specs-text{
        max-width:none !important;
        margin-bottom:28px !important;
    }

    .gn-specs-text,
    .gn-specs-text p,
    .gn-specs-text span{
        font-size:14px !important;
        line-height:1.7 !important;
    }

    .gn-key-spec{
        max-width:none !important;
        padding:24px !important;
    }

    .gn-key-spec-value .elementor-heading-title,
    .gn-key-spec-value h3,
    .gn-key-spec-value p{
        font-size:35px !important;
    }

    .gn-specs-table{
        padding:6px 20px !important;
        border-radius:20px !important;
    }

    .gn-spec-row{
        grid-template-columns:1fr !important;
        gap:7px !important;
        padding:17px 0 !important;
    }

    .gn-spec-name .elementor-heading-title,
    .gn-spec-name p,
    .gn-spec-name span{
        font-size:10px !important;
        letter-spacing:.7px !important;
        text-transform:uppercase !important;
    }

    .gn-spec-value .elementor-heading-title,
    .gn-spec-value p,
    .gn-spec-value span{
        font-size:14px !important;
        line-height:1.5 !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3e9a9a0 *//* =========================================================
   03B PRODUCT DETAILS GALLERY
   GN FORTUNE PRODUCT DETAIL TEMPLATE
   FINAL CLEAN VERSION
   ========================================================= */


/* =========================================================
   01. SECTION
   ========================================================= */

.gn-gallery{
    position:relative !important;
    width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box;

    padding:108px 30px 112px !important;

    background:
        radial-gradient(
            circle at 92% 6%,
            rgba(18,61,51,.026) 0%,
            rgba(18,61,51,.010) 16%,
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #FFFFFF 0%,
            #F8FAF9 100%
        ) !important;
}


/* subtle showroom grid */
.gn-gallery::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(18,61,51,.013) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(18,61,51,.013) 1px,
            transparent 1px
        );

    background-size:64px 64px;
    opacity:.42;
}


/* decorative corner glow */
.gn-gallery::after{
    content:"";
    position:absolute;
    z-index:0;
    pointer-events:none;

    width:420px;
    height:420px;

    right:-230px;
    top:-230px;

    border-radius:50%;
    border:1px solid rgba(18,61,51,.035);

    box-shadow:
        0 0 0 80px rgba(18,61,51,.008),
        0 0 0 160px rgba(18,61,51,.004);
}


/* =========================================================
   02. INNER CONTAINER
   ========================================================= */

.gn-gallery > .e-con-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;
    margin:0 auto !important;
}


.gn-gallery-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;
    margin:0 auto !important;

    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
}


.gn-gallery-inner > .e-con,
.gn-gallery-inner > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}


/* =========================================================
   03. SECTION HEADER
   ========================================================= */

.gn-gallery-head{
    width:100% !important;

    display:grid !important;
    grid-template-columns:
        minmax(0,.94fr)
        minmax(0,1.06fr) !important;

    gap:78px !important;
    align-items:end !important;

    margin-bottom:50px !important;
}


.gn-gallery-head > .e-con,
.gn-gallery-head > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


.gn-gallery-heading{
    width:100% !important;
    max-width:570px !important;
}


/* =========================================================
   04. EYEBROW
   ========================================================= */

.gn-gallery-eyebrow{
    position:relative !important;
    width:max-content !important;

    margin-bottom:19px !important;
    padding-left:16px !important;
}


.gn-gallery-eyebrow::before{
    content:"";
    position:absolute;

    left:0;
    top:50%;

    width:6px;
    height:6px;

    border-radius:50%;
    background:#26C98C;

    transform:translateY(-50%);

    box-shadow:
        0 0 9px rgba(38,201,140,.24);
}


.gn-gallery-eyebrow,
.gn-gallery-eyebrow *{
    color:#18845F !important;
}


.gn-gallery-eyebrow .elementor-heading-title,
.gn-gallery-eyebrow p,
.gn-gallery-eyebrow span{
    margin:0 !important;

    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:700 !important;

    letter-spacing:1.6px !important;
    text-transform:uppercase !important;
}


/* =========================================================
   05. TITLE
   ========================================================= */

.gn-gallery-title{
    width:100% !important;
}


.gn-gallery-title .elementor-heading-title,
.gn-gallery-title h2{
    margin:0 !important;

    max-width:570px !important;

    color:#123D33 !important;

    font-size:50px !important;
    line-height:1.055 !important;
    font-weight:600 !important;

    letter-spacing:-1.65px !important;
}


/* =========================================================
   06. INTRO
   ========================================================= */

.gn-gallery-intro{
    width:100% !important;
    max-width:520px !important;

    justify-self:end !important;
    padding-bottom:5px !important;
}


.gn-gallery-intro,
.gn-gallery-intro p,
.gn-gallery-intro span,
.gn-gallery-intro div{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#687A73 !important;

    font-size:15.5px !important;
    line-height:1.75 !important;
    font-weight:400 !important;
}


/* =========================================================
   07. GALLERY GRID
   ========================================================= */

.gn-gallery .gn-gallery-grid{
    position:relative !important;

    display:grid !important;

    grid-template-columns:
        repeat(12,minmax(0,1fr)) !important;

    grid-template-rows:
        245px
        245px
        265px !important;

    gap:14px !important;

    width:100% !important;
    max-width:100% !important;

    align-items:stretch !important;
    justify-items:stretch !important;

    align-content:start !important;
    justify-content:stretch !important;
}


/* =========================================================
   08. COMMON GALLERY ITEM
   ========================================================= */

.gn-gallery .gn-gallery-grid > .gn-gallery-item{
    position:relative !important;

    width:auto !important;
    max-width:none !important;

    min-width:0 !important;
    min-height:0 !important;
    height:auto !important;

    margin:0 !important;

    flex:none !important;
    flex-grow:0 !important;
    flex-shrink:1 !important;
    flex-basis:auto !important;

    align-self:stretch !important;
    justify-self:stretch !important;

    overflow:hidden !important;

    border-radius:19px !important;

    background:#E8EFEB !important;

    border:
        1px solid
        rgba(18,61,51,.065) !important;

    box-shadow:
        0 12px 34px
        rgba(18,61,51,.045) !important;

    isolation:isolate;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease !important;
}


.gn-gallery .gn-gallery-item:hover{
    transform:translateY(-3px) !important;

    border-color:
        rgba(18,61,51,.11) !important;

    box-shadow:
        0 20px 48px
        rgba(18,61,51,.075) !important;
}


/* =========================================================
   09. DESKTOP ITEM POSITIONS
   ========================================================= */

/* 01 — Main Product */
.gn-gallery .gn-gallery-grid > .gn-gallery-item-01{
    grid-column:1 / 9 !important;
    grid-row:1 / 3 !important;
}


/* 02 — Profile */
.gn-gallery .gn-gallery-grid > .gn-gallery-item-02{
    grid-column:9 / 13 !important;
    grid-row:1 / 2 !important;
}


/* 03 — Construction */
.gn-gallery .gn-gallery-grid > .gn-gallery-item-03{
    grid-column:9 / 13 !important;
    grid-row:2 / 3 !important;
}


/* 04 — Installation */
.gn-gallery .gn-gallery-grid > .gn-gallery-item-04{
    grid-column:1 / 5 !important;
    grid-row:3 / 4 !important;
}


/* 05 — Growing Application */
.gn-gallery .gn-gallery-grid > .gn-gallery-item-05{
    grid-column:5 / 13 !important;
    grid-row:3 / 4 !important;
}


/* =========================================================
   10. IMAGE
   ========================================================= */

.gn-gallery .gn-gallery-photo{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;

    width:100% !important;
    height:100% !important;
    max-width:none !important;

    margin:0 !important;
}


.gn-gallery .gn-gallery-photo,
.gn-gallery .gn-gallery-photo .elementor-widget-container,
.gn-gallery .gn-gallery-photo a,
.gn-gallery .gn-gallery-photo picture{
    display:block !important;

    width:100% !important;
    height:100% !important;
}


.gn-gallery .gn-gallery-photo a{
    overflow:hidden !important;
}


.gn-gallery .gn-gallery-photo img{
    display:block !important;

    width:100% !important;
    height:100% !important;
    max-width:none !important;

    object-fit:cover !important;
    object-position:center center !important;

    transition:
        transform .75s cubic-bezier(.2,.7,.2,1),
        filter .4s ease !important;
}


.gn-gallery .gn-gallery-item:hover
.gn-gallery-photo img{
    transform:scale(1.035);
}


/* =========================================================
   11. IMAGE OVERLAY
   ========================================================= */

.gn-gallery .gn-gallery-item::after{
    content:"";

    position:absolute;
    inset:0;

    z-index:2;
    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            rgba(4,18,13,.015) 20%,
            rgba(4,18,13,.035) 43%,
            rgba(4,18,13,.18) 67%,
            rgba(4,18,13,.78) 100%
        );

    transition:background .35s ease;
}


.gn-gallery .gn-gallery-item:hover::after{
    background:
        linear-gradient(
            180deg,
            rgba(4,18,13,.02) 16%,
            rgba(4,18,13,.06) 40%,
            rgba(4,18,13,.23) 64%,
            rgba(4,18,13,.84) 100%
        );
}


/* =========================================================
   12. IMAGE NUMBER
   ========================================================= */

.gn-gallery-number{
    position:absolute !important;

    top:17px !important;
    left:17px !important;

    z-index:5 !important;

    width:34px !important;
    height:34px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;

    background:
        rgba(7,20,15,.70) !important;

    border:
        1px solid
        rgba(255,255,255,.16) !important;

    box-shadow:
        0 7px 20px
        rgba(0,0,0,.10) !important;

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}


.gn-gallery-number,
.gn-gallery-number *{
    color:#39FFAE !important;
}


.gn-gallery-number .elementor-heading-title,
.gn-gallery-number p,
.gn-gallery-number span{
    margin:0 !important;

    font-size:9px !important;
    line-height:1 !important;
    font-weight:750 !important;
}


/* =========================================================
   13. EXPAND ICON
   ========================================================= */

.gn-gallery-expand{
    position:absolute !important;

    top:17px !important;
    right:17px !important;

    z-index:5 !important;

    width:34px !important;
    height:34px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;

    background:
        rgba(7,20,15,.62) !important;

    border:
        1px solid
        rgba(255,255,255,.15) !important;

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);

    opacity:.78;

    transition:
        opacity .25s ease,
        transform .25s ease,
        background .25s ease !important;
}


.gn-gallery-expand,
.gn-gallery-expand *{
    color:#FFFFFF !important;
}


.gn-gallery-expand svg{
    width:13px !important;
    height:13px !important;

    fill:currentColor !important;
}


.gn-gallery-item:hover .gn-gallery-expand{
    opacity:1;

    transform:translateY(-2px);

    background:
        rgba(18,61,51,.90) !important;
}


/* =========================================================
   14. CAPTION
   ========================================================= */

.gn-gallery-caption{
    position:absolute !important;

    left:21px !important;
    right:21px !important;
    bottom:20px !important;

    z-index:5 !important;

    width:auto !important;
    min-width:0 !important;
}


/* Main product */
.gn-gallery-item-01 .gn-gallery-caption{
    left:27px !important;
    right:27px !important;
    bottom:26px !important;
}


/* =========================================================
   15. CAPTION LABEL
   ========================================================= */

.gn-gallery-caption-label{
    margin-bottom:6px !important;
}


.gn-gallery-caption-label,
.gn-gallery-caption-label *{
    color:#39FFAE !important;
}


.gn-gallery-caption-label .elementor-heading-title,
.gn-gallery-caption-label p,
.gn-gallery-caption-label span{
    margin:0 !important;

    font-size:9px !important;
    line-height:1.2 !important;
    font-weight:750 !important;

    letter-spacing:1.25px !important;
    text-transform:uppercase !important;
}


/* =========================================================
   16. CAPTION TITLE
   ========================================================= */

.gn-gallery-caption-title{
    margin-bottom:4px !important;
}


.gn-gallery-caption-title,
.gn-gallery-caption-title *{
    color:#FFFFFF !important;
}


.gn-gallery-caption-title .elementor-heading-title,
.gn-gallery-caption-title h3,
.gn-gallery-caption-title h4,
.gn-gallery-caption-title p{
    margin:0 !important;

    font-size:17px !important;
    line-height:1.25 !important;
    font-weight:600 !important;

    letter-spacing:-.2px !important;
}


/* Main image title */
.gn-gallery-item-01
.gn-gallery-caption-title .elementor-heading-title,

.gn-gallery-item-01
.gn-gallery-caption-title h3,

.gn-gallery-item-01
.gn-gallery-caption-title p{
    font-size:24px !important;
    letter-spacing:-.45px !important;
}


/* Smaller titles for 02 / 03 */
.gn-gallery-item-02
.gn-gallery-caption-title .elementor-heading-title,

.gn-gallery-item-03
.gn-gallery-caption-title .elementor-heading-title{
    font-size:15px !important;
}


/* =========================================================
   17. CAPTION DESCRIPTION
   ========================================================= */

.gn-gallery-caption-text{
    max-width:500px !important;
}


.gn-gallery-caption-text,
.gn-gallery-caption-text p,
.gn-gallery-caption-text span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#C3D0CB !important;

    font-size:11.5px !important;
    line-height:1.5 !important;
    font-weight:400 !important;
}


/* Main image description */
.gn-gallery-item-01 .gn-gallery-caption-text,
.gn-gallery-item-01 .gn-gallery-caption-text p{
    max-width:500px !important;

    font-size:12.5px !important;
    line-height:1.55 !important;
}


/* Keep 02 / 03 clean on desktop */
.gn-gallery-item-02 .gn-gallery-caption-text,
.gn-gallery-item-03 .gn-gallery-caption-text{
    display:none !important;
}


/* =========================================================
   18. BOTTOM NOTE
   ========================================================= */

.gn-gallery-note{
    width:100% !important;

    display:flex !important;
    flex-direction:row !important;

    align-items:center !important;
    justify-content:space-between !important;

    gap:30px !important;

    margin-top:20px !important;
    padding-top:20px !important;

    border-top:
        1px solid
        rgba(18,61,51,.10) !important;
}


.gn-gallery-note-text{
    width:auto !important;
    max-width:650px !important;
}


.gn-gallery-note-text,
.gn-gallery-note-text p,
.gn-gallery-note-text span{
    margin:0 !important;

    color:#74877F !important;

    font-size:11.5px !important;
    line-height:1.55 !important;
    font-weight:400 !important;
}


/* =========================================================
   19. NOTE ACTION
   ========================================================= */

.gn-gallery-note-action{
    width:auto !important;

    display:flex !important;
    flex-direction:row !important;

    align-items:center !important;

    gap:9px !important;

    flex:0 0 auto !important;
}


.gn-gallery-note-action-text,
.gn-gallery-note-action-text *{
    color:#176B54 !important;
}


.gn-gallery-note-action-text .elementor-heading-title,
.gn-gallery-note-action-text p,
.gn-gallery-note-action-text span{
    margin:0 !important;

    color:#176B54 !important;

    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:700 !important;

    white-space:nowrap !important;
}


/* =========================================================
   20. NOTE ICON
   ========================================================= */

.gn-gallery-note-icon{
    width:27px !important;
    height:27px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;

    background:#E5EFEB !important;

    border:
        1px solid
        rgba(18,61,51,.06) !important;
}


.gn-gallery-note-icon,
.gn-gallery-note-icon *{
    color:#176B54 !important;
}


.gn-gallery-note-icon svg{
    width:11px !important;
    height:11px !important;

    fill:currentColor !important;
}


/* =========================================================
   21. TABLET ≤ 1024
   ========================================================= */

@media(max-width:1024px){

    .gn-gallery{
        padding:88px 26px 94px !important;
    }


    .gn-gallery-head{
        grid-template-columns:
            minmax(0,.95fr)
            minmax(0,1.05fr) !important;

        gap:48px !important;
        margin-bottom:43px !important;
    }


    .gn-gallery-title .elementor-heading-title,
    .gn-gallery-title h2{
        font-size:42px !important;
        letter-spacing:-1.2px !important;
    }


    .gn-gallery-intro,
    .gn-gallery-intro p{
        font-size:14.5px !important;
    }


    .gn-gallery .gn-gallery-grid{
        grid-template-rows:
            220px
            220px
            235px !important;

        gap:12px !important;
    }


    .gn-gallery-item-01
    .gn-gallery-caption-title
    .elementor-heading-title{
        font-size:22px !important;
    }
}


/* =========================================================
   22. SMALL TABLET ≤ 900
   ========================================================= */

@media(max-width:900px){

    .gn-gallery-head{
        grid-template-columns:1fr !important;

        gap:21px !important;
        align-items:start !important;
    }


    .gn-gallery-intro{
        justify-self:start !important;

        max-width:650px !important;
        padding-bottom:0 !important;
    }


    .gn-gallery .gn-gallery-grid{
        grid-template-columns:
            repeat(12,minmax(0,1fr)) !important;

        grid-template-rows:
            390px
            220px
            240px !important;

        gap:12px !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-01{
        grid-column:1 / 13 !important;
        grid-row:1 / 2 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-02{
        grid-column:1 / 7 !important;
        grid-row:2 / 3 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-03{
        grid-column:7 / 13 !important;
        grid-row:2 / 3 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-04{
        grid-column:1 / 6 !important;
        grid-row:3 / 4 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-05{
        grid-column:6 / 13 !important;
        grid-row:3 / 4 !important;
    }
}


/* =========================================================
   23. MOBILE ≤ 767
   ========================================================= */

@media(max-width:767px){

    .gn-gallery{
        padding:70px 18px 76px !important;
    }


    .gn-gallery-head{
        margin-bottom:34px !important;
    }


    .gn-gallery-eyebrow{
        margin-bottom:17px !important;
    }


    .gn-gallery-title .elementor-heading-title,
    .gn-gallery-title h2{
        max-width:none !important;

        font-size:35px !important;
        line-height:1.08 !important;

        letter-spacing:-.9px !important;
    }


    .gn-gallery-intro,
    .gn-gallery-intro p,
    .gn-gallery-intro span{
        font-size:14px !important;
        line-height:1.7 !important;
    }


    /* vertical gallery */
    .gn-gallery .gn-gallery-grid{
        grid-template-columns:1fr !important;

        grid-template-rows:
            330px
            235px
            235px
            235px
            235px !important;

        gap:12px !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item{
        width:100% !important;
        height:auto !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-01{
        grid-column:1 !important;
        grid-row:1 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-02{
        grid-column:1 !important;
        grid-row:2 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-03{
        grid-column:1 !important;
        grid-row:3 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-04{
        grid-column:1 !important;
        grid-row:4 !important;
    }


    .gn-gallery .gn-gallery-grid > .gn-gallery-item-05{
        grid-column:1 !important;
        grid-row:5 !important;
    }


    .gn-gallery .gn-gallery-item{
        border-radius:17px !important;
    }


    /* captions */
    .gn-gallery-caption,
    .gn-gallery-item-01 .gn-gallery-caption{
        left:19px !important;
        right:19px !important;
        bottom:18px !important;
    }


    .gn-gallery-item-01
    .gn-gallery-caption-title
    .elementor-heading-title,

    .gn-gallery-item-01
    .gn-gallery-caption-title h3{
        font-size:21px !important;
    }


    /* restore descriptions on 02 / 03 */
    .gn-gallery-item-02 .gn-gallery-caption-text,
    .gn-gallery-item-03 .gn-gallery-caption-text{
        display:block !important;
    }


    .gn-gallery-item-02
    .gn-gallery-caption-title
    .elementor-heading-title,

    .gn-gallery-item-03
    .gn-gallery-caption-title
    .elementor-heading-title{
        font-size:17px !important;
    }


    /* bottom note */
    .gn-gallery-note{
        flex-direction:column !important;
        align-items:flex-start !important;

        gap:12px !important;

        margin-top:17px !important;
        padding-top:17px !important;
    }


    .gn-gallery-note-action{
        align-self:flex-start !important;
    }
}


/* =========================================================
   24. SMALL MOBILE ≤ 480
   ========================================================= */

@media(max-width:480px){

    .gn-gallery-title .elementor-heading-title,
    .gn-gallery-title h2{
        font-size:32px !important;
    }


    .gn-gallery .gn-gallery-grid{
        grid-template-rows:
            305px
            220px
            220px
            220px
            220px !important;
    }


    .gn-gallery-number,
    .gn-gallery-expand{
        top:14px !important;
    }


    .gn-gallery-number{
        left:14px !important;
    }


    .gn-gallery-expand{
        right:14px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0e84c6b *//* =========================================================
   04 CONFIGURATIONS & APPLICATIONS
   GN FORTUNE PRODUCT DETAIL TEMPLATE
   ========================================================= */


/* =========================================================
   01. SECTION
   ========================================================= */

.gn-config{
    position:relative !important;
    width:100% !important;
    overflow:hidden !important;
    padding:110px 30px 120px !important;

    background:
        radial-gradient(
            circle at 88% 10%,
            rgba(57,255,174,.09) 0%,
            rgba(57,255,174,.025) 22%,
            transparent 38%
        ),
        radial-gradient(
            circle at 8% 88%,
            rgba(18,61,51,.035) 0%,
            transparent 32%
        ),
        linear-gradient(
            180deg,
            #F5F9F7 0%,
            #EEF5F1 100%
        ) !important;

    box-sizing:border-box;
}


/* subtle background grid */
.gn-config::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(18,61,51,.026) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(18,61,51,.026) 1px,
            transparent 1px
        );

    background-size:48px 48px;
    opacity:.55;
}


/* decorative glow */
.gn-config::after{
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    right:-180px;
    top:-180px;
    z-index:0;
    pointer-events:none;

    border-radius:50%;
    border:1px solid rgba(57,255,174,.10);

    box-shadow:
        0 0 0 70px rgba(57,255,174,.018),
        0 0 0 140px rgba(57,255,174,.012);
}


/* =========================================================
   02. MAIN INNER CONTAINER
   Supports Elementor Boxed container
   ========================================================= */

.gn-config > .e-con-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;
}


/* if gn-config-inner exists inside Elementor e-con-inner */
.gn-config-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;

    display:flex !important;
    flex-direction:column !important;

    gap:0 !important;
}


/* Elementor width reset */
.gn-config-inner > .e-con,
.gn-config-inner > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}


/* =========================================================
   03. SECTION HEADER
   ========================================================= */

.gn-config-head{
    width:100% !important;

    display:grid !important;
    grid-template-columns:
        minmax(0,.92fr)
        minmax(0,1.08fr) !important;

    gap:78px !important;

    align-items:end !important;

    margin-bottom:58px !important;
}


.gn-config-head > .e-con,
.gn-config-head > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


/* left heading area */
.gn-config-heading{
    width:100% !important;
    max-width:570px !important;
}


/* =========================================================
   04. EYEBROW
   ========================================================= */

.gn-config-eyebrow{
    width:max-content !important;

    margin-bottom:20px !important;
    padding:8px 13px !important;

    border-radius:999px !important;

    background:#E4F1EB !important;

    border:
        1px solid
        rgba(18,61,51,.09) !important;
}


.gn-config-eyebrow,
.gn-config-eyebrow *{
    color:#17624E !important;
}


.gn-config-eyebrow .elementor-heading-title,
.gn-config-eyebrow p{
    position:relative;

    margin:0 !important;

    padding-left:15px !important;

    font-size:11px !important;
    line-height:1.2 !important;

    font-weight:700 !important;

    letter-spacing:1.45px !important;

    text-transform:uppercase !important;
}


/* small green dot */
.gn-config-eyebrow .elementor-heading-title::before,
.gn-config-eyebrow p::before{
    content:"";

    position:absolute;

    left:0;
    top:50%;

    width:6px;
    height:6px;

    border-radius:50%;

    background:#27C98E;

    transform:translateY(-50%);

    box-shadow:
        0 0 8px
        rgba(39,201,142,.22);
}


/* =========================================================
   05. MAIN TITLE
   ========================================================= */

.gn-config-title{
    width:100% !important;
}


.gn-config-title .elementor-heading-title,
.gn-config-title h2{
    margin:0 !important;

    max-width:570px !important;

    color:#123D33 !important;

    font-size:50px !important;
    line-height:1.055 !important;

    font-weight:600 !important;

    letter-spacing:-1.65px !important;
}


/* =========================================================
   06. INTRODUCTION
   ========================================================= */

.gn-config-intro{
    width:100% !important;
    max-width:520px !important;

    justify-self:end !important;

    padding-bottom:5px !important;
}


.gn-config-intro,
.gn-config-intro p,
.gn-config-intro span,
.gn-config-intro div{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#687A73 !important;

    font-size:15.5px !important;
    line-height:1.75 !important;

    font-weight:400 !important;
}


/* =========================================================
   07. TWO-CARD GRID
   ========================================================= */

.gn-config-grid{
    width:100% !important;

    display:grid !important;

    grid-template-columns:
        repeat(2,minmax(0,1fr)) !important;

    gap:22px !important;

    align-items:stretch !important;
}


.gn-config-grid > .gn-config-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


/* =========================================================
   08. CONFIGURATION CARD
   ========================================================= */

.gn-config-card{
    position:relative !important;

    width:100% !important;

    overflow:hidden !important;

    border-radius:24px !important;

    background:
        rgba(255,255,255,.91) !important;

    border:
        1px solid
        rgba(18,61,51,.085) !important;

    box-shadow:
        0 18px 50px
        rgba(18,61,51,.052) !important;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease !important;
}


.gn-config-card:hover{
    transform:translateY(-6px) !important;

    border-color:
        rgba(39,201,142,.22) !important;

    box-shadow:
        0 28px 65px
        rgba(18,61,51,.09) !important;
}


/* =========================================================
   09. IMAGE AREA
   ========================================================= */

.gn-config-image{
    position:relative !important;

    width:100% !important;
    height:285px !important;

    overflow:hidden !important;

    background:#123D33 !important;
}


/* image widget */
.gn-config-photo{
    width:100% !important;
    height:100% !important;
}


.gn-config-photo,
.gn-config-photo .elementor-widget-container,
.gn-config-photo a,
.gn-config-photo picture{
    display:block !important;

    width:100% !important;
    height:100% !important;
}


/* actual image */
.gn-config-photo img{
    display:block !important;

    width:100% !important;
    height:100% !important;

    object-fit:cover !important;
    object-position:center center !important;

    transition:
        transform .65s
        cubic-bezier(.2,.7,.2,1),
        filter .4s ease !important;
}


/* image overlay */
.gn-config-image::after{
    content:"";

    position:absolute;
    inset:0;

    z-index:2;

    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            rgba(7,22,17,.02) 35%,
            rgba(7,22,17,.28) 100%
        );
}


/* subtle image zoom */
.gn-config-card:hover
.gn-config-photo img{
    transform:scale(1.035);
}


/* =========================================================
   10. NUMBER
   ========================================================= */

.gn-config-number{
    position:absolute !important;

    top:20px !important;
    left:20px !important;

    z-index:5 !important;

    width:42px !important;
    height:42px !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;

    background:
        rgba(57,255,174,.94) !important;

    border:
        1px solid
        rgba(255,255,255,.32) !important;

    box-shadow:
        0 8px 24px
        rgba(7,30,22,.16) !important;

    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}


.gn-config-number,
.gn-config-number *{
    color:#07140F !important;
}


.gn-config-number .elementor-heading-title,
.gn-config-number p,
.gn-config-number span{
    margin:0 !important;

    font-size:11px !important;
    line-height:1 !important;

    font-weight:800 !important;

    letter-spacing:.2px !important;
}


/* =========================================================
   11. CARD CONTENT
   ========================================================= */

.gn-config-content{
    position:relative !important;

    width:100% !important;

    padding:30px 32px 31px !important;

    background:
        rgba(255,255,255,.94) !important;
}


/* =========================================================
   12. CONFIGURATION TYPE
   ========================================================= */

.gn-config-type{
    width:max-content !important;

    margin-bottom:11px !important;
}


.gn-config-type,
.gn-config-type *{
    color:#1A765E !important;
}


.gn-config-type .elementor-heading-title,
.gn-config-type p,
.gn-config-type span{
    margin:0 !important;

    font-size:10px !important;
    line-height:1.25 !important;

    font-weight:750 !important;

    letter-spacing:1.45px !important;

    text-transform:uppercase !important;
}


/* =========================================================
   13. CARD TITLE
   ========================================================= */

.gn-config-card-title{
    margin-bottom:13px !important;
}


.gn-config-card-title .elementor-heading-title,
.gn-config-card-title h3,
.gn-config-card-title h4{
    margin:0 !important;

    color:#123D33 !important;

    font-size:25px !important;
    line-height:1.18 !important;

    font-weight:600 !important;

    letter-spacing:-.5px !important;
}


/* =========================================================
   14. CARD DESCRIPTION
   ========================================================= */

.gn-config-desc{
    min-height:70px !important;

    margin-bottom:0 !important;
}


.gn-config-desc,
.gn-config-desc p,
.gn-config-desc span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#70817A !important;

    font-size:14px !important;
    line-height:1.68 !important;

    font-weight:400 !important;
}


/* =========================================================
   15. BEST FOR AREA
   ========================================================= */

.gn-config-best{
    width:100% !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:flex-start !important;

    gap:16px !important;

    margin-top:23px !important;

    padding-top:21px !important;

    border-top:
        1px solid
        #E4ECE8 !important;
}


/* label */
.gn-best-label{
    flex:0 0 auto !important;

    width:auto !important;

    padding-top:7px !important;
}


.gn-best-label,
.gn-best-label *{
    color:#123D33 !important;
}


.gn-best-label .elementor-heading-title,
.gn-best-label p,
.gn-best-label span{
    margin:0 !important;

    font-size:9.5px !important;
    line-height:1.2 !important;

    font-weight:800 !important;

    letter-spacing:1.05px !important;

    text-transform:uppercase !important;
}


/* tag wrapper */
.gn-best-tags{
    width:auto !important;

    display:flex !important;

    flex-direction:row !important;

    flex-wrap:wrap !important;

    align-items:center !important;

    gap:7px !important;

    flex:1 1 auto !important;
}


/* each tag */
.gn-best-tag{
    width:auto !important;

    padding:7px 10px !important;

    border-radius:999px !important;

    background:#F0F6F3 !important;

    border:
        1px solid
        #DEEAE5 !important;
}


.gn-best-tag,
.gn-best-tag *{
    color:#506A61 !important;
}


.gn-best-tag .elementor-heading-title,
.gn-best-tag p,
.gn-best-tag span{
    margin:0 !important;

    font-size:10.5px !important;
    line-height:1 !important;

    font-weight:500 !important;

    white-space:nowrap !important;
}


/* =========================================================
   16. BUYER NOTE
   ========================================================= */

.gn-config-note{
    position:relative !important;

    width:100% !important;

    display:grid !important;

    grid-template-columns:
        auto
        minmax(0,1fr)
        auto !important;

    gap:18px !important;

    align-items:center !important;

    margin-top:24px !important;

    padding:20px 23px !important;

    overflow:hidden !important;

    border-radius:18px !important;

    background:
        linear-gradient(
            120deg,
            #123D33 0%,
            #10372F 100%
        ) !important;

    border:
        1px solid
        rgba(57,255,174,.08) !important;

    box-shadow:
        0 16px 42px
        rgba(18,61,51,.11) !important;
}


/* subtle note glow */
.gn-config-note::before{
    content:"";

    position:absolute;

    width:260px;
    height:180px;

    right:-80px;
    top:-100px;

    pointer-events:none;

    border-radius:50%;

    background:
        rgba(57,255,174,.075);

    filter:blur(35px);
}


/* =========================================================
   17. NOTE ICON
   ========================================================= */

.gn-config-note-icon{
    position:relative !important;
    z-index:2;

    width:40px !important;
    height:40px !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    flex:0 0 40px !important;

    border-radius:50% !important;

    background:
        rgba(57,255,174,.075) !important;

    border:
        1px solid
        rgba(57,255,174,.18) !important;
}


.gn-config-note-icon,
.gn-config-note-icon *{
    color:#39FFAE !important;
}


.gn-config-note-icon svg{
    width:15px !important;
    height:15px !important;

    fill:currentColor !important;
}


/* =========================================================
   18. NOTE CONTENT
   ========================================================= */

.gn-config-note-content{
    position:relative !important;
    z-index:2;

    width:100% !important;

    min-width:0 !important;
}


.gn-config-note-title{
    margin-bottom:4px !important;
}


.gn-config-note-title,
.gn-config-note-title *{
    color:#F3FFF9 !important;
}


.gn-config-note-title .elementor-heading-title,
.gn-config-note-title h3,
.gn-config-note-title h4,
.gn-config-note-title p{
    margin:0 !important;

    font-size:13.5px !important;
    line-height:1.35 !important;

    font-weight:650 !important;
}


/* description */
.gn-config-note-text,
.gn-config-note-text *{
    color:#AEC1B9 !important;
}


.gn-config-note-text p,
.gn-config-note-text span{
    margin:0 !important;

    font-size:12px !important;
    line-height:1.55 !important;

    font-weight:400 !important;
}


/* =========================================================
   19. NOTE BUTTON
   ========================================================= */

.gn-config-note-button{
    position:relative !important;
    z-index:2;

    width:auto !important;
}


.gn-config-note-button .elementor-button{
    min-height:42px !important;

    display:inline-flex !important;

    align-items:center !important;
    justify-content:center !important;

    padding:0 18px !important;

    border-radius:999px !important;

    background:
        rgba(57,255,174,.08) !important;

    border:
        1px solid
        rgba(57,255,174,.22) !important;

    box-shadow:none !important;

    color:#39FFAE !important;

    font-size:11.5px !important;
    line-height:1 !important;

    font-weight:700 !important;

    white-space:nowrap !important;

    transition:
        background .25s ease,
        border-color .25s ease,
        transform .25s ease,
        box-shadow .25s ease !important;
}


.gn-config-note-button .elementor-button *{
    color:#39FFAE !important;
}


.gn-config-note-button .elementor-button::after{
    content:"↗";

    margin-left:9px;

    font-size:12px;

    transition:
        transform .25s ease;
}


.gn-config-note-button .elementor-button:hover{
    transform:translateY(-2px);

    background:
        rgba(57,255,174,.14) !important;

    border-color:
        rgba(57,255,174,.42) !important;

    box-shadow:
        0 8px 22px
        rgba(57,255,174,.07) !important;
}


.gn-config-note-button
.elementor-button:hover::after{
    transform:
        translate(2px,-2px);
}


/* =========================================================
   20. TABLET
   ========================================================= */

@media(max-width:1024px){

    .gn-config{
        padding:
            88px 26px 95px !important;
    }


    .gn-config-head{
        grid-template-columns:
            minmax(0,.95fr)
            minmax(0,1.05fr) !important;

        gap:48px !important;

        margin-bottom:46px !important;
    }


    .gn-config-title
    .elementor-heading-title,
    .gn-config-title h2{
        font-size:42px !important;

        letter-spacing:-1.2px !important;
    }


    .gn-config-intro{
        font-size:14.5px !important;
    }


    .gn-config-grid{
        gap:17px !important;
    }


    .gn-config-image{
        height:245px !important;
    }


    .gn-config-content{
        padding:
            27px 27px 28px !important;
    }


    .gn-config-card-title
    .elementor-heading-title,
    .gn-config-card-title h3{
        font-size:22px !important;
    }


    .gn-config-desc{
        min-height:92px !important;
    }


    .gn-config-best{
        flex-direction:column !important;

        gap:10px !important;
    }


    .gn-best-label{
        padding-top:0 !important;
    }
}


/* =========================================================
   21. MOBILE
   ========================================================= */

@media(max-width:767px){

    .gn-config{
        padding:
            70px 18px 76px !important;
    }


    /* header */
    .gn-config-head{
        display:flex !important;

        flex-direction:column !important;

        align-items:stretch !important;

        gap:21px !important;

        margin-bottom:36px !important;
    }


    .gn-config-heading{
        max-width:none !important;
    }


    .gn-config-eyebrow{
        margin-bottom:17px !important;
    }


    .gn-config-title
    .elementor-heading-title,
    .gn-config-title h2{
        max-width:none !important;

        font-size:35px !important;
        line-height:1.08 !important;

        letter-spacing:-.9px !important;
    }


    .gn-config-intro{
        max-width:none !important;

        padding-bottom:0 !important;
    }


    .gn-config-intro,
    .gn-config-intro p,
    .gn-config-intro span{
        font-size:14px !important;
        line-height:1.7 !important;
    }


    /* cards */
    .gn-config-grid{
        grid-template-columns:
            1fr !important;

        gap:16px !important;
    }


    .gn-config-card{
        border-radius:
            20px !important;
    }


    .gn-config-image{
        height:225px !important;
    }


    .gn-config-number{
        top:16px !important;
        left:16px !important;

        width:38px !important;
        height:38px !important;
    }


    .gn-config-content{
        padding:
            25px 23px 26px !important;
    }


    .gn-config-card-title
    .elementor-heading-title,
    .gn-config-card-title h3{
        font-size:22px !important;
    }


    .gn-config-desc{
        min-height:0 !important;
    }


    .gn-config-desc,
    .gn-config-desc p,
    .gn-config-desc span{
        font-size:13.5px !important;
        line-height:1.65 !important;
    }


    .gn-config-best{
        flex-direction:column !important;

        gap:10px !important;

        margin-top:20px !important;

        padding-top:18px !important;
    }


    .gn-best-label{
        padding-top:0 !important;
    }


    .gn-best-tags{
        width:100% !important;
    }


    /* buyer note */
    .gn-config-note{
        grid-template-columns:
            auto
            minmax(0,1fr) !important;

        gap:14px !important;

        margin-top:16px !important;

        padding:
            19px 18px !important;
    }


    .gn-config-note-button{
        grid-column:2 !important;

        justify-self:start !important;

        margin-top:2px !important;
    }


    .gn-config-note-button
    .elementor-button{
        min-height:39px !important;

        padding:
            0 15px !important;
    }
}


/* =========================================================
   22. SMALL MOBILE
   ========================================================= */

@media(max-width:480px){

    .gn-config-title
    .elementor-heading-title,
    .gn-config-title h2{
        font-size:32px !important;
    }


    .gn-config-image{
        height:205px !important;
    }


    .gn-config-content{
        padding:
            23px 20px 24px !important;
    }


    .gn-best-tag{
        padding:
            7px 9px !important;
    }


    .gn-best-tag
    .elementor-heading-title,
    .gn-best-tag p,
    .gn-best-tag span{
        font-size:10px !important;
    }


    .gn-config-note{
        grid-template-columns:1fr !important;
    }


    .gn-config-note-icon{
        margin-bottom:2px !important;
    }


    .gn-config-note-button{
        grid-column:1 !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-adeff07 *//* =========================================================
   05 PROJECT + QUALITY
   GN FORTUNE PRODUCT DETAIL TEMPLATE
   ========================================================= */


/* =========================================================
   01. SECTION
   ========================================================= */

.gn-quality{
    position:relative !important;
    width:100% !important;
    overflow:hidden !important;

    padding:112px 30px 120px !important;

    background:
        radial-gradient(
            circle at 13% 14%,
            rgba(57,255,174,.075) 0%,
            rgba(57,255,174,.025) 22%,
            transparent 38%
        ),
        radial-gradient(
            circle at 92% 88%,
            rgba(57,255,174,.04) 0%,
            transparent 32%
        ),
        linear-gradient(
            180deg,
            #070D0B 0%,
            #09130F 100%
        ) !important;

    box-sizing:border-box;
}


/* subtle technical grid */
.gn-quality::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(255,255,255,.022) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.022) 1px,
            transparent 1px
        );

    background-size:48px 48px;
    opacity:.48;
}


/* decorative circle */
.gn-quality::after{
    content:"";
    position:absolute;

    width:430px;
    height:430px;

    left:-240px;
    bottom:-245px;

    z-index:0;
    pointer-events:none;

    border-radius:50%;

    border:
        1px solid
        rgba(57,255,174,.08);

    box-shadow:
        0 0 0 75px rgba(57,255,174,.014),
        0 0 0 150px rgba(57,255,174,.008);
}


/* =========================================================
   02. ELEMENTOR BOXED CONTAINER SUPPORT
   ========================================================= */

.gn-quality > .e-con-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;
}


/* custom inner */
.gn-quality-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;

    display:flex !important;
    flex-direction:column !important;

    gap:0 !important;
}


/* reset Elementor widths */
.gn-quality-inner > .e-con,
.gn-quality-inner > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}


/* =========================================================
   03. SECTION HEADER
   ========================================================= */

.gn-quality-head{
    width:100% !important;

    display:grid !important;

    grid-template-columns:
        minmax(0,.92fr)
        minmax(0,1.08fr) !important;

    gap:78px !important;

    align-items:end !important;

    margin-bottom:55px !important;
}


.gn-quality-head > .e-con,
.gn-quality-head > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


/* left heading */
.gn-quality-heading{
    width:100% !important;
    max-width:570px !important;
}


/* =========================================================
   04. EYEBROW
   ========================================================= */

.gn-quality-eyebrow{
    position:relative !important;

    width:max-content !important;

    margin-bottom:20px !important;

    padding-left:16px !important;
}


.gn-quality-eyebrow::before{
    content:"";

    position:absolute;

    left:0;
    top:50%;

    width:6px;
    height:6px;

    border-radius:50%;

    background:#39FFAE;

    transform:translateY(-50%);

    box-shadow:
        0 0 8px rgba(57,255,174,.9),
        0 0 18px rgba(57,255,174,.32);
}


.gn-quality-eyebrow,
.gn-quality-eyebrow *{
    color:#39FFAE !important;
}


.gn-quality-eyebrow .elementor-heading-title,
.gn-quality-eyebrow p,
.gn-quality-eyebrow span{
    margin:0 !important;

    font-size:11px !important;
    line-height:1.2 !important;

    font-weight:700 !important;

    letter-spacing:1.65px !important;

    text-transform:uppercase !important;
}


/* =========================================================
   05. MAIN TITLE
   ========================================================= */

.gn-quality-title{
    width:100% !important;
}


.gn-quality-title .elementor-heading-title,
.gn-quality-title h2{
    margin:0 !important;

    max-width:570px !important;

    color:#F3FFF9 !important;

    font-size:50px !important;
    line-height:1.055 !important;

    font-weight:600 !important;

    letter-spacing:-1.65px !important;
}


/* =========================================================
   06. HEADER INTRO
   ========================================================= */

.gn-quality-intro{
    width:100% !important;
    max-width:520px !important;

    justify-self:end !important;

    padding-bottom:5px !important;
}


.gn-quality-intro,
.gn-quality-intro p,
.gn-quality-intro span,
.gn-quality-intro div{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#96A9A1 !important;

    font-size:15.5px !important;
    line-height:1.75 !important;

    font-weight:400 !important;
}


/* =========================================================
   07. MAIN PROJECT + QUALITY GRID
   ========================================================= */

.gn-quality-main{
    width:100% !important;

    display:grid !important;

    grid-template-columns:
        minmax(0,1.18fr)
        minmax(360px,.82fr) !important;

    gap:22px !important;

    align-items:stretch !important;
}


.gn-quality-main > .e-con,
.gn-quality-main > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


/* =========================================================
   08. PROJECT CARD
   ========================================================= */

.gn-project-card{
    position:relative !important;

    width:100% !important;

    min-height:570px !important;

    overflow:hidden !important;

    border-radius:25px !important;

    background:#10231D !important;

    border:
        1px solid
        rgba(255,255,255,.075) !important;

    box-shadow:
        0 25px 65px
        rgba(0,0,0,.20) !important;
}


/* dark gradient over project image */
.gn-project-card::after{
    content:"";

    position:absolute;
    inset:0;

    z-index:2;
    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            rgba(3,10,8,.02) 20%,
            rgba(3,10,8,.06) 40%,
            rgba(3,10,8,.32) 65%,
            rgba(3,10,8,.93) 100%
        );
}


/* =========================================================
   09. PROJECT IMAGE
   ========================================================= */

.gn-project-photo{
    position:absolute !important;

    inset:0 !important;

    z-index:1 !important;

    width:100% !important;
    height:100% !important;

    margin:0 !important;
}


.gn-project-photo,
.gn-project-photo .elementor-widget-container,
.gn-project-photo a,
.gn-project-photo picture{
    display:block !important;

    width:100% !important;
    height:100% !important;
}


.gn-project-photo img{
    display:block !important;

    width:100% !important;
    height:100% !important;

    object-fit:cover !important;
    object-position:center center !important;

    transition:
        transform .8s
        cubic-bezier(.2,.7,.2,1),
        filter .4s ease !important;
}


/* restrained hover */
.gn-project-card:hover
.gn-project-photo img{
    transform:scale(1.025);
}


/* =========================================================
   10. PROJECT BADGE
   ========================================================= */

.gn-project-badge{
    position:absolute !important;

    top:23px !important;
    left:23px !important;

    z-index:5 !important;

    width:max-content !important;

    padding:9px 13px !important;

    border-radius:999px !important;

    background:
        rgba(7,13,11,.72) !important;

    border:
        1px solid
        rgba(57,255,174,.18) !important;

    box-shadow:
        0 8px 28px
        rgba(0,0,0,.10) !important;

    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}


.gn-project-badge,
.gn-project-badge *{
    color:#39FFAE !important;
}


.gn-project-badge .elementor-heading-title,
.gn-project-badge p,
.gn-project-badge span{
    margin:0 !important;

    font-size:9.5px !important;
    line-height:1 !important;

    font-weight:700 !important;

    letter-spacing:1.35px !important;

    text-transform:uppercase !important;
}


/* =========================================================
   11. PROJECT CONTENT
   ========================================================= */

.gn-project-content{
    position:absolute !important;

    left:31px !important;
    right:31px !important;
    bottom:31px !important;

    z-index:5 !important;

    width:auto !important;

    max-width:580px !important;
}


/* project eyebrow */
.gn-project-label{
    margin-bottom:10px !important;
}


.gn-project-label,
.gn-project-label *{
    color:#39FFAE !important;
}


.gn-project-label .elementor-heading-title,
.gn-project-label p,
.gn-project-label span{
    margin:0 !important;

    font-size:10px !important;
    line-height:1.2 !important;

    font-weight:700 !important;

    letter-spacing:1.45px !important;

    text-transform:uppercase !important;
}


/* project title */
.gn-project-title{
    margin-bottom:12px !important;
}


.gn-project-title .elementor-heading-title,
.gn-project-title h3,
.gn-project-title h4{
    margin:0 !important;

    max-width:540px !important;

    color:#FFFFFF !important;

    font-size:30px !important;
    line-height:1.15 !important;

    font-weight:600 !important;

    letter-spacing:-.65px !important;
}


/* project description */
.gn-project-text{
    max-width:545px !important;
}


.gn-project-text,
.gn-project-text p,
.gn-project-text span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#B3C4BD !important;

    font-size:13.5px !important;
    line-height:1.65 !important;

    font-weight:400 !important;
}


/* =========================================================
   12. QUALITY PANEL
   ========================================================= */

.gn-quality-panel{
    position:relative !important;

    width:100% !important;
    height:100% !important;

    min-width:0 !important;

    padding:34px 31px 18px !important;

    overflow:hidden !important;

    border-radius:25px !important;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.058) 0%,
            rgba(255,255,255,.024) 100%
        ) !important;

    border:
        1px solid
        rgba(255,255,255,.075) !important;

    box-shadow:
        0 24px 60px
        rgba(0,0,0,.17),
        inset 0 1px 0
        rgba(255,255,255,.025) !important;

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}


/* top green highlight */
.gn-quality-panel::before{
    content:"";

    position:absolute;

    top:-1px;
    left:12%;
    right:12%;

    height:1px;

    pointer-events:none;

    background:
        linear-gradient(
            90deg,
            rgba(57,255,174,0),
            rgba(57,255,174,.48),
            rgba(57,255,174,0)
        );
}


/* =========================================================
   13. PANEL LABEL
   ========================================================= */

.gn-panel-label{
    margin-bottom:13px !important;
}


.gn-panel-label,
.gn-panel-label *{
    color:#39FFAE !important;
}


.gn-panel-label .elementor-heading-title,
.gn-panel-label p,
.gn-panel-label span{
    margin:0 !important;

    font-size:9.5px !important;
    line-height:1.2 !important;

    font-weight:700 !important;

    letter-spacing:1.5px !important;

    text-transform:uppercase !important;
}


/* =========================================================
   14. PANEL TITLE
   ========================================================= */

.gn-panel-title{
    margin-bottom:11px !important;
}


.gn-panel-title .elementor-heading-title,
.gn-panel-title h3,
.gn-panel-title h4{
    margin:0 !important;

    color:#F1FCF7 !important;

    font-size:25px !important;
    line-height:1.2 !important;

    font-weight:600 !important;

    letter-spacing:-.5px !important;
}


/* =========================================================
   15. PANEL INTRO
   ========================================================= */

.gn-panel-intro{
    margin-bottom:25px !important;
}


.gn-panel-intro,
.gn-panel-intro p,
.gn-panel-intro span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#8FA29A !important;

    font-size:13px !important;
    line-height:1.65 !important;

    font-weight:400 !important;
}


/* =========================================================
   16. QUALITY LIST
   ========================================================= */

.gn-quality-list{
    width:100% !important;

    border-top:
        1px solid
        rgba(255,255,255,.07) !important;
}


/* =========================================================
   17. QUALITY ITEM
   ========================================================= */

.gn-quality-item{
    position:relative !important;

    width:100% !important;

    display:grid !important;

    grid-template-columns:
        38px
        minmax(0,1fr) !important;

    gap:15px !important;

    align-items:start !important;

    padding:20px 0 !important;

    border-bottom:
        1px solid
        rgba(255,255,255,.07) !important;
}


.gn-quality-item:last-child{
    border-bottom:0 !important;
}


/* subtle hover */
.gn-quality-item::after{
    content:"";

    position:absolute;

    left:-31px;
    right:-31px;
    top:0;
    bottom:0;

    z-index:0;

    pointer-events:none;

    opacity:0;

    background:
        linear-gradient(
            90deg,
            rgba(57,255,174,.035),
            transparent
        );

    transition:
        opacity .25s ease;
}


.gn-quality-item:hover::after{
    opacity:1;
}


/* =========================================================
   18. QUALITY NUMBER
   ========================================================= */

.gn-quality-number{
    position:relative !important;
    z-index:2 !important;

    width:38px !important;
    height:38px !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;

    background:
        rgba(57,255,174,.065) !important;

    border:
        1px solid
        rgba(57,255,174,.15) !important;
}


.gn-quality-number,
.gn-quality-number *{
    color:#39FFAE !important;
}


.gn-quality-number .elementor-heading-title,
.gn-quality-number p,
.gn-quality-number span{
    margin:0 !important;

    font-size:9.5px !important;
    line-height:1 !important;

    font-weight:700 !important;
}


/* =========================================================
   19. QUALITY ITEM CONTENT
   ========================================================= */

.gn-quality-item-content{
    position:relative !important;
    z-index:2 !important;

    width:100% !important;
    min-width:0 !important;
}


.gn-quality-item-title{
    margin-bottom:5px !important;
}


.gn-quality-item-title,
.gn-quality-item-title *{
    color:#EAF7F2 !important;
}


.gn-quality-item-title .elementor-heading-title,
.gn-quality-item-title h4,
.gn-quality-item-title h5,
.gn-quality-item-title p{
    margin:0 !important;

    font-size:14px !important;
    line-height:1.35 !important;

    font-weight:600 !important;
}


/* item description */
.gn-quality-item-text,
.gn-quality-item-text *{
    color:#879B93 !important;
}


.gn-quality-item-text p,
.gn-quality-item-text span{
    margin:0 !important;

    font-size:12px !important;
    line-height:1.55 !important;

    font-weight:400 !important;
}


/* =========================================================
   20. BOTTOM DATA STRIP
   ========================================================= */

.gn-quality-data{
    position:relative !important;

    width:100% !important;

    display:grid !important;

    grid-template-columns:
        repeat(3,minmax(0,1fr)) !important;

    margin-top:22px !important;

    overflow:hidden !important;

    border-radius:19px !important;

    background:
        rgba(255,255,255,.035) !important;

    border:
        1px solid
        rgba(255,255,255,.07) !important;

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.018) !important;
}


.gn-quality-data > .gn-quality-data-item{
    width:100% !important;
    min-width:0 !important;
}


/* =========================================================
   21. DATA ITEM
   ========================================================= */

.gn-quality-data-item{
    position:relative !important;

    padding:21px 24px !important;

    border-right:
        1px solid
        rgba(255,255,255,.07) !important;
}


.gn-quality-data-item:last-child{
    border-right:0 !important;
}


/* tiny accent */
.gn-quality-data-item::before{
    content:"";

    position:absolute;

    left:24px;
    top:0;

    width:25px;
    height:1px;

    background:
        rgba(57,255,174,.55);
}


/* =========================================================
   22. DATA LABEL
   ========================================================= */

.gn-quality-data-label{
    margin-bottom:8px !important;
}


.gn-quality-data-label,
.gn-quality-data-label *{
    color:#71877E !important;
}


.gn-quality-data-label .elementor-heading-title,
.gn-quality-data-label p,
.gn-quality-data-label span{
    margin:0 !important;

    font-size:9px !important;
    line-height:1.2 !important;

    font-weight:700 !important;

    letter-spacing:1.25px !important;

    text-transform:uppercase !important;
}


/* =========================================================
   23. DATA VALUE
   ========================================================= */

.gn-quality-data-value,
.gn-quality-data-value *{
    color:#EAF7F2 !important;
}


.gn-quality-data-value .elementor-heading-title,
.gn-quality-data-value p,
.gn-quality-data-value span{
    margin:0 !important;

    font-size:13px !important;
    line-height:1.45 !important;

    font-weight:500 !important;
}


/* =========================================================
   24. TABLET
   ========================================================= */

@media(max-width:1024px){

    .gn-quality{
        padding:
            88px 26px 95px !important;
    }


    .gn-quality-head{
        grid-template-columns:
            minmax(0,.95fr)
            minmax(0,1.05fr) !important;

        gap:48px !important;

        margin-bottom:46px !important;
    }


    .gn-quality-title
    .elementor-heading-title,
    .gn-quality-title h2{
        font-size:42px !important;

        letter-spacing:-1.2px !important;
    }


    .gn-quality-intro,
    .gn-quality-intro p{
        font-size:14.5px !important;
    }


    .gn-quality-main{
        grid-template-columns:
            minmax(0,1.08fr)
            minmax(330px,.92fr) !important;

        gap:17px !important;
    }


    .gn-project-card{
        min-height:560px !important;
    }


    .gn-project-title
    .elementor-heading-title,
    .gn-project-title h3{
        font-size:27px !important;
    }


    .gn-quality-panel{
        padding:
            29px 25px 15px !important;
    }


    .gn-panel-title
    .elementor-heading-title,
    .gn-panel-title h3{
        font-size:22px !important;
    }


    .gn-quality-item{
        padding:
            18px 0 !important;
    }
}


/* =========================================================
   25. SMALL TABLET
   ========================================================= */

@media(max-width:900px){

    .gn-quality-head{
        grid-template-columns:1fr !important;

        gap:22px !important;

        align-items:start !important;
    }


    .gn-quality-intro{
        justify-self:start !important;

        max-width:620px !important;

        padding-bottom:0 !important;
    }


    .gn-quality-main{
        grid-template-columns:1fr !important;

        gap:17px !important;
    }


    .gn-project-card{
        min-height:500px !important;
    }


    .gn-quality-panel{
        height:auto !important;

        padding:
            31px 28px 17px !important;
    }


    .gn-quality-item{
        grid-template-columns:
            40px
            minmax(0,1fr) !important;
    }
}


/* =========================================================
   26. MOBILE
   ========================================================= */

@media(max-width:767px){

    .gn-quality{
        padding:
            70px 18px 76px !important;
    }


    /* header */
    .gn-quality-head{
        margin-bottom:
            35px !important;
    }


    .gn-quality-eyebrow{
        margin-bottom:
            17px !important;
    }


    .gn-quality-title
    .elementor-heading-title,
    .gn-quality-title h2{
        max-width:none !important;

        font-size:35px !important;
        line-height:1.08 !important;

        letter-spacing:-.9px !important;
    }


    .gn-quality-intro,
    .gn-quality-intro p,
    .gn-quality-intro span{
        font-size:14px !important;
        line-height:1.7 !important;
    }


    /* project */
    .gn-project-card{
        min-height:440px !important;

        border-radius:
            20px !important;
    }


    .gn-project-badge{
        top:17px !important;
        left:17px !important;

        padding:
            8px 11px !important;
    }


    .gn-project-content{
        left:22px !important;
        right:22px !important;
        bottom:23px !important;
    }


    .gn-project-title
    .elementor-heading-title,
    .gn-project-title h3{
        font-size:25px !important;
    }


    .gn-project-text,
    .gn-project-text p{
        font-size:12.5px !important;
    }


    /* quality panel */
    .gn-quality-panel{
        padding:
            27px 22px 14px !important;

        border-radius:
            20px !important;
    }


    .gn-panel-title
    .elementor-heading-title,
    .gn-panel-title h3{
        font-size:22px !important;
    }


    .gn-panel-intro{
        margin-bottom:
            21px !important;
    }


    .gn-quality-item{
        grid-template-columns:
            36px
            minmax(0,1fr) !important;

        gap:13px !important;

        padding:
            18px 0 !important;
    }


    .gn-quality-number{
        width:36px !important;
        height:36px !important;
    }


    /* data strip */
    .gn-quality-data{
        grid-template-columns:
            1fr !important;

        margin-top:
            16px !important;

        border-radius:
            17px !important;
    }


    .gn-quality-data-item{
        padding:
            18px 20px !important;

        border-right:
            0 !important;

        border-bottom:
            1px solid
            rgba(255,255,255,.07) !important;
    }


    .gn-quality-data-item:last-child{
        border-bottom:
            0 !important;
    }


    .gn-quality-data-item::before{
        left:20px !important;
    }
}


/* =========================================================
   27. SMALL MOBILE
   ========================================================= */

@media(max-width:480px){

    .gn-quality-title
    .elementor-heading-title,
    .gn-quality-title h2{
        font-size:32px !important;
    }


    .gn-project-card{
        min-height:420px !important;
    }


    .gn-project-title
    .elementor-heading-title,
    .gn-project-title h3{
        font-size:23px !important;
    }


    .gn-quality-panel{
        padding:
            25px 20px 13px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9199546 *//* =========================================================
   06 PRODUCT FAQ — FINAL CLEAN VERSION
   GN FORTUNE PRODUCT DETAIL TEMPLATE
   Elementor Nested Accordion
   ========================================================= */


/* =========================================================
   01. SECTION
   ========================================================= */

.gn-faq{
    position:relative !important;
    width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box !important;

    padding:110px 30px 112px !important;

    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(29,91,72,.035) 0%,
            transparent 27%
        ),
        linear-gradient(
            180deg,
            #F7FAF8 0%,
            #F1F6F3 100%
        ) !important;
}


/* top separator */
.gn-faq::before{
    content:"";

    position:absolute;
    top:0;
    left:50%;

    width:min(1200px, calc(100% - 60px));
    height:1px;

    transform:translateX(-50%);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(18,61,51,.10) 18%,
            rgba(18,61,51,.10) 82%,
            transparent
        );

    pointer-events:none;
}


/* soft decorative glow */
.gn-faq::after{
    content:"";

    position:absolute;

    left:-300px;
    bottom:-330px;

    width:520px;
    height:520px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(57,255,174,.045) 0%,
            rgba(57,255,174,.012) 42%,
            transparent 70%
        );

    pointer-events:none;
}


/* =========================================================
   02. MAIN WIDTH / TWO-COLUMN LAYOUT
   ========================================================= */

.gn-faq > .e-con-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;
}


.gn-faq-inner{
    position:relative !important;
    z-index:2;

    display:grid !important;

    grid-template-columns:
        minmax(0,.82fr)
        minmax(0,1.18fr) !important;

    gap:86px !important;
    align-items:start !important;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;
}


.gn-faq-inner > .e-con,
.gn-faq-inner > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    flex:unset !important;
}


/* =========================================================
   03. LEFT COLUMN
   ========================================================= */

.gn-faq-left{
    position:sticky !important;
    top:110px !important;

    align-self:start !important;

    width:100% !important;
    max-width:440px !important;
}


/* =========================================================
   04. EYEBROW
   ========================================================= */

.gn-faq-eyebrow{
    position:relative !important;

    width:max-content !important;

    margin-bottom:19px !important;
    padding-left:16px !important;
}


.gn-faq-eyebrow::before{
    content:"";

    position:absolute;
    left:0;
    top:50%;

    width:6px;
    height:6px;

    border-radius:50%;

    background:#26C98C;

    transform:translateY(-50%);

    box-shadow:
        0 0 9px rgba(38,201,140,.22);
}


.gn-faq-eyebrow,
.gn-faq-eyebrow *{
    color:#18845F !important;
}


.gn-faq-eyebrow .elementor-heading-title,
.gn-faq-eyebrow p,
.gn-faq-eyebrow span{
    margin:0 !important;

    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:700 !important;

    letter-spacing:1.6px !important;
    text-transform:uppercase !important;
}


/* =========================================================
   05. TITLE
   ========================================================= */

.gn-faq-title{
    width:100% !important;

    margin-bottom:22px !important;
}


.gn-faq-title .elementor-heading-title,
.gn-faq-title h2{
    max-width:430px !important;

    margin:0 !important;

    color:#123D33 !important;

    font-size:49px !important;
    line-height:1.06 !important;
    font-weight:600 !important;

    letter-spacing:-1.6px !important;
}


/* =========================================================
   06. INTRO
   ========================================================= */

.gn-faq-intro{
    width:100% !important;
    max-width:405px !important;

    margin-bottom:38px !important;
}


.gn-faq-intro,
.gn-faq-intro p,
.gn-faq-intro span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#687A73 !important;

    font-size:15px !important;
    line-height:1.75 !important;
    font-weight:400 !important;
}


/* =========================================================
   07. PROJECT SUPPORT CARD
   ========================================================= */

.gn-faq-help{
    position:relative !important;

    width:100% !important;
    max-width:405px !important;

    padding:23px 24px 22px !important;

    overflow:hidden !important;

    border:
        1px solid rgba(18,61,51,.085) !important;

    border-radius:17px !important;

    background:
        rgba(255,255,255,.64) !important;

    box-shadow:
        0 12px 34px rgba(18,61,51,.035) !important;

    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}


.gn-faq-help::before{
    content:"";

    position:absolute;

    left:0;
    top:22px;

    width:3px;
    height:34px;

    border-radius:0 3px 3px 0;

    background:
        linear-gradient(
            180deg,
            #39FFAE,
            #229B78
        );
}


/* help label */

.gn-faq-help-label{
    margin-bottom:8px !important;
}


.gn-faq-help-label,
.gn-faq-help-label *{
    color:#18845F !important;
}


.gn-faq-help-label .elementor-heading-title,
.gn-faq-help-label p,
.gn-faq-help-label span{
    margin:0 !important;

    font-size:9.5px !important;
    line-height:1.2 !important;
    font-weight:750 !important;

    letter-spacing:1.25px !important;
    text-transform:uppercase !important;
}


/* help text */

.gn-faq-help-text{
    margin-bottom:14px !important;
}


.gn-faq-help-text,
.gn-faq-help-text p,
.gn-faq-help-text span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#5F736B !important;

    font-size:12.5px !important;
    line-height:1.6 !important;
    font-weight:400 !important;
}


/* help link */

.gn-faq-help-link{
    width:max-content !important;
}


.gn-faq-help-link,
.gn-faq-help-link *,
.gn-faq-help-link a{
    color:#176B54 !important;
}


.gn-faq-help-link a,
.gn-faq-help-link .elementor-heading-title,
.gn-faq-help-link p,
.gn-faq-help-link span{
    margin:0 !important;

    color:#176B54 !important;

    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:700 !important;

    text-decoration:none !important;

    transition:color .25s ease !important;
}


.gn-faq-help-link:hover,
.gn-faq-help-link:hover *,
.gn-faq-help-link a:hover{
    color:#229B78 !important;
}


/* =========================================================
   08. RIGHT COLUMN
   ========================================================= */

.gn-faq-right{
    width:100% !important;
    min-width:0 !important;

    padding:8px 0 0 !important;
}


/* =========================================================
   09. ACCORDION WRAPPER
   ========================================================= */

.gn-faq-accordion,
.gn-faq-accordion .elementor-widget-container{
    width:100% !important;
    min-width:0 !important;

    margin:0 !important;
    padding:0 !important;
}


.gn-faq-accordion .e-n-accordion{
    display:flex !important;
    flex-direction:column !important;

    width:100% !important;

    gap:0 !important;

    counter-reset:gnFaq !important;
}


/* =========================================================
   10. ACCORDION ITEM
   ========================================================= */

.gn-faq-accordion .e-n-accordion-item{
    position:relative !important;

    width:100% !important;

    margin:0 !important;

    border:0 !important;
    border-bottom:
        1px solid rgba(18,61,51,.12) !important;

    background:transparent !important;

    counter-increment:gnFaq;
}


.gn-faq-accordion
.e-n-accordion-item:first-child{
    border-top:
        1px solid rgba(18,61,51,.12) !important;
}


/* =========================================================
   11. ACCORDION TITLE
   ========================================================= */

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title{
    position:relative !important;

    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;

    align-items:center !important;
    justify-content:flex-start !important;

    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;

    min-height:82px !important;

    gap:0 !important;

    margin:0 !important;

    /* left = number area / right = icon area */
    padding:
        21px 52px
        21px 59px !important;

    box-sizing:border-box !important;

    border:0 !important;

    background:transparent !important;

    cursor:pointer !important;
    list-style:none !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item-title::-webkit-details-marker{
    display:none !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item-title > *{
    min-width:0 !important;
}


/* =========================================================
   12. AUTOMATIC NUMBER
   ========================================================= */

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title::before{
    content:
        counter(gnFaq, decimal-leading-zero) !important;

    position:absolute !important;

    left:0 !important;
    top:50% !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:34px !important;
    height:34px !important;

    margin:0 !important;

    transform:
        translateY(-50%) !important;

    border:
        1px solid rgba(18,61,51,.075) !important;

    border-radius:50% !important;

    background:
        rgba(18,61,51,.055) !important;

    color:#18845F !important;

    font-size:9px !important;
    line-height:1 !important;
    font-weight:750 !important;

    letter-spacing:.3px !important;

    box-sizing:border-box !important;

    transition:
        background .25s ease,
        border-color .25s ease,
        color .25s ease !important;
}


/* active number */

.gn-faq .gn-faq-accordion
.e-n-accordion-item[open]
.e-n-accordion-item-title::before{
    background:#123D33 !important;
    border-color:#123D33 !important;
    color:#39FFAE !important;
}


/* =========================================================
   13. QUESTION TEXT
   ========================================================= */

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title-text{
    position:relative !important;

    display:block !important;

    flex:1 1 auto !important;

    order:1 !important;

    width:auto !important;
    max-width:none !important;
    min-width:0 !important;

    margin:0 !important;
    padding:0 !important;

    color:#17332C !important;

    font-size:16px !important;
    line-height:1.45 !important;
    font-weight:600 !important;

    letter-spacing:-.18px !important;

    text-align:left !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;

    transition:color .25s ease !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item-title-text > *{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;

    margin:0 !important;

    white-space:normal !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item-title:hover
.e-n-accordion-item-title-text{
    color:#176B54 !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item[open]
.e-n-accordion-item-title-text{
    color:#123D33 !important;
}


/* =========================================================
   14. +/- ICON
   Elementor native Expand / Collapse
   ========================================================= */

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title-icon{
    position:absolute !important;

    right:0 !important;
    left:auto !important;
    top:50% !important;

    order:2 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:32px !important;
    height:32px !important;

    min-width:32px !important;
    min-height:32px !important;

    margin:0 !important;
    padding:0 !important;

    transform:
        translateY(-50%) !important;

    border:
        1px solid rgba(18,61,51,.10) !important;

    border-radius:50% !important;

    background:
        rgba(255,255,255,.72) !important;

    color:#176B54 !important;

    overflow:hidden !important;

    box-sizing:border-box !important;

    transition:
        background .25s ease,
        border-color .25s ease,
        color .25s ease !important;
}


/* Elementor open/closed icon wrappers */

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title-icon .e-opened,

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title-icon .e-closed{
    position:absolute !important;

    inset:0 !important;

    width:100% !important;
    height:100% !important;

    margin:0 !important;
    padding:0 !important;

    align-items:center !important;
    justify-content:center !important;
}


/* closed = plus */

.gn-faq .gn-faq-accordion
.e-n-accordion-item:not([open])
.e-n-accordion-item-title-icon .e-closed{
    display:flex !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item:not([open])
.e-n-accordion-item-title-icon .e-opened{
    display:none !important;
}


/* open = minus */

.gn-faq .gn-faq-accordion
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon .e-closed{
    display:none !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon .e-opened{
    display:flex !important;
}


/* normalize SVG */

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title-icon svg{
    position:static !important;

    display:block !important;

    width:12px !important;
    height:12px !important;

    margin:0 !important;

    transform:none !important;

    fill:currentColor !important;
}


/* hover */

.gn-faq .gn-faq-accordion
.e-n-accordion-item-title:hover
.e-n-accordion-item-title-icon{
    background:#FFFFFF !important;

    border-color:
        rgba(18,61,51,.17) !important;
}


/* open */

.gn-faq .gn-faq-accordion
.e-n-accordion-item[open]
.e-n-accordion-item-title-icon{
    background:#123D33 !important;

    border-color:#123D33 !important;

    color:#39FFAE !important;
}


/* =========================================================
   15. ANSWER
   ========================================================= */

.gn-faq .gn-faq-accordion
.e-n-accordion-item > .elementor-element{
    border:0 !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item > .e-con{
    width:100% !important;
    max-width:100% !important;

    margin:0 !important;

    padding:
        0 52px
        26px 59px !important;

    box-sizing:border-box !important;

    background:transparent !important;
}


.gn-faq .gn-faq-accordion
.e-n-accordion-item > .e-con
.elementor-widget-text-editor,

.gn-faq .gn-faq-accordion
.e-n-accordion-item > .e-con
.elementor-widget-text-editor p,

.gn-faq .gn-faq-accordion
.e-n-accordion-item > .e-con p{
    width:100% !important;
    max-width:none !important;

    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#667970 !important;

    font-size:14px !important;
    line-height:1.75 !important;
    font-weight:400 !important;
}


/* =========================================================
   16. TABLET ≤ 1024
   ========================================================= */

@media(max-width:1024px){

    .gn-faq{
        padding:
            88px 26px 92px !important;
    }


    .gn-faq-inner{
        grid-template-columns:
            minmax(0,.78fr)
            minmax(0,1.22fr) !important;

        gap:55px !important;
    }


    .gn-faq-left{
        top:90px !important;
    }


    .gn-faq-title .elementor-heading-title,
    .gn-faq-title h2{
        font-size:42px !important;

        letter-spacing:-1.2px !important;
    }


    .gn-faq .gn-faq-accordion
    .e-n-accordion-item-title-text{
        font-size:15.5px !important;
    }
}


/* =========================================================
   17. SMALL TABLET ≤ 900
   ========================================================= */

@media(max-width:900px){

    .gn-faq-inner{
        grid-template-columns:
            1fr !important;

        gap:48px !important;
    }


    .gn-faq-left{
        position:relative !important;

        top:auto !important;

        max-width:680px !important;
    }


    .gn-faq-title .elementor-heading-title,
    .gn-faq-title h2{
        max-width:570px !important;
    }


    .gn-faq-intro{
        max-width:610px !important;

        margin-bottom:28px !important;
    }


    .gn-faq-help{
        max-width:610px !important;
    }


    .gn-faq-right{
        padding-top:0 !important;
    }
}


/* =========================================================
   18. MOBILE ≤ 767
   ========================================================= */

@media(max-width:767px){

    .gn-faq{
        padding:
            70px 18px 76px !important;
    }


    .gn-faq-inner{
        gap:38px !important;
    }


    .gn-faq-eyebrow{
        margin-bottom:17px !important;
    }


    .gn-faq-title{
        margin-bottom:18px !important;
    }


    .gn-faq-title .elementor-heading-title,
    .gn-faq-title h2{
        max-width:none !important;

        font-size:35px !important;
        line-height:1.08 !important;

        letter-spacing:-.9px !important;
    }


    .gn-faq-intro{
        margin-bottom:24px !important;
    }


    .gn-faq-intro,
    .gn-faq-intro p{
        font-size:14px !important;
        line-height:1.7 !important;
    }


    .gn-faq-help{
        padding:
            20px 20px 19px !important;

        border-radius:15px !important;
    }


    /* FAQ title */

    .gn-faq .gn-faq-accordion
    .e-n-accordion-item-title{
        min-height:74px !important;

        padding:
            18px 40px
            18px 43px !important;
    }


    /* number */

    .gn-faq .gn-faq-accordion
    .e-n-accordion-item-title::before{
        width:28px !important;
        height:28px !important;

        font-size:8px !important;
    }


    /* question */

    .gn-faq .gn-faq-accordion
    .e-n-accordion-item-title-text{
        font-size:14.5px !important;
        line-height:1.45 !important;
    }


    /* icon */

    .gn-faq .gn-faq-accordion
    .e-n-accordion-item-title-icon{
        width:28px !important;
        height:28px !important;

        min-width:28px !important;
        min-height:28px !important;
    }


    .gn-faq .gn-faq-accordion
    .e-n-accordion-item-title-icon svg{
        width:10px !important;
        height:10px !important;
    }


    /* answer */

    .gn-faq .gn-faq-accordion
    .e-n-accordion-item > .e-con{
        padding:
            0 40px
            22px 43px !important;
    }


    .gn-faq .gn-faq-accordion
    .e-n-accordion-item > .e-con
    .elementor-widget-text-editor,

    .gn-faq .gn-faq-accordion
    .e-n-accordion-item > .e-con
    .elementor-widget-text-editor p,

    .gn-faq .gn-faq-accordion
    .e-n-accordion-item > .e-con p{
        font-size:13.5px !important;
        line-height:1.7 !important;
    }
}


/* =========================================================
   19. SMALL MOBILE ≤ 480
   ========================================================= */

@media(max-width:480px){

    .gn-faq-title .elementor-heading-title,
    .gn-faq-title h2{
        font-size:32px !important;
    }


    .gn-faq-help{
        padding:
            19px 18px 18px !important;
    }


    .gn-faq .gn-faq-accordion
    .e-n-accordion-item-title{
        padding:
            17px 38px
            17px 40px !important;
    }


    .gn-faq .gn-faq-accordion
    .e-n-accordion-item > .e-con{
        padding:
            0 38px
            21px 40px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1dc0d03 *//* =========================================================
   07 FINAL RFQ CTA
   GN FORTUNE PRODUCT DETAIL TEMPLATE
   FINAL VERSION
   ========================================================= */


/* =========================================================
   01. SECTION
   ========================================================= */

.gn-final-cta{
    position:relative !important;
    width:100% !important;
    overflow:hidden !important;
    box-sizing:border-box !important;

    padding:92px 30px 96px !important;

    background:
        radial-gradient(
            circle at 12% 18%,
            rgba(57,255,174,.075) 0%,
            rgba(57,255,174,.025) 20%,
            transparent 40%
        ),
        radial-gradient(
            circle at 92% 82%,
            rgba(34,155,120,.10) 0%,
            rgba(34,155,120,.025) 24%,
            transparent 44%
        ),
        linear-gradient(
            135deg,
            #070D0B 0%,
            #09130F 48%,
            #0B1813 100%
        ) !important;
}


/* subtle grid */
.gn-final-cta::before{
    content:"";

    position:absolute;
    inset:0;

    z-index:0;
    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(255,255,255,.018) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.018) 1px,
            transparent 1px
        );

    background-size:56px 56px;

    mask-image:
        linear-gradient(
            90deg,
            rgba(0,0,0,.75),
            rgba(0,0,0,.22) 65%,
            transparent
        );

    -webkit-mask-image:
        linear-gradient(
            90deg,
            rgba(0,0,0,.75),
            rgba(0,0,0,.22) 65%,
            transparent
        );
}


/* decorative glow */
.gn-final-cta::after{
    content:"";

    position:absolute;

    right:-220px;
    top:-250px;

    z-index:0;

    width:520px;
    height:520px;

    border-radius:50%;

    border:
        1px solid rgba(57,255,174,.045);

    box-shadow:
        0 0 0 85px rgba(57,255,174,.012),
        0 0 0 170px rgba(57,255,174,.006);

    pointer-events:none;
}


/* =========================================================
   02. ELEMENTOR BOXED SUPPORT
   ========================================================= */

.gn-final-cta > .e-con-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;
}


.gn-final-cta-inner{
    position:relative !important;
    z-index:2;

    width:100% !important;
    max-width:1200px !important;

    margin:0 auto !important;
}


.gn-final-cta-inner > .e-con,
.gn-final-cta-inner > .elementor-element{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}


/* =========================================================
   03. MAIN CTA PANEL
   ========================================================= */

.gn-final-cta-panel{
    position:relative !important;

    display:grid !important;

    grid-template-columns:
        minmax(0,1.35fr)
        minmax(300px,.65fr) !important;

    align-items:center !important;

    gap:72px !important;

    width:100% !important;

    padding:64px 66px !important;

    overflow:hidden !important;

    border:
        1px solid rgba(255,255,255,.09) !important;

    border-radius:28px !important;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.045) 0%,
            rgba(255,255,255,.018) 52%,
            rgba(57,255,174,.018) 100%
        ) !important;

    box-shadow:
        0 30px 80px rgba(0,0,0,.20),
        inset 0 1px 0 rgba(255,255,255,.04) !important;

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}


/* internal green glow */
.gn-final-cta-panel::before{
    content:"";

    position:absolute;

    left:-150px;
    bottom:-230px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(57,255,174,.09) 0%,
            rgba(57,255,174,.025) 38%,
            transparent 70%
        );

    pointer-events:none;
}


/* subtle right divider */
.gn-final-cta-panel::after{
    content:"";

    position:absolute;

    top:15%;
    bottom:15%;

    left:68%;

    width:1px;

    background:
        linear-gradient(
            180deg,
            transparent,
            rgba(255,255,255,.08) 22%,
            rgba(255,255,255,.08) 78%,
            transparent
        );

    pointer-events:none;
}


/* =========================================================
   04. CONTENT COLUMN
   ========================================================= */

.gn-final-cta-content{
    position:relative !important;
    z-index:2;

    width:100% !important;
    min-width:0 !important;
}


/* =========================================================
   05. EYEBROW
   ========================================================= */

.gn-final-cta-eyebrow{
    position:relative !important;

    width:max-content !important;

    margin-bottom:20px !important;

    padding-left:17px !important;
}


.gn-final-cta-eyebrow::before{
    content:"";

    position:absolute;

    left:0;
    top:50%;

    width:6px;
    height:6px;

    border-radius:50%;

    background:#39FFAE;

    transform:translateY(-50%);

    box-shadow:
        0 0 10px rgba(57,255,174,.42);
}


.gn-final-cta-eyebrow,
.gn-final-cta-eyebrow *{
    color:#39FFAE !important;
}


.gn-final-cta-eyebrow .elementor-heading-title,
.gn-final-cta-eyebrow p,
.gn-final-cta-eyebrow span{
    margin:0 !important;

    font-size:10px !important;
    line-height:1.2 !important;

    font-weight:700 !important;

    letter-spacing:1.65px !important;

    text-transform:uppercase !important;
}


/* =========================================================
   06. TITLE
   ========================================================= */

.gn-final-cta-title{
    width:100% !important;
    max-width:720px !important;

    margin-bottom:22px !important;
}


.gn-final-cta-title .elementor-heading-title,
.gn-final-cta-title h2{
    margin:0 !important;

    color:#F5FAF7 !important;

    font-size:48px !important;
    line-height:1.06 !important;

    font-weight:600 !important;

    letter-spacing:-1.6px !important;
}


/* =========================================================
   07. DESCRIPTION
   ========================================================= */

.gn-final-cta-text{
    width:100% !important;
    max-width:650px !important;

    margin-bottom:31px !important;
}


.gn-final-cta-text,
.gn-final-cta-text p,
.gn-final-cta-text span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#A9BBB4 !important;

    font-size:14.5px !important;
    line-height:1.75 !important;

    font-weight:400 !important;
}


/* =========================================================
   08. PROJECT INFORMATION META
   ========================================================= */

.gn-final-cta-meta{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;

    align-items:center !important;

    gap:11px 26px !important;

    width:100% !important;
}


.gn-final-meta-item{
    position:relative !important;

    width:auto !important;
    min-width:0 !important;

    padding-left:15px !important;
}


/* green dot */
.gn-final-meta-item::before{
    content:"";

    position:absolute;

    left:0;
    top:50%;

    width:5px;
    height:5px;

    border-radius:50%;

    background:#39FFAE;

    transform:translateY(-50%);

    box-shadow:
        0 0 7px rgba(57,255,174,.28);
}


.gn-final-meta-item,
.gn-final-meta-item *{
    color:#CBD8D3 !important;
}


.gn-final-meta-item .elementor-heading-title,
.gn-final-meta-item p,
.gn-final-meta-item span{
    margin:0 !important;

    color:#CBD8D3 !important;

    font-size:11px !important;
    line-height:1.3 !important;

    font-weight:600 !important;

    letter-spacing:.15px !important;

    white-space:nowrap !important;
}


/* =========================================================
   09. ACTION COLUMN
   ========================================================= */

.gn-final-cta-action{
    position:relative !important;
    z-index:2;

    display:flex !important;
    flex-direction:column !important;

    align-items:stretch !important;
    justify-content:center !important;

    width:100% !important;
    min-width:0 !important;

    padding-left:12px !important;
}


/* =========================================================
   10. PRIMARY CTA
   ========================================================= */

.gn-final-cta-primary{
    width:100% !important;

    margin-bottom:12px !important;
}


.gn-final-cta-primary .elementor-button{
    position:relative !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    width:100% !important;
    min-height:56px !important;

    padding:16px 24px !important;

    overflow:hidden !important;

    border:0 !important;
    border-radius:12px !important;

    background:
        linear-gradient(
            135deg,
            #39FFAE 0%,
            #63FFC2 100%
        ) !important;

    color:#092019 !important;

    box-shadow:
        0 10px 30px rgba(57,255,174,.14) !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        filter .25s ease !important;
}


.gn-final-cta-primary .elementor-button-text{
    color:#092019 !important;

    font-size:12px !important;
    line-height:1.2 !important;

    font-weight:750 !important;

    letter-spacing:.25px !important;
}


/* subtle shine */
.gn-final-cta-primary .elementor-button::before{
    content:"";

    position:absolute;

    top:0;
    left:-120%;

    width:75%;
    height:100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.26),
            transparent
        );

    transform:skewX(-20deg);

    transition:left .55s ease;
}


.gn-final-cta-primary .elementor-button:hover{
    transform:translateY(-2px);

    box-shadow:
        0 16px 38px rgba(57,255,174,.22) !important;

    filter:saturate(1.04);
}


.gn-final-cta-primary
.elementor-button:hover::before{
    left:145%;
}


/* =========================================================
   11. SECONDARY CTA
   ========================================================= */

.gn-final-cta-secondary{
    width:100% !important;

    margin-bottom:16px !important;
}


.gn-final-cta-secondary .elementor-button{
    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    width:100% !important;
    min-height:54px !important;

    padding:15px 24px !important;

    border:
        1px solid rgba(57,255,174,.26) !important;

    border-radius:12px !important;

    background:
        rgba(57,255,174,.025) !important;

    color:#DDE9E4 !important;

    box-shadow:none !important;

    transition:
        transform .25s ease,
        background .25s ease,
        border-color .25s ease,
        color .25s ease !important;
}


.gn-final-cta-secondary
.elementor-button-text{
    color:#DDE9E4 !important;

    font-size:12px !important;
    line-height:1.2 !important;

    font-weight:650 !important;

    letter-spacing:.2px !important;
}


.gn-final-cta-secondary
.elementor-button:hover{
    transform:translateY(-2px);

    background:
        rgba(57,255,174,.07) !important;

    border-color:
        rgba(57,255,174,.45) !important;
}


.gn-final-cta-secondary
.elementor-button:hover
.elementor-button-text{
    color:#39FFAE !important;
}


/* =========================================================
   12. BUTTON ICONS
   ========================================================= */

.gn-final-cta-primary
.elementor-button-icon,

.gn-final-cta-secondary
.elementor-button-icon{
    display:flex !important;

    align-items:center !important;
    justify-content:center !important;
}


.gn-final-cta-primary
.elementor-button-icon svg,

.gn-final-cta-secondary
.elementor-button-icon svg{
    width:12px !important;
    height:12px !important;
}


/* =========================================================
   13. CTA NOTE
   ========================================================= */

.gn-final-cta-note{
    width:100% !important;

    text-align:center !important;
}


.gn-final-cta-note,
.gn-final-cta-note p,
.gn-final-cta-note span{
    margin-top:0 !important;
    margin-bottom:0 !important;

    color:#778A82 !important;

    font-size:10.5px !important;
    line-height:1.5 !important;

    font-weight:400 !important;
}


/* =========================================================
   14. TABLET ≤ 1024
   ========================================================= */

@media(max-width:1024px){

    .gn-final-cta{
        padding:
            82px 26px 86px !important;
    }


    .gn-final-cta-panel{
        grid-template-columns:
            minmax(0,1.15fr)
            minmax(270px,.85fr) !important;

        gap:48px !important;

        padding:
            54px 48px !important;
    }


    .gn-final-cta-panel::after{
        left:64% !important;
    }


    .gn-final-cta-title
    .elementor-heading-title,

    .gn-final-cta-title h2{
        font-size:41px !important;

        letter-spacing:-1.2px !important;
    }


    .gn-final-cta-meta{
        gap:10px 18px !important;
    }
}


/* =========================================================
   15. SMALL TABLET ≤ 900
   ========================================================= */

@media(max-width:900px){

    .gn-final-cta-panel{
        grid-template-columns:
            1fr !important;

        gap:38px !important;

        padding:
            50px 44px !important;
    }


    /* divider becomes horizontal */
    .gn-final-cta-panel::after{
        top:auto !important;
        bottom:155px !important;

        left:44px !important;
        right:44px !important;

        width:auto !important;
        height:1px !important;

        background:
            linear-gradient(
                90deg,
                transparent,
                rgba(255,255,255,.08) 15%,
                rgba(255,255,255,.08) 85%,
                transparent
            ) !important;
    }


    .gn-final-cta-content{
        max-width:720px !important;
    }


    .gn-final-cta-action{
        max-width:460px !important;

        padding-left:0 !important;
    }
}


/* =========================================================
   16. MOBILE ≤ 767
   ========================================================= */

@media(max-width:767px){

    .gn-final-cta{
        padding:
            66px 18px 70px !important;
    }


    .gn-final-cta-panel{
        gap:32px !important;

        padding:
            38px 25px 32px !important;

        border-radius:22px !important;
    }


    .gn-final-cta-panel::after{
        display:none !important;
    }


    .gn-final-cta-eyebrow{
        margin-bottom:17px !important;
    }


    .gn-final-cta-title{
        margin-bottom:18px !important;
    }


    .gn-final-cta-title
    .elementor-heading-title,

    .gn-final-cta-title h2{
        font-size:35px !important;
        line-height:1.08 !important;

        letter-spacing:-.9px !important;
    }


    .gn-final-cta-text{
        margin-bottom:25px !important;
    }


    .gn-final-cta-text,
    .gn-final-cta-text p{
        font-size:14px !important;
        line-height:1.7 !important;
    }


    .gn-final-cta-meta{
        display:grid !important;

        grid-template-columns:
            1fr 1fr !important;

        gap:11px 18px !important;
    }


    .gn-final-meta-item
    .elementor-heading-title,

    .gn-final-meta-item p,
    .gn-final-meta-item span{
        white-space:normal !important;
    }


    .gn-final-cta-action{
        width:100% !important;
        max-width:none !important;
    }


    .gn-final-cta-primary
    .elementor-button,

    .gn-final-cta-secondary
    .elementor-button{
        min-height:54px !important;
    }
}


/* =========================================================
   17. SMALL MOBILE ≤ 480
   ========================================================= */

@media(max-width:480px){

    .gn-final-cta-panel{
        padding:
            34px 20px 28px !important;
    }


    .gn-final-cta-title
    .elementor-heading-title,

    .gn-final-cta-title h2{
        font-size:31px !important;
    }


    .gn-final-cta-meta{
        grid-template-columns:
            1fr !important;

        gap:10px !important;
    }


    .gn-final-cta-primary
    .elementor-button,

    .gn-final-cta-secondary
    .elementor-button{
        padding:
            15px 18px !important;
    }
}/* End custom CSS */