/** Reset some basic elements */
body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, hr, dl, dd, ol, ul, figure { margin: 0; padding: 0; }

/** Basic styling */
body { font: 400 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; color: #111; background-color: #fdfdfd; -webkit-text-size-adjust: 100%; -webkit-font-feature-settings: "kern" 1; -moz-font-feature-settings: "kern" 1; -o-font-feature-settings: "kern" 1; font-feature-settings: "kern" 1; font-kerning: normal; display: flex; min-height: 100vh; flex-direction: column; }

/** Set `margin-bottom` to maintain vertical rhythm */
h1, h2, h3, h4, h5, h6, p, blockquote, pre, ol, dl, figure, .highlight { margin-bottom: 15px; }

/** `main` element */
main { display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */ }

/** Images */
img { vertical-align: middle; }

/** Figures */
figure > img { display: block; }

figcaption { font-size: 14px; }

/** Lists */
ul, ol { margin-left: 30px; }

li > ul, li > ol { margin-bottom: 0; }

/** Headings */
h1, h2, h3, h4, h5, h6 { font-weight: 400; }

/** Links */
a { color: #2a7ae2; text-decoration: none; }

a:visited { color: #1756a9; }

a:hover { color: #111; text-decoration: underline; }

.social-media-list a:hover { text-decoration: none; }

.social-media-list a:hover .username { text-decoration: underline; }

/** Blockquotes */
blockquote { color: #828282; border-left: 4px solid #e8e8e8; padding-left: 15px; font-size: 18px; letter-spacing: -1px; font-style: italic; }

blockquote > :last-child { margin-bottom: 0; }

/** Code formatting */
pre, code { font-size: 15px; border: 1px solid #e8e8e8; border-radius: 3px; background-color: #eef; }

code { padding: 1px 5px; }

pre { padding: 8px 12px; overflow-x: auto; }

pre > code { border: 0; padding-right: 0; padding-left: 0; }

/** Wrapper */
.wrapper { max-width: -webkit-calc(800px - (30px * 2)); max-width: calc(800px - (30px * 2)); margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; }

@media screen and (max-width: 800px) { .wrapper { max-width: -webkit-calc(800px - (30px)); max-width: calc(800px - (30px)); padding-right: 15px; padding-left: 15px; } }

/** Clearfix */
.footer-col-wrapper:after, .wrapper:after { content: ""; display: table; clear: both; }

/** Icons */
.svg-icon { width: 16px; height: 16px; display: inline-block; fill: #828282; padding-right: 5px; vertical-align: text-top; }

.social-media-list li + li { padding-top: 5px; }

/** Tables */
table { margin-bottom: 30px; width: 100%; text-align: left; border-collapse: collapse; }

table th, table td { padding: 10px 15px; }

table th { border-bottom: 1px solid #dedede; border-bottom-color: #c9c9c9; }

/** Site header */
.site-header { border-top: 5px solid #424242; border-bottom: 1px solid #e8e8e8; min-height: 55.95px; position: relative; }

.site-title { font-size: 26px; font-weight: 300; line-height: 54px; letter-spacing: -1px; margin-bottom: 0; float: left; }

.site-title, .site-title:visited { color: #424242; }

.site-nav { float: right; line-height: 54px; }

.site-nav .nav-trigger { display: none; }

.site-nav .menu-icon { display: none; }

.site-nav .page-link { color: #111; line-height: 1.5; }

.site-nav .page-link:not(:last-child) { margin-right: 20px; }

@media screen and (max-width: 600px) { .site-nav { position: absolute; top: 9px; right: 15px; background-color: #fdfdfd; border: 1px solid #e8e8e8; border-radius: 5px; text-align: right; } .site-nav label[for="nav-trigger"] { display: block; float: right; width: 36px; height: 36px; z-index: 2; cursor: pointer; } .site-nav .menu-icon { display: block; float: right; width: 36px; height: 26px; line-height: 0; padding-top: 10px; text-align: center; } .site-nav .menu-icon > svg { fill: #424242; } .site-nav input ~ .trigger { clear: both; display: none; } .site-nav input:checked ~ .trigger { display: block; padding-bottom: 5px; } .site-nav .page-link { display: block; padding: 5px 10px; margin-left: 20px; } .site-nav .page-link:not(:last-child) { margin-right: 0; } }

/** Site footer */
.site-footer { border-top: 1px solid #e8e8e8; padding: 30px 0; }

.footer-heading { font-size: 18px; margin-bottom: 15px; }

.contact-list, .social-media-list { list-style: none; margin-left: 0; }

.footer-col-wrapper { font-size: 15px; color: #828282; margin-left: -15px; }

.footer-col { float: left; margin-bottom: 15px; padding-left: 15px; }

.footer-col-1 { width: -webkit-calc(35% - (30px / 2)); width: calc(35% - (30px / 2)); }

.footer-col-2 { width: -webkit-calc(20% - (30px / 2)); width: calc(20% - (30px / 2)); }

.footer-col-3 { width: -webkit-calc(45% - (30px / 2)); width: calc(45% - (30px / 2)); }

@media screen and (max-width: 800px) { .footer-col-1, .footer-col-2 { width: -webkit-calc(50% - (30px / 2)); width: calc(50% - (30px / 2)); } .footer-col-3 { width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } }

@media screen and (max-width: 600px) { .footer-col { float: none; width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } }

/** Page content */
.page-content { padding: 30px 0; flex: 1; }

.page-heading { font-size: 32px; }

.post-list-heading { font-size: 28px; }

.post-list { margin-left: 0; list-style: none; }

.post-list > li { margin-bottom: 30px; }

.post-meta { font-size: 14px; color: #828282; }

.post-link { display: block; font-size: 24px; }

/** Posts */
.post-header { margin-bottom: 30px; }

.post-title { font-size: 42px; letter-spacing: -1px; line-height: 1; }

@media screen and (max-width: 800px) { .post-title { font-size: 36px; } }

.post-content { margin-bottom: 30px; }

.post-content h2 { font-size: 32px; }

@media screen and (max-width: 800px) { .post-content h2 { font-size: 28px; } }

.post-content h3 { font-size: 26px; }

@media screen and (max-width: 800px) { .post-content h3 { font-size: 22px; } }

.post-content h4 { font-size: 20px; }

@media screen and (max-width: 800px) { .post-content h4 { font-size: 18px; } }

/** Syntax highlighting styles */
.highlight { background: #fff; }

.highlighter-rouge .highlight { background: #eef; }

.highlight .c { color: #998; font-style: italic; }

.highlight .err { color: #a61717; background-color: #e3d2d2; }

.highlight .k { font-weight: bold; }

.highlight .o { font-weight: bold; }

.highlight .cm { color: #998; font-style: italic; }

.highlight .cp { color: #999; font-weight: bold; }

.highlight .c1 { color: #998; font-style: italic; }

.highlight .cs { color: #999; font-weight: bold; font-style: italic; }

.highlight .gd { color: #000; background-color: #fdd; }

.highlight .gd .x { color: #000; background-color: #faa; }

.highlight .ge { font-style: italic; }

.highlight .gr { color: #a00; }

.highlight .gh { color: #999; }

.highlight .gi { color: #000; background-color: #dfd; }

.highlight .gi .x { color: #000; background-color: #afa; }

.highlight .go { color: #888; }

.highlight .gp { color: #555; }

.highlight .gs { font-weight: bold; }

.highlight .gu { color: #aaa; }

.highlight .gt { color: #a00; }

.highlight .kc { font-weight: bold; }

.highlight .kd { font-weight: bold; }

.highlight .kp { font-weight: bold; }

.highlight .kr { font-weight: bold; }

.highlight .kt { color: #458; font-weight: bold; }

.highlight .m { color: #099; }

.highlight .s { color: #d14; }

.highlight .na { color: #008080; }

.highlight .nb { color: #0086B3; }

.highlight .nc { color: #458; font-weight: bold; }

.highlight .no { color: #008080; }

.highlight .ni { color: #800080; }

.highlight .ne { color: #900; font-weight: bold; }

.highlight .nf { color: #900; font-weight: bold; }

.highlight .nn { color: #555; }

.highlight .nt { color: #000080; }

.highlight .nv { color: #008080; }

.highlight .ow { font-weight: bold; }

.highlight .w { color: #bbb; }

.highlight .mf { color: #099; }

.highlight .mh { color: #099; }

.highlight .mi { color: #099; }

.highlight .mo { color: #099; }

.highlight .sb { color: #d14; }

.highlight .sc { color: #d14; }

.highlight .sd { color: #d14; }

.highlight .s2 { color: #d14; }

.highlight .se { color: #d14; }

.highlight .sh { color: #d14; }

.highlight .si { color: #d14; }

.highlight .sx { color: #d14; }

.highlight .sr { color: #009926; }

.highlight .s1 { color: #d14; }

.highlight .ss { color: #990073; }

.highlight .bp { color: #999; }

.highlight .vc { color: #008080; }

.highlight .vg { color: #008080; }

.highlight .vi { color: #008080; }

.highlight .il { color: #099; }

:root { /* ===== COLORS ===== */ --background-color: #ffecb1; --heading-color: #507a92; --color-secondary: #cd3624; --color-tertiary: #2455a6; --color-quaternary: #0eadda; --table-color: #fef6d6; --text-color: #000; /* ===== FONTS ===== */ /* ===== TRANSITIONS ===== */ --tran-02: all 0.2s ease; --tran-03: all 0.3s ease; --tran-04: all 0.4s ease; --tran-05: all 0.5s ease; /* SIDEBAR */ --sidebar-width: 220px; /* ANNOUNCEMENT BAR */ --footer-height: 100px; /* SCREEN WIDTHS */ --small-screen: 480px; --med-screen: 768px; }

body { margin: 0; padding: 0; background: var(--background-color); color: var(--text-color); }

/* ===== SIDEBAR NAVIGATION ===== */
.logo { width: 50%; margin: auto; max-width: 150px; }

.sidebar { background: var(--background-color); font-family: var(--font-primary); position: sticky; display: block; z-index: 99; font-weight: 500; }

.sidebar-toggle { position: fixed; top: 0; flex-direction: column; justify-content: space-between; width: 100%; height: 30px; display: none; z-index: 50; top: 15px; left: 15px; cursor: pointer; }

.sidebar-toggle img { padding: 10px; }

.menu-bar { display: flex; flex-direction: row; justify-content: space-evenly; flex-wrap: nowrap; padding-top: 10px; width: 100%; overflow-x: auto; overflow-y: hidden; padding: 30px 5px; background-color: var(--background-color); position: fixed; z-index: 999; }

.nav-element { height: 50px; margin-top: 10px; display: flex; align-items: center; }

.nav-link { height: 100%; width: 100%; display: flex; align-items: center; text-decoration: none; padding: 0.5rem 1rem; transition: transform 0.2s; }

.nav-link:hover { text-decoration: none; transform: scale(1.1); font-weight: 600; color: #3d667e; }

.nav-icon { height: 40px; width: 40px; justify-content: center; font-size: 20px; margin: 0px 15px; }

.home-icon { margin: 0 14px; height: auto; width: 100px; }

.nav-text { max-width: 100%; font-size: 1.5rem; color: var(--heading-color); }

.nav-icon, .nav-text { color: var(--heading-color); transition: var(--tran-03); }

.divider { height: 3px; width: 100%; margin-top: 17px; background: #2a2a2a; }

.name { font-weight: 800; }

@media (max-width: 990px) { .sidebar { display: none; padding-top: 40px !important; position: fixed; width: 225px; flex-direction: column; align-items: flex-start; z-index: 50; height: 100%; background-color: #ffdf80; } .sidebar-toggle { display: block; z-index: 50; position: fixed; color: --var(--heading-color); } .menu-bar { flex-direction: column; padding: 15px; width: 250px; height: 700px; background: none; } .page-container { padding-top: 50px !important; } .staff-page-container { padding-top: 50px !important; } .home-page-layout { padding-top: 20px !important; } .home-icon { margin-left: 0 !important; } }

#hamburger { width: 65px; height: 65px; }

/* ===== HOME LAYOUT ===== */
.course-poster-container { width: 100%; margin: auto; }

.couse-poster-img { display: block; }

@media (max-width: 768px) { .course-poster-container { display: block; } }

#home-page-grid { display: grid; grid-template-columns: 20% 80%; }

#grid-content-area { overflow-x: hidden; }

.gradient { background: linear-gradient(rgba(255, 0, 184, 0.2), rgba(18, 18, 18, 0.1)); height: 200px; width: 100%; }

#home-gradient { background: linear-gradient(rgba(255, 0, 184, 0.2), rgba(18, 18, 18, 0.1)); height: 200px; width: 100%; }

#gradient-container { height: 5px; overflow-x: clip; overflow-y: visible; }

#home-page-container { overflow: auto; padding: 20px 100px; }

#welcome-message { /* top | right | bottom | left */ padding: 50px 0px 0px 0px; text-align: center; font-size: 2rem; font-weight: bold; z-index: 30; }

#welcome-sub-message { padding: 0px 0px 30px 0px; font-size: 1.3rem; font-weight: bold; text-align: center; z-index: 30; }

.course-description-container { display: flex; flex-direction: column; justify-content: center; align-items: center; }

.course-description-text { text-align: left; font-size: 13px; padding: 10px; color: var(--text-color); background: var(--color-secondary); font-family: var(--font-primary); }

.home-quick-links-container { align-items: center; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: space-around; gap: 25px; margin-top: 20px; text-align: left; padding: 10px; color: #000; background: var(--color-secondary); font-family: var(--font-primary); }

.home-quick-links-element { flex-grow: 1; flex-basis: 25%; background: #fefc8c; padding: 0; border: none; border-radius: 5px; text-overflow: ellipsis; }

.home-quick-links-element > a { text-decoration: none; }

.home-quick-links-icon { height: 40px; width: 40px; justify-content: center; font-size: 20px; }

.home-quick-links-text { color: #000; font-size: 15px; padding: 0 10px; text-decoration: none; text-align: left; }

.home-resources { display: flex; justify-content: space-between; margin-top: 10px; gap: 10px; flex-wrap: wrap; }

.home-resources-info { font-size: 14.5px; padding: 15px; border: 2px solid #000; width: 100%; }

.assignments { height: 100%; --bg: var(--color-secondary); background-color: var(--bg); color: #fff; }

.red-bg .link { color: var(--sidebar-color); }

.red-bg .link:visited { color: black; }

.yellow-black-text { color: var(--sidebar-color); text-shadow: #000 2px 2px; }

.dates { height: 100%; background-color: var(--sidebar-color); color: #000; }

.yellow-bg .link { color: var(--color-secondary); }

.red-cyan-text { color: var(--color-secondary); text-shadow: var(--color-quaternary) 1px 1px; }

.resources { height: 100%; background-color: #fc8219; color: #000; }

.orange-bg .link { color: #fff; }

.orange-bg .link:visited { color: #8813a6; }

.yellow-cyan-text { color: var(--sidebar-color); text-shadow: var(--color-quaternary) 1px 1px; }

.hours { height: 100%; background-color: var(--color-quaternary); color: #000; }

.cyan-bg .link { color: var(--sidebar-color); }

.cyan-bg .link:visited { color: #8813a6; }

.yellow-red-text { color: var(--sidebar-color); text-shadow: var(--color-secondary) 2px 2px; }

.home-resources-text { font-size: 24px; font-weight: bold; padding: 10px 0px; text-align: left; font-family: var(--font-primary); padding-bottom: 20px; }

.home-calendar { width: 100%; height: 500px; }

#calendar-box { margin-top: 0px !important; padding: 3% !important; }

@media (max-width: 768px) { #home-page-container { padding: 10px 20px; } .home-resources { justify-content: center; } .home-quick-links-container { gap: 8px; } .home-calendar { height: 350px; } .home-quick-links-element { flex-basis: 100%; } }

@media (max-width: 768px) { #home-page-grid { grid-template-columns: 0fr 1fr 0fr; } #welcome-message { margin-top: 1rem; text-align: center; font-size: 1.5rem; } #welcome-sub-message { padding: 0px 0px 50px 0px; font-size: 0.5rem; } }

@media (max-width: 768px) { .page-container { margin-left: 0px; padding-left: 0px; } .banner-text-header { font-size: 25px; } .banner-text-title { font-size: 50px; text-align: center; } .banner-text-footer { font-size: 12px; color: black; } .home-page-container { /* top | right | bottom | left */ margin: 0px 0px 30px 0px; padding-top: 50px; } .welcome-message { text-align: center; font-size: 30px; padding: 30px 20px 10px 50px; } .home-time { text-align: center; padding: 10px; } .course-description-container { padding: 0; width: 100%; } .course-description-text { font-size: 15px; padding: 10px 30px; } .home-quick-links-element { padding: 0px; margin: 10px; width: 100%; } .home-quick-links-text { font-size: 20px; padding: 0px 10px; } .home-calendars-container { padding: 0px 0px 0px 0px; margin: 0px; display: flex; flex-direction: column; justify-content: center; } }

.wrapped-modal { display: flex; flex-direction: column; max-width: 700px; width: 85%; position: fixed; top: 50%; background-color: rgba(0, 0, 0, 0.3); left: 50%; transform: translate(-50%, -50%); border-radius: 20px; background: #1c4c80; }

.wrapped-modal .modal-container { padding: 1rem 2rem; display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative; }

.wrapped-modal .modal-title { text-align: center; font-size: 2.5rem; font-weight: 700; color: white; }

.wrapped-modal .modal-button-container { margin-top: 2rem; display: flex; justify-content: center; align-items: center; gap: 3rem; }

@media (max-width: 768px) { .wrapped-modal .modal-container { padding: 1rem 1rem; } .wrapped-modal .modal-title { font-size: 1.5rem; } .wrapped-modal .modal-button-container { gap: 1rem; } }

.waviy { font-size: 60px; display: flex; gap: 1rem; justify-content: center; align-items: center; color: #782193; font-weight: 700; }

.waviy span { font-family: "Alfa Slab One", cursive; position: relative; text-transform: uppercase; text-align: center; }

.waviy .waviy-span1 { display: inline-block; animation: waviy 3s infinite; animation-delay: 0.2s; }

.waviy .waviy-span2 { display: inline-block; animation: waviy 3s infinite; animation-delay: 0.4s; }

.waviy .waviy-span3 { display: inline-block; animation: waviy 3s infinite; animation-delay: 0.6s; }

.waviy .waviy-span4 { display: inline-block; animation: waviy 3s infinite; animation-delay: 0.8s; }

.waviy .waviy-span5 { display: inline-block; animation: waviy 3s infinite; animation-delay: 1s; }

.waviy .waviy-span6 { display: inline-block; animation: waviy 3s infinite; animation-delay: 1.2s; }

.waviy .waviy-span7 { display: inline-block; animation: waviy 3s infinite; animation-delay: 1.4s; }

.waviy .waviy-span8 { display: inline-block; animation: waviy 3s infinite; animation-delay: 1.6s; }

@keyframes waviy { 0%, 40%, 100% { transform: translateY(0); }
  20% { transform: translateY(-20px); } }

@media screen and (max-width: 768px) { .waviy { font-size: 30px; } }

.modal__paragraph { font-size: 16px; font-weight: 400; }

.modal-button { background-color: #b8452e; border: none; color: white; padding: 1rem 2rem; border-radius: 10px; box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2); transition: 0.3s background-color ease-in-out; }

.modal-button:hover { background-color: darkred; }

.carousel-container { display: flex; justify-content: center; height: 100vh; }

.carousel-container img { height: 100vh; object-fit: contain; }

.wrapped-content { display: flex; align-items: center; padding-left: 20px; justify-content: space-between; height: 30px; width: 100%; color: #09eaf6; background-color: #aaecbb; }

/* ===== BANNER CONTENT LAYOUT ===== */
.banner-container { position: relative; text-align: center; }

.banner-text-title { text-align: center; vertical-align: middle; line-height: 150px; font-size: 30px; font-weight: bold; background-image: url("/assets/images/f23-theme/soap.png"); background-size: 370px; background-repeat: no-repeat; background-position: center; height: 150px; color: black; }

.banner-text-footer { text-align: center; margin-bottom: 30px; font-size: 15px; color: black; z-index: 10; }

.page-container { overflow-y: auto; padding: 150px 0; }

.staff-page-container { overflow-y: auto; padding: 130px 0; }

.home-page-layout { overflow-y: auto; padding: 130px 0; }

.bottom-bubbles { z-index: -99; width: 100%; pointer-events: none; }

.bubble-footer { z-index: -99; position: fixed; pointer-events: none; left: 0; bottom: 0; width: 100%; color: white; text-align: center; }

@media only screen and (max-width: 768px) { .banner-content-layout { grid-template-columns: 0% 100%; } }

/* ===== GENERATING TABLES LAYOUT ===== */
table { margin: auto; table-layout: fixed; width: 90%; text-align: left; border-collapse: collapse; }

table caption { font-size: 35px; font-weight: bold; font-family: var(--font-primary); text-align: left; padding: 30px 30px 0px 30px; text-transform: uppercase; color: #fff; }

table th { border-bottom: 3px solid #dedede; border-bottom-color: #c9c9c9; text-transform: uppercase; font-size: 18px; font-family: var(--font-primary); color: #e1dede; padding: 10px 20px 0px 30px; }

table td { font-size: 16px; font-family: var(--font-primary); padding: 10px 30px; color: #e1dede; }

table td a, table td li { color: #2a7ae2; list-style: none; }

table td a:visited, table td li:visited { color: #2a7ae2; }

table td a:hover, table td li:hover { color: grey; }

table td ul { padding: 0px; list-style: none; }

@media (max-width: 600px) { table th { padding: 10px 20px 0px 10px; font-size: 12px; } table td { padding: 12px; font-size: 10px; } }

.table-container { border: 2px solid black; padding: 15px 5px; background-color: var(--table-color); border-color: var(--table-color); border-radius: 30px; width: 80%; margin: auto; margin-bottom: 25px; min-height: 200px; }

.table-container caption { display: none; }

.table-container a { color: #000 !important; }

.table-container a:hover { color: #6e99b1 !important; }

.table-container th { color: #000; border-bottom: 3px solid #000; }

.table-container td { color: #000; }

.table-container table { width: 90%; }

@media (max-width: 600px) { .table-container { padding: 0; } }

.table-container li, .table-container ul, .table-container a { list-style: none; }

/* ===== ASSIGNMENTS PAGE ===== */
/* ===== STAFF PAGE ===== */
.staff-video { display: flex; align-items: center; justify-content: space-evenly; gap: 5%; padding: 0px 20px; }

.featured-artist-header { font-size: 25px; font-weight: bold; padding: 0px 10px 10px 0px; color: var(--text-color); font-family: var(--font-primary); }

.featured-artist-card { display: flex; flex-wrap: wrap; background-color: #282828; }

.featured-artist-image-container { width: 100px; height: 100px; background: #5e6182; }

.featured-artist-image-container img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }

.featured-artist-text-container h1 { font-size: 30px; font-weight: bold; font-family: var(--font-primary); color: #e1dede; padding: 10px 0px 0px 20px; margin: 0px; }

.featured-artist-text-container p { font-size: 15px; font-family: var(--font-primary); color: #e1dede; padding: 0px 20px; }

.suggested-video-header { font-size: 25px; font-weight: bold; padding: 10px 10px 10px 10px; color: var(--text-color); font-family: var(--font-primary); }

.youtube-video { display: block; justify-content: center; margin: auto; padding: 30px; }

@media (max-width: 768px) { .youtube-video { width: 90%; } .staff-video { flex-wrap: wrap; padding: 0px; } .staff-video video { width: 90%; height: auto; padding: 20px; } .featured-artist-container { width: 90%; height: auto; padding: 20px; } .featured-artist-image-container { width: 100px; height: 100px; background: #5e6182; } .featured-artist-text-container h1 { font-size: 30px; } .featured-artist-text-container p { font-size: 15px; } }

.staff-container { display: flex; flex-wrap: wrap; flex-direction: row; width: 95%; align-items: center; justify-content: center; margin: auto; }

.staff-group { text-align: center; vertical-align: middle; line-height: 150px; font-size: 30px; font-weight: bold; background-image: url("/assets/images/f23-theme/soap.png"); background-size: 370px; background-repeat: no-repeat; background-position: center; height: 150px; color: black; }

.stas-group { width: fit-content; }

.stas { display: flex; flex-direction: row; width: 95%; align-items: center; justify-content: center; margin: auto; }

@media (max-width: 866px) { .stas { flex-direction: column; } }

.staff-card { display: flex; flex-direction: row; align-items: center; justify-content: center; height: 40vh; width: 300px; margin: 0 10px 20px; padding: 20px; color: black; border-radius: 20px; margin-left: 60px !important; }

.staff-card:hover .staff-bio-wrapper { visibility: visible; }

.staff-image-container { display: flex; width: 220px; height: 220px; margin-top: 20px; margin-bottom: 100px; margin-right: 10px; justify-content: center; align-items: center; background-image: url("../images/f23-theme/staff-bubbles.png"); background-size: auto; background-repeat: no-repeat; }

.staff-image { border-radius: 5%; object-fit: cover; width: 120px; height: 160px; margin: 90px 60px 60px 75px; }

.staff-info-wrapper { display: inline; color: black; position: absolute; background-image: url("../images/f23-theme/bathtub.png"); background-size: cover; background-repeat: no-repeat; width: 320px; height: 240px; justify-content: end; text-align: center; margin-top: 170px; }

.staff-info { padding-top: 130px; font-size: 10px; }

.staff-bio-wrapper { display: flex; margin-left: 20px; color: black; visibility: hidden; position: absolute; align-self: flex-start; justify-self: left; align-content: flex-start; }

.staff-bio { font-size: 12px; color: black; width: 200px; height: 200px; position: absolute; padding: 40px 50px 50px 50px; margin-left: 60px; background-size: cover; background-image: url("../images/f23-theme/speechbubble.png"); background-repeat: no-repeat; z-index: 50; display: flex; justify-content: center; align-items: center; text-align: center; }

.staff-name { font-size: 11px; font-weight: bold; font-family: var(--font-primary); padding-left: 20px; }

.staff-hometown { font-size: 10px; font-family: var(--font-primary); padding-left: 20px; }

.staff-pronouns { font-size: 10px; font-family: var(--font-primary); padding-left: 20px; }

/* ===== Fall 2023 Staff Page ===== */
/* ===== STAFF MODAL ===== */
.staff-modal { display: none; /* Hidden by default */ position: fixed; /* Stay in place */ z-index: 10; /* Sit on top */ padding-top: 100px; /* Location of the box */ left: 0; top: 0; width: 100%; /* Full width */ height: 100%; /* Full height */ }

.modal-text { color: black; }

.modal-content { background-color: #96f0b6; margin: auto; padding: 20px; border: 1px solid #888; width: 80%; }

.modal-close { color: #000; float: right; font-size: 28px; font-weight: bold; }

.modal-close:hover, .modal-close:focus { color: #a9a9a9; text-decoration: none; cursor: pointer; }

.modal-header { display: flex; align-items: start; }

.modal-favorite-hero-header { font-size: 30px; font-weight: bold; font-family: var(--font-primary); text-align: left; padding: 0px 30px 0px 30px; text-transform: uppercase; color: #000; }

.modal-favorite-hero { display: flex; flex-direction: column; align-items: flex-start; font-size: 16px; font-family: var(--font-primary); padding: 2px 30px; color: #000; }

.modal-hometown { font-size: 24px; font-family: var(--font-primary); font-weight: bold; color: black; }

.modal-bio { padding-top: 20px; font-size: 16px; font-family: var(--font-primary); color: black; }

.staff-duck { display: inline-block; width: 40px; padding-top: 65px; }

.about-me-duck { display: flex; flex-direction: column; align-items: center; z-index: 40; margin-bottom: 80px; justify-content: center; }

.about-me-duck p { padding: 0; margin: 0; font-size: 8px; text-align: center; }

/* ===== PER PAGE MEMES ===== */
.meme-container { display: flex; margin: auto; width: 80%; border: 2px solid #000; max-width: 600px; }

.meme-img { width: 100%; }

/* ===== CALENDAR PAGE ===== */
.calendar-container { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px; }

.calendar-element { flex-basis: 80%; padding: 30px; }

.calendar-guide-container { padding: 0px 0px; width: 380px; height: auto; }

#office-hours { color: #cd3624; font-weight: bold; text-shadow: -1px 0 var(--sidebar-color), 0 1px var(--sidebar-color), 1px 0 var(--sidebar-color), 0 -1px var(--sidebar-color); }

#assignments-calendar { color: #113a6f; font-weight: bold; text-shadow: -1px 0 #cd3624, 0 1px #cd3624, 1px 0 #cd3624, 0 -1px #cd3624; }

#labs-calendar { color: var(--sidebar-color); font-weight: bold; text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black; }

@media (max-width: 768px) { .home-calendar { width: 100%; } .home-calendar-element { width: 350px; } .calendar-element { padding: 15px 0px; } .calendar-guide-container { width: 300px; } }

/* ===== RESOURCES PAGE LAYOUT ===== */
#resource-links { text-align: center; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; }

#resource-header { text-align: center; font-weight: bold; }

.resource-img { width: 200px; padding: 15px; transition: transform 0.2s; }

.resource-img:hover { transform: scale(1.1); }

.resource-ul { list-style: none; }

#resource-container { margin-left: 6%; margin-right: 6%; display: flex; flex-direction: row; justify-content: space-around; }

.learning-resources { width: 29% !important; margin-right: 2% !important; padding: 2% 3% !important; }

.hours-guide { width: 49% !important; list-style-position: inside; margin-left: 2% !important; padding: 2% 3% !important; }

.resources-bottom { text-align: center; padding-top: 2% !important; padding-bottom: 1% !important; }

a:link, a:visited { color: #6e99b1; }

a:hover { color: var(--heading-color); text-decoration: none; }

/* ===== LECTURE PAGE ===== */
.lecture-container { display: grid; grid-template-columns: 70% 20%; grid-template-rows: auto; grid-gap: 50px; }

@media (max-width: 768px) { .lecture-container { display: flex; flex-wrap: wrap; } .lecture-about-container { display: none; } }

.lecture-divider { height: 3px; width: 100%; margin-top: 17px; background: #2a2a2a; }

.lecture-menu { font-size: 30px; padding: 20px 0px 0px 30px; text-align: left; color: #e1dede; font-weight: bold; font-family: var(--font-primary); }

.top-page { padding-top: 20vh; margin-top: 20vh; }

.lecture-title { font-size: 30px; font-weight: bold; font-family: var(--font-primary); color: #e1dede; padding-top: 15px; }

.lecture-title a { color: #e1dede; }

.lecture-title a:visited { color: #e1dede; }

.lecture-title a:hover { color: grey; }

.lecture-readings, .lecture-handouts, .lecture-files { font-size: 16px; font-family: var(--font-primary); color: #e1dede; }

.lecture-readings a, .lecture-handouts a, .lecture-files a { color: #2a7ae2; }

.lecture-readings a:visited, .lecture-handouts a:visited, .lecture-files a:visited { color: #2a7ae2; }

.lecture-readings a:hover, .lecture-handouts a:hover, .lecture-files a:hover { color: grey; }

.lecture-content { padding: 0px 30px; }

.lecture-content-footer { display: flex; align-items: center; gap: 15px; margin-top: 3px; font-size: 16px; font-family: var(--font-primary); }

.about-header { font-size: 30px; font-weight: bold; font-family: var(--font-primary); color: #e1dede; padding-top: 20px; }

.link { color: #2a7ae2; }

.link:visited { color: #2a7ae2; }

.link:hover { color: darkblue; }

.round-rect { background-color: var(--table-color); border-radius: 30px; margin-left: auto; margin-right: auto; margin-top: 4vh; width: 80vw; padding: 2vh; }

h2.course-title { font-weight: 700; font-size: calc(30px + 1.5vw); color: var(--heading-color); }

@media (min-width: 500px) { .milda-info { display: flex; flex-direction: row; justify-content: space-around; } }

.banner-text-title-2 { text-align: center; vertical-align: middle; line-height: 150px; font-size: 36px; font-weight: bold; background-image: url(/assets/images/f23-theme/thin-bubble-header.png); background-repeat: no-repeat; background-position: center; height: 150px; color: var(--heading-color); background-size: 380px; }

@media (max-width: 500px) { .banner-text-title-2 { background-size: 71vw; font-size: 25px; } }

.banner-text-title-3 { text-align: center; vertical-align: middle; line-height: 150px; font-size: 40px; font-weight: bold; background-image: url(/assets/images/f23-theme/thin-bubble-header.png); background-size: 300px; background-repeat: no-repeat; background-position: center; height: 150px; color: var(--heading-color); }

@media (max-width: 500px) { .banner-text-title-3 { background-size: 280px; } }

.duck-background { text-align: center; vertical-align: middle; background-image: url(/assets/images/ducks/main-duck.png); background-size: 190px; background-repeat: no-repeat; background-position: center; height: 160px; width: 200px; }

@media (max-width: 500px) { .duck-background { margin-left: 10vw; } }

@media (min-width: 501px) { .duck-rows { display: flex; flex-direction: row; justify-content: space-around; padding-bottom: 20px; } }

@media (min-width: 501px) { .duck-row { display: flex; flex-direction: row; justify-content: space-around; padding-bottom: 20px; padding-right: 5vw; padding-left: 5vw; flex-wrap: wrap; } }

@media (min-width: 1001px) { .duck-row { flex-wrap: nowrap; padding-right: 0; padding-left: 0; } }

.duck-text { font-weight: 700; padding-top: 80px; padding-bottom: 0; margin-bottom: 0; line-height: 30px; }

.duck-text-2 { font-weight: 600; font-size: 1.75vw; display: flex; justify-content: center; align-items: center; height: 200px; color: black; text-decoration: none; }

@media (max-width: 500px) { .duck-text-2 { font-size: 20px; } }

@media (min-width: 501px) and (max-width: 1000px) { .duck-text-2 { font-size: 25px; } }

.duck-text-3 { font-weight: 600; font-size: 1.4vw; color: black; line-height: 20px; display: flex; flex-direction: row; justify-content: center; align-items: center; flex-wrap: wrap; }

@media (max-width: 500px) { .duck-text-3 { font-size: 20px; line-height: 20px; } }

@media (min-width: 501px) and (max-width: 1000px) { .duck-text-3 { font-size: 20px; line-height: 20px; } }

.duck-texts { padding-top: 0; margin-top: 0; }

.ducks-and-calendar { width: 80vw; margin-left: auto; margin-right: auto; }

@media (min-width: 1000px) { .ducks-and-calendar { display: flex; flex-direction: row; } }

@media (min-width: 1000px) { .calendar { margin-left: 0; padding-left: 0; width: 100%; } }

@media (min-width: 1000px) { .current-assignments { width: 65%; margin-right: 3vw; padding-right: 0; } }

.f23-home-calendar { padding: 0 10%; height: 400px; width: 100%; }

.empty-space { padding-top: 1.5vh; }

#duck-row { width: 45%; margin: 15px 0; }

@media (max-width: 500px) { #duck-row { width: 250px; } }

.top-page h5 { margin: 2px 0; }

.info-blurb #introtext2 { margin-bottom: 0 !important; }

.info-blurb { padding: 3%; font-size: calc(16px + 2%); }

.current-assignment-ducks { padding-top: 25px; }

.quicklinks { margin-bottom: 30px; }

/*# sourceMappingURL=style.css.map */