*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --gold:#C9A84C;
  --gold-light:#E8C97A;
  --gold-bright:#F5D78E;
  --gold-dim:#8A6E2E;
  --gold-pale:rgba(201,168,76,0.12);
  --gold-glow:rgba(201,168,76,0.25);
  --black:#000000;
  --ink:#080808;
  --ink2:#101010;
  --ink3:#161616;
  --ink4:#1E1E1E;
  --ink5:#282828;
  --white:#FFFFFF;
  --off:#F5F0E4;
  --muted:rgba(255,255,255,0.4);
  --muted2:rgba(255,255,255,0.22);
  --serif:'Cinzel',Georgia,serif;
  --body:'Crimson Pro',Georgia,serif;
  --ui:'Barlow',sans-serif;
  --ease:cubic-bezier(0.16,1,0.3,1);
}
html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--white);font-family:var(--body);font-weight:300;line-height:1.75;overflow-x:hidden;cursor:default}

/* ══ CUSTOM CURSOR ══ */
.cursor{position:fixed;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform 0.1s,width 0.3s,height 0.3s,opacity 0.3s}
.cursor-ring{position:fixed;width:30px;height:30px;border:1px solid rgba(201,168,76,0.5);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:left 0.12s,top 0.12s,width 0.3s,height 0.3s,opacity 0.3s}

/* ══ NAV ══ */
nav{
  position:fixed;top:0;left:0;right:0;z-index:500;
  display:flex;align-items:center;justify-content:space-between;
  padding:1.6rem 4rem;
  background:rgba(8,8,8,0.88);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(201,168,76,0.12);
  transition:padding 0.4s var(--ease);
}
nav.compact{padding:1.1rem 4rem}

.logo{display:flex;align-items:center;gap:14px;text-decoration:none}
.logo-emblem{
  position:relative;width:46px;height:46px;
  display:flex;align-items:center;justify-content:center;
}
.logo-emblem svg{position:absolute;inset:0}
.logo-iq{
  font-family:var(--serif);font-size:15px;font-weight:700;
  color:var(--gold);letter-spacing:2px;position:relative;z-index:1;
}
.logo-text-wrap{display:flex;flex-direction:column;gap:1px}
.logo-name{
  font-family:var(--serif);font-size:16px;font-weight:600;
  color:var(--white);letter-spacing:3px;text-transform:uppercase;
}
.logo-sub{
  font-family:var(--ui);font-size:8.5px;font-weight:400;
  letter-spacing:3.5px;text-transform:uppercase;
  color:var(--gold);opacity:0.8;
}

.nav-links{display:flex;gap:2.8rem;list-style:none;align-items:center}
.nav-links a{
  text-decoration:none;font-family:var(--ui);font-size:11px;
  font-weight:400;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(255,255,255,0.55);transition:color 0.25s;
}
.nav-links a:hover{color:var(--gold)}
.nav-cta{
  border:1px solid var(--gold) !important;
  color:var(--gold) !important;
  padding:8px 22px;
  transition:background 0.25s !important;
}
.nav-cta:hover{background:var(--gold) !important;color:var(--black) !important}

/* ══ HERO ══ */
.hero{
  min-height:100vh;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:0 4rem 5.5rem;
  position:relative;overflow:hidden;
}

/* Animated gold grid */
.hero-grid{
  position:absolute;inset:0;z-index:0;
  background-image:
    linear-gradient(rgba(201,168,76,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(201,168,76,0.05) 1px,transparent 1px);
  background-size:100px 100px;
  animation:gridPan 30s linear infinite;
}
@keyframes gridPan{0%{background-position:0 0}100%{background-position:100px 100px}}

/* Radial gold glow */
.hero-glow{
  position:absolute;
  width:800px;height:800px;
  background:radial-gradient(circle,rgba(201,168,76,0.06) 0%,transparent 70%);
  top:-200px;right:-100px;z-index:1;
  animation:glow 8s ease-in-out infinite alternate;
}
@keyframes glow{0%{opacity:0.6;transform:scale(1)}100%{opacity:1;transform:scale(1.1)}}

/* Diagonal accent line */
.hero-slash{
  position:absolute;
  width:2px;height:200%;
  background:linear-gradient(to bottom,transparent,rgba(201,168,76,0.15),transparent);
  transform:rotate(-25deg);
  left:55%;top:-50%;z-index:1;
}
.hero-slash2{
  position:absolute;
  width:1px;height:200%;
  background:linear-gradient(to bottom,transparent,rgba(201,168,76,0.07),transparent);
  transform:rotate(-25deg);
  left:58%;top:-50%;z-index:1;
}

/* Big decorative IQ background text */
.hero-bg-text{
  position:absolute;
  right:-0.05em;bottom:-0.15em;
  font-family:var(--serif);font-size:40vw;font-weight:700;
  color:rgba(201,168,76,0.025);
  line-height:1;user-select:none;z-index:1;letter-spacing:-5px;
}

.hero-content{position:relative;z-index:3;max-width:820px}

.hero-badge{
  display:inline-flex;align-items:center;gap:10px;
  border:1px solid rgba(201,168,76,0.3);
  padding:7px 18px;margin-bottom:2rem;
  background:rgba(201,168,76,0.05);
  animation:fadeUp 0.8s var(--ease) both;
}
.hero-badge-dot{width:5px;height:5px;background:var(--gold);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.3}}
.hero-badge span{
  font-family:var(--ui);font-size:9.5px;font-weight:500;
  letter-spacing:3px;text-transform:uppercase;color:var(--gold);
}

