/* ═══════════════════════════════════════════════════════
   BUILDTAB CONSTRUCTION THEME
   PREFIX: bt-
   Colors: #E8A020 gold | #101E35 navy | #090F1C dark | #F4F6FA off-white
   Fonts: Bebas Neue (headings) | DM Sans (body) | Space Grotesk (cards)
   Max Width: 1600px | Industrial / uppercase-square DNA
   ═══════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Sans:wght@300;400;500;600;700&family=Space+Grotesk:wght@400;500;700&display=swap');

/* ─── CSS VARS ─── */
:root{
    --bt-gold:         var(--oonh-primary,   #E8A020);
    --bt-gold-light:   var(--oonh-accent,    #F5C050);
    --bt-navy:         var(--oonh-secondary, #101E35);
    --bt-dark:         #090F1C;
    --bt-white:        #FFFFFF;
    --bt-off-white:    #F4F6FA;
    --bt-text:         #4A5468;
    --bt-text-light:   #7B8799;
    --bt-border:       #DDE3EE;
    --bt-max-w:        1600px;
    --bt-font-heading: var(--oonh-font-heading,'Bebas Neue',sans-serif);
    --bt-font-body:    var(--oonh-font-body,'DM Sans',sans-serif);
    --bt-font-card:    'Space Grotesk',sans-serif;
}

/* ─── SHARED LAYOUT ─── */
.bt-inner{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
}

.bt-section{
    padding:100px 0;
}

.bt-section--alt{
    background:var(--bt-off-white);
}

.bt-section--dark{
    background:var(--bt-navy);
}

.bt-section-tag{
    font-size:.8rem;
    font-weight:700;
    letter-spacing:3.5px;
    text-transform:uppercase;
    color:var(--bt-gold);
    margin-bottom:.6rem;
    display:flex;
    align-items:center;
    gap:.6rem;
}

.bt-section-tag::before{
    content:'';
    width:28px;
    height:2px;
    background:var(--bt-gold);
    flex-shrink:0;
}

.bt-section-title{
    font-family:var(--bt-font-heading);
    font-size:clamp(2.4rem,4vw,3.8rem);
    color:var(--bt-navy);
    line-height:1;
    letter-spacing:1.5px;
}

.bt-section-title em{
    font-style:normal;
    color:var(--bt-gold);
}

.bt-section-desc{
    font-size:1.1rem;
    color:var(--bt-text);
    line-height:1.8;
    max-width:580px;
    font-weight:300;
    margin-top:1.2rem;
}

/* ─── BUTTONS ─── */
.bt-btn{
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    padding:.9rem 2.2rem;
    border-radius:2px;
    font-size:1rem;
    font-weight:700;
    font-family:var(--bt-font-body);
    text-decoration:none;
    cursor:pointer;
    border:2px solid transparent;
    transition:all .25s;
    letter-spacing:.5px;
    white-space:nowrap;
}

.bt-btn--primary{
    background:var(--bt-gold);
    color:var(--bt-dark);
    border-color:var(--bt-gold);
}

.bt-btn--primary:hover{
    background:var(--bt-gold-light);
    border-color:var(--bt-gold-light);
    transform:translateY(-2px);
    box-shadow:0 8px 24px rgba(232,160,32,.35);
}

.bt-btn--outline{
    background:transparent;
    color:var(--bt-white);
    border-color:rgba(255,255,255,.4);
}

.bt-btn--outline:hover{
    border-color:var(--bt-white);
    background:rgba(255,255,255,.08);
}

.bt-btn--dark{
    background:var(--bt-dark);
    color:var(--bt-white);
    border-color:var(--bt-dark);
}

.bt-btn--dark:hover{
    background:var(--bt-navy);
    border-color:var(--bt-navy);
    transform:translateY(-2px);
}

/* ─── HERO ─── */
.bt-hero{
    position:relative;
    height:700px;
    max-height:700px;
    display:flex;
    align-items:center;
    overflow:hidden;
    padding-top:72px;
    box-sizing:border-box;
}

.bt-hero-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

.bt-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(105deg,rgba(9,15,28,.93) 40%,rgba(9,15,28,.55) 100%);
}

.bt-hero-layout{
    position:relative;
    z-index:2;
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    width:100%;
    display:grid;
    grid-template-columns:1fr 340px;
    align-items:center;
    gap:4rem;
}

.bt-hero-left{
    animation:btFadeUp .9s ease both;
}

@keyframes btFadeUp{
    from{opacity:0;transform:translateY(28px)}
    to{opacity:1;transform:translateY(0)}
}

.bt-hero-tag{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    background:rgba(232,160,32,.12);
    border:1px solid rgba(232,160,32,.5);
    color:var(--bt-gold);
    font-size:.8rem;
    font-weight:600;
    letter-spacing:2.5px;
    text-transform:uppercase;
    padding:.4rem 1rem;
    border-radius:2px;
    margin-bottom:1.2rem;
}

.bt-dot{
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--bt-gold);
    animation:btBlink 1.8s infinite;
    flex-shrink:0;
}

@keyframes btBlink{
    0%,100%{opacity:1}
    50%{opacity:.25}
}

.bt-hero-h1{
    font-family:var(--bt-font-heading);
    font-size:clamp(3.2rem,5.5vw,5.2rem);
    line-height:.95;
    letter-spacing:2px;
    color:var(--bt-white);
    margin-bottom:.3rem;
}

.bt-hero-sub{
    font-size:1.15rem;
    color:rgba(255,255,255,.7);
    line-height:1.75;
    margin:1.2rem 0 2rem;
    max-width:520px;
    font-weight:300;
}

.bt-hero-btns{
    display:flex;
    gap:1rem;
    flex-wrap:wrap;
}

/* Hero Stat Cards */
.bt-hero-right{
    display:flex;
    flex-direction:column;
    gap:1rem;
    animation:btFadeUp .9s .2s ease both;
}

.bt-stat-card{
    background:rgba(255,255,255,.07);
    backdrop-filter:blur(8px);
    border:1px solid rgba(255,255,255,.12);
    border-left:4px solid var(--bt-gold);
    padding:1.1rem 1.4rem;
    display:flex;
    align-items:center;
    gap:1.2rem;
    border-radius:2px;
    transition:background .3s;
}

.bt-stat-card:hover{
    background:rgba(232,160,32,.12);
}

.bt-stat-icon{
    width:46px;
    height:46px;
    min-width:46px;
    background:var(--bt-gold);
    border-radius:2px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.bt-stat-icon svg{
    width:22px;
    height:22px;
    stroke:var(--bt-dark);
    fill:none;
}

.bt-stat-num{
    font-family:var(--bt-font-heading);
    font-size:2rem;
    color:var(--bt-white);
    line-height:1;
    letter-spacing:1px;
}

.bt-stat-label{
    font-size:.85rem;
    color:rgba(255,255,255,.55);
    font-weight:400;
    letter-spacing:.3px;
}

/* ─── COUNTERS BAND ─── */
.bt-counters-band{
    background:var(--bt-navy);
    padding:0;
}

.bt-counters-inner{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

.bt-counter-card{
    text-align:center;
    padding:3.5rem 2rem;
    border-right:1px solid rgba(255,255,255,.07);
    position:relative;
    overflow:hidden;
    transition:background .3s;
}

.bt-counter-card:last-child{
    border-right:none;
}

.bt-counter-card:hover{
    background:rgba(232,160,32,.07);
}

.bt-counter-card::before{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    height:3px;
    background:var(--bt-gold);
    transform:scaleX(0);
    transition:transform .4s;
    transform-origin:left;
}

.bt-counter-card:hover::before{
    transform:scaleX(1);
}

.bt-c-icon{
    width:56px;
    height:56px;
    border-radius:50%;
    background:rgba(232,160,32,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 1.2rem;
    border:1px solid rgba(232,160,32,.25);
}

.bt-c-icon svg{
    width:24px;
    height:24px;
    stroke:var(--bt-gold);
    fill:none;
}

.bt-counter-num{
    font-family:var(--bt-font-heading);
    font-size:4rem;
    color:var(--bt-gold);
    line-height:1;
    letter-spacing:2px;
}

.bt-counter-plus{
    color:var(--bt-gold-light);
}

.bt-counter-label{
    font-size:.95rem;
    color:rgba(255,255,255,.55);
    text-transform:uppercase;
    letter-spacing:1.5px;
    margin-top:.6rem;
    font-weight:400;
}

/* ─── SERVICES ─── */
.bt-services-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:4rem;
    flex-wrap:wrap;
    gap:1.5rem;
}

.bt-services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:2px;
}

.bt-service-card{
    background:var(--bt-white);
    padding:2.8rem 2.4rem;
    border-bottom:3px solid transparent;
    transition:all .3s;
    position:relative;
    overflow:hidden;
}

.bt-service-card::after{
    content:attr(data-num);
    position:absolute;
    top:-10px;
    right:1.5rem;
    font-family:var(--bt-font-heading);
    font-size:6rem;
    color:rgba(0,0,0,.03);
    line-height:1;
    pointer-events:none;
    transition:color .3s;
}

.bt-service-card:hover::after{
    color:rgba(232,160,32,.07);
}

.bt-service-card:hover{
    border-bottom-color:var(--bt-gold);
    transform:translateY(-5px);
    box-shadow:0 16px 48px rgba(0,0,0,.1);
}

.bt-s-icon{
    width:60px;
    height:60px;
    border-radius:3px;
    background:rgba(232,160,32,.1);
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:1.6rem;
    transition:background .3s;
}

.bt-s-icon svg{
    width:26px;
    height:26px;
    stroke:var(--bt-gold);
    fill:none;
    stroke-width:1.8;
    transition:stroke .3s;
}

.bt-service-card:hover .bt-s-icon{
    background:var(--bt-gold);
}

.bt-service-card:hover .bt-s-icon svg{
    stroke:var(--bt-dark);
}

.bt-service-card h3{
    font-family:var(--bt-font-card);
    font-size:1.2rem;
    font-weight:700;
    color:var(--bt-navy);
    margin-bottom:.8rem;
    letter-spacing:.3px;
}

.bt-service-card p{
    font-size:1rem;
    line-height:1.75;
    color:var(--bt-text);
    font-weight:300;
}

.bt-service-link{
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    color:var(--bt-gold);
    font-size:.9rem;
    font-weight:600;
    text-decoration:none;
    margin-top:1.4rem;
    letter-spacing:.3px;
    transition:gap .2s;
}

.bt-service-link:hover{
    gap:1rem;
}

/* ─── ABOUT ─── */
.bt-about{
    padding:100px 0;
    background:var(--bt-white);
}

.bt-about-grid{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    display:grid;
    grid-template-columns:5fr 6fr;
    gap:6rem;
    align-items:center;
}

.bt-about-img-wrap{
    position:relative;
}

.bt-about-img-wrap img{
    width:100%;
    height:580px;
    object-fit:cover;
    border-radius:3px;
    display:block;
}

.bt-about-accent{
    position:absolute;
    bottom:-24px;
    left:-24px;
    width:200px;
    height:200px;
    border:8px solid var(--bt-gold);
    border-radius:3px;
    z-index:-1;
}

.bt-about-badge{
    position:absolute;
    top:2rem;
    right:-2rem;
    background:var(--bt-gold);
    color:var(--bt-dark);
    width:120px;
    height:120px;
    border-radius:50%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 32px rgba(232,160,32,.45);
}

.bt-about-badge strong{
    font-family:var(--bt-font-heading);
    font-size:2.8rem;
    line-height:1;
    letter-spacing:1px;
}

.bt-about-badge span{
    font-size:.68rem;
    font-weight:700;
    text-align:center;
    line-height:1.3;
    letter-spacing:.5px;
}

.bt-about-content .bt-section-desc{
    margin-bottom:0;
}

.bt-feature-list{
    margin-top:2.5rem;
    display:flex;
    flex-direction:column;
    gap:.9rem;
}

.bt-feature-item{
    display:flex;
    align-items:flex-start;
    gap:1.2rem;
    padding:1.3rem 1.6rem;
    background:var(--bt-off-white);
    border-left:3px solid transparent;
    transition:all .3s;
}

.bt-feature-item:hover{
    border-left-color:var(--bt-gold);
    background:rgba(232,160,32,.05);
}

.bt-f-check{
    width:28px;
    height:28px;
    min-width:28px;
    border-radius:50%;
    background:var(--bt-gold);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.bt-f-check svg{
    width:14px;
    height:14px;
    stroke:var(--bt-dark);
    fill:none;
}

.bt-feature-item h4{
    font-family:var(--bt-font-card);
    font-size:1.05rem;
    font-weight:700;
    color:var(--bt-navy);
    margin-bottom:.3rem;
    letter-spacing:.2px;
}

.bt-feature-item p{
    font-size:.98rem;
    color:var(--bt-text);
    line-height:1.65;
    font-weight:300;
}

/* ─── GALLERY ─── */
.bt-gallery-sec{
    padding:100px 0;
    background:var(--bt-dark);
}

.bt-gallery-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:3rem;
    flex-wrap:wrap;
    gap:1.5rem;
}

.bt-gallery-header .bt-section-tag{
    color:var(--bt-gold);
}

.bt-gallery-header .bt-section-tag::before{
    background:var(--bt-gold);
}

/* CSS Masonry */
.bt-gallery-grid{
    columns:3;
    column-gap:4px;
}

.bt-g-item{
    break-inside:avoid;
    margin-bottom:4px;
    overflow:hidden;
    position:relative;
    cursor:pointer;
    display:block;
}

.bt-g-item img{
    width:100%;
    display:block;
    transition:transform .5s ease,filter .4s;
}

.bt-g-item:hover img{
    transform:scale(1.06);
    filter:brightness(.65);
}

.bt-g-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 45%,rgba(9,15,28,.85) 100%);
    opacity:0;
    transition:opacity .3s;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:1.8rem;
}

