:root{font-family:Arial,Helvetica,sans-serif;color:#192b43;background:#f3f6fa;font-synthesis:none;--blue:#0753a6;--navy:#082f61;--border:#dce4ee;--muted:#576b83}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #efad35;outline-offset:3px}button,input,select{min-height:44px}h1,h2,p{margin:0}h1{font-size:2.25rem;letter-spacing:-.04em;margin:6px 0 12px;color:var(--navy)}h2{font-size:1.2rem;letter-spacing:-.02em}p{line-height:1.5}.topbar{background:#fff;border-bottom:1px solid var(--border);height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%}.identity{display:flex;gap:24px;align-items:center}.identity strong{font-size:1.9rem;font-style:italic;color:var(--blue);letter-spacing:-.04em}.identity strong span{font-size:1rem;font-style:normal;letter-spacing:0;margin-left:9px}.identity i{height:28px;width:1px;background:var(--border)}.identity>span{font-size:.9rem;color:var(--muted)}.internal{font-size:.875rem;font-weight:bold;color:var(--navy);padding:8px 12px;background:#eef4fb;border-radius:5px}main{max-width:1500px;margin:auto;padding:36px 4.5%}.heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;color:var(--blue)}.heading>div>p:last-child{color:var(--muted)}.scope{border-left:3px solid #ed7829;padding:10px 0 10px 18px;max-width:270px;display:grid;gap:5px;font-size:.875rem;line-height:1.5}.scope span{color:var(--muted)}.metrics{display:flex;align-items:center;gap:0;margin:28px 0;background:var(--navy);color:white;border-radius:10px;padding:23px 28px}.metrics div{display:flex;align-items:center;gap:12px;padding-right:35px;margin-right:35px;border-right:1px solid #ffffff30}.metrics strong{font-size:1.8rem;letter-spacing:-.04em}.metrics span{font-size:.875rem;max-width:110px;line-height:1.4;color:#d7e6f9}.metrics p{margin-left:auto;font-size:.75rem;color:#c3d4ea;line-height:1.8}.metrics p b{color:#fff;font-weight:500}.workspace{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px}.filters{align-self:start;background:white;border:1px solid var(--border);padding:22px;border-radius:10px}.filter-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.filter-head h2{font-size:1rem}.text-button{border:0;background:none;color:var(--blue);padding:0;font-size:.875rem}.filters label,.simulation-fields label{display:block;font-size:.875rem;font-weight:600;margin-top:20px;margin-bottom:8px}input,select{width:100%;background:white;border:1px solid #bbc9d9;border-radius:6px;padding:10px 11px;color:#192b43;font-size:.875rem}.search-wrap{position:relative}.search-wrap span{position:absolute;left:10px;top:6px;font-size:1.6rem;color:#788ca4}.search-wrap input{padding-left:32px}.filter-note{margin-top:25px;border-top:1px solid var(--border);padding-top:20px;font-size:.8125rem;line-height:1.6;color:var(--muted)}.filter-note b{color:#334e6e}.filter-note p{margin-top:7px}.result-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.result-toolbar p{font-size:.875rem;color:var(--muted);margin-top:6px}.sort-label{display:flex;align-items:center;gap:10px;font-size:.875rem;color:var(--muted);white-space:nowrap}.sort-label select{max-width:205px}.table-head,.course{display:grid;grid-template-columns:minmax(0,1fr) 105px 165px 100px;gap:18px;align-items:center}.table-head{font-size:.75rem;color:var(--muted);padding:0 20px 12px}.course-list{background:white;border:1px solid var(--border);border-radius:9px;overflow:hidden}.course{padding:20px;border-bottom:1px solid var(--border);transition:background .15s}.course:hover{background:#f8fbff}.course:last-child{border:0}.course h3{font-size:1rem;line-height:1.4;margin:0 0 7px;font-weight:600}.course-meta{color:var(--muted);font-size:.8125rem;line-height:1.5}.region-name{color:var(--blue);font-weight:600;font-size:.875rem;display:block;margin-top:8px}.hours{font-size:.9375rem;font-weight:600}.hours small{display:none}.price{font-size:1rem;font-weight:bold;font-variant-numeric:tabular-nums;color:var(--navy)}.price small{display:block;color:var(--muted);font-weight:400;font-size:.75rem;margin-top:5px}.primary{border:0;background:var(--blue);color:white;border-radius:6px;padding:11px 16px;font-weight:600;font-size:.875rem}.primary:hover{background:#063d7b}.secondary{border:1px solid #b8c9df;background:white;color:var(--blue);border-radius:6px;padding:10px 15px;font-size:.875rem}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.pagination span{font-size:.875rem;color:var(--muted)}.footnote{font-size:.8125rem;color:var(--muted);margin-top:20px}.empty{padding:55px 24px;text-align:center;color:var(--muted)}.empty h3{color:var(--navy);margin-top:0}.empty p{max-width:420px;margin:auto}footer{max-width:1500px;margin:auto;display:flex;justify-content:space-between;gap:20px;padding:24px 4.5%;color:var(--muted);font-size:.75rem;border-top:1px solid var(--border)}dialog{border:0;border-radius:14px;padding:26px 30px;max-width:640px;width:calc(100% - 28px);max-height:92dvh;color:#192b43;box-shadow:0 24px 80px #03152f40}dialog::backdrop{background:#071d3dc4;backdrop-filter:blur(3px)}.dialog-top{display:flex;justify-content:space-between;align-items:center}.close{border:0;background:#f0f4f8;border-radius:50%;font-size:1.7rem;width:44px;color:#294567}dialog h2{font-size:1.5rem;line-height:1.35;margin:10px 0}.detail-meta{color:var(--muted);font-size:.875rem;line-height:1.6}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.facts span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:6px}.facts b{font-size:.95rem}.pricing{background:var(--navy);color:white;padding:22px;border-radius:9px}.pricing>span{font-size:.875rem;color:#cde1fa}.pricing strong{display:block;font-size:2rem;margin:7px 0;letter-spacing:-.025em}.pricing p{font-size:.8125rem;color:#d7e6f9}.simulation-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.simulation-fields label{line-height:1.5}.simulation-fields input{margin-top:6px;font-size:1rem}.simulated{margin-top:14px}.simulated>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;font-size:.875rem}.simulated b{white-space:nowrap;font-variant-numeric:tabular-nums}.simulated .negotiated{font-size:1rem;background:#eef5ff;padding:16px 12px;border-radius:6px;color:var(--navy)}.negotiation-note{font-size:.8125rem;padding:12px 0;color:var(--muted)}.error{font-size:.875rem;color:#a22b24;background:#fff0ee;padding:12px;border-radius:6px;margin:10px 0}.error[hidden]{display:none}details{margin-top:10px;border-top:1px solid var(--border);padding-top:15px;font-size:.875rem;line-height:1.5}summary{cursor:pointer;font-weight:600;min-height:30px}details p{margin-top:10px;color:var(--muted)}.dialog-actions{margin-top:24px;display:grid;gap:10px}.dialog-actions span{font-size:.8125rem;color:var(--blue)}.skip{position:absolute;left:16px;top:-100px;background:white;padding:16px;z-index:5}.skip:focus{top:10px}
@media(min-width:1450px){.workspace{grid-template-columns:265px minmax(0,1fr)}}@media(max-width:1100px){.table-head,.course{grid-template-columns:minmax(0,1fr) 135px 90px;gap:12px}.table-head span:nth-child(2){display:none}.course .hours{grid-column:1;font-size:.8125rem;color:var(--muted);font-weight:400}.course .hours small{display:inline}.course .price{grid-column:2;grid-row:1/3;font-size:.9375rem}.course>button{grid-column:3;grid-row:1/3}.metrics div{margin-right:22px;padding-right:22px}.metrics p{display:none}.result-toolbar{align-items:start}.sort-label{display:block;font-size:.75rem}.sort-label select{display:block;margin-top:5px}.scope{max-width:230px}}@media(max-width:760px){.topbar{height:65px;padding:0 20px}.identity>span,.identity i{display:none}.identity strong{font-size:1.6rem}.internal{font-size:.75rem}main{padding:25px 18px}.heading{display:block}h1{font-size:1.8rem}.scope{max-width:none;margin-top:20px;padding:8px 12px}.scope span{font-size:.8125rem}.metrics{padding:18px;margin:22px 0}.metrics div{display:block;flex:1;padding-right:14px;margin-right:14px}.metrics div:nth-child(3){border:0;padding:0;margin:0}.metrics strong{font-size:1.5rem}.metrics span{display:block;font-size:.75rem;margin-top:4px}.workspace{grid-template-columns:1fr;gap:22px}.filters{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;padding:18px}.filter-head{grid-column:1/-1;margin:0}.filters>label{margin:8px 0 0}.filters>label[for=search]{grid-column:1/-1}.search-wrap{grid-column:1/-1}.filters>label:not([for=search]){grid-column:1/-1}.filters select{grid-column:1/-1}.filter-note{display:none}.filters label{font-size:.8125rem}.result-toolbar h2{font-size:1.1rem}.sort-label select{max-width:165px;font-size:.8125rem}.table-head{display:none}.course{grid-template-columns:minmax(0,1fr) 110px;padding:17px;gap:10px}.course>div:first-child{grid-column:1/-1}.course .hours{grid-column:1;grid-row:auto}.course .price{grid-column:1;grid-row:auto}.course>button{grid-column:2;grid-row:3}.course h3{font-size:1rem}.course .price{font-size:1rem}.pagination span{font-size:.75rem}.pagination button{padding:8px 12px}footer{display:block;padding:20px}footer span{display:block;line-height:1.7}dialog{padding:20px}.facts{gap:12px}.facts b{font-size:.875rem}.simulation-fields{gap:12px}.simulation-fields label{font-size:.8125rem}.simulated .negotiated{font-size:.9375rem}.pricing strong{font-size:1.8rem}}

/* Institutional marks supplied by the reference application. */
.topbar{height:auto;min-height:96px;gap:24px;padding-top:16px;padding-bottom:16px}.logo-senai{display:block;width:280px;max-width:100%;height:auto}.logo-fiergs{display:block;width:112px;height:auto;flex-shrink:0}.identity{min-width:0}.identity>span{max-width:190px;line-height:1.5}
@media(max-width:760px){.topbar{min-height:80px;gap:18px;padding:14px 18px}.identity{flex:1}.logo-senai{width:240px}.logo-fiergs{width:84px}}
@media(max-width:380px){.topbar{gap:12px}.logo-fiergs{width:72px}}

.availability-notice{margin:18px 0;padding:14px 16px;border-left:4px solid #ed7829;border-radius:5px;background:#fff5e9;color:#49351c;font-size:.875rem;line-height:1.55}.availability-notice strong{display:block;margin-bottom:4px;color:#192b43}

.course .course-availability{grid-column:1/-1;margin:2px 0 0;padding:11px 14px;border-left:3px solid #ed7829;background:#fff5e9;border-radius:4px;color:#49351c;font-size:.875rem;line-height:1.5}.course-availability strong{color:#192b43}

.contacts-guide{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;margin:0 0 24px;background:white;border:1px solid var(--border);border-radius:9px}.contacts-guide strong{font-size:1rem}.contacts-guide p{font-size:.875rem;color:var(--muted);margin-top:5px}.contacts-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:11px 15px;border:1px solid var(--blue);border-radius:6px;color:var(--blue);background:#eef5ff;text-decoration:none;font-size:.875rem;font-weight:600;line-height:1.4}.contacts-link:hover{background:#dfedff}.contacts-link:focus-visible{outline:3px solid #efad35;outline-offset:3px}.contacts-guide .contacts-link{flex-shrink:0}dialog>.contacts-link{width:100%}@media(max-width:760px){.contacts-guide{display:block;padding:18px}.contacts-guide .contacts-link{width:100%;margin-top:14px}}
