  .visual {
    padding: 0 0 0 10px;
    width: 348px;
}
.visual ul {
    margin: 0;
    padding: 0;
}
.visual li {
    float: left;
    list-style: none outside none;
}
.visual li a {
    display: block;
    outline: medium none;
    width: 166px;
}
.visual li.help a, .visual li.schedule a {
    display: block;
    height: 66px;
    outline: medium none;
    text-indent: -9999px;
    width: 166px;
}
.visual li.download a {
    background-color: #FFFFFF;
    background-position: 5px 5px;
    background-repeat: no-repeat;
    border: 1px solid #EFEFEF;
    height: 179px;
    padding: 5px;
    text-indent: -99999px;
    width: 102px;
}
.visual li.download a:hover {
    background-color: #F2F2F2;
    border-color: #CCCCCC;
}
.visual li.download {
    margin: 0 10px 10px 0;
}
.visual li.download span {
    display: block;
    text-align: center;
}
.visual .summer a {
    background-image: url(/continuing-education/images/catalog_sm17.jpg);
}
.visual .fall a {
    background-image: url(/continuing-education/images/catalog_fa17.jpg);
}
.visual .spring a {
    background-image: url(/continuing-education/images/catalog_sp18.jpg);
}
.visual li.help a {
    background: url(/continuing-education/images/help.jpg) no-repeat scroll 0 0 transparent;
}
.visual li.schedule a {
    background: url(/continuing-education/images/schedule.jpg) no-repeat scroll 0 0 transparent;
}
.visual li.help a:hover, .visual li.schedule a:hover {
    background-position: 0 -66px;
}

.list {
    margin: 0 0 20px 20px;
    overflow: auto;
    padding: 0;
}
.list li {
    background: url(/continuing-education/images/bullet.gif) no-repeat scroll 0 50% transparent;
    list-style: none outside none;
    padding: 0 0 0 10px;
}
.contact {
    background: url(/continuing-education/images/contact_bg.jpg) no-repeat scroll 0 0 transparent;
    font: 11px Tahoma,serif;
    height: 120px;
    padding: 10px 15px 20px;
    width: auto;
}
.contact h3 {
    color: #2B519C;
    font: 18px georgia,serif;
    letter-spacing: -1px;
    margin: 0;
}
.contact ul {
    margin: 0 0 0 20px;
    padding: 0;
}
.contact li {
    clear: both;
    display: block;
    height: 15px;
    list-style: none outside none;
    margin: 0;
    padding: 2px 0;
}
.contact li strong {
    display: block;
    float: left;
    width: 130px;
}
.contact li span {
    display: block;
    float: left;
    height: auto;
    width: 140px;
}

.box {
	display: inline-block;
	position: relative;
	margin: 1%;
	margin-right: 9px;
	width: 31%;
	height: 150px;
	background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(245, 245, 245, 1) 0%, rgba(234, 234, 234, 1) 100%) repeat scroll 0 0;
	border: 1px solid #dddddd;
}
.box:hover {
	background: rgba(0, 0, 0, 0) linear-gradient(to bottom, rgba(217, 217, 217, 1) 0%, rgba(204, 204, 204, 1) 100%) repeat scroll 0 0;
}
.box:active {
	background-color: #b3b3b3;
	box-shadow: 0 1px 1px rgba(0, 0, 0, .3) inset, 0 0 1px rgba(0, 0, 0, 0.05);
}
a.boxLink {
	color: #222222;
}
.box span {
	display: inline-block;
	vertical-align: middle;
	line-height: normal;
	position: relative;
	top: 55px;
	text-shadow: 0 0 2px rgba(0, 0, 0, 0.3);
	font-size: 1.8em;
	font-weight: bold;
	font-color: #222222;
}

 
/* ── Jump nav ── */
 .jump-label {
     font-weight: 700;
     margin-bottom: 0.4rem;
     font-size: 0.95rem;
}
 .jump-nav {
     list-style: none;
     display: flex;
     flex-wrap: wrap;
     gap: 0.5rem 1rem;
     margin-bottom: 2rem;
     padding: 1rem 0;
}
/* ── Section headings ── */
 .programs h3 {
     font-size: 1.5rem;
     margin: 2.5rem 0 0.5rem;
     border-bottom: 2px solid #ff6600;
     padding-bottom: 0.4rem;
     color: #003366;
}
 .programs h4 {
     font-size: 1.15rem;
     margin: 1.5rem 0 0.75rem;
     color: #444;
}
/* ── Table wrapper ── */
 .table-wrap {
     overflow-x: auto;
     -webkit-overflow-scrolling: touch;
     margin-bottom: 1.5rem;
}
/* ── Table base styles ── */
 table {
     width: 100%;
     border-collapse: collapse;
     font-size: 0.95rem;
}
 caption {
     caption-side: top;
     text-align: left;
     font-size: 0.85rem;
     color: #555;
     margin-bottom: 0.4rem;
     font-style: italic;
}
 thead th {
     background-color: #003b71;
     color: #fff;
     text-align: left;
     padding: 0.65rem 0.85rem;
     font-weight: 600;
     white-space: nowrap;
}
 tbody tr:nth-child(odd) {
     background-color: #f5f8fc;
}
 tbody tr:nth-child(even) {
     background-color: #fff;
}
 tbody tr:focus-within {
     outline: 2px solid #005fac;
     outline-offset: -2px;
}
 td {
     padding: 0.6rem 0.5rem;
     vertical-align: top;
     border-bottom: 1px solid #d8e2ee;
     line-height: 1.4;
}
/* ── Mobile: card layout ── */
 @media (max-width: 640px) {
     table, thead, tbody, th, td, tr {
         display: block;
    }
     thead tr {
         position: absolute;
         top: -9999px;
         left: -9999px;
    }
     tbody tr {
         border: 1px solid #c5d3e0;
         border-radius: 6px;
         margin-bottom: 1rem;
         padding: 0.5rem 0;
         background: #fff;
         box-shadow: 0 1px 3px rgba(0,0,0,0.07);
    }
     td {
         border: none;
         border-bottom: 1px solid #eef1f5;
         padding: 0.5rem 0.85rem;
         display: flex;
         gap: 0.5rem;
    }
     td:last-child {
         border-bottom: none;
    }
    /* Data label injected via data-label attribute */
     td::before {
         content: attr(data-label);
         font-weight: 700;
         color: #003b71;
         min-width: 9rem;
         flex-shrink: 0;
         font-size: 0.85rem;
         padding-top: 0.05rem;
    }
}


div.feature{
        border:1px solid #f6f6f6;
        background-color:#d6e8ee;
        color:#001b3b;
        padding:20px;
    }