/* Własne M — main.css | 25wat */


:root{
  --brd:#56152D;--brd2:#672136;--brd3:#7d2a43;--brd4:#9a3558;
  --sal:#FE8D7E;--sal2:rgba(254,141,126,.12);--sal3:rgba(254,141,126,.25);
  --cream:#FAF7F4;--cream2:#F3EDE8;--cream3:#EAE0D8;
  --dark:#120609;--text:#2d1520;--textm:#6b3345;--textl:#9a6070;
  --wh:#fff;--wh8:rgba(255,255,255,.8);--wh6:rgba(255,255,255,.6);
  --wh3:rgba(255,255,255,.3);--wh1:rgba(255,255,255,.07);
  --ll:rgba(45,21,32,.09);--lm:rgba(45,21,32,.15);
  --green:#5DCAA5;--greenb:rgba(93,202,165,.1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:var(--cream);color:var(--text);overflow-x:hidden}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button{font-family:inherit}

/* ── UTILITIES ── */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.reveal.v{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}
.sec-label{font-size:10px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--sal);margin-bottom:16px;display:flex;align-items:center;gap:12px}
.sec-label::before{content:'';width:28px;height:1px;background:var(--sal)}
.h2{font-size:clamp(32px,4.2vw,62px);font-weight:900;line-height:.94;letter-spacing:-2.5px;color:var(--brd);margin-bottom:22px}
.h2 em{font-style:italic;font-weight:300;color:var(--brd3)}
.h2.wh{color:var(--wh)}.h2.wh em{color:var(--sal)}
.body{font-size:15px;font-weight:400;line-height:1.85;color:var(--textm);max-width:520px}
.body.wh{color:var(--wh6)}
.btn-p{display:inline-flex;align-items:center;gap:10px;background:var(--sal);color:var(--brd);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:15px 30px;transition:transform .2s,box-shadow .2s;cursor:pointer;border:none;white-space:nowrap}
.btn-p:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(254,141,126,.35)}
.btn-g{display:inline-flex;align-items:center;gap:10px;border:1.5px solid var(--wh3);color:var(--wh8);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:14px 30px;transition:border-color .2s,color .2s;cursor:pointer;background:none;white-space:nowrap}
.btn-g:hover{border-color:var(--sal);color:var(--sal)}
.btn-brd{display:inline-flex;align-items:center;gap:10px;border:1.5px solid var(--brd);color:var(--brd);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:14px 30px;transition:background .2s,color .2s;cursor:pointer;background:none;white-space:nowrap}
.btn-brd:hover{background:var(--brd);color:var(--wh)}
.arr{width:16px;height:16px;flex-shrink:0;transition:transform .2s}
.btn-p:hover .arr,.btn-brd:hover .arr{transform:translateX(4px)}

/* ── PAGES ── */
/* .page{display:none} */
.page.active{display:block}

