.elementor-12 .elementor-element.elementor-element-46743d5{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-3d47698{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-51561b6{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-46f1e24{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-3e4f3519{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-58fc92e > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-2c5ad454{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-3ba78c16 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-7f244520 > .elementor-container{max-width:1280px;}.elementor-12 .elementor-element.elementor-element-7f244520{padding:50px 0px 50px 0px;}.elementor-12 .elementor-element.elementor-element-2c8ef8da{padding:0px 0px 0px 0px;}.elementor-12 .elementor-element.elementor-element-4bb056f3 > .elementor-element-populated{padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-12 .elementor-element.elementor-element-7f244520{padding:30px 30px 30px 30px;}}@media(max-width:767px){.elementor-12 .elementor-element.elementor-element-7f244520{padding:30px 15px 30px 15px;}}/* Start custom CSS for html, class: .elementor-element-af95f98 *//*==================================
FENCE MASTER PREMIUM HERO
==================================*/

.fm-hero{
    position:relative;
    min-height:620px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
}

.fm-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        rgba(0,0,0,.35),
        rgba(0,0,0,.35)
    );
}

.fm-container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1280px;
    margin:auto;
    padding:0 24px;
}

.fm-hero-content{
    max-width:900px;
    margin:auto;
    text-align:center;
}

.fm-hero-content h1{

    color:#fff;
    font-size:clamp(42px,5vw,70px);
    line-height:1.1;
    font-weight:800;
    margin:0;

}

/*=====================
BUTTONS
======================*/

.fm-hero-buttons{

    margin-top:40px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;

}

.fm-btn-primary,
.fm-btn-secondary{

    width:190px;
    height:58px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:16px;
    font-weight:700;

    text-decoration:none;

    border-radius:6px;

    transition:.35s;

}

/* Primary */

.fm-btn-primary{

    background:#2d7d46;
    color:#fff;
    border:2px solid #2d7d46;

}

.fm-btn-primary:hover{

    background:#25683a;
    border-color:#25683a;

}

/* Secondary */

.fm-btn-secondary{

    background:rgba(255,255,255,.10);
    color:#fff;
    border:2px solid #fff;
    backdrop-filter:blur(8px);

}

.fm-btn-secondary:hover{

    background:#fff;
    color:#2d7d46;

}

/*=====================
RESPONSIVE
======================*/

@media(max-width:768px){

    .fm-hero{

        min-height:460px;

    }

    .fm-hero-content h1{

        font-size:36px;

    }

    .fm-hero-buttons{

        flex-direction:column;

    }

    .fm-btn-primary,
    .fm-btn-secondary{

        width:240px;

    }

}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-a502238 *//*==================================
FENCE MASTER HERO V2
===================================*/

.fm-hero{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:650px;
    background:url("https://fencemasteraustralia.com.au/wp-content/uploads/2026/06/Project-2.jpeg") center center/cover no-repeat;
    overflow:hidden;
}

.fm-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(0,0,0,.72) 0%,
        rgba(0,0,0,.55) 45%,
        rgba(0,0,0,.45) 100%
    );
}

.fm-container{
    width:100%;
    max-width:1280px;
    margin:auto;
    padding:0 24px;
    position:relative;
    z-index:2;
}

.fm-hero-content{
    max-width:760px;
    text-align:center;
    margin:auto;
}

.fm-hero-content h1{
    margin:0 0 22px;
    color:#fff;
    font-size:clamp(42px,5vw,68px);
    line-height:1.1;
    font-weight:800;
}

.fm-hero-content p{
    margin:0 auto 35px;
    max-width:680px;
    color:rgba(255,255,255,.92);
    font-size:18px;
    line-height:1.8;
}

/*=========================
BUTTONS
=========================*/

.fm-hero-buttons{
    display:flex;
    justify-content:center;
    gap:18px;
    flex-wrap:wrap;
}

.fm-btn-primary,
.fm-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:180px;
    height:56px;
    padding:0 34px;
    border-radius:8px;
    text-decoration:none;
    font-size:16px;
    font-weight:700;
    transition:.35s ease;
}

/* Primary */

.fm-btn-primary{
    background:#35e167;
    color:#fff;
    border:2px solid #35e167;
}

.fm-btn-primary:hover{
    background:#29c95a;
    border-color:#29c95a;
    transform:translateY(-3px);
}

/* Secondary */

.fm-btn-secondary{
    background:rgba(255,255,255,.08);
    color:#fff;
    border:2px solid rgba(255,255,255,.35);
    backdrop-filter:blur(10px);
}