.bt-g-item:hover .bt-g-overlay{
    opacity:1;
}

.bt-g-overlay span{
    font-family:var(--bt-font-card);
    font-size:1rem;
    font-weight:600;
    color:var(--bt-white);
}

.bt-g-plus{
    position:absolute;
    top:1.2rem;
    right:1.2rem;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--bt-gold);
    display:flex;
    align-items:center;
    justify-content:center;
    transform:scale(0);
    transition:transform .3s;
    color:var(--bt-dark);
    font-size:1.4rem;
    font-weight:700;
    line-height:1;
}

.bt-g-item:hover .bt-g-plus{
    transform:scale(1);
}

/* Lightbox */
.bt-lightbox{
    display:none;
    position:fixed;
    inset:0;
    z-index:2000;
    background:rgba(9,15,28,.96);
    align-items:center;
    justify-content:center;
}

.bt-lightbox.open{
    display:flex;
}

.bt-lightbox img{
    max-width:90vw;
    max-height:85vh;
    object-fit:contain;
    border-radius:2px;
}

.bt-lightbox-close{
    position:absolute;
    top:1.5rem;
    right:1.5rem;
    width:46px;
    height:46px;
    background:var(--bt-gold);
    border:none;
    border-radius:50%;
    cursor:pointer;
    color:var(--bt-dark);
    font-size:1.4rem;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
}