/* ── NAV ── */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:20px 52px;transition:all .4s;border-bottom:1px solid transparent}
.nav.s{background:rgba(250,247,244,.96);backdrop-filter:blur(20px);padding:12px 52px;border-bottom-color:var(--ll)}
.nav.dark-nav.s{background:rgba(86,21,45,.97);border-bottom-color:rgba(254,141,126,.15)}
.nav-logo{cursor:pointer;height:30px;display:flex;align-items:center}
.nav-logo img{height:30px;width:auto;transition:height .3s;filter:none}
.nav.s .nav-logo img{height:24px}
/* On dark nav, logo is already salmon so looks great; on light bg after scroll we keep it as-is */
.nav-mid{display:flex;align-items:center;gap:4px}
.nl{font-size:10.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--textm);padding:8px 13px;transition:color .2s;cursor:pointer;background:none;border:none;white-space:nowrap}
.nl:hover,.nl.on{color:var(--brd)}
.nav.dark-nav .nl{color:var(--wh6)}.nav.dark-nav .nl:hover,.nav.dark-nav .nl.on{color:var(--sal)}
.nav-cta{font-size:10.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--wh);background:var(--brd);padding:11px 22px;border:none;cursor:pointer;transition:background .2s;white-space:nowrap}
.nav-cta:hover{background:var(--brd2)}
.nav.dark-nav .nav-cta{background:var(--sal);color:var(--brd)}
.nav.dark-nav .nav-cta:hover{background:rgba(254,141,126,.85)}
.hbg{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.hbg span{width:22px;height:1.5px;background:var(--brd);display:block}
.nav.dark-nav .hbg span{background:var(--wh)}
.mob-menu{display:none;position:fixed;inset:0;background:var(--brd);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:24px}
.mob-menu.open{display:flex}
.mob-menu button{font-size:20px;font-weight:700;color:var(--sal);cursor:pointer;background:none;border:none;letter-spacing:-.5px}
.mob-close{position:absolute;top:22px;right:22px;font-size:28px;color:var(--wh3);cursor:pointer;background:none;border:none}

/* ── M SHAPE MOTIF ── */
/* SVG clip path for M-shaped image masks */
.m-frame{position:relative;display:inline-block}
.m-clip-img{width:100%;height:100%;object-fit:cover;clip-path:url(#mClip)}

/* ── HERO ── */
.hero{min-height:100vh;background:var(--brd);display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden}
.hero-left{display:flex;flex-direction:column;justify-content:flex-end;padding:150px 60px 80px;position:relative;z-index:2}
.hero-eyebrow{font-size:10px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--sal);margin-bottom:26px;display:flex;align-items:center;gap:14px;opacity:0;animation:fadeUp .9s ease .2s forwards}
.hero-eyebrow::before{content:'';width:32px;height:1px;background:var(--sal)}
.hero-h1{font-size:clamp(48px,5vw,84px);font-weight:900;line-height:.9;color:var(--wh);letter-spacing:-3.5px;margin-bottom:28px;opacity:0;animation:fadeUp .9s ease .35s forwards}
.hero-h1 em{color:var(--sal);font-style:normal}
.hero-sub{font-size:15px;font-weight:300;line-height:1.8;color:var(--wh6);max-width:400px;margin-bottom:42px;opacity:0;animation:fadeUp .9s ease .5s forwards}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;opacity:0;animation:fadeUp .9s ease .65s forwards}
/* M deco on hero right */
.hero-right{position:relative;overflow:hidden;background:var(--brd2)}
.hero-right img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-right-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(86,21,45,.35),transparent 60%)}
/* Decorative M strokes */
.hero-m-deco{position:absolute;pointer-events:none;overflow:visible}
.hero-stats{position:absolute;bottom:0;right:0;display:flex;background:rgba(20,5,12,.7);backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.08);border-left:1px solid rgba(255,255,255,.08)}
.hstat{padding:18px 26px;border-right:1px solid rgba(255,255,255,.08);text-align:center}
.hstat:last-child{border-right:none}
.hstat-n{font-size:26px;font-weight:900;color:var(--sal);letter-spacing:-1px}
.hstat-l{font-size:9px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--wh3);margin-top:2px}

/* ── TRUST BAR ── */
.tbar{background:var(--dark);padding:0 52px;display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid rgba(255,255,255,.05)}
.tbar::-webkit-scrollbar{display:none}
.tbar-i{display:flex;align-items:center;gap:14px;padding:20px 30px;border-right:1px solid rgba(255,255,255,.06);flex-shrink:0;cursor:default}
.tbar-i:first-child{padding-left:0}
.tbar-i:last-child{border-right:none}
.tbar-t{font-size:12px;font-weight:700;color:var(--wh8)}
.tbar-s{font-size:10px;color:var(--wh3);margin-top:1px}

/* ── M SHAPE IMAGE SECTION ── */
.m-photo-section{background:var(--cream);padding:100px 52px;overflow:hidden;position:relative}
.m-photo-section .inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
/* The big M-shaped collage */
.m-collage{position:relative;height:560px;flex-shrink:0}
.m-collage svg{position:absolute;inset:0;width:100%;height:100%}
.m-collage .mc-img{position:absolute;object-fit:cover}

