/* Cookie consent and legal pages */
.cookie-consent{
    position:fixed;
    left:24px;
    right:24px;
    bottom:24px;
    z-index:10000;
    display:none;
    max-width:1180px;
    margin:0 auto;
    padding:24px;
    background:#fff;
    border:1px solid rgba(7,53,92,.13);
    border-radius:18px;
    box-shadow:0 24px 70px rgba(0,16,34,.28);
    color:#09233d;
}
.cookie-consent.is-visible{display:block;animation:cookieConsentIn .28s ease-out both;}
.cookie-consent__layout{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;}
.cookie-consent__icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,var(--blue),#0067a6);color:#fff;font-size:24px;box-shadow:0 12px 24px rgba(0,103,166,.2);}
.cookie-consent__content{min-width:0;}
.cookie-consent__title{margin:0 0 6px;font-size:20px;line-height:1.25;color:#061b34;}
.cookie-consent__text{margin:0;color:#49617a;font-size:14px;line-height:1.58;}
.cookie-consent__links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:10px;}
.cookie-consent__links a{color:var(--blue);font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px;}
.cookie-consent__actions{display:flex;align-items:center;gap:10px;}
.cookie-consent__button{min-width:132px;height:46px;padding:0 20px;border-radius:10px;border:1px solid transparent;font:inherit;font-size:14px;font-weight:900;cursor:pointer;transition:.2s ease;}
.cookie-consent__button--accept{background:linear-gradient(135deg,var(--blue),#0067a6);color:#fff;box-shadow:0 10px 22px rgba(0,103,166,.22);}
.cookie-consent__button--accept:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,103,166,.28);}
.cookie-consent__button--reject{background:#f4f7fa;border-color:#d8e2eb;color:#173b5d;}
.cookie-consent__button--reject:hover{background:#eaf1f6;}
.cookie-consent__button:focus-visible,.cookie-settings-link:focus-visible{outline:3px solid rgba(0,103,166,.3);outline-offset:3px;}
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;padding-top:24px;padding-bottom:30px;margin-top:28px;border-top:1px solid rgba(255,255,255,.18);}
.footer-legal a,.footer-legal button{color:rgba(255,255,255,.84);font:inherit;font-size:13px;text-decoration:none;background:none;border:0;padding:0;cursor:pointer;}
.footer-legal a:hover,.footer-legal button:hover{color:#fff;text-decoration:underline;text-underline-offset:4px;}
.legal-page{background:#f5f8fb;}
.legal-document{max-width:980px;margin:0 auto;background:#fff;border:1px solid #e1e8ef;border-radius:18px;padding:clamp(28px,4vw,56px);box-shadow:0 18px 45px rgba(6,27,52,.07);}
.legal-document__meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid #e5ebf1;color:#60758a;font-size:14px;}
.legal-document h2{margin:34px 0 14px;font-size:clamp(22px,2.5vw,30px);line-height:1.25;color:#061b34;}
.legal-document h2:first-of-type{margin-top:0;}
.legal-document h3{margin:24px 0 10px;font-size:19px;color:#0a3458;}
.legal-document p,.legal-document li{color:#425b72;font-size:16px;line-height:1.72;}
.legal-document ul,.legal-document ol{margin:12px 0 18px;padding-left:24px;}
.legal-document a{color:var(--blue);font-weight:800;}
.legal-note{margin:28px 0 0;padding:18px 20px;border-left:4px solid #0067a6;background:#f1f8fc;border-radius:0 10px 10px 0;color:#274d6b;}
@keyframes cookieConsentIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){
    .cookie-consent{left:16px;right:16px;bottom:16px;padding:20px;}
    .cookie-consent__layout{grid-template-columns:auto minmax(0,1fr);}
    .cookie-consent__actions{grid-column:1/-1;justify-content:flex-end;}
}
@media(max-width:620px){
    .cookie-consent{left:10px;right:10px;bottom:10px;padding:17px;border-radius:14px;max-height:calc(100vh - 20px);overflow:auto;}
    .cookie-consent__layout{grid-template-columns:1fr;gap:13px;}
    .cookie-consent__icon{width:44px;height:44px;border-radius:12px;font-size:20px;}
    .cookie-consent__title{font-size:18px;}
    .cookie-consent__actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr;width:100%;}
    .cookie-consent__button{width:100%;min-width:0;padding:0 12px;}
    .footer-legal{align-items:flex-start;flex-direction:column;}
    .legal-document{padding:24px 18px;border-radius:12px;}
}
@media(prefers-reduced-motion:reduce){.cookie-consent.is-visible{animation:none}.cookie-consent__button{transition:none}}

/* User agreement page */
.agreement-section{padding-top:46px;}
.agreement-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 28px;}
.agreement-summary__item{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start;padding:22px;background:#fff;border:1px solid #e1e8ef;border-radius:16px;box-shadow:0 12px 30px rgba(6,27,52,.05);}
.agreement-summary__item>i{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--blue),#0067a6);color:#fff;font-size:21px;box-shadow:0 10px 22px rgba(0,103,166,.18);}
.agreement-summary__item strong{display:block;margin:2px 0 6px;color:#061b34;font-size:16px;line-height:1.35;}
.agreement-summary__item span{display:block;color:#5a7085;font-size:13px;line-height:1.55;}
.agreement-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start;}
.agreement-toc__inner{position:sticky;top:24px;padding:24px;background:#fff;border:1px solid #e1e8ef;border-radius:16px;box-shadow:0 14px 35px rgba(6,27,52,.05);}
.agreement-toc__label{display:block;margin:0 0 14px;color:#061b34;font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;}
.agreement-toc nav{display:grid;gap:2px;}
.agreement-toc nav a{display:block;padding:7px 9px;border-radius:8px;color:#4a6278;font-size:13px;line-height:1.35;text-decoration:none;transition:background .18s ease,color .18s ease;}
.agreement-toc nav a:hover{background:#eef7fb;color:var(--blue);}
.agreement-toc__privacy{display:flex;align-items:center;gap:8px;margin-top:17px;padding-top:17px;border-top:1px solid #e5ebf1;color:var(--blue);font-size:13px;font-weight:800;text-decoration:none;}
.agreement-document{max-width:none;}
.agreement-document section{scroll-margin-top:24px;}
.agreement-document section+section{margin-top:10px;padding-top:2px;}
.agreement-document .legal-document__meta i{margin-right:6px;color:#079bc8;}
.agreement-intro{margin:0 0 30px;padding:22px 24px;border:1px solid #cfe5f1;border-radius:14px;background:linear-gradient(135deg,#f1f9fd,#f8fbfd);}
.agreement-intro p{margin:10px 0 0;color:#294d68;}
.legal-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 11px;border-radius:999px;background:#0067a6;color:#fff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;}
.agreement-company-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:18px 0 22px;overflow:hidden;border:1px solid #dbe6ee;border-radius:14px;background:#dbe6ee;}
.agreement-company-card>div{padding:18px 20px;background:#f8fbfd;}
.agreement-company-card span{display:block;margin-bottom:6px;color:#6b8194;font-size:12px;text-transform:uppercase;letter-spacing:.04em;}
.agreement-company-card strong{display:block;color:#163954;font-size:14px;line-height:1.55;}
.agreement-company-card a{font-weight:800;}
@media(max-width:1080px){
    .agreement-layout{grid-template-columns:1fr;}
    .agreement-toc__inner{position:static;}
    .agreement-toc nav{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:820px){
    .agreement-summary{grid-template-columns:1fr;}
    .agreement-summary__item{grid-template-columns:46px minmax(0,1fr);}
    .agreement-summary__item>i{width:46px;height:46px;border-radius:12px;}
}
@media(max-width:620px){
    .agreement-section{padding-top:30px;}
    .agreement-toc__inner{padding:20px 16px;}
    .agreement-toc nav{grid-template-columns:1fr;}
    .agreement-summary__item{padding:18px;}
    .agreement-intro{padding:18px;}
    .agreement-company-card{grid-template-columns:1fr;}
    .agreement-company-card>div{padding:16px;}
}

/* Privacy policy page */
.privacy-section{padding-top:46px;}
.privacy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 28px;}
.privacy-summary__item{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start;padding:22px;background:#fff;border:1px solid #e1e8ef;border-radius:16px;box-shadow:0 12px 30px rgba(6,27,52,.05);}
.privacy-summary__item>i{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--blue),#0067a6);color:#fff;font-size:21px;box-shadow:0 10px 22px rgba(0,103,166,.18);}
.privacy-summary__item strong{display:block;margin:2px 0 6px;color:#061b34;font-size:16px;line-height:1.35;}
.privacy-summary__item span{display:block;color:#5a7085;font-size:13px;line-height:1.55;}
.privacy-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start;}
.privacy-toc__inner{position:sticky;top:24px;padding:24px;background:#fff;border:1px solid #e1e8ef;border-radius:16px;box-shadow:0 14px 35px rgba(6,27,52,.05);}
.privacy-toc__label{display:block;margin:0 0 14px;color:#061b34;font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;}
.privacy-toc nav{display:grid;gap:2px;}
.privacy-toc nav a{display:block;padding:7px 9px;border-radius:8px;color:#4a6278;font-size:13px;line-height:1.35;text-decoration:none;transition:background .18s ease,color .18s ease;}
.privacy-toc nav a:hover{background:#eef7fb;color:var(--blue);}
.privacy-toc__agreement{display:flex;align-items:center;gap:8px;margin-top:17px;padding-top:17px;border-top:1px solid #e5ebf1;color:var(--blue);font-size:13px;font-weight:800;text-decoration:none;}
.privacy-document{max-width:none;}
.privacy-document section{scroll-margin-top:24px;}
.privacy-document section+section{margin-top:10px;padding-top:2px;}
.privacy-document .legal-document__meta i{margin-right:6px;color:#079bc8;}
.privacy-intro{margin:0 0 30px;padding:22px 24px;border:1px solid #cfe5f1;border-radius:14px;background:linear-gradient(135deg,#f1f9fd,#f8fbfd);}
.privacy-intro p{margin:10px 0 0;color:#294d68;}
.privacy-company-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:18px 0 22px;overflow:hidden;border:1px solid #dbe6ee;border-radius:14px;background:#dbe6ee;}
.privacy-company-card>div{padding:18px 20px;background:#f8fbfd;}
.privacy-company-card span{display:block;margin-bottom:6px;color:#6b8194;font-size:12px;text-transform:uppercase;letter-spacing:.04em;}
.privacy-company-card strong{display:block;color:#163954;font-size:14px;line-height:1.55;}
.privacy-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 24px;}
.privacy-data-card{padding:22px;border:1px solid #dfe8ef;border-radius:14px;background:#f9fbfd;}
.privacy-data-card>i{display:grid;place-items:center;width:44px;height:44px;margin-bottom:15px;border-radius:12px;background:#e8f5fb;color:#0073ac;font-size:18px;}
.privacy-data-card h3{margin:0 0 12px;font-size:17px;}
.privacy-data-card ul{margin:0;padding-left:18px;}
.privacy-data-card li{font-size:14px;line-height:1.6;}
.privacy-warning{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;margin:22px 0;padding:20px;border:1px solid #f0d9a7;border-radius:14px;background:#fffaf0;}
.privacy-warning>i{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:#fff0c9;color:#b27300;font-size:20px;}
.privacy-warning strong{display:block;margin:1px 0 6px;color:#604817;font-size:16px;}
.privacy-warning p{margin:0;color:#715f36;font-size:14px;line-height:1.65;}
.privacy-purpose-table{margin:18px 0 24px;overflow:hidden;border:1px solid #dbe6ee;border-radius:14px;}
.privacy-purpose-table__head,.privacy-purpose-table__row{display:grid;grid-template-columns:1.05fr 1.2fr 1.1fr;}
.privacy-purpose-table__head{background:#073c64;color:#fff;font-size:13px;font-weight:900;}
.privacy-purpose-table__head span,.privacy-purpose-table__row>span{padding:15px 16px;border-right:1px solid #dbe6ee;}
.privacy-purpose-table__head span:last-child,.privacy-purpose-table__row>span:last-child{border-right:0;}
.privacy-purpose-table__row{background:#fff;border-top:1px solid #dbe6ee;color:#425b72;font-size:14px;line-height:1.55;}
.privacy-purpose-table__row:nth-child(odd){background:#f8fbfd;}
.privacy-purpose-table__row strong{display:block;margin-bottom:4px;color:#173954;font-size:14px;}
.privacy-purpose-table__row small{display:block;color:#71869a;font-size:12px;line-height:1.45;}
.privacy-inline-button{display:inline;padding:0;border:0;background:none;color:var(--blue);font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer;}
.privacy-inline-button:focus-visible{outline:3px solid rgba(0,103,166,.3);outline-offset:3px;}
@media(max-width:1080px){
    .privacy-layout{grid-template-columns:1fr;}
    .privacy-toc__inner{position:static;}
    .privacy-toc nav{grid-template-columns:repeat(2,minmax(0,1fr));}
    .privacy-data-grid{grid-template-columns:1fr;}
}
@media(max-width:820px){
    .privacy-summary{grid-template-columns:1fr;}
    .privacy-summary__item{grid-template-columns:46px minmax(0,1fr);}
    .privacy-summary__item>i{width:46px;height:46px;border-radius:12px;}
    .privacy-purpose-table__head{display:none;}
    .privacy-purpose-table__row{grid-template-columns:1fr;}
    .privacy-purpose-table__row>span{border-right:0;border-bottom:1px solid #e4ebf1;}
    .privacy-purpose-table__row>span:last-child{border-bottom:0;}
}
@media(max-width:620px){
    .privacy-section{padding-top:30px;}
    .privacy-toc__inner{padding:20px 16px;}
    .privacy-toc nav{grid-template-columns:1fr;}
    .privacy-summary__item{padding:18px;}
    .privacy-intro{padding:18px;}
    .privacy-company-card{grid-template-columns:1fr;}
    .privacy-company-card>div{padding:16px;}
    .privacy-warning{grid-template-columns:1fr;padding:17px;}
}