.bt-lightbox-close:hover{
    background:var(--bt-gold-light);
}

/* ─── FAQ ─── */
.bt-faq-inner{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6rem;
    align-items:start;
}

.bt-faq-info-cards{
    margin-top:2.5rem;
    display:flex;
    flex-direction:column;
    gap:1.2rem;
}

.bt-faq-info-card{
    background:var(--bt-white);
    border:1px solid var(--bt-border);
    padding:1.8rem 2rem;
    display:flex;
    align-items:center;
    gap:1.5rem;
    border-radius:2px;
    border-left:4px solid transparent;
    transition:border-color .3s,box-shadow .3s;
}

.bt-faq-info-card:hover{
    border-left-color:var(--bt-gold);
    box-shadow:0 8px 32px rgba(0,0,0,.07);
}

.bt-fi-icon{
    width:52px;
    height:52px;
    min-width:52px;
    border-radius:2px;
    background:rgba(232,160,32,.1);
    display:flex;
    align-items:center;
    justify-content:center;
}

.bt-fi-icon svg{
    width:22px;
    height:22px;
    stroke:var(--bt-gold);
    fill:none;
}

.bt-faq-info-card h4{
    font-family:var(--bt-font-card);
    font-size:1.05rem;
    font-weight:700;
    color:var(--bt-navy);
    margin-bottom:.3rem;
}