.hero h1{
  font-family:var(--serif);
  font-size:clamp(3.2rem,7vw,7.5rem);
  font-weight:400;line-height:0.96;
  letter-spacing:-1px;color:var(--white);
  margin-bottom:1.8rem;
  animation:fadeUp 0.9s 0.1s var(--ease) both;
}
.hero h1 .gold{color:var(--gold)}
.hero h1 .italic{font-style:italic;font-weight:300}
.hero h1 .thin{font-weight:300;opacity:0.5}

.hero-rule{
  width:80px;height:1px;
  background:linear-gradient(90deg,var(--gold),transparent);
  margin-bottom:1.5rem;
  animation:fadeUp 0.9s 0.15s var(--ease) both;
}

.hero-sub{
  font-family:var(--body);font-size:1.15rem;font-weight:300;
  color:rgba(255,255,255,0.55);max-width:520px;line-height:1.85;
  margin-bottom:2.8rem;
  animation:fadeUp 0.9s 0.2s var(--ease) both;
}

.hero-actions{
  display:flex;gap:1.2rem;align-items:center;
  animation:fadeUp 0.9s 0.28s var(--ease) both;
}

.btn-gold{
  background:var(--gold);color:var(--black);
  border:none;padding:15px 36px;
  font-family:var(--ui);font-size:10px;font-weight:500;
  letter-spacing:3px;text-transform:uppercase;
  text-decoration:none;display:inline-block;
  transition:background 0.25s,transform 0.25s;cursor:pointer;
}
.btn-gold:hover{background:var(--gold-bright);transform:translateY(-2px)}

.btn-ghost{
  background:transparent;color:rgba(255,255,255,0.65);
  border:1px solid rgba(255,255,255,0.2);padding:15px 36px;
  font-family:var(--ui);font-size:10px;font-weight:400;
  letter-spacing:3px;text-transform:uppercase;
  text-decoration:none;display:inline-block;
  transition:border-color 0.25s,color 0.25s;
}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}

/* Right-side stats */
.hero-stats{
  position:absolute;right:4rem;bottom:5.5rem;z-index:3;
  display:flex;flex-direction:column;gap:2rem;
  animation:fadeUp 0.9s 0.35s var(--ease) both;
}
.hero-stat{
  text-align:right;
  padding-right:1.5rem;
  border-right:1px solid rgba(201,168,76,0.3);
}
.hero-stat-n{
  font-family:var(--serif);font-size:2.6rem;font-weight:400;
  color:var(--gold);line-height:1;
}
.hero-stat-l{
  font-family:var(--ui);font-size:9px;letter-spacing:2.5px;
  text-transform:uppercase;color:rgba(255,255,255,0.3);margin-top:4px;
}

/* Bottom gold bar */
.hero-bottom-bar{
  position:absolute;bottom:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  z-index:3;
}

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

