/* ============ DKS Furnitures - legal & policy pages ============
   Used by Privacy Policy, Terms, Shipping and Refund pages.
   Layout: gradient page head + sticky contents rail + white document card. */

@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* ---------- page head ---------- */
.dks-legal-hero .elementor-heading-title{
font-size:var(--dks-fs-h1);font-weight:800;letter-spacing:var(--dks-ls-0);
line-height:1.06;text-transform:uppercase;color:var(--dks-cream)}
.dks-legal-hero .dks-legal-sub p{
font-size:var(--dks-fs-lead);line-height:1.8;color:rgba(243,237,226,.72);max-width:62ch;margin:0 auto}
.dks-legal-stamp p{
display:inline-block;margin:0;font-size:var(--dks-fs-xs);font-weight:600;
letter-spacing:var(--dks-ls-md);text-transform:uppercase;color:var(--dks-gold);
border:1px solid rgba(233,185,97,.45);background:rgba(233,185,97,.10);
border-radius:var(--dks-pill);padding:8px 16px}

/* ---------- two-column body ---------- */
.dks-legal-grid>.e-con-inner{
display:grid;grid-template-columns:minmax(0,252px) minmax(0,1fr);
gap:clamp(26px,3.4vw,58px);align-items:start;width:100%}
.dks-legal-grid>.e-con-inner>.e-con{--width:auto;max-width:none;min-width:0}
.dks-legal-aside{position:sticky;top:104px}

/* ---------- contents rail ---------- */
.dks-legal-toc{background:var(--dks-white);border:1px solid var(--dks-line);
border-radius:var(--dks-radius);padding:22px 20px}
.dks-toc-title{font-size:var(--dks-fs-xs);font-weight:600;letter-spacing:var(--dks-ls-lg);
text-transform:uppercase;color:var(--dks-muted);margin:0 0 12px}
.dks-legal-toc ol{list-style:none;margin:0;padding:0;counter-reset:dkstoc}
.dks-legal-toc li{counter-increment:dkstoc;margin:0}
.dks-legal-toc a{display:flex;gap:9px;align-items:baseline;
font-size:var(--dks-fs-md);line-height:1.45;color:var(--dks-text);text-decoration:none;
padding:7px 0 7px 11px;border-left:2px solid transparent;
transition:color var(--dks-dur) ease,border-color var(--dks-dur) ease}
.dks-legal-toc a::before{content:counter(dkstoc,decimal-leading-zero);
font-size:var(--dks-fs-xs);font-weight:700;letter-spacing:.06em;
color:var(--dks-gold-text);flex:none;min-width:17px}
.dks-legal-toc a:hover{color:var(--dks-gold-text)}
.dks-legal-toc a.is-active{font-weight:600;border-left-color:var(--dks-gold-deep)}

/* ---------- help card ---------- */
.dks-legal-help{margin-top:16px;background:var(--dks-ink);border-radius:var(--dks-radius);padding:22px 20px}
.dks-legal-help h3{font-size:var(--dks-fs-lg);font-weight:600;color:var(--dks-cream);margin:0 0 7px;letter-spacing:var(--dks-ls-tight)}
.dks-legal-help p{font-size:var(--dks-fs-md);line-height:1.7;color:rgba(243,237,226,.72);margin:0 0 13px}
.dks-legal-help .dks-help-link{display:block;font-size:var(--dks-fs-md);color:var(--dks-gold);
text-decoration:none;padding:3px 0;word-break:break-word}
.dks-legal-help .dks-help-link:hover{text-decoration:underline}

/* ---------- document card ---------- */
.dks-legal-main{counter-reset:dkssec;background:var(--dks-white);border:1px solid var(--dks-line);
border-radius:var(--dks-radius);padding:clamp(24px,3.6vw,52px)}
.dks-legal-main>.e-con-inner{display:block;width:100%}
.dks-legal-main .elementor-widget:not(:last-child){margin-block-end:0}