.bt-faq-info-card p{
    font-size:.98rem;
    color:var(--bt-text);
    line-height:1.65;
    font-weight:300;
}

/* Accordion */
.bt-accordion{
    display:flex;
    flex-direction:column;
    gap:.8rem;
    margin-top:2.5rem;
}

.bt-accordion-item{
    background:var(--bt-white);
    border:1px solid var(--bt-border);
    overflow:hidden;
}

.bt-accordion-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:1.4rem 1.8rem;
    cursor:pointer;
    transition:background .2s;
    gap:1rem;
}

.bt-accordion-head:hover{
    background:rgba(232,160,32,.04);
}

.bt-accordion-head.open{
    background:var(--bt-navy);
}

.bt-accordion-head h4{
    font-family:var(--bt-font-card);
    font-size:1.05rem;
    font-weight:600;
    color:var(--bt-navy);
    transition:color .2s;
    line-height:1.4;
}

.bt-accordion-head.open h4{
    color:var(--bt-white);
}

.bt-acc-icon{
    width:32px;
    height:32px;
    min-width:32px;
    border-radius:50%;
    background:var(--bt-gold);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:transform .3s;
    flex-shrink:0;
}

.bt-acc-icon svg{
    width:14px;
    height:14px;
    stroke:var(--bt-dark);
    fill:none;
}

