/* MARC polish layer — loads after style.css */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:100;background:linear-gradient(90deg,var(--primary),var(--accent));}
.hero::before{content:"";position:absolute;inset:0;z-index:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 30% 40%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse at 30% 40%,#000 20%,transparent 75%);}
.hero::after{content:"";position:absolute;width:38rem;height:38rem;right:-10rem;top:-8rem;border-radius:50%;background:radial-gradient(circle,rgba(167,48,176,.35),transparent 65%);filter:blur(30px);animation:orb 12s ease-in-out infinite alternate;z-index:0;}
@keyframes orb{to{transform:translate(-4rem,3rem) scale(1.15);}}
.hero h1{letter-spacing:-.025em;}
.hero .eyebrow{display:inline-flex;align-items:center;gap:.6rem;padding:.4rem .9rem;border:1px solid rgba(255,255,255,.16);border-radius:100px;background:rgba(255,255,255,.05);color:var(--accent-soft);}
.hero .eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(70,198,137,.2);}
.btn{transition:transform .25s ease,box-shadow .25s ease;position:relative;overflow:hidden;}
.btn-solid:hover{transform:translateY(-3px);box-shadow:0 16px 32px -12px rgba(128,0,137,.7);}
.btn-solid::after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .6s ease;}
.btn-solid:hover::after{left:140%;}

/* trust ribbon */
.ribbon{background:var(--ink-soft);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);overflow:hidden;padding:1.1rem 0;}
.ribbon-track{display:flex;gap:3rem;width:max-content;animation:slide 34s linear infinite;}
.ribbon:hover .ribbon-track{animation-play-state:paused;}
.ribbon span{font-family:'Fraunces',serif;font-size:1.05rem;color:rgba(255,255,255,.7);white-space:nowrap;display:inline-flex;align-items:center;gap:3rem;}
.ribbon span::after{content:"◆";font-size:.6rem;color:var(--accent);}
@keyframes slide{to{transform:translateX(-50%);}}

/* titles */
h2.title{position:relative;padding-bottom:1rem;}
h2.title::after{content:"";position:absolute;left:0;bottom:0;width:3.2rem;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--primary),var(--accent));}
#contact h2.title::after{background:var(--accent);}
.stat{transition:background .3s ease,transform .3s ease;}
.stat:hover{background:var(--primary-pale);transform:translateY(-3px);}
.stat .num{background:linear-gradient(135deg,var(--primary),var(--primary-light));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:2.6rem;}
.quote{border-left:4px solid var(--accent);padding-left:1.5rem;font-family:'Fraunces',serif;font-style:italic;font-size:1.35rem;line-height:1.5;color:var(--primary);}
.icon-card:hover{transform:translateY(-6px);}

/* sector gallery */
.sector-showcase{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:15rem;gap:1rem;margin-top:2.5rem;}
.sec-tile{position:relative;border-radius:18px;overflow:hidden;text-decoration:none;color:#fff;isolation:isolate;}
.sec-tile.wide{grid-column:span 2;} .sec-tile.tall{grid-row:span 2;}
.sec-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1);z-index:-2;}
.sec-tile::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 35%,rgba(8,6,12,.88));}
.sec-tile:hover img{transform:scale(1.09);}
.sec-tile .cap{position:absolute;left:1.2rem;right:1.2rem;bottom:1.1rem;}
.sec-tile .cap small{display:block;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-soft);margin-bottom:.2rem;}
.sec-tile .cap h3{font-size:1.15rem;}
.sec-tile .go{position:absolute;top:1rem;right:1rem;width:2.2rem;height:2.2rem;border-radius:50%;background:rgba(255,255,255,.15);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(-6px);transition:.3s;}
.sec-tile:hover .go{opacity:1;transform:none;}
@media(max-width:900px){.sector-showcase{grid-template-columns:1fr 1fr;grid-auto-rows:12rem;}.sec-tile.wide{grid-column:span 2;}.sec-tile.tall{grid-row:span 1;}}
@media(max-width:520px){.sector-showcase{grid-template-columns:1fr;}.sec-tile.wide{grid-column:auto;}}
.step-item{transition:transform .3s ease;} .step-item:hover{transform:translateY(-5px);}
.loc-card{transition:transform .3s ease,box-shadow .3s ease;} .loc-card:hover{transform:translateY(-4px);}
