/* KEYNA SHOP — Pages institutionnelles, CGU, confidentialité, retours et support */
.ks-legal-wrap{max-width:1190px!important;width:calc(100% - 32px)!important;margin:0 auto;padding-top:32px;padding-bottom:56px}
.ks-legal-wrap>.panel{padding:clamp(24px,4vw,48px)!important;border-radius:22px;background:#fff;border:1px solid #e1e9e1;box-shadow:0 14px 55px rgba(7,66,42,.06)}
.ks-legal-wrap,.ks-legal-wrap *{box-sizing:border-box}
.ks-legal-wrap p,.ks-legal-wrap li{color:#30483d;font-size:15px;line-height:1.85;overflow-wrap:anywhere}
.ks-legal-wrap a{color:#075b3b;text-decoration:underline;text-underline-offset:3px;font-weight:650}
.ks-legal-wrap a:focus-visible,.ks-report-form button:focus-visible{outline:3px solid #e7ab29;outline-offset:3px}
.ks-legal-intro{padding:clamp(23px,4vw,46px);background:linear-gradient(135deg,#053d2e,#0b6242);color:#fff;border-radius:20px;margin-bottom:33px;position:relative;overflow:hidden}
.ks-legal-intro:after{content:'';position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(237,183,60,.1);right:-60px;top:-90px;pointer-events:none}
.ks-legal-intro h1{font-size:clamp(27px,3.6vw,42px);line-height:1.18;color:#fff!important;margin:10px 0 13px;font-weight:850}
.ks-legal-intro p{max-width:780px;color:#eef7ee!important;font-size:clamp(14px,1.6vw,17px);margin:0 0 14px}
.ks-legal-intro small{color:#f0c661;font-weight:650}
.ks-legal-intro .ks-eyebrow{color:#f5c657!important;font-weight:800;font-size:11px;letter-spacing:2px}
.ks-legal-clause{padding:22px 0;border-bottom:1px solid #e2eae4;scroll-margin-top:30px}
.ks-legal-clause:last-child{border-bottom:0}
.ks-legal-clause h2{font-size:clamp(19px,2vw,23px)!important;color:#073f30!important;margin:0 0 14px!important;line-height:1.35}
.ks-legal-wrap strong{color:#143c2c}
.ks-legal-wrap ul,.ks-legal-wrap ol{padding-left:25px;margin:12px 0}
.ks-legal-wrap li{padding-left:4px;margin:6px 0}
.ks-legal-wrap blockquote{background:#f4f9f5;border-left:4px solid #dfaa29;padding:18px 22px;color:#203d2f;line-height:1.85;margin:20px 0;border-radius:0 10px 10px 0}
.ks-legal-cta{background:#efb72e!important;color:#103b2c!important;border:0;border-radius:12px;font-weight:800;padding:13px 20px;display:inline-flex;justify-content:center;align-items:center;min-height:48px;text-decoration:none!important;cursor:pointer}
.ks-legal-cta:hover{background:#f5c957!important}
.ks-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:start}
.ks-contact-info{background:#f4f8f3;border-radius:18px;padding:26px;border:1px solid #e0e9df}
.ks-contact-info h2,.ks-report-form h2{color:#073f30!important;font-size:22px;margin:0 0 16px}
.ks-contact-links{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.ks-report-form{padding:25px;border-radius:18px;border:1px solid #dfe8e0;display:flex;flex-direction:column;gap:16px;background:#fff}
.ks-report-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#244a37;font-size:13px}
.ks-report-form input:not([type=checkbox]),.ks-report-form select,.ks-report-form textarea{width:100%;min-width:0;border:1px solid #cbd9d0;border-radius:10px;padding:13px 12px;font:inherit;font-size:14px;color:#103f2f;background:#fff;outline:none}
.ks-report-form :is(input,select,textarea):focus-visible{border-color:#0a6141;box-shadow:0 0 0 3px #e0eee5}
.ks-contact-two{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.ks-report-form .ks-consent-row{flex-direction:row;align-items:flex-start;gap:10px;line-height:1.5;font-weight:400}
.ks-consent-row input{margin-top:4px;width:16px;height:16px;flex-shrink:0;accent-color:#075b3b}
.ks-report-form .ks-tiny{font-size:12px;color:#6a786f;line-height:1.6}
.ks-bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:780px){.ks-contact-grid{grid-template-columns:1fr}.ks-legal-wrap>.panel{padding:16px!important}.ks-contact-info,.ks-report-form{padding:18px}}
@media(max-width:550px){.ks-contact-two{grid-template-columns:1fr}.ks-legal-wrap{width:calc(100% - 18px)!important;padding:16px 0 35px}.ks-legal-clause{padding:18px 0}.ks-legal-wrap p,.ks-legal-wrap li{font-size:14px;line-height:1.75}}