.bt-accordion-head.open .bt-acc-icon{
    transform:rotate(45deg);
}

.bt-accordion-body{
    max-height:0;
    overflow:hidden;
    transition:max-height .4s ease;
}

.bt-accordion-body.open{
    max-height:240px;
}

.bt-accordion-body p{
    padding:1.4rem 1.8rem;
    font-size:1rem;
    color:var(--bt-text);
    line-height:1.8;
    border-top:1px solid var(--bt-border);
    font-weight:300;
}

/* ─── PAGE BANNER ─── */
.bt-page-hero{
    position:relative;
    padding-top:72px;
    height:380px;
    display:flex;
    align-items:center;
    overflow:hidden;
    box-sizing:border-box;
}

.bt-page-hero-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
}

.bt-page-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(105deg,rgba(9,15,28,.92) 45%,rgba(9,15,28,.6) 100%);
}

.bt-page-hero-content{
    position:relative;
    z-index:2;
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    width:100%;
}

.bt-page-hero-content h1{
    font-family:var(--bt-font-heading);
    font-size:clamp(3rem,6vw,5.5rem);
    color:var(--bt-white);
    letter-spacing:2px;
    line-height:1;
}

.bt-breadcrumb{
    display:flex;
    align-items:center;
    gap:.6rem;
    margin-top:1rem;
    font-size:.95rem;
    color:rgba(255,255,255,.55);
    font-weight:400;
}

.bt-breadcrumb a{
    color:var(--bt-gold);
    text-decoration:none;
}

.bt-breadcrumb span{
    color:rgba(255,255,255,.3);
}

/* ─── TEAM ─── */
.bt-team{
    padding:100px 0;
    background:var(--bt-white);
}

