/* DEALTEM Policy + Footer V2
   Isolated styles only: safe to load on every page without touching product/header CSS.
*/

:root{
  --dtp-text:#111827;
  --dtp-sub:#667085;
  --dtp-muted:#98a2b3;
  --dtp-line:#e9edf2;
  --dtp-soft:#f8fafc;
  --dtp-soft2:#f4f7fb;
  --dtp-blue:#1769e0;
  --dtp-navy:#101828;
  --dtp-card:#ffffff;
}

.dealtem-footer,
.legal-page{
  font-family:"Pretendard Variable","Pretendard","SUIT Variable","Noto Sans KR","Apple SD Gothic Neo",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--dtp-text);
  letter-spacing:-.02em;
  box-sizing:border-box;
}
.dealtem-footer *,
.legal-page *{box-sizing:border-box}

/* =========================
   FOOTER
========================= */
.dealtem-footer{
  margin-top:72px!important;
  background:#f8fafc!important;
  border-top:1px solid var(--dtp-line)!important;
  color:var(--dtp-sub)!important;
}
.dealtem-footer .footer-shell{
  width:min(1080px,calc(100% - 40px))!important;
  max-width:1080px!important;
  margin:0 auto!important;
  padding:36px 0 30px!important;
}
.dealtem-footer .footer-top{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:36px!important;
  align-items:start!important;
  padding-bottom:24px!important;
  border-bottom:1px solid var(--dtp-line)!important;
}
.dealtem-footer .footer-brand-block{max-width:470px!important}
.dealtem-footer .footer-brand{
  font-size:22px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.9px!important;
  color:var(--dtp-navy)!important;
}
.dealtem-footer .footer-tagline{
  margin:9px 0 0!important;
  font-size:12px!important;
  line-height:1.65!important;
  color:#7b8492!important;
}
.dealtem-footer .footer-links{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:8px 22px!important;
}
.dealtem-footer .footer-links a{
  color:#475467!important;
  font-size:12px!important;
  font-weight:760!important;
  text-decoration:none!important;
}
.dealtem-footer .footer-links a:hover{color:var(--dtp-navy)!important}
.dealtem-footer .footer-info{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px 26px!important;
  padding:20px 0 8px!important;
  font-size:11px!important;
  line-height:1.7!important;
  color:var(--dtp-sub)!important;
}
.dealtem-footer .footer-info strong{
  color:#344054!important;
  font-weight:800!important;
  margin-right:6px!important;
}
.dealtem-footer .footer-info a{
  color:#475467!important;
  text-decoration:none!important;
}
.dealtem-footer .footer-affiliate-note{
  max-width:760px!important;
  margin:0!important;
  font-size:10.5px!important;
  line-height:1.75!important;
  color:#7d8694!important;
}
.dealtem-footer .footer-bottom{
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-top:18px!important;
  padding-top:16px!important;
  border-top:1px solid #eef1f4!important;
  font-size:10px!important;
  line-height:1.65!important;
  color:#98a2b3!important;
}

/* =========================
   POLICY / INFO PAGES
========================= */
.legal-page{
  width:min(980px,calc(100% - 40px))!important;
  margin:34px auto 0!important;
}
.legal-hero{
  position:relative!important;
  overflow:hidden!important;
  padding:38px 42px!important;
  border:1px solid var(--dtp-line)!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 92% 12%, rgba(23,105,224,.09), transparent 28%),
    linear-gradient(135deg,#f8fafc 0%,#ffffff 62%)!important;
}
.legal-hero:after{
  content:""!important;
  position:absolute!important;
  width:150px!important;
  height:150px!important;
  right:-46px!important;
  bottom:-70px!important;
  border-radius:50%!important;
  background:rgba(23,105,224,.045)!important;
}
.legal-kicker{
  position:relative!important;
  z-index:1!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:23px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  background:#eef5ff!important;
  color:var(--dtp-blue)!important;
  font-size:8px!important;
  font-weight:850!important;
  letter-spacing:.65px!important;
}
.legal-hero h1{
  position:relative!important;
  z-index:1!important;
  margin:12px 0 10px!important;
  font-size:32px!important;
  line-height:1.22!important;
  letter-spacing:-1.25px!important;
  color:var(--dtp-navy)!important;
}
.legal-hero p{
  position:relative!important;
  z-index:1!important;
  max-width:760px!important;
  margin:0!important;
  color:var(--dtp-sub)!important;
  font-size:13px!important;
  line-height:1.85!important;
}