/* ── SECTION ── */
.sec{padding:96px 52px}
.sec-dark{background:var(--brd)}
.sec-cream{background:var(--cream2)}
.sec-white{background:var(--wh)}
.sec-inner{max-width:1200px;margin:0 auto}

/* ── SPLIT ── */
.split{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:560px}
.split-img{position:relative;overflow:hidden}
.split-img img{width:100%;height:100%;object-fit:cover}
.split-content{padding:80px 68px 80px 56px;display:flex;flex-direction:column;justify-content:center}
.split-content.r{padding:80px 56px 80px 68px}
.split-content.dark{background:var(--brd)}

/* ── INV CARDS ── */
.inv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:48px}
.icard{position:relative;overflow:hidden;min-height:520px;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer}
.icard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.icard:hover img{transform:scale(1.04)}
.icard-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(18,6,9,.92) 0%,rgba(18,6,9,.35) 55%,transparent 100%);transition:background .4s}
.icard:hover .icard-overlay{background:linear-gradient(to top,rgba(18,6,9,.96) 0%,rgba(18,6,9,.5) 60%,rgba(18,6,9,.1) 100%)}
.icard-body{position:relative;z-index:2;padding:26px 26px 30px}
.ibadge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:4px 10px;background:var(--sal);color:var(--brd);margin-bottom:10px}
.ibadge.gr{background:var(--green);color:#0a2e1e}
.ibadge.wh{background:rgba(255,255,255,.15);color:var(--wh)}
.iname{font-size:24px;font-weight:900;color:var(--wh);letter-spacing:-.5px;margin-bottom:4px;line-height:1.05}
.iloc{font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--wh3);margin-bottom:10px}
.idesc{font-size:13px;color:var(--wh6);line-height:1.6;max-height:0;overflow:hidden;transition:max-height .4s}
.icard:hover .idesc{max-height:80px}
.imeta{display:flex;gap:18px;margin:12px 0}
.imeta strong{display:block;font-size:14px;font-weight:700;color:var(--wh)}
.imeta span{font-size:10px;color:var(--wh3)}
.icta{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--sal);border-bottom:1px solid transparent;padding-bottom:2px;transition:border-color .2s}
.icard:hover .icta{border-color:var(--sal)}

/* ── PILLARS (expandable) ── */
.pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;margin-top:48px}
.pillar{background:var(--brd2);cursor:pointer;overflow:hidden;transition:background .2s}
.pillar:hover{background:var(--brd3)}
.pillar.open{background:var(--brd3)}
.pillar-head{display:flex;align-items:flex-start;gap:16px;padding:32px 28px}
.pillar-icon{flex-shrink:0;width:44px;height:44px;border:1px solid rgba(254,141,126,.2);display:flex;align-items:center;justify-content:center;margin-top:2px;transition:border-color .2s}
.pillar:hover .pillar-icon,.pillar.open .pillar-icon{border-color:var(--sal)}
.pillar-head-txt{flex:1}
.pillar-num{font-size:10px;font-weight:700;letter-spacing:2px;color:rgba(254,141,126,.4);margin-bottom:6px}
.pillar-t{font-size:16px;font-weight:800;color:var(--wh);margin-bottom:4px;letter-spacing:-.3px}
.pillar-short{font-size:12.5px;color:var(--wh3);line-height:1.55}
.pillar-arr{flex-shrink:0;transition:transform .3s;margin-top:4px;opacity:.5}
.pillar.open .pillar-arr{transform:rotate(180deg);opacity:1}
.pillar-body{max-height:0;overflow:hidden;transition:max-height .45s ease}
.pillar.open .pillar-body{max-height:500px}
.pillar-body-inner{padding:0 28px 28px 88px}
.pillar-body-inner p{font-size:13.5px;color:var(--wh6);line-height:1.75;margin-bottom:12px}
.pillar-body-inner ul{list-style:none;display:flex;flex-direction:column;gap:6px}
.pillar-body-inner li{font-size:13px;color:var(--wh6);padding-left:18px;position:relative;line-height:1.55}
.pillar-body-inner li::before{content:'—';position:absolute;left:0;color:var(--sal);opacity:.6;font-size:11px}