.fm-btn-secondary:hover{
    background:#fff;
    color:#222;
    border-color:#fff;
    transform:translateY(-3px);
}

/*=========================
RESPONSIVE
=========================*/

@media(max-width:991px){

    .fm-hero{
        min-height:560px;
    }

    .fm-hero-content h1{
        font-size:48px;
    }

}

@media(max-width:767px){

    .fm-hero{
        min-height:470px;
    }

    .fm-hero-content h1{
        font-size:34px;
    }

    .fm-hero-content p{
        font-size:16px;
    }

    .fm-hero-buttons{
        flex-direction:column;
        align-items:center;
    }

    .fm-btn-primary,
    .fm-btn-secondary{
        width:100%;
        max-width:280px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d3de1dc *//* ==========================================
   FENCE MASTER SERVICES HIGHLIGHT SECTION
========================================== */

.fm-services-highlight{
    padding:120px 0;
    background:#f7f8f6;
    overflow:hidden;
}

.fm-container{
    max-width:1320px;
    margin:0 auto;
    padding:0 24px;
}

/* Layout */

.fm-services-grid{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:70px;
    align-items:center;
}

/* Left Content */

.fm-section-subtitle{
    display:inline-flex;
    align-items:center;
    padding:8px 18px;
    border:1px solid #dfe5e1;
    background:#fff;
    color:#6ea342;
    font-size:13px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.08em;
    margin-bottom:20px;
}

.fm-services-content h2{
    font-size:clamp(38px,4vw,62px);
    line-height:1.05;
    font-weight:700;
    color:#111;
    margin:0 0 20px;
}

.fm-services-content > p{
    font-size:17px;
    line-height:1.9;
    color:#666;
    margin:0 0 40px;
    max-width:650px;
}

/* Service Cards */

.fm-services-buttons{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}

.fm-service-card{
    position:relative;
    display:block;
    height:440px;
    overflow:hidden;
    text-decoration:none;
    background:#f1f1f1;
    transition:.45s cubic-bezier(.22,.61,.36,1);
}

.fm-service-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:1s cubic-bezier(.22,.61,.36,1);
}

/* Remove Dark Overlay */

.fm-service-overlay{
    display:none;
}

/* Content Card */

.fm-service-content{
    position:absolute;
    left:20px;
    right:20px;
    bottom:20px;
    background:rgba(255,255,255,.95);
    backdrop-filter:blur(10px);
    padding:22px;
    z-index:2;
    border:1px solid rgba(255,255,255,.8);
    transition:.35s ease;
}

.fm-service-content h3{
    font-size:30px;
    font-weight:700;
    color:#111;
    margin:0 0 6px;
}

.fm-service-content span{
    font-size:14px;
    color:#1378d8;
    font-weight:600;
    letter-spacing:.03em;
}

.fm-service-card:hover{
    transform:translateY(-10px);
    box-shadow:0 30px 70px rgba(0,0,0,.12);
}

.fm-service-card:hover img{
    transform:scale(1.08);
}

.fm-service-card:hover .fm-service-content{
    transform:translateY(-5px);
}

/* Right Side Features */

.fm-services-features{
    display:grid;
    gap:20px;
}

.fm-feature-box{
    background:#fff;
    border:1px solid #e4e8e5;
    padding:28px;
    display:flex;
    align-items:flex-start;
    gap:18px;
    transition:.35s ease;
}

.fm-feature-box:hover{
    transform:translateX(8px);
    box-shadow:0 18px 40px rgba(0,0,0,.06);
}

.fm-feature-icon{
    width:56px;
    height:56px;
    min-width:56px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#7ab648;
    color:#fff;
    font-size:22px;
    font-weight:700;
}

.fm-feature-text h4{
    margin:0 0 8px;
    color:#111;
    font-size:22px;
    font-weight:700;
}

.fm-feature-text p{
    margin:0;
    color:#666;
    font-size:15px;
    line-height:1.8;
}

/* Scroll Animations */

.fm-services-content{
    animation:fmFadeLeft .9s ease;
}

.fm-services-features{
    animation:fmFadeRight .9s ease;
}

.fm-service-card:nth-child(1){
    animation:fmFloat 6s ease-in-out infinite;
}

.fm-service-card:nth-child(2){
    animation:fmFloat 6s ease-in-out infinite .8s;
}

.fm-feature-box:nth-child(1){
    animation:fmFadeUp .7s ease;
}

.fm-feature-box:nth-child(2){
    animation:fmFadeUp .9s ease;
}

.fm-feature-box:nth-child(3){
    animation:fmFadeUp 1.1s ease;
}

.fm-feature-box:nth-child(4){
    animation:fmFadeUp 1.3s ease;
}

/* Animations */

@keyframes fmFadeLeft{
    from{
        opacity:0;
        transform:translateX(-60px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes fmFadeRight{
    from{
        opacity:0;
        transform:translateX(60px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes fmFadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes fmFloat{
    0%,100%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-8px);
    }
}

/* Tablet */

@media(max-width:1024px){

    .fm-services-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .fm-services-content > p{
        max-width:100%;
    }
}

/* Mobile */

@media(max-width:767px){

    .fm-services-highlight{
        padding:80px 0;
    }

    .fm-services-buttons{
        grid-template-columns:1fr;
    }

    .fm-service-card{
        height:320px;
    }

    .fm-service-content{
        left:15px;
        right:15px;
        bottom:15px;
        padding:18px;
    }

    .fm-service-content h3{
        font-size:24px;
    }

    .fm-feature-box{
        padding:22px;
    }

    .fm-feature-icon{
        width:48px;
        height:48px;
        min-width:48px;
        font-size:18px;
    }

    .fm-feature-text h4{
        font-size:19px;
    }

    .fm-services-content h2{
        font-size:34px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e8341cf *//* =========================
FENCE MASTER TRUST SECTION
PREMIUM MINIMAL TRUST BAR
========================= */

.fm-trust-section{
    position:relative;
    z-index:5;
    margin-top:-42px;
    padding-bottom:30px;
}

/* =========================
CONTAINER
========================= */

.fm-container{
    width:100%;
    max-width:1240px;
    margin:0 auto;
    padding:0 24px;
}

/* =========================
GRID
========================= */

.fm-trust-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    background:#FFFFFF;
    border:1px solid #E5E7EB;
    border-radius:10px;
    overflow:hidden;
    box-shadow:
    0 10px 30px rgba(15,23,32,0.06);
}

/* =========================
ITEM
========================= */

.fm-trust-item{
    padding:30px;
    text-align:center;
    border-right:1px solid #E5E7EB;
}

.fm-trust-item:last-child{
    border-right:none;
}

.fm-trust-item h3{
    margin:0 0 8px;
    color:#111827;
    font-size:30px;
    line-height:1;
    font-weight:700;
    letter-spacing:-1px;
    font-family:'Urbanist',sans-serif;
}

.fm-trust-item p{
    margin:0;
    color:#5B6470;
    font-size:14px;
    line-height:1.6;
    font-family:'Inter',sans-serif;
}

/* =========================
TABLET
========================= */

@media (max-width:991px){

    .fm-trust-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .fm-trust-item:nth-child(2){
        border-right:none;
    }

    .fm-trust-item:nth-child(1),
    .fm-trust-item:nth-child(2){
        border-bottom:1px solid #E5E7EB;
    }

}

/* =========================
MOBILE
========================= */

@media (max-width:767px){

    .fm-trust-section{
        margin-top:-28px;
    }

    .fm-container{
        padding:0 18px;
    }

    .fm-trust-grid{
        grid-template-columns:1fr;
    }

    .fm-trust-item{
        padding:24px 20px;
        border-right:none;
        border-bottom:1px solid #E5E7EB;
    }

    .fm-trust-item:last-child{
        border-bottom:none;
    }

    .fm-trust-item h3{
        font-size:26px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e3c5d5f *//* =========================
FENCE MASTER ABOUT SECTION
MODERN PREMIUM SECTION
========================= */

.fm-about-split{
    padding:100px 0;
    background:#ffffff;
}

/* =========================
CONTAINER
========================= */

.fm-container{
    width:100%;
    max-width:1240px;
    margin:0 auto;
    padding:0 24px;
}

/* =========================
GRID
========================= */

.fm-about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

/* =========================
LEFT IMAGES
========================= */

.fm-about-images{
    position:relative;
    padding-right:80px;
}

.fm-main-image{
    overflow:hidden;
    border-radius:10px;
}

.fm-main-image img{
    width:100%;
    height:620px;
    object-fit:cover;
    display:block;
}

.fm-small-image{
    position:absolute;
    right:0;
    bottom:40px;
    width:240px;
    overflow:hidden;
    border:8px solid #FFFFFF;
    border-radius:10px;
    box-shadow:
    0 20px 40px rgba(15,23,32,0.12);
}

.fm-small-image img{
    width:100%;
    height:280px;
    object-fit:cover;
    display:block;
}

/* =========================
RIGHT CONTENT
========================= */

.fm-section-tag{
    display:inline-block;
    margin-bottom:18px;
    color:#2F855A;
    font-size:13px;
    font-weight:600;
    letter-spacing:0.5px;
    text-transform:uppercase;
    font-family:'Inter',sans-serif;
}

.fm-about-content h2{
    margin:0 0 22px;
    color:#111827;
    font-size:50px;
    line-height:1.05;
    font-weight:700;
    letter-spacing:-2px;
    font-family:'Urbanist',sans-serif;
}

.fm-about-content p{
    margin:0 0 36px;
    color:#5B6470;
    font-size:16px;
    line-height:1.8;
    font-family:'Inter',sans-serif;
}

/* =========================
FEATURES
========================= */

.fm-about-features{
    display:flex;
    flex-direction:column;
    gap:22px;
    margin-bottom:38px;
}

.fm-about-feature{
    display:flex;
    align-items:flex-start;
    gap:18px;
}

.fm-feature-number{
    width:54px;
    height:54px;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#FFFFFF;
    border:1px solid #E5E7EB;
    border-radius:50%;
    color:#2F855A;
    font-size:16px;
    font-weight:700;
    font-family:'Urbanist',sans-serif;
}

.fm-feature-text h3{
    margin:0 0 8px;
    color:#111827;
    font-size:20px;
    font-weight:700;
    font-family:'Urbanist',sans-serif;
}

.fm-feature-text p{
    margin:0;
    color:#5B6470;
    font-size:15px;
    line-height:1.7;
    font-family:'Inter',sans-serif;
}

/* =========================
BUTTON
========================= */

.fm-about-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:52px;
    padding:0 28px;
    background:#2F855A;
    border:1px solid #2F855A;
    border-radius:5px;
    color:#FFFFFF;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    transition:0.3s ease;
    font-family:'Inter',sans-serif;
}

.fm-about-btn:hover{
    background:#256B48;
    border-color:#256B48;
    color:#FFFFFF;
}

/* =========================
TABLET
========================= */

@media (max-width:991px){

    .fm-about-split{
        padding:80px 0;
    }

    .fm-about-grid{
        grid-template-columns:1fr;
        gap:60px;
    }

    .fm-about-content h2{
        font-size:44px;
        letter-spacing:-1.5px;
    }

    .fm-about-images{
        padding-right:60px;
    }

}

/* =========================
MOBILE
========================= */

@media (max-width:767px){

    .fm-about-split{
        padding:65px 0;
    }

    .fm-container{
        padding:0 18px;
    }

    .fm-about-grid{
        gap:50px;
    }

    .fm-about-images{
        padding-right:0;
    }

    .fm-main-image img{
        height:340px;
    }

    .fm-small-image{
        position:relative;
        right:auto;
        bottom:auto;
        width:75%;
        margin:-70px auto 0;
    }

    .fm-small-image img{
        height:220px;
    }

    .fm-about-content h2{
        font-size:34px;
        line-height:1.10;
        letter-spacing:-1px;
    }

    .fm-about-content p{
        font-size:15px;
        line-height:1.7;
    }

    .fm-feature-text h3{
        font-size:18px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fe9df57 *//* ==========================================
   FENCE MASTER PREMIUM SERVICES SECTION
========================================== */

.fm-services-premium{
    padding:120px 0;
    background:#256b48;
}

.fm-container{
    max-width:1320px;
    margin:0 auto;
    padding:0 24px;
}

/* Heading */

.fm-heading{
    text-align:center;
    max-width:850px;
    margin:0 auto 70px;
}

.fm-heading span{
    display:inline-block;
    padding:8px 18px;
    background:#fff;
    border:1px solid #e5e7eb;
    color:#256b48;
    font-size:13px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.08em;
    margin-bottom:18px;
}

.fm-heading h2{
    margin:0;
    font-size:clamp(38px,5vw,62px);
    line-height:1.1;
    color:#ffffff;
    font-weight:700;
}

/* Layout */

.fm-layout{
    display:grid;
    grid-template-columns:1.3fr 1fr;
    grid-template-rows:340px 340px;
    gap:24px;
}

.fm-card-large{
    grid-row:1 / span 2;
}

/* Cards */

.fm-card{
    position:relative;
    display:block;
    overflow:hidden;
    text-decoration:none;
    background:#ddd;
}

.fm-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:1s cubic-bezier(.22,.61,.36,1);
}

/* Light Overlay */

.fm-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.20),
        rgba(0,0,0,.02)
    );
    z-index:1;
}

/* Floating White Content Card */

.fm-card-content{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    z-index:2;

    background:rgba(255,255,255,.96);
    backdrop-filter:blur(12px);

    padding:24px;
    border:1px solid rgba(255,255,255,.8);

    transition:.4s ease;
}

.fm-card-content span{
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#7ab648;
    color:#fff;

    font-size:14px;
    font-weight:700;

    margin-bottom:14px;
}

.fm-card-content h3{
    margin:0 0 10px;
    color:#111;
    font-size:34px;
    line-height:1.1;
    font-weight:700;
}

.fm-card-content p{
    margin:0;
    color:#666;
    font-size:15px;
    line-height:1.7;
}

/* Hover Effects */

.fm-card:hover img{
    transform:scale(1.08);
}

.fm-card:hover .fm-card-content{
    transform:translateY(-8px);
}

.fm-card:hover{
    box-shadow:0 30px 70px rgba(0,0,0,.12);
}

/* Optional Arrow */

.fm-card-content::after{
    content:"→";
    position:absolute;
    right:24px;
    top:28px;

    color:#7ab648;
    font-size:22px;
    font-weight:700;

    transition:.3s ease;
}

.fm-card:hover .fm-card-content::after{
    transform:translateX(5px);
}

/* Tablet */

@media(max-width:1024px){

    .fm-layout{
        grid-template-columns:1fr;
        grid-template-rows:auto;
    }

    .fm-card,
    .fm-card-large{
        height:420px;
    }

}

/* Mobile */

@media(max-width:767px){

    .fm-services-premium{
        padding:80px 0;
    }

    .fm-heading{
        margin-bottom:45px;
    }

    .fm-heading h2{
        font-size:34px;
    }

    .fm-layout{
        gap:18px;
    }

    .fm-card,
    .fm-card-large{
        height:320px;
    }

    .fm-card-content{
        left:15px;
        right:15px;
        bottom:15px;
        padding:18px;
    }

    .fm-card-content span{
        width:38px;
        height:38px;
        font-size:13px;
        margin-bottom:12px;
    }

    .fm-card-content h3{
        font-size:24px;
    }

    .fm-card-content p{
        font-size:14px;
    }

    .fm-card-content::after{
        right:18px;
        top:20px;
        font-size:18px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5e79155 *//* ===================================
FENCE MASTER AUSTRALIA
ULTRA LIGHT PROCESS SECTION
=================================== */

.fm-fencing-process{
    padding:80px 0;
    background:#ffffff;
}

/* ===================================
HEADING
=================================== */

.fm-process-heading{
    max-width:680px;
    margin:0 auto 44px;
    text-align:center;
}

/* SUBTITLE */

.fm-section-subtitle{
    display:inline-flex;
    align-items:center;

    height:30px;
    padding:0 12px;
    margin-bottom:16px;

    background:#F3F7F4;
    border-radius:4px;

    color:#256B48;
    font-size:10px;
    font-weight:600;
    letter-spacing:0.5px;
    text-transform:uppercase;

    font-family:'Inter',sans-serif;
}

/* TITLE */

.fm-process-heading h2{
    margin:0 0 14px;

    color:#111827;
    font-size:50px;
    line-height:1.02;
    font-weight:700;
    letter-spacing:-2px;

    font-family:'Urbanist',sans-serif;
}

/* TEXT */

.fm-process-heading p{
    max-width:560px;
    margin:0 auto;

    color:#6B7280;
    font-size:14px;
    line-height:1.8;

    font-family:'Inter',sans-serif;
}

/* ===================================
GRID
=================================== */

.fm-process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}

/* ===================================
CARD
=================================== */

.fm-process-card{
    padding:26px 22px;

    background:#f3f7f4;
    border:1px solid #F1F3F4;
    border-radius:6px;

    transition:0.25s ease;
}

.fm-process-card:hover{
    border-color:#E3EAE5;
}

/* ===================================
NUMBER
=================================== */

.fm-process-number{
    margin-bottom:18px;

    color:#256B48;
    opacity:0.7;

    font-size:32px;
    line-height:1;
    font-weight:700;
    letter-spacing:-1px;

    font-family:'Urbanist',sans-serif;
}

/* ===================================
TITLE
=================================== */

.fm-process-card h3{
    margin:0 0 10px;

    color:#111827;
    font-size:20px;
    line-height:1.15;
    font-weight:700;

    font-family:'Urbanist',sans-serif;
}

/* ===================================
TEXT
=================================== */

.fm-process-card p{
    margin:0;

    color:#6B7280;
    font-size:13px;
    line-height:1.7;

    font-family:'Inter',sans-serif;
}

/* ===================================
TABLET
=================================== */

@media (max-width:991px){

    .fm-process-heading h2{
        font-size:42px;
    }

    .fm-process-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

/* ===================================
MOBILE
=================================== */

@media (max-width:767px){

    .fm-fencing-process{
        padding:56px 0;
    }

    .fm-process-heading{
        margin-bottom:30px;
    }

    .fm-process-heading h2{
        font-size:32px;
        line-height:1.06;
        letter-spacing:-1px;
    }

    .fm-process-heading p{
        font-size:13px;
    }

    .fm-process-grid{
        grid-template-columns:1fr;
        gap:12px;
    }

    .fm-process-card{
        padding:20px 18px;
    }

    .fm-process-number{
        margin-bottom:14px;
        font-size:28px;
    }

    .fm-process-card h3{
        font-size:18px;
    }

    .fm-process-card p{
        font-size:12px;
        line-height:1.7;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-198cbce7 *//* ===================================
FENCE MASTER AUSTRALIA
PREMIUM PROJECT GALLERY
=================================== */

.fm-project-gallery{
    padding:120px 0;
    background:#F8FBF9;
    overflow:hidden;
}

/* ===================================
CONTAINER
=================================== */

.fm-container{
    width:100%;
    max-width:1360px;
    margin:0 auto;
    padding:0 32px;
}

/* ===================================
HEADING
=================================== */

.fm-gallery-heading{
    max-width:820px;
    margin:0 auto 70px;
    text-align:center;
}

.fm-section-subtitle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:34px;
    padding:0 16px;
    margin-bottom:18px;

    background:#EAF5EE;
    border:1px solid #D6E8DC;

    border-radius:4px;

    color:#256B48;
    font-size:12px;
    font-weight:700;
    letter-spacing:.8px;
    text-transform:uppercase;

    font-family:'Inter',sans-serif;
}

.fm-gallery-heading h2{
    margin:0 0 20px;

    color:#111827;

    font-size:50px;
    line-height:1;

    font-weight:700;
    letter-spacing:-2.5px;

    font-family:'Urbanist',sans-serif;
}

.fm-gallery-heading p{
    max-width:720px;
    margin:0 auto;

    color:#5B6470;
    font-size:17px;
    line-height:1.8;

    font-family:'Inter',sans-serif;
}

/* ===================================
GRID
=================================== */

.fm-gallery-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

/* ===================================
CARD
=================================== */

.fm-gallery-item{
    position:relative;
    overflow:hidden;

    background:#FFFFFF;

    border:1px solid #E7ECE8;
    border-radius:8px;

    box-shadow:
    0 4px 14px rgba(0,0,0,.03);

    transition:
    transform .4s ease,
    box-shadow .4s ease,
    border-color .4s ease;
}

.fm-gallery-item:hover{
    transform:translateY(-8px);

    border-color:#256B48;

    box-shadow:
    0 24px 50px rgba(0,0,0,.10);
}

.fm-gallery-item img{
    width:100%;
    height:300px;

    display:block;
    object-fit:cover;

    transition:transform .8s ease;
}

.fm-gallery-item:hover img{
    transform:scale(1.08);
}

.fm-gallery-item::after{
    content:"";

    position:absolute;
    inset:0;

    background:
    linear-gradient(
        180deg,
        rgba(0,0,0,0) 50%,
        rgba(0,0,0,.12) 100%
    );

    opacity:0;
    transition:.4s ease;
}

.fm-gallery-item:hover::after{
    opacity:1;
}

/* ===================================
BUTTON
=================================== */

.fm-gallery-btn-wrap{
    display:flex;
    justify-content:center;
    margin-top:60px;
}

.fm-gallery-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    height:56px;
    padding:0 38px;

    background:#256B48;
    border:1px solid #256B48;

    border-radius:6px;

    color:#FFFFFF;
    text-decoration:none;

    font-size:14px;
    font-weight:600;

    transition:.35s ease;

    font-family:'Inter',sans-serif;
}

.fm-gallery-btn:hover{
    background:#1E573B;
    border-color:#1E573B;

    color:#FFFFFF;
    text-decoration:none;

    transform:translateY(-3px);
}

.fm-gallery-btn:focus,
.fm-gallery-btn:active{
    color:#FFFFFF;
    outline:none;
}

/* ===================================
LARGE DESKTOP
=================================== */

@media (min-width:1400px){

    .fm-gallery-grid{
        gap:28px;
    }

    .fm-gallery-item img{
        height:330px;
    }

}

/* ===================================
TABLET
=================================== */

@media (max-width:991px){

    .fm-project-gallery{
        padding:95px 0;
    }

    .fm-container{
        padding:0 24px;
    }

    .fm-gallery-heading{
        margin-bottom:55px;
    }

    .fm-gallery-heading h2{
        font-size:46px;
        letter-spacing:-1.5px;
    }

    .fm-gallery-grid{
        grid-template-columns:repeat(2,1fr);
        gap:20px;
    }

    .fm-gallery-item img{
        height:260px;
    }

}

/* ===================================
MOBILE
=================================== */

@media (max-width:767px){

    .fm-project-gallery{
        padding:75px 0;
    }

    .fm-container{
        padding:0 18px;
    }

    .fm-gallery-heading{
        margin-bottom:35px;
    }

    .fm-gallery-heading h2{
        font-size:34px;
        line-height:1.1;
        letter-spacing:-1px;
    }

    .fm-gallery-heading p{
        font-size:15px;
        line-height:1.7;
    }

    .fm-gallery-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .fm-gallery-item img{
        height:260px;
    }

    .fm-gallery-btn-wrap{
        margin-top:40px;
    }

    .fm-gallery-btn{
        width:100%;
        height:54px;
    }

}

/* ===================================
SMALL MOBILE
=================================== */

@media (max-width:480px){

    .fm-gallery-heading h2{
        font-size:30px;
    }

    .fm-gallery-item img{
        height:220px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6352d992 *//* ===================================
GOOGLE REVIEWS HEADER
=================================== */

.fm-google-reviews-header{
    padding:0 0 40px;
}

.fm-reviews-heading{
    max-width:760px;
    margin:0 auto;
    text-align:center;
}

/* SUBTITLE */

.fm-reviews-subtitle{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    height:34px;
    padding:0 16px;

    margin-bottom:18px;

    background:#EDF6EF;
    border:1px solid #D8E9DD;
    border-radius:4px;

    color:#256B48;

    font-size:12px;
    font-weight:600;
    letter-spacing:0.5px;
    text-transform:uppercase;

    font-family:'Inter',sans-serif;
}

/* TITLE */

.fm-reviews-heading h2{
    margin:0 0 16px;

    color:#111827;

    font-size:50px;
    line-height:1;
    font-weight:700;
    letter-spacing:-2px;

    font-family:'Urbanist',sans-serif;
}

/* DESCRIPTION */

.fm-reviews-heading p{
    max-width:650px;

    margin:0 auto 28px;

    color:#667085;

    font-size:16px;
    line-height:1.8;

    font-family:'Inter',sans-serif;
}

/* BUTTON */

.fm-review-button,
.fm-review-button:visited{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;

    height:54px;
    padding:0 30px;

    background:#256B48 !important;
    border:1px solid #256B48 !important;
    border-radius:6px;

    color:#FFFFFF !important;

    text-decoration:none !important;

    font-size:14px;
    font-weight:600;

    transition:all .3s ease;

    font-family:'Inter',sans-serif;
}

.fm-review-button:hover,
.fm-review-button:focus{
    background:#1E573B !important;
    border-color:#1E573B !important;

    color:#FFFFFF !important;

    text-decoration:none !important;

    transform:translateY(-2px);
}

/* MOBILE */

@media (max-width:767px){

    .fm-reviews-heading h2{
        font-size:34px;
        line-height:1.08;
        letter-spacing:-1px;
    }

    .fm-reviews-heading p{
        font-size:14px;
        line-height:1.8;
    }

    .fm-review-button{
        width:100%;
        max-width:280px;
        height:50px;
        font-size:13px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3cff20bd *//* ===================================
FENCE MASTER AUSTRALIA
LIGHT FAQ SECTION
=================================== */

.fm-faq-v2{
    padding:70px 0;
    background:#FCFCFC;
}

/* ===================================
CONTAINER
=================================== */

.fm-container{
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:0 20px;
}

/* ===================================
TOP
=================================== */

.fm-faq-top{
    max-width:640px;
    margin:0 auto 34px;
    text-align:center;
}

/* SUBTITLE */

.fm-section-subtitle{
    display:inline-flex;
    align-items:center;

    height:30px;
    padding:0 12px;
    margin-bottom:14px;

    background:#F3F7F4;
    border-radius:4px;

    color:#256B48;
    font-size:10px;
    font-weight:600;
    letter-spacing:0.5px;
    text-transform:uppercase;

    font-family:'Inter',sans-serif;
}

/* TITLE */

.fm-faq-top h2{
    margin:0;

    color:#111827;
    font-size:50px;
    line-height:1.02;
    font-weight:700;
    letter-spacing:-1.5px;

    font-family:'Urbanist',sans-serif;
}

/* ===================================
GRID
=================================== */

.fm-faq-grid{
    display:grid;
    grid-template-columns:1fr 320px;
    gap:18px;
    align-items:start;
}

/* ===================================
LEFT
=================================== */

.fm-faq-left{
    display:flex;
    flex-direction:column;
    gap:10px;
}

/* ===================================
FAQ ITEM
=================================== */

.fm-faq-item{
    background:#FFFFFF;
    border:1px solid #EEF1F2;
    border-radius:6px;
    overflow:hidden;

    transition:0.25s ease;
}

.fm-faq-item.active{
    border-color:#DCE6DF;
}

/* ===================================
QUESTION
=================================== */

.fm-faq-question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;

    padding:18px 20px;

    background:none !important;
    border:none !important;
    box-shadow:none !important;
    outline:none !important;

    cursor:pointer;
    text-align:left;
}

.fm-faq-question span{
    color:#111827 !important;
    font-size:16px;
    line-height:1.5;
    font-weight:600;

    font-family:'Urbanist',sans-serif;
}

/* ===================================
ICON
=================================== */

.fm-faq-icon{
    position:relative;
    width:14px;
    height:14px;
    flex-shrink:0;
}

.fm-faq-icon::before,
.fm-faq-icon::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;

    background:#111827;

    transform:translate(-50%, -50%);
    transition:0.25s ease;
}

.fm-faq-icon::before{
    width:12px;
    height:1.5px;
}

.fm-faq-icon::after{
    width:1.5px;
    height:12px;
}

.fm-faq-item.active .fm-faq-icon::after{
    opacity:0;
}

/* ===================================
ANSWER
=================================== */

.fm-faq-answer{
    max-height:0;
    overflow:hidden;

    transition:max-height 0.3s ease;
}

.fm-faq-item.active .fm-faq-answer{
    max-height:180px;
}

.fm-faq-answer p{
    margin:0;
    padding:0 20px 18px;

    color:#6B7280;
    font-size:13px;
    line-height:1.75;

    font-family:'Inter',sans-serif;
}

/* ===================================
RIGHT CARD
=================================== */

.fm-faq-card{
    padding:24px;

    background:#F7FAF8;
    border:1px solid #EEF1F2;
    border-radius:8px;
}

/* ICON */

.fm-faq-card-icon{
    width:48px;
    height:48px;
    margin-bottom:16px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#256B48;
    border-radius:50%;

    color:#FFFFFF;
    font-size:20px;
    font-weight:700;

    font-family:'Urbanist',sans-serif;
}

/* TITLE */

.fm-faq-card h3{
    margin:0 0 12px;

    color:#111827;
    font-size:24px;
    line-height:1.1;
    font-weight:700;

    font-family:'Urbanist',sans-serif;
}

/* TEXT */

.fm-faq-card p{
    margin:0 0 20px;

    color:#6B7280;
    font-size:13px;
    line-height:1.75;

    font-family:'Inter',sans-serif;
}

/* BUTTON */

.fm-faq-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:100%;
    height:46px;

    background:#256B48;
    border-radius:5px;

    color:#FFFFFF;
    text-decoration:none;
    font-size:13px;
    font-weight:600;

    transition:0.25s ease;
    font-family:'Inter',sans-serif;
}

.fm-faq-btn:hover{
    background:#1E563A;
    color:#FFFFFF;
}

/* ===================================
TABLET
=================================== */

@media (max-width:991px){

    .fm-faq-grid{
        grid-template-columns:1fr;
    }

    .fm-faq-card{
        max-width:100%;
    }

    .fm-faq-top h2{
        font-size:38px;
    }

}

/* ===================================
MOBILE
=================================== */

@media (max-width:767px){

    .fm-faq-v2{
        padding:56px 0;
    }

    .fm-container{
        padding:0 16px;
    }

    .fm-faq-top{
        margin-bottom:28px;
    }

    .fm-faq-top h2{
        font-size:30px;
        line-height:1.06;
        letter-spacing:-1px;
    }

    .fm-faq-grid{
        gap:14px;
    }

    .fm-faq-question{
        padding:16px;
        gap:10px;
    }

    .fm-faq-question span{
        font-size:14px;
        line-height:1.45;
    }

    .fm-faq-answer p{
        padding:0 16px 16px;
        font-size:12px;
        line-height:1.7;
    }

    .fm-faq-card{
        padding:20px;
    }

    .fm-faq-card h3{
        font-size:20px;
    }

    .fm-faq-card p{
        font-size:12px;
    }

    .fm-faq-btn{
        height:42px;
        font-size:12px;
    }

}/* End custom CSS */