.legal-content{
  margin-top:18px!important;
  padding:0!important;
  display:grid!important;
  gap:12px!important;
}
.legal-section{
  padding:21px 24px!important;
  border:1px solid var(--dtp-line)!important;
  border-radius:16px!important;
  background:var(--dtp-card)!important;
  box-shadow:0 1px 0 rgba(16,24,40,.02)!important;
}
.legal-section h2{
  margin:0 0 12px!important;
  color:var(--dtp-navy)!important;
  font-size:18px!important;
  line-height:1.35!important;
  letter-spacing:-.55px!important;
}
.legal-section h3{
  margin:18px 0 8px!important;
  color:#344054!important;
  font-size:14px!important;
}
.legal-section p,
.legal-section li{
  color:#596273!important;
  font-size:12.5px!important;
  line-height:1.9!important;
}
.legal-section p{margin:0 0 8px!important}
.legal-section p:last-child{margin-bottom:0!important}
.legal-section ul{
  margin:8px 0 0!important;
  padding-left:20px!important;
}
.legal-section li+li{margin-top:3px!important}
.legal-section a{
  color:var(--dtp-blue)!important;
  text-decoration:none!important;
  font-weight:700!important;
}
.legal-section a:hover{text-decoration:underline!important}

.legal-table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  margin-top:8px!important;
  overflow:hidden!important;
  border:1px solid var(--dtp-line)!important;
  border-radius:12px!important;
  font-size:12px!important;
}
.legal-table th,
.legal-table td{
  padding:13px 15px!important;
  border:0!important;
  border-bottom:1px solid var(--dtp-line)!important;
  text-align:left!important;
  vertical-align:top!important;
  line-height:1.7!important;
}
.legal-table tr:last-child th,
.legal-table tr:last-child td{border-bottom:0!important}
.legal-table th{
  width:170px!important;
  background:#f8fafc!important;
  color:#344054!important;
  font-weight:800!important;
}
.legal-table td{color:#596273!important}

.legal-note{
  margin-top:14px!important;
  padding:14px 16px!important;
  border:1px solid #e8eef8!important;
  border-radius:12px!important;
  background:#f7faff!important;
  color:#667085!important;
  font-size:11.5px!important;
  line-height:1.75!important;
}
.contact-card{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:14px!important;
}
.contact-box{
  padding:20px!important;
  border:1px solid var(--dtp-line)!important;
  border-radius:14px!important;
  background:#fff!important;
}
.contact-box strong{
  display:block!important;
  margin-bottom:7px!important;
  color:#344054!important;
  font-size:12px!important;
}
.contact-box a{
  color:var(--dtp-blue)!important;
  font-size:14px!important;
  font-weight:850!important;
  text-decoration:none!important;
}

/* compact visual emphasis blocks */
.legal-mini-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:14px!important;
}
.legal-mini-card{
  padding:16px!important;
  border:1px solid var(--dtp-line)!important;
  border-radius:12px!important;
  background:#fafbfc!important;
}
.legal-mini-card b{
  display:block!important;
  margin-bottom:5px!important;
  color:#344054!important;
  font-size:12px!important;
}
.legal-mini-card span{
  color:#7b8492!important;
  font-size:11px!important;
  line-height:1.65!important;
}

@media(max-width:760px){
  .dealtem-footer .footer-shell,
  .legal-page{width:min(100% - 24px,980px)!important}
  .dealtem-footer .footer-top{grid-template-columns:1fr!important}
  .dealtem-footer .footer-links{justify-content:flex-start!important;gap:10px 16px!important}
  .dealtem-footer .footer-bottom{display:block!important}
  .dealtem-footer .footer-bottom span{display:block!important;margin-top:4px!important}

  .legal-page{margin-top:18px!important}
  .legal-hero{padding:28px 22px!important;border-radius:18px!important}
  .legal-hero h1{font-size:26px!important}
  .legal-content{gap:10px!important}
  .legal-section{padding:20px 18px!important}
  .legal-table th{width:110px!important}
  .contact-card,.legal-mini-grid{grid-template-columns:1fr!important}
}
