@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/all.min.css");

*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink)}
a{color:inherit;text-decoration:none}
.dj-footer{
  --green-950:#063f2d;
  --green-900:#0F5132;
  --green-800:#12613d;
  --green-700:#147741;
  --green-600:#1A9B57;
  --green-500:#20A95D;
  --mint-100:#eef9f2;
  --ink:#172033;
  --text:#5d6672;
  --line:#d9e8df;
  --orange:#f28b1a;
  --white:#fff;
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 8% 22%, rgba(32,169,93,.10), transparent 28%),
    radial-gradient(circle at 90% 5%, rgba(26,155,87,.08), transparent 25%),
    linear-gradient(180deg,#f8fdf9 0%,#eef8f2 100%);
  border-top:1px solid #e5f0e9;
}
.dj-footer::before{
  content:"";position:absolute;right:-120px;bottom:-165px;width:520px;height:320px;
  border-radius:50%;background:rgba(32,169,93,.055);transform:rotate(-12deg)
}
.dj-footer::after{
  content:"";position:absolute;left:-120px;bottom:56px;width:280px;height:170px;
  border-radius:60% 40% 0 0;background:linear-gradient(140deg,rgba(32,169,93,.18),rgba(32,169,93,.04));
  transform:rotate(13deg)
}
.footer-shell{
  position:relative;z-index:1;max-width:1460px;margin:auto;padding:46px 36px 38px;
  display:grid;grid-template-columns:1.3fr 1.05fr 1fr 1fr 1.25fr;gap:42px;align-items:start
}
.brand-title{margin:0;font-size:clamp(34px,3.3vw,56px);line-height:.98;letter-spacing:-1.7px;font-weight:800;color:var(--green-950)}
.brand-title span{color:var(--green-600)}
.brand-subtitle{margin-top:14px;font-size:15px;color:#4e5a65}
.brand-copy{margin:18px 0 0;max-width:340px;font-size:15px;line-height:1.55;color:var(--text)}
.brand-points{margin-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.brand-point{text-align:center;padding:4px 6px;border-right:1px solid var(--line)}
.brand-point:last-child{border-right:0}
.brand-point i{display:block;margin-bottom:8px;font-size:24px;color:var(--green-800)}
.brand-point span{display:block;font-size:12px;line-height:1.3;font-weight:700}
.brand-sign{margin-top:34px;font-family:"Segoe Script","Bradley Hand",cursive;font-size:22px;color:var(--green-800);transform:rotate(-4deg)}
.brand-sign::after{content:"";display:block;width:155px;margin:4px 0 0 75px;border-bottom:2px solid rgba(32,169,93,.72)}
.footer-col h3,.contact-col h3{
  margin:0 0 18px;display:flex;align-items:center;gap:10px;font-size:20px;font-weight:400
}
.footer-col h3 i,.contact-col h3 i{color:var(--green-800)}
.footer-col h3::after,.contact-col h3::after{
  content:"";height:2px;width:34px;margin-left:2px;background:var(--green-500);border-radius:10px
}
.link-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.link-list a{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:#59626e;transition:.2s ease}
.link-list a::before{content:"›";color:var(--green-800);font-weight:800;font-size:17px}
.link-list a:hover{color:var(--orange);transform:translateX(3px)}
.link-list a:hover::before{color:var(--orange)}
.stack-col{display:flex;flex-direction:column;gap:28px}
.socials{display:flex;gap:10px;flex-wrap:wrap}
.social{
  width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;
  box-shadow:0 7px 20px rgba(0,0,0,.08);transition:.2s ease
}
.social:hover{transform:translateY(-3px)}
.instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}
.facebook{background:#316FF6}.linkedin{background:#0A66C2}.youtube{background:#FF0000}
.social-note{margin-top:12px;max-width:210px;font-size:13px;line-height:1.45;color:var(--text)}
.contact-item{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:start;margin-bottom:20px}
.contact-icon{
  width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--orange);
  box-shadow:0 8px 24px rgba(15,81,50,.10)
}
.contact-label{font-size:13px;color:#68707a;margin-bottom:2px}
.contact-main{display:block;font-size:14px;line-height:1.48;font-weight:600;color:#1a2431;word-break:break-word;transition:color .2s ease}
a.contact-main:hover{color:var(--orange)}
.contact-meta{margin-top:3px;font-size:12px;color:#6a727b}
.contact-quote{
  margin-top:14px;text-align:right;font-family:"Segoe Script","Bradley Hand",cursive;font-size:20px;line-height:1.35;
  color:var(--green-800);transform:rotate(-4deg)
}
.mobile-sections{display:none}
.footer-bottom{position:relative;z-index:2;background:linear-gradient(90deg,#07462f,#0b5e3c);color:#fff}
.bottom-shell{
  max-width:1460px;margin:auto;min-height:76px;padding:15px 36px;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px
}
.copyright{font-size:13px;white-space:nowrap}
.policy-links{display:flex;justify-content:center;flex-wrap:wrap}
.policy-links a{position:relative;padding:0 15px;font-size:13px;color:rgba(255,255,255,.92);transition:color .2s ease}
.policy-links a:hover{color:var(--orange)}
.policy-links a:not(:last-child)::after{
  content:"";position:absolute;right:0;top:50%;width:1px;height:14px;transform:translateY(-50%);background:rgba(255,255,255,.38)
}
.workforce-pill{
  display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;border:1px solid rgba(255,255,255,.28);
  border-radius:999px;background:rgba(255,255,255,.06);font-size:12px;line-height:1.25;white-space:nowrap
}
.workforce-pill i{color:#55db83}.workforce-arrow{
  width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--green-900)
}
@media (max-width:1180px){
  .footer-shell{grid-template-columns:1.15fr 1fr 1fr;gap:34px 28px}
  .brand-block{grid-row:span 2}
  .contact-col{grid-column:3}
  .bottom-shell{grid-template-columns:1fr auto}
  .policy-links{justify-content:flex-start;grid-column:1/-1;grid-row:2}
}
@media (max-width:900px){
  .footer-shell{grid-template-columns:1.2fr 1fr 1fr;padding:38px 24px 32px}
  .contact-col{grid-column:2/4;display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}
  .contact-col h3{grid-column:1/-1}.contact-quote{display:none}
  .bottom-shell{padding:14px 24px}
}
@media (max-width:767px){
  .footer-shell{display:block;padding:30px 18px 24px}
  .brand-block{text-align:center}.brand-title{font-size:42px}
  .brand-copy{margin:16px auto 0;font-size:14px;max-width:330px}
  .brand-points{max-width:360px;margin:24px auto 0}
  .brand-sign{font-size:19px;margin-top:27px}
  .brand-sign::after{margin-left:auto;margin-right:auto;width:145px}
  .desktop-sections,.contact-col{display:none!important}
  .mobile-sections{display:block;margin-top:28px;border-top:1px solid var(--line)}
  .acc-item{border-bottom:1px solid var(--line)}
  .acc-btn{
    width:100%;border:0;background:transparent;padding:15px 0;display:flex;align-items:center;
    justify-content:space-between;gap:14px;color:var(--ink);cursor:pointer;font:inherit
  }
  .acc-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:400}
  .acc-title i{color:var(--green-800);width:18px}
  .acc-chevron{transition:transform .25s ease;color:#66706e;font-size:12px}
  .acc-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}
  .acc-inner{overflow:hidden}.acc-item.open .acc-content{grid-template-rows:1fr}
  .acc-item.open .acc-chevron{transform:rotate(180deg)}
  .acc-always-open .acc-content{grid-template-rows:1fr}
  .acc-always-open .acc-btn{cursor:default}
  .acc-inner .link-list{padding:0 0 16px 27px;gap:9px}
  .acc-inner .link-list a{font-size:13px}
  .mobile-contact{padding:0 0 14px 27px}
  .mobile-contact .contact-item{margin:0 0 13px;grid-template-columns:36px 1fr}
  .mobile-contact .contact-icon{width:34px;height:34px;font-size:13px}
  .mobile-social{padding-top:22px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}
  .mobile-social-label{width:100%;text-align:center;font-size:13px;font-weight:800;margin-bottom:2px}
  .bottom-shell{min-height:unset;display:flex;flex-direction:column;gap:10px;text-align:center;padding:15px 18px 16px}
  .copyright{white-space:normal;font-size:12px}
  .policy-links{display:flex;justify-content:center;row-gap:6px}
  .policy-links a{font-size:11px;padding:0 8px}
  .workforce-pill{display:none}
}
@media (max-width:390px){
  .brand-title{font-size:36px}.brand-points{gap:4px}.brand-point span{font-size:11px}
  .footer-shell{padding-left:15px;padding-right:15px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
