/* Satu Talenta site styles. Layout lives inline in the page markup (exported from the design);
   this file holds fonts, shared rules, responsive overrides and the site-only components. */

@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 600; font-display: swap; src: url(/assets/fonts/montserrat-600.woff2) format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 700; font-display: swap; src: url(/assets/fonts/montserrat-700.woff2) format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 800; font-display: swap; src: url(/assets/fonts/montserrat-800.woff2) format('woff2'); }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-400.woff2) format('woff2'); }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-500.woff2) format('woff2'); }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-600.woff2) format('woff2'); }
@font-face { font-family: 'Plus Jakarta Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url(/assets/fonts/plus-jakarta-sans-700.woff2) format('woff2'); }

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body { font-family: 'Plus Jakarta Sans', Arial, sans-serif; }
h1, h2, h3 { font-family: 'Montserrat', Arial, sans-serif; }
img, svg { max-width: 100%; }
[hidden] { display: none !important; }
:target { scroll-margin-top: 16px; }

/* Skip link */
.skip-link { position: absolute; left: 16px; top: -100px; z-index: 100; background: #0A3A74; color: #FFFFFF; font-weight: 700; padding: 12px 16px; border-radius: 10px; text-decoration: none; }
.skip-link:focus { top: 16px; color: #FFFFFF; }

/* Contact form */
.hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-status:empty { display: none; }
.form-status p { margin: 0; box-sizing: border-box; padding: 12px 14px; border-radius: 10px; font-size: 15px; line-height: 22px; font-weight: 600; }
.form-status .ok { background: #E8F3EC; color: #1D5A35; }
.form-status .err { background: #FDECEC; color: #8A1C1C; }
.form-status .err a { color: #8A1C1C; }
button[type="submit"][disabled] { opacity: 0.7; cursor: progress; }

/* Footer bar */
.foot-bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 24px; }
.foot-links { display: flex; flex-wrap: wrap; gap: 4px 24px; }
.foot-links a, .link-btn { display: inline-flex; align-items: center; min-height: 44px; color: #FFFFFF; font: inherit; font-weight: 600; }
.link-btn { background: none; border: 0; padding: 0; text-decoration: underline; cursor: pointer; }

/* Cookie choice */
.consent { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 50; max-width: 720px; margin: 0 auto; box-sizing: border-box; background: #FFFFFF; color: #111111; border: 1px solid #E3E7ED; border-radius: 16px; padding: 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; box-shadow: 0 8px 32px rgba(10, 58, 116, 0.18); }
.consent p { flex: 1 1 320px; margin: 0; font-size: 14px; line-height: 22px; color: #3A4352; }
.consent-actions { display: flex; gap: 12px; }
.btn { min-height: 48px; padding: 0 22px; border-radius: 12px; font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
.btn-solid { background: #0A3A74; color: #FFFFFF; border: 0; }
.btn-ghost { background: #FFFFFF; color: #0A3A74; border: 1.5px solid #0A3A74; }

/* Simple pages: privacy, 404 */
.doc-head { background: #FFFFFF; border-bottom: 1px solid #E3E7ED; }
.doc-head div, .doc { max-width: 760px; margin: 0 auto; box-sizing: border-box; padding: 16px 20px; }
.doc-head a { display: inline-flex; align-items: center; min-height: 48px; }
.doc { padding-top: 56px; padding-bottom: 96px; color: #3A4352; font-size: 16px; line-height: 27px; }
.doc h1 { margin: 0 0 16px; font-size: clamp(2rem, 5vw, 2.75rem); line-height: 1.15; font-weight: 800; color: #0A3A74; }
.doc h2 { margin: 40px 0 12px; font-size: 22px; line-height: 30px; font-weight: 700; color: #0A3A74; }
.doc ul { padding-left: 22px; }
.doc p, .doc li { text-wrap: balance; }
.doc .meta { color: #5B6472; font-size: 14px; }
.doc .todo { background: #FFF1E5; color: #8A3F06; border-radius: 6px; padding: 2px 6px; font-weight: 600; }
.doc .back { display: inline-flex; align-items: center; min-height: 52px; padding: 0 28px; border-radius: 12px; background: #0A3A74; color: #FFFFFF; font-weight: 700; text-decoration: none; }

/* From the design */
h1,h2,h3,p,li,div,span,a,label{text-wrap:balance}
.lp-logo{flex:1 1 auto}
@container (max-width:640px){.lp-int{grid-template-columns:repeat(2,minmax(0,1fr)) !important;grid-template-rows:none !important}.lp-int>*{grid-column:auto !important;grid-row:auto !important}.lp-int>.lp-hub{grid-column:1 / -1 !important;margin-bottom:8px}.lp-lines{display:none}}
@container (max-width:480px){.lp-int{gap:8px !important}.lp-card{min-height:0 !important;padding:10px 12px !important;align-self:stretch !important}.lp-card .lp-ico{display:none !important}}
@container (max-width:379px){.lp-int{grid-template-columns:minmax(0,1fr) !important}.lp-card .lp-txt{flex-direction:row !important;justify-content:space-between;align-items:baseline;flex-grow:1;gap:12px}}
@container (max-width:760px){.lp-links{order:3;width:100%;column-gap:24px !important}.lp-logo img{width:136px !important}.lp-cta{padding:0 16px !important;font-size:14px !important}}
@container (max-width:480px){.lp-links{display:none !important}.lp-proj-head{flex-direction:column}.lp-btns>a{flex:1 1 100%}}
summary::-webkit-details-marker{display:none}
details[open] .lp-chev{transform:rotate(180deg)}
summary:focus-visible{outline:3px solid #E8650F;outline-offset:2px}
a{color:#0A3A74}a:hover{color:#072A55}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #E8650F;outline-offset:2px}
body{margin:0;background:#072A55}
