/* ==========================================================================
   XofoCoats — "Material Swatch" design system
   Palette:  plaster #EFE7D8 / sand #E2D6BE / charcoal #24211E
             rust (clay) #A83D25 / moss (stone) #6C7658 / brass (metal) #A9863C
   Type:     Fraunces (display) · Inter (body) · JetBrains Mono (labels)
   ========================================================================== */

:root{
    --plaster:      #EFE7D8;
    --plaster-deep: #E2D6BE;
    --charcoal:     #24211E;
    --charcoal-soft:#37322C;
    --rust:         #A83D25;
    --rust-deep:    #8A2E1B;
    --moss:         #6C7658;
    --brass:        #A9863C;
    --ivory:        #F6F0E4;
    --ink-soft:     #55504A;
    --line:         rgba(36,33,30,0.12);
    --line-light:   rgba(246,240,228,0.16);
    --radius-lg:    22px;
    --radius-md:    14px;
    --shadow-soft:  0 20px 60px rgba(36,33,30,0.10);
    --shadow-card:  0 10px 34px rgba(36,33,30,0.08);
}

*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; overflow-x:hidden; }
body{
    font-family:'Inter', sans-serif;
    background:var(--plaster);
    color:var(--charcoal);
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ text-decoration:none; }

h1,h2,h3,h4,h5,h6{
    font-family:'Fraunces', serif;
    font-weight:600;
    letter-spacing:-0.01em;
    color:var(--charcoal);
}

::selection{ background:var(--rust); color:var(--ivory); }

/* focus visibility */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
    outline:2px solid var(--rust);
    outline-offset:3px;
}

@media (prefers-reduced-motion: reduce){
    *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; }
}

/* Utility label style — small caps mono eyebrow */
.eyebrow{
    font-family:'JetBrains Mono', monospace;
    color:var(--rust);
    font-weight:500;
    text-transform:uppercase;
    letter-spacing:0.16em;
    font-size:12.5px;
    display:inline-flex;
    align-items:center;
    gap:10px;
}
.eyebrow::before{
    content:'';
    width:22px;
    height:1px;
    background:var(--rust);
    display:inline-block;
}

.section-padding{ padding:110px 0; }
.section-header{ margin-bottom:56px; max-width:640px; }
.section-header.center{ margin-left:auto; margin-right:auto; text-align:center; }
.section-header h2{
    font-size:clamp(30px,3.6vw,46px);
    line-height:1.08;
    margin:16px 0 14px;
}
.section-header p{ color:var(--ink-soft); font-size:16.5px; line-height:1.7; }