/* ══ TICKER ══ */
.ticker{
  background:var(--gold);padding:13px 0;overflow:hidden;white-space:nowrap;
}
.ticker-track{display:inline-flex;animation:tick 28s linear infinite}
.t-item{
  font-family:var(--ui);font-size:9.5px;font-weight:500;
  letter-spacing:3px;text-transform:uppercase;
  color:rgba(0,0,0,0.65);padding:0 2.5rem;
}
.t-sep{color:rgba(0,0,0,0.3);padding:0 0.5rem}
@keyframes tick{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ══ SECTION BASE ══ */
.sec{padding:8rem 4rem}
.sec-dark{background:var(--ink2)}
.sec-darker{background:var(--ink3)}

.sec-kicker{
  display:flex;align-items:center;gap:14px;margin-bottom:1.2rem;
}
.kicker-line{width:28px;height:1px;background:var(--gold)}
.kicker-text{
  font-family:var(--ui);font-size:9px;font-weight:500;
  letter-spacing:3.5px;text-transform:uppercase;color:var(--gold);
}

.sec-h{
  font-family:var(--serif);
  font-size:clamp(2rem,4vw,3.8rem);
  font-weight:400;line-height:1.12;color:var(--white);
}
.sec-h .g{color:var(--gold)}
.sec-h .i{font-style:italic;font-weight:300}

/* ══ ABOUT ══ */
.about-wrap{display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:center}

.about-text p{
  font-size:1.05rem;color:rgba(255,255,255,0.5);
  line-height:1.9;margin-bottom:1.3rem;
}

.legacy-strip{
  display:grid;grid-template-columns:1fr 1fr;
  gap:1px;background:rgba(201,168,76,0.12);
  margin-top:3rem;border:1px solid rgba(201,168,76,0.12);
}
.legacy-cell{
  background:var(--ink);padding:2rem 1.8rem;
  transition:background 0.3s;
}
.legacy-cell:hover{background:var(--ink3)}
.legacy-num{
  font-family:var(--serif);font-size:2.4rem;font-weight:400;
  color:var(--gold);line-height:1;margin-bottom:0.3rem;
}
.legacy-label{
  font-family:var(--ui);font-size:9.5px;letter-spacing:2px;
  text-transform:uppercase;color:rgba(255,255,255,0.3);
}

.about-panel{
  position:relative;background:var(--ink3);
  border:1px solid rgba(201,168,76,0.18);
  padding:3.5rem 3rem;
  overflow:hidden;
}
.about-panel::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold-dim),transparent);
}
.about-panel-ornament{
  position:absolute;bottom:-20px;right:-20px;
  width:140px;height:140px;
  border-right:1px solid rgba(201,168,76,0.2);
  border-bottom:1px solid rgba(201,168,76,0.2);
}
.about-panel-ornament2{
  position:absolute;bottom:-10px;right:-10px;
  width:100px;height:100px;
  border-right:1px solid rgba(201,168,76,0.1);
  border-bottom:1px solid rgba(201,168,76,0.1);
}
.about-quote-mark{
  font-family:var(--serif);font-size:5rem;line-height:0.8;
  color:rgba(201,168,76,0.2);margin-bottom:1rem;display:block;
}
.about-quote{
  font-family:var(--body);font-size:1.45rem;font-weight:300;
  font-style:italic;line-height:1.6;color:rgba(255,255,255,0.8);
  margin-bottom:1.5rem;
}
.about-attr{
  font-family:var(--ui);font-size:9px;letter-spacing:2.5px;
  text-transform:uppercase;color:var(--gold);opacity:0.7;
}

/* ══ SERVICES ══ */
.svc-header{
  display:grid;grid-template-columns:1fr 1fr;gap:4rem;
  align-items:end;margin-bottom:4.5rem;
}
.svc-desc{
  font-size:1rem;color:rgba(255,255,255,0.4);line-height:1.85;
  padding-top:0.5rem;
}

.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(201,168,76,0.1)}
.svc-card{
  background:var(--ink);padding:3rem 2.5rem;
  position:relative;overflow:hidden;
  transition:background 0.35s;
}
.svc-card::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--gold);transform:scaleX(0);
  transition:transform 0.4s var(--ease);transform-origin:left;
}
.svc-card:hover{background:var(--ink3)}
.svc-card:hover::after{transform:scaleX(1)}
.svc-n{
  position:absolute;top:1.5rem;right:2rem;
  font-family:var(--serif);font-size:4rem;font-weight:700;
  color:rgba(201,168,76,0.05);line-height:1;user-select:none;
}
.svc-icon{font-size:1.7rem;margin-bottom:1.5rem}
.svc-title{
  font-family:var(--serif);font-size:1.25rem;font-weight:500;
  color:var(--white);margin-bottom:0.9rem;line-height:1.3;
}
.svc-body{font-size:0.92rem;color:rgba(255,255,255,0.4);line-height:1.85}

