@charset "UTF-8";
/* ============================================================
   IZN Homes AHB - main.css
   Design language reproduced from AHB Group (astra + elementor)
   ============================================================ */

/* ---------- Design tokens ---------- */
:root{
    --izn-navy:        #0a2a66;   /* primary brand navy   */
    --izn-navy-dark:   #00142d;   /* footer / deep bg      */
    --izn-navy-deeper: #06024a;
    --izn-gold:        #d4a76c;   /* gold accent           */
    --izn-gold-soft:   #d4a75b;
    --izn-cream:       #f7f5f0;   /* about / process bg    */
    --izn-white:       #ffffff;
    --izn-ink:         #1f1f1f;   /* body text             */
    --izn-muted:       #69727d;
    --izn-line:        #e5e5e5;
    --izn-radius:      14px;
    --izn-shadow:      0 4px 20px -2px rgba(0,0,0,.08);
    --izn-gold-grad:   linear-gradient(135deg,#d4a76c 0%,#e9c98f 100%);
    --izn-navy-grad:   linear-gradient(135deg,#0a2a66 0%,#00142d 100%);
}

/* ---------- Reset / base ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
    margin:0;
    font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
    font-size:16px;
    line-height:1.7;
    color:var(--izn-ink);
    background:var(--izn-white);
    -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,h6{
    font-family:'Poppins',Inter,sans-serif;
    font-weight:700;
    line-height:1.22;
    color:var(--izn-navy);
    margin:0 0 .6em 0;
}
img{max-width:100%;height:auto;display:block;}
a{color:var(--izn-navy);text-decoration:none;transition:color .15s ease;}
a:hover{color:var(--izn-gold);}
::selection{background:var(--izn-gold);color:#fff;}

/* ---------- Layout utils ---------- */
.izn-container{max-width:1200px;margin:0 auto;padding:0 24px;}
.izn-container-wide{max-width:1320px;margin:0 auto;padding:0 24px;}
.section{padding:96px 0;}
.section-sm{padding:64px 0;}
.section-tight{padding:48px 0;}

/* ---------- Kicker + heading pattern (gold kicker over navy heading) ---------- */
.izn-kicker{
    display:inline-block;
    font-family:'Poppins',sans-serif;
    font-size:13px;
    font-weight:600;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--izn-gold);
    margin-bottom:8px;
}
.izn-section-title{
    font-family:'Poppins',sans-serif;
    font-size:clamp(30px,4.2vw,52px);
    font-weight:700;
    color:var(--izn-navy);
    line-height:1.15;
}
.izn-section-sub{
    font-family:'Inter',sans-serif;
    font-size:17px;
    font-weight:500;
    color:var(--izn-gold);
    margin-top:4px;
}
.izn-lead{
    font-size:16.5px;
    color:var(--izn-muted);
    max-width:640px;
}

/* ============================================================
   HEADER - fixed, navy on scroll, uppercase menu, gold CTA
   ============================================================ */
.izn-header{
    position:fixed;top:0;left:0;right:0;z-index:1000;
    background:transparent;
    transition:background .3s ease, box-shadow .3s ease;
}
.izn-header.is-scrolled{background:var(--izn-navy-dark);box-shadow:0 6px 24px rgba(0,0,0,.15);}
.izn-header-inner{
    max-width:1320px;margin:0 auto;padding:0 32px;
    display:flex;align-items:center;justify-content:space-between;gap:32px;
    min-height:84px;
}
.izn-brand{display:flex;align-items:center;gap:12px;color:#fff;}
.izn-brand .izn-brand-logo{height:46px;width:auto;display:block;max-height:46px;}
.izn-brand span{
    display:block;line-height:1;font-family:'Poppins',sans-serif;font-weight:700;
    font-size:22px;color:#fff;letter-spacing:.5px;
}
.izn-brand small{display:block;font-size:12px;color:var(--izn-gold);font-family:'Inter',sans-serif;}

.izn-nav{display:flex;align-items:center;}
.izn-nav-list{
    list-style:none;margin:0;padding:0;display:flex;gap:6px;
}
.izn-nav-list a{
    display:block;padding:12px 14px;
    font-family:'Inter',sans-serif;font-size:15px;font-weight:600;
    color:#fff;text-transform:uppercase;letter-spacing:.6px;
}
.izn-nav-list a:hover{color:var(--izn-gold);}
.izn-nav-list .current-menu-item a,
.izn-nav-list .current_page_item a,
.izn-nav-list a.current{color:#fff;border-bottom:2px solid var(--izn-gold);}

/* Header CTA */
.izn-header-cta a{
    display:inline-flex;align-items:center;gap:8px;
    padding:13px 20px;border:0;border-radius:999px;
    background:var(--izn-gold);color:#101010;
    font-family:'Inter',sans-serif;font-size:14.5px;font-weight:600;
    text-decoration:none;transition:background .2s ease, transform .2s ease;
}
.izn-header-cta a:hover{background:var(--izn-gold-soft);transform:translateY(-1px);}
.izn-header-cta svg{width:18px;height:18px;fill:currentColor;}
.izn-header-cta i{font-size:20px;color:#101010;display:inline-flex;align-items:center;justify-content:center;}

/* Mobile toggle */
.izn-nav-toggle{
    display:none;background:none;border:0;cursor:pointer;
    width:44px;height:44px;position:relative;z-index:1001;
    padding:0;
}
.izn-nav-toggle span{position:absolute;left:10px;width:24px;height:2px;background:#fff;top:16px;}
.izn-nav-toggle span::before{content:"";position:absolute;left:0;top:7px;width:24px;height:2px;background:#fff;}
.izn-nav-toggle span::after{content:"";position:absolute;left:0;top:14px;width:24px;height:2px;background:#fff;}
/* Hamburger -> X when open */
body.has-izn-open-menu .izn-nav-toggle span{background:transparent;}
body.has-izn-open-menu .izn-nav-toggle span::before{transform:rotate(45deg);top:0;}
body.has-izn-open-menu .izn-nav-toggle span::after{transform:rotate(-45deg);top:0;}

/* ============================================================
   HERO - full-bleed image, dark gradient overlay, gold kicker
   ============================================================ */
.izn-hero{
    position:relative;min-height:100vh;display:flex;align-items:center;
    overflow:hidden;
}
.izn-hero-bg{position:absolute;inset:0;z-index:0;}
.izn-hero-bg img{width:100%;height:100%;object-fit:cover;}
.izn-hero-overlay{
    position:absolute;inset:0;z-index:1;
    background:linear-gradient(90deg,rgba(2,10,28,.88) 0%,rgba(6,28,74,.55) 45%,rgba(10,42,102,.30) 100%);
}
.izn-hero-content{position:relative;z-index:2;max-width:1320px;margin:0 auto;padding:120px 48px 40px;}
.izn-hero-kicker{
    font-family:'Poppins',sans-serif;font-size:15px;font-weight:600;
    letter-spacing:3px;text-transform:uppercase;color:var(--izn-gold);display:block;margin-bottom:18px;
}
.izn-hero h1{
    font-family:'Poppins',sans-serif;font-weight:800;color:#fff;
    font-size:clamp(38px,6vw,74px);line-height:1.12;margin:0 0 10px;
}
.izn-hero .izn-hero-sub{font-size:clamp(19px,2.6vw,28px);font-weight:600;color:#fff;font-family:'Inter',sans-serif;}
.izn-hero p{font-size:17.5px;line-height:1.8;color:rgba(255,255,255,.92);max-width:640px;margin:18px 0 34px;}
.izn-hero-actions{display:flex;gap:18px;flex-wrap:wrap;}
.izn-btn-gold{
    display:inline-flex;align-items:center;gap:10px;padding:17px 30px;border:0;border-radius:999px;
    background:var(--izn-gold);color:#101010;font-family:'Inter',sans-serif;font-size:16px;font-weight:600;
    text-decoration:none;transition:transform .2s ease, background .2s ease;
}
.izn-btn-gold:hover{transform:translateY(-2px);background:var(--izn-gold-soft);}
.izn-btn-navy{
    display:inline-flex;align-items:center;gap:10px;padding:17px 30px;border-radius:999px;
    background:transparent;border:2px solid rgba(255,255,255,.7);color:#fff;
    font-family:'Inter',sans-serif;font-size:16px;font-weight:600;text-decoration:none;transition:.2s;
}
.izn-btn-navy:hover{background:rgba(255,255,255,.08);border-color:#fff;}
.izn-btn svg,.izn-btn-gold svg,.izn-btn-navy svg{width:18px;height:18px;fill:currentColor;}

/* ============================================================
   STATS COUNTER - navy strip, gold numbers
   ============================================================ */
.izn-stats{background:var(--izn-navy-dark);}
.izn-stats-inner{max-width:1320px;margin:0 auto;padding:64px 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.izn-stat{text-align:center;}
.izn-stat .num{
    font-family:'Poppins',sans-serif;font-weight:800;color:var(--izn-gold);
    font-size:clamp(40px,5vw,64px);line-height:1;display:block;
}
.izn-stat .label{display:block;margin-top:6px;color:#fff;font-size:15px;font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:.5px;font-weight:600;}
@media(max-width:991px){.izn-stats-inner{grid-template-columns:repeat(2,1fr);}}

/* ============================================================
   ABOUT - cream background, image + text
   ============================================================ */
.izn-about{background:var(--izn-cream);}
.izn-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.izn-about-media{position:relative;}
.izn-about-media img{border-radius:18px;box-shadow:var(--izn-shadow);}
.izn-about-media .badge{
    position:absolute;right:-16px;bottom:-20px;background:var(--izn-navy);color:#fff;
    border-radius:50%;width:120px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;
    font-family:'Poppins',sans-serif;text-align:center;
}
.izn-about-media .badge strong{font-size:30px;color:var(--izn-gold);}
.izn-about-media .badge span{font-size:11.5px;line-height:1.2;}
.izn-about-copy .izn-btn-navy-solid{
    display:inline-flex;align-items:center;gap:10px;padding:16px 30px;border:0;border-radius:999px;
    background:var(--izn-navy);color:#fff;font-family:'Inter',sans-serif;font-size:15.5px;font-weight:600;text-decoration:none;transition:.2s;
}
.izn-about-copy .izn-btn-navy-solid:hover{background:#0d357f;transform:translateY(-1px);}
@media(max-width:869px){.izn-about-grid{grid-template-columns:1fr;}}

/* ============================================================
   SERVICES - white, 5 columns, gold icons
   ============================================================ */
.izn-services{background:var(--izn-white);}
.izn-services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:40px;border-top:1px solid var(--izn-line);}
.izn-service{padding:32px 20px;border-bottom:1px solid var(--izn-line);}
.izn-service .icn{
    width:68px;height:68px;border-radius:16px;display:flex;align-items:center;justify-content:center;
    background:rgba(10,42,102,.08);border:1px solid rgba(10,42,102,.18);
}
.izn-service .icn svg{width:34px;height:34px;stroke:var(--izn-navy);fill:none;stroke-width:1.4;}
.izn-service .icn i{font-size:30px;color:var(--izn-navy);display:flex;align-items:center;justify-content:center;}
.izn-service h3{font-family:'Poppins',sans-serif;font-size:20px;font-weight:600;color:var(--izn-navy);margin:18px 0 10px;}
.izn-service p{font-size:15px;color:var(--izn-muted);line-height:1.65;margin:0;}

/* ============================================================
   WHY US - navy background, 6 columns
   ============================================================ */
.izn-why{background:var(--izn-navy);}
.izn-why-inner{max-width:1320px;margin:0 auto;padding:96px 32px;}
.izn-why-head{max-width:1320px;margin:0 auto 60px;text-align:center;}
.izn-why-head .izn-kicker{color:var(--izn-gold);}
.izn-why-head h2{color:#fff;font-size:clamp(30px,4vw,46px);text-align:center;}
.izn-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1320px;margin:0 auto;}
.izn-why-item{padding:30px 22px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:14px;}
.izn-why-item .icn{width:56px;height:56px;border-radius:14px;background:rgba(212,167,108,.14);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.izn-why-item .icn svg{width:30px;height:30px;stroke:var(--izn-gold);fill:none;stroke-width:1.6;}
.izn-why-item .icn i{font-size:26px;color:var(--izn-gold);display:flex;align-items:center;justify-content:center;}
.izn-why-item h3{font-family:'Poppins',sans-serif;font-size:19px;font-weight:600;color:#fff;margin:0 0 12px;}
.izn-why-item p{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.82);margin:0;}
@media(max-width:991px){.izn-why-grid{grid-template-columns:1fr;}}

/* ============================================================
   DESIGN CARDS - navy cards with spec lists (Glenice style)
   ============================================================ */
.izn-designs{background:var(--izn-cream);}
.izn-designs-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px;margin-bottom:56px;}
.izn-designs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;}
.izn-design{background:var(--izn-navy);color:#fff;border-radius:20px;overflow:hidden;box-shadow:var(--izn-shadow);}
.izn-design figure{margin:0;aspect-ratio:4/3;overflow:hidden;background:#0d357f;}
.izn-design figure img{width:100%;height:100%;object-fit:cover;}
.izn-design .body{padding:26px 22px;}
.izn-design h2{font-family:'Poppins',sans-serif;font-size:26px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:1px;margin:0 0 18px;}
.izn-design ul{list-style:none;margin:0;padding:0;}
.izn-design ul li{
    display:flex;align-items:center;gap:10px;padding:9px 0;font-size:14.5px;color:rgba(255,255,255,.9);
    font-family:'Inter',sans-serif;
}
.izn-design ul li svg{width:18px;height:18px;fill:var(--izn-gold);flex-shrink:0;}
.izn-design ul li i{font-size:16px;color:var(--izn-gold);flex-shrink:0;}
@media(max-width:991px){.izn-designs-grid{grid-template-columns:1fr;}}

/* ============================================================
   PROCESS - 5 steps, numbered gold circles
   ============================================================ */
.izn-process{background:var(--izn-cream);}
.izn-process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:28px;max-width:1320px;margin:0 auto;}
.izn-step{text-align:center;padding:24px 8px;}
.izn-step .num{
    display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;
    border:2px solid var(--izn-gold);color:var(--izn-gold);background:rgba(212,167,108,.08);
    font-family:'Poppins',sans-serif;font-weight:700;font-size:18px;margin-bottom:18px;
}
.izn-step h3{font-family:'Poppins',sans-serif;font-size:18px;font-weight:600;color:var(--izn-navy);margin:0 0 8px;}
.izn-step p{font-size:13.8px;line-height:1.55;color:var(--izn-muted);margin:0;}
@media(max-width:991px){.izn-process-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:639px){.izn-process-grid{grid-template-columns:1fr;}}

/* ============================================================
   TESTIMONIALS - navy banner + image
   ============================================================ */
.izn-testimonials{background:var(--izn-navy);}
.izn-testi-inner{max-width:1400px;margin:0 auto;padding:110px 32px;display:grid;grid-template-columns:1fr 1.3fr 1.2fr;gap:40px;align-items:center;}
.izn-testi-intro .izn-kicker{color:var(--izn-gold);}
.izn-testi-intro h2{color:#fff;font-size:clamp(30px,4vw,46px);}
.izn-testi-intro .izn-btn-ghost{
    display:inline-flex;gap:10px;padding:14px 26px;border-radius:999px;border:2px solid rgba(255,255,255,.6);color:#fff;
    background:transparent;font-family:'Inter',sans-serif;font-size:15px;font-weight:600;text-decoration:none;margin-top:26px;
}
.izn-testi-intro .izn-btn-ghost:hover{background:rgba(255,255,255,.08);}
.izn-testimonial{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:30px;color:#fff;}
.izn-testimonial blockquote{margin:0;font-size:15.5px;line-height:1.7;color:rgba(255,255,255,.92);}
.izn-testimonial cite{display:block;margin-top:20px;font-family:'Poppins',sans-serif;font-weight:600;font-size:16px;}
.izn-testimonial cite small{display:block;color:rgba(255,255,255,.6);font-size:13.5px;}
.izn-testi-img{border-radius:16px;box-shadow:var(--izn-shadow);}
.izn-testi-img img{width:100%;height:100%;object-fit:cover;}
@media(max-width:991px){.izn-testi-inner{grid-template-columns:1fr;gap:32px;}}

/* ============================================================
   CTA STRIP (optional band)
   ============================================================ */
.izn-cta-band{background:var(--izn-navy-dark);}
.izn-cta-inner{max-width:1200px;margin:0 auto;padding:80px 24px;text-align:center;}
.izn-cta-inner h2{color:#fff;font-size:clamp(28px,4vw,44px);}
.izn-cta-inner p{color:rgba(255,255,255,.85);max-width:640px;margin:16px auto;}

/* ============================================================
   FOOTER - deep navy, 4 columns
   ============================================================ */
.izn-footer{background:var(--izn-navy-dark);color:#fff;border-top:3px solid rgba(212,167,108,.4);}
.izn-footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.1fr;gap:44px;max-width:1320px;margin:0 auto;padding:80px 32px;}
.izn-footer .izn-brand{color:#fff;}
.izn-footer-c1 p{font-size:14.5px;line-height:1.7;color:rgba(255,255,255,.8);margin:16px 0;}
.izn-footer-social{display:flex;gap:14px;margin-top:18px;}
.izn-footer-social a{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff;transition:.2s;}
.izn-footer-social a:hover{background:var(--izn-gold);color:#101010;}
.izn-footer-social svg{width:20px;height:20px;fill:#fff;}
.izn-footer-social i{font-size:20px;color:#fff;display:flex;align-items:center;justify-content:center;}
.izn-footer h4{font-family:'Poppins',sans-serif;font-size:16px;font-weight:600;color:var(--izn-gold);text-transform:uppercase;letter-spacing:1px;margin-bottom:18px;}
.izn-footer ul{list-style:none;margin:0;padding:0;}
.izn-footer ul a{color:rgba(255,255,255,.85);font-size:14.5px;padding:8px 0;display:block;transition:.2s;}
.izn-footer ul a:hover{color:var(--izn-gold);padding-left:6px;}
.izn-footer ul a::before{content:"\203A ";color:var(--izn-gold);}
.izn-footer-contact li{display:flex;gap:10px;align-items:center;padding:8px 0;font-size:14.5px;color:rgba(255,255,255,.85);}
.izn-footer-contact svg{width:18px;height:18px;fill:var(--izn-gold);flex-shrink:0;}
.izn-footer-contact i{font-size:18px;color:var(--izn-gold);flex-shrink:0;}
.izn-footer-bottom{max-width:1320px;margin:0 auto;padding:26px 32px;border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:14px;color:rgba(255,255,255,.65);}
.izn-footer-bottom a{color:var(--izn-gold);}
@media(max-width:991px){.izn-footer-grid{grid-template-columns:1fr;gap:32px;}}

/* ============================================================
   PAGE content (inner pages) - generic typography
   ============================================================ */
.izn-page-head{
    background:var(--izn-navy);color:#fff;padding:120px 0 70px;
}
.izn-page-head .izn-container h1{color:#fff;font-size:clamp(28px,4vw,46px);}
.izn-page-head .breadcrumb{color:var(--izn-gold);font-size:13.5px;letter-spacing:1px;text-transform:uppercase;}
.izn-page-body{max-width:900px;margin:0 auto;padding:64px 24px;}
.izn-page-body .entry-content{line-height:1.8;font-size:16.5px;}
.izn-page-body h2,.izn-page-body h3,.izn-page-body h4{color:var(--izn-navy);margin-top:28px;}
.izn-page-body img{border-radius:10px;}
.izn-page-body a{color:var(--izn-navy);text-decoration:underline;text-underline-offset:3px;}
.izn-page-body ul{line-height:1.9;}
.izn-page-body .wp-block-image{margin:28px 0;}
.izn-page-body .wp-block-heading{color:var(--izn-navy);}

/* Keep UAG / hostinger icon lists legible on inner pages */
.izn-page-body .uagb-icon-list__label{line-height:1.8;font-size:16px;}
.izn-page-body .uagb-icon-list__source-wrap svg{width:22px;height:22px;margin-right:10px;}

/* ============================================================
   Responsive nav - mobile drawer
   ============================================================ */
@media(max-width:1023px){
    /* Nav becomes an off-canvas drawer sliding in from the right */
    .izn-nav{
        position:fixed;top:0;right:0;bottom:0;width:82%;max-width:340px;
        background:var(--izn-navy-dark);
        transform:translateX(100%);
        transition:transform .28s ease;
        z-index:999;
        overflow-y:auto;padding:0;
        display:flex;flex-direction:column;align-items:stretch;
    }
    .izn-nav.is-open{transform:translateX(0);}
    .izn-nav-list{flex-direction:column;gap:6px;padding:28px 26px 10px;width:100%;}
    .izn-nav-list a{font-size:17px;padding:14px 8px;text-transform:uppercase;}
    .izn-header-cta{margin-top:auto;padding:18px 26px 30px;width:100%;}
    .izn-header-cta a{
        display:flex;align-items:center;justify-content:center;gap:10px;
        width:100%;padding:15px 20px;border-radius:999px;
        background:var(--izn-gold);color:#101010;
        font-family:'Inter',sans-serif;font-size:16px;font-weight:600;text-decoration:none;
    }
    .izn-header-cta svg{width:24px;height:24px;fill:#101010;}
    .izn-header-cta i{font-size:24px;}
    .izn-nav-toggle{display:flex;align-items:center;justify-content:center;}
    .izn-header-inner{padding:0 18px;gap:14px;}
}
/* Under 480px shrink logo & tighten */
@media(max-width:480px){
    .izn-brand .izn-brand-logo{height:38px;}
    .izn-header-cta a{font-size:13px;padding:11px 15px;}
}
/* ============================================================
   General mobile refinements
   ============================================================ */
@media(max-width:991px){
    .izn-hero h1{font-size:clamp(32px,6vw,46px);}
    .izn-hero p{font-size:16px;}
    .izn-hero-content{padding:110px 24px 30px;}
    .izn-hero{min-height:92vh;}
    .izn-container{padding:0 16px;}
    .izn-container-wide{padding:0 20px;}
}
@media(max-width:639px){
    .izn-services-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));}
}

/* ============================================================
   Accessibility / motion
   ============================================================ */
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;}}
html{scroll-behavior:smooth;}
body.has-izn-open-menu{overflow:hidden;}

/* Screen-reader / skip-link hidden until focused */
.screen-reader-text{
    position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);
}
.screen-reader-text:focus{
    position:fixed;left:12px;top:12px;z-index:9999;
    background:var(--izn-navy);color:#fff;padding:12px 18px;border-radius:8px;
    clip:auto;width:auto;height:auto;font-size:15px;
}