.bt-team-inner{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
}

.bt-team-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:3.5rem;
    flex-wrap:wrap;
    gap:1.5rem;
}

.bt-team-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:2px;
}

.bt-team-card{
    overflow:hidden;
    position:relative;
    background:var(--bt-off-white);
}

.bt-team-card img{
    width:100%;
    height:320px;
    object-fit:cover;
    display:block;
    transition:transform .5s;
    filter:grayscale(20%);
}

.bt-team-card:hover img{
    transform:scale(1.05);
    filter:grayscale(0%);
}

.bt-team-info{
    padding:1.6rem 1.8rem;
    background:var(--bt-white);
    border-top:3px solid transparent;
    transition:border-color .3s;
}

.bt-team-card:hover .bt-team-info{
    border-top-color:var(--bt-gold);
}

.bt-team-info h4{
    font-family:var(--bt-font-card);
    font-size:1.1rem;
    font-weight:700;
    color:var(--bt-navy);
}

.bt-team-info span{
    font-size:.9rem;
    color:var(--bt-gold);
    font-weight:500;
    letter-spacing:.3px;
}

/* ─── CTA BAND ─── */
.bt-cta-band{
    background:var(--bt-gold);
    padding:80px 0;
}

.bt-cta-inner{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:2rem;
    flex-wrap:wrap;
}

.bt-cta-band h2{
    font-family:var(--bt-font-heading);
    font-size:clamp(2rem,4vw,3.2rem);
    color:var(--bt-dark);
    letter-spacing:1.5px;
    line-height:1;
}

.bt-cta-band p{
    font-size:1.1rem;
    color:rgba(0,0,0,.65);
    margin-top:.5rem;
    font-weight:300;
}

/* ─── INFO STRIP ─── */
.bt-info-strip{
    background:var(--bt-gold);
    padding:0;
}

.bt-info-strip-inner{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    display:grid;
    grid-template-columns:repeat(3,1fr);
}

.bt-info-cell{
    display:flex;
    align-items:center;
    gap:1.2rem;
    padding:2.2rem 2rem;
    border-right:1px solid rgba(0,0,0,.12);
}

.bt-info-cell:last-child{
    border-right:none;
}

