:root{
--ink:#0A1F14;
--ink-2:#0D2818;
--ink-3:#14351F;
--grn:#1B7B4A;
--grn-2:#23945A;
--grn-3:#2FB56C;
--mint:#5FE0A0;
--lime:#C4F04A;
--paper:#F3F7F2;
--paper-2:#E7EFE6;
--line:#D6E4D6;
--line-dk:rgba(95,224,160,.18);
--txt:#12231A;
--mut:#5E7466;
--w:#fff;
--wa:#25D366;
}
*{box-sizing:border-box}
html{scroll-padding-top:104px;overflow-x:clip}
body{
margin:0;font-family:'Poppins',Arial,sans-serif;font-size:.93rem;
color:var(--txt);background:var(--w);
}
a{color:inherit;text-decoration:none;transition:color .2s ease,background-color .2s ease,border-color .2s ease}
img{max-width:100%;height:auto;display:block}
ul{list-style:none;margin:0;padding:0}
.skip{position:absolute;left:1rem;top:-4rem;z-index:9999;background:var(--grn);color:#fff;padding:.7rem 1.2rem;border-radius:999px;font-size:.82rem;font-weight:600}
.skip:focus{top:1rem}

/* ============ TYPE ============ */
.eyebrow{
display:inline-flex;align-items:center;gap:.6rem;
font-size:.68rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--grn-2);
}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--grn-3)}
.eyebrow.lt{color:var(--mint)}
.eyebrow.lt::before{background:var(--mint)}
.h-xl{font-size:clamp(2.1rem,5.2vw,4rem);font-weight:800;line-height:1.02;letter-spacing:-.045em;margin:0}
.h-lg{font-size:clamp(1.6rem,3.1vw,2.6rem);font-weight:800;line-height:1.1;letter-spacing:-.035em;margin:0;color:var(--ink-2)}
.h-lg.lt{color:#fff}
.lead{font-size:.97rem;line-height:1.85;color:var(--mut);margin:1.1rem 0 0}
.lead.lt{color:rgba(255,255,255,.7)}

/* ============ BUTTONS ============ */
.b{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-size:.85rem;font-weight:600;padding:.85rem 1.5rem;border:1px solid transparent;border-radius:2px}
.b-fill{background:var(--grn-2);color:#fff;border-color:var(--grn-2)}
.b-fill:hover{background:var(--ink-2);border-color:var(--ink-2);color:#fff}
.b-lime{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.b-lime:hover{background:var(--mint);border-color:var(--mint);color:var(--ink)}
.b-out{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.b-out:hover{background:#fff;color:var(--ink);border-color:#fff}
.b-out-dk{background:transparent;color:var(--ink-2);border-color:var(--line)}
.b-out-dk:hover{background:var(--ink-2);color:#fff;border-color:var(--ink-2)}

/* =========================================================
HEADER — split rail + centered logo
========================================================= */
.hdr{position:fixed;inset:0 0 auto 0;z-index:1040}
.hdr-strip{
background:var(--ink);color:rgba(255,255,255,.72);font-size:.74rem;font-weight:500;
border-bottom:1px solid var(--line-dk)
}
.hdr-strip .container{display:flex;align-items:center;justify-content:space-between;height:38px}
.hdr-strip a{display:inline-flex;align-items:center;gap:.45rem}
.hdr-strip a:hover{color:var(--mint)}
.hdr-strip i{color:var(--grn-3);font-size:.7rem}
.live{display:inline-flex;align-items:center;gap:.45rem;color:var(--lime);font-weight:600;font-size:.68rem;letter-spacing:.08em}
.live b{width:6px;height:6px;border-radius:50%;background:var(--lime);animation:blip 2s infinite}
@keyframes blip{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.5)}}

.hdr-main{background:var(--ink);border-bottom:1px solid var(--line-dk)}
.hdr-grid{
display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
gap:1.5rem;padding:.7rem 0
}

/* logo */
.logo{display:inline-flex;align-items:center;gap:.8rem}
.logo-badge{
width:50px;height:50px;flex:0 0 auto;display:grid;place-items:center;
background:linear-gradient(150deg,var(--grn-3),var(--grn));
clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);
color:#fff;transition:.3s
}
.logo:hover .logo-badge{transform:rotate(8deg) scale(1.05)}
.logo-txt{display:flex;flex-direction:column;line-height:1.1}
.logo-txt strong{font-size:1.02rem;font-weight:800;letter-spacing:-.01em;color:#fff;text-transform:uppercase}
.logo-txt strong em{font-style:normal;color:var(--mint)}
.logo-txt small{font-size:.55rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:600;margin-top:.25rem}

/* nav split */
.nav-side{display:flex;align-items:center;gap:.15rem}
.nav-side.l{justify-content:flex-end}
.nav-side.r{justify-content:flex-start}
.nl{
position:relative;color:rgba(255,255,255,.78);font-size:.79rem;font-weight:600;
letter-spacing:.02em;text-transform:uppercase;padding:.55rem .7rem
}
.nl::after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:.28rem;height:2px;background:var(--lime);transform:scaleX(0);transition:.25s}
.nl:hover,.nl.on{color:#fff}
.nl:hover::after,.nl.on::after{transform:scaleX(1)}

.hdr-cta{display:flex;align-items:center;gap:.5rem;margin-left:.6rem}
.icb{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line-dk);color:var(--mint);font-size:.95rem}
.icb:hover{background:var(--grn-2);border-color:var(--grn-2);color:#fff}
.icb.wa{background:var(--wa);border-color:var(--wa);color:#fff}
.icb.wa:hover{background:#1CB457;border-color:#1CB457}

/* burger */
.burg{display:none;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:1px solid var(--line-dk);cursor:pointer;padding:0}
.burg span{width:20px;height:2px;background:var(--mint);transition:.3s}
.burg.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burg.on span:nth-child(2){opacity:0}
.burg.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* mobile panel */
.m-panel{
position:fixed;inset:0 0 0 auto;width:min(340px,86vw);z-index:1050;
background:var(--ink);border-left:1px solid var(--line-dk);
padding:1.6rem 1.4rem;overflow-y:auto;
transform:translateX(100%);transition:transform .4s cubic-bezier(.16,1,.3,1)
}
.m-panel.open{transform:translateX(0)}
.m-panel-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.6rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line-dk)}
.m-close{width:38px;height:38px;display:grid;place-items:center;background:transparent;border:1px solid var(--line-dk);color:var(--mint);font-size:1rem;cursor:pointer}
.m-nav a{
display:flex;align-items:center;justify-content:space-between;
padding:.9rem .2rem;color:rgba(255,255,255,.85);font-size:.86rem;font-weight:600;
text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid rgba(255,255,255,.06)
}
.m-nav a span.n{font-size:.62rem;color:var(--grn-3)}
.m-nav a:hover,.m-nav a.on{color:var(--lime)}
.m-foot{margin-top:1.6rem;display:grid;gap:.6rem}
.m-ovl{position:fixed;inset:0;background:rgba(6,17,11,.72);z-index:1045;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}
.m-ovl.on{opacity:1;visibility:visible}

@media(max-width:1199.98px){
.nav-side,.hdr-cta{display:none!important}
.burg{display:inline-flex}
.hdr-grid{grid-template-columns:1fr auto;padding:.75rem 0}
}

/* =========================================================
HERO — asymmetric split, no slider
========================================================= */
.hero{position:relative;background:var(--ink-2);color:#fff;overflow:hidden;padding-top:108px}
.hero-wrap{display:grid;grid-template-columns:1.05fr .95fr;min-height:calc(100vh - 108px)}
.hero-l{
display:flex;flex-direction:column;justify-content:center;
padding:4.5rem 4rem 4.5rem 0;position:relative
}
.hero-l::before{
content:"";position:absolute;inset:0;
background:radial-gradient(520px 280px at 20% 40%,rgba(47,181,108,.14),transparent 70%);
pointer-events:none
}
.hero-l>*{position:relative}
.hero-num{
position:absolute;top:2.5rem;right:5rem;font-size:9rem;font-weight:800;line-height:1;
letter-spacing:-.07em;color:rgba(95,224,160,.05);pointer-events:none;user-select:none
}
.hero h1{margin:1.3rem 0 0}
.hero h1 u{
text-decoration:none;position:relative;color:var(--mint);
}
.hero h1 u::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.12em;background:var(--lime);opacity:.35}
.hero-p{max-width:46ch;font-size:.96rem;line-height:1.85;color:rgba(255,255,255,.72);margin:1.4rem 0 0}
.hero-btns{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2.2rem}
.hero-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.4rem}
.tag{
display:inline-flex;align-items:center;gap:.45rem;font-size:.71rem;font-weight:600;
padding:.42rem .8rem;border:1px solid var(--line-dk);color:rgba(255,255,255,.78)
}
.tag i{color:var(--lime);font-size:.6rem}

.hero-r{position:relative;min-height:420px}
.hero-r img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-r::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink-2) 0%,rgba(13,40,24,.35) 35%,transparent 100%)}
/* floating stat chips over image */
.chip{
position:absolute;z-index:2;background:rgba(10,31,20,.92);
border:1px solid var(--line-dk);padding:.9rem 1.1rem;display:flex;align-items:center;gap:.85rem
}
.chip i{width:36px;height:36px;display:grid;place-items:center;background:var(--grn-2);color:#fff;font-size:.85rem;flex:0 0 auto}
.chip b{display:block;font-size:1rem;font-weight:800;color:#fff;line-height:1}
.chip span{display:block;font-size:.68rem;color:rgba(255,255,255,.6);margin-top:.2rem}
.chip.c1{left:-58px;top:16%}
.chip.c2{right:2rem;bottom:22%}
.chip.c3{left:12%;bottom:8%}

/* hero ticker strip */
.h-strip{background:var(--lime);color:var(--ink);overflow:hidden;border-top:1px solid rgba(0,0,0,.08)}
.h-strip-track{display:flex;width:max-content;animation:slide 32s linear infinite;will-change:transform;transform:translate3d(0,0,0)}
.h-strip-track div{display:flex;align-items:center;gap:2.4rem;padding:.75rem 1.2rem .75rem 0;white-space:nowrap;font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.h-strip-track i{font-size:.3rem}
@keyframes slide{to{transform:translate3d(-50%,0,0)}}

/* =========================================================
SECTIONS
========================================================= */
.sec{padding:6.5rem 0}
.sec-paper{background:var(--paper)}
.sec-dark{background:var(--ink-2);color:#fff}

/* ===== SERVICES : numbered rows ===== */
.srv-row{
display:grid;grid-template-columns:auto 1fr auto;gap:2.5rem;align-items:center;
padding:2.1rem 0;border-top:1px solid var(--line);position:relative
}
.srv-row:last-child{border-bottom:1px solid var(--line)}
.srv-row:hover{background:var(--w)}
.srv-row>*{position:relative;z-index:1}
.srv-n{font-size:.72rem;font-weight:800;letter-spacing:.18em;color:var(--grn-3);width:34px}
.srv-mid{display:grid;grid-template-columns:minmax(210px,.75fr) 1fr;gap:2rem;align-items:center}
.srv-mid h3{margin:0;font-size:1.22rem;font-weight:800;letter-spacing:-.02em;color:var(--ink-2)}
.srv-mid p{margin:0;font-size:.87rem;line-height:1.75;color:var(--mut)}
.srv-ic{
width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;
border:1px solid var(--line);color:var(--grn);font-size:1.05rem;
transition:background-color .25s ease,border-color .25s ease,color .25s ease
}
.srv-row:hover .srv-ic{background:var(--grn-2);border-color:var(--grn-2);color:#fff}

/* ===== ABOUT : collage + offset ===== */
.ab-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:4.5rem;align-items:center}
.ab-collage{position:relative;padding-bottom:3.5rem;padding-right:3.5rem}
.ab-collage .big{width:100%;aspect-ratio:4/5;object-fit:cover}
.ab-collage .sml{
position:absolute;right:0;bottom:0;width:58%;aspect-ratio:4/3;object-fit:cover;
border:8px solid var(--w)
}
.ab-collage .yr{
position:absolute;left:0;top:0;background:var(--lime);color:var(--ink);
padding:1rem 1.2rem;text-align:left
}
.ab-collage .yr b{display:block;font-size:1.9rem;font-weight:800;line-height:1;letter-spacing:-.04em}
.ab-collage .yr span{display:block;font-size:.62rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-top:.25rem}
.quote{
margin:1.8rem 0 0;padding:1.3rem 1.5rem;background:var(--paper-2);
border-left:3px solid var(--grn-2);font-size:.96rem;font-weight:600;line-height:1.7;color:var(--ink-2)
}
.sign{margin-top:1.4rem;display:flex;align-items:center;gap:.8rem;font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.sign::before{content:"";width:32px;height:1px;background:var(--grn-3)}

/* ===== BRANDS : tabbed dark ===== */
.brand-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2.2rem}
.btab{
background:transparent;border:1px solid var(--line-dk);color:rgba(255,255,255,.7);
padding:.6rem 1.4rem;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.25s
}
.btab:hover{color:#fff;border-color:var(--mint)}
.btab.on{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.bpane{display:none;animation:fadeUp .45s ease both}
.bpane.on{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.bpane-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:3rem;align-items:center}
.bpane h3{font-size:2.6rem;font-weight:800;letter-spacing:-.04em;color:#fff;margin:0 0 .4rem}
.bpane .kind{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--lime);margin-bottom:1rem}
.bpane p{font-size:.9rem;line-height:1.8;color:rgba(255,255,255,.68);margin:0}
.bfeat{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
.bfeat li{display:flex;align-items:flex-start;gap:.65rem;font-size:.82rem;color:rgba(255,255,255,.82);padding:.85rem 1rem;border:1px solid var(--line-dk)}
.bfeat i{color:var(--mint);font-size:.75rem;margin-top:.2rem}

/* ===== PROCESS : zig-zag rail ===== */
.rail{position:relative;max-width:940px;margin:0 auto}
.rail::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--line);transform:translateX(-.5px)}
.rail-item{position:relative;display:grid;grid-template-columns:1fr 84px 1fr;gap:0;align-items:center;padding:1.4rem 0}
.rail-card{background:var(--w);border:1px solid var(--line);padding:1.6rem 1.5rem;transition:border-color .25s ease}
.rail-card:hover{border-color:var(--grn-3)}
.rail-card h3{margin:0 0 .5rem;font-size:1.02rem;font-weight:800;letter-spacing:-.015em;color:var(--ink-2)}
.rail-card p{margin:0;font-size:.85rem;line-height:1.72;color:var(--mut)}
.rail-card .mini{display:inline-flex;align-items:center;gap:.45rem;font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--grn-3);margin-bottom:.6rem}
.rail-dot{
justify-self:center;width:52px;height:52px;display:grid;place-items:center;
background:var(--ink-2);color:var(--lime);font-size:.86rem;font-weight:800;
clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);z-index:2
}
.rail-item.rev .rail-card{grid-column:3}
.rail-item .spacer{}
@media(max-width:767.98px){
.rail::before{left:26px}
.rail-item{grid-template-columns:52px 1fr;gap:1.1rem;padding:.8rem 0}
.rail-dot{grid-column:1;justify-self:start}
.rail-card,.rail-item.rev .rail-card{grid-column:2}
.rail-item .spacer{display:none}
}

/* ===== GALLERY : swiper coverflow-ish ===== */
.gal-swiper{padding-bottom:3.2rem;overflow:visible}
.gal-card{position:relative;overflow:hidden;display:block;aspect-ratio:3/4;background:var(--ink)}
.gal-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.gal-card:hover img{transform:scale(1.04)}
.gal-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(10,31,20,.94) 100%)}
.gal-meta{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1.4rem 1.3rem;color:#fff}
.gal-meta .k{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--lime);margin-bottom:.45rem}
.gal-meta h3{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.015em}
.gal-meta p{margin:.3rem 0 0;font-size:.78rem;color:rgba(255,255,255,.7)}
.gal-plus{
position:absolute;top:1rem;right:1rem;z-index:2;width:38px;height:38px;display:grid;place-items:center;
background:rgba(255,255,255,.16);color:#fff;font-size:.82rem;
opacity:0;transform:scale(.85);transition:.3s
}
.gal-card:hover .gal-plus{opacity:1;transform:scale(1);background:var(--lime);color:var(--ink)}
.gal-nav{display:flex;gap:.55rem}
.gnav{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);background:var(--w);color:var(--ink-2);font-size:.85rem;cursor:pointer;transition:.25s}
.gnav:hover{background:var(--grn-2);border-color:var(--grn-2);color:#fff}
.gnav.swiper-button-disabled{opacity:.35;pointer-events:none}

/* ===== FAQ : sticky left + list right ===== */
.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:4rem;align-items:start}
.faq-stick{position:relative;top:auto}
.fq{border-top:1px solid var(--line)}
.fq:last-child{border-bottom:1px solid var(--line)}
.fq-q{
width:100%;background:transparent;border:0;cursor:pointer;text-align:left;
display:flex;align-items:center;gap:1.2rem;padding:1.35rem 0;
font-size:.98rem;font-weight:700;letter-spacing:-.015em;color:var(--ink-2)
}
.fq-q .idx{font-size:.68rem;font-weight:800;letter-spacing:.14em;color:var(--grn-3);flex:0 0 auto}
.fq-q .txt{flex:1}
.fq-q .sgn{
width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;
border:1px solid var(--line);color:var(--grn);font-size:.72rem;transition:.3s
}
.fq.on .fq-q{color:var(--grn)}
.fq.on .fq-q .sgn{background:var(--grn-2);border-color:var(--grn-2);color:#fff;transform:rotate(45deg)}
.fq-a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.16,1,.3,1)}
.fq-a-in{padding:0 0 1.4rem 3.1rem;font-size:.88rem;line-height:1.85;color:var(--mut)}

