html{font-size:1rem;position:relative;min-height:100%;overflow-y:scroll}.roo-header{background-color:#fff;color:#000}.roo-header .roo-topHeader{padding:0}.roo-header .roo-topHeader .logo{text-align:left}.roo-header .roo-topHeader .logo .navbar-brand img{width:300px}@media only screen and (max-width: 1000px){.roo-header .roo-topHeader .logo .navbar-brand img{width:120px}}.roo-header .roo-appTitle{color:#000;align-self:center;font-size:90%}.roo-header .roo-appTitle a{color:#000;font-size:1.75rem;font-family:"Oswald",sans-serif}@media only screen and (max-width: 1000px){.roo-header .roo-appTitle a{font-size:1.313rem}}@media(max-width: 600px){.roo-header .roo-appTitle a{font-size:100%}}.roo-header .roo-languageSelect{display:flex;justify-content:flex-end;padding-top:.5em;align-self:center;width:100%;margin:0;text-align:end}.roo-header .roo-languageSelect a{padding:.5em;border-radius:5%;width:40px;height:40px}.roo-header .searchRow{display:flex;justify-content:flex-end}.roo-header .searchRow .searchArea{padding:.75em 0 0 0;align-self:center}.roo-header .searchRow .searchArea .input-group{margin-block-end:0rem}.roo-header .searchRow .searchArea .input-group btn.clearSearch{border-color:#8baddc}.roo-header .searchRow .searchArea .input-group btn.doSearch{border-color:#0079c2}.roo-header .searchRow .searchArea.enabled{opacity:1}.roo-header .searchRow .searchArea.disabled{opacity:.4}.roo-header .searchRow .searchResultArea{width:100%}.roo-header .searchRow .searchResultArea .searchResultView{overflow-x:hidden}.roo-header .searchRow .searchResultArea .searchResultView .searchStringMatch{text-decoration-line:underline;text-decoration-thickness:.2rem;color:#0079c2;text-decoration:underline;text-decoration-style:solid}.roo-header .searchRow .searchResultArea.hidden{display:none}.roo-header .roo-breadcrumb{padding:1em}.roo-header .roo-breadcrumb .breadcrumb{background-color:rgba(0,0,0,0);margin:0rem 1em;font-size:.875rem}.roo-header .roo-breadcrumb .breadcrumb .breadcrumb-item a.active{color:#000}.roo-header .roo-breadcrumb .breadcrumb .breadcrumb-item.item-disabled a{color:#5a6268}.roo-header .roo-breadcrumb .breadcrumb .breadcrumb-item+.breadcrumb-item::before{color:#000;content:"/"}.roo-header .linkbar{background-color:#f5f5f5;color:#000}.roo-header .linkbar a{text-decoration:underline}.roo-header .alert.alert-primary a{text-decoration:underline}@media only screen and (min-width: 1300px){.roo-header .col-12.col-md-3.p-3,.roo-header .col-12.col-md-3 .logo{display:flex;justify-content:end}}.navWrapper.row{border-radius:5px;background-color:#fff;color:#000;margin:.5em}.navbar-collapse{margin-top:.5rem}.navbar-collapse.collapse{border-radius:5px}ul#valikko_offering{margin-left:1em}button.navbar-toggler.m-auto{width:100%}.roo-sidemenu ul{list-style-type:none;padding:0rem 0rem 0rem 0rem;width:inherit}.roo-sidemenu ul li{cursor:pointer;color:#000}.roo-sidemenu a{color:#000;display:inline-block}.roo-sidemenu a span:hover{text-decoration:underline}.roo-sidemenu a:active{color:#34d;text-decoration:underline}.roo-sidemenu button.btn.rounded{text-align:initial}.roo-sidemenu li.hide.menuLevel-2{display:none}.roo-sidemenu .menuItem .collapsesArea,.roo-sidemenu .menuItem .menuItemLink{height:auto;text-decoration:none;padding:0 4px;text-align:left;cursor:default;display:block;border:0;outline:0;width:inherit}.roo-sidemenu .menuItem .collapsesArea:hover,.roo-sidemenu .menuItem .collapsesArea:focus{background-color:#f5f5f5;color:#000;cursor:pointer}.roo-sidemenu .menuItem .menuItemLink{padding:0 4px !important}.roo-sidemenu .menuItem .menuItemLink:hover,.roo-sidemenu .menuItem .menuItemLink:focus,.roo-sidemenu .menuItem .menuItemLink:focus-visible{background-color:#f5f5f5;color:#000;cursor:pointer}.roo-sidemenu .menuItem:hover{text-decoration:none}.roo-sidemenu .menuLevel-1 a,.roo-sidemenu .menuLevel-1 span{padding:0rem 0rem 0rem 0rem;font-size:1.2em;text-align:start}@media only screen and (max-width: 1200px){.roo-sidemenu .menuLevel-1 a,.roo-sidemenu .menuLevel-1 span{font-size:1.1em}}.roo-sidemenu .menuLevel-1 span.btn.rounded:focus{box-shadow:none;background-color:#f5f5f5;color:#000}.roo-sidemenu .menuLevel-2 a,.roo-sidemenu .menuLevel-2 span{padding:0rem 0rem 0rem 0rem;font-size:1.1em;text-align:start}@media only screen and (max-width: 1200px){.roo-sidemenu .menuLevel-2 a,.roo-sidemenu .menuLevel-2 span{font-size:1em}}.roo-sidemenu .menuLevel-3 a,.roo-sidemenu .menuLevel-3 span{padding:0rem 0rem 0rem 0rem;font-size:1em;text-align:start}@media only screen and (max-width: 1200px){.roo-sidemenu .menuLevel-3 a,.roo-sidemenu .menuLevel-3 span{font-size:.9em}}.roo-sidemenu .menuLevel-4 a,.roo-sidemenu .menuLevel-4 span{padding:0rem 0rem 0rem 0rem;font-size:.9em;text-align:start}@media only screen and (max-width: 1200px){.roo-sidemenu .menuLevel-4 a,.roo-sidemenu .menuLevel-4 span{font-size:.9em}}.roo-sidemenu .menuLevel-4 a.selected{text-decoration:underline}.roo-sidemenu .menuLevel-4 .inSelection>a{font-weight:bold;text-decoration:underline}.roo-sidemenu .offeringTag a{margin-left:1.15em}.roo-sidemenu .menuItem.menuLevel-1.list-group-item{padding:.25em 0;border:none}.roo-sidemenu .menuItem.menuLevel-2.list-group-item{padding:.5em 1.25em;border:none}.roo-sidemenu .menuItem.menuLevel-3.list-group-item{padding:.5em 0 .5em 1.25em;border:none}.roo-sidemenu .menuItem.menuLevel-4.list-group-item{border:none;padding:.75em}@media only screen and (max-width: 1230px){.roo-sidemenu .menuItem.menuLevel-4.list-group-item{padding:.5em}}.roo-sidemenu .menuItem.menuLevel-4.list-group-item{padding:1em 0rem 0rem 2.5em}@media only screen and (max-width: 768px){.roo-sidemenu .menuItem.menuLevel-4.list-group-item{padding:.75em 1em}}.roo-sidemenu .roo-menu-educationOfferings a{font-size:large;font-weight:lighter}.roo-sidemenu .roo-menu-educationOfferings .roo-menu-offering a{font-size:medium;font-weight:lighter}.roo-sidemenu button.btn.toggleSideNav.roo-sidebarsidebutton{background-color:#fff;color:#000;font-size:1.5em;padding:1em}.btn2>.btn,.btn2>a{width:auto !important;display:inline-block !important}.roo-contentarea{background-color:#fff;color:#000;margin:.5em;padding:1em}.roo-contentarea img{max-width:100%}#shareBtn{display:none;background-color:#fff;color:#000}#coverImage{border-radius:5px;aspect-ratio:21/6;width:100%;background-size:cover;background-position:center}.roo-content{padding:0}@media(max-width: 1700px){.roo-content{width:70%}}@media(min-width: 1701px){.roo-content{width:75%}}.roo-content.expanded{width:95% !important}span.mobile-nav{display:none}#main-nav-hamburger{margin-right:5px}.roo-search,.roo-topHeader .logo{padding:.75em 0 0 0;align-self:center;width:100%}.sidebared{overflow:hidden;width:5%;transition:width .75s,height 1s;height:90px}.navbar-collapse.collapse{overflow:hidden}.list-group>li,.list-group>li>ul>li,.navbar-collapse.collapse{transition:width .75s,height 1s}.roo-nav.sidebared,.navbar-collapse.collapse.sidebared{height:90px;width:1%;transition:width .75s,height 1s;max-width:5%;overflow:hidden}.roo-sidebar{width:90%;transition:width .75s,height 1s}.roo-sidebar.sidebared{display:none;width:0;transition:width .75s,height 1s}.roo-sidebarsidebutton{background-color:#fff;color:#000;font-size:150%;width:10%}.roo-sidebarsidebutton i.fa.fa-caret-left{display:block}.roo-sidebarsidebutton i.fa.fa-bars{display:none}.roo-sidebarsidebutton.sidebarsidebuttoned i.fa.fa-caret-left{display:none}.roo-sidebarsidebutton.sidebarsidebuttoned i.fa.fa-bars{display:block}input.form-control.searchField:hover,input.form-control.searchField:active,input.form-control.searchField:focus{border-color:#0079c2}@media(min-width: 200px){.roo-nav{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media(min-width: 200px)and (max-width: 1000px){.roo-nav.sidebared{width:100% !important;transition:width 1s;max-width:100% !important}.sidebared{overflow:hidden;width:100%;transition:width .75s,height 1s}.roo-sidebar.roo-sidemenu.sidebared{display:block}.roo-nav.sidebared,.navbar-collapse.collapse.sidebared,.sidebared{overflow:auto;width:auto;height:auto}.roo-nav.sidebared,.navbar-collapse.collapse.sidebared{overflow:auto;width:100% !important;height:auto !important;max-width:100% !important}}@media(max-width: 1000px){span.mobile-nav{display:inline-flex}button.toggleSideNav{display:none}.navWrapper.row{margin:.5em}.roo-content{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%;transition:width .75s,height 1s}.roo-sidebar.sidebared{width:100%;transition:width .75s,height 1s}.roo-sidebar{width:100%}}.roo-nav{transition:width .75s,height 1s;padding:0}@media(min-width: 1000px)and (max-width: 1700px){.roo-nav{max-width:30%}}@media(min-width: 1701px){.roo-nav{max-width:25%}}@media(max-width: 1200px){.navbar-brand{margin:0}}button.btn.toggleSideNav.roo-sidebarsidebutton.sidebarsidebuttoned{margin:0 auto;padding:1em}button.btn.toggleSideNav.roo-sidebarsidebutton:hover{background-color:#f5f5f5;color:#000;transition:.75s}@media(max-width: 1400px){button.btn.toggleSideNav.roo-sidebarsidebutton.sidebarsidebuttoned{margin:0 auto;padding:1em}}.push{height:10em}.footer{position:absolute;left:0;bottom:0;height:9em;width:100%;background-color:#f5f5f5;color:#000}.footer a{color:#34d;text-decoration:underline}.footer .container{margin-top:2em}.footer .col-sm-12.col-md-4.archiveLink{line-height:1.3em}@media only screen and (max-width: 750px){footer .col-sm-12.col-md-4{margin:0 0 1em 0}.footer{height:13em}.push{height:14em}.footer-link{margin:1em 0}footer .col-sm-12.col-md-4:last-child,.footer-link:last-child,.col-sm-12.col-md-4:first-child{margin:0}}body{background-image:url("../img/backgroundimage");background-repeat:repeat;font-family:"Tahoma",Arial,sans-serif;font-size:1rem;background-size:unset;background-position:unset;background-attachment:unset}p a,tbody a{text-decoration:underline}a{color:#34d}small{font-size:unset}tbody a:visited{color:#848}p{font-family:"Tahoma",Arial,sans-serif;font-weight:normal;margin:1em;font-size:1rem}.alert .alert-success .hallintailmot{bottom:0;right:0;left:0;position:fixed;width:100%}body.archive{background-image:none;background-color:#f5f5f5;color:#000}body.archive .archiveBanner a{color:#fff}body.archive .archiveBanner{background-color:#0079c2;color:#fff;text-align:center;padding:.75em;width:100%;margin-bottom:1em}table{table-layout:fixed;width:100%}table thead tr th{font-size:1em;font-weight:400;vertical-align:middle}td.nimi{padding:.5em}.table td,.table th{vertical-align:middle;background-color:rgba(0,0,0,0)}.table-hover tbody tr:hover>td{background-color:rgba(0,0,0,.075) !important}.opas_opintojaksotaulu tbody tr.STUDY_MODULE td,.opas_opintojaksotaulu tbody tr.CATEGORY td,.opas_opintojaksotaulu tbody tr.OFFERING td,.opas_opintojaksotaulu tbody tr.CLASSIFICATION td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.STUDY_MODULE td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.CATEGORY td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.OFFERING td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.CLASSIFICATION td,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.STUDY_MODULE td,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.CATEGORY td,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.OFFERING td,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.CLASSIFICATION td,.opas_opintojaksotaulu.opas_rakenne tbody tr.STUDY_MODULE td,.opas_opintojaksotaulu.opas_rakenne tbody tr.CATEGORY td,.opas_opintojaksotaulu.opas_rakenne tbody tr.OFFERING td,.opas_opintojaksotaulu.opas_rakenne tbody tr.CLASSIFICATION td{border:1px solid #dee2e6}.opas_opintojaksotaulu tbody tr.level-1.STUDY_MODULE,.opas_opintojaksotaulu tbody tr.level-1.CATEGORY,.opas_opintojaksotaulu tbody tr.level-1.OFFERING,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-1.STUDY_MODULE,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-1.CATEGORY,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-1.OFFERING,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-1.STUDY_MODULE,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-1.CATEGORY,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-1.OFFERING,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-1.STUDY_MODULE,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-1.CATEGORY,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-1.OFFERING{background-color:hsl(214.2857142857,4.0462427746%,58.9215686275%);color:#000}.opas_opintojaksotaulu tbody tr.level-1.CLASSIFICATION,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-1.CLASSIFICATION,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-1.CLASSIFICATION,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-1.CLASSIFICATION{background-color:hsl(214.2857142857,4.0462427746%,118.9215686275%);color:#000}.opas_opintojaksotaulu tbody tr.level-2.STUDY_MODULE,.opas_opintojaksotaulu tbody tr.level-2.CATEGORY,.opas_opintojaksotaulu tbody tr.level-2.OFFERING,.opas_opintojaksotaulu tbody tr.level-2.CLASSIFICATION,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-2.STUDY_MODULE,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-2.CATEGORY,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-2.OFFERING,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-2.CLASSIFICATION,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-2.STUDY_MODULE,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-2.CATEGORY,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-2.OFFERING,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-2.CLASSIFICATION,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-2.STUDY_MODULE,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-2.CATEGORY,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-2.OFFERING,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-2.CLASSIFICATION{padding-left:1.25em;background-color:hsl(214.2857142857,4.0462427746%,83.9215686275%);color:#000}.opas_opintojaksotaulu tbody tr.level-3.STUDY_MODULE,.opas_opintojaksotaulu tbody tr.level-3.CATEGORY,.opas_opintojaksotaulu tbody tr.level-3.OFFERING,.opas_opintojaksotaulu tbody tr.level-3.CLASSIFICATION,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-3.STUDY_MODULE,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-3.CATEGORY,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-3.OFFERING,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-3.CLASSIFICATION,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-3.STUDY_MODULE,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-3.CATEGORY,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-3.OFFERING,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-3.CLASSIFICATION,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-3.STUDY_MODULE,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-3.CATEGORY,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-3.OFFERING,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-3.CLASSIFICATION{background-color:hsl(214.2857142857,4.0462427746%,108.9215686275%);color:#000}.opas_opintojaksotaulu tbody tr.level-4.STUDY_MODULE,.opas_opintojaksotaulu tbody tr.level-4.CATEGORY,.opas_opintojaksotaulu tbody tr.level-4.OFFERING,.opas_opintojaksotaulu tbody tr.level-4.CLASSIFICATION,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-4.STUDY_MODULE,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-4.CATEGORY,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-4.OFFERING,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody tr.level-4.CLASSIFICATION,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-4.STUDY_MODULE,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-4.CATEGORY,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-4.OFFERING,.opas_opintojaksotaulu.opas_classificationtaulu tbody tr.level-4.CLASSIFICATION,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-4.STUDY_MODULE,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-4.CATEGORY,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-4.OFFERING,.opas_opintojaksotaulu.opas_rakenne tbody tr.level-4.CLASSIFICATION{background-color:hsl(214.2857142857,4.0462427746%,123.9215686275%);color:#000}h1,h2,h3,h4,h5,h6{font-family:"Oswald",sans-serif;font-weight:normal;word-wrap:break-word}h1{font-size:2.2rem}h2{font-size:1.4rem;margin-top:.5rem}h3{font-size:1.2rem;margin-top:.5rem}h4{font-size:1rem}h5{font-size:1rem}h6{font-size:1rem}.courseunitDescriptions h3,.realizationDescriptions h3,#degreeProgrammeDescriptions h3,#curriculumDescriptions h3,#courseunitDescriptions h3,#realization_description h3,#specialisationDescriptions h3,#offeringKuvaus h3,.opslistContent{margin:1.5em 1em 1em 1em}.opas-card{margin:.75em 0}.realization.listItem{margin:.5em;padding:.5em}.realization.listItem a{color:#000;text-decoration:underline}.realization.listItem .detail{font-size:95%}span.ml-3{margin-left:1em}.cardName{display:flex}.hidden{display:none}.ajoituslista{list-style:none}.showhidebutts{display:inline-block;width:1.2em;height:1.2em}.showhidebutts .showhidebutt{cursor:pointer;color:#0079c2}.showhidebutts .showhidebutt.hide,.showhidebutts .showhidebutt.show{display:none}.hidesThenShowsButtonContainer .structureTimingButtons,.hidesThenShowsButtonContainer .classificationButtons{text-align:right}.hidesThenShowsButtonContainer li.list-group-item{padding:.75em .75em .75em 0rem}.hidesThenShowsButtonContainer .btn{margin:.5em;padding:.5em;font-size:90%}@media(max-width: 800px){.hideThenShowButtonContainer .structureTimingButtons,.hideThenShowButtonContainer .classificationButtons{text-align:center}}.collapsesArea{color:inherit;text-decoration:inherit}.collapsesArea .showhidebutts .showhidebutt.hide{display:inline-block}.collapsesArea .showhidebutts .showhidebutt.show{display:none}.collapsesArea.collapsed .showhidebutts .showhidebutt.hide{display:none}.collapsesArea.collapsed .showhidebutt.show{display:inline-block}.containsToggleableArea .showhidebutts .showhidebutt.hide{display:inline-block}.containsToggleableArea .showhidebutts .showhidebutt.show{display:none}.containsToggleableArea.collapsedArea .toggleableArea{display:none}.containsToggleableArea.collapsedArea .showhidebutts .showhidebutt.hide{display:none}.containsToggleableArea.collapsedArea .showhidebutts .showhidebutt.show{display:inline-block}.handeli:hover{cursor:grab}.handeli:active{cursor:grabbing}.realizationDescriptions{padding:.9em .9em .9em .9em}.realizationDescriptions p{margin:1em}.realizationDescriptions p,.realizationDescriptions li{font-size:1rem}.realizationDetails{padding:.9em .9em .9em .9em}.realizationDetails p{margin:1em}.realizationDetails p,.realizationDetails li{font-size:unset}.realizationDetails div{padding:0}.row.realizationDetails,.otsikot-info{background-color:#f5f5f5;color:#000;border-radius:.5em;padding:1em;margin:1em 0}.roo-border-right{border-right:.5px #000 solid}.whitelistItems .whitelistItem{padding:.75em .75em .75em .75em;cursor:pointer}.whitelistItems .whitelistItem .whitelistItemName{color:#000}.whitelistItems .whitelistItem .whitelistItemName.hasNameOverride .itemName{text-decoration:line-through}.whitelistItems .whitelistItem span.langKey{color:#888}.whitelistItems .whitelistItem.notInUse .whitelistItemName{color:#888;text-decoration:line-through}.whitelistItems .whitelistItem.notInUse .whitelistItemName .itemName{font-size:.9em;opacity:.45}.whitelistItems .whitelistItem.notInUse .whitelistItemName .itemNameOverride{font-size:.9em;opacity:.45}.whitelistItems .whitelistItem.sortable-ghost{background-color:#f5f5f5;border-radius:.9em;margin:.75em 0rem .75em 0rem}.configurableToggleable.notInUse{color:#888;text-decoration:line-through}.visibilityIndicator .btn{width:150px}.visibilityIndicator .notVisible{display:none}.visibilityIndicator .visible{display:inline-block;background-color:#228b22}.visibilityIndicator.notVisible .notVisible{display:inline-block;background-color:red;color:#fff}.visibilityIndicator.notVisible .visible{display:none}.curriculumStartYear .card-header{padding:0rem 0rem 0rem 0rem}.curriculumStartYear .card-header .btn-link a,.curriculumStartYear .card-header .opsi a{color:#34d}.roo-scrollToTopButt{position:fixed;display:none;height:.25em;right:1em;bottom:1em;color:#fff;text-align:center;line-height:1.25em;font-size:2.5em;cursor:pointer;animation-duration:1s;animation-name:ilmestys}.roo-scrollToTopButt i.fas{transform:translateX(50%);transform:translateY(50%)}.roo-scrollToTopButt.show{display:block;color:#0079c2}@keyframes ilmestys{from{opacity:0}to{opacity:1}}.opas_opintojaksotaulu{border-collapse:collapse}.opas_opintojaksotaulu.hidden{display:none}.opas_opintojaksotaulu tbody td.laajuus,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody td.laajuus,.opas_opintojaksotaulu.opas_classificationtaulu tbody td.laajuus,.opas_opintojaksotaulu.opas_rakenne tbody td.laajuus{text-align:center;padding:0;white-space:nowrap}.opas_opintojaksotaulu tbody .COURSE_UNIT,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .COURSE_UNIT,.opas_opintojaksotaulu.opas_classificationtaulu tbody .COURSE_UNIT,.opas_opintojaksotaulu.opas_rakenne tbody .COURSE_UNIT{font-size:.9em}@media only screen and (max-width: 768px){.opas_opintojaksotaulu tbody .COURSE_UNIT td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .COURSE_UNIT td,.opas_opintojaksotaulu.opas_classificationtaulu tbody .COURSE_UNIT td,.opas_opintojaksotaulu.opas_rakenne tbody .COURSE_UNIT td{font-size:90% !important}}.opas_opintojaksotaulu tbody .STUDY_MODULE,.opas_opintojaksotaulu tbody .OFFERING,.opas_opintojaksotaulu tbody .CATEGORY,.opas_opintojaksotaulu tbody .CLASSIFICATION,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .STUDY_MODULE,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .OFFERING,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .CATEGORY,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .CLASSIFICATION,.opas_opintojaksotaulu.opas_classificationtaulu tbody .STUDY_MODULE,.opas_opintojaksotaulu.opas_classificationtaulu tbody .OFFERING,.opas_opintojaksotaulu.opas_classificationtaulu tbody .CATEGORY,.opas_opintojaksotaulu.opas_classificationtaulu tbody .CLASSIFICATION,.opas_opintojaksotaulu.opas_rakenne tbody .STUDY_MODULE,.opas_opintojaksotaulu.opas_rakenne tbody .OFFERING,.opas_opintojaksotaulu.opas_rakenne tbody .CATEGORY,.opas_opintojaksotaulu.opas_rakenne tbody .CLASSIFICATION{font-weight:normal;font-size:1em}@media only screen and (max-width: 768px){.opas_opintojaksotaulu tbody .STUDY_MODULE td,.opas_opintojaksotaulu tbody .OFFERING td,.opas_opintojaksotaulu tbody .CATEGORY td,.opas_opintojaksotaulu tbody .CLASSIFICATION td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .STUDY_MODULE td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .OFFERING td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .CATEGORY td,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .CLASSIFICATION td,.opas_opintojaksotaulu.opas_classificationtaulu tbody .STUDY_MODULE td,.opas_opintojaksotaulu.opas_classificationtaulu tbody .OFFERING td,.opas_opintojaksotaulu.opas_classificationtaulu tbody .CATEGORY td,.opas_opintojaksotaulu.opas_classificationtaulu tbody .CLASSIFICATION td,.opas_opintojaksotaulu.opas_rakenne tbody .STUDY_MODULE td,.opas_opintojaksotaulu.opas_rakenne tbody .OFFERING td,.opas_opintojaksotaulu.opas_rakenne tbody .CATEGORY td,.opas_opintojaksotaulu.opas_rakenne tbody .CLASSIFICATION td{font-size:85% !important}}.opas_opintojaksotaulu tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu tbody .OFFERING td.koodi,.opas_opintojaksotaulu tbody .CATEGORY td.koodi,.opas_opintojaksotaulu tbody .COURSE_UNIT td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .OFFERING td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .CATEGORY td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .COURSE_UNIT td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .OFFERING td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .CATEGORY td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .COURSE_UNIT td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .OFFERING td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .CATEGORY td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .COURSE_UNIT td.koodi{padding-left:1.25em;font-size:.75em}@media only screen and (max-width: 768px){.opas_opintojaksotaulu tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu tbody .OFFERING td.koodi,.opas_opintojaksotaulu tbody .CATEGORY td.koodi,.opas_opintojaksotaulu tbody .COURSE_UNIT td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .OFFERING td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .CATEGORY td.koodi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .COURSE_UNIT td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .OFFERING td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .CATEGORY td.koodi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .COURSE_UNIT td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .STUDY_MODULE td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .OFFERING td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .CATEGORY td.koodi,.opas_opintojaksotaulu.opas_rakenne tbody .COURSE_UNIT td.koodi{font-size:80% !important}}.opas_opintojaksotaulu tbody .level-1 td.nimi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .level-1 td.nimi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .level-1 td.nimi,.opas_opintojaksotaulu.opas_rakenne tbody .level-1 td.nimi{padding-left:.5em}.opas_opintojaksotaulu tbody .level-2 td.nimi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .level-2 td.nimi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .level-2 td.nimi,.opas_opintojaksotaulu.opas_rakenne tbody .level-2 td.nimi{padding-left:2em}.opas_opintojaksotaulu tbody .level-3 td.nimi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .level-3 td.nimi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .level-3 td.nimi,.opas_opintojaksotaulu.opas_rakenne tbody .level-3 td.nimi{padding-left:4em}.opas_opintojaksotaulu tbody .level-4 td.nimi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .level-4 td.nimi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .level-4 td.nimi,.opas_opintojaksotaulu.opas_rakenne tbody .level-4 td.nimi{padding-left:6em}.opas_opintojaksotaulu tbody .level-5 td.nimi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .level-5 td.nimi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .level-5 td.nimi,.opas_opintojaksotaulu.opas_rakenne tbody .level-5 td.nimi{padding-left:8em}.opas_opintojaksotaulu tbody .level-6 td.nimi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .level-6 td.nimi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .level-6 td.nimi,.opas_opintojaksotaulu.opas_rakenne tbody .level-6 td.nimi{padding-left:10em}.opas_opintojaksotaulu tbody .level-7 td.nimi,.opas_opintojaksotaulu.opas_ajoitusrakenne tbody .level-7 td.nimi,.opas_opintojaksotaulu.opas_classificationtaulu tbody .level-7 td.nimi,.opas_opintojaksotaulu.opas_rakenne tbody .level-7 td.nimi{padding-left:12em}.opas_ajoitusrakenne .opas_ajoitusrakennetaulu .collapse .studyModuleDescriptions{width:500px;font-weight:normal}.opas_ajoitusrakenne .opas_ajoitusrakennetaulu .collapse .studyModuleDescriptions p{font-weight:normal}.opas_ajoitusrakenne .opas_ajoitusrakennetaulu tbody tr td .nimi{cursor:pointer}.opas_ajoitusrakenne .opas_ajoitusrakennetaulu tbody tr td.laajuus{text-align:center;padding:0;white-space:nowrap}.opas_ajoitusrakenne .opas_ajoitusrakennetaulu tbody tr .timings_year,.opas_ajoitusrakenne .opas_ajoitusrakennetaulu tbody tr .timings_semester,.opas_ajoitusrakenne .opas_ajoitusrakennetaulu tbody tr .timings_period{text-align:center}.opas_ajoitusrakenne .opas_ajoitusrakennetaulu tbody tr.creditSumRow{font-size:120%}.opas_classificationtaulu tr.level-1.CLASSIFICATION{font-size:120%}.opas_classificationtaulu tr.level-2 td.nimi a{margin-left:1em}.opas_classificationtaulu .opas_rakenne{border-collapse:collapse}.opas_classificationtaulu .opas_rakenne tbody tr td .nimi{cursor:pointer}.opas_classificationtaulu .opas_rakenne tbody tr td.laajuus{text-align:center;padding:0;white-space:nowrap}.opas_classificationtaulu .opas_rakenne tbody tr.level-1{font-size:120%}.opas_classificationtaulu .opas_rakenne tbody tr.level-2>.nimi{margin-left:1em}.opas_classificationtaulu .opas_rakenne tbody tr.level-3>.nimi{margin-left:2em}.opas_classificationtaulu .opas_rakenne tbody tr.STUDY_MODULE{font-size:120%}.opas_classificationtaulu .opas_rakenne tbody tr.OFFERING{font-size:120%}.opas_classificationtaulu .opas_rakenne tbody tr.COURSE_UNIT .nimi a{margin-left:1em}.getsHiddenByButton.hidden{display:none}.pointer{cursor:pointer}.bold{font-weight:bold}.box-shadow{box-shadow:0px 0px 20px 5px #ddd}.border-radius{border-radius:5px}.selected{font-weight:600 !important}.box-shadow{box-shadow:0 5px 10px #c8c8c8}.toteutus.card{margin:.5em}.no-margin{margin:0}.no-list-style{list-style:none}.no-padding{padding:0}.degree-info h6{font-weight:400}details{width:500px}.studyModuledetails .descriptionsList{padding:1em;background-color:#f5f5f5;color:#000}.studyModuledetails .descriptionsList h4{font-weight:500;font-size:.9em}.studyModuledetails .descriptionsList p{font-size:1em}a.opas-card{text-decoration:none !important;width:100%}a.opas-card :hover{background-color:#f5f5f5 !important}.opas-card .cardCollapseStateIndicator{color:#0079c2;margin-right:.3em;display:flex;justify-content:center;align-items:center}.opas-card .cardCollapseStateIndicator .expanded{display:inline-block}.opas-card .cardCollapseStateIndicator .compressed{display:none}.opas-card .collapsed .cardCollapseStateIndicator .expanded{display:none}.opas-card .collapsed .cardCollapseStateIndicator .compressed{display:inline-block}summary{font-size:13px}.underline{text-decoration:underline}li.language.hide{display:none}li.language.show{display:block;border:none}.anchored{display:flex}.anchored h1,.anchored h2,.anchored h3,.anchored h4,.anchored.cardCollapseStateIndicator{margin:0 .25em 0 .25em}.subtitle{font-size:.9em}.btn,button{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.row.height{height:inherit}p.optionality{font-size:.688rem;margin:0 0 .5em 0}button.btn.rounded.card-header.pointer:hover,button.btn.rounded.card-header.pointer:focus{background-color:#f5f5f5;color:#000}.hideThenShowButtonContainer li.nav-item{margin:.5em}li.nav-item,.curriculumAttachmentLink,.structureButtons>.row{max-width:95%}.hideThenShowButtonContainer li button{width:100%}.hideThenShowButtonContainer li button.btn.btn-primary.active,.classificationButtons li button.btn.active{background-color:#8baddc;color:#000}button.opasPopover.btn.btn-outline-secondary.btn-sm.float-end{margin:.75em;background-color:#fff;color:#000}@media only screen and (max-width: 768px){button.opasPopover.btn.btn-outline-secondary.btn-sm.float-end{font-size:10px !important}}button.opasPopover.btn.btn-outline-secondary.btn-sm.float-end:hover{background-color:#8baddc;color:#000}th.nimi.header{width:50%}th.code.header,th.laajuus.header{width:10%}.screen-reader-only{position:absolute;height:1px;width:1px;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);clip-path:polygon(0px 0px, 0px 0px, 0px 0px);-webkit-clip-path:polygon(0px 0px, 0px 0px, 0px 0px);overflow:hidden !important}.roo-closeButton{position:absolute;right:0px;top:0px}.past .opas-card .card button.card-header{background-color:#ccc;color:#000}.present .opas-card .card button.card-header{background-color:#cbfdcb;color:#000}.future .opas-card .card button.card-header{background-color:#d6ebf2;color:#000}li.roo-link-item{background-color:#f5f5f5;color:#000;list-style:none;margin:1em 0;padding:0;width:100%}li.roo-link-item a{color:#000;padding:1em;display:block;width:100%;height:100%}li.roo-link-item:hover{background-color:rgba(0,0,0,.1)}li.roo-link-item:hover a{text-decoration:underline}a{color:#000;text-decoration:underline}li.dg{padding-left:.25em;list-style:none;margin:1em}.tag-OO-SDG-1{color:#fff;width:25px;background-color:#e5243b}.tag-OO-SDG-2{color:#fff;width:25px;background-color:#dda63a}.tag-OO-SDG-3{color:#fff;width:25px;background-color:#4c9f38}.tag-OO-SDG-4{color:#fff;width:25px;background-color:#c5192d}.tag-OO-SDG-5{color:#fff;width:25px;background-color:#ff3a21}.tag-OO-SDG-6{color:#fff;width:25px;background-color:#26bde2}.tag-OO-SDG-7{color:#fff;width:25px;background-color:#fcc30b}.tag-OO-SDG-8{color:#fff;width:25px;background-color:#a21942}.tag-OO-SDG-9{color:#fff;width:25px;background-color:#fd6925}.tag-OO-SDG-10{color:#fff;width:25px;background-color:#dd1367}.tag-OO-SDG-11{color:#fff;width:25px;background-color:#fd9d24}.tag-OO-SDG-12{color:#fff;width:25px;background-color:#bf8b2e}.tag-OO-SDG-13{color:#fff;width:25px;background-color:#3f7e44}.tag-OO-SDG-14{color:#fff;width:25px;background-color:#0a97d9}.tag-OO-SDG-15{color:#fff;width:25px;background-color:#56c02b}.tag-OO-SDG-16{color:#fff;width:25px;background-color:#00689d}.tag-OO-SDG-17{color:#fff;width:25px;background-color:#19486a}.menuItemSubHead,.roo-link-item,li.roo-menu-offering{background-color:#f5f5f5;color:#000;list-style:none;margin:0 0 1em 0}.menuItemSubHead li.dg a,.roo-link-item li.dg a,li.roo-menu-offering li.dg a{color:#000;text-decoration:underline !important}.menuItemSubHead h4,.roo-link-item h4,li.roo-menu-offering h4{font-size:100%}.menuItemSubHead h3,.roo-link-item h3,li.roo-menu-offering h3{font-size:125%}.listimage{background-position:center;background-size:cover;transition:transform .5s ease;overflow:hidden}a:hover .listimage,a:focus-visible .listimage{transform:scale(1.05)}.menuItemSubHead{padding:1em}h2 a,h3 a,h4 a{color:#000;padding-left:.25em}.menuItemSubHead.fi{background-color:#f5f5f5;color:#000}.menuItemSubHead.fi a{color:#000}.menuItemSubHead.en{background-color:#f5f5f5;color:#000}.menuItemSubHead.en a{color:#000}.statement__section{margin-top:2em;margin-bottom:4em}.statement__inaccessible{margin-bottom:2em}.flaws{margin-top:1em;padding-left:0}.flaw{margin-bottom:1em;list-style:none;background-color:#f5f5f5;padding:.5em}.flaw__title{margin-bottom:1em}.flaw__subtitle{margin-bottom:1em}.flaw p{margin-bottom:1em}.flaw ul{margin-bottom:1em}.flaw__wcag li{margin:0}.opas-card .row .col-md-4.group{padding:0}@media only screen and (max-width: 600px){div#courseunitDescriptions h4,div#curriculumDescriptions h4{margin:.5em}.card-body,.roo-contentarea{padding:.25em}.opas-card{margin:.2em}.opas-card .row .col-md-4.group{padding-left:15px !important}.roo-contentarea{margin:.5em}.row.realizationDetails{padding:0;margin:0}.realizationDescriptions p{margin:.5em 0}button.btn.rounded.card-header{padding:.5em;text-decoration:none}}table.table-hover.table-bordered.table-sticky.table-responsive-sm th{position:sticky;top:-1px;z-index:990}table{background-color:#fff}@media(max-width: 768px){table td{font-size:110% !important;padding-left:.5em !important}table.table-hover.table-bordered.table-sticky.table-responsive-sm th{font-size:100% !important}.card-body{padding:1rem 0 !important}.roo-contentarea{padding:.5em !important}}.list-group .list-group-item .badge{float:right}.anchorjs-link{transition:all .25s linear;opacity:.25}*:hover>.anchorjs-link{opacity:1}.btn-primary{color:#fff;background-color:#0079c2;border-color:#0079c2}a{text-decoration:none}a:hover{text-decoration:underline}a.btn:hover{text-decoration:none;background-color:#d5d6d8}.btn-primary:hover,.btn-secondary:active,.btn-secondary:active,.btn-outline-info.active,.btn-outline-info:active,a.btn-secondary:active,a.btn-secondary:active,a.btn-outline-info.active,a.btn-outline-info:active,.btn-primary.active,.btn-primary:active,a.btn-primary.active,a.btn-primary:active,.btn-secondary:hover,.btn-outline-info:hover,.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.structureButtons .nav-link:focus,.btn-primary.focus,.btn-primary:focus{color:#000;background-color:#8baddc;border-color:#8baddc}.btn-secondary{color:#000;background-color:#8baddc;border-color:#4e555b}.btn-outline-info{color:#fff;background-color:#0079c2;border-color:#0079c2}.btn-outline-secondary{color:#000}.btn-secondary:active:focus,.btn-secondary:active:focus{box-shadow:0 0 0 .2rem #8baddc}.badge-info{color:#fff;background-color:#0079c2;border:2px solid;border-color:#0079c2;font-weight:normal;padding:.9em 1em}nav.navbar.navbar-expand-sm{padding-right:0}.navbar .navbar-expand button.navbar-toggler{margin:auto;display:none}.navbar .navbar-expand button.navbar-toggler .navbar-toggler-show{display:block}@media(min-width: 960px){.navbar .navbar-expand-sm .navbar-toggler{display:none !important}}.table-striped tbody tr:nth-of-type(odd){background-color:hsl(214.2857142857,4.0462427746%,108.9215686275%)}.table thead th{background-color:#666;color:#fff;vertical-align:middle}@media(max-width: 1000px){button.btn.toggleSideNav.roo-sidebarsidebutton{background-color:#fff;font-size:150%;padding:0;display:none !important}}.popover{max-width:50%}@media only screen and (max-width: 600px){.popover{max-width:70%}}.structureButtons .nav-link{background-color:#0079c2;color:#fff;margin:.5em}.nav-pills .nav-link.active,.nav-pills .show>.nav-link,.nav-pills .nav-link:hover{background-color:#8baddc;color:#000;border:1px solid #8baddc}.nav-pills .nav-link{border-radius:.25rem;border:1px solid #eee}.nav-fill .nav-item,.nav-fill>.nav-link{margin:0 5px}.nav-fill .nav-item:first-child{margin-left:0}.nav-fill .nav-item:last-child{margin-right:0}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(0,0,0,.5)}i.fas.fa-circle{font-size:75%}.h4{font-size:100% !important}@media print{.roo-nav,.roo-header,.footer,.roo-scrollToTopButt,.roo-contentarea-search,button.opasPopover,#shareBtn{display:none !important}}