.bt-info-cell-icon{
    width:50px;
    height:50px;
    min-width:50px;
    background:rgba(0,0,0,.1);
    border-radius:2px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.bt-info-cell-icon svg{
    width:22px;
    height:22px;
    stroke:var(--bt-dark);
    fill:none;
}

.bt-info-cell h4{
    font-family:var(--bt-font-card);
    font-size:1rem;
    font-weight:700;
    color:var(--bt-dark);
    margin-bottom:.2rem;
}

.bt-info-cell span{
    font-size:.9rem;
    color:rgba(0,0,0,.65);
    font-weight:400;
}

/* ─── CONTACT ─── */
.bt-contact-section{
    padding:100px 0;
    background:var(--bt-white);
}

.bt-contact-grid{
    max-width:var(--bt-max-w);
    margin:0 auto;
    padding:0 5%;
    display:grid;
    grid-template-columns:1fr 1.3fr;
    gap:6rem;
    align-items:start;
}

.bt-contact-info p{
    font-size:1.1rem;
    color:var(--bt-text);
    line-height:1.8;
    font-weight:300;
    margin-top:1.2rem;
}

.bt-contact-details{
    margin-top:2.5rem;
    display:flex;
    flex-direction:column;
    gap:1rem;
}

.bt-cd-card{
    display:flex;
    align-items:center;
    gap:1.4rem;
    padding:1.4rem 1.6rem;
    background:var(--bt-off-white);
    border-left:4px solid transparent;
    transition:all .3s;
}

.bt-cd-card:hover{
    border-left-color:var(--bt-gold);
    background:rgba(232,160,32,.05);
}

.bt-cd-icon{
    width:50px;
    height:50px;
    min-width:50px;
    border-radius:2px;
    background:rgba(232,160,32,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .3s;
    flex-shrink:0;
}

.bt-cd-icon svg{
    width:22px;
    height:22px;
    stroke:var(--bt-gold);
    fill:none;
    transition:stroke .3s;
}

.bt-cd-card:hover .bt-cd-icon{
    background:var(--bt-gold);
}

.bt-cd-card:hover .bt-cd-icon svg{
    stroke:var(--bt-dark);
}

.bt-cd-card h5{
    font-family:var(--bt-font-card);
    font-size:.85rem;
    font-weight:700;
    color:var(--bt-text);
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:.3rem;
}

.bt-cd-card p{
    font-size:1rem;
    color:var(--bt-navy);
    font-weight:500;
    margin:0;
}

.bt-hours-table{
    margin-top:2.5rem;
    background:var(--bt-off-white);
    padding:1.8rem;
}

.bt-hours-table h4{
    font-family:var(--bt-font-card);
    font-size:.9rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1.5px;
    color:var(--bt-navy);
    margin-bottom:1.2rem;
}

.bt-hours-row{
    display:flex;
    justify-content:space-between;
    padding:.6rem 0;
    border-bottom:1px solid var(--bt-border);
    font-size:.95rem;
}

.bt-hours-row:last-child{
    border-bottom:none;
}

.bt-hours-row span:first-child{
    color:var(--bt-text);
    font-weight:400;
}

.bt-hours-row span:last-child{
    color:var(--bt-navy);
    font-weight:600;
}

.bt-contact-form-wrap{
    background:var(--bt-off-white);
    padding:3.5rem;
}

.bt-contact-form-wrap h3{
    font-family:var(--bt-font-heading);
    font-size:2.2rem;
    color:var(--bt-navy);
    letter-spacing:1.5px;
    margin-bottom:.6rem;
}

.bt-contact-form-wrap p{
    font-size:1rem;
    color:var(--bt-text);
    font-weight:300;
    margin-bottom:2.2rem;
    line-height:1.7;
}

.bt-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.2rem;
    margin-bottom:1.2rem;
}

.bt-form-group{
    display:flex;
    flex-direction:column;
    gap:.5rem;
    margin-bottom:1.2rem;
}

.bt-form-group label{
    font-size:.88rem;
    font-weight:600;
    color:var(--bt-navy);
    text-transform:uppercase;
    letter-spacing:.8px;
}

.bt-input{
    width:100%;
    padding:1rem 1.2rem;
    border:1px solid var(--bt-border);
    background:var(--bt-white);
    font-family:var(--bt-font-body);
    font-size:1rem;
    color:var(--bt-navy);
    outline:none;
    border-radius:0;
    transition:border-color .2s;
    box-sizing:border-box;
    -webkit-appearance:none;
    resize:none;
}

.bt-input:focus{
    border-color:var(--bt-gold);
}

textarea.bt-input{
    min-height:140px;
}

.bt-btn-submit{
    width:100%;
    background:var(--bt-gold);
    color:var(--bt-dark);
    padding:1.1rem;
    border:2px solid var(--bt-gold);
    font-size:1rem;
    font-weight:700;
    letter-spacing:.5px;
    text-transform:uppercase;
    cursor:pointer;
    font-family:var(--bt-font-body);
    transition:all .25s;
    border-radius:2px;
}

.bt-btn-submit:hover{
    background:var(--bt-gold-light);
    border-color:var(--bt-gold-light);
    transform:translateY(-2px);
    box-shadow:0 8px 24px rgba(232,160,32,.35);
}

/* ─── RESPONSIVE: 1280px ─── */
@media(max-width:1280px){
    .bt-hero-layout{
        grid-template-columns:1fr 300px;
        gap:3rem;
    }
}

/* ─── RESPONSIVE: 1024px ─── */
@media(max-width:1024px){
    .bt-hero-layout{
        grid-template-columns:1fr;
    }

    .bt-hero-right{
        display:none;
    }

    .bt-hero{
        height:auto;
        padding:100px 0 60px;
        max-height:none;
    }

    .bt-about-grid{
        grid-template-columns:1fr;
        gap:3rem;
    }

    .bt-about-img-wrap img{
        height:380px;
    }

    .bt-about-accent{
        display:none;
    }

    .bt-about-badge{
        right:1rem;
    }

    .bt-faq-inner{
        grid-template-columns:1fr;
        gap:3rem;
    }

    .bt-counters-inner{
        grid-template-columns:repeat(2,1fr);
    }

    .bt-counter-card:nth-child(2){
        border-right:none;
    }

    .bt-contact-grid{
        grid-template-columns:1fr;
        gap:3rem;
    }

    .bt-info-strip-inner{
        grid-template-columns:1fr;
    }

    .bt-info-cell{
        border-right:none;
        border-bottom:1px solid rgba(0,0,0,.12);
    }

    .bt-info-cell:last-child{
        border-bottom:none;
    }

    .bt-team-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

/* ─── RESPONSIVE: 900px ─── */
@media(max-width:900px){
    .bt-services-grid{
        grid-template-columns:1fr 1fr;
    }

    .bt-gallery-grid{
        columns:2;
    }
}

/* ─── RESPONSIVE: 768px ─── */
@media(max-width:768px){
    .bt-section{
        padding:70px 0;
    }

    .bt-hero h1{
        font-size:3rem;
    }

    .bt-services-grid{
        grid-template-columns:1fr;
    }

    .bt-counters-inner{
        grid-template-columns:1fr 1fr;
    }

    .bt-about-img-wrap img{
        height:280px;
    }

    .bt-about-badge{
        right:1rem;
    }

    .bt-team-grid{
        grid-template-columns:1fr 1fr;
    }

    .bt-form-row{
        grid-template-columns:1fr;
    }

    .bt-contact-form-wrap{
        padding:2rem;
    }

    .bt-page-hero{
        height:300px;
    }

    .bt-cta-inner{
        flex-direction:column;
        text-align:center;
    }
}

/* ─── RESPONSIVE: 600px ─── */
@media(max-width:600px){
    .bt-gallery-grid{
        columns:1;
    }

    .bt-team-grid{
        grid-template-columns:1fr;
    }

    .bt-counters-inner{
        grid-template-columns:1fr 1fr;
    }

    .bt-counter-card{
        padding:2.5rem 1rem;
    }

    .bt-counter-num{
        font-size:3rem;
    }
}

/* ─── RESPONSIVE: 400px ─── */
@media(max-width:400px){
    .bt-counters-inner{
        grid-template-columns:1fr;
    }

    .bt-counter-card{
        border-right:none;
        border-bottom:1px solid rgba(255,255,255,.07);
    }

    .bt-hero-h1{
        font-size:2.6rem;
    }

    .bt-contact-form-wrap{
        padding:1.5rem;
    }
}

/* ─── TESTIMONIALS ─── */
.bt-testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.bt-testi-card{background:var(--bt-white);border:1px solid var(--bt-border);padding:2rem;border-top:3px solid var(--bt-gold)}
.bt-testi-stars{color:var(--bt-gold);font-size:1.1rem;letter-spacing:2px;margin-bottom:14px}
.bt-testi-text{font-size:.98rem;color:var(--bt-text);line-height:1.75;margin-bottom:1.25rem;font-weight:300}
.bt-testi-author{display:flex;align-items:center;gap:.75rem}
.bt-testi-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}
.bt-testi-avatar-ph{width:44px;height:44px;border-radius:50%;background:var(--bt-gold);color:var(--bt-dark);display:flex;align-items:center;justify-content:center;font-family:var(--bt-font-heading);font-size:1.4rem;flex-shrink:0}
.bt-testi-name{font-weight:700;font-size:.95rem;color:var(--bt-navy)}
.bt-testi-role{font-size:.8rem;color:var(--bt-gold);font-weight:500}
@media(max-width:900px){.bt-testi-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.bt-testi-grid{grid-template-columns:1fr}}