/* ══ PROCESS ══ */
.process-row{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:0;margin-top:4.5rem;
  position:relative;
}
.process-row::before{
  content:'';position:absolute;
  top:30px;left:8%;right:8%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,168,76,0.3) 20%,rgba(201,168,76,0.3) 80%,transparent);
}
.p-step{padding:0 2rem;text-align:center}
.p-num{
  width:60px;height:60px;border:1px solid rgba(201,168,76,0.35);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  margin:0 auto 1.8rem;position:relative;z-index:1;
  background:var(--ink);
  font-family:var(--serif);font-size:1.2rem;font-weight:400;color:var(--gold);
  transition:background 0.3s,border-color 0.3s;
}
.p-step:hover .p-num{background:var(--gold-pale);border-color:var(--gold)}
.p-title{
  font-family:var(--serif);font-size:1.05rem;font-weight:500;
  color:var(--white);margin-bottom:0.8rem;
}
.p-body{font-size:0.88rem;color:rgba(255,255,255,0.38);line-height:1.8}

/* ══ LEGACY BANNER ══ */
.legacy-banner{
  background:var(--gold);padding:4rem;
  display:grid;grid-template-columns:1fr auto;gap:4rem;align-items:center;
}
.lb-text{
  font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.5rem);
  font-weight:400;line-height:1.25;color:var(--black);
}
.lb-text em{font-style:italic;font-weight:300}
.lb-meta{
  display:flex;flex-direction:column;gap:0.5rem;text-align:right;
}
.lb-year{
  font-family:var(--serif);font-size:3.5rem;font-weight:700;
  color:rgba(0,0,0,0.15);line-height:1;
}
.lb-est{
  font-family:var(--ui);font-size:9px;letter-spacing:3px;
  text-transform:uppercase;color:rgba(0,0,0,0.5);
}

/* ══ ROUTE SECTION ══ */
.route-sec{
  padding:8rem 4rem;background:var(--ink2);
  position:relative;overflow:hidden;
}
.route-inner{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}

.route-visual{
  display:flex;align-items:center;justify-content:center;
  gap:0;position:relative;
}
.route-city{
  display:flex;flex-direction:column;align-items:center;gap:1rem;
  flex:1;
}
.city-flag{
  width:64px;height:44px;border:1px solid rgba(201,168,76,0.2);
  overflow:hidden;border-radius:2px;display:flex;flex-direction:column;
}
.city-name{
  font-family:var(--serif);font-size:1.1rem;font-weight:500;
  color:var(--white);letter-spacing:2px;text-transform:uppercase;
}
.city-sub{
  font-family:var(--ui);font-size:8.5px;letter-spacing:2px;
  text-transform:uppercase;color:var(--gold);opacity:0.7;
}

.route-line-wrap{
  flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;
  padding:0 1rem;
}
.route-line-svg{width:100%;overflow:visible}
.plane-icon{font-size:1.4rem;color:var(--gold);animation:fly 3s ease-in-out infinite}
@keyframes fly{0%,100%{transform:translateX(-8px)}50%{transform:translateX(8px)}}
.route-days{
  font-family:var(--ui);font-size:8.5px;letter-spacing:2px;
  text-transform:uppercase;color:rgba(255,255,255,0.3);
}

.route-text h3{
  font-family:var(--serif);font-size:clamp(1.8rem,3.5vw,3rem);
  font-weight:400;line-height:1.15;color:var(--white);margin-bottom:1.5rem;
}
.route-text h3 .g{color:var(--gold)}
.route-text h3 .i{font-style:italic;font-weight:300}
.route-text p{font-size:0.95rem;color:rgba(255,255,255,0.45);line-height:1.9;margin-bottom:1.2rem}
.route-points{list-style:none;display:flex;flex-direction:column;gap:0.9rem}
.route-points li{
  display:flex;align-items:flex-start;gap:12px;
  font-size:0.9rem;color:rgba(255,255,255,0.5);
}
.rp-dot{
  width:5px;height:5px;background:var(--gold);border-radius:50%;
  flex-shrink:0;margin-top:0.55em;
}

