/* ===== APS Traders Home Page Redesign ===== */
/* Hide Astra's default page title bar site-wide — every page ships its own custom hero with its own H1 already */
.page .entry-header{ display:none !important; }
/* Astra's Plain Container layout adds a 60px top/bottom margin around #primary by default, leaving a white gap above our full-bleed hero and before the footer */
#primary{ margin-top:0 !important; margin-bottom:0 !important; }
:root{
  --aps-navy:#0b1220;
  --aps-navy-2:#111b2e;
  --aps-steel:#334155;
  --aps-orange:#f0c040;
  --aps-orange-2:#ffd873;
  --aps-white:#f8fafc;
  --aps-black:#08090c;
}
html{ overflow-x:hidden; }
body{ overflow-x:hidden; }
.aps-page{ overflow-x:clip; }
.alignfull{ margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important; width:100vw !important; max-width:100vw !important; }
.aps-hero{
  position:relative;
  background:var(--aps-black);
  color:var(--aps-white);
  overflow:hidden;
  isolation:isolate;
  padding:clamp(50px,8vw,72px) 0 clamp(48px,7vw,72px);
}
.aps-hero::before{
  content:"";
  position:absolute; inset:-2px;
  background-image:
    linear-gradient(rgba(240,192,64,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(240,192,64,.07) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 72% 35%, black, transparent 72%);
  mask-image: radial-gradient(circle at 72% 35%, black, transparent 72%);
  animation: apsGridDrift 40s linear infinite;
  z-index:0;
}
@keyframes apsGridDrift{ from{ background-position:0 0,0 0; } to{ background-position:54px 54px,54px 54px; } }
.aps-hero::after{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(900px 520px at 12% 15%, rgba(240,192,64,.14), transparent 60%),
    radial-gradient(700px 420px at 95% 80%, rgba(240,192,64,.08), transparent 60%),
    linear-gradient(rgba(6,8,12,.87), rgba(6,8,12,.93)),
    url('https://images.unsplash.com/photo-1622109912940-2bddde35274d?q=80&w=1800&auto=format&fit=crop') center/cover no-repeat;
  z-index:0;
}
.aps-hero-inner{
  position:relative; z-index:1;
  max-width:1360px; margin:0 auto;
  padding:0 clamp(24px,5vw,64px);
  display:grid; grid-template-columns:1.15fr .85fr; gap:32px; align-items:center;
}
@media (max-width:900px){ .aps-hero-inner{ grid-template-columns:1fr; } }
.aps-hero-graphic{ position:relative; min-height:360px; }
@media (max-width:900px){ .aps-hero-graphic{ display:none; } }
.aps-deco-square{ position:absolute; border:1px solid rgba(240,192,64,.28); border-radius:12px; opacity:0; animation:apsDecoIn .8s ease forwards; }
.aps-deco-square-1{ width:120px; height:120px; top:6%; left:4%; animation-delay:.3s; }
.aps-deco-square-2{ width:160px; height:160px; bottom:6%; right:6%; border-radius:16px; animation-delay:.55s; }
@keyframes apsDecoIn{ from{ opacity:0; transform:scale(.85); } to{ opacity:1; transform:scale(1); } }
.aps-deco-line{ position:absolute; top:0; left:0; width:100%; height:100%; overflow:visible; }
.aps-deco-line::before{
  content:""; position:absolute; left:6%; top:62%; width:38%; height:1px;
  background:linear-gradient(90deg, transparent, var(--aps-orange));
  transform-origin:left center; transform:scaleX(0);
  animation:apsLineGrow 1s ease forwards .6s;
}
.aps-deco-line::after{
  content:""; position:absolute; left:44%; top:12%; width:50%; height:1px;
  background:linear-gradient(90deg, var(--aps-orange), transparent);
  transform-origin:left center; transform:scaleX(0) rotate(-22deg);
  animation:apsLineGrow2 1s ease forwards 1.1s;
}
@keyframes apsLineGrow{ to{ transform:scaleX(1); } }
@keyframes apsLineGrow2{ to{ transform:scaleX(1) rotate(-22deg); } }
.aps-deco-node{ position:absolute; width:10px; height:10px; border-radius:50%; background:var(--aps-orange); box-shadow:0 0 0 4px rgba(240,192,64,.15); animation:apsNodePulse 2.4s ease-in-out infinite; opacity:0; animation:apsDecoIn .6s ease forwards, apsNodePulse 2.4s ease-in-out infinite 1.6s; }
.aps-deco-node-1{ left:6%; top:62%; animation-delay:1.5s,0s; }
.aps-deco-node-2{ left:44%; top:12%; animation-delay:1.6s,0s; }
.aps-deco-node-3{ left:92%; top:9%; width:14px; height:14px; animation-delay:1.9s,0s; }
@keyframes apsNodePulse{ 0%,100%{ box-shadow:0 0 0 4px rgba(240,192,64,.15); } 50%{ box-shadow:0 0 0 10px rgba(240,192,64,0); } }
.aps-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(240,192,64,.16);
  border:1px solid rgba(240,192,64,.55);
  color:var(--aps-orange-2);
  font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  padding:8px 16px;border-radius:999px;
  position:relative;z-index:1;
  box-shadow:0 0 0 1px rgba(240,192,64,.08), 0 6px 18px -6px rgba(240,192,64,.35);
  animation: apsPulseGlow 3s ease-in-out infinite;
}
.aps-badge-dot{ width:6px;height:6px;border-radius:50%; background:var(--aps-orange); display:inline-block; animation:apsPulseDot 1.6s ease-in-out infinite; }
@keyframes apsPulseDot{ 0%,100%{ opacity:1; box-shadow:0 0 0 0 rgba(240,192,64,.6);} 50%{ opacity:.6; box-shadow:0 0 0 6px rgba(240,192,64,0);} }
@keyframes apsPulseGlow{
  0%,100%{ box-shadow:0 0 0 0 rgba(240,192,64,.30); }
  50%{ box-shadow:0 0 0 8px rgba(240,192,64,0); }
}
.aps-hero h1{
  position:relative;z-index:1;
  font-size:clamp(34px,5.4vw,66px);
  line-height:1.06;
  font-weight:800;
  letter-spacing:-.02em;
  margin:22px 0 20px;
  color:#fff;
}
.aps-hero h1 .aps-highlight{ color:var(--aps-orange); animation:apsGlow 3s ease-in-out infinite; }
@keyframes apsGlow{ 0%,100%{ text-shadow:0 0 16px rgba(240,192,64,.30);} 50%{ text-shadow:0 0 30px rgba(240,192,64,.6);} }
.aps-hero p{ position:relative;z-index:1; font-size:clamp(15px,1.6vw,18px); color:#9aa5b5; max-width:560px; }
.aps-page .wp-block-buttons{ position:relative;z-index:1; gap:16px !important; margin-top:28px; }
.aps-page .wp-block-button__link{
  position:relative;
  border-radius:10px !important;
  padding:16px 30px !important;
  font-weight:700 !important;
  transform-style:preserve-3d;
  transition:transform .25s cubic-bezier(.2,.9,.3,1.3), box-shadow .25s ease;
  border:none !important;
}
.aps-btn-primary .wp-block-button__link{
  background:var(--aps-orange) !important;
  color:#1a1206 !important;
  box-shadow: 0 12px 26px -10px rgba(240,192,64,.55);
}
.aps-btn-secondary .wp-block-button__link{
  background:transparent !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.28) !important;
}
.aps-page .wp-block-button__link:hover{
  transform: translateY(-4px) rotateX(6deg) scale(1.03);
}
.aps-stats{ position:relative;z-index:1; display:flex; flex-wrap:wrap; gap:14px; margin-top:44px; }
.aps-stat{
  display:flex; flex-direction:column; gap:2px; margin:0;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  padding:16px 22px;
  transition:border-color .2s ease, transform .2s ease;
}
.aps-stat:hover{ border-color:rgba(240,192,64,.45); transform:translateY(-3px); }
.aps-stat-num{
  font-size:clamp(24px,2.6vw,34px); font-weight:800; color:#fff;
  display:flex; align-items:baseline; gap:2px;
}
.aps-stat-num .aps-suffix{ color:var(--aps-orange); }
.aps-stat-label{ display:block; font-size:12px; color:#8b95a5; text-transform:uppercase; letter-spacing:.08em; margin-top:2px; }
.aps-scroll-hint{
  position:relative; z-index:1; max-width:1360px; margin:48px auto 0;
  padding:0 clamp(24px,5vw,64px);
  font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:#5b6373;
}
.aps-eyebrow{
  display:inline-block; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  font-size:12.5px; color:var(--aps-orange);
  position:relative; padding-left:28px;
}
.aps-eyebrow::before{
  content:""; position:absolute; left:0; top:50%; width:20px; height:2px;
  background:linear-gradient(90deg,var(--aps-orange),var(--aps-orange-2));
  transform:translateY(-50%);
}
.aps-section h2{
  font-size:clamp(26px,3.6vw,42px); font-weight:800; letter-spacing:-.02em;
  margin-top:10px; color:var(--aps-navy);
}
.aps-section-dark h2{ color:#fff; }
.aps-reveal{ opacity:0; transform:translateY(36px); transition:opacity .7s cubic-bezier(.2,.7,.3,1), transform .7s cubic-bezier(.2,.7,.3,1); }
.aps-reveal.aps-in{ opacity:1; transform:translateY(0); }
.aps-reveal-1{ transition-delay:.05s; } .aps-reveal-2{ transition-delay:.15s; }
.aps-reveal-3{ transition-delay:.25s; } .aps-reveal-4{ transition-delay:.35s; }
.aps-reveal-5{ transition-delay:.45s; } .aps-reveal-6{ transition-delay:.55s; }
.aps-why{
  position:relative;
  background:var(--aps-black);
  border-radius:0;
  padding:clamp(60px,8vw,100px) 0;
  margin-top:0;
  overflow:hidden;
  isolation:isolate;
}
.aps-why::before{
  content:"";
  position:absolute; inset:-2px;
  background-image:
    linear-gradient(rgba(240,192,64,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(240,192,64,.06) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 85% 20%, black, transparent 70%);
  mask-image: radial-gradient(circle at 85% 20%, black, transparent 70%);
  animation: apsGridDrift 40s linear infinite;
  z-index:0;
}
.aps-why::after{
  content:""; position:absolute; inset:0; z-index:0;
  background:radial-gradient(800px 460px at 8% 90%, rgba(240,192,64,.08), transparent 60%);
}
.aps-why-inner{ position:relative; z-index:1; max-width:1360px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-why-inner h2{ color:#fff; }
.aps-why-inner .wp-block-columns{ gap:24px !important; margin-top:40px !important; }
.aps-tilt-card{
  background:rgba(255,255,255,.03);
  border-radius:18px;
  padding:28px 24px !important;
  border:1px solid rgba(255,255,255,.09);
  transform-style:preserve-3d;
  perspective:800px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  will-change:transform;
}
.aps-tilt-card:hover{ border-color:rgba(240,192,64,.4); box-shadow:0 24px 48px -18px rgba(240,192,64,.3); }
.aps-tilt-icon{
  width:52px;height:52px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--aps-orange),var(--aps-orange-2));
  margin-bottom:16px;
  transform:translateZ(30px);
  box-shadow:0 10px 20px -8px rgba(240,192,64,.45);
  position:relative;
}
.aps-tilt-card h3{ transform:translateZ(20px); font-size:19px; font-weight:700; margin:0 0 8px; color:#fff; }
.aps-tilt-card p{ transform:translateZ(10px); font-size:14.5px; color:#9aa5b5; margin:0; }
.aps-icon{ position:absolute; top:50%; left:50%; }
.aps-icon-check{ width:14px; height:8px; border-left:3px solid #0b1220; border-bottom:3px solid #0b1220; transform:translate(-50%,-65%) rotate(-45deg); }
.aps-icon-team{ width:24px; height:16px; }
.aps-icon-team::before,.aps-icon-team::after{ content:""; position:absolute; width:14px;height:14px; border-radius:50%; border:2.5px solid #0b1220; top:0; transform:translateY(-50%); }
.aps-icon-team::before{ left:-12px; }
.aps-icon-team::after{ left:-2px; }
.aps-icon-gear{ width:18px; height:18px; border:2.5px solid #0b1220; border-radius:50%; transform:translate(-50%,-50%); }
.aps-icon-gear::before{ content:""; position:absolute; inset:-6px; border:2.5px dashed #0b1220; border-radius:50%; opacity:.65; }
.aps-icon-price{ width:20px; height:20px; border-radius:50%; border:2.5px solid #0b1220; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; }
.aps-icon-price::before{ content:"\20B9"; font-size:12px; font-weight:800; color:#0b1220; position:static; }
.aps-icon-clock{ width:18px; height:18px; border:2.5px solid #0b1220; border-radius:50%; transform:translate(-50%,-50%); }
.aps-icon-clock::before{ content:""; position:absolute; width:2px; height:7px; background:#0b1220; top:2px; left:50%; transform-origin:bottom center; transform:translateX(-50%) rotate(20deg); }
.aps-icon-clock::after{ content:""; position:absolute; width:2px; height:5px; background:#0b1220; top:4px; left:50%; transform-origin:bottom center; transform:translateX(-50%) rotate(100deg); }
.aps-icon-shield{ width:18px; height:20px; background:#0b1220; transform:translate(-50%,-50%); clip-path:polygon(50% 0%, 100% 15%, 100% 55%, 50% 100%, 0% 55%, 0% 15%); }
.aps-icon-shield::after{ content:""; position:absolute; width:7px;height:4px; border-left:2px solid var(--aps-orange); border-bottom:2px solid var(--aps-orange); top:7px; left:5px; transform:rotate(-45deg); }
.aps-services{
  position:relative;
  background:#fff;
  padding:clamp(60px,8vw,100px) 0;
  overflow:hidden;
  isolation:isolate;
}
.aps-services::before{
  content:"";
  position:absolute; inset:-2px;
  background-image:
    linear-gradient(rgba(51,65,85,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(51,65,85,.05) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 15% 80%, black, transparent 70%);
  mask-image: radial-gradient(circle at 15% 80%, black, transparent 70%);
  animation: apsGridDrift 40s linear infinite;
  z-index:0;
}
.aps-services::after{
  content:""; position:absolute; inset:0; z-index:0;
  background:radial-gradient(800px 460px at 92% 10%, rgba(240,192,64,.10), transparent 60%);
}
.aps-services-inner{ position:relative; z-index:1; max-width:1360px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-services-inner h2{ color:#12151c; }
.aps-services-inner .wp-block-columns{ gap:20px !important; margin-top:36px !important; }
.aps-service-card{
  position:relative;
  border-radius:18px;
  padding:26px 22px !important;
  background:#fff;
  border:1px solid #e5e9f0;
  color:#12151c; overflow:hidden;
  transform-style:preserve-3d; perspective:800px;
  transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
  box-shadow:0 8px 24px -16px rgba(15,23,42,.14);
}
.aps-service-card:hover{ transform:translateY(-8px) rotateX(4deg); border-color:rgba(240,192,64,.5); box-shadow:0 26px 50px -20px rgba(15,23,42,.2); }
.aps-service-card::after{
  content:""; position:absolute; inset:0; opacity:0; transition:opacity .25s ease;
  background:radial-gradient(circle at 30% 20%, rgba(240,192,64,.22), transparent 60%);
  pointer-events:none;
}
.aps-service-card:hover::after{ opacity:1; }
.aps-service-card h3{ font-size:17px; font-weight:700; margin:0 0 6px; position:relative; z-index:1; color:#12151c; transform:translateZ(20px); }
.aps-service-card p{ font-size:13.5px; color:#6b7280; margin:0; position:relative; z-index:1; transform:translateZ(10px); }
.aps-icon-shed{ width:0; height:0; transform:translate(-50%,-30%); }
.aps-icon-shed::before{ content:""; position:absolute; top:-9px; left:-11px; width:0; height:0; border-left:11px solid transparent; border-right:11px solid transparent; border-bottom:9px solid #0b1220; }
.aps-icon-shed::after{ content:""; position:absolute; top:0px; left:-9px; width:18px; height:8px; background:#0b1220; }
.aps-icon-warehouse{ width:18px; height:14px; border:2.5px solid #0b1220; border-radius:1px; transform:translate(-50%,-40%); }
.aps-icon-warehouse::before{ content:""; position:absolute; top:-8px; left:-2.5px; width:0; height:0; border-left:9.5px solid transparent; border-right:9.5px solid transparent; border-bottom:7px solid #0b1220; }
.aps-icon-gate{ width:16px; height:16px; border-left:3px solid #0b1220; border-right:3px solid #0b1220; border-top:3px solid #0b1220; transform:translate(-50%,-60%); }
.aps-icon-railing{ width:2.5px; height:16px; background:#0b1220; box-shadow:8px 0 0 #0b1220, 16px 0 0 #0b1220; transform:translate(-50%,-50%); }
.aps-icon-railing::before{ content:""; position:absolute; top:-3px; left:-1px; width:20px; height:2.5px; background:#0b1220; }
.aps-cta{
  position:relative; overflow:hidden; isolation:isolate;
  padding:clamp(56px,8vw,96px) 0; text-align:center;
  background:linear-gradient(120deg,var(--aps-orange),var(--aps-orange-2));
  background-size:220% 220%;
  animation: apsGradientShift 10s ease-in-out infinite;
}
@keyframes apsGradientShift{
  0%,100%{ background-position: 0% 0%; }
  50%{ background-position: 100% 100%; }
}
.aps-cta::before{
  content:""; position:absolute; inset:0; z-index:0;
  background-image: radial-gradient(rgba(11,18,32,.10) 1.5px, transparent 1.5px);
  background-size:26px 26px;
  opacity:.5;
}
.aps-cta-dot{ position:absolute; border-radius:50%; background:rgba(11,18,32,.14); animation:apsCtaFloat 6s ease-in-out infinite; z-index:0; }
.aps-cta-dot-1{ width:80px; height:80px; top:10%; left:8%; animation-delay:0s; }
.aps-cta-dot-2{ width:50px; height:50px; bottom:14%; right:12%; animation-delay:1.5s; }
.aps-cta-dot-3{ width:26px; height:26px; top:20%; right:22%; animation-delay:.8s; }
@keyframes apsCtaFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-16px); } }
.aps-cta-inner{ position:relative; z-index:1; max-width:900px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-cta h2{ color:#1a1206; font-size:clamp(26px,4vw,44px); font-weight:800; }
.aps-cta .wp-block-buttons{ justify-content:center !important; margin-top:24px; }
.aps-cta .aps-btn-primary .wp-block-button__link{
  background:#0b1220 !important; color:#fff !important;
  box-shadow:0 12px 30px -10px rgba(0,0,0,.5);
}
.aps-cta .aps-btn-secondary .wp-block-button__link{
  background:rgba(11,18,32,.08) !important; color:#1a1206 !important; border:1.5px solid rgba(11,18,32,.35) !important;
}
@media (prefers-reduced-motion: reduce){
  .aps-hero, .aps-hero::before, .aps-hero::after, .aps-badge, .aps-badge-dot, .aps-hero h1 .aps-highlight, .aps-chart-line, .aps-node, .aps-cta{ animation:none !important; }
  .aps-chart-line{ stroke-dashoffset:0 !important; }
  .aps-reveal{ opacity:1; transform:none; transition:none; }
  .aps-tilt-card, .aps-service-card, .aps-page .wp-block-button__link{ transition:none; }
  .aps-about-plate-dark::before, .aps-about-badge{ animation:none !important; }
  .aps-about-plate-gold{ transition:none; }
  .aps-why::before, .aps-services::before, .aps-cta-dot{ animation:none !important; }
}

/* ---------- ABOUT / WHO WE ARE ---------- */
.aps-about{ background:#fff; padding:clamp(60px,8vw,100px) 0; }
.aps-about-inner{ max-width:1360px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-about-inner h2{ font-size:clamp(28px,4vw,46px); font-weight:800; letter-spacing:-.02em; color:#12151c; margin-top:14px; max-width:920px; line-height:1.12; }
.aps-about-grid{ display:grid; grid-template-columns:.85fr 1.15fr; gap:64px; margin-top:56px; align-items:start; }
@media (max-width:900px){ .aps-about-grid{ grid-template-columns:1fr; gap:80px; } }
.aps-about-visual{ position:relative; padding-bottom:44px; padding-right:6%; }
.aps-about-plate-dark{
  position:relative;
  aspect-ratio:1/1;
  border-radius:20px;
  background:
    linear-gradient(160deg, rgba(18,21,29,.55), rgba(28,33,46,.78)),
    url('https://images.unsplash.com/photo-1493476523860-a6de6ce1b0c3?q=80&w=1200&auto=format&fit=crop') center/cover no-repeat;
  overflow:hidden;
  box-shadow:0 30px 60px -25px rgba(0,0,0,.35);
}
.aps-about-plate-dark::before{
  content:""; position:absolute; inset:-40%;
  background:repeating-linear-gradient(135deg, rgba(240,192,64,.10) 0 2px, transparent 2px 26px);
  animation:apsStripeDrift 18s linear infinite;
}
@keyframes apsStripeDrift{ from{ transform:translate(0,0); } to{ transform:translate(60px,60px); } }
.aps-about-caption{
  position:absolute; left:22px; bottom:20px; z-index:1; margin:0 !important; max-width:none !important;
  font-family:'Courier New',monospace; font-size:12px; letter-spacing:.05em;
  color:rgba(255,255,255,.75) !important; text-transform:uppercase;
}
.aps-about-plate-gold{
  position:absolute; right:-6%; bottom:-10%; width:52%; aspect-ratio:1/1;
  border-radius:18px;
  background:linear-gradient(150deg,var(--aps-orange-2),var(--aps-orange));
  box-shadow:0 24px 48px -18px rgba(240,192,64,.5);
  border:5px solid #fff;
  transition:transform .35s cubic-bezier(.2,.8,.3,1.2);
}
.aps-about-visual:hover .aps-about-plate-gold{ transform:rotate(-4deg) scale(1.04); }
.aps-about-badge{
  position:absolute; top:4%; right:0%; z-index:2;
  background:#fff; border-radius:16px; padding:14px 20px;
  box-shadow:0 20px 40px -18px rgba(0,0,0,.28);
  animation:apsBadgeFloat 4s ease-in-out infinite;
}
@keyframes apsBadgeFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-10px); } }
.aps-about-badge .aps-stat-num{ color:#16181f; font-size:24px; }
.aps-about-badge .aps-stat-num .aps-suffix{ color:var(--aps-orange); font-size:16px; }
.aps-about-badge .aps-stat-label{ color:#8b95a5; }
.aps-about-text p{ font-size:16px; line-height:1.75; color:#4b5563; max-width:640px; }
.aps-about-facts{ display:grid; grid-template-columns:1fr 1fr; gap:30px 44px; margin-top:38px; }
@media (max-width:520px){ .aps-about-facts{ grid-template-columns:1fr; } }
.aps-about-fact{ border-left:2px solid var(--aps-orange); padding-left:18px; transition:border-color .2s ease, transform .2s ease; }
.aps-about-fact:hover{ transform:translateX(4px); border-color:var(--aps-orange-2); }
.aps-about-fact h3{ font-size:17px; font-weight:700; color:#12151c; margin:0 0 6px; }
.aps-about-fact p{ font-size:14px; color:#6b7280; margin:0; max-width:none; line-height:1.6; }

/* ---------- SHARED: PAGE HERO (About / Services / Projects) ---------- */
.aps-page-hero{
  position:relative; overflow:hidden; isolation:isolate;
  background:var(--aps-black);
  padding:clamp(70px,10vw,120px) 0 clamp(50px,7vw,70px);
  color:#fff;
}
.aps-page-hero::before{
  content:""; position:absolute; inset:-2px;
  background-image:
    linear-gradient(rgba(240,192,64,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(240,192,64,.07) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 80% 20%, black, transparent 70%);
  mask-image: radial-gradient(circle at 80% 20%, black, transparent 70%);
  animation: apsGridDrift 40s linear infinite;
  z-index:0;
}
.aps-page-hero::after{
  content:""; position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(800px 460px at 10% 10%, rgba(240,192,64,.14), transparent 60%),
    linear-gradient(rgba(6,8,12,.86), rgba(6,8,12,.93));
}
.aps-page-hero-about::after{ background:radial-gradient(800px 460px at 10% 10%, rgba(240,192,64,.14), transparent 60%), linear-gradient(rgba(6,8,12,.87), rgba(6,8,12,.93)), url('https://images.unsplash.com/photo-1509024368907-57294758cfc5?q=80&w=1800&auto=format&fit=crop') center/cover no-repeat; }
.aps-page-hero-services::after{ background:radial-gradient(800px 460px at 10% 10%, rgba(240,192,64,.14), transparent 60%), linear-gradient(rgba(6,8,12,.87), rgba(6,8,12,.93)), url('https://images.unsplash.com/photo-1584099667019-c7fbb1f55664?q=80&w=1800&auto=format&fit=crop') center/cover no-repeat; }
.aps-page-hero-projects::after{ background:radial-gradient(800px 460px at 10% 10%, rgba(240,192,64,.14), transparent 60%), linear-gradient(rgba(6,8,12,.87), rgba(6,8,12,.93)), url('https://images.unsplash.com/photo-1557143930-d4e7a86a194f?q=80&w=1800&auto=format&fit=crop') center/cover no-repeat; }
.aps-page-hero-inner{ position:relative; z-index:1; max-width:1360px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-page-hero-grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:44px; align-items:center; }
.aps-page-hero h1{
  font-size:clamp(32px,5vw,58px); font-weight:800; letter-spacing:-.02em; line-height:1.08;
  margin:16px 0 14px; color:#fff;
}
.aps-page-hero h1 .aps-highlight{ color:var(--aps-orange); animation:apsGlow 3s ease-in-out infinite; }
@media (max-width:900px){ .aps-page-hero-grid{ grid-template-columns:1fr; } }
.aps-page-hero-crumb{ font-size:12px; letter-spacing:.06em; color:#6b7280; margin:0 0 4px !important; }
.aps-page-hero-crumb a{ color:#8b95a5; text-decoration:none; transition:color .2s ease; }
.aps-page-hero-crumb a:hover{ color:var(--aps-orange); }
.aps-page-hero-crumb .aps-crumb-sep{ color:#424a58; margin:0 8px; }
/* right-side visual panel */
.aps-hero-panel{ position:relative; }
@media (max-width:900px){ .aps-hero-panel{ display:none; } }
.aps-hero-panel-stats{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.aps-hero-panel-stat{
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); border-radius:16px;
  padding:22px 20px; transition:border-color .2s ease, transform .2s ease;
}
.aps-hero-panel-stat:hover{ border-color:rgba(240,192,64,.45); transform:translateY(-4px); }
.aps-hero-panel-stat .aps-stat-num{ color:#fff; font-size:clamp(26px,3vw,38px); }
.aps-hero-panel-stat .aps-stat-num .aps-suffix{ color:var(--aps-orange); }
.aps-hero-panel-stat .aps-stat-label{ color:#8b95a5; }
.aps-hero-panel-card{
  position:relative; border-radius:20px; overflow:hidden; aspect-ratio:16/11;
  border:1px solid rgba(255,255,255,.1);
  background-size:cover; background-position:center;
  box-shadow:0 30px 60px -30px rgba(0,0,0,.6);
}
.aps-hero-panel-card::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(6,8,12,.15), rgba(6,8,12,.75)); }
.aps-hero-panel-tag{
  position:absolute; left:18px; bottom:16px; z-index:1; color:#fff; font-size:13px; font-weight:700;
  display:flex; align-items:center; gap:8px;
}
.aps-hero-panel-tag::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--aps-orange); box-shadow:0 0 0 4px rgba(240,192,64,.2); }
.aps-hero-panel-float{
  position:absolute; top:-14px; right:-10px; z-index:2;
  background:#fff; border-radius:14px; padding:12px 18px;
  box-shadow:0 20px 40px -18px rgba(0,0,0,.4);
  animation:apsBadgeFloat 4s ease-in-out infinite;
}
.aps-hero-panel-float .aps-stat-num{ color:#16181f; font-size:22px; }
.aps-hero-panel-float .aps-stat-num .aps-suffix{ color:var(--aps-orange); }
.aps-hero-panel-float .aps-stat-label{ color:#8b95a5; }
.aps-page-hero p{ font-size:clamp(15px,1.6vw,18px); color:#9aa5b5; max-width:600px; margin:0; }

/* ---------- SHARED: LIGHT SECTION WRAPPER ---------- */
.aps-light-section{ background:#fff; padding:clamp(56px,8vw,90px) 0; }
.aps-light-section-inner{ max-width:1360px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-light-section-inner h2{ font-size:clamp(26px,3.6vw,42px); font-weight:800; letter-spacing:-.02em; color:#12151c; margin-top:10px; }
.aps-light-section-alt{ background:#f8fafc; }

/* ---------- LEADERSHIP CARDS ---------- */
.aps-leader-grid{ display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:40px; }
@media (max-width:760px){ .aps-leader-grid{ grid-template-columns:1fr; } }
.aps-leader-card{
  background:#fff; border:1px solid #e5e9f0; border-radius:20px; padding:32px 28px;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.aps-leader-card:hover{ transform:translateY(-6px); box-shadow:0 24px 48px -20px rgba(15,23,42,.18); border-color:rgba(240,192,64,.4); }
.aps-leader-avatar{
  width:64px; height:64px; border-radius:16px;
  background:linear-gradient(135deg,var(--aps-orange),var(--aps-orange-2));
  display:flex; align-items:center; justify-content:center;
  font-size:24px; font-weight:800; color:#1a1206;
  margin-bottom:18px;
}
.aps-leader-card h3{ font-size:20px; font-weight:800; color:#12151c; margin:0 0 4px; }
.aps-leader-role{ display:block; font-size:11.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--aps-orange); margin-bottom:14px; }
.aps-leader-card p{ font-size:14.5px; color:#5b6373; line-height:1.65; margin:0 0 18px; }
.aps-leader-tags{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.aps-leader-tag{
  font-size:12px; font-weight:600; color:#334155; background:#f1f5f9;
  border-radius:999px; padding:6px 12px;
}
.aps-leader-stat{ display:flex; flex-direction:column; gap:0; border-top:1px solid #eef1f5; padding-top:14px; }
.aps-leader-stat .aps-stat-num{ color:#12151c; font-size:26px; }
.aps-leader-stat .aps-stat-num .aps-suffix{ color:var(--aps-orange); }
.aps-leader-stat .aps-stat-label{ color:#8b95a5; }

/* ---------- QUOTE BLOCK ---------- */
.aps-quote-band{ position:relative; overflow:hidden; isolation:isolate; background:var(--aps-navy-2); padding:clamp(56px,8vw,90px) 0; text-align:center; }
.aps-quote-band::before{
  content:""; position:absolute; inset:-2px;
  background-image: linear-gradient(rgba(240,192,64,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(240,192,64,.06) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 50% 50%, black, transparent 75%);
  mask-image: radial-gradient(circle at 50% 50%, black, transparent 75%);
  animation: apsGridDrift 40s linear infinite;
}
.aps-quote-inner{ position:relative; z-index:1; max-width:820px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-quote-inner p{ font-size:clamp(20px,2.6vw,30px); font-weight:600; color:#fff; line-height:1.5; font-style:italic; }
.aps-quote-attribution{ display:block; margin-top:18px; font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--aps-orange); font-weight:700; }

/* ---------- PROCESS STEPS ---------- */
.aps-process-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:20px; margin-top:44px; }
@media (max-width:960px){ .aps-process-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .aps-process-grid{ grid-template-columns:1fr; } }
.aps-process-step{ position:relative; padding-top:8px; }
.aps-process-num{
  font-size:38px; font-weight:800; color:transparent;
  -webkit-text-stroke:1.5px var(--aps-orange); text-stroke:1.5px var(--aps-orange);
  line-height:1; margin-bottom:10px; display:block;
}
.aps-process-step h3{ font-size:16px; font-weight:700; color:#12151c; margin:0 0 6px; }
.aps-process-step p{ font-size:13.5px; color:#6b7280; margin:0; line-height:1.55; }

/* ---------- TAG PILL LIST (Who We Serve) ---------- */
.aps-pill-row{ display:flex; flex-wrap:wrap; gap:12px; margin-top:36px; }
.aps-pill{
  font-size:13.5px; font-weight:600; color:#12151c;
  background:#f1f5f9; border:1px solid #e2e8f0; border-radius:999px; padding:10px 18px;
  transition:border-color .2s ease, transform .2s ease, background .2s ease;
}
.aps-pill:hover{ border-color:var(--aps-orange); background:#fff8e8; transform:translateY(-2px); }

@media (prefers-reduced-motion: reduce){
  .aps-page-hero::before, .aps-quote-band::before{ animation:none !important; }
}

.aps-light-card{
  background:#fff; border-radius:18px; padding:28px 24px;
  border:1px solid #e5e9f0;
  transform-style:preserve-3d; perspective:800px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.aps-light-card:hover{ border-color:rgba(240,192,64,.5); box-shadow:0 24px 48px -20px rgba(15,23,42,.16); transform:translateY(-4px); }
.aps-light-card h3{ font-size:18px; font-weight:700; margin:0 0 8px; color:#12151c; }
.aps-light-card p{ font-size:14px; color:#6b7280; margin:0; line-height:1.6; }

/* ---------- DARK ALTERNATE SECTION (matches hero bg) ---------- */
.aps-light-section.aps-dark-section{
  position:relative; overflow:hidden; isolation:isolate;
  background:var(--aps-black);
}
.aps-dark-section::before{
  content:""; position:absolute; inset:-2px; z-index:0;
  background-image:
    linear-gradient(rgba(240,192,64,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(240,192,64,.07) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 85% 15%, black, transparent 70%);
  mask-image: radial-gradient(circle at 85% 15%, black, transparent 70%);
  animation: apsGridDrift 40s linear infinite;
}
.aps-dark-section::after{
  content:""; position:absolute; inset:0; z-index:0;
  background:radial-gradient(800px 460px at 8% 90%, rgba(240,192,64,.10), transparent 60%);
}
.aps-dark-section .aps-light-section-inner{ position:relative; z-index:1; }
.aps-dark-section .aps-light-section-inner h2{ color:#fff; }
.aps-dark-section .aps-light-card{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.12);
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
}
.aps-dark-section .aps-light-card:hover{ border-color:rgba(240,192,64,.55); box-shadow:0 24px 48px -20px rgba(0,0,0,.55); background:rgba(255,255,255,.065); }
.aps-dark-section .aps-light-card h3{ color:#fff; }
.aps-dark-section .aps-light-card p{ color:#a7afc0; }
.aps-dark-section .aps-pill{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.16); color:#e7eaf0; }
.aps-dark-section .aps-pill:hover{ background:rgba(240,192,64,.14); border-color:var(--aps-orange); }
.aps-dark-section [class*="aps-icon-"]{ border-color:var(--aps-orange) !important; }
.aps-dark-section .aps-icon-shield{ background:var(--aps-orange) !important; }
.aps-dark-section .aps-icon-clock::before{ background:var(--aps-orange) !important; }
.aps-dark-section .aps-icon-price::before{ color:var(--aps-orange) !important; }
.aps-dark-section .aps-icon-gear::before{ border-color:var(--aps-orange) !important; }

/* ---------- CONTACT PAGE ---------- */
.aps-page-hero-contact::after{ background:radial-gradient(800px 460px at 10% 10%, rgba(240,192,64,.14), transparent 60%), linear-gradient(rgba(6,8,12,.87), rgba(6,8,12,.93)), url('https://images.unsplash.com/photo-1441796522229-b3a3cb3d58fd?q=80&w=1800&auto=format&fit=crop') center/cover no-repeat; }
.aps-contact-grid{ display:grid; grid-template-columns:.85fr 1.15fr; gap:56px; margin-top:40px; align-items:start; }
@media (max-width:860px){ .aps-contact-grid{ grid-template-columns:1fr; } }
.aps-contact-list{ list-style:none; padding:0; margin:32px 0 0; display:grid; gap:14px; }
.aps-contact-list li{
  display:flex; align-items:flex-start; gap:14px;
  background:#f8fafc; border:1px solid #e5e9f0; border-radius:14px; padding:16px 18px;
  font-size:14.5px; color:#334155; line-height:1.5;
  transition:border-color .2s ease, transform .2s ease;
}
.aps-contact-list li:hover{ border-color:var(--aps-orange); transform:translateX(4px); }
.aps-contact-list li svg{ width:20px; height:20px; flex:none; fill:var(--aps-orange); margin-top:2px; }
.aps-fc-label{ display:block; font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:#8b95a5; margin-bottom:2px; }
.aps-contact-form-card{
  background:#fff; border:1px solid #e5e9f0; border-radius:20px; padding:36px;
  box-shadow:0 24px 60px -30px rgba(15,23,42,.15);
}
@media (max-width:520px){ .aps-contact-form-card{ padding:24px 20px; } }
.aps-contact-form-card form{ margin-top:24px; }
.aps-contact-form-card form label{
  display:block; font-size:12.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  color:#334155; margin:18px 0 6px;
}
.aps-contact-form-card form label:first-of-type{ margin-top:0; }
.aps-contact-form-card form input,
.aps-contact-form-card form select,
.aps-contact-form-card form textarea{
  width:100%; border:1px solid #d8dee6; border-radius:10px; padding:12px 14px;
  font-size:14.5px; color:#12151c; background:#fff; box-sizing:border-box;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.aps-contact-form-card form input:focus,
.aps-contact-form-card form select:focus,
.aps-contact-form-card form textarea:focus{
  outline:none; border-color:var(--aps-orange); box-shadow:0 0 0 3px rgba(240,192,64,.18);
}
.aps-contact-form-card form button[type="submit"]{
  margin-top:22px; width:100%; background:var(--aps-orange); color:#1a1206; font-weight:700;
  border:none; border-radius:10px; padding:14px 20px; font-size:15px; cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease;
  box-shadow:0 12px 26px -10px rgba(240,192,64,.55);
}
.aps-contact-form-card form button[type="submit"]:hover{ transform:translateY(-2px); }
.aps-faq-list{ display:grid; gap:14px; margin-top:36px; max-width:820px; }
.aps-faq-item{
  background:#fff; border:1px solid #e5e9f0; border-radius:16px; padding:22px 26px;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.aps-faq-item:hover{ border-color:rgba(240,192,64,.4); box-shadow:0 20px 40px -24px rgba(15,23,42,.15); }
.aps-faq-item svg{ display:none; }
.aps-faq-q{
  display:block; font-size:16px; font-weight:700; color:#12151c; text-decoration:none;
  position:relative; padding-left:22px; cursor:default;
}
.aps-faq-q::before{ content:"?"; position:absolute; left:0; top:0; color:var(--aps-orange); font-weight:800; }
.aps-faq-a{ margin:10px 0 0 22px; font-size:14.5px; color:#6b7280; line-height:1.65; }

/* ================= HEADER ================= */
#masthead.site-header{
  background:rgba(8,9,12,.95) !important;
  border-bottom:1px solid rgba(240,192,64,.15);
  position:sticky; top:0; z-index:999;
}
#masthead .ast-main-header-wrap{ background:transparent !important; }
#masthead .site-title-link{
  color:#fff !important; font-weight:800; font-size:19px; letter-spacing:-.01em;
  transition:color .2s ease;
}
#masthead .site-title-link:hover{ color:var(--aps-orange) !important; }
#masthead ul.main-header-menu > li > a.menu-link{
  color:#c7cddb !important; font-weight:600; font-size:14.5px;
  transition:color .2s ease;
}
#masthead ul.main-header-menu > li > a.menu-link:hover,
#masthead ul.main-header-menu > li.current-menu-item > a.menu-link{ color:var(--aps-orange) !important; }
#masthead ul.main-header-menu > li.aps-nav-cta{ margin-left:8px; }
#masthead ul.main-header-menu > li.aps-nav-cta > a.menu-link{
  background:linear-gradient(135deg,var(--aps-orange),var(--aps-orange-2)) !important;
  color:#1a1206 !important; border-radius:9px !important; padding:9px 20px !important; font-weight:700 !important;
  transition:transform .2s ease, box-shadow .2s ease;
  box-shadow:0 8px 20px -8px rgba(240,192,64,.5);
  display:inline-block;
}
#masthead ul.main-header-menu > li.aps-nav-cta > a.menu-link:hover{ transform:translateY(-2px); color:#1a1206 !important; }
#ast-mobile-header, #ast-mobile-header .ast-main-header-wrap{ background:rgba(8,9,12,.97) !important; }
#ast-mobile-header .site-title-link{ color:#fff !important; }
#ast-mobile-header .menu-toggle .ast-mobile-svg{ color:#fff !important; fill:#fff !important; }
body:not(.ast-header-break-point) #ast-mobile-header{ display:none; }
.ast-mobile-header-wrap ul.main-header-menu,
.ast-mobile-header-wrap .main-header-bar-navigation{ background:#0b1220 !important; }
.ast-mobile-header-wrap ul.main-header-menu li{ border-color:rgba(255,255,255,.08) !important; }
.ast-mobile-header-wrap ul.main-header-menu li a.menu-link{ color:#e5e9f0 !important; }

/* ================= FOOTER ================= */
.aps-footer{ position:relative; overflow:hidden; isolation:isolate; background:var(--aps-black); color:#9aa5b5; padding:0; }
.aps-footer::before{
  content:""; position:absolute; inset:-2px; top:56px;
  background-image: linear-gradient(rgba(240,192,64,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(240,192,64,.05) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 90% 0%, black, transparent 65%);
  mask-image: radial-gradient(circle at 90% 0%, black, transparent 65%);
}
.aps-footer-topline{ height:3px; background:linear-gradient(90deg, transparent, var(--aps-orange-2), var(--aps-orange), var(--aps-orange-2), transparent); background-size:200% 100%; animation:apsFooterLineShift 6s linear infinite; }
@keyframes apsFooterLineShift{ from{ background-position:0% 0; } to{ background-position:200% 0; } }
.aps-footer-cta{
  position:relative; z-index:1; max-width:1360px; margin:0 auto; padding:40px clamp(24px,5vw,64px);
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.aps-footer-cta h3{ color:#fff; font-size:clamp(20px,2.4vw,26px); font-weight:800; margin:0; letter-spacing:-.01em; }
.aps-footer-cta p{ margin:6px 0 0; font-size:14px; color:#8b95a5; }
.aps-footer-cta-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.aps-footer-cta-btn{
  display:inline-flex; align-items:center; gap:8px; padding:12px 20px; border-radius:10px;
  font-size:14px; font-weight:700; text-decoration:none; transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.aps-footer-cta-btn svg{ width:16px; height:16px; }
.aps-footer-cta-btn.aps-fc-primary{ background:linear-gradient(135deg, var(--aps-orange-2), var(--aps-orange)); color:var(--aps-black); box-shadow:0 6px 18px rgba(240,192,64,.22); }
.aps-footer-cta-btn.aps-fc-primary:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(240,192,64,.32); filter:brightness(1.05); }
.aps-footer-cta-btn.aps-fc-secondary{ background:rgba(255,255,255,.06); color:#fff; border:1px solid rgba(255,255,255,.14); }
.aps-footer-cta-btn.aps-fc-secondary:hover{ background:rgba(255,255,255,.1); border-color:rgba(240,192,64,.4); transform:translateY(-2px); }
.aps-footer-inner{ position:relative; z-index:1; max-width:1360px; margin:0 auto; padding:56px clamp(24px,5vw,64px) 0; }
.aps-footer-grid{ display:grid; grid-template-columns:1.3fr .8fr .9fr .9fr 1.1fr; gap:32px; padding-bottom:48px; border-bottom:1px solid rgba(255,255,255,.08); }
@media (max-width:1080px){ .aps-footer-grid{ grid-template-columns:1fr 1fr 1fr; row-gap:36px; } }
@media (max-width:640px){ .aps-footer-grid{ grid-template-columns:1fr 1fr; row-gap:32px; } }
@media (max-width:420px){ .aps-footer-grid{ grid-template-columns:1fr; } }
.aps-footer-brand-name{ display:flex; align-items:center; gap:10px; font-size:20px; font-weight:800; color:#fff; }
.aps-footer-brand-mark{ width:32px; height:32px; border-radius:8px; flex:none; background:linear-gradient(145deg, var(--aps-orange-2), var(--aps-orange)); color:var(--aps-black); font-weight:800; font-size:15px; display:flex; align-items:center; justify-content:center; }
.aps-footer p{ font-size:14px; line-height:1.75; color:#8b95a5; margin:14px 0 0; max-width:320px; }
.aps-footer-gst{ display:inline-block; margin-top:12px; font-size:11.5px; color:#5b6373; letter-spacing:.03em; border:1px solid rgba(255,255,255,.1); border-radius:999px; padding:4px 12px; }
.aps-footer h4{ color:#fff; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; margin:0 0 18px; }
.aps-footer-links{ list-style:none; margin:0; padding:0; display:grid; gap:11px; }
.aps-footer-links li a{ color:#9aa5b5; text-decoration:none; font-size:14px; transition:color .2s ease, padding-left .2s ease; }
.aps-footer-links li a:hover{ color:var(--aps-orange); padding-left:3px; }
.aps-footer-contact{ list-style:none; margin:0; padding:0; display:grid; gap:14px; }
.aps-footer-contact li{ font-size:14px; color:#9aa5b5; line-height:1.6; display:flex; gap:10px; }
.aps-footer-contact li svg{ width:15px; height:15px; flex:none; margin-top:3px; color:var(--aps-orange); }
.aps-footer-contact li a{ color:#9aa5b5; text-decoration:none; transition:color .2s ease; }
.aps-footer-contact li a:hover{ color:var(--aps-orange); }
.aps-footer-contact li .aps-fc-label{ display:block; color:#5b6373; font-size:11px; text-transform:uppercase; letter-spacing:.06em; margin-bottom:2px; }
.aps-footer-social{ display:flex; gap:10px; margin-top:20px; }
.aps-footer-social a{
  width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
  display:flex; align-items:center; justify-content:center; color:#c7cddb;
  text-decoration:none; transition:background .2s ease, color .2s ease, transform .2s ease, border-color .2s ease;
}
.aps-footer-social a svg{ width:16px; height:16px; }
.aps-footer-social a:hover{ background:var(--aps-orange); border-color:var(--aps-orange); color:#1a1206; transform:translateY(-3px); }
.aps-footer-bottom{
  position:relative; z-index:1; max-width:1360px; margin:0 auto; padding:22px clamp(24px,5vw,64px);
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;
  font-size:12.5px; color:#5b6373;
}
.aps-footer-bottom a{ color:#8b95a5; text-decoration:none; }
.aps-footer-bottom a:hover{ color:var(--aps-orange); }
.aps-footer-credit{
  display:inline-flex; align-items:center; gap:7px;
  background:rgba(240,192,64,.08); border:1px solid rgba(240,192,64,.3); border-radius:999px;
  padding:7px 16px 7px 14px; font-size:12.5px; color:#c7cddb;
  transition:background .2s ease, border-color .2s ease, transform .2s ease;
}
.aps-footer-credit:hover{ background:rgba(240,192,64,.14); border-color:rgba(240,192,64,.5); transform:translateY(-1px); }
.aps-footer-credit::before{ content:"✦"; color:var(--aps-orange); font-size:12px; }
.aps-footer-credit a{ color:#fff; font-weight:800; text-decoration:none; border-bottom:1px solid var(--aps-orange); transition:color .2s ease; }
.aps-footer-credit a:hover{ color:var(--aps-orange); }
body .site-below-footer-wrap .ast-footer-copyright{ display:none !important; }
body .site-below-footer-wrap{ padding:0 !important; margin:0 !important; }

/* ================= BENTO SHOWCASE (Home) ================= */
.aps-bento{ position:relative; background:var(--aps-black); padding:clamp(60px,8vw,100px) 0; overflow:hidden; isolation:isolate; }
.aps-bento::before{
  content:""; position:absolute; inset:-2px;
  background-image:
    linear-gradient(rgba(240,192,64,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(240,192,64,.06) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 20% 10%, black, transparent 70%);
  mask-image: radial-gradient(circle at 20% 10%, black, transparent 70%);
  animation: apsGridDrift 40s linear infinite;
  z-index:0;
}
.aps-bento::after{
  content:""; position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(900px 500px at 8% 8%, rgba(240,192,64,.12), transparent 60%),
    radial-gradient(700px 420px at 96% 90%, rgba(240,192,64,.07), transparent 60%);
}
.aps-bento-inner{ position:relative; z-index:1; max-width:1360px; margin:0 auto; padding:0 clamp(24px,5vw,64px); }
.aps-bento-inner h2{ color:#fff; margin:16px 0 0; font-size:clamp(28px,4vw,42px); letter-spacing:-.01em; }
.aps-bento-grid{ display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:150px; gap:18px; margin-top:44px; }
.aps-bento-tile{
  position:relative; border-radius:18px; overflow:hidden;
  background-size:cover; background-position:center;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 1px 0 rgba(255,255,255,.05) inset, 0 18px 40px -22px rgba(0,0,0,.6);
  transition:transform .4s cubic-bezier(.16,1,.3,1), box-shadow .4s ease, border-color .4s ease, background-size .6s ease;
}
.aps-bento-tile::before{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(6,8,14,0) 35%, rgba(6,8,14,.55) 70%, rgba(6,8,14,.92) 100%);
  transition:background .35s ease;
}
.aps-bento-tile::after{
  content:""; position:absolute; inset:0; z-index:1; opacity:0; pointer-events:none;
  box-shadow:inset 0 0 0 2px var(--aps-orange), inset 0 0 40px rgba(240,192,64,.18);
  border-radius:inherit; transition:opacity .35s ease;
}
.aps-bento-tile:hover{ transform:translateY(-6px) scale(1.01); box-shadow:0 30px 60px -18px rgba(0,0,0,.65); border-color:rgba(240,192,64,.5); background-size:112%; }
.aps-bento-tile:hover::before{ background:linear-gradient(180deg, rgba(6,8,14,0) 20%, rgba(6,8,14,.45) 62%, rgba(6,8,14,.9) 100%); }
.aps-bento-tile:hover::after{ opacity:1; }
.aps-bento-tile.aps-bento-gold::before{ background:linear-gradient(175deg, rgba(20,15,4,.15) 0%, rgba(6,8,14,.4) 45%, rgba(6,8,14,.92) 100%); }
.aps-bento-tile.aps-bento-gold:hover::before{ background:linear-gradient(175deg, rgba(20,15,4,.05) 0%, rgba(6,8,14,.3) 45%, rgba(6,8,14,.88) 100%); }
.aps-bento-num{
  position:absolute; top:14px; right:14px; z-index:2;
  font-size:11.5px; font-weight:700; letter-spacing:.06em; color:#fff;
  font-family:'Courier New',monospace;
  background:rgba(8,9,12,.55); border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  padding:4px 9px; border-radius:999px;
}
.aps-bento-title{
  position:absolute; left:16px; bottom:16px; right:16px; z-index:2;
  color:#fff; font-size:18px; font-weight:800; line-height:1.25; letter-spacing:-.01em;
  text-shadow:0 2px 10px rgba(0,0,0,.5);
}
.aps-bento-t1 .aps-bento-title, .aps-bento-t3 .aps-bento-title{ font-size:21px; }
.aps-bento-t1{ grid-column:1/3; grid-row:1/3; }
.aps-bento-t2{ grid-column:3/4; grid-row:1/2; }
.aps-bento-t3{ grid-column:4/5; grid-row:1/3; }
.aps-bento-t4{ grid-column:3/4; grid-row:2/3; }
.aps-bento-t5{ grid-column:1/2; grid-row:3/4; }
.aps-bento-t6{ grid-column:2/3; grid-row:3/4; }
.aps-bento-t7{ grid-column:3/5; grid-row:3/4; }
@media (max-width:900px){
  .aps-bento-grid{ grid-template-columns:repeat(2,1fr); grid-auto-rows:170px; }
  .aps-bento-t1,.aps-bento-t2,.aps-bento-t3,.aps-bento-t4,.aps-bento-t5,.aps-bento-t6,.aps-bento-t7{ grid-column:auto; grid-row:auto; }
}
@media (max-width:560px){ .aps-bento-grid{ grid-template-columns:1fr; } }

/* ================= HORIZONTAL PHOTO MARQUEE (Home) ================= */
.aps-marquee{ position:relative; background:#fff; padding:60px 0 64px; overflow:hidden; isolation:isolate; }
.aps-marquee::before{
  content:""; position:absolute; inset:-2px;
  background-image:
    linear-gradient(rgba(20,24,32,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20,24,32,.05) 1px, transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image: radial-gradient(circle at 88% 15%, black, transparent 70%);
  mask-image: radial-gradient(circle at 88% 15%, black, transparent 70%);
  animation: apsGridDrift 40s linear infinite;
  z-index:0;
}
.aps-marquee-inner{ max-width:1360px; margin:0 auto; padding:0 clamp(24px,5vw,64px) 30px; position:relative; z-index:1; }
.aps-marquee-inner h2{ color:#12151c; margin:16px 0 0; font-size:clamp(28px,4vw,42px); font-weight:800; letter-spacing:-.01em; }
.aps-marquee-track-wrap{
  position:relative; z-index:1;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
  mask-image:linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
}
.aps-marquee-track{ display:flex; gap:20px; width:max-content; animation:apsMarquee 42s linear infinite; }
.aps-marquee-track:hover{ animation-play-state:paused; }
.aps-marquee-item{
  flex:none; width:280px; height:190px; border-radius:16px; overflow:hidden;
  background-size:cover; background-position:center; position:relative;
  border:1px solid rgba(18,21,28,.08);
  box-shadow:0 14px 34px -16px rgba(18,21,28,.28);
  transition:transform .35s ease, box-shadow .35s ease;
}
.aps-marquee-item:hover{ transform:translateY(-4px); box-shadow:0 20px 40px -16px rgba(18,21,28,.35); }
.aps-marquee-item::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 55%, rgba(6,8,12,.82)); }
.aps-marquee-item span{ position:absolute; left:14px; bottom:12px; z-index:1; color:#fff; font-size:12.5px; font-weight:700; letter-spacing:.02em; }
.aps-marquee .aps-badge{
  background:rgba(240,192,64,.14);
  border-color:rgba(184,134,11,.45);
  color:#9a6b0a;
  box-shadow:0 0 0 1px rgba(240,192,64,.06), 0 6px 16px -8px rgba(184,134,11,.3);
}
.aps-marquee .aps-badge .aps-badge-dot{ background:#c9922a; }
@keyframes apsMarquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (max-width:600px){ .aps-marquee-item{ width:220px; height:150px; } }

@media (prefers-reduced-motion: reduce){
  .aps-bento::before{ animation:none !important; }
  .aps-marquee-track{ animation:none !important; }
}

/* ================= SITE HEADER ================= */
body #masthead{ display:none !important; }
body.admin-bar .aps-site-header{ top:32px; }
@media (max-width:782px){ body.admin-bar .aps-site-header{ top:46px; } }

.aps-site-header{
  position:sticky; top:0; left:0; right:0; z-index:999;
  background:
    radial-gradient(600px 120px at 10% 0%, rgba(240,192,64,.10), transparent 65%),
    radial-gradient(500px 140px at 92% 100%, rgba(240,192,64,.06), transparent 65%),
    linear-gradient(180deg, rgba(17,27,46,.97), rgba(8,9,12,.97));
  backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  border-bottom:1px solid rgba(240,192,64,.14);
  transition:background-color .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.aps-site-header.aps-scrolled{
  background:
    radial-gradient(600px 120px at 10% 0%, rgba(240,192,64,.13), transparent 65%),
    radial-gradient(500px 140px at 92% 100%, rgba(240,192,64,.08), transparent 65%),
    linear-gradient(180deg, rgba(17,27,46,.995), rgba(8,9,12,.995));
  box-shadow:0 8px 30px rgba(0,0,0,.35);
  border-bottom-color:rgba(240,192,64,.24);
}
.aps-header-inner{
  max-width:1360px; margin:0 auto;
  padding:14px clamp(20px,4vw,48px);
  display:flex; align-items:center; gap:28px;
}
.aps-logo{ display:flex; align-items:center; gap:10px; text-decoration:none; margin-right:auto; }
.aps-logo-mark{
  width:36px; height:36px; border-radius:9px; flex:none;
  background:linear-gradient(145deg, var(--aps-orange-2), var(--aps-orange));
  color:var(--aps-black); font-weight:800; font-size:17px;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 14px rgba(240,192,64,.28);
}
.aps-logo-text{ font-size:19px; font-weight:800; letter-spacing:.01em; color:var(--aps-white); white-space:nowrap; }
.aps-logo-text span{ color:var(--aps-orange); }

.aps-nav{ display:flex; align-items:center; gap:30px; }
.aps-nav a{
  position:relative; color:#c7cdd8; text-decoration:none; font-size:14.5px; font-weight:600;
  padding:6px 2px; transition:color .25s ease; white-space:nowrap;
}
.aps-nav a::after{
  content:""; position:absolute; left:0; bottom:0; height:2px; width:0;
  background:var(--aps-orange); transition:width .25s ease;
}
.aps-nav a:hover{ color:var(--aps-white); }
.aps-nav a:hover::after{ width:100%; }

.aps-header-actions{ display:flex; align-items:center; gap:10px; margin-left:auto; }
.aps-icon-btn{
  width:38px; height:38px; border-radius:50%; flex:none;
  border:1px solid rgba(255,255,255,.18); color:#e7eaf0;
  display:flex; align-items:center; justify-content:center;
  text-decoration:none; transition:border-color .25s ease, color .25s ease, transform .25s ease, background .25s ease;
}
.aps-icon-btn svg{ width:17px; height:17px; }
.aps-icon-btn:hover{ border-color:var(--aps-orange); color:var(--aps-orange); transform:translateY(-2px); background:rgba(240,192,64,.08); }

.aps-btn-quote{
  display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, var(--aps-orange-2), var(--aps-orange));
  color:var(--aps-black); font-weight:700; font-size:14px;
  padding:11px 22px; border-radius:9px; text-decoration:none; white-space:nowrap;
  box-shadow:0 6px 18px rgba(240,192,64,.22);
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.aps-btn-quote:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(240,192,64,.32); filter:brightness(1.05); }

.aps-nav-toggle{
  display:none; flex:none; width:38px; height:38px; border-radius:9px;
  border:1px solid rgba(255,255,255,.18); background:transparent; cursor:pointer;
  flex-direction:column; align-items:center; justify-content:center; gap:5px;
}
.aps-nav-toggle span{ width:18px; height:2px; background:#e7eaf0; border-radius:2px; transition:transform .25s ease, opacity .25s ease; }
.aps-nav-toggle.aps-active span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.aps-nav-toggle.aps-active span:nth-child(2){ opacity:0; }
.aps-nav-toggle.aps-active span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.aps-mobile-nav{
  display:none; flex-direction:column; gap:2px;
  max-height:0; overflow:hidden; opacity:0;
  padding:0 clamp(20px,4vw,48px);
  transition:max-height .35s ease, opacity .3s ease, padding .35s ease;
  border-top:1px solid rgba(255,255,255,.08);
}
.aps-mobile-nav.aps-open{ max-height:520px; opacity:1; padding:10px clamp(20px,4vw,48px) 18px; }
.aps-mobile-nav a{
  color:#c7cdd8; text-decoration:none; font-size:15px; font-weight:600;
  padding:12px 4px; border-bottom:1px solid rgba(255,255,255,.06);
}
.aps-mobile-nav a:hover{ color:var(--aps-orange); }
.aps-mobile-nav .aps-btn-quote{ margin-top:12px; text-align:center; }

@media (max-width:980px){
  .aps-nav{ display:none; }
  .aps-header-actions .aps-icon-btn{ display:none; }
  .aps-nav-toggle{ display:flex; }
  .aps-mobile-nav{ display:flex; }
}
@media (max-width:480px){
  .aps-logo-text{ font-size:17px; }
}

/* ================= HERO: ALWAYS-MOVING ACCENTS ================= */
.aps-hero-liveline{
  position:absolute; left:0; right:0; top:0; height:2px; overflow:hidden;
  z-index:2; pointer-events:none;
}
.aps-hero-liveline::before{
  content:""; position:absolute; top:0; left:-30%; width:30%; height:100%;
  background:linear-gradient(90deg, transparent, var(--aps-orange-2), var(--aps-orange), var(--aps-orange-2), transparent);
  animation:apsLiveLineTravel 5.5s linear infinite;
  box-shadow:0 0 10px 1px rgba(240,192,64,.55);
}
@keyframes apsLiveLineTravel{ from{ left:-30%; } to{ left:100%; } }

.aps-hero-vline{
  position:absolute; width:1px; top:0; bottom:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, transparent, rgba(240,192,64,.35), transparent);
  overflow:hidden;
}
.aps-hero-vline::before{
  content:""; position:absolute; left:0; top:-25%; width:100%; height:25%;
  background:linear-gradient(180deg, transparent, var(--aps-orange), transparent);
  animation:apsVLineTravel 4s linear infinite;
}
@keyframes apsVLineTravel{ from{ top:-25%; } to{ top:100%; } }
.aps-hero-vline-1{ left:18%; }
.aps-hero-vline-1::before{ animation-duration:4.2s; animation-delay:0s; }
.aps-hero-vline-2{ left:50%; }
.aps-hero-vline-2::before{ animation-duration:5.1s; animation-delay:1.1s; }
.aps-hero-vline-3{ left:82%; }
.aps-hero-vline-3::before{ animation-duration:3.6s; animation-delay:2s; }
@media (max-width:900px){ .aps-hero-vline-2, .aps-hero-vline-3{ display:none; } }

.aps-hero-ticker{
  position:relative; z-index:1; margin-top:clamp(28px,4vw,40px);
  overflow:hidden; -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:18px;
}
.aps-hero-ticker-track{
  display:flex; align-items:center; gap:36px; width:max-content;
  animation:apsTickerScroll 22s linear infinite;
}
.aps-hero-ticker-track span{
  display:inline-flex; align-items:center; gap:10px;
  font-size:12.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:#9aa3b2; white-space:nowrap;
}
.aps-hero-ticker-track span::before{
  content:""; width:5px; height:5px; border-radius:50%; background:var(--aps-orange); flex:none;
}
@keyframes apsTickerScroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

@media (prefers-reduced-motion: reduce){
  .aps-hero-liveline::before, .aps-hero-vline::before, .aps-hero-ticker-track{ animation:none !important; }
}

/* ================= PROCESS TIMELINE ================= */
.aps-timeline{ position:relative; max-width:820px; margin:56px auto 0; padding-left:64px; }
.aps-timeline-track{ position:absolute; left:23px; top:4px; bottom:4px; width:2px; background:linear-gradient(180deg, rgba(240,192,64,.05), rgba(240,192,64,.22), rgba(240,192,64,.05)); overflow:hidden; }
.aps-timeline-track::before{
  content:""; position:absolute; left:0; top:-15%; width:100%; height:15%;
  background:linear-gradient(180deg, transparent, var(--aps-orange), transparent);
  box-shadow:0 0 14px 2px rgba(240,192,64,.6);
  animation:apsTimelineGlow 5s linear infinite;
}
@keyframes apsTimelineGlow{ from{ top:-15%; } to{ top:100%; } }
.aps-timeline-step{ position:relative; padding-bottom:40px; }
.aps-timeline-step:last-child{ padding-bottom:0; }
.aps-timeline-num{
  position:absolute; left:-64px; top:0; width:48px; height:48px; border-radius:50%; z-index:1;
  background:var(--aps-black); border:2px solid var(--aps-orange);
  color:var(--aps-orange); font-weight:800; font-size:17px;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 0 0 6px rgba(8,9,12,1), 0 0 18px rgba(240,192,64,.25);
  transition:transform .3s ease, background .3s ease, color .3s ease;
}
.aps-timeline-step:hover .aps-timeline-num{ background:var(--aps-orange); color:var(--aps-black); transform:scale(1.08); }
.aps-timeline-content{
  background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.12); border-radius:16px;
  padding:24px 28px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  transition:border-color .3s ease, background .3s ease, transform .3s ease;
}
.aps-timeline-step:hover .aps-timeline-content{ border-color:rgba(240,192,64,.4); background:rgba(255,255,255,.065); transform:translateX(4px); }
.aps-timeline-meta{ display:block; font-size:11.5px; font-weight:700; color:var(--aps-orange); text-transform:uppercase; letter-spacing:.08em; margin-bottom:6px; }
.aps-timeline-content h3{ color:#fff; margin:0 0 8px; font-size:19px; font-weight:800; }
.aps-timeline-content p{ color:#a7afc0; margin:0; font-size:14.5px; line-height:1.7; }
@media (max-width:640px){ .aps-timeline{ padding-left:52px; } .aps-timeline-num{ left:-52px; width:40px; height:40px; font-size:14px; } .aps-timeline-track{ left:19px; } }

/* ================= PREPARE CHECKLIST ================= */
.aps-checklist{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:32px; }
@media (max-width:700px){ .aps-checklist{ grid-template-columns:1fr; } }
.aps-checklist-item{
  display:flex; align-items:flex-start; gap:14px; background:#fff; border:1px solid #e5e9f0; border-radius:14px; padding:18px 20px;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.aps-checklist-item:hover{ border-color:rgba(240,192,64,.4); box-shadow:0 16px 32px -20px rgba(15,23,42,.18); transform:translateY(-2px); }
.aps-checklist-num{
  flex:none; width:30px; height:30px; border-radius:50%; background:rgba(240,192,64,.12); color:var(--aps-orange-2);
  font-weight:800; font-size:13px; display:flex; align-items:center; justify-content:center;
}
.aps-checklist-item h4{ margin:0 0 4px; font-size:15px; font-weight:700; color:#12151c; }
.aps-checklist-item p{ margin:0; font-size:13.5px; color:#6b7280; line-height:1.6; }

/* ================= CONTACT: MAP & FORM NOTICE ================= */
.aps-map-wrap{ display:grid; grid-template-columns:1.3fr .8fr; gap:24px; margin-top:36px; align-items:stretch; }
@media (max-width:860px){ .aps-map-wrap{ grid-template-columns:1fr; } }
.aps-map-frame{ position:relative; border-radius:20px; overflow:hidden; border:1px solid rgba(255,255,255,.14); min-height:380px; box-shadow:0 24px 60px -30px rgba(0,0,0,.5); }
@media (max-width:520px){ .aps-map-frame{ min-height:280px; } }
.aps-map-frame iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; filter:grayscale(.15) contrast(1.05); }
.aps-map-card{
  background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.12); border-radius:20px;
  padding:28px; display:flex; flex-direction:column; gap:18px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
}
.aps-map-card h3{ color:#fff; margin:0; font-size:19px; font-weight:800; }
.aps-map-card p{ color:#a7afc0; margin:0; font-size:14px; line-height:1.7; }
.aps-map-card .aps-btn-primary,.aps-map-card .aps-btn-secondary{ text-align:center; }
.aps-form-notice{
  border-radius:12px; padding:14px 18px; font-size:14px; font-weight:600; margin:0 0 20px;
}
.aps-form-notice.aps-notice-success{ background:#ecfdf3; border:1px solid #a7e8bd; color:#0d6b3a; }
.aps-form-notice.aps-notice-error{ background:#fef2f2; border:1px solid #f3b4b4; color:#a11414; }
.aps-form-honeypot{ position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }
