.sgj {
    --sgj-ivory: #fff9ed;
    --sgj-paper: #fffdf8;
    --sgj-ink: #172033;
    --sgj-muted: #5c6473;
    --sgj-blue: #2455e6;
    --sgj-blue-dark: #173fb9;
    --sgj-yellow: #f4b73b;
    --sgj-mint: #aeeccf;
    --sgj-line: #ded4c4;
    margin: 0;
    background: var(--sgj-ivory);
    color: var(--sgj-ink);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.5;
}
.sgj *, .sgj *:before, .sgj *:after { box-sizing: border-box; }
.sgj button, .sgj input, .sgj select, .sgj textarea { font: inherit; color: inherit; }
.sgj button, .sgj a { -webkit-tap-highlight-color: transparent; }
.sgj button:focus, .sgj a:focus, .sgj input:focus, .sgj select:focus, .sgj textarea:focus { outline: 3px solid rgba(36,85,230,.28); outline-offset: 3px; }
.sgj [hidden] { display: none !important; }
.sgj-header {
    width: min(1344px, calc(100% - 64px));
    min-height: 94px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 28px;
    border-bottom: 1px solid rgba(23,32,51,.09);
}

#main-content {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.sgj {
    width: 100%;
    max-width: none;
    margin: 0;
}