/* ══ BRANDS ══ */
.brands-sec{
  padding:3.5rem 4rem;border-top:1px solid rgba(201,168,76,0.08);
  border-bottom:1px solid rgba(201,168,76,0.08);
}
.brands-kicker{
  font-family:var(--ui);font-size:8.5px;letter-spacing:3px;
  text-transform:uppercase;color:rgba(255,255,255,0.2);
  text-align:center;margin-bottom:2rem;
}
.brands-row{display:flex;flex-wrap:wrap;justify-content:center;gap:0}
.brand{
  font-family:var(--serif);font-size:1rem;font-weight:500;
  letter-spacing:3px;text-transform:uppercase;
  color:rgba(255,255,255,0.15);
  padding:0.7rem 2.2rem;
  border-right:1px solid rgba(201,168,76,0.1);
  transition:color 0.25s;
}
.brand:last-child{border-right:none}
.brand:hover{color:var(--gold)}

/* ══ TESTIMONIAL ══ */
.testi-sec{padding:7rem 4rem;background:var(--ink3)}
.testi-inner{max-width:800px;margin:0 auto;text-align:center}
.testi-ornament{
  display:flex;align-items:center;justify-content:center;gap:1rem;
  margin-bottom:2rem;
}
.testi-line{flex:1;max-width:80px;height:1px;background:rgba(201,168,76,0.3)}
.testi-star{color:var(--gold);font-size:0.9rem;letter-spacing:6px}
.testi-text{
  font-family:var(--body);font-size:clamp(1.3rem,2.5vw,1.9rem);
  font-weight:300;font-style:italic;line-height:1.65;
  color:rgba(255,255,255,0.75);margin-bottom:2.5rem;
}
.testi-author{
  font-family:var(--serif);font-size:0.9rem;font-weight:500;
  color:var(--gold);letter-spacing:2px;text-transform:uppercase;
}
.testi-role{
  font-family:var(--ui);font-size:0.8rem;
  color:rgba(255,255,255,0.25);margin-top:5px;
}

/* ══ CONTACT ══ */
.contact-wrap{display:grid;grid-template-columns:1fr 1.25fr;gap:6rem;align-items:start}

.contact-h{
  font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);
  font-weight:400;line-height:1.15;color:var(--white);margin-bottom:1.2rem;
}
.contact-h .g{color:var(--gold)}
.contact-h .i{font-style:italic;font-weight:300}
.contact-lead{font-size:0.95rem;color:rgba(255,255,255,0.4);line-height:1.85;margin-bottom:3rem}

.offices{display:flex;flex-direction:column;gap:2rem}
.office-block{
  padding:2rem;
  border:1px solid rgba(201,168,76,0.15);
  background:var(--ink3);
  position:relative;
}
.office-block::before{
  content:'';position:absolute;top:0;left:0;width:3px;height:100%;
  background:var(--gold-dim);
}
.office-block.hq::before{background:var(--gold)}
.office-tag{
  font-family:var(--ui);font-size:8px;letter-spacing:3px;
  text-transform:uppercase;color:var(--gold);margin-bottom:0.8rem;
  display:flex;align-items:center;gap:8px;
}
.office-tag-dot{width:5px;height:5px;background:var(--gold);border-radius:50%}
.office-name{
  font-family:var(--serif);font-size:1.1rem;font-weight:500;
  color:var(--white);margin-bottom:0.5rem;
}
.office-addr{font-size:0.88rem;color:rgba(255,255,255,0.45);line-height:1.7}
.office-jp{font-size:0.78rem;color:rgba(201,168,76,0.4);margin-top:4px}
.office-contact{margin-top:0.8rem;font-size:0.85rem;color:rgba(255,255,255,0.35)}

.form-panel{
  background:var(--ink3);border:1px solid rgba(201,168,76,0.15);
  padding:3rem;position:relative;
}
.form-panel::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--gold),transparent);
}
.form-title{
  font-family:var(--serif);font-size:1.4rem;font-weight:500;
  color:var(--white);margin-bottom:2rem;
}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fg{display:flex;flex-direction:column;gap:6px;margin-bottom:1rem}
.fg label{
  font-family:var(--ui);font-size:8.5px;letter-spacing:2.5px;
  text-transform:uppercase;color:rgba(255,255,255,0.3);
}
.fg input,.fg select,.fg textarea{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(201,168,76,0.15);
  padding:12px 15px;font-family:var(--body);font-size:1rem;
  color:var(--white);outline:none;
  transition:border-color 0.25s,background 0.25s;width:100%;
}
.fg input:focus,.fg select:focus,.fg textarea:focus{
  border-color:var(--gold);background:rgba(201,168,76,0.04);
}
.fg input::placeholder,.fg textarea::placeholder{color:rgba(255,255,255,0.15)}
.fg select option{background:var(--ink3)}
.fg textarea{min-height:100px;resize:vertical}

