:root{
  --navy-950:#0A1826;
  --navy-900:#0F2137;
  --navy-800:#173049;
  --charcoal:#1B1F24;
  --paper:#F2F3EF;
  --paper-alt:#E7E9E3;
  --steel:#59697A;
  --line:#D7DAD2;
  --line-dark:rgba(255,255,255,0.14);
  --amber:#D9622A;
  --amber-dim:#B04E20;
  --white:#FFFFFF;
  --font-display:'Space Grotesk', sans-serif;
  --font-body:'IBM Plex Sans', sans-serif;
  --font-mono:'IBM Plex Mono', monospace;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body); color:var(--charcoal); background:var(--paper); line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden;}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
ul{list-style:none;}
.wrap{max-width:1240px; margin:0 auto; padding:0 32px;}
@media (max-width:640px){ .wrap{padding:0 20px;} }

.skip-link{position:absolute; left:-999px; top:0; background:var(--amber); color:#fff; padding:12px 20px; z-index:1000; font-family:var(--font-mono); font-size:13px;}
.skip-link:focus{left:12px; top:12px;}

.crosshair{position:relative;}
.crosshair::before, .crosshair::after{content:''; position:absolute; width:14px; height:14px; border-color:var(--amber); border-style:solid; opacity:.55;}
.crosshair::before{top:-1px; left:-1px; border-width:2px 0 0 2px;}
.crosshair::after{bottom:-1px; right:-1px; border-width:0 2px 2px 0;}

.eyebrow{font-family:var(--font-mono); font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--amber); display:flex; align-items:center; gap:10px; margin-bottom:18px;}
.eyebrow::before{content:''; width:22px; height:1px; background:var(--amber);}
.eyebrow.on-dark{color:#F0A97C;}

h1,h2,h3,h4{font-family:var(--font-display); font-weight:600; letter-spacing:-.01em; color:var(--navy-950);}

section{position:relative;}
.section-pad{padding:100px 0;}
@media (max-width:900px){ .section-pad{padding:68px 0;} }

/* breadcrumb / page header (interior pages) */
.page-header{
  background:linear-gradient(180deg, rgba(10,24,38,0.92), rgba(10,24,38,0.96)), url('https://i0.wp.com/aecindia.in/wp-content/uploads/2024/08/shutterstock_500741137.jpg?fit=1400%2C500&ssl=1');
  background-size:cover; background-position:center;
  padding:168px 0 64px; position:relative; overflow:hidden;
}
.page-header::before{
  content:''; position:absolute; inset:0;
  background-image:linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px);
  background-size:64px 64px; opacity:.3; mask-image:linear-gradient(180deg, black, transparent 80%);
}
.page-header .wrap{position:relative; z-index:2;}
.breadcrumb{font-family:var(--font-mono); font-size:12px; color:#8DA0B3; letter-spacing:.06em; margin-bottom:18px; text-transform:uppercase;}
.breadcrumb a:hover{color:var(--amber);}
.page-header h1{color:#fff; font-size:clamp(30px,4.6vw,48px); max-width:720px; line-height:1.1;}
.page-header p{color:#B9C4CD; max-width:560px; margin-top:16px; font-size:16px;}

/* ================ HEADER / NAV ================= */
header{position:fixed; top:0; left:0; right:0; z-index:100; background:rgba(10,24,38,0.92); backdrop-filter:blur(10px); border-bottom:1px solid var(--line-dark); transition:padding .3s ease;}
.nav-inner{max-width:1240px; margin:0 auto; padding:0 32px; display:flex; align-items:center; justify-content:space-between; height:84px; transition:height .3s ease;}
header.scrolled .nav-inner{height:62px;}
.brand{display:flex; align-items:center; gap:12px;}
.brand-mark{width:38px; height:38px; border:2px solid var(--amber); display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-weight:700; color:var(--amber); font-size:15px; flex-shrink:0;}
.brand-text{font-family:var(--font-display); color:var(--white); font-weight:600; font-size:16.5px; letter-spacing:.01em; line-height:1.15;}
.brand-text span{display:block; font-family:var(--font-mono); font-weight:400; font-size:10.5px; letter-spacing:.12em; color:#8DA0B3; text-transform:uppercase; margin-top:2px;}
nav.primary{display:flex; align-items:center; gap:30px;}
nav.primary a{font-size:13.5px; color:#C9D3DC; font-weight:500; letter-spacing:.01em; position:relative; padding:6px 0;}
nav.primary a::after{content:''; position:absolute; left:0; bottom:0; width:0; height:1.5px; background:var(--amber); transition:width .25s ease;}
nav.primary a:hover, nav.primary a.active{color:var(--white);}
nav.primary a:hover::after, nav.primary a.active::after{width:100%;}
.header-actions{display:flex; align-items:center; gap:18px;}
.btn{font-family:var(--font-body); font-weight:600; font-size:13.5px; padding:12px 24px; border:1px solid transparent; cursor:pointer; display:inline-flex; align-items:center; gap:8px; letter-spacing:.01em; transition:all .22s ease; white-space:nowrap;}
.btn-amber{background:var(--amber); color:var(--white);}
.btn-amber:hover{background:var(--amber-dim);}
.btn-outline-dark{border-color:rgba(255,255,255,0.35); color:var(--white);}
.btn-outline-dark:hover{border-color:var(--amber); color:var(--amber);}
.btn-outline-light{border-color:var(--navy-900); color:var(--navy-950);}
.btn-outline-light:hover{border-color:var(--amber); color:var(--amber);}
.btn-block{width:100%; justify-content:center;}
.hamburger{display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:0; padding:4px;}
.hamburger span{width:24px; height:2px; background:var(--white);}
.mobile-nav{display:none; position:fixed; inset:62px 0 0 0; background:var(--navy-950); z-index:99; padding:32px 24px; flex-direction:column; gap:4px; overflow-y:auto;}
.mobile-nav.open{display:flex;}
.mobile-nav a{color:#DCE4EA; font-size:17px; padding:16px 4px; border-bottom:1px solid var(--line-dark); font-weight:500;}
@media (max-width:960px){ nav.primary{display:none;} .header-actions .btn-amber{display:none;} .hamburger{display:flex;} }

/* ================= HERO (home) ================= */
.hero{background:radial-gradient(ellipse at 78% 18%, rgba(217,98,42,0.14), transparent 55%), linear-gradient(180deg, rgba(10,24,38,0.86), rgba(10,24,38,0.94)), url('https://i0.wp.com/aecindia.in/wp-content/uploads/2024/08/shutterstock_77369572.jpg?fit=1200%2C900&ssl=1'); background-size:cover; background-position:center; padding:190px 0 130px; position:relative; overflow:hidden;}
.hero::before{content:''; position:absolute; inset:0; background-image:linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px); background-size:64px 64px; opacity:.35; mask-image:linear-gradient(180deg, black, transparent 75%);}
.hero-inner{position:relative; z-index:2; max-width:760px;}
.hero-tag{font-family:var(--font-mono); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#F0A97C; display:flex; align-items:center; gap:10px; margin-bottom:24px;}
.hero-tag::before{content:''; width:26px; height:1px; background:var(--amber);}
.hero h1{color:var(--white); font-size:clamp(36px, 5.4vw, 64px); line-height:1.06; letter-spacing:-.02em; margin-bottom:26px;}
.hero h1 em{font-style:normal; color:var(--amber);}
.hero p.lead{color:#B9C4CD; font-size:18px; max-width:560px; margin-bottom:42px; font-weight:400;}
.hero-ctas{display:flex; gap:16px; flex-wrap:wrap; margin-bottom:56px;}
.hero-meta{display:flex; gap:0; border-top:1px solid var(--line-dark); padding-top:24px; flex-wrap:wrap;}
.hero-meta div{padding-right:40px; margin-right:40px; border-right:1px solid var(--line-dark);}
.hero-meta div:last-child{border-right:0;}
.hero-meta .k{font-family:var(--font-mono); font-size:11px; color:#8DA0B3; text-transform:uppercase; letter-spacing:.1em; margin-bottom:6px;}
.hero-meta .v{font-family:var(--font-display); color:var(--white); font-size:15px; font-weight:600;}
@media (max-width:640px){ .hero-meta div{padding-right:24px; margin-right:24px;} .hero{padding:150px 0 90px;} }

/* ================= TRUST STRIP ================= */
.trust{background:var(--navy-950); border-top:1px solid var(--line-dark);}
.trust-grid{display:grid; grid-template-columns:repeat(4,1fr);}
.trust-item{padding:36px 30px; border-right:1px solid var(--line-dark);}
.trust-item:last-child{border-right:0;}
.trust-item .label-top{font-family:var(--font-display); color:var(--white); font-size:17px; font-weight:600; margin-bottom:6px;}
.trust-item .label-bottom{font-family:var(--font-mono); color:#8DA0B3; font-size:12px; letter-spacing:.04em;}
@media (max-width:900px){ .trust-grid{grid-template-columns:repeat(2,1fr);} .trust-item{border-bottom:1px solid var(--line-dark);} .trust-item:nth-child(2n){border-right:0;} }

/* ================= ABOUT ================= */
.about-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:72px; align-items:center;}
@media (max-width:900px){ .about-grid{grid-template-columns:1fr; gap:44px;} }
.about-media{position:relative;}
.about-media img{width:100%; height:520px; object-fit:cover; filter:grayscale(15%) contrast(1.05);}
.about-badge{position:absolute; bottom:-22px; left:-22px; background:var(--navy-950); padding:18px 22px; border-left:3px solid var(--amber);}
.about-badge .t1{font-family:var(--font-mono); color:#8DA0B3; font-size:10.5px; letter-spacing:.1em; text-transform:uppercase;}
.about-badge .t2{font-family:var(--font-display); color:var(--white); font-size:15px; font-weight:600; margin-top:4px;}
@media (max-width:640px){ .about-badge{position:static; margin-top:16px; border-left:0; border-top:3px solid var(--amber);} }
.about-copy h2{font-size:clamp(28px,3.4vw,42px); line-height:1.14; margin-bottom:24px;}
.about-copy p{color:var(--steel); font-size:16px; margin-bottom:18px; max-width:560px;}
.cap-list{margin:28px 0 34px; display:grid; gap:12px;}
.cap-list li{display:flex; align-items:flex-start; gap:12px; font-size:15px; color:var(--charcoal); font-weight:500;}
.cap-list li::before{content:''; width:7px; height:7px; background:var(--amber); margin-top:7px; flex-shrink:0;}

/* ================= ENGINEERING CAPABILITIES (categories) ================= */
.capgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:48px;}
@media (max-width:900px){ .capgrid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:600px){ .capgrid{grid-template-columns:1fr;} }
.capgrid .cg-item{background:var(--white); padding:34px 28px;}
.capgrid .cg-num{font-family:var(--font-mono); color:var(--amber); font-size:13px; margin-bottom:16px;}
.capgrid h3{font-size:17.5px; margin-bottom:10px;}
.capgrid p{font-size:14px; color:var(--steel);}

/* ================= SERVICES ================= */
.services-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:56px; gap:24px; flex-wrap:wrap;}
.services-head h2{font-size:clamp(28px,3.4vw,42px); max-width:520px;}
.services-head p{color:var(--steel); max-width:340px; font-size:15px;}
.service-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
@media (max-width:900px){ .service-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:640px){ .service-grid{grid-template-columns:1fr;} }
.service-card{background:var(--white); padding:38px 32px; transition:background .25s ease; display:flex; flex-direction:column; min-height:230px;}
.service-card:hover{background:var(--navy-950);}
.service-card:hover *{color:var(--white) !important;}
.service-card:hover .service-num{color:var(--amber) !important;}
.service-num{font-family:var(--font-mono); font-size:13px; color:var(--amber); margin-bottom:22px;}
.service-card h3{font-size:18px; margin-bottom:12px; line-height:1.3;}
.service-card p{font-size:14px; color:var(--steel); flex-grow:1; margin-bottom:16px;}
.service-link{font-family:var(--font-mono); font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--navy-900); display:inline-flex; gap:6px; align-items:center;}
.service-card:hover .service-link{color:var(--amber) !important;}

/* service detail page */
.detail-hero{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;}
@media (max-width:900px){ .detail-hero{grid-template-columns:1fr;} }
.detail-hero img{width:100%; height:420px; object-fit:cover;}
.spec-list{margin-top:28px; border-top:1px solid var(--line);}
.spec-row{display:grid; grid-template-columns:180px 1fr; gap:20px; padding:16px 0; border-bottom:1px solid var(--line);}
.spec-row .k{font-family:var(--font-mono); font-size:11.5px; text-transform:uppercase; color:var(--steel); letter-spacing:.06em;}
.spec-row .v{font-size:14.5px; font-weight:500;}

/* ================= PROCESS TIMELINE ================= */
.process-dark{background:var(--navy-950);}
.cap-row{display:grid; grid-template-columns:70px 1fr; gap:28px; padding:30px 0; border-top:1px solid var(--line-dark); align-items:start;}
.cap-row:last-child{border-bottom:1px solid var(--line-dark);}
.cap-row .num{font-family:var(--font-mono); color:var(--amber); font-size:15px; padding-top:4px;}
.cap-row .body-cap{display:grid; grid-template-columns:1fr 1.6fr; gap:24px;}
@media (max-width:760px){ .cap-row .body-cap{grid-template-columns:1fr;} }
.cap-row h3{color:var(--white); font-size:19px;}
.cap-row p{color:#A9B6C1; font-size:14.5px; max-width:480px;}

/* ================= QUALITY & SAFETY ================= */
.quality-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:44px;}
@media (max-width:900px){ .quality-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:600px){ .quality-grid{grid-template-columns:1fr;} }
.quality-card{border:1px solid var(--line); padding:30px 26px; background:var(--white);}
.quality-card .qnum{font-family:var(--font-mono); font-size:12px; color:var(--amber); margin-bottom:14px;}
.quality-card h3{font-size:16.5px; margin-bottom:10px;}
.quality-card p{font-size:14px; color:var(--steel);}
.quality-note{margin-top:32px; padding:20px 24px; border-left:3px solid var(--amber); background:var(--paper-alt); font-size:13.5px; color:var(--steel);}

/* ================= INDUSTRIES ================= */
.ind-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
@media (max-width:900px){ .ind-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .ind-grid{grid-template-columns:1fr;} }
.ind-card{position:relative; height:300px; overflow:hidden; cursor:pointer;}
.ind-card img{width:100%; height:100%; object-fit:cover; transition:transform .6s ease;}
.ind-card:hover img{transform:scale(1.07);}
.ind-overlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,24,38,0.05) 40%, rgba(10,24,38,0.92) 100%); display:flex; flex-direction:column; justify-content:flex-end; padding:24px;}
.ind-overlay h3{color:var(--white); font-size:19px; margin-bottom:6px;}
.ind-overlay p{color:#C4CDD5; font-size:13px; max-width:260px;}
.ind-arrow{position:absolute; top:20px; right:20px; width:34px; height:34px; border:1px solid rgba(255,255,255,.4); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:15px; transition:all .25s ease;}
.ind-card:hover .ind-arrow{background:var(--amber); border-color:var(--amber);}
.ind-detail{margin-top:64px; display:grid; gap:1px; background:var(--line); border:1px solid var(--line);}
.ind-detail-row{background:var(--white); padding:30px 32px; display:grid; grid-template-columns:220px 1fr; gap:24px;}
@media (max-width:700px){ .ind-detail-row{grid-template-columns:1fr;} }
.ind-detail-row h4{font-size:16px; margin-bottom:4px;}
.ind-detail-row p{font-size:14px; color:var(--steel);}

/* ================= GALLERY / PROJECTS ================= */
.gallery-tabs{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:36px;}
.gtab{font-family:var(--font-mono); font-size:12px; letter-spacing:.05em; text-transform:uppercase; padding:9px 16px; border:1px solid var(--line); cursor:pointer; color:var(--steel); background:var(--white); transition:all .2s ease;}
.gtab.active, .gtab:hover{background:var(--navy-950); color:var(--white); border-color:var(--navy-950);}
.gallery-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px;}
@media (max-width:900px){ .gallery-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:560px){ .gallery-grid{grid-template-columns:repeat(2,1fr);} }
.gitem{display:none; overflow:hidden; aspect-ratio:1/1; position:relative;}
.gitem.show{display:block;}
.gitem img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.gitem:hover img{transform:scale(1.08);}
.gitem .gcap{position:absolute; left:0; right:0; bottom:0; padding:8px 10px; background:linear-gradient(0deg, rgba(10,24,38,.85), transparent); color:#fff; font-size:11px; font-family:var(--font-mono); opacity:0; transition:opacity .25s ease;}
.gitem:hover .gcap{opacity:1;}

.project-card{border:1px solid var(--line); background:var(--white); display:grid; grid-template-columns:280px 1fr; gap:0;}
@media (max-width:760px){ .project-card{grid-template-columns:1fr;} }
.project-card img{width:100%; height:100%; object-fit:cover; min-height:220px;}
.project-card .pc-body{padding:30px 32px;}
.project-card .pc-tag{font-family:var(--font-mono); font-size:11px; color:var(--amber); text-transform:uppercase; letter-spacing:.06em; margin-bottom:10px;}
.project-card h3{font-size:19px; margin-bottom:10px;}
.project-card p{font-size:14px; color:var(--steel); margin-bottom:14px;}
.project-list{display:grid; gap:22px; margin-top:48px;}
.projects-note{margin-top:40px; padding:22px 26px; border-left:3px solid var(--amber); background:var(--paper-alt); font-size:14px; color:var(--steel);}

/* ================= WHY ================= */
.why-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:56px;}
@media (max-width:900px){ .why-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:600px){ .why-grid{grid-template-columns:1fr;} }
.why-card{background:var(--paper); padding:34px 30px;}
.why-card h3{font-size:17px; margin-bottom:10px;}
.why-card p{font-size:14px; color:var(--steel);}
.why-card .why-mark{width:32px; height:32px; border:1.5px solid var(--amber); margin-bottom:20px; position:relative;}
.why-card .why-mark::before{content:''; position:absolute; inset:6px; background:var(--amber);}

/* ================= CLIENTS ================= */
.clients-cols{display:grid; grid-template-columns:repeat(4,1fr); gap:40px;}
@media (max-width:900px){ .clients-cols{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .clients-cols{grid-template-columns:1fr;} }
.clients-cols h4{font-family:var(--font-mono); font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--amber); margin-bottom:18px; padding-bottom:12px; border-bottom:1px solid var(--line);}
.clients-cols ul li{font-size:13.5px; color:var(--charcoal); padding:8px 0; border-bottom:1px solid var(--line); font-weight:500;}

/* ================= CTA ================= */
.cta-band{background:linear-gradient(180deg, rgba(10,24,38,0.90), rgba(10,24,38,0.95)), url('https://i0.wp.com/aecindia.in/wp-content/uploads/2024/08/shutterstock_2165336261.jpg?fit=1400%2C700&ssl=1'); background-size:cover; background-position:center; padding:100px 0; text-align:center;}
.cta-band h2{color:var(--white); font-size:clamp(28px,4vw,44px); max-width:680px; margin:0 auto 18px;}
.cta-band p{color:#B9C4CD; max-width:520px; margin:0 auto 40px; font-size:16px;}
.cta-btns{display:flex; gap:16px; justify-content:center; flex-wrap:wrap;}

/* ================= CONTACT ================= */
.contact-grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:64px;}
@media (max-width:900px){ .contact-grid{grid-template-columns:1fr; gap:44px;} }
.contact-info-item{padding:22px 0; border-top:1px solid var(--line);}
.contact-info-item:last-child{border-bottom:1px solid var(--line);}
.contact-info-item .k{font-family:var(--font-mono); font-size:11px; color:var(--amber); text-transform:uppercase; letter-spacing:.08em; margin-bottom:8px;}
.contact-info-item .v{font-size:16px; font-weight:600; color:var(--navy-950);}
.contact-info-item .v a:hover{color:var(--amber);}
.map-frame{margin-top:28px; height:220px; border:1px solid var(--line); overflow:hidden; filter:grayscale(30%) contrast(1.05);}
.map-frame iframe{width:100%; height:100%; border:0;}
form.enquiry{display:grid; gap:18px;}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
@media (max-width:560px){ .form-row{grid-template-columns:1fr;} }
.field label{display:block; font-family:var(--font-mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--steel); margin-bottom:8px;}
.field input, .field textarea, .field select{width:100%; border:1px solid var(--line); background:var(--white); padding:13px 14px; font-family:var(--font-body); font-size:14.5px; color:var(--charcoal); outline:none; transition:border-color .2s ease;}
.field input:focus, .field textarea:focus, .field select:focus{border-color:var(--amber);}
.field textarea{resize:vertical; min-height:110px;}
.field.error input, .field.error textarea{border-color:#C0392B;}
.field .err-msg{font-size:12px; color:#C0392B; margin-top:6px; display:none;}
.field.error .err-msg{display:block;}
.field.hp{position:absolute; left:-9999px; top:-9999px;}
.form-status{font-size:14px; padding:14px 16px; display:none; font-family:var(--font-mono);}
.form-status.success{display:block; background:#E7F3EA; color:#256B3A; border-left:3px solid #2E8B4F;}
.form-status.fail{display:block; background:#FBEAE8; color:#A3352A; border-left:3px solid #C0392B;}

/* ================= LEGAL PAGES ================= */
.legal-body{max-width:760px;}
.legal-body h2{font-size:22px; margin:36px 0 14px;}
.legal-body h2:first-child{margin-top:0;}
.legal-body p, .legal-body li{font-size:15px; color:var(--steel); margin-bottom:12px;}
.legal-body li{margin-left:20px; list-style:disc;}
.legal-placeholder-note{margin-bottom:40px; padding:18px 22px; border-left:3px solid var(--amber); background:var(--paper-alt); font-size:13.5px; color:var(--steel);}

/* ================= FOOTER ================= */
footer{background:var(--navy-950); color:#B9C4CD; padding:80px 0 0;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:48px; padding-bottom:56px; border-bottom:1px solid var(--line-dark);}
@media (max-width:900px){ .footer-grid{grid-template-columns:1fr 1fr; row-gap:40px;} }
@media (max-width:560px){ .footer-grid{grid-template-columns:1fr;} }
.footer-grid h5{font-family:var(--font-mono); font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--amber); margin-bottom:20px;}
.footer-grid p{font-size:13.5px; color:#8DA0B3; max-width:280px;}
.footer-grid ul li{margin-bottom:12px;}
.footer-grid ul li a{font-size:13.5px; color:#C4CDD5;}
.footer-grid ul li a:hover{color:var(--amber);}
.footer-bottom{display:flex; justify-content:space-between; align-items:center; padding:28px 0; flex-wrap:wrap; gap:12px; font-size:12.5px; color:#7E90A1;}
.footer-bottom a{color:#7E90A1;}
.footer-bottom a:hover{color:var(--amber);}
.foot-legal{display:flex; gap:24px;}

.reveal{opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease;}
.reveal.in{opacity:1; transform:translateY(0);}

@media (prefers-reduced-motion:reduce){
  *{transition:none !important; animation:none !important; scroll-behavior:auto !important;}
  .reveal{opacity:1; transform:none;}
}
:focus-visible{outline:2px solid var(--amber); outline-offset:2px;}