.sgj-brand { display: inline-flex; align-items: center; gap: 15px; width: max-content; color: var(--sgj-ink); text-decoration: none; }
.sgj-brand strong { font-size: 27px; letter-spacing: -.06em; }
.sgj-brand i { width: 1px; height: 29px; background: var(--sgj-ink); opacity: .6; }
.sgj-brand span { font-size: 16px; font-style: normal; font-weight: 700; }
.sgj-header nav { display: flex; align-items: center; gap: 35px; }
.sgj-header nav a { color: var(--sgj-ink); font-size: 14px; font-weight: 700; text-decoration: none; }
.sgj-header nav a:hover { color: var(--sgj-blue); }
.sgj-header nav b { display: inline-grid; place-items: center; min-width: 19px; height: 19px; padding: 0 5px; border-radius: 99px; background: var(--sgj-blue); color: #fff; font-size: 10px; }
.sgj-badge { justify-self: end; padding: 11px 17px; border: 1px solid rgba(23,32,51,.15); border-radius: 9px; background: var(--sgj-yellow); font-size: 13px; font-weight: 800; box-shadow: 0 5px 0 rgba(23,32,51,.08); }
.sgj-hero {
    width: min(1344px, calc(100% - 64px));
    min-height: 680px;
    margin: 0 auto;
    padding: 52px 0 46px;
    display: grid;
    grid-template-columns: minmax(0,.86fr) minmax(600px,1.14fr);
    gap: 52px;
    align-items: center;
}
.sgj-shapes { height: 46px; margin-bottom: 20px; display: flex; gap: 12px; align-items: center; }
.sgj-shapes i { display: block; width: 44px; height: 44px; background: var(--sgj-blue); border-radius: 50%; }
.sgj-shapes i:nth-child(2) { width: 54px; border-radius: 44px 0 0 0; background: var(--sgj-yellow); }
.sgj-shapes i:nth-child(3) { width: 44px; border-radius: 7px; background: radial-gradient(circle, #62c99e 3px, transparent 4px) 0 0/14px 14px; }
.sgj-eyebrow, .sgj-section-intro > span, .sgj-focus > div:first-child > span, .sgj-result-head > div > span { margin: 0 0 10px; color: var(--sgj-blue); font-size: 12px; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.sgj-hero h1 { max-width: 610px; margin: 0; font-size: clamp(47px,4.4vw,69px); line-height: .99; letter-spacing: -.061em; }
.sgj-lead { max-width: 600px; margin: 24px 0 0; color: #31394a; font-size: 18px; line-height: 1.6; }
.sgj-actions { display: flex; gap: 13px; margin-top: 28px; }
.sgj-button { min-height: 52px; padding: 0 23px; border: 2px solid transparent; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; font-size: 14px; font-weight: 800; text-decoration: none; cursor: pointer; transition: transform .18s ease, background .18s ease; }
.sgj-button:hover { transform: translateY(-2px); }
.sgj-primary { border-color: var(--sgj-blue) !important; background: var(--sgj-blue) !important; color: #fff !important; box-shadow: 0 6px 0 rgba(23,63,185,.17); }
.sgj-primary:hover { background: var(--sgj-blue-dark) !important; }
.sgj-secondary { border-color: var(--sgj-ink); background: transparent; }
.sgj-local { width: max-content; max-width: 100%; margin: 18px 0 0; padding: 9px 12px; border: 1px solid #b9dfcf; border-radius: 99px; background: #eefaf5; color: #285a47; font-size: 11px; font-weight: 780; }
.sgj-local span { margin-right: 5px; color: #48ad83; }
.sgj-proofs { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 32px; }
.sgj-proofs article { min-height: 72px; padding: 10px 12px; border: 1px solid var(--sgj-line); border-radius: 11px; background: rgba(255,253,248,.7); display: flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 750; }
.sgj-proofs b { flex: 0 0 40px; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: var(--sgj-blue); color: #fff; font-size: 18px; }
.sgj-proofs article:nth-child(2) b { background: var(--sgj-yellow); color: var(--sgj-ink); }
.sgj-proofs article:nth-child(3) b { background: #68caa4; }
.sgj-format-panel { padding: 32px; border: 1.5px solid rgba(23,32,51,.55); border-radius: 17px; background: rgba(255,253,248,.94); box-shadow: 0 18px 44px rgba(23,32,51,.08); }
.sgj-format-panel > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 24px; }
.sgj-format-panel > header span { color: var(--sgj-blue); font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.sgj-format-panel h2 { margin: 5px 0 0; font-size: 29px; line-height: 1.1; letter-spacing: -.04em; }
.sgj-format-panel > header small { padding: 7px 10px; border-radius: 99px; background: #eef2ff; color: var(--sgj-blue-dark); font-size: 11px; font-weight: 800; }
.sgj-format-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 11px; }
.sgj-format-card { position: relative; min-height: 152px; padding: 15px 7px; border: 1.5px solid var(--sgj-line); border-radius: 13px; background: var(--sgj-paper); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 11px; cursor: pointer; }
.sgj-format-card:hover { border-color: rgba(36,85,230,.55); transform: translateY(-2px); }
.sgj-format-card.is-selected { border: 3px solid var(--sgj-blue); }
.sgj-format-card.is-selected:after { content: "✓"; position: absolute; top: 7px; right: 7px; width: 25px; height: 25px; display: grid; place-items: center; border: 3px solid var(--sgj-paper); border-radius: 50%; background: var(--sgj-blue); color: #fff; font-size: 12px; }
.sgj-format-card i { width: 76px; height: 72px; display: grid; place-items: center; border-radius: 15px; background: var(--sgj-mint); font-size: 38px; font-style: normal; }
.sgj-format-card:nth-child(3n+1) i { background: var(--sgj-blue); color: #fff; }
.sgj-format-card:nth-child(3n+2) i { background: var(--sgj-yellow); }
.sgj-format-card strong { font-size: 12px; line-height: 1.15; text-align: center; }
.sgj-format-panel > footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 19px; padding-top: 18px; border-top: 1px solid var(--sgj-line); }
.sgj-format-panel > footer p { margin: 0; color: var(--sgj-muted); font-size: 12px; }
.sgj-compact { min-height: 44px; padding: 0 16px; font-size: 12px; }
.sgj-kit-strip { padding: 29px max(32px,calc((100% - 1344px)/2)); background: var(--sgj-ink); color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.sgj-kit-strip p { margin: 0; font-size: 17px; }
.sgj-kit-strip ul { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 9px; list-style: none; }
.sgj-kit-strip li { padding: 7px 10px; border-radius: 7px; background: var(--sgj-mint); color: var(--sgj-ink); font-size: 11px; font-weight: 800; }
.sgj-builder { padding: 108px max(32px,calc((100% - 1240px)/2)); background: radial-gradient(circle at 9% 14%,rgba(174,236,207,.3),transparent 24%), radial-gradient(circle at 92% 88%,rgba(244,183,59,.2),transparent 23%), #f4f2e9; }
.sgj-section-intro { max-width: 790px; margin: 0 auto 44px; text-align: center; }
.sgj-section-intro h2 { margin: 9px 0 16px; font-size: clamp(37px,4vw,56px); line-height: 1.04; letter-spacing: -.055em; }
.sgj-section-intro p { margin: 0; color: var(--sgj-muted); font-size: 17px; line-height: 1.65; }
.sgj-builder-shell { display: grid; grid-template-columns: 270px minmax(0,1fr); gap: 27px; align-items: start; }
.sgj-summary { position: sticky; top: 20px; padding: 27px; border-radius: 16px; background: var(--sgj-ink); color: #fff; box-shadow: 0 16px 42px rgba(23,32,51,.14); }
.sgj-summary > i { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 14px; background: var(--sgj-blue); font-size: 38px; font-style: normal; }
.sgj-summary > span { display: block; margin: 24px 0 5px; color: var(--sgj-mint); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.sgj-summary h3 { margin: 0; font-size: 26px; letter-spacing: -.04em; }
.sgj-summary > p { margin: 10px 0 21px; color: #c5ccd8; font-size: 13px; }
.sgj-summary dl { margin: 0; border-top: 1px solid rgba(255,255,255,.14); }
.sgj-summary dl div { padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.14); display: flex; justify-content: space-between; gap: 12px; font-size: 11px; }
.sgj-summary dt { color: #9da7b7; }
.sgj-summary dd { margin: 0; font-weight: 800; }
.sgj-form { padding: 33px; border: 1px solid rgba(23,32,51,.13); border-radius: 18px; background: var(--sgj-paper); box-shadow: 0 18px 44px rgba(23,32,51,.06); display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 21px; }
.sgj-field { min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.sgj-wide { grid-column: 1/-1; }
.sgj-field label, .sgj-field legend { font-size: 12px; font-weight: 800; }
.sgj-field label small { color: var(--sgj-muted); font-weight: 500; }
.sgj-field input, .sgj-field select, .sgj-field textarea { width: 100%; min-height: 49px; padding: 0 13px; border: 1.5px solid var(--sgj-line); border-radius: 9px; background: #fff; font-size: 14px; }
.sgj-field textarea { min-height: 86px; padding: 12px 13px; resize: vertical; }
.sgj-suggestions { display: flex; flex-wrap: wrap; gap: 7px; }
.sgj-suggestions button { min-height: 32px; padding: 0 11px; border: 1px solid var(--sgj-line); border-radius: 7px; background: var(--sgj-ivory); color: var(--sgj-muted); font-size: 10px; font-weight: 750; cursor: pointer; }
.sgj-difficulty { padding: 0; border: 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.sgj-difficulty legend { grid-column: 1/-1; margin-bottom: 6px; }
.sgj-difficulty label { min-height: 74px; padding: 12px 13px; border: 1.5px solid var(--sgj-line); border-radius: 10px; background: #fff; display: flex; flex-direction: column; justify-content: center; cursor: pointer; }
.sgj-difficulty label.is-active { border-color: var(--sgj-blue); background: #f3f5ff; box-shadow: inset 0 0 0 1px var(--sgj-blue); }
.sgj-difficulty input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.sgj-difficulty strong { font-size: 12px; }
.sgj-difficulty small { margin-top: 3px; color: var(--sgj-muted); font-size: 10px; }
.sgj-generate { padding: 21px; border-radius: 13px; background: var(--sgj-ink); color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.sgj-generate > div { display: flex; flex-direction: column; gap: 4px; }
.sgj-generate strong { font-size: 14px; }
.sgj-generate span { color: #abb5c5; font-size: 10px; }
.sgj-result { padding: 98px max(32px,calc((100% - 1240px)/2)); background: #edf0f8; }
.sgj-result-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 27px; }
.sgj-result-head h2 { max-width: 720px; margin: 7px 0; font-size: clamp(36px,4vw,53px); line-height: 1.04; letter-spacing: -.055em; }
.sgj-result-head p { max-width: 720px; margin: 0; color: var(--sgj-muted); }
.sgj-result-head > div:last-child { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.sgj-result-head button { min-height: 43px; padding: 0 13px; border: 1px solid var(--sgj-line); border-radius: 9px; background: #fff; font-size: 11px; font-weight: 800; cursor: pointer; }
.sgj-tabs { padding: 7px; display: flex; gap: 5px; overflow-x: auto; border: 1px solid #d6dbe8; border-radius: 12px 12px 0 0; background: #dfe4f0; }
.sgj-tabs button { flex: 0 0 auto; min-height: 39px; padding: 0 13px; border: 0; border-radius: 8px; background: transparent; color: #5d677a; font-size: 10px; font-weight: 800; cursor: pointer; }
.sgj-tabs button.is-active { background: #fff; color: var(--sgj-blue); }
.sgj-document { min-height: 530px; padding: 40px; border-radius: 0 0 16px 16px; background: #fff; box-shadow: 0 20px 50px rgba(23,32,51,.08); }
.sgj-print-panel { display: none; }
.sgj-print-panel.is-active { display: block; }
.sgj-cover { position: relative; min-height: 300px; padding: 46px; border-radius: 18px; overflow: hidden; background: radial-gradient(circle at 85% 10%,rgba(174,236,207,.9),transparent 30%), linear-gradient(130deg,#1c4fe0,#2d63ec 62%,#1640be); color: #fff; }
.sgj-cover > span { display: inline-flex; padding: 7px 10px; border-radius: 6px; background: var(--sgj-yellow); color: var(--sgj-ink); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.sgj-cover h2 { max-width: 720px; margin: 24px 0 11px; font-size: clamp(40px,5vw,68px); line-height: .98; letter-spacing: -.06em; }
.sgj-cover > p { margin: 0; font-size: 17px; }
.sgj-cover > div { position: absolute; left: 46px; right: 46px; bottom: 27px; display: flex; flex-wrap: wrap; gap: 8px; }
.sgj-cover i { padding: 6px 9px; border: 1px solid rgba(255,255,255,.34); border-radius: 6px; background: rgba(18,50,150,.28); font-size: 9px; font-style: normal; font-weight: 750; }
.sgj-metrics { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; margin: 17px 0; }
.sgj-metrics article { min-height: 88px; padding: 17px; border: 1px solid var(--sgj-line); border-radius: 10px; background: var(--sgj-ivory); display: flex; flex-direction: column; justify-content: center; }
.sgj-metrics span { color: var(--sgj-muted); font-size: 9px; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.sgj-metrics b { margin-top: 6px; font-size: 13px; }
.sgj-doc-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.sgj-doc-grid > article { position: relative; padding: 27px; border: 1px solid var(--sgj-line); border-radius: 13px; }
.sgj-doc-grid > article.wide { grid-column: 1/-1; }
.sgj-doc-grid > article.safe { background: #f0fbf6; border-color: #c5ead9; }
.sgj-doc-grid > article > b { position: absolute; top: 20px; right: 20px; color: #d8deea; font-size: 27px; }
.sgj-doc-grid h3, .sgj-timeline h3 { margin: 0 0 13px; font-size: 22px; letter-spacing: -.035em; }
.sgj-doc-grid p, .sgj-doc-grid li { color: #485164; font-size: 12px; line-height: 1.6; }
.sgj-doc-grid ul, .sgj-doc-grid ol { margin: 0; padding-left: 18px; }
.sgj-doc-grid aside { margin-top: 17px; padding: 14px; border-left: 4px solid var(--sgj-blue); background: #f0f3ff; }
.sgj-timeline { margin-top: 14px; padding: 28px; border-radius: 13px; background: var(--sgj-ink); color: #fff; }
.sgj-timeline article { padding: 13px 0; border-top: 1px solid rgba(255,255,255,.13); display: grid; grid-template-columns: 95px 1fr; gap: 16px; }
.sgj-timeline time { color: var(--sgj-mint); font-size: 10px; font-weight: 800; }
.sgj-timeline strong { font-size: 12px; }
.sgj-timeline p { margin: 4px 0 0; color: #abb5c4; font-size: 10px; }
.sgj-print-title { padding-bottom: 24px; border-bottom: 2px solid var(--sgj-ink); }
.sgj-print-title span { color: var(--sgj-blue); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.sgj-print-title h2 { margin: 7px 0; font-size: 40px; letter-spacing: -.05em; }
.sgj-print-title p { margin: 0; color: var(--sgj-muted); font-size: 12px; }
.sgj-card-grid, .sgj-role-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 17px; margin-top: 26px; }
.sgj-card-grid > article { min-height: 295px; padding: 25px; border: 2px dashed #9ba4b4; border-radius: 11px; background: var(--sgj-ivory); display: flex; flex-direction: column; break-inside: avoid; }
.sgj-card-grid > article > span { color: var(--sgj-blue); font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.sgj-card-grid h3 { margin: 27px 0 14px; font-size: 25px; line-height: 1.06; }
.sgj-card-grid p { margin: 0; color: #3e4758; font-size: 12px; line-height: 1.65; }
.sgj-card-grid footer { margin-top: auto; padding-top: 16px; border-top: 1px solid var(--sgj-line); color: var(--sgj-muted); font-size: 9px; }
.sgj-challenge-list { display: grid; gap: 15px; margin-top: 26px; }
.sgj-challenge-list > article { padding: 22px; border: 1px solid var(--sgj-line); border-radius: 12px; display: grid; grid-template-columns: 52px 1fr; gap: 18px; break-inside: avoid; }
.sgj-challenge-list > article > i { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 11px; background: var(--sgj-blue); color: #fff; font-size: 17px; font-style: normal; font-weight: 900; }
.sgj-challenge-list header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.sgj-challenge-list header span { color: var(--sgj-blue); font-size: 8px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.sgj-challenge-list h3 { margin: 2px 0 0; font-size: 20px; }
.sgj-challenge-list header > b { color: var(--sgj-muted); font-size: 9px; }
.sgj-challenge-list p { color: #465064; font-size: 11px; line-height: 1.6; }
.sgj-challenge-list aside { margin-top: 10px; padding: 11px 13px; border-radius: 7px; background: #fff5d8; color: #4a4230; font-size: 10px; }
.sgj-challenge-list aside.solution { background: #eaf8f1; color: #244a3c; }
.sgj-role-grid > article { min-height: 335px; padding: 25px; border: 2px solid var(--sgj-ink); border-radius: 12px; display: flex; flex-direction: column; break-inside: avoid; }
.sgj-role-grid > article > span { width: max-content; padding: 6px 9px; border-radius: 6px; background: var(--sgj-yellow); font-size: 8px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.sgj-role-grid h3 { margin: 20px 0 9px; font-size: 24px; }
.sgj-role-grid p { color: #465064; font-size: 11px; line-height: 1.6; }
.sgj-role-grid aside { padding: 13px; border-radius: 8px; background: #fff3d0; }
.sgj-role-grid footer { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--sgj-line); }
.sgj-score-wrap { margin-top: 26px; overflow-x: auto; }
.sgj-score-wrap table { width: 100%; border-collapse: collapse; min-width: 700px; }
.sgj-score-wrap th, .sgj-score-wrap td { height: 48px; padding: 9px; border: 1px solid var(--sgj-line); font-size: 10px; text-align: center; }
.sgj-score-wrap th:first-child { text-align: left; }
.sgj-score-wrap .total { background: var(--sgj-ink); color: #fff; font-weight: 900; }
.sgj-diploma { position: relative; min-height: 690px; padding: 65px 55px; border: 12px double var(--sgj-blue); background: radial-gradient(circle at center,rgba(244,183,59,.15),transparent 42%), var(--sgj-ivory); text-align: center; }
.sgj-diploma > span { color: var(--sgj-blue); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.sgj-diploma h2 { margin: 60px auto 20px; font-size: 55px; line-height: .98; letter-spacing: -.055em; }
.sgj-diploma h3 { color: var(--sgj-blue); font-size: 23px; }
.sgj-diploma > p { max-width: 600px; margin: 40px auto; line-height: 1.8; }
.sgj-diploma > div { position: absolute; left: 55px; right: 55px; bottom: 55px; display: flex; justify-content: space-between; gap: 25px; }
.sgj-diploma > div i { width: 220px; padding-top: 12px; border-top: 1px solid var(--sgj-ink); font-size: 9px; font-style: normal; }
.sgj-diploma > b { position: absolute; right: 55px; bottom: 105px; width: 108px; height: 108px; display: grid; place-items: center; border: 3px solid var(--sgj-yellow); border-radius: 50%; color: var(--sgj-blue); transform: rotate(-8deg); font-size: 12px; }
.sgj-organizer { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; margin: 25px 0; }
.sgj-organizer article { padding: 23px; border: 1px solid var(--sgj-line); border-radius: 11px; }
.sgj-organizer h3 { margin-top: 0; }
.sgj-organizer li, .sgj-organizer p { color: #465064; font-size: 11px; line-height: 1.65; }
.sgj-organizer ul { padding-left: 18px; }
.sgj-solutions { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.sgj-solutions article { padding: 15px; border: 1px solid var(--sgj-line); border-radius: 9px; display: grid; grid-template-columns: 34px 1fr; gap: 10px; }
.sgj-solutions article > b { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--sgj-blue); color: #fff; }
.sgj-solutions p { margin: 4px 0; color: #465064; font-size: 10px; }
.sgj-solutions small { color: var(--sgj-muted); font-size: 9px; }
.sgj-final-message { margin-top: 23px; padding: 21px; border-left: 5px solid var(--sgj-yellow); background: var(--sgj-ink); color: #fff; }
.sgj-final-message p { margin: 7px 0 0; color: #c7cfdb; font-size: 11px; }
.sgj-focus { padding: 108px max(32px,calc((100% - 1240px)/2)); background: radial-gradient(circle at 7% 18%,rgba(174,236,207,.32),transparent 26%), #f4f2e9; display: grid; grid-template-columns: minmax(0,.9fr) minmax(510px,1.1fr); gap: 68px; }
.sgj-focus h2 { margin: 10px 0 20px; font-size: clamp(37px,4vw,56px); line-height: 1.03; letter-spacing: -.055em; }
.sgj-focus > div:first-child > p { color: #4c5567; font-size: 14px; line-height: 1.75; }
.sgj-use-cases { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }
.sgj-use-cases i { padding: 8px 11px; border: 1px solid #c8d1de; border-radius: 8px; background: #fff; font-size: 10px; font-style: normal; font-weight: 780; }
.sgj-focus-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 11px; }
.sgj-focus-grid article, .sgj-focus-grid aside { min-height: 200px; padding: 21px; border: 1px solid var(--sgj-line); border-radius: 13px; background: var(--sgj-paper); }
.sgj-focus-grid article > span { color: var(--sgj-blue); font-size: 10px; font-weight: 900; }
.sgj-focus-grid h3 { margin: 31px 0 9px; font-size: 18px; }
.sgj-focus-grid p, .sgj-focus-grid li { color: var(--sgj-muted); font-size: 11px; line-height: 1.6; }
.sgj-focus-grid aside { grid-column: 1/-1; min-height: 0; background: var(--sgj-ink); color: #fff; }
.sgj-focus-grid aside strong { color: var(--sgj-mint); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.sgj-focus-grid aside ul { margin: 16px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; list-style: none; }
.sgj-focus-grid aside li { color: #d7dce5; }
.sgj-formats, .sgj-how, .sgj-faq { padding: 108px max(32px,calc((100% - 1240px)/2)); }
.sgj-formats > div:last-child { display: grid; grid-template-columns: repeat(4,1fr); gap: 13px; }
.sgj-formats article { min-height: 310px; padding: 24px; border: 1px solid var(--sgj-line); border-radius: 13px; background: var(--sgj-paper); display: flex; flex-direction: column; }
.sgj-formats article > i { width: 65px; height: 65px; display: grid; place-items: center; border-radius: 12px; background: var(--sgj-mint); font-size: 32px; font-style: normal; }
.sgj-formats h3 { margin: 21px 0 10px; font-size: 19px; }
.sgj-formats article p { margin: 0; color: var(--sgj-muted); font-size: 11px; line-height: 1.6; }
.sgj-formats article a { width: max-content; margin-top: auto; color: var(--sgj-blue); font-size: 11px; font-weight: 850; text-decoration: none; }
.sgj-how { background: var(--sgj-ink); color: #fff; }
.sgj-how .sgj-section-intro p { color: #c6ceda; }
.sgj-how ol { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; list-style: none; }
.sgj-how li { padding: 28px; border: 1px solid rgba(255,255,255,.16); border-radius: 13px; }
.sgj-how li > b { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: var(--sgj-yellow); color: var(--sgj-ink); }
.sgj-how h3 { margin: 25px 0 9px; }
.sgj-how li p { color: #b8c0ce; font-size: 12px; }
.sgj-faq { background: #f4f2e9; }
.sgj-faq > div:last-child { max-width: 880px; margin: 0 auto; }
.sgj-faq details { border-top: 1px solid var(--sgj-line); background: var(--sgj-paper); }
.sgj-faq details:last-child { border-bottom: 1px solid var(--sgj-line); }
.sgj-faq summary { padding: 22px; display: flex; justify-content: space-between; gap: 20px; font-size: 15px; font-weight: 800; cursor: pointer; list-style: none; }
.sgj-faq summary::-webkit-details-marker { display: none; }
.sgj-faq summary b { color: var(--sgj-blue); font-size: 20px; }
.sgj-faq details[open] summary b { transform: rotate(45deg); }
.sgj-faq details p { margin: 0; padding: 0 22px 22px; color: var(--sgj-muted); font-size: 13px; line-height: 1.65; }
.sgj-final { padding: 70px max(32px,calc((100% - 1240px)/2)); background: var(--sgj-yellow); display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.sgj-final span { color: var(--sgj-blue-dark); font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.sgj-final h2 { max-width: 820px; margin: 8px 0 0; font-size: clamp(31px,3.5vw,49px); line-height: 1.04; letter-spacing: -.05em; }
.sgj-footer { padding: 36px max(32px,calc((100% - 1240px)/2)); background: var(--sgj-ink); color: #fff; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 20px; }
.sgj-footer .sgj-brand { color: #fff; }
.sgj-footer .sgj-brand i { background: #fff; }
.sgj-footer p { margin: 0; color: #aeb7c6; font-size: 11px; text-align: center; }
.sgj-footer > a:last-child { justify-self: end; color: var(--sgj-mint); font-size: 11px; font-weight: 800; text-decoration: none; }
.sgj-saved-page { min-height: 100vh; background: #f4f2e9; }
.sgj-saved-hero { width: min(1240px,calc(100% - 64px)); margin: 0 auto; padding: 82px 0 52px; display: flex; align-items: flex-end; justify-content: space-between; gap: 35px; }
.sgj-saved-hero > div > span { color: var(--sgj-blue); font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.sgj-saved-hero h1 { margin: 7px 0 11px; font-size: clamp(48px,6vw,76px); line-height: .98; letter-spacing: -.065em; }
.sgj-saved-hero p { max-width: 640px; margin: 0; color: var(--sgj-muted); }
.sgj-saved-content { min-height: 500px; padding: 0 max(32px,calc((100% - 1240px)/2)) 105px; }
.sgj-saved-empty { min-height: 400px; padding: 45px; border: 1px solid var(--sgj-line); border-radius: 17px; background: var(--sgj-paper); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.sgj-saved-empty > b { color: var(--sgj-yellow); font-size: 58px; }
.sgj-saved-empty h2 { margin: 14px 0 8px; font-size: 28px; }
.sgj-saved-empty p { color: var(--sgj-muted); }
.sgj-saved-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 17px; }
.sgj-saved-grid > article { padding: 27px; border: 1px solid var(--sgj-line); border-radius: 15px; background: var(--sgj-paper); }
.sgj-saved-grid > article > header { display: flex; justify-content: space-between; gap: 15px; color: var(--sgj-muted); font-size: 9px; text-transform: uppercase; }
.sgj-saved-grid > article > header span { color: var(--sgj-blue); font-weight: 800; }
.sgj-saved-grid h2 { margin: 19px 0 8px; font-size: 25px; }
.sgj-saved-grid > article > p { min-height: 56px; color: var(--sgj-muted); font-size: 11px; }
.sgj-saved-grid dl { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 20px 0; }
.sgj-saved-grid dl div { padding: 10px; border-radius: 8px; background: var(--sgj-ivory); }
.sgj-saved-grid dt { color: var(--sgj-muted); font-size: 8px; text-transform: uppercase; }
.sgj-saved-grid dd { margin: 3px 0 0; font-size: 10px; font-weight: 780; }
.sgj-saved-grid footer { display: flex; flex-wrap: wrap; gap: 8px; }
.sgj-saved-grid footer .sgj-button { min-height: 40px; width: auto; padding: 0 12px; font-size: 10px; }
.sgj-saved-grid footer > button:last-child { border: 0; background: transparent; color: #a13b31; font-size: 10px; font-weight: 800; cursor: pointer; }
@media (max-width: 1120px) {
    .sgj-header { grid-template-columns: 1fr auto; }
    .sgj-header nav { display: none; }
    .sgj-hero { grid-template-columns: 1fr; max-width: 850px; }
    .sgj-builder-shell { grid-template-columns: 1fr; }
    .sgj-summary { position: static; }
    .sgj-focus { grid-template-columns: 1fr; gap: 40px; }
    .sgj-formats > div:last-child { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 720px) {
    .sgj-header, .sgj-hero { width: min(100% - 32px,1344px); }
    .sgj-header { min-height: 76px; }
    .sgj-brand span, .sgj-brand i { display: none; }
    .sgj-brand strong { font-size: 23px; }
    .sgj-badge { padding: 9px 11px; font-size: 11px; }
    .sgj-hero { padding: 35px 0; gap: 34px; }
    .sgj-hero h1 { font-size: clamp(41px,13vw,57px); }
    .sgj-actions { flex-direction: column; }
    .sgj-button { width: 100%; }
    .sgj-local { width: 100%; border-radius: 9px; }
    .sgj-proofs { grid-template-columns: 1fr; }
    .sgj-format-panel { padding: 21px 15px; }
    .sgj-format-grid { grid-template-columns: repeat(2,1fr); }
    .sgj-format-card { min-height: 137px; }
    .sgj-format-panel > footer, .sgj-kit-strip, .sgj-generate, .sgj-result-head, .sgj-final, .sgj-saved-hero { align-items: stretch; flex-direction: column; }
    .sgj-builder, .sgj-result, .sgj-focus, .sgj-formats, .sgj-how, .sgj-faq, .sgj-final { padding-left: 16px; padding-right: 16px; }
    .sgj-section-intro { text-align: left; }
    .sgj-section-intro h2, .sgj-focus h2 { font-size: 37px; }
    .sgj-form { padding: 21px 15px; grid-template-columns: 1fr; }
    .sgj-wide { grid-column: 1; }
    .sgj-difficulty { grid-template-columns: 1fr; }
    .sgj-result-head > div:last-child { justify-content: flex-start; }
    .sgj-result-head button { flex: 1 1 46%; }
    .sgj-document { padding: 17px 11px; }
    .sgj-cover { min-height: 370px; padding: 27px 21px; }
    .sgj-cover h2 { font-size: 42px; }
    .sgj-cover > div { left: 21px; right: 21px; bottom: 21px; }
    .sgj-metrics, .sgj-doc-grid, .sgj-card-grid, .sgj-role-grid, .sgj-organizer, .sgj-solutions, .sgj-focus-grid, .sgj-focus-grid aside ul, .sgj-formats > div:last-child, .sgj-how ol, .sgj-saved-grid { grid-template-columns: 1fr; }
    .sgj-doc-grid > article.wide, .sgj-focus-grid aside { grid-column: 1; }
    .sgj-timeline article, .sgj-challenge-list > article { grid-template-columns: 1fr; }
    .sgj-challenge-list header { flex-direction: column; }
    .sgj-diploma { min-height: 610px; padding: 44px 25px; }
    .sgj-diploma h2 { margin-top: 45px; font-size: 42px; }
    .sgj-diploma > div { left: 25px; right: 25px; flex-direction: column; }
    .sgj-diploma > b { right: 25px; bottom: 130px; }
    .sgj-footer { grid-template-columns: 1fr; text-align: center; }
    .sgj-footer .sgj-brand, .sgj-footer > a:last-child { justify-self: center; }
    .sgj-saved-hero { width: min(100% - 32px,1240px); padding: 50px 0 36px; }
    .sgj-saved-content { padding-left: 16px; padding-right: 16px; }
    .sgj-saved-grid dl { grid-template-columns: 1fr; }
}
@media print {
    @page { size: A4; margin: 12mm; }
    body { background: #fff !important; }
    body > * { display: none !important; }
    body > .sgj, body > #container, body #content, body .sgj { display: block !important; }
    .sgj > * { display: none !important; }
    .sgj > .sgj-result { display: block !important; padding: 0 !important; background: #fff !important; }
    .sgj-screen { display: none !important; }
    .sgj-document { display: block !important; min-height: 0; padding: 0 !important; box-shadow: none; }
    .sgj-print-panel { display: block !important; break-after: page; }
    .sgj-print-panel:last-child { break-after: auto; }
    .sgj-cover { min-height: 245mm; border-radius: 0; break-after: page; }
    .sgj-metrics { grid-template-columns: repeat(4,1fr) !important; }
    .sgj-doc-grid, .sgj-card-grid, .sgj-role-grid, .sgj-organizer, .sgj-solutions { grid-template-columns: repeat(2,1fr) !important; }
    .sgj-doc-grid > article.wide { grid-column: 1/-1 !important; }
    .sgj-card-grid > article, .sgj-role-grid > article { min-height: 118mm; }
    .sgj-card-grid > article, .sgj-role-grid > article, .sgj-challenge-list > article, .sgj-doc-grid > article, .sgj-diploma { break-inside: avoid; }
    .sgj-diploma { min-height: 255mm; }
}
