1<!DOCTYPE html> 2<html lang="en-US"> 3 4<head> 5 <meta charset="UTF-8">
6<script type="text/javascript"> 7var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,initializeOnLoaded:function(o){gform.domLoaded&&gform.scriptsLoaded?o():!gform.domLoaded&&gform.scriptsLoaded?window.addEventListener("DOMContentLoaded",o):document.addEventListener("gform_main_scripts_loaded",o)},hooks:{action:{},filter:{}},addAction:function(o,n,r,t){gform.addHook("action",o,n,r,t)},addFilter:function(o,n,r,t){gform.addHook("filter",o,n,r,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,n){gform.removeHook("action",o,n)},removeFilter:function(o,n,r){gform.removeHook("filter",o,n,r)},addHook:function(o,n,r,t,i){null==gform.hooks[o][n]&&(gform.hooks[o][n]=[]);var e=gform.hooks[o][n];null==i&&(i=n+"_"+e.length),gform.hooks[o][n].push({tag:i,callable:r,priority:t=null==t?10:t})},doHook:function(n,o,r){var t;if(r=Array.prototype.slice.call(r,1),null!=gform.hooks[n][o]&&((o=gform.hooks[n][o]).sort(function(o,n){return o.priority-n.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==n?t.apply(null,r):r[0]=t.apply(null,r)})),"filter"==n)return r[0]},removeHook:function(o,n,t,i){var r;null!=gform.hooks[o][n]&&(r=(r=gform.hooks[o][n]).filter(function(o,n,r){return!!(null!=i&&i!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][n]=r)}}); 8</script>
8 9 10 <meta name="viewport" content="width=device-width, initial-scale=1"> 11 <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> 12 13 <!-- This site is optimized with the Yoast SEO plugin v20.8 - https://yoast.com/wordpress/plugins/seo/ --> 14 <title>Contact Us | Cape Fear Community College</title> 15 <meta name="description" content="Contact Cape Fear Community College (CFCC). Call 910-362-7000 or fill out our contact form for help and information." /> 16 <link rel="canonical" href="https://cfcc.edu/about/contact-us/" /> 17 <meta property="og:locale" content="en_US" /> 18 <meta property="og:type" content="article" /> 19 <meta property="og:title" content="Chat with Us!" /> 20 <meta property="og:description" content="Ask us anything from any device." /> 21 <meta property="og:url" content="https://cfcc.edu/about/contact-us/" /> 22 <meta property="og:site_name" content="Cape Fear Community College" /> 23 <meta property="article:publisher" content="https://www.facebook.com/capefearcc/" /> 24 <meta property="article:modified_time" content="2025-07-15T18:26:59+00:00" /> 25 <meta property="og:image" content="https://cfcc.edu/wp-content/uploads/2020/03/shutterstock_458942560.png" /> 26 <meta property="og:image:width" content="1200" /> 27 <meta property="og:image:height" content="627" /> 28 <meta property="og:image:type" content="image/png" /> 29 <meta name="twitter:card" content="summary_large_image" /> 30 <meta name="twitter:title" content="Chat with Us!" /> 31 <meta name="twitter:description" content="Ask us anything from any device." /> 32 <meta name="twitter:image" content="https://cfcc.edu/wp-content/uploads/2020/03/shutterstock_458942560.png" /> 33 <meta name="twitter:site" content="@cfcc" /> 34 <meta name="twitter:label1" content="Est. reading time" /> 35 <meta name="twitter:data1" content="1 minute" /> 36
36<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://cfcc.edu/about/contact-us/","url":"https://cfcc.edu/about/contact-us/","name":"Contact Us | Cape Fear Community College","isPartOf":{"@id":"https://cfcc.edu/#website"},"primaryImageOfPage":{"@id":"https://cfcc.edu/about/contact-us/#primaryimage"},"image":{"@id":"https://cfcc.edu/about/contact-us/#primaryimage"},"thumbnailUrl":"https://cfcc.edu/wp-content/uploads/2019/06/Cardiographic-Sonography.jpg","datePublished":"2019-02-14T14:41:13+00:00","dateModified":"2025-07-15T18:26:59+00:00","description":"Contact Cape Fear Community College (CFCC). Call 910-362-7000 or fill out our contact form for help and information.","breadcrumb":{"@id":"https://cfcc.edu/about/contact-us/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://cfcc.edu/about/contact-us/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://cfcc.edu/about/contact-us/#primaryimage","url":"https://cfcc.edu/wp-content/uploads/2019/06/Cardiographic-Sonography.jpg","contentUrl":"https://cfcc.edu/wp-content/uploads/2019/06/Cardiographic-Sonography.jpg","width":1600,"height":1067,"caption":"Cardiographic Sonography"},{"@type":"BreadcrumbList","@id":"https://cfcc.edu/about/contact-us/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://cfcc.edu/"},{"@type":"ListItem","position":2,"name":"About CFCC","item":"https://cfcc.edu/about/"},{"@type":"ListItem","position":3,"name":"Contact Us"}]},{"@type":"WebSite","@id":"https://cfcc.edu/#website","url":"https://cfcc.edu/","name":"Cape Fear Community College","description":"Success starts here!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://cfcc.edu/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"}]}</script>
36 37 <!-- / Yoast SEO plugin. --> 38 39 40<link rel='dns-prefetch' href='//translate.google.com' /> 41<link rel='dns-prefetch' href='//www.google.com' /> 42<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 43<link rel="alternate" type="application/rss+xml" title="Cape Fear Community College » Feed" href="https://cfcc.edu/feed/" /> 44<link rel="alternate" type="application/rss+xml" title="Cape Fear Community College » Comments Feed" href="https://cfcc.edu/comments/feed/" /> 45<link rel='stylesheet' id='gravity_forms_theme_reset-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/gravity-forms-theme-reset.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 46<link rel='stylesheet' id='gravity_forms_theme_foundation-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/gravity-forms-theme-foundation.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 47<link rel='stylesheet' id='gravity_forms_theme_framework-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/gravity-forms-theme-framework.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 48<link rel='stylesheet' id='gravity_forms_orbital_theme-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/gravity-forms-orbital-theme.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 49<link rel='stylesheet' id='sbi_styles-css' href='https://cfcc.edu/wp-content/plugins/instagram-feed/css/sbi-styles.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 50<link rel='stylesheet' id='reset-style-css' href='https://cfcc.edu/wp-content/themes/pagecells/css/reset.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 51<link rel='stylesheet' id='bootstrap-style-css' href='https://cfcc.edu/wp-content/themes/pagecells/css/bootstrap.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 52<link rel='stylesheet' id='pagecells-css' href='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/css/pagecells.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 53<link rel='stylesheet' id='intelliwidget-css' href='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/css/intelliwidget.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 54<link rel='stylesheet' id='flexslider-style-css' href='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/css/flexslider.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 55<link rel='stylesheet' id='iwmenuicons-css' href='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/css/iwmenuicons.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 56<link rel='stylesheet' id='wp-block-library-css' href='https://cfcc.edu/wp-includes/css/dist/block-library/style.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 57<style id='safe-svg-svg-icon-style-inline-css' type='text/css'> 58.safe-svg-cover .safe-svg-inside{display:inline-block;max-width:100%}.safe-svg-cover svg{height:100%;max-height:100%;max-width:100%;width:100%} 59 60</style> 61<link rel='stylesheet' id='classic-theme-styles-css' href='https://cfcc.edu/wp-includes/css/classic-themes.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 62<style id='global-styles-inline-css' type='text/css'> 63body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,
630,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');--wp--preset--duotone--midnight: url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}body .is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
63.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 64.wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;} 65:where(.wp-block-columns.is-layout-flex){gap: 2em;} 66.wp-block-pullquote{font-size: 1.5em;line-height: 1.6;} 67</style> 68<link rel='stylesheet' id='google-language-translator-css' href='https://cfcc.edu/wp-content/plugins/google-language-translator/css/style.css?ver=3.0.1.17050194278' type='text/css' media='' /> 69<link rel='stylesheet' id='glt-toolbar-styles-css' href='https://cfcc.edu/wp-content/plugins/google-language-translator/css/toolbar.css?ver=3.0.1.17050194278' type='text/css' media='' /> 70<link rel='stylesheet' id='ctct_form_styles-css' href='https://cfcc.edu/wp-content/plugins/constant-contact-forms/assets/css/style.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 71<link rel='stylesheet' id='splash_notice-css' href='https://cfcc.edu/wp-content/plugins/splash-notice/assets/style.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 72<link rel='stylesheet' id='chld_thm_cfg_ext1-css' href='https://fonts.googleapis.com/css?family=Caveat%7CPoppins%3A400%2C600%7CNunito+Sans%3A300%2C300i%2C400%2C400i%2C600%2C600i%2C700%2C700i%7CDomine%3A400%2C700&ver=6846f8d17210e5ffca75b9f6be482cdc' type='text/css' media='all' /> 73<link rel='stylesheet' id='chld_thm_cfg_ext2-css' href='https://cfcc.edu/wp-content/themes/cfcc/css/cfccicons/style.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 74<link rel='stylesheet' id='chld_thm_cfg_ext3-css' href='https://cfcc.edu/wp-content/themes/cfcc/xicons/style.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 75<link rel='stylesheet' id='dashicons-css' href='https://cfcc.edu/wp-includes/css/dashicons.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 76<link rel='stylesheet' id='pagecells-parent-style-css' href='https://cfcc.edu/wp-content/themes/pagecells/style.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 77<link rel='stylesheet' id='pagecells-style-css' href='https://cfcc.edu/wp-content/themes/cfcc/style.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 78<link rel='stylesheet' id='gform_basic-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/basic.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 79<link rel='stylesheet' id='gform_theme_components-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/theme-components.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 80<link rel='stylesheet' id='gform_theme_ie11-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/theme-ie11.min.css?ver=3.0.1.17050194278' type='text/css' media='all' /> 81<link rel='stylesheet' id='gform_theme-css' href='https://cfcc.edu/wp-content/plugins/gravityforms/assets/css/dist/theme.min.css?ver=3.0.1.17050194278' type='text/css' media='all' />
82<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/jquery/jquery.min.js?ver=3.6.4' id='jquery-core-js'></script>
vendor: 1 bytes, line 82
82
83<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.0' id='jquery-migrate-js'></script>
vendor: 1 bytes, line 83
83
84<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/splash-notice/assets/jquery.cookie.min.js?ver=6846f8d17210e5ffca75b9f6be482cdc' id='splash_persist-js'></script>
vendor: 1 bytes, line 84
84
85<script type='text/javascript' id='splash_notice-js-extra'> 86/* <![CDATA[ */ 87var splashNoticeVars = {"ajaxurl":"https:\/\/cfcc.edu\/wp-admin\/admin-ajax.php"}; 88/* ]]> */ 89</script>
vendor: 1 bytes, line 89
89
90<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/splash-notice/assets/script.js?ver=6846f8d17210e5ffca75b9f6be482cdc' id='splash_notice-js'></script>
vendor: 1 bytes, line 90
90
91<script type='text/javascript' src='https://cfcc.edu/wp-content/themes/cfcc/js/scripts.js?ver=1.0' id='cfcc-scripts-js'></script>
vendor: 1 bytes, line 91
91
92<script type='text/javascript' defer='defer' src='https://cfcc.edu/wp-content/plugins/gravityforms/js/jquery.json.min.js?ver=2.7.7' id='gform_json-js'></script>
vendor: 1 bytes, line 92
92
93<script type='text/javascript' id='gform_gravityforms-js-extra'> 94/* <![CDATA[ */ 95var gf_global = {"gf_currency_config":{"name":"U.S. Dollar","symbol_left":"$","symbol_right":"","symbol_padding":"","thousand_separator":",","decimal_separator":".","decimals":2,"code":"USD"},"base_url":"https:\/\/cfcc.edu\/wp-content\/plugins\/gravityforms","number_formats":[],"spinnerUrl":"https:\/\/cfcc.edu\/wp-content\/plugins\/gravityforms\/images\/spinner.svg","version_hash":"f2d01da973abe7789d9722c745c36be7","strings":{"newRowAdded":"New row added.","rowRemoved":"Row removed","formSaved":"The form has been saved. The content contains the link to return and complete the form."}}; 96var gform_i18n = {"datepicker":{"days":{"monday":"Mo","tuesday":"Tu","wednesday":"We","thursday":"Th","friday":"Fr","saturday":"Sa","sunday":"Su"},"months":{"january":"January","february":"February","march":"March","april":"April","may":"May","june":"June","july":"July","august":"August","september":"September","october":"October","november":"November","december":"December"},"firstDay":0,"iconText":"Select date"}}; 97var gf_legacy_multi = {"2":""}; 98var gform_gravityforms = {"strings":{"invalid_file_extension":"This type of file is not allowed. Must be one of the following:","delete_file":"Delete this file","in_progress":"in progress","file_exceeds_limit":"File exceeds size limit","illegal_extension":"This type of file is not allowed.","max_reached":"Maximum number of files reached","unknown_error":"There was a problem while saving the file on the server","currently_uploading":"Please wait for the uploading to complete","cancel":"Cancel","cancel_upload":"Cancel this upload","cancelled":"Cancelled"},"vars":{"images_url":"https:\/\/cfcc.edu\/wp-content\/plugins\/gravityforms\/images"}}; 99/* ]]> */ 100</script>
vendor: 1 bytes, line 100
100
101<script type='text/javascript' id='gform_gravityforms-js-before'> 102 103</script>
vendor: 1 bytes, line 103
103
104<script type='text/javascript' defer='defer' src='https://cfcc.edu/wp-content/plugins/gravityforms/js/gravityforms.min.js?ver=2.7.7' id='gform_gravityforms-js'></script>
vendor: 1 bytes, line 104
104
105<script type='text/javascript' id='gform_conditional_logic-js-extra'> 106/* <![CDATA[ */ 107var gf_legacy = {"is_legacy":""}; 108/* ]]> */ 109</script>
vendor: 1 bytes, line 109
109
110<script type='text/javascript' defer='defer' src='https://cfcc.edu/wp-content/plugins/gravityforms/js/conditional_logic.min.js?ver=2.7.7' id='gform_conditional_logic-js'></script>
vendor: 1 bytes, line 110
110
111<script type='text/javascript' defer='defer' src='https://cfcc.edu/wp-content/plugins/gravityforms/assets/js/dist/utils.min.js?ver=1329f9a0886f2ff3fb51c6f17277eb75' id='gform_gravityforms_utils-js'></script>
111 112<link rel="https://api.w.org/" href="https://cfcc.edu/wp-json/" /><link rel="alternate" type="application/json" href="https://cfcc.edu/wp-json/wp/v2/pages/60" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://cfcc.edu/xmlrpc.php?rsd" /> 113<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="https://cfcc.edu/wp-includes/wlwmanifest.xml" /> 114 115<link rel='shortlink' href='https://cfcc.edu/?p=60' /> 116<link rel="alternate" type="application/json+oembed" href="https://cfcc.edu/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcfcc.edu%2Fabout%2Fcontact-us%2F" /> 117<link rel="alternate" type="text/xml+oembed" href="https://cfcc.edu/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcfcc.edu%2Fabout%2Fcontact-us%2F&format=xml" /> 118<!-- start Simple Custom CSS and JS -->
119<script type="text/javascript"> 120function cfccSwitchTab(evt, tabId) { 121 var wrapper = evt.currentTarget.closest('.cfcc-program-wrapper'); 122 var panels = wrapper.querySelectorAll('.cfcc-tab-panel'); 123 var buttons = wrapper.querySelectorAll('.cfcc-tab-btn'); 124 125 panels.forEach(function(panel) { 126 panel.classList.remove('active'); 127 }); 128 buttons.forEach(function(btn) { 129 btn.classList.remove('active'); 130 }); 131 132 document.getElementById(tabId).classList.add('active'); 133 evt.currentTarget.classList.add('active'); 134} 135 136document.addEventListener('DOMContentLoaded', function() { 137 // Secondary DOM Guard: Verify body class matches post/page ID 43151 138 var bodyClasses = document.body.classList; 139 var isTargetPage = bodyClasses.contains('postid-43151') || bodyClasses.contains('page-id-43151'); 140 141 if (!isTargetPage) { 142 return; 143 } 144 145 var containers = document.querySelectorAll('.cfcc-js-program-container'); 146 147 containers.forEach(function(container) { 148 var programCode = container.getAttribute('data-program'); 149 var catalogYear = container.getAttribute('data-year'); 150 151 if (!programCode || !catalogYear) return; 152 153 var apiUrl = 'https://www3.cfcc.edu/programs/get_programs_of_study.php?program=' + programCode + '&year=' + catalogYear; 154 155 fetch(apiUrl) 156 .then(function(response) { 157 return response.text(); 158 }) 159 .then(function(rawText) { 160 // Check if response is HTML error page instead of JSON 161 if (rawText.trim().startsWith('<')) { 162 container.innerHTML = '<div class="cfcc-error-message"><strong>Connection Notice:</strong> Server returned HTML instead of JSON. Inspect console for raw output.</div>'; 163 console.error('CFCC Endpoint Error (HTML Returned):', rawText); 164 return; 165 } 166 167 var data = JSON.parse(rawText); 168 if (!data || !data.program) { 169 container.innerHTML = '<div class="cfcc-error-message">Program data structure missing in feed.</div>'; 170 return; 171 } 172 173 renderProgramData(container, data); 174 }) 175 .catch(function(error) { 176 console.error('CFCC Fetch Error:', error); 177 container.innerHTML = '<div class="cfcc-error-message">Unable to reach www3 endpoint. Check CORS permissions.</div>'; 178 }); 179 }); 180 181 function renderProgramData(container, data) { 182 var prog = data.program; 183 var reqs = data.requirements || []; 184 var html = ''; 185 186 html += '<div class="cfcc-program-header">'; 187 html += ' <h2 class="cfcc-program-title">' + escapeHtml(prog.title) + '</h2>'; 188 html += ' <div class="cfcc-program-meta">'; 189 html += ' <span class="cfcc-badge">' + escapeHtml(prog.degree) + ' - ' + escapeHtml(prog.degree_description) + '</span>'; 190 html += ' <span class="cfcc-meta-item">Code: <strong>' + escapeHtml(prog.id) + '</strong></span>'; 191 html += ' <span class="cfcc-meta-item">Division: <strong>' + escapeHtml(prog.division) + '</strong></span>'; 192 html += ' </div>'; 193 if (prog.description) { 194 html += ' <div class="cfcc-program-description">' + prog.description + '</div>'; 195 } 196 html += '</div>'; 197 198 html += '<h3 class="cfcc-section-title">Course Requirements</h3>'; 199 200 if (reqs.length > 0) { 201 reqs.forEach(function(reqBlock) { 202 if (reqBlock.groups && reqBlock.groups.length > 0) { 203 reqBlock.groups.forEach(function(group) { 204 html += '<div class="cfcc-course-group">'; 205 html += ' <h4 class="cfcc-group-heading">' + escapeHtml(group.label) + '</h4>'; 206 207 if (group.course_groups && group.course_groups.length > 0) { 208 group.course_groups.forEach(function(subGroup) { 209 if (subGroup.min_credits) { 210 html += '<p class="cfcc-instruction">Take at least <strong>' + subGroup.min_credits + ' credits</strong> from the following:</p>'; 211 } 212 213 html += '<table class="cfcc-table"><thead><tr>'; 214 html += '<th style="width:20%;">Course</th>';
215 html += '<th style="width:65%;">Title</th>'; 216 html += '<th style="width:15%; text-align:right;">Credits</th>'; 217 html += '</tr></thead><tbody>'; 218 219 if (subGroup.courses && subGroup.courses.length > 0) { 220 subGroup.courses.forEach(function(course) { 221 html += '<tr>'; 222 html += '<td class="cfcc-code">' + escapeHtml(course.name) + '</td>'; 223 html += '<td>' + escapeHtml(course.title) + '</td>'; 224 html += '<td style="text-align:right;">' + course.credits + '</td>'; 225 html += '</tr>'; 226 }); 227 } 228 229 html += '</tbody></table>'; 230 }); 231 } 232 html += '</div>'; 233 }); 234 } 235 }); 236 } else { 237 html += '<p>No requirements available.</p>'; 238 } 239 240 container.innerHTML = html; 241 } 242 243 function escapeHtml(text) { 244 if (!text) return ''; 245 return text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">"); 246 } 247});</script>
247 248<!-- end Simple Custom CSS and JS --> 249<!-- start Simple Custom CSS and JS -->
250<script type="text/javascript"> 251document.addEventListener("DOMContentLoaded", () => { 252 // 1. Safety Check: Ensure document.body exists and matches Page ID 44191 253 if (!document.body || !document.body.classList.contains("page-id-44191")) { 254 return; // Exit cleanly if on a different page 255 } 256 257 // 2. Add structural chat state classes to document root and body 258 if (document.documentElement) { 259 document.documentElement.classList.add("has-chat", "has-agent"); 260 } 261 document.body.classList.add("has-chat", "has-agent"); 262 263 // 3. Text Chat Button Listener (#sera-chat-launch) 264 const chatBtn = document.getElementById("sera-chat-launch"); 265 if (chatBtn) { 266 chatBtn.addEventListener("click", (e) => { 267 e.preventDefault(); 268 269 if (window.Shell451 && Shell451.Messenger451) { 270 // First parameter is null so no message is auto-sent; 271 // Second parameter tells Element451 to load Sera's settings. 272 Shell451.Messenger451.askAssistant( 273 null, 274 "cfcc.conversation_settings.1665253" 275 ); 276 } 277 }); 278 } 279 280 // 4. Voice Chat Button Listener (#sera-talk-launch) 281 const talkBtn = document.getElementById("sera-talk-launch"); 282 if (talkBtn) { 283 talkBtn.addEventListener("click", (e) => { 284 e.preventDefault(); 285 286 if (window.Shell451 && Shell451.Messenger451) { 287 Shell451.Messenger451.talkToAssistant( 288 "cfcc.conversation_settings.1665253", 289 null 290 ); 291 } 292 }); 293 } 294}); 295 296</script>
296 297<!-- end Simple Custom CSS and JS --> 298<!-- start Simple Custom CSS and JS -->
299<script type="text/javascript"> 300<!-- Combined Campaign Script: User Memory & Slide-Out Menu --> 301 302jQuery(document).ready(function($) { 303 304 // ========================================================================== 305 // FEATURE 1: USER PERSISTENCE (LOCAL STORAGE) 306 // ========================================================================== 307 308 // 1. Storage Keys 309 var cardKey = 'cfcc_last_selected_card'; 310 var nameKey = 'cfcc_last_selected_name'; 311 312 // 2. Read storage on load to see if this is a returning user 313 var lastSavedId = localStorage.getItem(cardKey); 314 var lastSavedName = localStorage.getItem(nameKey); 315 316 if (lastSavedId && lastSavedName) { 317 // Find the target card based on the stored ID 318 var targetCardCol = $('[data-card-id="' + lastSavedId + '"]'); 319 320 if (targetCardCol.length) { 321 // Reveal the Welcome Back Banner and inject the saved program name 322 $('#memory-program-name').text(lastSavedName); 323 $('#campaign-memory-banner').removeClass('d-none'); 324 325 // Apply the highlight visual class to the card wrapper 326 var targetCard = targetCardCol.find('.card'); 327 targetCard.addClass('last-selected-card'); 328 329 // Prepend a "Last Viewed" badge above the main title inside the card body 330 targetCard.find('.card-body').prepend('<span class="last-viewed-badge">Continue Where You Left Off</span>'); 331 } 332 } 333 334 // 3. Track clicks on CTA buttons to store the user's active intent 335 $('.prog-card-view .btn-primary').on('click', function() { 336 var parentCol = $(this).closest('[data-card-id]'); 337 338 if (parentCol.length) { 339 var programId = parentCol.attr('data-card-id'); 340 var programName = parentCol.attr('data-program-name'); 341 342 // Commit the values to the browser's persistent LocalStorage 343 localStorage.setItem(cardKey, programId); 344 localStorage.setItem(nameKey, programName); 345 } 346 }); 347 348 349 // ========================================================================== 350 // FEATURE 2: VERTICAL MENU & SLIDE-OUT DRAWER 351 // ========================================================================== 352 353 var flag = $('#menuFlagTrigger'); 354 var drawer = $('#campaignDrawer'); 355 var overlay = $('#drawerOverlay'); 356 var closeBtn = $('#drawerCloseBtn'); 357 358 // 1. Open the drawer when clicking the vertical flag 359 flag.on('click', function(e) { 360 e.preventDefault(); 361 drawer.addClass('drawer-open'); 362 overlay.addClass('overlay-active'); 363 364 // Hide the sticky flag while the drawer is open to prevent visual overlap 365 flag.css('opacity', '0'); 366 }); 367 368 // 2. Drawer Closure Actions 369 function closeDrawer() { 370 drawer.removeClass('drawer-open'); 371 overlay.removeClass('overlay-active'); 372 flag.css('opacity', '1'); 373 } 374 375 // 3. Bind all closure interactions 376 closeBtn.on('click', closeDrawer); 377 overlay.on('click', closeDrawer); 378 379 // Close on keyboard ESC press 380 $(document).on('keydown', function(e) { 381 if (e.key === "Escape") { 382 closeDrawer(); 383 } 384 }); 385 386});</script>
386 387<!-- end Simple Custom CSS and JS --> 388<!-- start Simple Custom CSS and JS -->
389<script type="text/javascript"> 390 function loadCalendar(url, calendarName) { 391 document.getElementById('eventCalendarFrame').src = url; 392 document.getElementById("eventCalendarTitle").textContent = calendarName; 393 } 394 395</script>
395 396<!-- end Simple Custom CSS and JS --> 397<!-- start Simple Custom CSS and JS --> 398<style type="text/css"> 399 400.cfcc-program-wrapper { 401 font-family: inherit; 402 margin: 20px 0; 403} 404.cfcc-program-header { 405 margin-bottom: 20px; 406 display: flex; 407 align-items: center; 408 gap: 15px; 409} 410.cfcc-badge { 411 background-color: #800000; 412 color: #ffffff; 413 padding: 4px 10px; 414 border-radius: 3px; 415 font-size: 0.85rem; 416 font-weight: bold; 417 text-transform: uppercase; 418} 419.cfcc-meta-text { 420 font-size: 0.95rem; 421 color: #555; 422} 423.cfcc-tab-buttons { 424 display: flex; 425 border-bottom: 2px solid #e2e8f0; 426 margin-bottom: 25px; 427} 428.cfcc-tab-btn { 429 background: none; 430 border: none; 431 padding: 10px 20px; 432 font-size: 1rem; 433 font-weight: bold; 434 color: #555; 435 cursor: pointer; 436 border-bottom: 3px solid transparent; 437 transition: all 0.2s ease; 438} 439.cfcc-tab-btn.active { 440 color: #800000; 441 border-bottom-color: #800000; 442} 443.cfcc-tab-panel { 444 display: none; 445} 446.cfcc-tab-panel.active { 447 display: block; 448} 449.cfcc-course-group { 450 margin-bottom: 30px; 451} 452.cfcc-group-heading { 453 color: #003366; 454 font-size: 1.15rem; 455 margin-bottom: 5px; 456} 457.cfcc-instruction { 458 font-size: 0.9rem; 459 color: #666; 460 margin-bottom: 10px; 461} 462.cfcc-table { 463 width: 100%; 464 border-collapse: collapse; 465 margin-bottom: 15px; 466} 467.cfcc-table th, .cfcc-table td { 468 padding: 10px 12px; 469 border-bottom: 1px solid #e2e8f0; 470 text-align: left; 471} 472.cfcc-table th { 473 background-color: #f8fafc; 474 font-size: 0.85rem; 475 text-transform: uppercase; 476 color: #475569; 477} 478.cfcc-code { 479 color: #800000; 480} 481</style> 482<!-- end Simple Custom CSS and JS --> 483<!-- start Simple Custom CSS and JS --> 484<style type="text/css"> 485.simcal-event-start, .simcal-event-end { 486 font-weight: bold !important; 487 font-size:1.2em !important; 488 color:#54575a 489} 490 491 492/* Container cleanup - only if scoped */ 493.simcal-calendar-list { 494 background: transparent !important; 495 border: none !important; 496} 497 498/* The Individual Card */ 499.simcal-calendar-list .simcal-event { 500 display: flex !important; 501 flex-direction: row; 502 align-items: center; 503 justify-content: space-between; 504/* background: #ffffff; 505 border: 1px solid #e0e0e0; 506 border-left: 6px solid #00467f; CFCC Navy 507 border-radius: 4px;*/ 508 padding: 15px 20px; 509 margin-bottom: 12px; 510/* box-shadow: 0 2px 4px rgba(0,0,0,0.05); 511 transition: transform 0.2s ease;*/ 512} 513 514.simcal-calendar-list .simcal-event:hover { 515 transform: translateY(-2px); 516 box-shadow: 0 4px 8px rgba(0,0,0,0.1); 517} 518 519/* Event Title & Details */ 520div.simcal-event-details p { 521 flex-grow: 1; 522 padding-right: 20px; 523 font-size:1em 524} 525.simcal-default-calendar-list .simcal-event-details .simcal-event-description p { 526 font-size:1.2em !important; 527} 528 529 530.simcal-event-title { 531 font-size: 1.1rem !important; 532 font-weight: 700 !important; 533 color: #00467f !important; 534 margin-bottom: 4px !important; 535 display: block; 536} 537 538/* Date/Time Stamp */ 539.simcal-event-start { 540 font-weight: 600; 541 color: #54575a; 542 font-size: 0.9rem; 543} 544 545.simcal-register-btn/*, 546.ems-card-view .simcal-event-description*/ { 547 display: none !important; 548} 549.simcal-event-description a { 550 font-weight:700; 551} 552/* Mobile Responsiveness: Stack them on small screens */ 553@media (max-width: 768px) { 554 .simcal-calendar-list .simcal-event { 555 flex-direction: column; 556 align-items: flex-start; 557 } 558} 559 560.simcal-events li{ 561/* margin:0px !important; 562 padding:0px !important;*/ 563 margin-left: 0px !important; 564} 565 566/* Container for the faculty list */ 567.faculty_list { 568 display: flex; 569 flex-wrap: wrap; 570 gap: 20px; 571 justify-content: center; 572 padding: 20px 0; 573} 574 575/* Individual Card Styling */ 576.faculty { 577 background: #ffffff; 578 border: 1px solid #e1e1e1; 579 border-radius: 8px; 580 padding: 20px; 581 text-align: center; 582 max-width: 300px; 583 box-shadow: 0 4px 6px rgba(0,0,0,0.05); 584} 585 586.faculty__image { 587 width: 150px; 588 height: 150px; 589 border-radius: 50%; 590 object-fit: cover; 591 margin-bottom: 15px; 592 border: 3px solid #00467f; /* CFCC Navy */ 593} 594 595.faculty__name { 596 font-size: 1.25rem; 597 color: #00467f; 598 margin: 10px 0 5px 0; 599 font-weight: 700; 600} 601 602.faculty__role { 603 font-size: 1rem; 604 color: #666; 605 margin-bottom: 15px; 606 text-transform: uppercase; 607 letter-spacing: 1px; 608} 609 610.faculty__office { 611 font-size: 0.85rem; 612 color: #999; 613 margin-bottom: 10px; 614 border-top: 1px solid #eee; 615 padding-top: 10px; 616} 617 618.full-bio-link { 619 display: inline-block; 620 margin: 5px 0; 621 color: #00467f; 622 text-decoration: none; 623 font-weight: 600; 624} 625 626.full-bio-link:hover { 627 text-decoration: underline; 628}</style> 629<!-- end Simple Custom CSS and JS --> 630<!-- start Simple Custom CSS and JS --> 631<style type="text/css"> 632/* 1. COMPLETELY HIDE GLOBAL HEADERS ON THIS PAGE */ 633.page-id-44083 #wpr14, .page-id-44225 #wpr14, .page-id-44262 #wpr14, .page-id-44275 #wpr14 { 634 display: none !important; 635} 636/* 2. STYLE THE STICKY VERTICAL FLAG (RIGHT-ALIGNED) */ 637.campaign-menu-flag { 638 position: fixed; 639 right: 0; /* Pinned to the right margin */ 640 left: auto !important; /* Force override of any legacy left-aligns */ 641 top: 35%; /* Centered vertically relative to your hero background */ 642 writing-mode: vertical-rl; /* Text flows vertically on the right margin */ 643 background-color: #00467f; /* CFCC Navy */ 644 color: #ffffff !important; 645 padding: 22px 14px; 646 font-size: 13px; 647 font-weight: 800; 648 text-transform: uppercase; 649 letter-spacing: 2.5px; 650 border-radius: 8px 0 0 8px !important; /* Rounded corners on the inner left edge only */ 651 cursor: pointer; 652 z-index: 9999; 653 box-shadow: -4px 0 15px rgba(0, 0, 0, 0.15); /* Cast shadow to the left */ 654 transition: all 0.25s ease-in-out; 655} 656 657.campaign-menu-flag:hover { 658 background-color: #ffc107; /* CFCC Gold */ 659 color: #00467f !important; 660 transform: translateX(-4px); /* Interactive slide-out shift to the left */ 661} 662 663/* 3. SLIDE-OUT CAMPAIGN DRAWER STYLING (RIGHT-ALIGNED) */ 664.campaign-drawer { 665 position: fixed; 666 top: 0; 667 right: -320px; /* Hidden entirely off-screen to the right */ 668 left: auto !important; 669 width: 320px; 670 height: 100vh; 671 background-color: #00213d; /* Extra Dark Theme Navy */ 672 z-index: 10000; 673 box-shadow: -5px 0 25px rgba(0, 0, 0, 0.3); /* Cast shadow to the left */ 674 transition: right 0.3s cubic-bezier(0.25, 1, 0.5, 1); 675 padding: 40px 30px; 676} 677 678/* Active open state for the drawer panel */ 679.campaign-drawer.drawer-open { 680 right: 0; 681 left: auto !important; 682} 683 684/* Modal backdrop overlay to darken the page background */ 685.campaign-drawer-overlay { 686 position: fixed; 687 top: 0; 688 left: 0; 689 width: 100vw; 690 height: 100vh; 691 background: rgba(0, 33, 61, 0.5); 692 z-index: 9998; 693 opacity: 0; 694 display: none; 695 transition: opacity 0.3s ease; 696} 697 698.campaign-drawer-overlay.overlay-active { 699 opacity: 1; 700 display: block; 701} 702 703/* 4. NAVIGATION LINKS INSIDE THE DRAWER */ 704.campaign-drawer .drawer-logo { 705 max-width: 180px; 706 margin-bottom: 40px; 707 filter: brightness(0) invert(1); /* Forces logo to white */ 708} 709 710.campaign-drawer ul { 711 list-style: none; 712 padding: 0; 713 margin: 0; 714} 715 716.campaign-drawer ul li { 717 padding: 15px 0; 718 border-bottom: 1px solid rgba(255, 255, 255, 0.08); 719} 720 721.campaign-drawer ul li a { 722 color: #ffffff !important; 723 font-size: 16px; 724 font-weight: 700; 725 text-decoration: none; 726 transition: color 0.2s ease; 727} 728 729.campaign-drawer ul li a:hover { 730 color: #ffc107 !important; /* Gold on hover */ 731} 732 733.campaign-drawer .drawer-close { 734 position: absolute; 735 top: 15px; 736 left: 20px; /* Shifted close button to the left edge of the right drawer */ 737 background: transparent; 738 border: none; 739 color: #ffffff; 740 font-size: 28px; 741 cursor: pointer; 742 line-height: 1; 743} 744/* ========================================================================== 745 PERSISTENT USER MEMORY STYLES 746 ========================================================================== */ 747
748/* The highlight state applied to the card the user clicked last time */ 749.last-selected-card { 750 border-color: #ffc107 !important; /* Accent Gold */ 751 box-shadow: 0 8px 24px rgba(0, 70, 127, 0.18) !important; 752 transform: translateY(-4px); 753} 754 755/* Custom indicator badge dynamically injected into the selected card */ 756.last-viewed-badge { 757 background-color: #ffc107 !important; 758 color: #00467f !important; 759 font-size: 0.65rem; 760 font-weight: 800; 761 text-transform: uppercase; 762 letter-spacing: 1px; 763 padding: 3px 10px; 764 border-radius: 3px; 765 display: inline-block; 766 margin-bottom: 12px; 767 animation: pulseGlow 2s infinite ease-in-out; 768} 769 770/* Subtle pulse animation to draw the returning user's eye */ 771@keyframes pulseGlow { 772 0% { opacity: 0.9; } 773 50% { opacity: 1; transform: scale(1.02); } 774 100% { opacity: 0.9; } 775} 776 777.prog-card-type-2 { 778 background-color: #00213d; 779 color: #ffffff !important; 780 font-size: 0.75rem; 781 font-weight: 800; 782 text-transform: uppercase; 783 letter-spacing: 1.5px; 784 padding: 8px 15px; 785 border-radius: 0px 5px 0 0; 786 display: block; 787 width: 100%; 788} 789/* 1. Gradient Overlay Pseudo-Element */ 790.header-overlay-gradient { 791 position: absolute; 792 top: 0; 793 left: 0; 794 right: 0; 795 bottom:0; 796 /* Gradient: Dark Navy (#002e5d) at 75% opacity to 25% black */ 797 background: linear-gradient(90deg, rgba(0, 46, 93, 0.75) 0%, rgba(0, 0, 0, 0.25) 70%); 798 z-index: 1; 799 pointer-events: none; /* Allows user clicks to pass through */ 800 height:510px; 801} 802 803/* 2. Position the logo absolutely over the background image */ 804.header-overlay-logo { 805 position: absolute; 806 top: 50px; /* Vertical offset from top edge */ 807 left: auto; 808 right: auto; /* Horizontal offset from left edge */ 809 max-width: 220px; /* Constrains logo size on desktop */ 810 height: auto; /* Maintains natural aspect ratio */ 811 z-index: 9999; /* Ensures image sits above background overlays */ 812 pointer-events: auto; 813} 814/* ========================================================================== 815 GENERIC CAMPAIGN & PROGRAM CARD VIEW STYLES 816 ========================================================================== */ 817 818/* Target icon style placeholder - easily customizable per program folder 819li.cfimgicon-prog a:before, .cfimgicon-prog:not(li):before { 820 background-image: url(https://cfcc.edu/wp-content/uploads/2026/03/program-default-icn.png); 821} 822*/ 823/* Global Form Header Cleanup 824div.gform_heading { 825 display: none !important; 826} 827*/ 828/* Universal Card Canvas Box */ 829.prog-card-view .card { 830 display: flex !important; 831 flex-direction: column; 832 background: #ffffff; 833 border: 1px solid #d1dce5 !important; 834 border-radius: 6px !important; 835 padding: 0; /* Let card body and header badges calculate padding */ 836 margin-bottom: 25px; 837 box-shadow: 0 2px 5px rgba(0,0,0,0.08); 838 transition: all 0.2s ease-in-out; 839} 840 841/* Interactive Border Transitions */ 842.prog-card-view .card:hover { 843 border-color: #00467f !important; 844 box-shadow: 0 4px 12px rgba(0,0,0,0.12); 845} 846 847/* Universal Primary Accent Border Modifier */ 848.prog-card-view .prog-accent-card { 849 border-left: 1px solid #d1dce5 !important; 850} 851 852/* Clear Typography Overrides */ 853.prog-card-view .card-title { 854 color: #00467f !important; 855 font-weight: 800 !important; 856} 857 858/* Universal Campaign Buttons */ 859.prog-card-view .btn-primary { 860 background-color: #00467f !important; 861 border-color: #00467f !important; 862 font-weight: 700; 863 text-transform: uppercase; 864 letter-spacing: 0.5px; 865 border-radius: 4px; 866 transition: background 0.2s ease; 867} 868 869.prog-card-view .btn-primary:hover { 870 background-color: #00213d !important; 871 border-color: #00213d !important; 872} 873 874/* Highlight Box / Value Proposition Wrapper */ 875.prog-why-box { 876 background-color: #f8fafc; 877 border: 1px solid #e2e8f0; 878 border-radius: 8px; 879 padding: 40px; 880} 881 882/* TOP CARD TYPE / REGISTRATION CLASSIFICATION BADGE */ 883.prog-card-type { 884 background-color: #00213d; /* Theme Dark Navy */ 885 color: #ffffff !important; 886 font-size: 0.75rem; 887 font-weight: 800; 888 text-transform: uppercase; 889 letter-spacing: 1.5px; 890 padding: 8px 15px; 891 border-radius: 5px 5px 0 0; /* Aligns with card top-rounded corners */ 892 display: block; 893 width: 100%; 894} 895 896/* Card Body Boundary Adjustments */ 897.prog-card-view .card-body { 898 border-radius: 0 0 6px 6px; 899} 900 901/* Hover Accent Shift for Top Type Badges */ 902.prog-card-view .card:hover .prog-card-type { 903 background-color: #00467f; /* Smooth transition shift to CFCC Navy */ 904 transition: background 0.2s ease; 905} 906 907/* UNIVERSAL CORNER RIBBON ARCHITECTURE */ 908.prog-ribbon-wrap, .prog-card-ribbon-wrap { 909 position: relative; 910 overflow: hidden; /* Clips the diagonal ribbon inside card boundaries */ 911} 912 913.prog-ribbon { 914 width: 200px; 915 height: 30px; 916 background-color: #ffc107; /* CFCC Accent Gold */ 917 color: #00467f; /* Theme Navy for high legibility */ 918 position: absolute; 919 top: 35px; 920 right: -45px; 921 text-align: center; 922 line-height: 30px; 923 letter-spacing: 1px; 924 font-weight: 800; 925 font-size: 10px; 926 text-transform: uppercase; 927 transform: rotate(45deg); 928 z-index: 100; 929 box-shadow: 0 2px 5px rgba(0,0,0,0.2); 930 pointer-events: none; /* Allows direct pointer clicks through to underlying layout links */ 931} 932 933/* Horizontal banner overwrite layout class */ 934.prog-card-ribbon-wrap .prog-ribbon { 935 top: 0px; 936 right: 0px; 937 font-size: 13px; 938 transform: rotate(0deg); 939} 940 941/* Strip Ghost Empty Paragraph Tags (Generated by CMS visual editors) */ 942.prog-card-view p:empty { 943 display: none !important; 944} 945 946#film-head {margin-top:35px;} 947 948 949/* MOBILE DEVICE RESPONSIVE ADJUSTMENTS */ 950@media (max-width: 767.98px) { 951 .prog-card-ribbon-wrap .prog-ribbon { 952 position: relative; 953 transform: rotate(0deg); 954 top: 0; 955 right: 0; 956 margin: 0 auto 20px auto; 957 display: inline-block; 958 width: 100%; 959 z-index: 10; 960 } 961 962 963 964/* 3. Responsive scaling for smaller tablet & mobile screens */ 965 966 .header-overlay-logo { 967 top: 15px; 968 left: 15px; 969 max-width: 150px; /* Shrinks logo to fit mobile viewports */ 970 } 971 972/* ========================================================================== 973 MOBILE HEADER IMAGE OVERRIDE (Film & Video Landing Page) 974 ========================================================================== */ 975 976 .page-id-44083 #cnr54 { 977 /* 1. Force the mobile square poster image to load */ 978 background-image: url('https://cfcc.edu/wp-content/uploads/2026/07/Film-and-Video-mobile.jpg') !important; 979 980 /* 2. Ensure the background image centers perfectly on mobile screens */ 981 background-position: center center !important; 982 background-size: cover !important; 983 984 /* 3. OPTIONAL: If the aspect ratio feels too squished/narrow on mobile, 985 uncomment the lines below to adjust the height to fit a square image */ 986 /* 987 padding-bottom: 100% !important; 988 height: auto !important; 989 */ 990 } 991 992 993 .page-id-44225 #cnr54 { 994 /* 1. Force the mobile square poster image to load */ 995 background-image: url('https://cfcc.edu/wp-content/uploads/2026/07/accounting-poster.jpg') !important; 996 997 /* 2. Ensure the background image centers perfectly on mobile screens */ 998 background-position: center center !important; 999 background-size: cover !important; 1000 1001 /* 3. OPTIONAL: If the aspect ratio feels too squished/narrow on mobile, 1002 uncomment the lines below to adjust the height to fit a square image */ 1003 /* 1004 padding-bottom: 100% !important; 1005 height: auto !important; 1006 */ 1007 } 1008 1009 1010 .page-id-5 nav[aria-label="Breadcrumb"] { 1011 display: none !important; 1012} 1013 #film-head {margin-top:25px;} 1014} 1015</style> 1016<!-- end Simple Custom CSS and JS --> 1017<!-- start Simple Custom CSS and JS --> 1018<style type="text/css"> 1019/* HSAAS CARD VIEW STYLES 1020li.cfimgicon-aviation a:before, .cfimgicon-aviation:not(li):before { 1021 background-image: url(https://cfcc.edu/wp-content/uploads/2026/03/hsaas-program-icn-e1774556873587.png ); 1022}
1022*/ 1023 1024div.gform_heading { 1025 display:none!important; 1026} 1027.hsaas-card-view .card { 1028 display: flex !important; 1029 flex-direction: column; 1030 background: #ffffff; 1031 border: 1px solid #d1dce5 !important; 1032 border-radius: 6px !important; 1033 padding: 0; /* Let card-body handle padding */ 1034 margin-bottom: 20px; 1035 box-shadow: 0 2px 5px rgba(0,0,0,0.08); 1036 transition: all 0.2s ease-in-out; 1037} 1038 1039.hsaas-card-view .card:hover { 1040 border-color: #00467f !important; 1041 box-shadow: 0 4px 12px rgba(0,0,0,0.12); 1042} 1043 1044/* Primary Accent Border for Degree Tracks */ 1045.hsaas-card-view .hsaas-accent-card { 1046 border-left:1px solid #d1dce5 !important; /*6px solid #00467f !important;*/ 1047} 1048 1049.hsaas-card-view .card-title { 1050 color: #00467f !important; 1051 font-weight: 800 !important; 1052} 1053 1054.hsaas-card-view .btn-primary { 1055 background-color: #00467f !important; 1056 border-color: #00467f !important; 1057 font-weight: 700; 1058 text-transform: uppercase; 1059 letter-spacing: 0.5px; 1060} 1061 1062/* Value Proposition Section Styling */ 1063.hsaas-why-box { 1064 background-color: #f8fafc; 1065 border: 1px solid #e2e8f0; 1066 border-radius: 8px; 1067 padding: 40px; 1068} 1069 1070/* HSAAS CARD TYPE HEADER */ 1071.hsaas-card-type { 1072 background-color: #00213d; /* Extra Dark Navy */ 1073 color: #ffffff !important; 1074 font-size: 0.7rem; 1075 font-weight: 800; 1076 text-transform: uppercase; 1077 letter-spacing: 1.5px; 1078 padding: 6px 15px; 1079 border-radius: 5px 5px 0 0; /* Matches card top corners */ 1080 display: block; 1081 width: 100%; 1082} 1083 1084/* Ensure the card-body doesn't have top-rounded corners now */ 1085.hsaas-card-view .card-body { 1086 border-radius: 0 0 6px 6px; 1087} 1088 1089/* Hover effect for the new header */ 1090.hsaas-card-view .card:hover .hsaas-card-type { 1091 background-color: #00467f; /* Shifts to CFCC Navy on hover */ 1092 transition: background 0.2s ease; 1093} 1094 1095/* HSAAS CORNER RIBBON */ 1096.hsaas-ribbon-wrap, .hsaas-card-ribbon-wrap { 1097 position: relative; 1098 overflow: hidden; /* This keeps the ribbon from sticking out of the card */ 1099} 1100 1101.hsaas-ribbon { 1102 width: 200px; 1103 height: 30px; 1104 background-color: #ffc107; /* CFCC Gold */ 1105 color: #00467f; /* CFCC Navy for contrast */ 1106 position: absolute; 1107 top: -10px; 1108 right: 55px; 1109 text-align: center; 1110 line-height: 30px; 1111 letter-spacing: 1px; 1112 font-weight: 800; 1113 font-size: 12px; 1114 text-transform: uppercase; 1115 /* transform: rotate(45deg);*/ 1116 z-index: 100; 1117 box-shadow: 0 2px 5px rgba(0,0,0,0.2); 1118 pointer-events: none; /* Allows the stretched-link to work through the ribbon */ 1119} 1120/* Page-specific ribbon positioning override */ 1121.hsaas-card-ribbon-wrap .hsaas-ribbon { 1122 top: 0px; /* Moves it down slightly for a larger container */ 1123 right: 0px; /* Adjusts the horizontal overhang */ 1124 font-size:13px; 1125 transform: rotate(0deg); 1126} 1127 1128/* Cleanup for Ghosting P tags (Option 1) */ 1129.hsaas-card-view p:empty { 1130 display: none !important; 1131} 1132.rounded-bottom-only { 1133 border-radius: 0 0 5px 5px; 1134} 1135/* HSAAS FLAG MOBILE OVERRIDE */ 1136/* Target screens smaller than 768px (Bootstrap's mobile breakpoint) */ 1137@media (max-width: 767.98px) { 1138 /* Replace .coming-fall-flag with the actual class name of the banner */ 1139 .hsaas-card-ribbon-wrap .hsaas-ribbon { 1140 /* Step 1: Remove absolute positioning to make it flow with the text */ 1141 position: relative; 1142 1143 /* Step 2: Remove the 45-degree rotation */ 1144 transform: rotate(0deg); 1145 1146 /* Step 3: Clear previous offsets */ 1147 top: 0; 1148 right: 0; 1149 margin: 0 auto 20px auto; /* Centers it horizontally and adds bottom space */ 1150 1151 /* Step 4: Improve readability for the new horizontal layout */ 1152 display: inline-block; /* Or use 'block' for full width */ 1153 width: 100%; /* Fits the width of the text */ 1154 /*padding: 10px 20px; Adjust padding for better look when horizontal */ 1155 z-index: 10; /* Ensure it stays above content if needed */ 1156 } 1157} 1158 1159/* Workforce Edge Custom Callout Component */ 1160.workforce-edge-callout { 1161 background-color: #f7f7f7 !important; 1162 border: 1px solid #e2e8f0; 1163 border-top: 6px solid #00467f !important; 1164 font-size: 15px !important; 1165 line-height: 1.6; 1166} 1167 1168.workforce-edge-callout h4 { 1169 color: #00467f !important; 1170 font-weight: 700 !important; 1171 font-size: 1.35rem; 1172 margin-bottom: 15px; 1173 letter-spacing: -0.3px; 1174} 1175 1176.workforce-edge-callout ul { 1177 margin-bottom: 0; 1178 padding-left: 20px; 1179 color: #333333 !important; 1180}</style> 1181<!-- end Simple Custom CSS and JS --> 1182<!-- start Simple Custom CSS and JS --> 1183<style type="text/css"> 1184/* --- FULL-WIDTH BREAKOUT LOGIC --- */ 1185/* This forces the carousel to ignore parent container padding and hit the screen edges */ 1186.full-width-carousel { 1187 width: 100vw; 1188 position: relative; 1189 left: 50%; 1190 right: 50%; 1191 margin-left: -50vw; 1192 margin-right: -50vw; 1193 background-color: #00213d; /* Dark Navy base */ 1194 overflow: hidden; 1195} 1196 1197/* --- CAROUSEL INNER & ITEM SIZING --- */
1198.career-area-slider .carousel-inner { 1199 height: 550px; 1200} 1201 1202.career-area-slider .carousel-item { 1203 height: 550px; 1204 background-color: #00213d; 1205} 1206 1207.career-area-slider .carousel-item img { 1208 object-fit: cover; /* Required for position to work */ 1209 height: 100%; 1210 width: 100%; 1211 filter: brightness(45%); 1212 transition: object-position 0.3s ease; /* Optional: smooths out any transitions */ 1213} 1214 1215/* --- CAPTION & TYPOGRAPHY --- */ 1216.career-area-slider .carousel-caption { 1217 bottom: 20%; 1218 left: 10%; 1219 text-align: left; 1220 max-width: 650px; 1221 padding-left: 25px; 1222 border-left: 6px solid #ffc107; /* Gold vertical accent */ 1223 right: auto; /* Overrides Bootstrap default centered behavior */ 1224 z-index: 10; 1225} 1226 1227/* Force White Title & Teaser */ 1228.career-area-slider .carousel-caption h3 { 1229 font-size: 2.8rem; 1230 font-weight: 700 !important; 1231 color: #ffffff !important; 1232 text-transform: uppercase; 1233 margin-bottom: 10px; 1234 line-height: 1.1; 1235} 1236 1237.career-area-slider .carousel-caption p { 1238 font-size: 1.2rem; 1239 font-weight: 400; 1240 color: #ffffff !important; 1241 margin-bottom: 25px; 1242 line-height: 1.5; 1243} 1244 1245/* --- THEME BUTTON STYLING --- */ 1246/* Uses your "button btn" class logic with CFCC Gold styling */ 1247.career-area-slider .button.btn { 1248 background-color: #ffc107 !important; 1249 color: #00213d !important; 1250 border: none !important; 1251 padding: 12px 30px !important; 1252 font-weight: 700 !important; 1253 text-transform: uppercase; 1254 display: inline-block; 1255 border-radius: 4px; 1256 transition: all 0.3s ease; 1257 text-decoration: none !important; 1258} 1259 1260.career-area-slider .button.btn:hover { 1261 background-color: #e0a800 !important; 1262 color: #000000 !important; 1263 box-shadow: 0 4px 8px rgba(0,0,0,0.3); 1264} 1265 1266/* --- CONTROLS & INDICATORS --- */ 1267.career-area-slider .carousel-control-prev, 1268.career-area-slider .carousel-control-next { 1269 width: 7%; 1270 z-index: 15; 1271 opacity: 0.7; 1272} 1273 1274.career-area-slider .carousel-control-prev:hover, 1275.career-area-slider .carousel-control-next:hover { 1276 opacity: 1; 1277} 1278 1279.career-area-slider .carousel-indicators { 1280 bottom: 20px; 1281 margin-bottom: 0; 1282} 1283 1284.career-area-slider .carousel-indicators li { 1285 background-color: #ffc107 !important; 1286 width: 12px; 1287 height: 12px; 1288 border-radius: 50%; 1289 margin: 0 6px; 1290 border: none; 1291 opacity: 0.5; 1292} 1293 1294.career-area-slider .carousel-indicators li.active { 1295 opacity: 1; 1296} 1297 1298/* --- MOBILE RESPONSIVENESS --- */ 1299@media (max-width: 991px) { 1300 .career-area-slider .carousel-caption { 1301 left: 5%; 1302 max-width: 80%; 1303 } 1304} 1305 1306@media (max-width: 767.98px) { 1307 .career-area-slider .carousel-inner, 1308 .career-area-slider .carousel-item { 1309 height: 450px; 1310 } 1311 1312 .career-area-slider .carousel-caption { 1313 bottom: 10%; 1314 left: 20px; 1315 right: 20px; 1316 padding-left: 15px; 1317 border-left-width: 4px; 1318 } 1319 1320 .career-area-slider .carousel-caption h3 { 1321 font-size: 1.8rem; 1322 } 1323 1324 .career-area-slider .carousel-caption p { 1325 font-size: 1rem; 1326 } 1327 1328 /* Ensure indicators don't clutter small mobile screens */ 1329 .career-area-slider .carousel-indicators { 1330 display: none; 1331 } 1332}</style> 1333<!-- end Simple Custom CSS and JS --> 1334<!-- start Simple Custom CSS and JS --> 1335<style type="text/css"> 1336 /* THE SUPER HAMMER: Suppress phantom WP paragraphs */ 1337 .oh-simple-alert-wrapper p:empty, 1338 .oh-simple-alert-wrapper p:blank, 1339 .oh-simple-alert-wrapper p:has(br:only-child) { 1340 display: none !important; 1341 margin: 0 !important; 1342 padding: 0 !important; 1343 } 1344 1345 /* Bar Styling */ 1346 .oh-simple-alert-wrapper { 1347 width: 100%; 1348 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; 1349 } 1350 1351 .oh-simple-bar { 1352 background-color: #ffc107; 1353 color: #00467f; 1354 border-bottom: 2px solid #00467f; 1355 padding: 12px 0; 1356 } 1357 1358 .oh-inner-wrap { 1359 max-width: 1200px; 1360 margin: 0 auto; 1361 padding: 0 20px; 1362 } 1363 1364 .oh-bar-content { 1365 display: flex; 1366 justify-content: center; 1367 align-items: center; 1368 gap: 20px; 1369 } 1370 1371 .oh-bar-text { 1372 font-weight: 700; 1373 font-size: 18px; 1374 color: #00467f; 1375 margin: 0 !important; /* Forces hammer compliance */ 1376 line-height: 1.2; 1377 } 1378 1379 /* Standard Button Styling for Bar Context */ 1380 .oh-bar-action .button { 1381 margin: 0 !important; 1382 white-space: nowrap; 1383 background-color: #00467f; 1384 color: #ffffff !important; 1385 padding: 10px 24px; 1386 border-radius: 4px; 1387 font-weight: 700; 1388 text-transform: uppercase; 1389 font-size: 14px; 1390 text-decoration: none !important; 1391 display: inline-block; 1392 } 1393 1394 .oh-bar-action .button:hover { 1395 background-color: #003366; 1396 } 1397 1398 /* Responsive Mobile Handling */ 1399 @media (max-width: 991px) { 1400 .oh-bar-content { 1401 flex-direction: column; 1402 text-align: center; 1403 gap: 15px; 1404 } 1405 .oh-bar-text { 1406 font-size: 16px; 1407 } 1408 }</style> 1409<!-- end Simple Custom CSS and JS --> 1410<!-- start Simple Custom CSS and JS --> 1411<style type="text/css"> 1412/* AVIATION CARD VIEW STYLES */ 1413li.cfimgicon-aviation a:before, .cfimgicon-aviation:not(li):before { 1414 background-image: url(https://cfcc.edu/wp-content/uploads/2026/03/aviation-program-icn-e1774556873587.png ); 1415} 1416 1417div.gform_heading { 1418 display:none!important; 1419} 1420.aviation-card-view .card { 1421 display: flex !important; 1422 flex-direction: column; 1423 background: #ffffff; 1424 border: 1px solid #d1dce5 !important; 1425 border-radius: 6px !important; 1426 padding: 0; /* Let card-body handle padding */ 1427 margin-bottom: 20px; 1428 box-shadow: 0 2px 5px rgba(0,0,0,0.08); 1429 transition: all 0.2s ease-in-out; 1430} 1431 1432.aviation-card-view .card:hover { 1433 border-color: #00467f !important; 1434 box-shadow: 0 4px 12px rgba(0,0,0,0.12); 1435} 1436 1437/* Primary Accent Border for Degree Tracks */ 1438.aviation-card-view .aviation-accent-card { 1439 border-left:1px solid #d1dce5 !important; /*6px solid #00467f !important;*/ 1440} 1441 1442.aviation-card-view .card-title { 1443 color: #00467f !important; 1444 font-weight: 800 !important; 1445} 1446 1447.aviation-card-view .btn-primary { 1448 background-color: #00467f !important; 1449 border-color: #00467f !important; 1450 font-weight: 700; 1451 text-transform: uppercase; 1452 letter-spacing: 0.5px; 1453} 1454 1455/* Value Proposition Section Styling */ 1456.aviation-why-box { 1457 background-color: #f8fafc; 1458 border: 1px solid #e2e8f0; 1459 border-radius: 8px; 1460 padding: 40px; 1461} 1462 1463/* AVIATION CARD TYPE HEADER */ 1464.aviation-card-type { 1465 background-color: #00213d; /* Extra Dark Navy */ 1466 color: #ffffff !important; 1467 font-size: 0.7rem; 1468 font-weight: 800; 1469 text-transform: uppercase; 1470 letter-spacing: 1.5px; 1471 padding: 6px 15px; 1472 border-radius: 5px 5px 0 0; /* Matches card top corners */ 1473 display: block; 1474 width: 100%; 1475} 1476 1477/* Ensure the card-body doesn't have top-rounded corners now */ 1478.aviation-card-view .card-body { 1479 border-radius: 0 0 6px 6px; 1480} 1481 1482/* Hover effect for the new header */ 1483.aviation-card-view .card:hover .aviation-card-type { 1484 background-color: #00467f; /* Shifts to CFCC Navy on hover */ 1485 transition: background 0.2s ease; 1486} 1487 1488/* AVIATION CORNER RIBBON */ 1489.aviation-ribbon-wrap, .aviation-card-ribbon-wrap { 1490 position: relative; 1491 overflow: hidden; /* This keeps the ribbon from sticking out of the card */ 1492} 1493 1494.aviation-ribbon { 1495 width: 200px; 1496 height: 30px; 1497 background-color: #ffc107; /* CFCC Gold */ 1498 color: #00467f; /* CFCC Navy for contrast */ 1499 position: absolute; 1500 top: 35px; 1501 right: -45px; 1502 text-align: center; 1503 line-height: 30px; 1504 letter-spacing: 1px; 1505 font-weight: 800; 1506 font-size: 10px; 1507 text-transform: uppercase; 1508 transform: rotate(45deg); 1509 z-index: 100; 1510 box-shadow: 0 2px 5px rgba(0,0,0,0.2); 1511 pointer-events: none; /* Allows the stretched-link to work through the ribbon */ 1512} 1513/* Page-specific ribbon positioning override */ 1514.aviation-card-ribbon-wrap .aviation-ribbon { 1515 top: 0px; /* Moves it down slightly for a larger container */ 1516 right: 0px; /* Adjusts the horizontal overhang */ 1517 font-size:13px; 1518 transform: rotate(0deg); 1519} 1520 1521/* Cleanup for Ghosting P tags (Option 1) */ 1522.aviation-card-view p:empty { 1523 display: none !important; 1524} 1525/* AVIATION FLAG MOBILE OVERRIDE */ 1526/* Target screens smaller than 768px (Bootstrap's mobile breakpoint) */ 1527@media (max-width: 767.98px) { 1528 /* Replace .coming-fall-flag with the actual class name of the banner */ 1529 .aviation-card-ribbon-wrap .aviation-ribbon { 1530 /* Step 1: Remove absolute positioning to make it flow with the text */ 1531 position: relative; 1532 1533 /* Step 2: Remove the 45-degree rotation */ 1534 transform: rotate(0deg); 1535 1536 /* Step 3: Clear previous offsets */ 1537 top: 0; 1538 right: 0; 1539 margin: 0 auto 20px auto; /* Centers it horizontally and adds bottom space */ 1540 1541 /* Step 4: Improve readability for the new horizontal layout */ 1542 display: inline-block; /* Or use 'block' for full width */ 1543 width: 100%; /* Fits the width of the text */ 1544 /*padding: 10px 20px; Adjust padding for better look when horizontal */ 1545 z-index: 10; /* Ensure it stays above content if needed */ 1546 } 1547}</style> 1548<!-- end Simple Custom CSS and JS --> 1549<!-- start Simple Custom CSS and JS --> 1550<style type="text/css"> 1551/* Add your CSS code here. 1552 1553For example: 1554.example { 1555 color: red; 1556} 1557 1558For brushing up on your CSS knowledge, check out http://www.w3schools.com/css/css_
1558syntax.asp 1559 1560End of comment */ 1561.fc-event a 1562 { 1563 border: 1px solid #00467f !important; 1564 background-color: #00467f !important; 1565 color: #fff; 1566 font-size: .85em; 1567 cursor: default; 1568} 1569#menu-top-left { 1570 justify-content: space-between; 1571} 1572#menu-top-right { 1573 justify-content: space-between; 1574} 1575#intelliwidget_imagebuttons_5 .intelliwidget-menu-title a { 1576 background:#00467F; 1577} 1578 1579 1580 1581 1582/* 1. Base Container Setup */ 1583.flexmason-item .flexmason-content > * { 1584 position: absolute; 1585 height: 100%; 1586 width: 100%; 1587 left: 0; 1588 top: 0; 1589 box-sizing: border-box; 1590 padding: 0; 1591 margin: 0; 1592} 1593 1594/* 2. Aspect Ratio Keeper (Square or Portrait) */ 1595.flexmason-item .flexmason-content:before { 1596 display: block; 1597 padding-top: 100%; /* Creates a 1:1 square. Adjust if needed */ 1598 content: ''; 1599} 1600 1601/* 3. The Overlay (FIXED FOR CONTRAST) */ 1602.flexmason-item .flexmason-content > a:before { 1603 display: block; 1604 content: ''; 1605 height: 100%; 1606 width: 100%; 1607 left: 0; 1608 top: 0; 1609 transition: background 0.3s ease; /* Smooth color transition */ 1610 1611 /* FIX: Stronger Gradient. 1612 Instead of starting at 0% opacity, we start at 20% and go to 90% black at the bottom. 1613 This ensures text at the bottom always sits on dark grey/black. */ 1614 background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.6) 50%, rgba(0,0,0,0.95) 100%); 1615 z-index: 1; /* Ensures overlay sits on top of image but below text */ 1616} 1617 1618/* 4. Text Styling */ 1619.program-title-container { 1620 position: absolute; 1621 bottom: 0; 1622 left: 0; 1623 width: 100%; 1624 padding: 15px; 1625 z-index: 2; /* Ensures text sits on top of overlay */ 1626 text-align: center; /* Center align looks better in grids */ 1627 background: rgba(0,0,0,0.55) 1628} 1629 1630.flexmason-item h3.program-title, 1631.flexmason-item .program-subheading { 1632 color: #fff; 1633 /* FIX: Stronger Text Shadow for extra legibility */ 1634 text-shadow: 0px 0px 10px rgba(0,0,0,0.9); 1635 margin: 0; 1636 display: block; 1637} 1638 1639/* 5. Hover States (FIXED) */ 1640.flexmason-item:hover h3.program-title, 1641.flexmason-item:hover .program-subheading { 1642 /* Yellow (#ffbe36) on Black background ratio is 12.8:1 (PASS) */ 1643 color: #ffbe36; 1644} 1645 1646.flexmason-item:hover .flexmason-content > a:before { 1647 /* CRITICAL FIX: DO NOT REDUCE OPACITY. 1648 Instead, we keep it dark or make it slightly darker to make the yellow pop. */ 1649 background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.8) 50%, rgba(0,0,0,1) 100%); 1650 opacity: 1 !important; 1651} 1652 1653 1654/* for smaller phones no side scroll */ 1655 1656/* Fix Datepicker Horizontal Scroll on Mobile */ 1657@media screen and (max-width: 768px) { 1658 1659 .badge, .dropdown-header, .dropdown-item, .dropdown-toggle, .input-group-text, .navbar-brand, .progress-bar { 1660 white-space:normal !important; 1661 } 1662 1663 /* 1. Force the calendar popup to fit within the screen width */ 1664 #ui-datepicker-div { 1665 width: 90% !important; /* Use almost full width */ 1666 max-width: 350px !important; /* Don't let it get too huge */ 1667 left: 50% !important; /* Center it horizontally */ 1668 transform: translateX(-50%) !important; /* Perfect centering */ 1669 box-sizing: border-box; /* Include padding in width calc */ 1670 } 1671 1672 /* 2. Reduce internal padding so the calendar days fit */ 1673 .ui-datepicker table { 1674 font-size: 0.9em !important; /* Slightly smaller text */ 1675 margin: 0 !important; 1676 width: 100% !important; 1677 } 1678 1679 .ui-datepicker td span, 1680 .ui-datepicker td a { 1681 padding: 0.2em !important; /* Reduce click target padding slightly */ 1682 text-align: center !important; 1683 } 1684 1685 /* 3. Ensure the previous/next arrows don't push width out */ 1686 .ui-datepicker .ui-datepicker-prev, 1687 .ui-datepicker .ui-datepicker-next { 1688 width: 1.5em !important; 1689 height: 1.5em !important; 1690 } 1691 .header-image { 1692 max-width: 160px !important; 1693 } 1694 .footer .nowrap { 1695 line-height:3em; 1696 } 1697 1698 .img-enhanced:before, .testimonial-thumbnail-container:before, .bg-grid:before { 1699 display:none!important; 1700 } 1701} 1702 1703 1704@media only screen and (max-width: 500px) { 1705 1706#messenger-root { 1707 /* display:none !important;*/ 1708 } 1709} 1710 1711 1712 .eap-container { 1713 max-width: 1200px; 1714 margin: 20px auto; 1715 color: #333; 1716 font-size: 1rem; 1717 } 1718 .eap-table { 1719 width: 100%; 1720 border-collapse: collapse; 1721 margin-bottom: 40px; 1722 border: 1px solid #ddd; 1723 box-shadow: 0 2px 5px rgba(0,0,0,0.1); 1724 } 1725 .head { 1726 background-color: #333; 1727 color: #fff; 1728 text-transform: uppercase; 1729 letter-spacing: 1px; 1730 padding: 15px; 1731 text-align: center; 1732 font-size: 0.9rem; 1733 } 1734 .eap-table td, .eap-table th { 1735 padding: 15px; 1736 vertical-align: middle; 1737 line-height: 1.5; 1738 } 1739.eap-table td { 1740 border: 1px solid rgba(230,230,230,.9); 1741} 1742.eap-table thead, tr { border:none; } 1743 1744 /* Protocol Colors */ 1745 .row-hold { background-color: #682a7a;
1745 color: #ffffff; } 1746 .row-hold td { border:none; } 1747 .row-secure { background-color: #0071da; color: #ffffff; } 1748 .row-secure td { border:none; } 1749 .row-lockdown { background-color: #e01920; color: #ffffff; } 1750 .row-lockdown td { border:none; } 1751 .row-evacuate { background-color: #017f13; color: #ffffff; } 1752 .row-evacuate td { border:none; } 1753 .row-shelter { background-color: #f37b01; color: #000000; } 1754 .row-shelter td { border:none; } 1755 /* Column Sizing */ 1756 .col-action { width: 25%; font-weight: bold; } 1757 .col-staff { width: 37.5%; } 1758 .col-student { width: 37.5%; } 1759 .protocol-title { 1760 display: block; 1761 font-size: 1.75rem; 1762 text-align:center; 1763 } 1764 .protocol-desc { 1765 display: block; 1766 font-size: 1.4rem; 1767 font-weight: 600; 1768 font-style: italic; 1769 text-align:center; 1770 } 1771 .eap-table ul { 1772 margin: 5px 0 0 0; 1773 padding-left: 20px; 1774 } 1775 .eap-table h4 { 1776 margin: 25px 0 10px 0; 1777 text-decoration: underline; 1778 } 1779 @media (max-width: 768px) { 1780 .eap-table, .eap-table tbody, .eap-table tr, .eap-table td { 1781 display: block; 1782 width: 100%; 1783 } 1784 .eap-table thead { display: none; border:none; } 1785 .eap-table td { 1786 box-sizing: border-box; 1787 border: 1px solid rgba(230,230,230,1); 1788 } 1789 .eap-table td::before { 1790 content: attr(data-label); 1791 display: block; 1792 font-weight: bold; 1793 text-transform: uppercase; 1794 font-size: 0.7rem; 1795 margin-bottom: 5px; 1796 opacity: 0.7; 1797 } 1798 } 1799</style> 1800<!-- end Simple Custom CSS and JS --> 1801<!-- start Simple Custom CSS and JS --> 1802<style type="text/css"> 1803li.cfimgicon-badge a:before, .cfimgicon-badge:not(li):before { 1804 background-image: url(https://cfcc.edu/wp-content/themes/cfcc/css/cfccicons/svg-icons/cfcc-public-safety-icon.svg); 1805} 1806li.cfimgicon-publicservice a:before, .cfimgicon-publicservice:not(li):before { 1807 background-image: url(https://cfcc.edu/wp-content/themes/cfcc/css/cfccicons/svg-icons/cfcc-public-service-icon.svg); 1808} 1809 1810/* ========================================================= 1811 PUBLIC SAFETY PAGE - 320px / MOBILE AUDIT FIXES 1812 ========================================================= */ 1813 1814@media screen and (max-width: 768px) { 1815 1816 /* 1. EMERGENCY ALERT BAR (Stop the squish) 1817 Your current CSS forces a 65% / 35% split. At 320px, the text is unreadable 1818 and the image breaks the container. We need them to stack vertically. */ 1819 .emergency-alert-bar { 1820 flex-direction: column !important; /* Stack text on top of image */ 1821 text-align: center; 1822 padding: 15px 10px !important; 1823 } 1824 #intelliwidget-9 div.text-right { 1825 display:none; 1826 } 1827 1828 .emergency-alert-bar .alert-content, 1829 .emergency-alert-bar .alert-image { 1830 flex: 0 0 100% !important; /* Take up full width */ 1831 max-width: 100% !important; 1832 margin-bottom: 15px; /* Add spacing between stacked items */ 1833 } 1834 1835 /* 2. CIRCULAR IMAGE BUTTONS (Fix the padding blowout) 1836 Your custom CSS added 80px of left padding for the icon. On a 320px screen, 1837 this pushes long text right off the edge of the screen. */ 1838 .imagebuttons-circular .intelliwidget-menu-item a { 1839 padding: 1.5rem 1rem 1.5rem 60px !important; /* Reduce icon padding */ 1840 font-size: 0.95em; /* Scale font down slightly */ 1841 word-wrap: break-word; /* Force long titles to break instead of scroll */ 1842 } 1843 1844 /* 3. GLASS CARDS (Prevent rigid widths) 1845 Your .careers-glass-card has max-width: 400px. If it sits inside a container 1846 with padding, it will force a horizontal scroll on 320px devices. */ 1847 .careers-glass-card { 1848 max-width: 100% !important; 1849 margin-left: 0 !important; 1850 margin-right: 0 !important; 1851 box-sizing: border-box; /* Ensure borders don't add to 100% width */ 1852 } 1853 1854 /* 4. THE DARK TIMELINE (Fix negative margins) 1855 Your .cfcc-timeline-darkbg uses negative margins (-20px) to pull the 1856 numbers to the outside. On a small screen, this pulls them off the page! */ 1857 .cfcc-timeline-darkbg li:nth-child(odd):before, 1858 .cfcc-timeline-darkbg li:nth-child(even):before { 1859 /* Pull the timeline bubbles inside the box so they don't break the viewport */ 1860 position: relative !important; 1861 display: inline-block !important; 1862 margin: 0 auto 10px auto !important; 1863 left: auto !important; 1864 right: auto !important; 1865 } 1866 .cfcc-timeline-darkbg li:nth-child(odd), 1867 .cfcc-timeline-darkbg li:nth-child(even) { 1868 /* Reset the borders and margins so it flows in a straight vertical line */ 1869 margin: 0 0 15px 0 !important; 1870 border: 2px solid #00ADEF !important; 1871 border-radius: 10px !important; 1872 padding: 15px !important; 1873 text-align: center !important; 1874 } 1875 /* Hide the vertical white line since we are stacking them */ 1876 .cfcc-timeline-darkbg ul:before, 1877 .cfcc-timeline-darkbg ul:after { 1878 display: none !important; 1879 } 1880 1881 /* 5. PUBLIC SAFETY TABLES (BLET / Fire Academy Requirements) 1882 Force any standard tables on this page to allow swiping rather than breaking */ 1883 .cfcc-table { 1884 display: block !important; 1885 width: 100% !important; 1886 overflow-x: auto !important; 1887 -webkit-overflow-scrolling: touch; /* Smooth iOS scrolling */ 1888 } 1889} 1890 1891@media (max-width:600px) { 1892.imagebuttons-circular .intelliwidget-menu-item a { 1893 display: block; 1894 position: relative; 1895 border: 1px solid #ababab; 1896 -ms-flex-direction: column; 1897 flex-direction: column; 1898 text-align: left; 1899 text-decoration: none; 1900 background-color: transparent; 1901 color: #00467f; 1902 font-weight: 700; 1903 -moz-border-radius: 0; 1904 -webkit-border-radius: 0; 1905 -o-border-radius: 0; 1906 border-radius: 8px; 1907 padding: 2rem 1rem 2rem 80px; 1908} 1909}</style> 1910<!-- end Simple Custom CSS and JS --> 1911<!-- start Simple Custom CSS and JS --> 1912<style type="text/css"> 1913.emergency-alert-bar { 1914 display: flex; /* 1. Enable Flexbox */ 1915 1916 /* 2. Vertical Alignment: Aligns the content and image blocks to the vertical middle */ 1917 align-items: center; 1918 1919 /* 3. Horizontal Spacing: Distributes space evenly between the content and the image */ 1920 justify-content: space-evenly; 1921 1922 width: 100%; /* Ensure the bar uses full available width */ 1923 padding: 20px; /* Add internal padding */ 1924 /* background-color: #ff0000; /* Example: High-visibility emergency color */ 1925 /* color: white;*/ 1926} 1927 1928.alert-content { 1929 /* Set the proportional width for the text content (65% equivalent) */ 1930 flex: 0 0 65%; 1931 max-width: 65%; 1932} 1933 1934.alert-image { 1935 /* Set the proportional width for the image container (35% equivalent) */ 1936 flex: 0 0 35%; 1937 max-width: 35%; 1938 1939 /* Ensures the image is centered within its 35% container */ 1940 text-align: center; 1941} 1942
1943/* Cleanup for internal spacing, as H tags have default margins */ 1944.alert-content h2, 1945.alert-content h3, 1946.alert-content h4, 1947.alert-content p { 1948 margin: 0 0 5px 0; /* Tighten up vertical spacing for the emergency text */ 1949} 1950.alert-content h3, 1951.alert-content h4 { 1952 text-transform:none; 1953} 1954.alert-content h2 { 1955 font-weight:600; 1956} 1957 1958/* Ensure the image scales properly within its container */ 1959.alert-image img { 1960 max-width: 100%; 1961 height: auto; 1962 display: block; 1963 margin: 0 auto; 1964} 1965 1966</style> 1967<!-- end Simple Custom CSS and JS --> 1968<!-- start Simple Custom CSS and JS --> 1969<style type="text/css"> 1970/* OVERRIDE: Increase specificity to ensure the alert bar displays */ 1971.home #rw9a #intelliwidget-16 { 1972 display: flex !important; 1973} 1974 1975/* Base Container & Horizontal Centering 1976.home .alert-bar { 1977 text-align: center; 1978 margin:-0px 0px 20px 0px; 1979 padding-top:10px; 1980 padding-bottom:10px; 1981 background: #ffbe36; 1982}*/ 1983/* when using interactive bar */ 1984.home .alert-bar { 1985 text-align: center; 1986 margin:0px; 1987 padding:0px; 1988 background: #ffbe36; 1989} 1990.alert-bar-wrapper { 1991width:100% !important; 1992} 1993 1994/* Main Alert Content Block */ 1995.home #intelliwidget-16 { 1996 /* max-width: 900px; 1997 min-height: 80px; comment out when using interactive bar */ 1998 1999 margin: 0 auto; 2000 display: flex !important; 2001 2002} 2003 2004/* Vertical Alignment and Content Sizing */ 2005.home .alert-text { 2006 width: 100%; 2007 display: flex; 2008 align-items: center; 2009 padding-left: 15px; 2010 font-weight:500; 2011 font-size:120%; 2012 /*color: #FFFFFF;*/ 2013 color:#143552; 2014} 2015.home .alert-time { 2016 font-size:16px; 2017} 2018 2019.home .alert-button-container { 2020 width: 40%; 2021 display: flex; 2022 align-items: center; 2023 justify-content: flex-end; 2024 padding-right: 15px; 2025} 2026 2027/*@media only screen and (max-width: 600px) { 2028 .alert-time { 2029 display:none; 2030 } 2031} 2032 2033 Basic Button Styling 2034.home .alert-button-container .button { 2035 text-decoration: none; 2036 background-color: #0d47a1; 2037 color: white; 2038 padding: 10px 20px; 2039 border-radius: 5px; 2040 white-space: nowrap; 2041}*/</style> 2042<!-- end Simple Custom CSS and JS --> 2043<!-- start Simple Custom CSS and JS --> 2044<style type="text/css"> 2045#image-margin-right { 2046 margin-right: 2em !important; 2047} 2048 2049html { 2050 scroll-behavior: smooth; 2051} 2052 2053 2054.careers-glass-card { 2055 background: rgba(255, 255, 255, 0.3); 2056 border-radius: 15px; 2057 max-width: 400px; 2058 backdrop-filter: blur(10px); 2059 box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); 2060 border: 1px solid rgb(255, 255, 255); 2061 2062} 2063 2064.careers-glass-card p{ 2065 padding: 10px; 2066} 2067 2068.careers-glass-card img{ 2069 aspect-ratio: 16/10; 2070 width: 100%; 2071 object-fit: cover; 2072} 2073 2074.careers-large-text { 2075 font-size: clamp(3vw ,1rem + 6vw, 5em); 2076} 2077 2078</style> 2079<!-- end Simple Custom CSS and JS --> 2080<!-- start Simple Custom CSS and JS --> 2081<style type="text/css"> 2082.filter-item { 2083 transform: scale(1); 2084 transition: transform 0.3s ease; 2085 display: flex; 2086} 2087 2088.filter-item.hidden-item { 2089 transform: scale(0); 2090 display: none; 2091}</style> 2092<!-- end Simple Custom CSS and JS --> 2093<!-- start Simple Custom CSS and JS --> 2094<style type="text/css"> 2095.imagebutton-title-alt { 2096 justify-content: center; 2097 align-content: center; 2098 text-align: center; 2099 text-decoration: none; 2100 color: #fff; 2101 font-weight: 700; 2102 padding-top: .5rem; 2103} 2104.imagebutton-title-alt3 { 2105 justify-content: center; 2106 align-content: center; 2107 text-align: center; 2108 text-decoration: none; 2109 color: #fff; 2110 font-weight: 700; 2111 padding-top: .5rem; 2112} 2113 2114.imagebutton-title-alt a:hover { 2115 color: #ffbe36; 2116} 2117 2118.imagebutton-title-alt2 { 2119 justify-content: center; 2120 align-content: center; 2121 text-align: center; 2122 text-decoration: none; 2123 color: #fff; 2124 font-size:14px; 2125 line-height:1em; 2126 font-weight: 700; 2127 padding-top: .1rem; 2128} 2129.imagebutton-title-alt2 a:hover { 2130 color: #ffbe36; 2131} 2132p.imagebutton-title-alt3 { 2133 margin-bottom:.5rem; 2134}</style> 2135<!-- end Simple Custom CSS and JS --> 2136<!-- start Simple Custom CSS and JS --> 2137<style type="text/css"> 2138/* alternative accordion */ 2139.accordion-alt-heading { 2140 background-color: #00477F; 2141 color: white; 2142 padding: 10px; 2143} 2144 2145.accordion-alt-container { 2146 background-color: #f7f7f7; 2147 padding: 18px; 2148} 2149 2150.accordion-alt-heading .iwi-accordion-control:before { 2151 color: white; 2152} 2153 2154.accordion-alt-heading a { 2155 color: white; 2156} 2157 2158</style> 2159<!-- end Simple Custom CSS and JS --> 2160<!-- start Simple Custom CSS and JS --> 2161<style type="text/css"> 2162.cfcc-timeline-darkbg p { 2163 margin-bottom: 0; 2164 margin-left: 10px; 2165 margin-right: 10px; 2166} 2167.cfcc-timeline-darkbg ul:before, .cfcc-timeline-darkbg ul:after { 2168 content: ""; 2169 background: #fff; 2170 width: 0px; 2171 height: 60px; 2172 position: absolute; 2173 z-index: 2; 2174} 2175 2176.cfcc-timeline-darkbg ul:before { 2177 margin: 0 0 0 -1px; 2178} 2179 2180.cfcc-timeline-darkbg ul:after { 2181 margin: -50px 0 0 -1px; 2182} 2183 2184.cfcc-timeline-darkbg li { 2185 list-style-type: none; 2186 border: 2px solid; 2187 border-color: #00ADEF !important; 2188 margin:0 0 -2px 0; 2189 padding: 20px; 2190 counter-increment: li; 2191 position: relative; 2192} 2193 2194.cfcc-timeline-darkbg li:nth-child(odd):before, .cfcc-timeline-darkbg li:nth-child(even):before { 2195 content: counter(li); 2196 display: flex; 2197 -ms-flex-pack: center!important; 2198 justify-content: center!important; 2199 -ms-flex-align: center!important;
2200 align-items: center!important; 2201 2202 position: absolute; 2203 border-radius: 50%; 2204 height: 50px; 2205 width: 50px; 2206 background-color: #00ADEF; 2207 color: white; 2208 font-weight: bold; 2209 z-index: 3; 2210} 2211 2212.cfcc-timeline-darkbg li:nth-child(odd):before { 2213 right: 100%; 2214 margin-right: -20px; 2215} 2216 2217.cfcc-timeline-darkbg li:nth-child(even):before { 2218 left: 100%; 2219 margin-left: -20px; 2220} 2221 2222.cfcc-timeline-darkbg li:nth-child(odd) { 2223 border-right: none; 2224 border-left: 2px solid; 2225 border-top-left-radius: 10px; 2226 border-bottom-left-radius: 10px; 2227 margin-right: 30px; 2228 padding-right: 0; 2229} 2230 2231.cfcc-timeline-darkbg li:nth-child(even) { 2232 border-left: none; 2233 border-right: 2px solid; 2234 border-top-right-radius: 10px; 2235 border-bottom-right-radius: 10px; 2236 margin-left: 30px; 2237 padding-left: 0; 2238 text-align: right; 2239} 2240 2241.cfcc-timeline-darkbg li:first-child { 2242 border-top: none; 2243 border-top-right-radius:0; 2244 border-top-left-radius:0; 2245} 2246 2247.cfcc-timeline-darkbg li:last-child { 2248 border-bottom: none; 2249 border-bottom-right-radius:0; 2250 border-bottom-left-radius:0; 2251} 2252</style> 2253<!-- end Simple Custom CSS and JS --> 2254<!-- start Simple Custom CSS and JS --> 2255<style type="text/css"> 2256.cfcc-table { 2257 width: 100%; 2258 margin-bottom: 1rem; 2259 color: #212529; 2260 border-collapse: collapse; 2261} 2262 2263.cfcc-table th, 2264.cfcc-table td { 2265 padding: 0.75rem; 2266 vertical-align: top; 2267 border-top: 1px solid #dee2e6; 2268} 2269 2270.cfcc-table thead th { 2271 vertical-align: bottom; 2272 border-bottom: 2px solid #dee2e6; 2273} 2274 2275.cfcc-table tbody + tbody { 2276 border-top: 2px solid #dee2e6; 2277} 2278 2279.cfcc-table-bordered { 2280 border: 1px solid #dee2e6; 2281} 2282 2283.cfcc-table-bordered th, 2284.cfcc-table-bordered td { 2285 border: 1px solid #dee2e6; 2286} 2287 2288.cfcc-table-striped > tbody > tr:nth-of-type(odd) > * { 2289 --bs-cfcc-table-accent-bg: rgba(0, 0, 0, 0.05); 2290 color: var(--bs-cfcc-table-striped-color); 2291 background-color: var(--bs-cfcc-table-accent-bg); 2292} 2293 2294.cfcc-table-striped > tbody > tr:nth-of-type(odd) > * { 2295 background-color: #f8f9fa; 2296} 2297 2298 2299 2300</style> 2301<!-- end Simple Custom CSS and JS --> 2302 2303<link rel='stylesheet' id='30022-css' href='//cfcc.edu/wp-content/uploads/custom-css-js/30022.css?v=2882' type="text/css" media='all' /> 2304<style>p.hello{font-size:12px;color:darkgray;}#google_language_translator,#flags{text-align:left;}#google_language_translator{clear:both;}#flags{width:165px;}#flags a{display:inline-block;margin-right:2px;}#google_language_translator{width:auto!important;}div.skiptranslate.goog-te-gadget{display:inline!important;}.goog-tooltip{display: none!important;}.goog-tooltip:hover{display: none!important;}.goog-text-highlight{background-color:transparent!important;border:none!important;box-shadow:none!important;}#google_language_translator select.goog-te-combo{color:#32373c;}#google_language_translator{color:transparent;}body{top:0px!important;}#goog-gt-{display:none!important;}#glt-translate-trigger{left:20px;right:auto;}#glt-translate-trigger > span{color:#ffffff;}#glt-translate-trigger{background:#42296e;}.goog-te-gadget .goog-te-combo{width:100%;}</style><meta name="pageid" content="60"> 2305
2305<script> 2306(function($){ 2307 // 1. Run immediately on Document Ready 2308 $(document).ready(function() { 2309 2310 // --- YOUR EXISTING CODE --- 2311 $('.post-type-archive-directory .has-post-thumbnail').find('.contact-name').find('a').append('</br><span style="font-size: 12px;text-decoration: underline #046b7d dotted;color: #046b7d;font-weight: 500;">Read full profile <span class="iwicon-circle-arrow-right"></span></span>'); 2312 2313 // ADA FIX: Prevented this from targeting spans inside Gravity Forms 2314 $('#intelliwidget-7 ul li span:not(form span)').addClass('iwi-control iwi-menu-control').attr('aria-expanded', 'false'); 2315 $('#intelliwidget-7 .sub-menu li span').removeClass('iwi-control iwi-menu-control').attr('aria-expanded', ''); 2316 2317 // --- NEW ADA FIXES START HERE --- 2318 2319 // A. Menu & Toggle Fixes 2320 // ------------------------------------------ 2321 $( '.iwi-menu' ).each( function( ndx, el ){ 2322 var id = el.getAttribute( 'id' ); 2323 if( $(el).iwinterface ) { 2324 $( el ).iwinterface( { aria: 'menu', activeclass: 'open', bodyclass: 'undefined' === id ? false : id + '-open', overlayclass: 'iwi-overlay-scroll' } ); 2325 } 2326 }); 2327 2328 // Add labels to sub-menu toggle buttons (ADA FIX: Strictly ignoring forms!) 2329 $( '.iwi-menu-control:not(form .iwi-menu-control)' ).each(function() { 2330 var linkText = $(this).prev('a').text().trim(); 2331 $(this).attr( 'aria-label', linkText ? 'Toggle submenu for ' + linkText : 'Toggle submenu' ); 2332 }); 2333 2334 // Mobile Toggle accessibility 2335 $( '.iwi-mobile-toggle' ).attr('role', 'button'); 2336 2337 // B. Search Bar Fixes 2338 // ------------------------------------------ 2339 $( 'input.search-input' ).attr( 'aria-label', 'Search site content' ); 2340 2341 // C. Gravity Forms Universal Fix (WCAG 1.3.5) 2342 // ------------------------------------------ 2343 // Standard Fields 2344 $( '.ginput_container_email input' ).attr( 'autocomplete', 'email' ); 2345 $( '.ginput_container_phone input' ).attr( 'autocomplete', 'tel' ); 2346 $( '.ginput_container_website input' ).attr( 'autocomplete', 'url' ); 2347 2348 // Name Fields 2349 $( '.name_first input' ).attr( 'autocomplete', 'given-name' ); 2350 $( '.name_last input' ).attr( 'autocomplete', 'family-name' ); 2351 $( '.name_middle input' ).attr( 'autocomplete', 'additional-name' ); 2352 $( '.name_suffix input' ).attr( 'autocomplete', 'honorific-suffix' ); 2353 2354 // Address Fields 2355 $( '.address_line_1 input' ).attr( 'autocomplete', 'street-address' ); 2356 $( '.address_line_2 input' ).attr( 'autocomplete', 'address-line2' ); 2357 $( '.address_city input' ).attr( 'autocomplete', 'address-level2' ); 2358 $( '.address_state select, .address_state input' ).attr( 'autocomplete', 'address-level1' ); 2359 $( '.address_zip input' ).attr( 'autocomplete', 'postal-code' ); 2360 $( '.address_country select' ).attr( 'autocomplete', 'country' ); 2361 2362 $( 'body' ).removeClass( 'iwi-loading' ); 2363 }); 2364 2365 // 2. Run delayed (Wait for Google & External Scripts) 2366 $(window).on('load', function() { 2367 setTimeout(function() { 2368 // Google Translate Fix 2369 $('#goog-gt-votingForm input').each(function() { 2370 var inputName = $(this).attr('name'); 2371 $(this).attr('aria-label', 'Google Translate voting parameter ' + inputName); 2372 }); 2373 2374 // Datepicker Fix (Prevent horizontal scroll on mobile) 2375 // Just in case CSS doesn't catch it, we ensure it's centered 2376 if( window.innerWidth < 769 ) { 2377 $('#ui-datepicker-div').css({'left': '50%', 'transform': 'translateX(-50%)'}); 2378 } 2379 }, 1500); 2380 }); 2381 2382})(jQuery); 2383</script>
2383 2384<meta name="date" content="2025-07-15T18:26:59+00:00"> 2385<!-- Google Tag Manager -->
2386<script>
vendor: 327 bytes, lines 2386-2390
2386(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 2387new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 2388j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 2389'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 2390})(window,document,'script','dataLayer','
2390GTM-TNX265N8
vendor: 3 bytes, line 2390
2390');
2390</script>
2390 2391<!-- End Google Tag Manager --> 2392<!-- SilkTide -->
2393<script defer src="https://analytics.silktide.com/9f3da649550947f7cf479c13ff75d0fe.js"></script>
vendor: 1 bytes, line 2393
2393
2394<script> 2395 (function (s,i,l,k,y) { 2396 s[i] = s[i] || y; 2397 s[l] = s[l] || []; 2398 s[k] = function(e, p) { p = p || {}; p.event = e; p.time = Date.now(); s[l].push(p); }; 2399 s[k]('page_load'); 2400 })(window, 'stConfig', 'stEvents', 'silktide', {}); 2401</script>
2401 2402<!-- END SilkTide --> 2403 2404<!--
2405<script src="https://kit.fontawesome.com/af99ce5453.js" crossorigin="anonymous"></script>
2405 --> 2406 2407<!-- Snap Pixel Code -->
2408<script type='text/javascript'> 2409(function(e,t,n){if(e.snaptr)return;var a=e.snaptr=function() 2410{a.handleRequest?a.handleRequest.apply(a,arguments):a.queue.push(arguments)}; 2411a.queue=[];var s='script';r=t.createElement(s);r.async=!0; 2412r.src=n;var u=t.getElementsByTagName(s)[0]; 2413u.parentNode.insertBefore(r,u);})(window,document, 2414'https://sc-static.net/scevent.min.js'); 2415 2416snaptr('init', 'd503f4ef-0879-4156-b2c1-4b63d4895c94', { 2417'user_email': '__INSERT_USER_EMAIL__' 2418}); 2419 2420snaptr('track', 'PAGE_VIEW'); 2421 2422</script>
2422 2423<!-- End Snap Pixel Code --> 2424 2425<!-- Begin Constant Contact Active Forms
2426<script> var _ctct_m = "ca927ba6176edff62af30b20bc76cc66"; </script>
vendor: 1 bytes, line 2426
2426
2427<script id="signupScript" src="//static.ctctcdn.com/js/signup-form-widget/current/signup-form-widget.min.js" async defer></script>
2427--> 2428<!-- End Constant Contact Active Forms --> 2429 2430<!-- element451 -->
2431<script type="text/javascript" async="true" src="https://cfcc.shell.451.io/" id="shell451"></script>
2431 2432 2433<!-- monsido -->
2434<script type="text/javascript"> 2435 window._monsido = window._monsido || { 2436 token: "l09rLuPdPhIn1HcFsU66RA", 2437 }; 2438</script>
vendor: 1 bytes, line 2438
2438
2439<script type="text/javascript" async src="https://app-script.monsido.com/v2/monsido-script.js"></script>
2439 2440<!-- End monsido --> 2441 2442<!-- Meta Pixel Code -->
2443<script> 2444 !function(f,b,e,v,n,t,s) 2445 {if(f.fbq)return;n=f.fbq=function(){n.callMethod? 2446 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 2447 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 2448 n.queue=[];t=b.createElement(e);t.async=!0; 2449 t.src=v;s=b.getElementsByTagName(e)[0]; 2450 s.parentNode.insertBefore(t,s)}(window, document,'script', 2451 'https://connect.facebook.net/en_US/fbevents.js'); 2452 2453 // Initialize Pixel 1 2454 fbq('init', '2594080867298048'); 2455 // Initialize Pixel 2 2456 fbq('init', '1289396158203435'); 2457 2458 // Track PageView for both 2459 fbq('track', 'PageView'); 2460</script>
2460 2461<noscript> 2462 <img height="1" width="1" style="display:none" alt="" src="https://www.facebook.com/tr?id=2594080867298048&ev=PageView&noscript=1"/> 2463 <img height="1" width="1" style="display:none" alt="" src="https://www.facebook.com/tr?id=1289396158203435&ev=PageView&noscript=1"/> 2464</noscript> 2465<!-- End Meta Pixel Code --> 2466 <style type="text/css" id="wp-custom-css"> 2467 2468.pum-theme-20988 .pum-content, .pum-theme-cutting-edge .pum-content{ 2469 font-weight: 400; 2470 font-size: 1.125rem; 2471 line-height: 1.4; 2472color: #00467f; 2473} 2474 2475.pum-theme-20988 .pum-title, .pum-theme-cutting-edge .pum-title { 2476text-shadow: none; 2477 font-family: Poppins, sans-serif; 2478 font-weight: 400; 2479 font-size: 2rem; 2480 line-height: 1.2; 2481 color: #00467f; 2482} 2483 2484.pum-theme-20988 .pum-container, .pum-theme-cutting-edge .pum-container { 2485 font-family: "Nunito Sans",sans-serif; 2486 font-size: 1.5rem; 2487 font-weight:400; 2488 border: none; 2489 max-height: 80vh; 2490 overflow: visible; 2491 width: 95vw; 2492 max-width: 980px; 2493 box-sizing: border-box; 2494 -webkit-border-radius: .5rem; 2495 border-radius: .5rem; 2496 padding: 5vw; 2497 background-color: #fff; 2498 margin: 0; 2499 position: fixed; 2500 bottom: 50%; 2501 right: 50%; 2502 left:auto !important; 2503 top:auto !important; 2504 -webkit-transform: translateY(50%) translateX(50%); 2505 transform: translateY(50%) translateX(50%); 2506 transition: all .3s; 2507} 2508 2509.pum-theme-20988 .pum-content + .pum-close, .pum-theme-cutting-edge .pum-content + .pum-close { 2510 color: #fff; 2511border: none; 2512box-shadow: none; 2513text-shadow: none; 2514 height: 2rem; 2515 width: 2rem; 2516 display: block; 2517 -webkit-border-radius: 50%; 2518 border-radius: 50%; 2519 border: 3px solid transparent; 2520 color: #000; 2521 background-color: #fff; 2522 cursor: pointer; 2523 text-align: center; 2524 box-sizing: border-box; 2525 position: absolute; 2526 top: -2vw; 2527 right: -2vw; 2528 left: auto; 2529 font-size: 1.5rem; 2530 font-style: normal; 2531 font-weight: 700; 2532 font-family: sans-serif; 2533 line-height: 1; 2534} 2535 2536/* BBTEAM Jordan Added Image Box CSS */ 2537 2538.popmake-content { 2539 outline: none !important; 2540} 2541 2542ul.iw-custom-menu.row.three-col li { 2543 width: 33%; 2544} 2545 2546ul.iw-custom-menu.row.three-col li .bgcover { 2547 transition: 2s ease-in; 2548} 2549 2550ul.iw-custom-menu.row.three-col li:hover .bgcover { 2551 transform: scale( 1.375 ) rotate( -3deg ); 2552} 2553 2554ul.iw-custom-menu.row.three-col li .intelliwidget-menu-title { 2555 transition: background-color .3s ease; 2556} 2557 2558ul.iw-custom-menu.row.three-col li:hover .intelliwidget-menu-title { 2559 background: #00467f; 2560} 2561 2562@media screen and (max-width:900px) { 2563ul.iw-custom-menu.row.three-col li { 2564 width: 100%; 2565 } 2566 2567} 2568/* 2569@media screen and (max-width: 768px) { 2570.table td, .table th { 2571 border-top: 0!important; 2572 display: inherit!important; 2573 } 2574} 2575*/ 2576 2577/* end BBTEAM Jordan Added Image Box CSS */ 2578 2579.has-sticky-sidebar .sticky-sidebar { 2580 position: sticky; 2581 position: -webkit-sticky; 2582 top: 200px; 2583} 2584 2585.footer .xicon-twitter-x { 2586 display: inline-block; 2587 font-size: 2.5em; 2588 padding-left: .5em; 2589 text-decoration: none; 2590 line-height: .75; 2591} 2592 2593.video-container::after { 2594 content:''; 2595 top:0; 2596 left:0; 2597 height:100%; 2598 width:100%; 2599 background:rgba(0,0,0,0); 2600 position:absolute; 2601} </style> 2602 </head> 2603 2604<body class="page-template page-template-pagecells page-template-lyt5f page-template-pagecellslyt5f-php page page-id-60 page-parent page-child parent-pageid-232 ctct-pagecells"> 2605<a class="skip-link screen-reader-text" href="#content">Skip to content</a> 2606<div id="rw9a" class="layout-item-row alert-bar" ><div id="intelliwidget-16" class=" widget widget_intelliwidget"></div></div><div id="wpr14" class="layout-item-wrapper masthead bg-white" ><div id="rw2_outer" class="top-nav-container px-0 px-lg-3" ><div id="rw2" class="center-page layout-item-row d-flex flex-row" ><div id="top-left-nav" class="layout-item-menu d-none d-lg-block col-lg-4" ><div role="navigation" aria-label="Top Left Menu" class="menu-top-left-container"><ul id="menu-top-left" class="menu"><li id="menu-item-19614" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19614"><a href="/admissions/">Apply</a></li> 2607<li id="menu-item-19623" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19623"><a href="/campus-visits/">Visit CFCC</a></li> 2608<li id="menu-item-17467" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17467"><a href="https://cfcc.edu/request-information/">Request Information</a></li> 2609</ul></div></div><div id="cnr3e" class="layout-item-container mb-0" > <div class="bg-white text-center p-2 py-lg-0"> <a href="/" aria-label="Cape Fear Community College"> <img src="/wp-content/uploads/2019/06/cfcc-logo.png" height="98" width="271" alt="Cape Fear Community College" class="header-image" /> </a> </div> </div><div id="mn40" class="layout-item-menu d-none d-lg-block col-lg-4" ><div role="navigation" aria-label="Top Right Menu" class="menu-top-right-container"><ul id="menu-top-right" class="menu"><li id="menu-item-19615" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19615"><a href="/about/community-services/">Community Services</a></li> 2610<li id="menu-item-19616" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19616"><a href="https://wilsoncentertickets.com">Wilson Center</a></li> 2611<li id="menu-item-17468" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17468"><a href="https://cfcc.edu/foundation/">Donate</a></li> 2612</ul></div></div><div id="cnr41" class="layout-item-container d-flex d-lg-none col-2 mb-0
2612search-toggle-container" > <a href="#" class="toggle-search d-flex iwi-modal-toggle iwi-target-searchbox_mobile iwi-use-overlay" aria-label="Toggle Search"> <span class="iwicon-search"></span> </a> <div id="searchbox_mobile" class="searchbox p-5" style="display:none;"> <div class="searchbox"> <form class="searchform" action="/search/" aria-live="polite" ><!-- 2613 FIX 1: Add a dedicated error message container. 2614 This container is empty and hidden by default, but has the 2615 ARIA roles needed to announce messages to screen readers. 2616 --><div class="search-error" role="status" aria-live="polite" style="display: none; color: red; margin-bottom: 10px;"> </div><!-- Your existing search input and hidden fields --><input type="hidden" name="cx" value="004637514235636343015:yhzbsku25vo" autocomplete="off"> 2617 <input type="hidden" name="cof" value="FORID:11" autocomplete="off" /><!-- 2618 The search input field. We need to add aria-describedby 2619 to link it to our new error container. 2620 --><input name="q" class="search-input" type="text" maxlength="256" autocomplete="off" 2621 title="Search CFCC.edu" placeholder="Search CFCC" 2622 required /> 2623 2624 <input type="submit" autocomplete="off" class="search-button" name="submit" value="Search" /> 2625</form> </div> </div> </div><div id="cnr42" class="layout-item-container d-flex d-lg-none col-2 mb-0 mobile-toggle-container" > <a href="#" class="d-flex iwi-mobile-toggle iwi-use-overlay iwi-change-trans" data-iwi-clones=".menu-primary-nav-container,.menu-top-left-container,.menu-top-right-container" data-iwi-menus="#menu-primary-nav,#menu-primary-nav-1,#menu-top-right,#menu-top-left" aria-label="Toggle Menus"> <span class="iwicon-menu-lt"></span> </a> </div></div></div><div id="rw12_outer" class="bg-dark" ><div id="rw12" class="center-page layout-item-row d-none d-lg-block" ><div id="mnd" class=" layout-item-menu bg-dark" ><div role="navigation" aria-label="Main Menu" class="menu-primary-nav-container"><ul id="menu-primary-nav-1" class="primary-nav flex-row d-flex iwi-menu iwi-use-toggles iwi-change-fade iwi-use-hover iwi-menupane-slide"><li class="menu-item menu-item-type-post_type menu-item-object-page current-page-ancestor current-menu-ancestor current-menu-parent current-page-parent current_page_parent current_page_ancestor menu-item-has-children menu-item-234"><a href="https://cfcc.edu/about/">About CFCC</a> 2626<ul class="sub-menu"> 2627 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-387"><a href="https://cfcc.edu/about/leadership/">College Leadership</a></li> 2628 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-29518"><a href="https://cfcc.edu/directory/">Faculty & Staff Directory</a></li> 2629 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-388"><a href="https://cfcc.edu/about/institutional-effectiveness-and-planning/accreditation/">Accreditation</a></li> 2630 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-415"><a href="https://cfcc.edu/academic-resources/academic-calendar/">Academic Calendar</a></li> 2631 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17338"><a href="/foundation/">Foundation</a></li> 2632 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17469"><a href="/human-resources/">Jobs at CFCC</a></li> 2633 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-390"><a href="https://cfcc.edu/about/statements-and-policies/">Statements and Policies</a> 2634 <ul class="sub-menu"> 2635 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20570"><a href="/statement-of-non-discrimination">Statement of Non-Discrimination</a></li> 2636 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20571"><a href="/office-of-student-affairs/title-ix-policies/">Title IX Policies</a></li> 2637 </ul> 2638</li> 2639 <li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-60 current_page_item menu-item-392"><a href="https://cfcc.edu/about/contact-us/" aria-current="page">Contact Us</a></li> 2640 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-41455"><a href="https://cfcc.edu/viewbook/">Viewbook</a></li> 2641 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-20516"><a href="https://cfcc.edu/college-catalogs/">Student Catalogs and Handbooks</a></li> 2642 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-393"><a href="https://cfcc.edu/about/campus-safety/">Campus Safety</a></li> 2643 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-27656"><a href="https://cfcc.edu/heerf-disclosures/">HEERF Disclosures</a></li> 2644 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-394"><a href="https://cfcc.edu/about/parking-at-cfcc/">Parking at CFCC</a></li> 2645 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20178"><a href="https://cfcc.edu/rent-event-space/">Request Event Space</a></li> 2646 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20185"><a href="/category/now-at-cape-fear/">News</a></li> 2647 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-396"><a href="https://cfcc.edu/about/community-services/">Community Services</a></li> 2648 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-397"><a href="https://cfcc.edu/about/maps-locations/">Maps and Locations</a></li> 2649 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22739"><a href="https://cfcc.edu/marketing">Marketing</a></li> 2650 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19621"><a href="https://cfcc.edu/marketing/social-media-cfcc/">Social Media @ CFCC</a></li> 2651 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19622"><a href="/marketing/public-information-requests/">Public Information Requests</a></li> 2652 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-31192"><a href="https://cfcc.edu/alumni/">Alumni</a></li> 2653 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-38366"><a href="https://cfcc.edu/about/demographics/">Demographics</a></li> 2654</ul> 2655</li> 2656<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-17476"><a href="/admissions/">
2656Admissions</a> 2657<ul class="sub-menu"> 2658 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17475"><a href="/admissions/admissions-steps/">Admissions Steps</a></li> 2659 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17473"><a href="/admissions/new-student-orientation/">New Student Orientation</a></li> 2660 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17472"><a href="/testing-services/">Testing Services</a></li> 2661 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20028"><a href="//cfcc.edu/records-registration/register-for-classes/">Registration Information</a></li> 2662 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17474"><a href="/admissions/health-sciences-enrollment/">Health Sciences Admissions</a></li> 2663 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17470"><a href="/paying-for-cfcc/tuition-and-fees/">Tuition and Fees</a></li> 2664 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24646"><a href="https://cfcc.edu/admissions/residency-information/">Residency Information</a></li> 2665 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-34687"><a href="https://cfcc.edu/admissions/bienvenidos/">¡Bienvenidos!</a></li> 2666</ul> 2667</li> 2668<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-111"><a href="https://cfcc.edu/academics/">Academics</a> 2669<ul class="sub-menu"> 2670 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-409"><a href="https://cfcc.edu/academics/programs-of-study/">Programs of Study</a></li> 2671 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19647"><a href="/cape-fear-online">Online Learning</a></li> 2672 <li class="iwi-no-toggle menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-19646"><a href="https://cfcc.edu/division/university-transfer/">University Transfer Programs</a> 2673 <ul class="sub-menu"> 2674 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20886"><a href="https://cfcc.edu/advising/university-transfer-guide/">University Transfer Guide</a></li> 2675 </ul> 2676</li> 2677 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24422"><a href="https://cfcc.edu/division/nursing-health-sciences/">Health and Human Services Programs</a></li> 2678 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24477"><a href="https://cfcc.edu/division/math-engineering-technology-science/">Math, Engineering, Technology, and Science</a></li> 2679 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-40806"><a href="https://cfcc.edu/division/education/">Education</a></li> 2680 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24478"><a href="https://cfcc.edu/division/liberal-arts-languages-social-sciences/">Liberal Arts, Languages, and Social Sciences</a></li> 2681 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-42812"><a href="https://cfcc.edu/academics/programs-of-study/aviation-programs/">Aviation Programs</a></li> 2682 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24479"><a href="https://cfcc.edu/division/marine-technology/">Marine Technology</a></li> 2683 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-40805"><a href="https://cfcc.edu/division/public-safety/">Public Safety</a></li> 2684 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24480"><a href="https://cfcc.edu/division/education-public-service/">Public Service</a></li> 2685 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24481"><a href="https://cfcc.edu/division/business-information-technology/">Business and Information Technology</a></li> 2686 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24482"><a href="https://cfcc.edu/division/fine-arts-film-design/">Fine Arts, Film, and Design</a></li> 2687 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24483"><a href="https://cfcc.edu/division/vocational-trade/">Career and Technical</a></li> 2688 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-19652"><a href="/records-registration/register-for-classes/">Register for Classes</a> 2689 <ul class="sub-menu"> 2690 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19654"><a href="/records-registration/how-to-register/">How to Register</a></li> 2691 </ul> 2692</li> 2693 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-33297"><a href="https://cfcc.edu/high-school-students/">For High School Students</a> 2694 <ul class="sub-menu"> 2695 <li class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-19868"><a href="https://cfcc.edu/career-and-college-promise">Career and College Promise (Dual Enrollment)</a></li> 2696 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-33298"><a href="https://cfcc.edu/division/ccp-workforce-continuing-education-
2696pathways/">Workforce Continuing Education</a></li> 2697 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-33299"><a href="https://cfcc.edu/career-and-college-promise/cooperative-innovative-high-schools/">Cooperative Innovative High Schools</a></li> 2698 </ul> 2699</li> 2700 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19655"><a href="/records-registration/request-transcript/">Request a Transcript</a></li> 2701</ul> 2702</li> 2703<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-116"><a href="https://cfcc.edu/services-and-support/">Services & Support</a> 2704<ul class="sub-menu"> 2705 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17333"><a href="/counseling/">Counseling</a></li> 2706 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17331"><a href="/advising/">Academic Advising</a></li> 2707 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-41063"><a href="https://cfcc.edu/boost/">Boost Program</a></li> 2708 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17332"><a href="/career-services/">Career Services</a></li> 2709 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28442"><a href="https://cfcc.edu/admissions/health-sciences-admissions/">Health Sciences Enrollment Center</a></li> 2710 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-427"><a href="https://cfcc.edu/about/parking-at-cfcc/">Parking Services</a></li> 2711 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19591"><a href="/testing-services/">Testing Services</a></li> 2712 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17471"><a href="/records-registration/">Records and Registration</a></li> 2713 <li class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-19662"><a href="https://cfcc.edu/library">Library</a></li> 2714 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17337"><a href="/learning-lab/tutoring/">Tutoring</a></li> 2715 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19661"><a href="/counseling/personal-support/">Personal Support</a></li> 2716 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17336"><a href="/student-accessibility-services/">Student Accessibility Services</a></li> 2717 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19551"><a href="/veterans/">Veterans Center</a></li> 2718 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-425"><a href="https://cfcc.edu/about/campus-safety/">Campus Safety</a></li> 2719 <li class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-19663"><a href="https://cfcc.edu/bookstore">Sea Devil Bookstore</a></li> 2720 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19545"><a href="/office-of-student-affairs/">Student Affairs</a></li> 2721 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20329"><a href="https://my.cfcc.edu/web/helpdesk/home">Student Help Desk</a></li> 2722 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-20897"><a href="https://cfcc.edu/food-pantry/">CFCC Food Pantry</a></li> 2723 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-30108"><a href="https://cfcc.edu/student-life/mentoring-program/">Student Mentoring Program</a></li> 2724 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-31699"><a href="https://cfcc.edu/cape-fear-online/online-services/">Canvas Help</a></li> 2725 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-32851"><a href="https://cfcc.edu/drop-in-childcare/">Drop-In Childcare</a></li> 2726</ul> 2727</li> 2728<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-114"><a href="https://cfcc.edu/paying-for-cfcc/">Paying For CFCC</a> 2729<ul class="sub-menu"> 2730 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17478"><a href="/paying-for-cfcc/tuition-and-fees/">Tuition and Fees</a></li> 2731 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-430"><a href="https://cfcc.edu/paying-for-cfcc/pay-your-tuition/">Pay Your Tuition</a></li> 2732 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-431"><a href="https://cfcc.edu/paying-for-cfcc/payment-plan/">Payment Plan</a></li> 2733 <li class="iwi-no-toggle menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-19535"><a href="/financial-aid/">Financial Aid</a> 2734 <ul class="sub-menu"> 2735 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19533"><a href="/foundation/money-for-college/">
2735Scholarships</a></li> 2736 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19534"><a href="/financial-aid/grants/">Grants</a></li> 2737 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19532"><a href="/financial-aid/loans/">Loans</a></li> 2738 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19575"><a href="/financial-aid/federal-work-study/">Work Study</a></li> 2739 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19537"><a href="/financial-aid/financial-aid-forms/">Financial Aid Forms</a></li> 2740 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19548"><a href="/financial-aid/satisfactory-academic-progress-policy-2/">Keeping Your Financial Aid</a></li> 2741 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19664"><a href="/financial-aid/frequently-asked-questions">Frequently Asked Questions</a></li> 2742 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19665"><a href="//cfcc.edu/resources/netprice/">Net Price Calculator</a></li> 2743 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19553"><a href="/financial-aid/important-dates/">Important Dates</a></li> 2744 </ul> 2745</li> 2746 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-40782"><a href="https://cfcc.edu/paying-for-cfcc/managing-your-personal-finances/">Managing Your Personal Finances</a></li> 2747</ul> 2748</li> 2749<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-19613"><a href="/continuing-education/">Workforce Development</a> 2750<ul class="sub-menu"> 2751 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19626"><a href="/continuing-education/schedule-of-classes/">Schedule of Classes</a></li> 2752 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19598"><a href="/job-training/">Job Training</a></li> 2753 <li class="iwi-no-toggle menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-19599"><a href="/business-and-industry-services/">Business and Industry Services</a> 2754 <ul class="sub-menu"> 2755 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19944"><a href="//cfcc.edu/business-and-industry-services/corporate-training-workforce-development/">Corporate Training</a></li> 2756 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19600"><a href="/small-business-center/">Small Business Center</a></li> 2757 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22666"><a href="https://cfcc.edu/military-business-center/">NC Military Business Center</a></li> 2758 </ul> 2759</li> 2760 <li class="iwi-no-toggle menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-19601"><a href="/academic-career-readiness/">Academic and Career Readiness</a> 2761 <ul class="sub-menu"> 2762 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19628"><a href="https://cfcc.edu/academic-career-readiness/adult-high-school/">Adult High School</a></li> 2763 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19630"><a href="/academic-career-readiness/english-as-a-second-language/">English as a Second Language</a></li> 2764 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19935"><a href="//cfcc.edu/academic-career-readiness/high-school-equivalency/">High School Equivalency (GED®)</a></li> 2765 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19627"><a href="/academic-career-readiness/resume-writing-interview-skills/">Resume Writing & Interview Skills</a></li> 2766 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19936"><a href="//cfcc.edu/academic-career-readiness/career-discovery/">Career Discovery</a></li> 2767 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19937"><a href="/academic-career-readiness/integrated-education-and-training/">Integrated Education and Training (IET)</a></li> 2768 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-43645"><a href="https://cfcc.edu/academic-career-readiness/bridge-to-independence-program/">Bridge to Independence</a></li> 2769 </ul> 2770</li> 2771 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-24061"><a href="https://cfcc.edu/continuing-education/apprenticeship-programs/">Apprenticeships</a></li> 2772 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19602"><a href="/community-enrichment/">Community Enrichment</a></li> 2773 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19605"><a href="/division/public-safety/">Fire, EMS, Law Training</a></li> 2774 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19636"><a href="/continuing-education/online-classes/">Online Classes</a></li> 2775 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19656"><a href="/records-registration/request-transcript/">Request a Transcript</a></li> 2776 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-25165"><a href="https://cfcc.edu/continuing-education/summer-camps-and-programs/">Summer Camps and Programs</a> 2777 <ul class="sub-menu"> 2778 <li class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-19843"><a href="/continuing-education/summer-camps/">Summer Camps</a></li> 2779 </ul> 2780</li> 2781</ul> 2782</li> 2783<li class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-has-children menu-item-19800"><a href="https://cfcc.edu/student-life">Student Life</a> 2784<ul class="sub-menu"> 2785 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19474"><a href="https://www.goseadevils.com">Athletics</a></li> 2786 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19803"><a href="/student-life/clubs-organizations/">Student Clubs and Organizations</a></li> 2787 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28384"><a href="https://cfcc.edu/student-life/literary-and-arts-publications/">Literary & Arts Publications</a></li> 2788 <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-41368"><a href="https://cfcc.edu/paying-for-cfcc/managing-your-personal-finances/">Managing Your Personal Finances</a></li> 2789 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20025"><a href="https://cfcc.edu/student-life/student-life/student-achievement/">Student Achievement</a></li> 2790 <li class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-19802"><a href="https://cfcc.edu/ambassadors">Student Ambassador Program</a></li> 2791 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20801"><a href="/student-life/student-government-association/">Student Government Association</a></li> 2792 <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-19977"><a href="//cfcc.edu/honors-program/honors-experience/">Honors Experience</a></li> 2793 <li class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-19799"><a href="https://cfcc.edu/graduation">Graduation</a></li> 2794</ul> 2795</li> 2796<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20195"><a href="https://my.cfcc.edu/">myCFCC</a></li> 2797<li class="search-toggle iwi-target-searchbox d-none d-lg-block iwi-nohover menu-item menu-item-type-post_type menu-item-object-page menu-item-115"><a href="https://cfcc.edu/search/">Search</a></li> 2798</ul></div></div><ul id="searchbox" class="layout-item-container searchbox sub-menu" ><li class="" ><div class="searchbox">
2799<form class="searchform" action="/search/" aria-live="polite" > 2800 2801 <!-- 2802 FIX 1: Add a dedicated error message container. 2803 This container is empty and hidden by default, but has the 2804 ARIA roles needed to announce messages to screen readers. 2805 --> 2806 <div class="search-error" role="status" aria-live="polite" style="display: none; color: red; margin-bottom: 10px;"> 2807 </div> 2808 2809 <!-- Your existing search input and hidden fields --> 2810 <input type="hidden" name="cx" value="004637514235636343015:yhzbsku25vo" autocomplete="off"> 2811 <input type="hidden" name="cof" value="FORID:11" autocomplete="off" /> 2812 2813 <!-- 2814 The search input field. We need to add aria-describedby 2815 to link it to our new error container. 2816 --> 2817 <input name="q" class="search-input" type="text" maxlength="256" autocomplete="off" 2818 title="Search CFCC.edu" placeholder="Search CFCC" 2819 required /> 2820 2821 <input type="submit" autocomplete="off" class="search-button" name="submit" value="Search" /> 2822</form> 2823</div> 2824</li></ul></div></div></div><div id="rw85" class="layout-item-row bg-highlight bar-narrow" ></div><div id="content" class="row center-page px-3 px-md-4 layout-item-row content-main flex-wrap" ><div id="cnr62" class="layout-item-container col-lg-8" ><nav aria-label="Breadcrumb"><ul class="breadcrumb-links"><li><a href="https://cfcc.edu">Home</a> </li><li aria-hidden="true" class="breadcrumb-delimiter">/</li><li> <a href="https://cfcc.edu/about/">About CFCC</a> </li><li aria-hidden="true" class="breadcrumb-delimiter">/</li><li> <span class="breadcrumb-current" aria-current="page">Contact Us</span></li></ul></nav><div id="post-60" class="post-60 page type-page status-publish has-post-thumbnail hentry post-seq-1 odd clearfix"><h1 class=" post-title" >Contact Us</h1><p>Cape Fear Community College<br /> 2825411 N. Front Street<br /> 2826Wilmington, NCÂ 28401</p> 2827<p><strong>Main Phone number</strong>: <a href="tel:9103627000" class="contact-link"> 910-362-7000 </a> 2828<p>Other Phone Numbers:</p> <div id="intelliwidget_card2_1" class=" widget_intelliwidget"> <div class="col-md-8"> <table class="table table-striped"> 2829<thead> 2830<tr> 2831<th scope="col"> 2832<h6>
2832Name</h6> 2833</th> 2834<th scope="col"> 2835<h6>Contact</h6> 2836</th> 2837</tr> 2838</thead> 2839<tbody> 2840<tr> 2841<th scope="row">Emergency</th> 2842<td> <a href="tel:911" class="contact-link"> 911 </a> </td> 2843</tr> 2844<tr> 2845<th scope="row">Downtown Campus Security</th> 2846<td> <a href="tel:9103627855" class="contact-link"> 910-362-7855 </a> </td> 2847</tr> 2848<tr> 2849<th scope="row">North Campus Security</th> 2850<td> <a href="tel:9103627580" class="contact-link"> 910-362-7580 </a> </td> 2851</tr> 2852<tr> 2853<th scope="row">Burgaw Center Security</th> 2854<td> <a href="tel:9108001666" class="contact-link"> 910-800-1666 </a> </td> 2855</tr> 2856<tr> 2857<th scope="row">Alston W. Burke Center Security</th> 2858<td> <a href="tel:9103627931" class="contact-link"> 910-362-7931 </a> </td> 2859</tr> 2860<tr> 2861<th scope="row">Lost and Found</th> 2862<td> <a href="tel:9103627855" class="contact-link"> 910-362-7855 </a> </td> 2863</tr> 2864</tbody> 2865</table> </div> </div> <p><strong>Typical Operating Hours</strong>: Monday – Friday: 8 a.m. – 5 p.m.</p> 2866 <a href="https://cfcc.edu/about/maps-locations/" rel="noopener" target="_blank"> Click here to visit the Maps and Locations page </a> to view all of our campus locations.</p> 2867<p>For technical support, please <a href="https://my.cfcc.edu/web/it-helpdesk/home" rel="noopener" target="_blank"> click here to visit the IT Help Desk page </a> .</p> <div class='gf_browser_chrome gform_wrapper gravity-theme gform-theme--no-framework' data-form-theme='gravity-theme' data-form-index='0' id='gform_wrapper_2' style='display:none'> <div class='gform_heading'> <p class='gform_required_legend'>"<span class="gfield_required gfield_required_asterisk">*</span>" indicates required fields</p> </div> <form method='post' enctype='multipart/form-data' id='gform_2' action='/about/contact-us/' data-formid='2' novalidate> 2868 <input type='hidden' class='gforms-pum' value='{"closepopup":false,"closedelay":0,"openpopup":false,"openpopup_id":0}' /> <div class='gform-body gform_body'> <div id='gform_fields_2' class='gform_fields top_label form_sublabel_below description_below'> <div id="field_2_4" class="gfield gfield--type-html gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_4"> <h2>Send a question or comment:</h2> 2869<p><em>Already know the name of a person you want to email? You may want to use our <a href="http://cfcc.edu/fasd/"> Faculty and Staff Directory </a> instead.</em></p> </div> <div id="field_2_1" class="gfield gfield--type-select gfield_contains_required field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_1"> <label class='gfield_label gform-field-label' for='input_2_1' >Send Email To<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label> <div class='ginput_container ginput_container_select'> <select name='input_1' id='input_2_1' class='medium gfield_select' aria-required="true" aria-invalid="false" ><option value='Select One:' >Select One:</option><option value='Accessing My Account' >*Accessing My Account</option><option value='Reset My Password' >*Reset My Password</option><option value='Academic Advising' >Academic Advising</option><option value='Academic Forgiveness' >Academic Forgiveness</option><option value='Academic Warning/Probation/Suspension' >Academic Warning/Probation/Suspension</option><option value='Admissions' >Admissions</option><option value='Athletics' >Athletics</option><option value='Bookstore' >Bookstore</option><option value='Canvas' >Canvas</option><option value='Career Counseling' >Career Counseling</option><option value='Cape Fear Stage' >Cape Fear Stage</option><option value='Change Program of Study at CFCC' >Change Program of Study at CFCC</option><option value='CLEP/AP Questions' >CLEP/AP Questions</option><option value='College Programs for HS students' >College Programs for HS students</option><option value='Concurrent Enrollment' >Concurrent Enrollment</option><option value='Continuing Education' >Continuing Education</option><option value='Disability Services' >Disability Services</option><option value='Distance Learning' >Distance Learning</option><option value='Early College' >Early College</option><option value='Financial Aid' >Financial Aid</option><option value='Have I been accepted?' >Have I been accepted?</option><option value='Have my high school/GED/college transcripts arrived?' >Have my high school/GED/college transcripts arrived?</option><option value='Health Science Programs' >Health Science Programs</option><option value='High School Completion for adults' >High School Completion for adults</option><option value='Job Opportunities For Students' >Job Opportunities For Students</option><option value='Library' >Library</option><option value='Logins to online systems' >Logins to online systems</option><option value='myCFCC' >myCFCC</option><option value='Non-traditional Students' >Non-traditional Students</option><option value='Personal Counseling' >Personal Counseling</option><option value='Placement Testing' >Placement Testing</option><option value='Registrar' >Registrar</option><option value='Request CFCC Catalog/Application' >Request CFCC Catalog/Application</option><option value='Residency Information' >Residency Information</option><option value='Scholarship Information' >Scholarship Information</option><option value='Student Activities' >Student Activities</option><option value='Transcript Request' >Transcript Request</option><option value='Veteran Services' >Veteran Services</option><option value='Webmaster' >Webmaster</option><option value='Don't know - please direct me' >Don't know - please direct me</option></select> </div> </div> <div id="field_2_2" class="gfield gfield--type-text gfield_contains_required field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_2"> <label class='gfield_label gform-field-label' for='input_2_2' >Please Type Your name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label> <div class='ginput_container ginput_container_text'> <input name='input_2' id='input_2_2' type='text' value='' class='medium' aria-required="true" aria-invalid="false" /> </div> </div> <div id="field_2_3" class="gfield gfield--type-email gfield_contains_required field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_3"> <label class='gfield_label gform-field-label' for='input_2_3' >Email<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label> <div class='ginput_container ginput_container_email'> <input name='input_3' id='input_2_3' type='email' value='' class='medium' aria-required="true" aria-invalid="false" /> </div> </div> <div id="field_2_5" class="gfield gfield--type-text field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_5"> <label class='gfield_label gform-field-label' for='input_2_5' >Subject</label> <div class='ginput_container ginput_container_text'> <input name='input_5' id='input_2_5' type='text' value='' class='medium' aria-invalid="false" /> </div> </div> <fieldset id="field_2_6" class="gfield gfield--type-radio gfield--type-choice field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_6"><legend class='gfield_label gform-field-label' >Are you currently enrolled at CFCC?</legend> <div class='ginput_container ginput_container_radio'> <div class='gfield_radio' id='input_2_6'> <div class='gchoice gchoice_2_6_0'> <input class='gfield-choice-input' name='input_6' type='radio' value='Yes' id='choice_2_6_0' onchange='gformToggleRadioOther( this )' /> 2870 <label for='choice_2_6_0' id='label_2_6_0' class='gform-field-label gform-field-label--type-inline'>Yes</label> </div> <div class='gchoice gchoice_2_6_1'> <input class='gfield-choice-input' name='input_6' type='radio' value='No' id='choice_2_6_1' onchange='gformToggleRadioOther( this )' /> 2871 <label for='choice_2_6_1' id='label_2_6_1' class='gform-field-label gform-field-label--type-inline'>No</label> </div> </div> </div> </fieldset> <div id="field_2_7" class="gfield gfield--type-text field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_7"> <label class='gfield_label gform-field-label' for='input_2_7' >CFCC Student ID Number</label> <div class='ginput_container ginput_container_text'> <input name='input_7' id='input_2_7' type='text' value='' class='medium' aria-invalid="false" /> </div> </div> <div id="field_2_8" class="gfield gfield--type-textarea gfield_contains_required field_sublabel_below gfield--no-description field_description_below gfield_visibility_visible" data-js-reload="field_2_8"> <label class='gfield_label gform-field-label' for='input_2_8' >
2871Type your message here<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label> <div class='ginput_container ginput_container_textarea'> <textarea name='input_8' id='input_2_8' class='textarea medium' aria-required="true" aria-invalid="false" rows='10' cols='50'></textarea> </div> </div> <div id="field_2_9" class="gfield gfield--type-honeypot gform_validation_container field_sublabel_below gfield--has-description field_description_below gfield_visibility_visible" data-js-reload="field_2_9"> <label class='gfield_label gform-field-label' for='input_2_9' >Comments</label> <div class='ginput_container'> <input name='input_9' id='input_2_9' type='text' value='' autocomplete='new-password'/> </div> <div class='gfield_description' id='gfield_description_2_9'> This field is for validation purposes and should be left unchanged. </div> </div> </div> </div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_2' class='gform_button button' value='Submit' onclick='if(window["gf_submitting_2"]){return false;} if( !jQuery("#gform_2")[0].checkValidity || jQuery("#gform_2")[0].checkValidity()){window["gf_submitting_2"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_2"]){return false;} if( !jQuery("#gform_2")[0].checkValidity || jQuery("#gform_2")[0].checkValidity()){window["gf_submitting_2"]=true;} jQuery("#gform_2").trigger("submit",[true]); }' /> 2872 <input type='hidden' class='gform_hidden' name='is_submit_2' value='1' /> 2873 <input type='hidden' class='gform_hidden' name='gform_submit' value='2' /> 2874 2875 <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> 2876 <input type='hidden' class='gform_hidden' name='state_2' value='WyJbXSIsIjcyYTViNDlhNDkwNWYwOGE4Y2E1ODE5OTQ0ZGVjMDg0Il0=' /> 2877 <input type='hidden' class='gform_hidden' name='gform_target_page_number_2' id='gform_target_page_number_2' value='0' /> 2878 <input type='hidden' class='gform_hidden' name='gform_source_page_number_2' id='gform_source_page_number_2' value='1' /> 2879 <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div>
2879<script type="text/javascript"> 2880gform.initializeOnLoaded( function() {gformInitSpinner( 2, 'https://cfcc.edu/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery('#gform_ajax_frame_2').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_2');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_2').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_2').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_2').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_2').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_2').val();gformInitSpinner( 2, 'https://cfcc.edu/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [2, current_page]);window['gf_submitting_2'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_2').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [2]);window['gf_submitting_2'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_2').text());}, 50);}else{jQuery('#gform_2').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [2, current_page]);gform.utils.trigger({ event: 'gform/postRender', native: false, data: { formId: 2, currentPage: current_page } });} );} ); 2881</script>
2881 2882 2883</div></div><div id="cnr68" class="layout-item-container col-lg-4 sidebar pl-5 mt-4" ><div id="wgt69" class="layout-item-widget sticky-sidebar" ><div id="intelliwidget-11" class=" widget-container widget_intelliwidget"><div class="row"><div class="col-6"><a class="button btn-plain" href="/campus-visits/">Plan a Visit</a></div> 2884<div class="col-6"><a class="button btn-plain" href="https://cfcc.edu/request-information/">Get Info</a></div> 2885<div class="col-12"><div class="bg-med bg-grid text-center p-3"><h2 class="text-hand text-white h3">What are you waiting for?</h2> <a class="button btn-rev" href="/admissions/apply"><span class="text-highlight">Apply</span> Now</a></div></div></div> 2886</div></div></div></div><div id="cnr6b" class="layout-item-container" ><div id="wgt6d" class="layout-item-widget" ></div></div><div id="rwf_outer" class="colophon bg-dark" ><div id="rwf" class="flex-row d-flex flex-wrap center-page px-3 px-md-4 layout-item-row justify-content-between" ><div id="cnr45" class="layout-item-container" > <a href="/" aria-label="Cape Fear Community College"> <img src="/wp-content/uploads/2019/06/cfcc-logo-rev.png" height="98" width="271" alt="Cape Fear Community College" /> </a> <h3 class="widget-title" style="padding-left:1.8em"> <a href="tel:9103627000"> (910) 362-7000 </a> </h3></div><div id="cnr46" class="layout-item-container" ><h3 class="widget-title">Online Services:</h3><div id="mn4a" class="layout-item-menu" ><div role="navigation" aria-label="Online Services Menu" class="menu-online-services-container"><ul id="menu-online-services" class="menu"><li id="menu-item-17450" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17450"><a href="https://my.cfcc.edu">myCFCC</a></li> 2887<li id="menu-item-17451" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17451"><a href="https://cfcc.instructure.com/">Canvas</a></li> 2888<li id="menu-item-17452" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17452"><a href="https://sso.quicklaunch.io/admin/secured/991/api/launch/4267">Self Service</a></li> 2889<li id="menu-item-20076" class="menu-item menu-item-type-taxonomy menu-item-object-linkage menu-item-20076"><a href="https://cfcc.edu/bookstore">Bookstore</a></li> 2890<li id="menu-item-37322" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-37322"><a href="https://cfcc.edu/sitemap/">Sitemap</a></li> 2891</ul></div></div></div><div id="cnr47" class="layout-item-container" ><h3 class="widget-title">Quick Links:</h3><div id="mn4b" class="layout-item-menu" ><div role="navigation" aria-label="Quick Links Menu" class="menu-quick-links-container"><ul id="menu-quick-links" class="menu"><li id="menu-item-17453" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17453"><a href="//cfcc.edu/human-resources/">Jobs at CFCC</a></li> 2892<li id="menu-item-30546" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-30546"><a href="https://cfcc.edu/about/events/">Events Calendar</a></li> 2893<li id="menu-item-20074" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-20074"><a href="//cfcc.edu/disability-support-services/website-accessibility/">Accessibility</a></li> 2894<li id="menu-item-252" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-252"><a href="https://cfcc.edu/about/statements-and-policies/">Statements & Policies</a></li> 2895<li id="menu-item-33861" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-33861"><a href="https://cfcc.edu/office-of-student-affairs/">Title IX</a></li> 2896<li id="menu-item-38403" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-38403"><a href="https://cfcc.edu/about/consumer-information/">Consumer Information</a></li> 2897<li id="menu-item-44578" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-44578"><a href="https://cfcc.edu/office-of-student-affairs/incident-reporting-form/">Report an Incident</a></li> 2898</ul></div></div></div><div id="cnr48" class="layout-item-container" ><h3 class="widget-title">Get In Touch:</h3><div id="mn4c" class="layout-item-menu" ><div role="navigation" aria-label="Get In Touch Menu" class="menu-get
2898-in-touch-container"><ul id="menu-get-in-touch" class="menu"><li id="menu-item-134" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-60 current_page_item menu-item-134"><a href="https://cfcc.edu/about/contact-us/" aria-current="page">Contact</a></li> 2899<li id="menu-item-243" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-243"><a href="https://cfcc.edu/about/maps-locations/">Maps & Locations</a></li> 2900<li id="menu-item-241" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-241"><a href="https://cfcc.edu/about/campus-safety/">Campus Safety</a></li> 2901<li id="menu-item-17082" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17082"><a href="/directory/">Faculty & Staff Directory</a></li> 2902</ul></div></div></div></div></div><div id="rw6_outer" class="footer bg-med" ><div id="rw6" class="flex-row d-flex flex-wrap center-page px-3 px-md-4 layout-item-row justify-content-between" > <div class="d text-center"> <span class="nowrap">©2026 Cape Fear Community College</span> </div> <div class="d text-center"> <span class="nowrap"> <a href="https://cfcc.edu/counseling/#lifeline" class="link"> Suicide and Crisis Lifeline </a> </span> <span class="nowrap"> <a href="/statement-of-non-discrimination" class="link"> Statement of Non-discrimination </a> </span> <span class="nowrap"> <a href="/about/statements-and-policies/privacy-policy/" class="link"> Privacy Statement </a> </span><br><span class="nowrap">Closings & Delays: <a href="tel:8777992322"> 1-877-799-2322 </a> </span> <span class="nowrap"> <a href="https://cfcc.edu/web-accessibility-policy/" target="_blank" rel="noopener noreferrer" class="link"> Web Accessibility Policy <span class="visually-hidden">(opens in a new tab)</span> </a> </span> </div> <div class="d text-center"> <ul class="nowrap social-media-list" style="list-style: none; padding: 0; margin: 0; display: inline-flex; gap: 10px;"> 2903 <li> <a href="https://www.facebook.com/capefearcc" target="_blank" aria-label="Facebook (opens in new tab)" rel="noopener noreferrer" class="iwicon-facebook"> </a> </li> 2904 <li> <a href="https://www.tiktok.com/@capefearcc" target="_blank" aria-label="TikTok (opens in new tab)" rel="noopener noreferrer" class="sicon-tiktok" style="padding-left:0px;"> </a> </li> 2905 <li> <a href="https://www.youtube.com/cfccnc" target="_blank" aria-label="YouTube (opens in new tab)" rel="noopener noreferrer" class="iwicon-youtube"> </a> </li> 2906 <li> <a href="https://www.linkedin.com/school/cape-fear-community-college" target="_blank" aria-label="LinkedIn (opens in new tab)" rel="noopener noreferrer" class="sicon-linkedin"> </a> </li> 2907 <li> <a href="https://www.instagram.com/capefearcc" target="_blank" aria-label="Instagram (opens in new tab)" rel="noopener noreferrer" class="iwicon-instagram"> </a> </li> 2908</ul> </div> </div></div><div id="glt-translate-trigger"><span class="notranslate">Translate »</span></div><div id="glt-toolbar"></div><div id="flags" style="display:none" class="size18"><ul id="sortable" class="ui-sortable"><li id="English"><a href="#" title="English" class="nturl notranslate en flag united-states"></a></li><li id="French"><a href="#" title="French" class="nturl notranslate fr flag French"></a></li><li id="Korean"><a href="#" title="Korean" class="nturl notranslate ko flag Korean"></a></li><li id="Portuguese"><a href="#" title="Portuguese" class="nturl notranslate pt flag Portuguese"></a></li><li id="Russian"><a href="#" title="Russian" class="nturl notranslate ru flag Russian"></a></li><li id="Spanish"><a href="#" title="Spanish" class="nturl notranslate es flag mexico"></a></li><li id="Vietnamese"><a href="#" title="Vietnamese" class="nturl notranslate vi flag Vietnamese"></a></li></ul></div><div id='glt-footer'><div id="google_language_translator" class="default-language-en"></div></div>
2908<script>function GoogleLanguageTranslatorInit() { new google.translate.TranslateElement({pageLanguage: 'en', includedLanguages:'en,fr,ko,pt,ru,es,vi', autoDisplay: false}, 'google_language_translator');}</script>
2908
2908<script src="https://js.adsrvr.org/up_loader.1.1.0.js" type="text/javascript"></script>
2908 2909
2909<script type="text/javascript"> 2910 ttd_dom_ready( function() { 2911 if (typeof TTDUniversalPixelApi === 'function') { 2912 var universalPixelApi = new TTDUniversalPixelApi(); 2913 universalPixelApi.init("l19yiob", ["iqobvoe"], "https://insight.adsrvr.org/track/up"); 2914 } 2915 }); 2916 </script>
2916<!-- Instagram Feed JS -->
2917<script type="text/javascript"> 2918var sbiajaxurl = "https://cfcc.edu/wp-admin/admin-ajax.php"; 2919</script>
2919 2920<!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 2920-2921
2920 2921<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
2921GTM-TNX265N8
vendor: 83 bytes, lines 2921-2922
2921" 2922height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
2923<!-- End Google Tag Manager (noscript) -->
2924<script type="text/javascript"> 2925/* ========================================================= 2926 CHATBOTS (ELEMENT451 & BOLT AI) - ADA FIX (WCAG 1.3.1) 2927 ========================================================= */ 2928window.addEventListener('DOMContentLoaded', (event) => { 2929 // Create an observer to constantly watch the DOM for injected widgets 2930 const chatObserver = new MutationObserver(function(mutations, observer) { 2931 2932 // --- 1. ELEMENT451 CHATBOT FIX --- 2933 const elementIframe = document.querySelector('#messenger-root iframe'); 2934 if (elementIframe && elementIframe.getAttribute('role') === 'dialog') { 2935 elementIframe.removeAttribute('role'); // Strip bad role 2936 2937 const elementRoot = document.getElementById('messenger-root'); 2938 if (elementRoot) { 2939 elementRoot.setAttribute('role', 'dialog'); 2940 elementRoot.setAttribute('aria-label', 'Live Chat Window'); 2941 } 2942 elementIframe.setAttribute('title', 'Live Chat Assistant'); 2943 } 2944 2945 // --- 2. BOLT DISCOVERY AI FIX --- 2946 const boltIframe = document.querySelector('iframe[src*="discoveredu.ai"]'); 2947 if (boltIframe && boltIframe.getAttribute('role') === 'dialog') { 2948 boltIframe.removeAttribute('role'); // Strip bad role 2949 2950 // Move the role and label to whatever container Bolt injected it into 2951 const boltRoot = boltIframe.parentElement; 2952 if (boltRoot) { 2953 boltRoot.setAttribute('role', 'dialog'); 2954 boltRoot.setAttribute('aria-label', 'Bolt AI Assistant'); 2955 } 2956 } 2957 }); 2958 2959 // Start watching the entire body for these injected scripts 2960 chatObserver.observe(document.body, { childList: true, subtree: true }); 2961}); 2962/* ========================================================= 2963 VAGUE LINKS & CONTACT - ADA CONTEXT FIX (WCAG 2.4.4) 2964 - 1. Checks for a title="" attribute on the link or sibling links 2965 - 2. Uses Local Post Title (H2/H3/H4) 2966 - 3. Falls back to H1 (Page Topic) for global context 2967 - EXCLUDES main navigation wrapper (#wpr14) to protect global links 2968 ========================================================= */ 2969window.addEventListener('DOMContentLoaded', (event) => { 2970 // 1. The vague buttons we are hunting 2971 const vaguePhrases = ['here', 'click here', 'learn more', 'read more', 'find out more', 'details', 'view details', 'read full profile', 'contact us', 'contact', 'apply now']; 2972 2973 // 2. Grab the main Page Title (H1) for global fallback 2974 const h1Element = document.querySelector('h1'); 2975 const pageContext = h1Element 2976 ? h1Element.textContent.replace(/\s+/g, ' ').trim() 2977 : document.title.split('|')[0].trim(); 2978 2979 // 3. Grab every single link on the page that doesn't already have an aria-label 2980 const allLinks = document.querySelectorAll('a:not([aria-label])'); 2981 2982 allLinks.forEach(link => { 2983 2984 // --- THE MAIN NAVIGATION SHIELD --- 2985 const isInMainNav = link.closest('#wpr14'); 2986 const isSearchLink = link.classList.contains('toggle-search') || 2987 link.classList.contains('search-toggle') || 2988 link.closest('.searchbox'); 2989 2990 if (isInMainNav && !isSearchLink) { 2991 return; 2992 } 2993 // ----------------------------------- 2994 2995 const linkTextClean = link.textContent.replace(/\s+/g, ' ').trim().toLowerCase(); 2996 2997 // 4. If the link text matches one of our vague phrases... 2998 if (vaguePhrases.includes(linkTextClean)) { 2999 const originalText = link.textContent.replace(/\s+/g, ' ').trim(); 3000 let finalContext = ''; 3001 3002 // STRATEGY 1: Check the link itself for a title attribute 3003 if (link.hasAttribute('title')) { 3004 finalContext = link.getAttribute('title').trim(); 3005 } 3006 3007 // Find the container block for Strategies 2 and 3 3008 const container = link.closest('.cell, .cell2, article, .post, .widget, .elementor-widget, .col-md-6, .col-md-4, .directory-item'); 3009 3010 // STRATEGY 2: Look for ANY title attribute in the same post block (e.g., thumbnail links) 3011 if (!finalContext && container) { 3012 const titleLink = container.querySelector('a[title]'); 3013 if (titleLink) { 3014 finalContext = titleLink.getAttribute('title').trim(); 3015 } 3016 } 3017 3018 // STRATEGY 3: Fallback to the local heading text 3019 if (!finalContext && container) { 3020 const localHeading = container.querySelector('h2, h3, h4, h5'); 3021 if (localHeading) { 3022 finalContext = localHeading.textContent.replace(/\s+/g, ' ').trim(); 3023 } 3024 } 3025 3026 // STRATEGY 4: Absolute fallback to global page title 3027 if (!finalContext) { 3028 finalContext = pageContext; 3029 } 3030 3031 // CLEANUP: Strip out annoying WordPress "Permalink to" text if it exists 3032 finalContext = finalContext.replace(/^Permalink to /i, '').trim(); 3033 3034 if (finalContext) { 3035 // If the title attribute already includes the words "Read more", just use it as-is 3036 // to prevent "Read more about Read more..." 3037 if (finalContext.toLowerCase().includes(linkTextClean)) { 3038 link.setAttribute('aria-label', finalContext); 3039 } else { 3040 link.setAttribute('aria-label', `${originalText} about ${finalContext}`); 3041 } 3042 } 3043 } 3044 }); 3045}); 3046 3047</script>
3047<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/js/iw.flexslider.js?ver=2.2.0' id='flexslider-js-js'></script>
vendor: 1 bytes, line 3047
3047
3048<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/js/iwinterface.js?ver=2.2.0' id='iwinterface-js'></script>
vendor: 1 bytes, line 3048
3048
3049<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/js/iwcarousel.js?ver=2.2.0' id='iwcarousel-js'></script>
vendor: 1 bytes, line 3049
3049
3050<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/intelliwidget-framework/js/pagecells.js?ver=2.2.0' id='pagecells-js-js'></script>
vendor: 1 bytes, line 3050
3050
3051<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/google-language-translator/js/scripts.js?ver=6.0.19' id='scripts-js'></script>
vendor: 1 bytes, line 3051
3051
3052<script type='text/javascript' src='//translate.google.com/translate_a/element.js?cb=GoogleLanguageTranslatorInit' id='scripts-google-js'></script>
vendor: 1 bytes, line 3052
3052
3053<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/constant-contact-forms/assets/js/ctct-plugin-recaptcha-v2.min.js?ver=1.14.0' id='recaptcha-v2-js'></script>
vendor: 187 bytes, lines 3053-3054
3053 3054<script async="async" defer type='text/javascript' src='//www.google.com/recaptcha/api.js?onload=renderReCaptcha&render=explicit&ver=1.14.0' id='recaptcha-lib-v2-js'></script>
3055<script type='text/javascript' src='https://cfcc.edu/wp-content/plugins/constant-contact-forms/assets/js/ctct-plugin-frontend.min.js?ver=1.14.0' id='ctct_frontend_forms-js'></script>
vendor: 1 bytes, line 3055
3055
3056<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/dist/vendor/wp-polyfill-inert.min.js?ver=3.1.2' id='wp-polyfill-inert-js'></script>
vendor: 1 bytes, line 3056
3056
3057<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/dist/vendor/regenerator-runtime.min.js?ver=0.13.11' id='regenerator-runtime-js'></script>
vendor: 1 bytes, line 3057
3057
3058<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0' id='wp-polyfill-js'></script>
vendor: 1 bytes, line 3058
3058
3059<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/dist/dom-ready.min.js?ver=392bdd43726760d1f3ca' id='wp-dom-ready-js'></script>
vendor: 1 bytes, line 3059
3059
3060<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/dist/hooks.min.js?ver=4169d3cf8e8d95a3d6d5' id='wp-hooks-js'></script>
vendor: 1 bytes, line 3060
3060
3061<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/dist/i18n.min.js?ver=9e794f35a71bb98672ae' id='wp-i18n-js'></script>
vendor: 1 bytes, line 3061
3061
3062<script type='text/javascript' id='wp-i18n-js-after'> 3063wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 3064</script>
vendor: 1 bytes, line 3064
3064
3065<script type='text/javascript' src='https://cfcc.edu/wp-includes/js/dist/a11y.min.js?ver=ecce20f002eda4c19664' id='wp-a11y-js'></script>
vendor: 1 bytes, line 3065
3065
3066<script type='text/javascript' defer='defer' src='https://cfcc.edu/wp-content/plugins/gravityforms/assets/js/dist/vendor-theme.min.js?ver=4ef53fe41c14a48b294541d9fc37387e' id='gform_gravityforms_theme_vendors-js'></script>
vendor: 1 bytes, line 3066
3066
3067<script type='text/javascript' id='gform_gravityforms_theme-js-extra'> 3068/* <![CDATA[ */ 3069var gform_theme_config = {"common":{"form":{"honeypot":{"version_hash":"f2d01da973abe7789d9722c745c36be7"}}},"hmr_dev":"","public_path":"https:\/\/cfcc.edu\/wp-content\/plugins\/gravityforms\/assets\/js\/dist\/"}; 3070/* ]]> */ 3071</script>
vendor: 1 bytes, line 3071
3071
3072<script type='text/javascript' defer='defer' src='https://cfcc.edu/wp-content/plugins/gravityforms/assets/js/dist/scripts-theme.min.js?ver=443293948084ca0fe29518ebcd01dc6b' id='gform_gravityforms_theme-js'></script>
3072 3073<style> 3074 /* 1. ACCESSIBILITY: Visible Focus Indicators */ 3075 .iwi-tabs a:focus, 3076 .iwi-control:focus, 3077 .iwi-tab-control:focus, 3078 .iwi-mobile-toggle:focus, 3079 .iwi-accordion-control:focus, 3080 .intelliwidget-menu-title a:focus, 3081 .intelliwidget-menu-item a:focus { 3082 outline: 3px solid #046b7d !important; 3083 outline-offset: 2px !important; 3084 box-shadow: 0 0 0 3px #ffc107 !important; 3085 border-radius: inherit !important; 3086 } 3087</style> 3088
3089<script> 3090( function( $ ){ 3091 /** 3092 * SYNC ARIA: Fixes the "Empty Button" issue flagged by Silktide. 3093 * Targets both the container spans and the actual <button> tags. 3094 */ 3095 function syncAria() { 3096 $( '.iwi-control, .iwi-menu-control' ).each( function() { 3097 var $el = $(this); 3098 var isButton = $el.is('button'); 3099 var $link = isButton ? $el : $el.find('a').first(); 3100 3101 if ( $link.length ) { 3102 // 1. Assign Role (if not already a button) 3103 if (!isButton) { 3104 $link.attr( 'role', 'button' ); 3105 } 3106 3107 // 2. DISCERNIBLE NAME FIX: Hunt for context 3108 var txt = $link.text().trim(); 3109 3110 // If the element is empty (like the button you found), 3111 // look at the sibling or parent text to see what it toggles. 3112 if ( !txt ) { 3113 // Try to find the nearest menu text in the same list item 3114 var $parentLi = $el.closest('li'); 3115 txt = $parentLi.find('.intelliwidget-menu-title').first().text().trim() || 3116 $parentLi.find('> a').first().text().trim(); 3117 } 3118 3119 var labelText = ( txt ) ? 'Toggle ' + txt + ' submenu' : 'Toggle submenu'; 3120 3121 // Force the aria-label so Silktide sees a "name" for the button 3122 if ( !$link.attr('aria-label') ) { 3123 $link.attr('aria-label', labelText); 3124 } 3125 3126 // 3. CLEANUP (CRITICAL) 3127 // If $el was a container for a link, strip the container attributes 3128 // so Silktide doesn't think there are TWO buttons. 3129 if (!isButton) { 3130 $el.removeAttr('aria-expanded').removeAttr('role'); 3131 } 3132 } 3133 }); 3134 } 3135 3136 function init(){ 3137 // Original Menu Initialization 3138 $( '.iwi-menu' ).each( function( ndx, el ){ 3139 var id = el.getAttribute( 'id' ); 3140 $( el ).iwinterface( { aria: 'menu', activeclass: 'open', bodyclass: 'undefined' === id ? false : id + '-open', overlayclass: 'iwi-overlay-scroll' } ); 3141 } ); 3142 3143 $( '.iwi-accordion' ).iwinterface( { change: 'slide', activeclass: 'open', speed: 'fast', aria: 'accordion' } ); 3144 $( '.iwi-tabs' ).iwinterface( { change: 'display', activeclass: 'open', aria: 'tab' } ); 3145 3146 $( '.iwi-mobile-toggle' ).iwinterface( { aria: 'pane', change: 'class' } ); 3147 $( '.iwi-modal-toggle' ).iwinterface( { aria: 'modal', change: 'fade', dismiss: true, activatecb: ( 'function' === typeof iwmodalcb ? iwmodalcb : null ) } ); 3148 3149 // Final Sync 3150 syncAria(); 3151 setTimeout( syncAria, 500 ); 3152 setTimeout( syncAria, 2000 ); 3153 3154 $( 'body' ).removeClass( 'iwi-loading' ); 3155 } 3156 3157 $( document ).ready( init ); 3158 window.addEventListener('load', syncAria); 3159 3160})( jQuery ); 3161</script>
3161 3162<!-- start Simple Custom CSS and JS -->
3163<script type="text/javascript"> 3164window.addEventListener("load", function() { 3165 var jobsDataSelect = document.getElementById("jobData-select"); 3166 var jobsDataPanes = document.querySelectorAll("#iframe-wrapper .jobData-iframe"); 3167 if (!jobsDataSelect || !jobsDataPanes.length) return; 3168 function showSelected() { 3169 var code = jobsDataSelect.value; 3170 jobsDataPanes.forEach(function(p) { 3171 p.style.display = (p.getAttribute("data-code") === code) ? "block" : "none"; 3172 }); 3173 } 3174 jobsDataSelect.addEventListener("change", showSelected); 3175 showSelected(); 3176});</script>
3176 3177<!-- end Simple Custom CSS and JS --> 3178<!-- start Simple Custom CSS and JS -->
3179<script type="text/javascript"> 3180window.addEventListener("load", function () { 3181 const filters = document.querySelectorAll("[data-filter]"); 3182 const keywordInput = document.getElementById("keyword-search"); 3183 const resetButton = document.getElementById("reset-filters"); 3184 3185 if (filters.length === 0 && !keywordInput) { 3186 return; 3187 } 3188 3189 const filterItems = document.querySelectorAll(".filter-item"); 3190 3191 function filterItemsFunction() { 3192 var activeFilters = {}; 3193 var keywordValue = keywordInput ? keywordInput.value.trim().toLowerCase() : ""; 3194 3195 //console.log("Applying filters..."); 3196 //console.log("Keyword Filter Value:", keywordValue); 3197 3198 // Collect active filters 3199 filters.forEach(filter => { 3200 const filterKey = filter.dataset.filter; 3201 3202 if (filter.type === "checkbox") { 3203 const checkedBoxes = document.querySelectorAll(`[data-filter="${filterKey}"]:checked`); 3204 const checkedValues = Array.from(checkedBoxes).map(cb => cb.value); 3205 if (checkedValues.length > 0) { 3206 activeFilters[filterKey] = checkedValues; 3207 } 3208 } else if (filter.type === "range" || filter.type === "number") { 3209 const numValue = parseFloat(filter.value); 3210 if (!isNaN(numValue)) { 3211 activeFilters[filterKey] = numValue; 3212 } 3213 } else { 3214 const textValue = filter.value.trim(); 3215 if (textValue !== "") { 3216 activeFilters[filterKey] = textValue; 3217 } 3218 } 3219 }); 3220 3221 filterItems.forEach(item => { 3222 var isVisible = true; 3223 var matchesFilters = true; 3224 var itemText = item.textContent.trim().toLowerCase(); 3225 3226 //console.log(`\nChecking item: "${item.textContent.trim()}"`); 3227 3228 // Apply keyword filtering (partial match) 3229 if (keywordValue !== "" && !itemText.includes(keywordValue)) { 3230 //console.log(" - Matches Keyword? â No"); 3231 isVisible = false; 3232 } else { 3233 //console.log(" - Matches Keyword? â Yes"); 3234 } 3235 3236 // Apply other filters 3237 for (const [filterType, filterValues] of Object.entries(activeFilters)) { 3238 const datasetKey = `filter${filterType.charAt(0).toUpperCase() + filterType.slice(1)}`; 3239 let itemValue = item.getAttribute(`data-${datasetKey.replace(/([A-Z])/g, "-$1").toLowerCase()}`); 3240 3241 // ð¨ Fix: Skip this filter check if the item does NOT have this data attribute 3242 if (itemValue === null) { 3243 //console.log(` - Skipping filter "${filterType}" (Not Found in Item)`); 3244 continue; 3245 } 3246 3247 itemValue = itemValue.trim(); 3248 //console.log(` - Checking filter "${filterType}" with item value: "${itemValue}"`); 3249 3250 if (!itemValue) { 3251 matchesFilters = false; 3252 break; 3253 } 3254 3255 if (Array.isArray(filterValues)) { 3256 const itemValuesArray = itemValue.split(",").map(val => val.trim()); 3257 if (!filterValues.some(value => itemValuesArray.includes(value))) { 3258 matchesFilters = false; 3259 break; 3260 } 3261 } else if (typeof filterValues === "number") { 3262 const numericValue = parseFloat(itemValue) || 0; 3263 if (numericValue > filterValues) { 3264 matchesFilters = false; 3265 break; 3266 } 3267 } else { 3268 const itemValuesArray = itemValue.split(",").map(val => val.trim()); 3269 if (!itemValuesArray.includes(filterValues)) { 3270 matchesFilters = false; 3271 break; 3272 } 3273 } 3274 } 3275 3276 // Final visibility decision 3277 isVisible = isVisible && matchesFilters; 3278 3279 //console.log(` - Matches Filters? ${matchesFilters ? "â Yes" : "â No"}`); 3280 //console.log(` - Final Visibility: ${isVisible ? "â Show" : "â Hide"}`); 3281 3282 // Show/hide items 3283 if (isVisible) { 3284 item.style.display = "flex"; 3285 requestAnimationFrame(() => { 3286 item.classList.remove("hidden-item"); 3287 }); 3288 } else { 3289 item.classList.add("hidden-item"); 3290 item.addEventListener("transitionend", function hideItem() { 3291 if (item.classList.contains("hidden-item")) { 3292 item.style.display = "none"; 3293 } 3294 item.removeEventListener("transitionend", hideItem); 3295 }); 3296 } 3297 }); 3298 } 3299
3300 filters.forEach(filter => { 3301 filter.addEventListener("change", filterItemsFunction); 3302 filter.addEventListener("input", filterItemsFunction); 3303 filter.addEventListener("touchend", filterItemsFunction); 3304 }); 3305 3306 if (keywordInput) { 3307 keywordInput.addEventListener("input", filterItemsFunction); 3308 } 3309 3310 // ð Reset Filters Function 3311 function resetFilters() { 3312 keywordInput.value = ""; // Clear text input 3313 filters.forEach(filter => { 3314 if (filter.type === "checkbox" || filter.type === "radio") { 3315 filter.checked = false; // Uncheck checkboxes/radios 3316 } else if (filter.type === "range" || filter.type === "number") { 3317 filter.value = filter.defaultValue; // Reset number/range to default 3318 } else { 3319 filter.value = ""; // Reset text and select inputs 3320 } 3321 }); 3322 filterItemsFunction(); // Reapply filtering after reset 3323 } 3324 3325 // ð Add Event Listener for Reset Button 3326 if (resetButton) { 3327 resetButton.addEventListener("click", function (event) { 3328 event.preventDefault(); // Prevents page jump 3329 resetFilters(); // Calls the reset function 3330 }); 3331 } 3332 3333 3334 filterItemsFunction(); 3335}); 3336</script>
3336 3337<!-- end Simple Custom CSS and JS --> 3338
3338<script type="text/javascript"> 3339 (function($) { 3340 3341 // 1. Define the Tagger Function 3342 function runLinkAutoTagger() { 3343 $('a').each(function() { 3344 var $link = $(this); 3345 var href = $link.attr('href'); 3346 var target = $link.attr('target'); 3347 3348 // Safety Checks: Skip anchors, JS, or empty links 3349 if (!href || href.indexOf('#') === 0 || href.indexOf('javascript') === 0) return; 3350 3351 // Get current accessible label (Prioritize aria-label, fallback to text) 3352 var currentLabel = $link.attr('aria-label') || $link.text().trim(); 3353 3354 // If the link has no text (e.g. an icon with no label), skip it to avoid breaking layout 3355 if (!currentLabel) return; 3356 3357 var newLabel = currentLabel; 3358 var modified = false; 3359 3360 // CHECK A: Is it External? (Doesn't contain 'cfcc.edu') 3361 // We check the hostname property for accuracy 3362 if (this.hostname && this.hostname.indexOf('cfcc.edu') === -1) { 3363 // Only add if not already present 3364 if (newLabel.indexOf('external') === -1) { 3365 newLabel += ' (external link)'; 3366 modified = true; 3367 } 3368 } 3369 3370 // CHECK B: Does it open in a new tab? 3371 if (target === '_blank') { 3372 // Only add if not already present 3373 if (newLabel.indexOf('new tab') === -1) { 3374 newLabel += ' (opens in new tab)'; 3375 modified = true; 3376 } 3377 } 3378 3379 // APPLY: Update the aria-label if we made changes 3380 if (modified) { 3381 $link.attr('aria-label', newLabel); 3382 } 3383 }); 3384 } 3385 3386 // 2. RUN IMMEDIATELY (Catches 90% of links) 3387 $(document).ready(function() { 3388 runLinkAutoTagger(); 3389 }); 3390 3391 // 3. RUN DELAYED (Catches the "Slipping Through" Widget Links) 3392 $(window).on('load', function() { 3393 setTimeout(function() { 3394 // Run it again to catch anything that loaded late (tabs, popups) 3395 runLinkAutoTagger(); 3396 }, 2000); // 2 second delay 3397 }); 3398 3399 })(jQuery); 3400 </script>
3400 3401
3401<script type="text/javascript"> 3402 (function($) { 3403 $(document).ready(function() { 3404 // 1. Listen for clicks on the "Skip to Content" link 3405 $('.skip-link, a[href*="#content"], a[href*="#main"]').on('click', function(event) { 3406 3407 // 2. Find the target element based on the link's hash (e.g., #content) 3408 var targetId = this.hash; 3409 var $target = $(targetId); 3410 3411 // 3. Check if the target exists 3412 if ($target.length) { 3413 // 4. Temporarily give it focus power (tabindex="-1") 3414 // We only do this to the ONE element we are skipping to. 3415 if (!$target.attr('tabindex')) { 3416 $target.attr('tabindex', '-1'); 3417 3418 // Optional: Clean up the tabindex after the user moves away 3419 // so your DOM stays clean. 3420 $target.one('blur focusout', function() { 3421 $(this).removeAttr('tabindex'); 3422 }); 3423 } 3424 3425 // 5. Force the browser to move focus NOW 3426 $target.focus(); 3427 } 3428 }); 3429 }); 3430 })(jQuery); 3431 </script>
3431 3432
3432<script type="text/javascript"> 3433 (function($) { 3434 $(document).ready(function() { 3435 3436 3437 // --- 2. GTRANSLATE FIX --- 3438 var $gtranslate = $('.gtranslate_wrapper, #flags, .glt-links'); 3439 if ($gtranslate.length) { 3440 $gtranslate.attr('role', 'list'); 3441 $gtranslate.find('a, span.glink').attr('role', 'listitem'); 3442 } 3443 3444 }); 3445 })(jQuery); 3446 </script>
3446
3446<script type="text/javascript"> 3447 (function($) { 3448 $(document).ready(function() { 3449 // 1. Find the specific Social Media table 3450 var $table = $('table:contains("Social Media Directory")'); 3451 3452 if ($table.length > 0) { 3453 // 2. Capture the Column Headers (Facebook, Instagram, etc.) 3454 var colHeaders = []; 3455 $table.find('thead th').each(function(index) { 3456 colHeaders[index] = $(this).text().trim(); 3457 }); 3458 3459 // 3. Loop through every row in the body 3460 $table.find('tbody tr').each(function() { 3461 var $row = $(this); 3462 3463 // Get the Row Name (The first header in the row, e.g., "The Wilson Center") 3464 var rowName = $row.find('th').text().trim(); 3465 3466 // 4. Loop through the data cells (td) containing links 3467 $row.find('td').each(function(index) { 3468 var $link = $(this).find('a'); 3469 3470 // Proceed only if there is a link and we have a Row Name 3471 if ($link.length > 0 && rowName) { 3472 3473 // MATCHING LOGIC: 3474 // The 'td' index 0 corresponds to Column Header index 1 3475 // (because the Row Header took up the first slot). 3476 var platformName = colHeaders[index + 1]; 3477 3478 if (platformName) { 3479 // Create the accessible label 3480 // Result: "The Wilson Center Facebook" 3481 var newLabel = rowName + " " + platformName; 3482 $link.attr('aria-label', newLabel); 3483 3484 // Optional: If you want to force the 'External Link' text here too 3485 // you can append it manually if your other script misses it. 3486 // $link.attr('aria-label', newLabel + " (external link)"); 3487 } 3488 } 3489 }); 3490 }); 3491 } 3492 }); 3493 })(jQuery); 3494 </script>
3494 3495
3496<script type="text/javascript" id="cfcc-search-ada-fix-final"> 3497window.addEventListener('load', (event) => { 3498 3499 const searchForms = document.querySelectorAll('form.searchform[action="/search/"]'); 3500 3501 if (searchForms.length === 0) { 3502 return; 3503 } 3504 3505 searchForms.forEach((form) => { 3506 3507 // Find the critical elements *within* this specific form 3508 const errorContainer = form.querySelector('.search-error'); 3509 const searchInput = form.querySelector('input[name="q"]'); 3510 const submitButton = form.querySelector('input[type="submit"]'); 3511 3512 if (!searchInput || !errorContainer || !submitButton) { 3513 return; // If we're missing pieces, don't attach listeners 3514 } 3515 3516 // --- 1. The Validation Function (Stops form and injects ARIA message) --- 3517 const validateSearch = (e) => { 3518 if (searchInput.value.trim() === '') { 3519 // 1. Stop the form submission (Critical) 3520 e.preventDefault(); 3521 e.stopImmediatePropagation(); 3522 3523 // 2. Show the error message (WCAG 3.3.1) 3524 errorContainer.textContent = 'Please enter a search term.'; 3525 errorContainer.style.display = 'block'; 3526 3527 // 3. Set focus (Helps user, WCAG 4.1.3) 3528 searchInput.focus(); 3529 return false; 3530 } else { 3531 // Clear errors on valid submission 3532 errorContainer.textContent = ''; 3533 errorContainer.style.display = 'none'; 3534 return true; 3535 } 3536 }; 3537 3538 // --- 2. Event Listeners (The winning combination) --- 3539 3540 // Listener A: This listener hides the error as soon as the user types 3541 searchInput.addEventListener('input', () => { 3542 if (errorContainer.style.display === 'block') { 3543 errorContainer.textContent = ''; 3544 errorContainer.style.display = 'none'; 3545 } 3546 }, true); 3547 3548 // Listener B: Catches 'submit' (Enter key or form submit) 3549 form.addEventListener('submit', validateSearch, true); 3550 3551 // Listener C: Catches 'click' on the button (Ensures we win the event conflict) 3552 submitButton.addEventListener('click', validateSearch, true); 3553 3554 }); 3555}); 3556</script>
vendor: 1 bytes, line 3556
3556
3557<script type="text/javascript"> 3558gform.initializeOnLoaded( function() { jQuery(document).on('gform_post_render', function(event, formId, currentPage){if(formId == 2) {gf_global["number_formats"][2] = {"4":{"price":false,"value":false},"1":{"price":false,"value":false},"2":{"price":false,"value":false},"3":{"price":false,"value":false},"5":{"price":false,"value":false},"6":{"price":false,"value":false},"7":{"price":false,"value":false},"8":{"price":false,"value":false},"9":{"price":false,"value":false}};if(window['jQuery']){if(!window['gf_form_conditional_logic'])window['gf_form_conditional_logic'] = new Array();window['gf_form_conditional_logic'][2] = { logic: { 7: {"field":{"actionType":"show","logicType":"all","rules":[{"fieldId":"6","operator":"is","value":"Yes"}],"enabled":true},"nextButton":null,"section":null} }, dependents: { 7: [7] }, animation: 0, defaults: [], fields: {"4":[],"1":[],"2":[],"3":[],"5":[],"6":[7],"7":[],"8":[],"9":[]} }; if(!window['gf_number_format'])window['gf_number_format'] = 'decimal_dot';jQuery(document).ready(function(){gform.utils.trigger({ event: 'gform/conditionalLogic/init/start', native: false, data: { formId: 2, fields: null, isInit: true } });window['gformInitPriceFields']();gf_apply_rules(2, [7], true);jQuery('#gform_wrapper_2').show();jQuery(document).trigger('gform_post_conditional_logic', [2, null, true]);gform.utils.trigger({ event: 'gform/conditionalLogic/init/end', native: false, data: { formId: 2, fields: null, isInit: true } });} );} } } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} ) } ); 3559</script>
vendor: 1 bytes, line 3559
3559
3560<script type="text/javascript"> 3561gform.initializeOnLoaded( function() {jQuery(document).trigger('gform_post_render', [2, 1]);gform.utils.trigger({ event: 'gform/postRender', native: false, data: { formId: 2, currentPage: 1 } });} ); 3562</script>
3562 3563</body></html> 3564<!-- 3565Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/ 3566 3567Page Caching using Memcache 3568Database Caching 1/164 queries in 0.096 seconds using Memcache (Request-wide modification query) 3569 3570Served from: cfcc.edu @ 2026-10-01 06:42:38 by W3 Total Cache 3571-->
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.