/* ── TEAM ── */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}
.tm{overflow:hidden;background:var(--cream2)}
.tm-photo{position:relative;overflow:hidden;aspect-ratio:3/4}
.tm-photo img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .5s}
.tm:hover .tm-photo img{transform:scale(1.04)}
.tm-info{padding:18px 18px 20px}
.tm-name{font-size:14px;font-weight:700;color:var(--brd)}
.tm-role{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--sal);margin-top:2px}
.tm-quote{font-size:12px;color:var(--textm);line-height:1.55;margin-top:7px;font-style:italic}

/* ── TESTIMONIALS ── */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}
.testi{background:var(--cream2);padding:34px 28px;position:relative;overflow:hidden}
.testi::before{content:'"';position:absolute;top:-16px;right:14px;font-size:110px;font-weight:900;color:rgba(86,21,45,.06);line-height:1}
.testi-img{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:top;margin-bottom:18px;border:2px solid var(--sal)}
.testi-txt{font-size:14px;line-height:1.75;color:var(--text);margin-bottom:16px;font-style:italic}
.testi-name{font-size:12px;font-weight:700;color:var(--brd)}
.testi-role{font-size:10px;color:var(--textm);margin-top:2px}

/* ── VIDEO SECTION ── */
.video-sec{background:var(--brd);padding:100px 52px;position:relative;overflow:hidden}
.video-ph{position:relative;width:100%;aspect-ratio:16/9;background:rgba(0,0,0,.4);max-width:800px;margin:40px auto 0;cursor:pointer;overflow:hidden}
.video-ph img{width:100%;height:100%;object-fit:cover;opacity:.5;transition:opacity .3s}
.video-ph:hover img{opacity:.65}
.video-ph-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.vplay{width:80px;height:80px;border:2px solid rgba(254,141,126,.5);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:border-color .2s,transform .2s}
.video-ph:hover .vplay{border-color:var(--sal);transform:scale(1.06)}
.vplay::after{content:'';width:0;height:0;border-style:solid;border-width:12px 0 12px 20px;border-color:transparent transparent transparent var(--sal);margin-left:5px}
.vplay-txt{font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--wh3)}

/* ── SCHEDULE ── */
.sch{display:flex;flex-direction:column}
.sch-s{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid var(--ll);align-items:flex-start}
.sch-s:last-child{border-bottom:none}
.sch-dc{display:flex;flex-direction:column;align-items:center;padding-top:3px}
.dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--lm);background:var(--cream);flex-shrink:0;position:relative;z-index:1}
.dot.done{background:var(--brd2);border-color:var(--brd2)}
.dot.now{background:var(--sal);border-color:var(--sal);box-shadow:0 0 0 4px rgba(254,141,126,.2)}
.dot.done::after,.dot.now::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-62%) rotate(-45deg);width:5px;height:4px;border-left:1.5px solid #fff;border-bottom:1.5px solid #fff}
.dot-line{width:1px;flex:1;min-height:14px;background:var(--ll)}
.sch-t{font-size:13px;font-weight:700;color:var(--brd)}
.sch-d{font-size:11px;color:var(--textm);margin-top:2px}
.sch-note{background:var(--greenb);border-left:3px solid var(--green);padding:12px 16px;font-size:12px;color:var(--textm);line-height:1.6;margin-top:16px}
.sch-note strong{color:var(--brd)}