.btn{
    font-family:'Inter',sans-serif;
    font-weight:600;
    font-size:14.5px;
    border-radius:100px;
    padding:14px 30px;
    border:1.5px solid transparent;
    display:inline-flex;
    align-items:center;
    gap:10px;
    transition:0.25s ease;
    cursor:pointer;
}
.btn-clay{ background:var(--rust); color:var(--ivory); }
.btn-clay:hover{ background:var(--rust-deep); color:var(--ivory); transform:translateY(-2px); }
.btn-ghost-dark{ border-color:rgba(246,240,228,0.5); color:var(--ivory); }
.btn-ghost-dark:hover{ border-color:var(--ivory); background:rgba(246,240,228,0.08); color:var(--ivory); transform:translateY(-2px); }
.btn-ghost-light{ border-color:var(--charcoal); color:var(--charcoal); }
.btn-ghost-light:hover{ background:var(--charcoal); color:var(--ivory); }
.btn-whatsapp{ background:#3F6B3F; color:var(--ivory); }
.btn-whatsapp:hover{ background:#325632; color:var(--ivory); transform:translateY(-2px); }
.btn-sm-link{
    font-family:'JetBrains Mono',monospace;
    font-size:12.5px;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--charcoal);
    font-weight:600;
    border-bottom:1.5px solid var(--charcoal);
    padding-bottom:2px;
    display:inline-block;
}
.btn-sm-link:hover{ color:var(--rust); border-color:var(--rust); }

/* ==========================================================================
   Navigation
   ========================================================================== */
.custom-navbar{
    background:rgba(239,231,216,0.92);
    backdrop-filter:blur(14px);
    padding:20px 0;
    transition:0.35s ease;
    border-bottom:1px solid transparent;
}
.custom-navbar.scrolled{
    padding:12px 0;
    border-bottom:1px solid var(--line);
    box-shadow:0 6px 30px rgba(36,33,30,0.06);
}
.logo{ height:68px; width:68px; object-fit:contain; transition:0.3s ease; border-radius:14px; }
.scrolled .logo{ height:54px; width:54px; }
.navbar-brand{ display:flex; align-items:center; gap:12px; }
.brand-wordmark{ font-family:'Fraunces',serif; font-weight:600; font-size:22px; color:var(--charcoal); }
.brand-wordmark span{ color:var(--rust); }

.nav-link{
    color:var(--charcoal) !important;
    font-weight:500 !important;
    font-size:14.5px;
    padding:10px 18px !important;
    position:relative;
}
.nav-link::after{
    content:'';
    position:absolute;
    bottom:6px; left:18px;
    width:0; height:1.5px;
    background:var(--rust);
    transition:0.3s ease;
}
.nav-link:hover::after{ width:calc(100% - 36px); }
.nav-link:hover{ color:var(--rust) !important; }
.call-btn{ padding:11px 24px; border-radius:100px; font-weight:600; font-size:14px; }

/* ==========================================================================
   Hero
   ========================================================================== */
.hero-section{ margin-top:104px; position:relative; }
.hero-section .carousel-item{ height:92vh; min-height:560px; }
.hero-section .carousel-item img{
    height:100%; width:100%; object-fit:cover;
    filter:grayscale(30%) brightness(38%) contrast(105%);
}
.hero-section::after{
    content:'';
    position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(36,33,30,0.25) 0%, rgba(36,33,30,0.15) 45%, var(--plaster) 100%);
    pointer-events:none;
}
.carousel-caption{
    bottom:auto; top:50%; transform:translateY(-50%);
    text-align:left; max-width:640px;
    left:6%; right:auto;
}
.carousel-caption .eyebrow{ color:var(--brass); }
.carousel-caption .eyebrow::before{ background:var(--brass); }
.carousel-caption h1{
    font-size:clamp(38px,5.2vw,68px);
    font-weight:600;
    line-height:1.04;
    margin:18px 0 20px;
    color:var(--ivory);
}
.carousel-caption p{
    font-size:18px;
    margin-bottom:34px;
    color:rgba(246,240,228,0.82);
    max-width:480px;
    line-height:1.6;
}
.hero-buttons{ display:flex; flex-wrap:wrap; gap:14px; }
.carousel-indicators{ display:none; }
.carousel-control-prev, .carousel-control-next{ width:6%; opacity:0.6; }

/* floating swatch stack — signature element */
.swatch-stack{
    position:absolute;
    right:6%;
    bottom:56px;
    display:flex;
    gap:14px;
    z-index:3;
}
.mini-swatch{
    width:96px;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 18px 40px rgba(0,0,0,0.35);
    background:var(--ivory);
    transform:translateY(0);
    transition:0.35s ease;
}
.mini-swatch:hover{ transform:translateY(-10px); }
.mini-swatch .chip{ height:78px; }
.mini-swatch .tag{
    font-family:'JetBrains Mono',monospace;
    font-size:9.5px;
    text-transform:uppercase;
    letter-spacing:0.05em;
    padding:8px 8px 10px;
    color:var(--charcoal);
    line-height:1.3;
}
.mini-swatch:nth-child(2){ margin-top:26px; }
.mini-swatch:nth-child(3){ margin-top:8px; }