.dks-legal-main h2{counter-increment:dkssec;display:flex;gap:13px;align-items:baseline;
font-size:var(--dks-fs-h3);font-weight:600;letter-spacing:var(--dks-ls-tight);line-height:1.25;
color:var(--dks-text);scroll-margin-top:118px;
border-top:1px solid var(--dks-line);margin:36px 0 15px;padding-top:34px}
.dks-legal-main h2::before{content:counter(dkssec,decimal-leading-zero);
font-size:var(--dks-fs-sm);font-weight:700;letter-spacing:var(--dks-ls-sm);
color:var(--dks-gold-large);flex:none;position:relative;top:-2px}
.dks-legal-doc .dks-legal-lead+h2{border-top:0;margin-top:0;padding-top:0}

.dks-legal-main p{font-size:var(--dks-fs-base);line-height:1.85;color:var(--dks-text);margin:0 0 14px}
.dks-legal-main p:last-child{margin-bottom:0}
.dks-legal-main .dks-legal-lead{font-size:var(--dks-fs-xl);line-height:1.7;color:var(--dks-text);
margin:0 0 26px;padding-bottom:26px;border-bottom:1px solid var(--dks-line)}
.dks-legal-main strong{font-weight:600;color:var(--dks-ink)}
.dks-legal-main a{color:var(--dks-gold-text);text-decoration:underline;text-underline-offset:3px}
.dks-legal-main a:hover{color:var(--dks-ink)}

/* ---------- bullet grids ---------- */
.dks-legal-main ul{list-style:none;margin:4px 0 20px;padding:0;
display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}
.dks-legal-main ul li{position:relative;padding:7px 0 7px 21px;
font-size:var(--dks-fs-md);line-height:1.6;color:var(--dks-text)}
.dks-legal-main ul li::before{content:"";position:absolute;left:3px;top:14px;
width:6px;height:6px;border-radius:50%;background:var(--dks-gold-deep)}

/* ---------- contact card ---------- */
.dks-legal-contact{background:var(--dks-ink);border-radius:var(--dks-radius);
padding:clamp(22px,3vw,32px);margin:4px 0 18px}
.dks-legal-main .dks-contact-brand{font-size:var(--dks-fs-xs);font-weight:700;letter-spacing:var(--dks-ls-lg);
text-transform:uppercase;color:var(--dks-gold);margin:0 0 17px;line-height:1.6}
.dks-legal-main ul.dks-contact-list{list-style:none;margin:0;padding:0;
display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 30px}
.dks-legal-main ul.dks-contact-list li{display:flex;flex-direction:column;gap:2px;padding:0}
.dks-legal-main ul.dks-contact-list li::before{display:none}
.dks-contact-list .dks-contact-label{font-size:var(--dks-fs-xs);letter-spacing:var(--dks-ls-md);
text-transform:uppercase;color:rgba(243,237,226,.55)}
.dks-contact-list .dks-contact-val,.dks-legal-main .dks-contact-list a{
color:rgba(243,237,226,.82);font-size:var(--dks-fs-md);line-height:1.6;text-decoration:none}
.dks-legal-main .dks-contact-list a:hover{color:var(--dks-gold);text-decoration:underline}
.dks-contact-list .dks-contact-wide{grid-column:1/-1}

/* ---------- closing consent note ---------- */
.dks-legal-consent{background:var(--dks-cream);border:1px solid var(--dks-line);
border-left:3px solid var(--dks-gold-deep);border-radius:var(--dks-radius);
padding:22px 24px;margin-top:6px}
.dks-legal-main .dks-legal-consent p{margin:0;font-size:var(--dks-fs-md);line-height:1.8}

/* ---------- responsive ---------- */
@media (max-width:1024px){
.dks-legal-grid>.e-con-inner{grid-template-columns:minmax(0,1fr);gap:26px}
.dks-legal-aside{position:static}
.dks-legal-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
}
@media (max-width:767px){
.dks-legal-main ul,.dks-legal-main ul.dks-contact-list,.dks-legal-toc ol{grid-template-columns:minmax(0,1fr)}
.dks-legal-main h2{margin-top:28px;padding-top:26px;gap:10px}
}