/* ══ FOOTER ══ */
footer{
  background:var(--black);
  border-top:1px solid rgba(201,168,76,0.15);
  padding:5.5rem 4rem 2.5rem;
}
.footer-grid{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;
  gap:3rem;margin-bottom:4rem;
  padding-bottom:4rem;
  border-bottom:1px solid rgba(255,255,255,0.05);
}
.footer-brand-row{display:flex;align-items:center;gap:14px;margin-bottom:1rem}
.footer-logo-sq{
  width:44px;height:44px;border:1px solid rgba(201,168,76,0.3);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:15px;font-weight:700;color:var(--gold);
}
.footer-brand-name{
  font-family:var(--serif);font-size:1.3rem;font-weight:500;
  color:var(--white);letter-spacing:2px;
}
.footer-brand-name span{color:var(--gold)}
.footer-tagline{font-size:0.88rem;color:rgba(255,255,255,0.28);line-height:1.8;max-width:240px}
.footer-addr{
  margin-top:1.5rem;font-size:0.8rem;
  color:rgba(255,255,255,0.2);line-height:1.9;
}
.footer-addr strong{color:rgba(201,168,76,0.5);font-family:var(--ui);font-size:8px;letter-spacing:2px;text-transform:uppercase;display:block;margin-bottom:4px}
.footer-col-title{
  font-family:var(--ui);font-size:8.5px;letter-spacing:3px;
  text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;
  opacity:0.7;
}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:0.7rem}
.footer-links a{
  text-decoration:none;font-size:0.88rem;
  color:rgba(255,255,255,0.32);transition:color 0.2s;
}
.footer-links a:hover{color:var(--gold)}

.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer-copy{font-family:var(--ui);font-size:0.75rem;color:rgba(255,255,255,0.18)}
.footer-copy span{color:rgba(201,168,76,0.5)}
.footer-legal{display:flex;gap:2rem}
.footer-legal a{
  text-decoration:none;font-family:var(--ui);font-size:0.75rem;
  color:rgba(255,255,255,0.18);transition:color 0.2s;
}
.footer-legal a:hover{color:var(--gold)}

/* ══ SCROLL REVEAL ══ */
.sr{opacity:0;transform:translateY(28px);transition:opacity 0.7s var(--ease),transform 0.7s var(--ease)}
.sr.in{opacity:1;transform:translateY(0)}
.sr-l{opacity:0;transform:translateX(-28px);transition:opacity 0.7s var(--ease),transform 0.7s var(--ease)}
.sr-l.in{opacity:1;transform:translateX(0)}
.sr-r{opacity:0;transform:translateX(28px);transition:opacity 0.7s var(--ease),transform 0.7s var(--ease)}
.sr-r.in{opacity:1;transform:translateX(0)}

/* ══ RESPONSIVE ══ */
@media(max-width:1024px){
  nav{padding:1.3rem 2.5rem}
  .nav-links{gap:1.8rem}
  .hero{padding:0 2.5rem 5rem}
  .hero-stats{right:2.5rem}
  .sec{padding:6rem 2.5rem}
  .about-wrap,.route-inner,.contact-wrap{grid-template-columns:1fr;gap:3.5rem}
  .svc-grid{grid-template-columns:1fr 1fr}
  .process-row{grid-template-columns:1fr 1fr}
  .process-row::before{display:none}
  .svc-header{grid-template-columns:1fr;gap:1.5rem}
  .footer-grid{grid-template-columns:1fr 1fr}
  .brands-sec{padding:3rem 2.5rem}
  .legacy-banner{padding:3rem 2.5rem;grid-template-columns:1fr;gap:1.5rem}
  .lb-meta{text-align:left}
}
@media(max-width:640px){
  nav{padding:1.1rem 1.5rem}
  .nav-links{display:none}
  .hero{padding:0 1.5rem 4rem}
  .hero-stats{display:none}
  .sec{padding:5rem 1.5rem}
  .svc-grid,.process-row{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .f2{grid-template-columns:1fr}
  .brands-row{flex-direction:column;align-items:center}
  .brand{border-right:none;border-bottom:1px solid rgba(201,168,76,0.1)}
  .legacy-banner{padding:2.5rem 1.5rem}
}