.chip-ozone{ background:radial-gradient(circle at 30% 30%, #cfc3a8, #a8987a 70%); }
.chip-stone{ background:linear-gradient(135deg,#b8b2a2,#8d8676 60%,#6f6a5c); }
.chip-lime{ background: #d8cba3; } /* FIXED: Solid color */
.chip-microtopping{ background:linear-gradient(160deg,#c9c2b3,#9c9585); }
.chip-artmetal{ background:conic-gradient(from 120deg,#b99a52,#7a6636,#c9ab68,#8a7440); }
.chip-microconcrete{ background:linear-gradient(180deg,#a9a49a,#7d786f); }

/* ==========================================================================
   About
   ========================================================================== */
.about-section{ position:relative; }
.about-image-wrapper{ position:relative; }
.about-image-wrapper img{ border-radius:var(--radius-lg); width:100%; box-shadow:var(--shadow-soft); }
.experience-badge{
    position:absolute; bottom:-26px; left:-26px;
    background:var(--rust); color:var(--ivory);
    padding:24px 30px; border-radius:var(--radius-md);
    text-align:left;
    box-shadow:0 20px 40px rgba(168,61,37,0.35);
}
.experience-badge .number{
    font-family:'Fraunces',serif;
    font-size:42px; font-weight:600; display:block; line-height:1;
}
.experience-badge .text{
    font-family:'JetBrains Mono',monospace;
    font-size:11px; letter-spacing:0.08em; text-transform:uppercase; opacity:0.85;
}
.about-content p{ color:var(--ink-soft); line-height:1.85; font-size:16px; margin-bottom:24px; }
.about-tags{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:30px; }
.about-tags span{
    font-family:'JetBrains Mono',monospace;
    font-size:12px; text-transform:uppercase; letter-spacing:0.04em;
    border:1px solid var(--line); border-radius:100px;
    padding:9px 16px; color:var(--charcoal);
    display:inline-flex; align-items:center; gap:8px;
}
.about-tags span i{ color:var(--rust); font-size:11px; }

/* ==========================================================================
   Stat strip (the "Why choose" data, presented as a real numbered record)
   ========================================================================== */
.stat-strip{ background:var(--charcoal); color:var(--ivory); }
.stat-strip .section-header p{ color:rgba(246,240,228,0.65); }
.stat-strip .section-header h2{ color:var(--ivory); }
.stat-row{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-top:1px solid var(--line-light);
}
.stat-item{
    padding:36px 24px;
    border-right:1px solid var(--line-light);
}
.stat-item:last-child{ border-right:none; }
.stat-item .num{
    font-family:'Fraunces',serif;
    font-size:clamp(34px,3.4vw,50px);
    color:var(--brass);
    line-height:1;
}
.stat-item .label{
    font-family:'JetBrains Mono',monospace;
    font-size:12px; text-transform:uppercase; letter-spacing:0.06em;
    color:rgba(246,240,228,0.7); margin-top:12px; display:block;
}

.why-grid{ margin-top:60px; }
.why-card{
    display:flex; gap:18px; align-items:flex-start;
    padding:26px 6px;
    border-top:1px solid var(--line-light);
}
.why-card i{ color:var(--brass); font-size:20px; margin-top:4px; }
.why-card h5{ color:var(--ivory); font-size:16.5px; margin-bottom:6px; font-weight:600; }
.why-card p{ color:rgba(246,240,228,0.6); font-size:14px; margin:0; line-height:1.6; }

/* ==========================================================================
   Services — material swatch cards
   ========================================================================== */
.services-section{ background:var(--plaster); }
.swatch-card{
    background:var(--ivory);
    border-radius:var(--radius-lg);
    overflow:hidden;
    box-shadow:var(--shadow-card);
    transition:0.4s ease;
    height:100%;
    border:1px solid var(--line);
}
.swatch-card:hover{ transform:translateY(-8px); box-shadow:0 26px 60px rgba(36,33,30,0.14); }
.swatch-photo{ position:relative; height:230px; overflow:hidden; }
.swatch-photo img{ height:100%; width:100%; object-fit:cover; transition:0.5s ease; }
.swatch-card:hover .swatch-photo img{ transform:scale(1.06); }
.swatch-photo::after{
    content:'';
    position:absolute; inset:0;
    mix-blend-mode:multiply;
    opacity:0.55;
}
.swatch-photo.mat-ozone::after{ background:radial-gradient(circle at 25% 20%,#cbb98f,#7c6a49 75%); }
.swatch-photo.mat-stone::after{ background:linear-gradient(140deg,#8f8a78,#54503f 65%); }
/* FIXED: Lime Plaster - solid color */
.swatch-photo.mat-lime::after{ 
    background: #d8cba3;
    opacity: 0.5;
}
.swatch-photo.mat-microtopping::after{ background:linear-gradient(160deg,#a39c88,#615c4d); }
.swatch-photo.mat-artmetal::after{ background:conic-gradient(from 140deg,#b99a52,#5f4f2a,#c9ab68,#6c5a30); }
.swatch-photo.mat-microconcrete::after{ background:linear-gradient(180deg,#847e70,#3f3c33); }
.swatch-code{
    position:absolute; top:16px; left:16px;
    font-family:'JetBrains Mono',monospace;
    font-size:11px; color:var(--ivory);
    background:rgba(36,33,30,0.55);
    padding:5px 10px; border-radius:6px; letter-spacing:0.05em;
    z-index:2;
}
.swatch-content{ padding:26px 26px 28px; }
.swatch-content h5{ font-size:20px; margin-bottom:8px; }
.swatch-content p{ color:var(--ink-soft); font-size:14.5px; margin-bottom:18px; line-height:1.6; }

/* ==========================================================================
   Industries — tag cloud
   ========================================================================== */
.industries-section{ background:var(--plaster-deep); }
.industry-cloud{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }
.industry-item{
    background:var(--ivory);
    padding:16px 26px;
    border-radius:100px;
    display:inline-flex; align-items:center; gap:12px;
    border:1px solid var(--line);
    transition:0.3s ease;
    font-weight:600; font-size:15px;
}
.industry-item i{ color:var(--rust); font-size:16px; }
.industry-item:hover{
    background:var(--charcoal); border-color:var(--charcoal); color:var(--ivory);
    transform:translateY(-4px);
}
.industry-item:hover i{ color:var(--brass); }
.industry-item:nth-child(3n){ transform:rotate(-0.6deg); }
.industry-item:nth-child(3n+1){ transform:rotate(0.6deg); }
.industry-item:nth-child(3n):hover, .industry-item:nth-child(3n+1):hover{ transform:translateY(-4px) rotate(0deg); }

/* ==========================================================================
   CTA
   ========================================================================== */
.cta-section{
    background:
        linear-gradient(120deg, rgba(36,33,30,0.94), rgba(36,33,30,0.86)),
        repeating-linear-gradient(115deg, rgba(169,134,60,0.08) 0 2px, transparent 2px 40px);
    padding:120px 0;
    text-align:center;
}
.cta-section .eyebrow{ color:var(--brass); justify-content:center; }
.cta-section .eyebrow::before{ background:var(--brass); }
.cta-section h2{
    color:var(--ivory);
    font-size:clamp(30px,3.6vw,46px);
    max-width:720px; margin:18px auto 16px;
}
.cta-section p{ color:rgba(246,240,228,0.68); font-size:17px; margin:0 auto 36px; max-width:520px; }
.cta-buttons{ display:flex; justify-content:center; gap:16px; flex-wrap:wrap; }

/* ==========================================================================
   Contact
   ========================================================================== */
.contact-info{
    padding:40px 34px;
    background:var(--charcoal);
    color:var(--ivory);
    border-radius:var(--radius-lg);
    height:100%;
}
.info-item{ display:flex; gap:18px; margin-bottom:28px; align-items:flex-start; }
.info-item i{
    font-size:16px; color:var(--charcoal);
    width:42px; height:42px; min-width:42px;
    background:var(--brass);
    border-radius:50%;
    display:flex; align-items:center; justify-content:center;
}
.info-item h6{
    font-family:'JetBrains Mono',monospace;
    font-size:11px; text-transform:uppercase; letter-spacing:0.08em;
    color:rgba(246,240,228,0.6); margin-bottom:6px; font-weight:600;
}
.info-item p{ margin:0; font-size:15.5px; }
.info-item a{ color:var(--ivory); }
.info-item a:hover{ color:var(--brass); }

.social-links{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    justify-content:flex-start;
    align-items:center;
    max-width:100%;
}
.social-links a{
    flex-shrink:0;
    width:42px; height:42px; border-radius:50%;
    background:rgba(246,240,228,0.08);
    display:flex; align-items:center; justify-content:center;
    color:var(--ivory); font-size:15px; transition:0.3s ease;
}
.social-links a:hover{ background:var(--brass); color:var(--charcoal); }

.contact-form{
    background:var(--ivory);
    padding:40px;
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow-card);
    border:1px solid var(--line);
}
.contact-form .form-control{
    padding:15px 18px;
    border-radius:10px;
    border:1.5px solid var(--line);
    margin-bottom:16px;
    font-size:15px;
    font-family:'Inter',sans-serif;
    background:#fff;
}
.contact-form .form-control:focus{
    border-color:var(--rust);
    box-shadow:0 0 0 3px rgba(168,61,37,0.12);
    outline:none;
}
.contact-form .form-control.is-invalid{ border-color:#c0392b; }

/* ==========================================================================
   Footer
   ========================================================================== */
.footer-section{ background:var(--charcoal); color:rgba(246,240,228,0.65); padding:70px 0 0; }
.footer-logo{ height:46px; filter:brightness(10); }
.footer-brand-word{ font-family:'Fraunces',serif; font-size:24px; color:var(--ivory); }
.footer-brand-word span{ color:var(--brass); }
.footer-section p{ font-size:14.5px; line-height:1.8; margin:16px 0; }
.footer-social{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    max-width:100%;
}
.footer-social a{
    flex-shrink:0;
    display:inline-flex; align-items:center; justify-content:center;
    width:40px; height:40px; background:rgba(246,240,228,0.08);
    border-radius:50%; color:var(--ivory); transition:0.3s ease;
}
.footer-social a:hover{ background:var(--rust); }
.footer-section h5{
    font-family:'JetBrains Mono',monospace;
    font-size:12px; text-transform:uppercase; letter-spacing:0.08em;
    color:var(--brass); margin-bottom:22px; font-weight:600;
}
.footer-section ul{ list-style:none; padding:0; }
.footer-section ul li{ margin-bottom:12px; }
.footer-section ul li a{ color:rgba(246,240,228,0.6); transition:0.25s ease; }
.footer-section ul li a:hover{ color:var(--ivory); padding-left:4px; }
.footer-section .fa-phone, .footer-section .fa-envelope, .footer-section .fa-map-marker-alt{
    color:var(--brass); margin-right:10px;
}
.footer-bottom{
    border-top:1px solid var(--line-light);
    padding:22px 0; margin-top:50px; text-align:center;
    font-size:13px; font-family:'JetBrains Mono',monospace; letter-spacing:0.03em;
}

/* ==========================================================================
   AOS-lite fade utility (used instead of external animation lib dependency)
   ========================================================================== */
[data-aos]{ opacity:0; transition:opacity 0.7s ease, transform 0.7s ease; }
[data-aos="fade-up"]{ transform:translateY(28px); }
[data-aos="fade-right"]{ transform:translateX(-28px); }
[data-aos="fade-left"]{ transform:translateX(28px); }
[data-aos="zoom-in"]{ transform:scale(0.96); }
[data-aos="flip-up"]{ transform:translateY(18px); }
[data-aos].aos-animate{ opacity:1; transform:translate(0,0) scale(1); }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 992px){
    .section-padding{ padding:80px 0; }
    .stat-row{ grid-template-columns:repeat(2,1fr); }
    .stat-item:nth-child(2){ border-right:none; }
    .stat-item{ border-bottom:1px solid var(--line-light); }
    .swatch-stack{ display:none; }
    .hero-section .carousel-item{ height:78vh; }
}
@media (max-width: 768px){
    .hero-section{ margin-top:88px; }
    .hero-section .carousel-item{ height:64vh; min-height:460px; }
    .carousel-caption{ left:6%; right:6%; max-width:none; }
    .carousel-caption p{ max-width:none; }
    .hero-buttons .btn{ padding:12px 24px; font-size:13.5px; }
    .experience-badge{ position:static; margin-top:20px; display:inline-block; }
    .stat-row{ grid-template-columns:1fr; }
    .stat-item{ border-right:none !important; }
    .cta-section{ padding:80px 0; }
    .custom-navbar{ padding:10px 0; }
    .logo{ height:52px; width:52px; }
    .contact-form{ padding:26px; }
    .contact-info{ padding:30px 24px; }
    .about-image-wrapper{ margin-bottom:70px; }
}

/* ==========================================================================
   Service-details page (page-banner, service-desc, spec blocks etc.)
   ========================================================================== */

.page-banner{
    margin-top:104px;
    padding:70px 0 46px;
    background:var(--charcoal);
    color:var(--ivory);
}
.page-banner h1{
    color:var(--ivory);
    font-size:clamp(30px,4vw,50px);
    margin:14px 0 16px;
}
.page-banner .banner-crumb{
    font-family:'JetBrains Mono',monospace;
    font-size:12.5px;
    letter-spacing:0.04em;
    color:rgba(246,240,228,0.6);
    display:flex;
    gap:8px;
}
.page-banner .banner-crumb a{ color:rgba(246,240,228,0.75); }
.page-banner .banner-crumb a:hover{ color:var(--brass); }

.service-desc{
    color:var(--ink-soft);
    font-size:16.5px;
    line-height:1.85;
    margin:18px 0 30px;
}
.spec-heading{
    font-size:15px;
    text-transform:uppercase;
    letter-spacing:0.06em;
    font-family:'JetBrains Mono',monospace;
    color:var(--charcoal);
    margin:26px 0 14px;
}

.service-detail-image{
    position:relative;
    border-radius:var(--radius-lg);
    overflow:hidden;
    box-shadow:var(--shadow-soft);
    aspect-ratio:4/5;
    background: #f5f0eb;
}
.service-detail-image img{ 
    height:100%; 
    width:100%; 
    object-fit:cover;
    position: relative;
    z-index: 2;
}
.service-detail-image::after{
    content:'';
    position:absolute; inset:0;
    mix-blend-mode:multiply;
    opacity:0.5;
    z-index: 1;
    pointer-events: none;
}

/* Fixed: Lime Plaster - solid color, no lines */
.service-detail-image.mat-ozone::after{ 
    background:radial-gradient(circle at 25% 20%,#cbb98f,#7c6a49 75%); 
}
.service-detail-image.mat-stone::after{ 
    background:linear-gradient(140deg,#8f8a78,#54503f 65%); 
}
.service-detail-image.mat-lime::after{ 
    background: #d8cba3;
    opacity: 0.4;
}
.service-detail-image.mat-microtopping::after{ 
    background:linear-gradient(160deg,#a39c88,#615c4d); 
}
.service-detail-image.mat-artmetal::after{ 
    background:conic-gradient(from 140deg,#b99a52,#5f4f2a,#c9ab68,#6c5a30); 
}
.service-detail-image.mat-microconcrete::after{ 
    background:linear-gradient(180deg,#847e70,#3f3c33); 
}
.service-detail-image.mat-tedtra::after{ 
    background:linear-gradient(135deg,#d8c8b8,#baa590); 
}
.service-detail-image.mat-walltexture::after{ 
    background:linear-gradient(135deg,#c8c0b8,#a8a098); 
}

.service-seo-keywords{
    margin-top:24px;
    padding:14px 20px;
    background:#f5f0eb;
    border-radius:8px;
    border-left:3px solid var(--brass);
}
.service-seo-keywords strong{
    font-family:'JetBrains Mono',monospace;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:0.06em;
    color:var(--charcoal);
    display:block;
    margin-bottom:6px;
}
.service-seo-keywords span{
    font-size:14px;
    color:var(--ink-soft);
}

@media (max-width: 768px){
    .page-banner{ margin-top:88px; padding:50px 0 34px; }
}

/* ==========================================================================
   MOBILE NAV FIX (consolidated — replaces all earlier duplicate blocks)
   ========================================================================== */

.container{
    padding-left:16px;
    padding-right:16px;
}

.custom-navbar .container{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:nowrap;
    gap:10px;
    padding-left:16px;
    padding-right:16px;
}

.navbar-brand{
    flex-shrink:0;
    min-width:0;
    margin-right:10px;
}

.navbar-toggler{
    flex-shrink:0;
    border:none;
    padding:8px 10px;
    box-shadow:none !important;
    position:relative;
    z-index:1050;
}

.navbar-toggler-icon{
    width:24px;
    height:24px;
    display:inline-block;
    background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(36,33,30,1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-toggler:focus{
    box-shadow:none;
    outline:2px solid var(--rust);
    outline-offset:2px;
}

@media (max-width:991px){
    .navbar-collapse{
        width:100%;
        background:#efe7d8;
        margin-top:12px;
        padding:20px;
        border-radius:16px;
        box-shadow:0 10px 40px rgba(36,33,30,0.15);
        border:1px solid var(--line);
        position:relative;
        z-index:1040;
    }

    .navbar-nav{
        width:100%;
        gap:4px;
    }

    .navbar-nav .nav-item{
        width:100%;
    }

    .nav-link{
        display:block;
        padding:12px 14px !important;
        border-radius:10px;
        transition:0.2s ease;
    }

    .nav-link:hover{
        background:rgba(168, 61, 37, 0.08);
    }

    .nav-link::after{
        display:none;
    }

    .call-btn{
        display:block;
        width:100%;
        margin:16px 0 0;
        text-align:center;
        justify-content:center;
    }

    .logo{
        height:52px;
        width:52px;
    }
}

/* ================= FLOATING BUTTONS FIX (consolidated) ================= */

.whatsapp-float,
.call-float,
.instagram-float{
    position:fixed;
    z-index:999;
    width:56px;
    height:56px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:24px;
    transition:0.3s ease;
    text-decoration:none;
    box-shadow:0 8px 25px rgba(0, 0, 0, 0.25);
    border:none;
    right:26px;
}

.whatsapp-float{ bottom:180px; background:#3F6B3F; }
.call-float{ bottom:112px; background:var(--rust); }
.instagram-float{
    bottom:44px;
    background:linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
}

@media (max-width: 768px){
    .whatsapp-float, .call-float, .instagram-float{
        width:52px;
        height:52px;
        font-size:22px;
        right:16px;
    }
    .whatsapp-float{ bottom:160px; }
    .call-float{ bottom:98px; }
    .instagram-float{ bottom:36px; }
}

@media (max-width: 480px){
    .whatsapp-float, .call-float, .instagram-float{
        width:48px;
        height:48px;
        font-size:20px;
        right:12px;
    }
    .whatsapp-float{ bottom:150px; }
    .call-float{ bottom:92px; }
    .instagram-float{ bottom:34px; }
}

.whatsapp-float:hover,
.call-float:hover,
.instagram-float:hover{
    transform:scale(1.1);
    color:#fff;
}