/* ── INV HERO (landing) ── */
.inv-hero{min-height:86vh;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.inv-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.inv-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(18,6,9,.92) 0%,rgba(18,6,9,.3) 60%,rgba(18,6,9,.1) 100%)}
.inv-hero-content{position:relative;z-index:2;padding:0 52px 80px;max-width:840px}
.inv-h1{font-size:clamp(52px,7vw,100px);font-weight:900;color:var(--wh);letter-spacing:-4px;line-height:.9;margin-bottom:12px}
.inv-loc-txt{font-size:11px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--wh3);margin-bottom:22px;display:flex;align-items:center;gap:8px}
.inv-desc-txt{font-size:15px;font-weight:300;color:var(--wh7);line-height:1.75;max-width:540px;margin-bottom:32px}
.inv-btns{display:flex;gap:14px;flex-wrap:wrap}
.inv-stats{display:flex;margin-top:44px;background:rgba(20,5,12,.65);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1)}
.istat{padding:18px 28px;border-right:1px solid rgba(255,255,255,.1);text-align:center}
.istat:last-child{border-right:none}
.istat strong{display:block;font-size:22px;font-weight:900;color:var(--sal);letter-spacing:-1px}
.istat span{font-size:9px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--wh3)}
.gal-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:3px;height:540px}
.gal-main{grid-row:1/3;overflow:hidden}
.gal-main img,.gal-sm img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.gal-sm{overflow:hidden}
.gal-sm:hover img,.gal-main:hover img{transform:scale(1.04)}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}
.feat{background:var(--cream2);padding:28px 24px}
.feat-icon{width:40px;height:40px;background:var(--brd);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.feat-t{font-size:13.5px;font-weight:700;color:var(--brd);margin-bottom:5px}
.feat-d{font-size:12.5px;color:var(--textm);line-height:1.6}

/* ── ABOUT PAGE ── */
.about-lead{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;margin-top:52px}
.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:3px 0}
.astat{background:var(--brd);padding:28px 24px;text-align:center}
.astat-n{font-size:36px;font-weight:900;color:var(--sal);letter-spacing:-2px}
.astat-l{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--wh3);margin-top:4px}
.timeline{display:flex;flex-direction:column;gap:0;position:relative}
.timeline::before{content:'';position:absolute;left:16px;top:8px;bottom:8px;width:1px;background:var(--ll)}
.tl-item{display:flex;gap:20px;padding:16px 0;position:relative}
.tl-dot{width:33px;height:33px;border-radius:50%;border:2px solid var(--brd);background:var(--cream2);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--brd);z-index:1}
.tl-dot.active{background:var(--brd);color:var(--sal)}
.tl-year{font-size:10px;font-weight:700;color:var(--sal);margin-bottom:2px;letter-spacing:1px}
.tl-t{font-size:13px;font-weight:700;color:var(--brd)}
.tl-d{font-size:12px;color:var(--textm);line-height:1.55;margin-top:2px}

/* ── CONTACT ── */
.fgrp{margin-bottom:16px}
.fgrp label{display:block;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--textm);margin-bottom:7px}
.fgrp input,.fgrp select,.fgrp textarea{width:100%;background:var(--cream2);border:1px solid var(--ll);padding:13px 16px;font-family:'Montserrat',sans-serif;font-size:14px;color:var(--text);outline:none;transition:border-color .2s;-webkit-appearance:none}
.fgrp input:focus,.fgrp select:focus,.fgrp textarea:focus{border-color:var(--brd)}
.fgrp textarea{resize:vertical;min-height:90px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fsub{width:100%;background:var(--brd);color:var(--wh);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:15px 32px;border:none;cursor:pointer;margin-top:8px;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:10px}
.fsub:hover{background:var(--brd2)}

/* ── FOOTER ── */
.footer{background:var(--dark);padding:60px 52px 32px}
.ft-top{display:grid;grid-template-columns:2.5fr 1fr 1fr 1fr;gap:52px;margin-bottom:44px}
.ft-logo img{height:26px;width:auto;margin-bottom:16px;opacity:.85}
.ft-tagline{font-size:12.5px;color:rgba(255,255,255,.4);line-height:1.75;max-width:240px;margin-bottom:22px}
.ft-sm{display:flex;gap:10px}
.ft-sm a{width:34px;height:34px;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;transition:border-color .2s}
.ft-sm a:hover{border-color:var(--sal)}
.ft-col-t{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--sal);margin-bottom:16px}
.ft-links{display:flex;flex-direction:column;gap:9px}
.ft-links a,.ft-links button{font-size:13px;color:rgba(255,255,255,.42);transition:color .2s;cursor:pointer;background:none;border:none;text-align:left}
.ft-links a:hover,.ft-links button:hover{color:var(--wh)}
.ft-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.ft-copy,.ft-by{font-size:11px;color:rgba(255,255,255,.28)}
.ft-by a{color:rgba(254,141,126,.5)}.ft-by a:hover{color:var(--sal)}