/* ===== CONTACT : dark split w/ form card overlap ===== */
.ct{position:relative;background:var(--ink-2);color:#fff;overflow:hidden}
.ct::before{content:"";position:absolute;inset:0;background:radial-gradient(480px 260px at 15% 20%,rgba(47,181,108,.12),transparent 70%);pointer-events:none}
.ct .container{position:relative}
.ct-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:center}
.ct-list{display:grid;gap:.15rem;margin-top:2rem}
.ct-list a,.ct-list .st{
display:flex;align-items:center;gap:1rem;padding:1rem 0;
border-bottom:1px solid var(--line-dk);color:rgba(255,255,255,.82);font-size:.88rem
}
.ct-list i{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--line-dk);color:var(--mint);font-size:.85rem}
.ct-list a:hover{color:var(--lime)}
.ct-list a:hover i{background:var(--grn-2);border-color:var(--grn-2);color:#fff}
.form-card{background:var(--w);padding:2.6rem;color:var(--txt);box-shadow:0 34px 80px rgba(0,0,0,.3)}
.form-card h3{margin:0 0 .3rem;font-size:1.2rem;font-weight:800;letter-spacing:-.02em;color:var(--ink-2)}
.form-card>p{margin:0 0 1.6rem;font-size:.84rem;color:var(--mut)}
.form-label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin-bottom:.4rem}
.form-control,.form-select{
background:var(--paper);border:1px solid var(--line);border-radius:0;
min-height:50px;font-size:.88rem;color:var(--txt)
}
.form-control:focus,.form-select:focus{background:#fff;border-color:var(--grn-3);box-shadow:0 0 0 3px rgba(47,181,108,.12)}
.form-control::placeholder{color:#9BB0A2}
textarea.form-control{min-height:110px}
.fnote{font-size:.74rem;color:var(--mut)}

/* ===== CTA BAND ===== */
.band{background:var(--lime);color:var(--ink)}
.band-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.4rem;padding:2.6rem 0}
.band h3{margin:0;font-size:clamp(1.2rem,2.2vw,1.75rem);font-weight:800;letter-spacing:-.03em}
.band p{margin:.35rem 0 0;font-size:.86rem;opacity:.72}
.band-tel{display:inline-flex;align-items:center;gap:.7rem;font-size:1.25rem;font-weight:800;letter-spacing:-.02em}
.band-tel i{width:44px;height:44px;display:grid;place-items:center;background:var(--ink);color:var(--lime);font-size:.95rem}
.band-tel:hover{color:var(--grn)}

/* ===== FOOTER ===== */
.ftr{background:var(--ink);color:rgba(255,255,255,.66)}
.ftr-top{padding:4.6rem 0 3rem}
.ftr-grid{display:grid;grid-template-columns:1.5fr .85fr 1fr 1.2fr;gap:3rem}
.ftr-brand p{margin:1.2rem 0 1.5rem;font-size:.84rem;line-height:1.8;color:rgba(255,255,255,.55);max-width:34ch}
.ftr-soc{display:flex;gap:.5rem}
.ftr-soc a{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line-dk);color:rgba(255,255,255,.72);font-size:.9rem}
.ftr-soc a:hover{background:var(--grn-2);border-color:var(--grn-2);color:#fff;transform:translateY(-3px)}
.ftr-t{font-size:.68rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--mint);margin-bottom:1.3rem}
.ftr-l{margin-bottom:30px;}
.ftr-l li{margin-bottom:.68rem}
.ftr-l a{font-size:.85rem;color:rgba(255,255,255,.7);display:inline-flex;align-items:center;gap:.5rem}
.ftr-l a::before{content:"";width:0;height:1px;background:var(--lime);transition:.2s}
.ftr-l a:hover{color:#fff}
.ftr-l a:hover::before{width:12px}
.ftr-c li{display:flex;gap:.75rem;margin-bottom:.95rem;font-size:.84rem;line-height:1.65}
.ftr-c i{color:var(--mint);font-size:.82rem;margin-top:.28rem}
.ftr-c a:hover{color:#fff}
.ftr-mid{border-top:1px solid var(--line-dk);padding:1.6rem 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}
.ftr-mid .lb{font-size:.66rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--mint);margin-right:1rem}
.ftr-ml{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem}
.ftr-ml a{font-size:.8rem;color:rgba(255,255,255,.68)}
.ftr-ml a:hover{color:var(--lime)}
.ftr-cp{font-size:.8rem;color:rgba(255,255,255,.45)}
.ftr-bot{border-top:1px solid var(--line-dk);padding:1.15rem 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;font-size:.77rem;color:rgba(255,255,255,.45)}
.ftr-bot a{color:var(--lime);font-weight:700}
.ftr-bot a:hover{color:#fff}
.swa img{width:45px;height:45px;object-fit:contain;filter:invert(.5);}

/* ===== FLOAT ===== */
.flt{position:fixed;right:1.1rem;bottom:1.3rem;z-index:1030;display:grid;gap:.55rem}
.fb{width:50px;height:50px;display:grid;place-items:center;color:#fff;font-size:1.1rem;box-shadow:0 14px 32px rgba(10,31,20,.3)}
.fb:hover{transform:translateY(-3px);color:#fff}
.fb.w{background:var(--wa)}
.fb.t{background:var(--grn-2)}
.fb.u{background:var(--ink-2);opacity:0;pointer-events:none;transform:translateY(12px);transition:.3s}
.fb.u.show{opacity:1;pointer-events:auto;transform:none}
.fb.u:hover{background:var(--grn-2)}

/* ===== MODAL ===== */
.md{position:relative;margin:0 auto;max-width:620px;background:#fff;padding:2.4rem;max-height:80vh;overflow-y:auto}
.md h3{margin:0 0 .35rem;font-size:1.18rem;font-weight:800;color:var(--ink-2);letter-spacing:-.02em}
.md .mt{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--grn-3);margin-bottom:1.2rem}
.md p{font-size:.87rem;line-height:1.85;color:var(--mut);margin-bottom:.9rem}
.mfp-close{color:var(--mut)!important;font-size:1.7rem!important;top:12px!important;right:14px!important}

/* ===== REVEAL ===== */
.rv{opacity:0;transform:translate3d(0,16px,0);transition:opacity .45s ease,transform .45s ease}
.rv.in{opacity:1;transform:none}
.d1{transition-delay:.04s}.d2{transition-delay:.08s}.d3{transition-delay:.12s}.d4{transition-delay:.16s}

/* ===== RESPONSIVE ===== */
@media(max-width:1199.98px){
.hero-wrap{grid-template-columns:1fr}
.hero-l{padding:3rem 0 3.5rem}
.hero-r{min-height:340px;margin:0 -12px}
.chip.c1{left:1rem;top:1rem}
.chip.c2{right:1rem;bottom:1rem}
.chip.c3{display:none}
.hero-num{right:0;font-size:6rem}
.ab-grid,.bpane-grid,.ct-grid,.faq-grid{grid-template-columns:1fr;gap:3rem}
.faq-stick{position:static}
}
@media(max-width:991.98px){
html{scroll-padding-top:80px}
.hdr-strip{display:none}
.hero{padding-top:72px}
.srv-row{grid-template-columns:auto 1fr;gap:1.2rem}
.srv-mid{grid-template-columns:1fr;gap:.5rem}
.srv-ic{display:none}
.ftr-grid{grid-template-columns:1fr 1fr;gap:2.4rem}
.bfeat{grid-template-columns:1fr}
}
@media(max-width:575.98px){
.sec{padding:4.4rem 0}
.hero-btns .b{width:100%}
.ab-collage{padding-right:0;padding-bottom:2.6rem}
.ab-collage .sml{width:62%;border-width:6px}
.band-in{flex-direction:column;align-items:flex-start}
.form-card{padding:1.6rem}
.ftr-grid{grid-template-columns:1fr;gap:2.2rem}
.ftr-mid,.ftr-bot{flex-direction:column;align-items:flex-start}
.fq-a-in{padding-left:0}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/*--- FOOTER ----------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*footer{padding:50px 0 0 0;background:var(--bg-color);}
footer h3{font-size:18px;font-weight:700;margin-bottom:20px;}
footer .logo{margin-bottom:50px;}
footer .logo img{width:100%;height:auto;}
footer .list{margin-bottom:50px;}
footer .list>ul{list-style:none;margin:0;padding:0;}
footer .list>ul>li{display:flex;align-items:center;}
footer .list>ul>li>i{margin-right:10px;}
footer .list>ul>li>span,footer .list>ul>li>a{display:inline-block;font-size:.9em;line-height:2em;transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;}
footer .list>ul>li>span:hover,footer .list>ul>li>a:hover{padding-left:5px;}
footer .workhour{margin-bottom:50px;}
footer .map{margin-bottom:50px;}
footer .map>iframe{width:100%;height:250px;}
footer .copyright{margin-bottom:5px;font-size:11px;text-align:center;padding-top:25px;}
footer .swa{margin-bottom:50px;text-align:center;}
footer .swa>a>img{display:block;width:50px;height:50px;margin:0 auto;opacity:.95;}
footer .contracts{margin-bottom:50px;display:flex;flex-wrap:wrap;justify-content:center;}
footer .contracts a{display:inline-block;padding:0 10px;font-size:.8em;margin:0 0 5px 0;}*/

/*--- PAGE ------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.page .page-head{padding:175px 0 35px 0;background:var(--bg-color);}
.page .page-head h1{font-size:2.5em;font-weight:600;margin-bottom:25px;color:#ffffff;}
.page .page-head p{font-size:1.3em;font-weight:200;margin-bottom:25px;color:#ffffff;}
.page .page-head .breadcrumb{font-size:.8em;}
.page .page-head .title nav ol li{color:#ffffff;}
.page .page-head .title nav ol li a{color:#ffffff;}
.page .page-head .title .breadcrumb-item+.breadcrumb-item::before{color:#ffffff;}
.page .page-body{padding:50px 0 20px 0;}
.page .page-foot{padding:50px 0 20px 0;background:var(--bg-color);margin-bottom:50px;}
.page .page-form{margin-bottom:50px;}

/*--- COOKIE-POLICY -----------------------------------------------------------------------------------------------------------------------------------------------------*/
.cookie-accept {position:fixed;bottom:-100%;left:0;right:0;width:100%;z-index:99;border:1px solid #ddd;background:#fff;display:flex;justify-content:center;align-items:center;transition:bottom 1s ease-in-out;-webkit-transition:bottom 1s ease-in-out;-moz-transition:bottom 1s ease-in-out;-o-transition:bottom 1s ease-in-out;padding:20px;}
.cookie-accept.active {bottom:0;}
.cookie-accept .close {position:absolute;right:15px;top:-15px;width:30px;height:30px;border:1px solid #ddd;line-height:30px;text-align:center;font-size:1.5em;background:#fff;}
.cookie-accept .icon {text-align: center;}
.cookie-accept .icon i {font-size:4em;}
.cookie-accept .content {padding:1.5em;}
.cookie-accept .content strong {display:block;font-size:1.5em;line-height:1;margin-bottom:10px;}
.cookie-accept .content p {font-size:1.1em;font-weight:200;margin:0;}
.cookie-accept .buttons ul {list-style:none;margin:0;padding:0;display:flex;gap:10px;}
.cookie-accept .buttons ul > li {flex:1 1 auto;}
.cookie-accept .buttons ul > li > a{display:flex;padding:10px 20px;background:#aaa;color:#fff;text-align:center;text-decoration:none;align-items:center;height:100%;}
@media only screen and (max-width: 767px) {
    .cookie-accept {flex-direction: column;}
}
/*--- FORM --------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.form-group{margin-bottom:20px;}
.form-group label{display:block;font-size:1em;font-weight:700;margin-bottom:5px;}
.form-group .form-control{min-height:45px;border:0;border:1px solid #eee;font-size:1em;}
.form-group .form-control::placeholder{font-size:1em;}
.form-group input[type="checkbox"]{width:25px;height:25px;}
.form-checkbox-group{display:flex;line-height: 25px;}
.form-checkbox-group>input{accent-color:var(--primary-color);}
.form-checkbox-group a{padding-left:15px;}
.form-group button{background-color:var(--primary-color);color:#fff;font-size:1em;}
.form-group button:hover{background-color:var(--secondary-color);color:#fff;}
/*rating*/
.stars {width:100%;text-align: center;border:1px solid #eee;border-radius:5px;overflow: hidden;display: flex;justify-content: center;flex-direction: row-reverse;margin-bottom:20px;}
.stars-focus{box-shadow: 0 0 0 .25rem rgba(13,110,253,.25);}
input.star {display: none;}
label.star {margin:0;padding: 0 5px;font-size: 30px;color: #ddd;transition: all .2s;}
input.star:checked ~ label.star:before {content: '\f005';color: #FD4;transition: all .25s;font-weight: 900;}
input.star-5:checked ~ label.star:before {color: #FE7;}
input.star-1:checked ~ label.star:before {color: #F62;}
input.star-2:hover ~ label.star-1 {color: #F62;}
input.star-3:hover ~ label.star-1, input.star-3:hover ~ label.star-2 { color: #F62; }
input.star-4:hover ~ label.star-1, input.star-4:hover ~ label.star-2, input.star-4:hover ~ label.star-3 { color: #F62; }
input.star-5:hover ~ label.star-1, input.star-5:hover ~ label.star-2, input.star-5:hover ~ label.star-3, input.star-5:hover ~ label.star-4 {color: #F62;}
label.star:hover {color: #ffa300;}
label.star:before {content: '\f005';font-family: 'Font Awesome 5 Free';font-weight: 400;}
/*security-input*/
.security-group{margin-bottom:20px;position:relative;}
.security-group label{display: block;font-size:14px;font-weight:700;margin-bottom:5px;}
.security-group .img{position:absolute;bottom:0;left:0;}
.security-group .img img{min-height:45px;}
.security-group .img button{border:0;min-height:45px;min-width:45px;margin:0;background:transparent;}
.security-group input{text-indent:175px;min-height:45px;min-height:45px;border:1px solid #eee;font-size:1em;}
/*--- LOADING ---------------------------------------------------------------------------------------------------------------------------------------------------------------*/
#loading{width:100%;height:100vh;position:fixed;top:0;left:0;background:rgba(0,0,0,.7);z-index:9999999;display:flex;flex-direction:column;justify-content:center;align-items:center;}
@keyframes spin{to{transform: rotate(360deg);}from{transform: rotate(0);}}
#loading:before{content:'\f110';color:#fff;font-family: 'Font Awesome 6 Free';font-weight:900;animation: spin infinite 1s linear;}
/*--- NO-CONTENT --------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.no-content{padding:40px 20px;border:1px dashed #eee;border-radius:10px;text-align:center;margin-bottom:30px;}
.no-content>i{font-size:30px;margin-bottom:15px;color:#aaa;}
.no-content>p{font-size:18px;padding:0;margin:0;font-weight:200;}