@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;450;500&display=swap');
:root{--ink:#17232f;--muted:#596671;--crimson:#9B2743;--blue:#71C5E8;--accent:var(--crimson);--line:#dde2e7;--pale:#f3f6fa}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;font-weight:400;font-size:16px;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button,input,textarea{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.2}h1{font-size:clamp(42px,5.2vw,66px);letter-spacing:-2.2px;font-weight:300}h2{font-size:29px;letter-spacing:-.8px}h3{font-size:20px;letter-spacing:-.4px}.wrap{max-width:1080px;padding:0 28px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;min-height:126px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:20px;color:var(--ink);font-size:14px;line-height:1.4}.brand:hover{text-decoration:none}.mark{font-size:42px;letter-spacing:-3px;font-weight:300}.mark span{color:var(--accent)}nav{display:flex;gap:28px;font-size:14px}nav a{color:var(--ink)}.intro{padding:65px 0 42px}.eyebrow{font-size:12px;letter-spacing:1.6px;color:var(--muted);margin-bottom:24px}.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-top:26px}.intro-bottom p{max-width:620px;font-size:18px;line-height:1.7;color:var(--muted)}.primary,.outline{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:12px 19px;font-size:14px;white-space:nowrap;border-radius:3px;cursor:pointer}.primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}.primary:hover{background:var(--crimson);text-decoration:none}.outline{border:1px solid #aebcc9;background:#fff}.principles{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;font-size:14px}.principles span{font-size:12px;color:var(--accent);margin-right:14px}.section{padding:59px 0;border-bottom:1px solid var(--line)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:30px}.section-head p{color:var(--muted);font-size:14px}.courses{display:grid;grid-template-columns:1fr 1fr;gap:30px}.course{color:var(--ink);display:block}.course:hover{text-decoration:none}.course:hover h3{color:var(--accent)}.course-image{position:relative;background:#e9edf2;aspect-ratio:16/9;overflow:hidden;border-radius:3px}.course-image img{display:block;width:100%;height:100%;object-fit:cover}.course-tag{position:absolute;top:12px;left:12px;background:#fff;padding:5px 9px;color:var(--ink);font-size:12px;letter-spacing:1px}.course-meta{font-size:12px;letter-spacing:1px;color:var(--muted);margin:20px 0 10px}.course h3{display:flex;justify-content:space-between;font-size:22px}.course h3 span{color:var(--accent)}.course p{color:var(--muted);margin:13px 0 19px;font-size:16px;line-height:1.7}.course-foot{display:flex;justify-content:space-between;gap:15px;padding-top:14px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.course-foot span{color:var(--accent)}.learning-note{font-size:13px;color:var(--muted);margin-top:23px;max-width:880px}.text-link{font-size:14px}.empty-projects{display:flex;align-items:center;gap:25px;padding:36px 30px;background:var(--pale);border:1px solid var(--line);border-radius:3px}.project-symbol{font-size:30px;font-weight:300;color:var(--crimson)}.empty-projects p{font-size:14px;color:var(--muted);margin-top:10px}.empty-projects .outline{margin-left:auto}.project-gallery:empty{display:none}details{margin-top:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;padding:20px 0;display:flex;justify-content:space-between;color:var(--accent)}summary::-webkit-details-marker{display:none}details[open] summary span{transform:rotate(45deg)}.submission{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;padding:15px 0 30px}.submission p{font-size:14px;color:var(--muted);margin-top:15px}form label{display:block;font-size:14px;margin-bottom:15px}input:not([type=checkbox]),textarea{display:block;width:100%;border:1px solid #b6c1cc;padding:10px;background:#fff;color:var(--ink);border-radius:3px;margin-top:6px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.consent{display:flex;align-items:flex-start;gap:10px;font-size:13px!important;color:var(--muted)}.consent input{margin-top:5px}.form-actions{display:flex;flex-wrap:wrap;gap:15px}.copy{background:none;border:0;color:var(--accent);font-size:14px;cursor:pointer}.people{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.person>img,.portrait-text{width:150px;height:150px;border-radius:50%;object-fit:cover;object-position:center 25%;margin-bottom:20px}.portrait-text{display:flex;align-items:center;justify-content:center;background:var(--pale);font-size:18px;color:var(--muted)}.role{font-size:12px;letter-spacing:1.2px;color:var(--accent);margin-bottom:8px}.person h3{font-size:21px}.person h3+p{font-size:14px;color:var(--muted);margin-top:9px}.person-links{display:flex;gap:22px;font-size:13px;margin-top:12px}.advisor{border-top:1px solid var(--line);margin-top:40px;padding-top:23px;display:flex;gap:35px;align-items:center}.advisor span{font-size:12px;letter-spacing:1px;color:var(--muted)}.advisor h3{font-size:18px}.contact{display:flex;gap:35px;align-items:center;justify-content:space-between;padding:50px 0 55px}.contact h2{font-size:26px}.contact .eyebrow{margin-bottom:14px}.contact p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:15px}.contact>a{font-size:15px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px!important;padding-bottom:30px!important;color:var(--muted);font-size:12px}.skip{position:absolute;left:20px;top:-80px;background:#fff;padding:15px}.skip:focus{top:5px}.project-card{border:1px solid var(--line);padding:22px}.project-card p{margin:12px 0;color:var(--muted)}.project-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
@media(max-width:760px){header{min-height:120px;align-items:flex-start;justify-content:center;flex-direction:column;gap:20px;padding-top:20px!important;padding-bottom:20px!important}nav{width:100%;justify-content:space-between;gap:12px;font-size:13px}.brand{gap:15px}.mark{font-size:32px}.brand br{display:none}.intro{padding-top:42px}.intro-bottom{flex-direction:column;align-items:flex-start;gap:24px}.intro-bottom p{font-size:16px}.principles{flex-direction:column;gap:10px}.section{padding:40px 0}.section-head{flex-direction:column;gap:12px}.courses{grid-template-columns:1fr;gap:36px}.people{gap:30px;grid-template-columns:1fr}.person{position:relative;padding-left:112px;min-height:112px}.person>img,.portrait-text{position:absolute;left:0;top:0;width:88px;height:88px;font-size:12px}.person h3{font-size:20px}.empty-projects{flex-wrap:wrap;padding:25px}.empty-projects .outline{margin-left:0}.project-symbol{display:none}.submission{grid-template-columns:1fr;gap:25px}.advisor{align-items:flex-start;flex-direction:column;gap:10px}.contact{flex-direction:column;align-items:flex-start;gap:20px}footer{flex-wrap:wrap}.form-row{grid-template-columns:1fr;gap:0}.project-gallery{grid-template-columns:1fr}.course-foot{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

[hidden]{display:none!important}

/* Talladega College Institutional Brand Guide, page 6. */
body{border-top:4px solid var(--crimson)}.mark{color:var(--crimson)}.mark span{color:var(--blue)}.principles{border-top:3px solid var(--blue)}.course-tag{background:var(--blue)}.outline{border-color:var(--crimson)}.primary:hover{box-shadow:0 0 0 3px var(--blue)}.person>img{border:3px solid var(--blue)}.contact{border-top:3px solid var(--blue)}.courses{grid-template-columns:repeat(2,minmax(0,1fr))}.course h3{font-size:20px}.course-foot{flex-wrap:wrap}.course-image img{object-fit:cover}@media(max-width:760px){.courses{grid-template-columns:1fr}}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button:disabled{opacity:.6;cursor:wait}.site-footer{display:block;background:#9B2743;color:#fff;border:0;border-top:5px solid #71C5E8;padding:0!important;font-size:14px}.footer-top{display:grid;grid-template-columns:1.15fr .7fr 1.2fr;gap:40px;padding:45px 0 38px}.site-footer a{color:#fff}.footer-wordmark{font-size:25px;line-height:1.3;font-weight:300;letter-spacing:-.6px;display:inline-block}.footer-wordmark span{color:#71C5E8}.footer-identity p,.footer-column p{margin-top:17px;line-height:1.7;color:#f4e7eb;font-size:14px}.footer-column h2{font-size:13px;letter-spacing:1px;text-transform:uppercase;margin-bottom:17px;color:#71C5E8}.footer-column>a{display:block;margin:8px 0;font-size:14px}.footer-email{overflow-wrap:anywhere}.footer-bottom{display:flex;flex-wrap:wrap;gap:20px;align-items:center;border-top:1px solid #c17d8f;padding:20px 0;font-size:12px}.footer-bottom>span:first-child{margin-right:auto}.review-main{padding-top:40px;padding-bottom:60px}.review-main .section-head{margin-top:40px}.review-main h1{font-size:40px}.review-card{border:1px solid var(--line);padding:24px;margin:24px 0}.review-card p{margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere}.review-card .form-actions{margin-top:20px}.review-main form{max-width:560px}#review-status,#form-status{overflow-wrap:anywhere}#review-status{margin:20px 0}.project-card p{white-space:pre-wrap;overflow-wrap:anywhere}.project-author{font-size:14px}.footer-top a:focus-visible{outline-color:#71C5E8}@media(max-width:760px){.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-identity{grid-column:1/-1}.footer-bottom{gap:14px}.footer-bottom>span:first-child{width:100%}}@media(max-width:430px){.footer-top{grid-template-columns:1fr}.footer-identity{grid-column:auto}}

address{font-style:normal;line-height:1.7}.demo-link{display:inline-block;margin-left:20px}.content-page{padding-top:52px;padding-bottom:65px}.content-page h1{font-size:clamp(34px,4vw,50px)}.page-intro{color:var(--muted);margin:22px 0 35px;max-width:720px}.content-page>section{margin-top:36px;max-width:840px}.content-page>section>p{margin-top:18px;line-height:1.8}.event-section{padding-top:25px;border-top:1px solid var(--line)}.event-card{padding:25px 0;border-bottom:1px solid var(--line)}.event-card p{margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere}.event-card p:first-child,.muted{color:var(--muted);font-size:14px}.muted{margin-top:20px}#event-admin{border-top:3px solid var(--blue);margin-top:45px;padding-top:30px}#event-form{margin-top:25px}select{display:block;font:inherit;padding:10px;border:1px solid #b6c1cc;width:100%;margin-top:6px;background:white;color:var(--ink)}@media(max-width:760px){nav{flex-wrap:wrap;justify-content:flex-start;column-gap:20px;row-gap:10px}.brand{max-width:100%}}

nav{align-items:center}.nav-join{padding:8px 16px}.intro-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;flex-shrink:0}@media(max-width:760px){.intro-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:18px}}

/* Geometric arrows never depend on an emoji font. */
.arrow-ne{display:inline-block;position:relative;flex:none;width:.85em;height:.85em;margin-left:.12em;vertical-align:baseline;color:inherit}
.arrow-ne::before{content:"";position:absolute;width:.68em;height:0;border-top:1.4px solid currentColor;left:.04em;top:.53em;transform:rotate(-45deg);transform-origin:center}
.arrow-ne::after{content:"";position:absolute;width:.44em;height:.44em;border-top:1.4px solid currentColor;border-right:1.4px solid currentColor;right:.05em;top:.08em}
header{gap:24px}header nav{margin-left:auto}header>.nav-join{flex-shrink:0}body{font-variant-emoji:text}
@media(max-width:760px){
 .wrap{padding-left:20px;padding-right:20px}
 header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 14px;min-height:0}
 header .brand{grid-column:1;grid-row:1;gap:10px;font-size:12px;min-width:0}
 header .brand br{display:initial}header .mark{font-size:32px}
 header>.nav-join{grid-column:2;grid-row:1;padding:9px 13px;min-height:44px;gap:10px}
 header nav{grid-column:1/-1;grid-row:2;margin:0;width:100%;justify-content:space-between;gap:8px 14px;border-top:1px solid var(--line);padding-top:12px}
 header nav a{padding:5px 0;font-size:13px}
 .intro-actions{gap:18px}.intro-actions .primary{min-height:44px}
 .course h3{gap:12px}.course-tag{font-size:11px;letter-spacing:.6px}
}