/* ── BC ── */
.bc{padding:100px 52px 0;display:flex;align-items:center;gap:8px}
.bc span{font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--textm);cursor:pointer}
.bc .sep{opacity:.35;cursor:default}
.bc .cur{color:var(--brd);font-weight:700;cursor:default}
.bc span.link:hover{color:var(--brd)}

/* ── CALLOUT ── */
.callout{background:var(--sal2);border-left:3px solid var(--sal);padding:14px 18px;font-size:13px;color:var(--textm);line-height:1.7}
.callout strong{color:var(--brd)}.callout a{color:var(--brd);font-weight:700}

/* ── CTA BAND ── */
.cta-band{background:var(--sal);padding:56px 52px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cta-band-t{font-size:clamp(22px,3.5vw,38px);font-weight:900;color:var(--brd);letter-spacing:-1.5px;line-height:1}
.cta-band-sub{font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--brd);opacity:.6;margin-bottom:8px}
.cta-band-btn{background:var(--brd);color:var(--wh);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:16px 36px;border:none;cursor:pointer;flex-shrink:0;transition:background .2s}
.cta-band-btn:hover{background:var(--brd2)}

/* ── WYKOŃCZENIE ── */
.ykf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:48px}
.ykf{background:var(--cream2);padding:28px 24px;border-bottom:3px solid transparent;transition:border-color .2s}
.ykf:hover{border-color:var(--sal)}
.ykf-n{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--sal);margin-bottom:10px}
.ykf-t{font-size:15px;font-weight:700;color:var(--brd);margin-bottom:8px}
.ykf-d{font-size:13px;color:var(--textm);line-height:1.65}

/* ── MAP PH ── */
.map-ph{width:100%;height:280px;background:var(--cream3);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px}
.map-ph span{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--textm);opacity:.5}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .nav{padding:16px 24px}.nav.s{padding:10px 24px}
  .nav-mid,.nav-cta{display:none}.hbg{display:flex}
  .hero{grid-template-columns:1fr}.hero-right{min-height:320px;order:-1}
  .hero-left{padding:120px 24px 56px}
  .hero-stats{position:relative;border:1px solid rgba(255,255,255,.1);margin:24px 0 0}
  .tbar{padding:0 24px}
  .sec{padding:72px 24px}
  .split{grid-template-columns:1fr}.split-img{min-height:300px}
  .split-content,.split-content.r{padding:60px 24px}
  .inv-grid,.testi-grid{grid-template-columns:1fr}
  .pillars{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr 1fr}
  .about-lead{grid-template-columns:1fr}
  .feat-grid,.ykf-grid{grid-template-columns:1fr 1fr}
  .gal-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;height:auto}
  .gal-main{grid-row:auto}.gal-main img,.gal-sm img{height:200px}
  .inv-hero-content{padding:0 24px 60px}
  .inv-h1{font-size:clamp(40px,9vw,68px);letter-spacing:-2px}
  .inv-stats{flex-wrap:wrap}
  .ft-top{grid-template-columns:1fr 1fr;gap:28px}
  .ft-top>div:first-child{grid-column:1/-1}
  .bc{padding:100px 24px 0}
  .footer{padding:48px 24px 28px}
  .cta-band{padding:48px 24px}
  .about-stats{grid-template-columns:1fr 1fr}
  .m-photo-section .inner{grid-template-columns:1fr}
  .m-collage{height:380px}
}
@media(max-width:640px){
  .feat-grid,.ykf-grid{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr 1fr}
  .about-stats{grid-template-columns:1fr}
  .frow{grid-template-columns:1fr}
  .icard{min-height:400px}
}
