.splide__slide img {opacity:.4;}
@-webkit-keyframes zoom {from {-webkit-transform: scale(1, 1);}to {-webkit-transform: scale(1.5, 1.5);}}
@keyframes zoom {from {transform: scale(1, 1);}to {transform: scale(1.5, 1.5);}}
.splide .splide__toggle svg {fill: #000;height: 1.2em;transition: fill .2s ease;width: 1.2em;padding-top:3px;opacity:.8}
.splide .splide__toggle__play {margin-left: 2px}
.splide .splide__toggle {position: absolute;bottom: 5.5%;right: 2%;background: rgba(255, 255, 255, .9);border-radius: 50%;border:transparent;border: none;height:2em;	opacity:.7;z-index:3}
.splide .splide__pagination {position:absolute;bottom:3.5%;right:1%;z-index:3}
.splide .splide__progress {	position:relative;}
.splide .splide__progress__bar {position:absolute;z-index:4;}
.splide__pagination {counter-reset: pagination-num;}
.splide__pagination__page:before {counter-increment: pagination-num;content: counter( pagination-num );}
.splide__pagination__page {background: #eee;border: 0;border-radius: 50%;display: inline-block;height: 20px;margin: 8px;opacity: .7;padding: 0;position: relative;transition: transform .2s linear;width: 20px;}
.splide__caption {position:absolute;z-index:100;top: 50%;left: 50%;transform: translateX(-50%) translateY(-50%);color:#fff;line-height:1.5}
.splide__caption .caption {text-align:center}
.splide__caption .caption .caption-heading {font-size:2.5em}
.splide__caption .caption .caption-body {font-size:1.5em}
.splide__slide.is-active .splide__caption .slide-right {animation: 3s slide-right;}
.block-span {display:block}
.resources-img-caption {display: flex;justify-content: center;align-items: center;padding: 1em 0 0;}
@keyframes slide-right {from {transform: translateY(30px);opacity: 0;}to {transform: translateY(0);opacity: 1;}}
.key-feature-container {padding:4em 0 2em 0;position:relative}
.key-feature-wrapper {overflow:hidden;background:#eee;padding:4em 0 .5em}
.key-feature {padding:1em;color:#092c74;min-height:30vh}
.key-feature-heading {font-size:1.2em;font-weight:bold}
.title-line {background:#c05131;padding:.5em;width:30%;color:#fff;position:absolute;top: 10%;left: 50%;transform: translateX(-50%) translateY(-50%)}
.title-underline {position:relative;margin-bottom:1.5em}
.title-underline:before {content:'';position:absolute;border-bottom:3px solid #c05131;left:45%;top:-10px;width:10%}
.welcome {padding:3em 0 2em}
.services-container {background-color:#eee;background-color: #fff;text-align: center;margin:1em 0;min-height:175px;display:flex;justify-content:center;align-items:center}
.services-content {padding:1em}
.box-shadow {background-color: #fff;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);transition: all 0.3s cubic-bezier(.25,.8,.25,1);text-align:center;font-size: 1.2em;margin-bottom: 2em;padding: .5em;min-height:285px}
.box-shadow-1 {background-color: #fff;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);transition: all 0.3s cubic-bezier(.25,.8,.25,1);font-size: 1.2em;display: flex;justify-content: center;min-height: 380px;margin-bottom: 2em;padding: .5em;}
.mh-1 {min-height: 380px;display: flex;flex-direction: column;justify-content: center;align-items: center;}
.box-shadow-1 {align-items:center;cursor:pointer}
.box-shadow-1:hover, .box-shadow:hover {box-shadow: 0 14px 10px rgba(0, 0, 0, 0.20), 0 5px 5px rgba(0, 0, 0, 0.22);}
.box-shadow p {margin:0;}
.no-link {color:#000;text-decoration:none;font-weight:normal;font-size:1em}
.resources-container {position:relative;padding:3em 0 1em}
.resources-box {position:relative;z-index:1}
.resources:after {content:'';position:absolute;bottom:-10px;background:#eee;height:120px;width:100%;z-index:0}
.contact-info:before {content:'';position:absolute;background:#eee}
.contact-info {margin:4em 0 1em;padding:2em;text-align:center}
.divider {border-right:1px solid #eee}
.divider:last-child {border-right:none}
.box-content-modal-wrapper {position:relative;font-size:1.65em;margin-bottom:1.5em;font-weight:bold}
.box-content-modal-container {position:absolute;right:0;bottom:2.4vh;padding:2vh;}
.box-content-heading {background:rgba(255,255,255,.8);color:#c05131;padding:2vh}
.box-content-modal {background-color:#c05131;color:#fff !important;padding:2vh}
.btn-plain {background:transparent;outline:none;border:none}
.modal-body {font-size:.7em}
.close {position: absolute;right: 20px;top: 20px;}
.box-content-padding {padding:2em 0 1em}
.csu-events-item {background: #eee;padding: 1.5em 2em 2em 2em;margin: 1em 0;box-shadow: -4px 5px 8px 0px rgba(0, 0, 0, 0.18);-webkit-box-shadow: -4px 5px 8px 0px rgba(0, 0, 0, 0.18);-moz-box-shadow: -4px 5px 8px 0px rgba(0,0,0,0.18);border: 1px solid #ddd;min-height:285px}
.section-event-inner {background: #c05131;padding: .5em;margin-bottom:1em;font-size: 1.2em;font-weight: bold;text-align: center;color: #fff;}
.section-event-title {margin-bottom:1em;}
.section-event-date {float: none;}
.section-event-details {padding: .4em 0;}
.heroBottomHome {display:none;}
.on-page-resources-container {position:relative}
.on-page-resources-box {padding: 2em 0;display: flex;justify-content: center;align-items: center;}
.on-page-resources:before {content: "";background-color: #f5f5f5;position: absolute;top: 0;left: 0;bottom:0;width: 50%;max-width: 24rem;}
span.box-content-heading-orange:hover, span.box-content-heading:hover {background-color: #fff;}
.section-intro{padding:2rem 1rem;font-size:clamp(.9rem, 2.5vw, .9rem)}
.on-page-heading {font-size:clamp(.9rem, 2.5vw, .9rem)}
.directory-listing-container {background-color:#eee;background-color: #fff;transition: all 0.3s cubic-bezier(.25,.8,.25,1);text-align: center;margin:1em 0;min-height:175px;display:flex;justify-content:center;align-items:center}
.directory-listing-content {padding:1em}
.img-circle {margin-bottom: 1.5em;border-radius: 50%;-webkit-box-shadow: 10px 10px 11px -6px rgba(0, 0, 0, 0.49);-moz-box-shadow: 10px 10px 11px -6px rgba(0,0,0,0.49);box-shadow: 10px 10px 11px -6px rgba(0, 0, 0, 0.49);}
.infographic {
            max-width: 8.5in;
            width: 100%;
            margin: 1em auto;
            background: white;
            border-radius: 20px;
            box-shadow: 0 20px 40px rgba(0,0,0,0.1);
            overflow: hidden;
            position: relative;
        }

        .header {
            background: linear-gradient(135deg, #2c3e50 0%, #3498db 100%);
            color: white;
            text-align: center;
            padding: 30px 20px;
            position: relative;
            overflow: hidden;
        }

        .header::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="30" r="1.5" fill="rgba(255,255,255,0.1)"/><circle cx="60" cy="70" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="30" cy="80" r="2.5" fill="rgba(255,255,255,0.1)"/></svg>') repeat;
            opacity: 0.3;
        }

        .header h1 {
            font-size: 2.5em;
            margin-bottom: 10px;
            position: relative;
            z-index: 1;
        }

        .header .subtitle {
            font-size: 1.2em;
            opacity: 0.9;
            position: relative;
            z-index: 1;
        }

        .content {
            padding: 40px;
        }

        .intro {
            text-align: center;
            margin-bottom: 40px;
            padding: 25px;
            background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
            border-radius: 15px;
            border-left: 5px solid #3498db;
        }

        .intro h2 {
            color: #2c3e50;
            font-size: 1.8em;
            margin-bottom: 15px;
        }

        .intro p {
            font-size: 1.1em;
            color: #555;
            line-height: 1.6;
        }

        .services {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 30px;
            margin-bottom: 40px;
        }

        .service-card {
            background: white;
            border-radius: 15px;
            padding: 30px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
            border: 2px solid #f8f9fa;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            position: relative;
            overflow: hidden;
        }

        .service-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 40px rgba(0,0,0,0.15);
        }

        .service-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: linear-gradient(90deg, #3498db, #2ecc71);
        }

        .service-card.printing::before {
            background: linear-gradient(90deg, #e74c3c, #f39c12);
        }

        .service-card h3 {
            color: #2c3e50;
            font-size: 1.5em;
            margin-bottom: 15px;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .service-card h3::before {
            content: '📷';
            font-size: 1.2em;
        }

        .service-card.printing h3::before {
            content: '🖨️';
        }

        .benefit {
            margin-bottom: 20px;
            padding: 15px;
            background: #f8f9fa;
            border-radius: 10px;
            border-left: 3px solid #3498db;
        }

        .service-card.printing .benefit {
            border-left-color: #e74c3c;
        }

        .benefit h4 {
            color: #2c3e50;
            font-size: 1.1em;
            margin-bottom: 8px;
            font-weight: 600;
        }

        .benefit p {
            color: #555;
            font-size: 0.95em;
            line-height: 1.5;
        }

        .process {
            background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
            color: white;
            padding: 40px;
            border-radius: 15px;
            margin-bottom: 30px;
        }

        .process h3 {
            font-size: 1.8em;
            margin-bottom: 25px;
            text-align: center;
            color: #ecf0f1;
        }

        .steps {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 20px;
        }

        .step {
            background: rgba(255,255,255,0.1);
            padding: 20px;
            border-radius: 10px;
            text-align: center;
            backdrop-filter: blur(10px);
        }

        .step-number {
            display: inline-block;
            width: 40px;
            height: 40px;
            background: #3498db;
            color: white;
            border-radius: 50%;
            line-height: 40px;
            font-weight: bold;
            margin-bottom: 15px;
            font-size: 1.2em;
        }

        .step h4 {
            font-size: 1.1em;
            margin-bottom: 10px;
            color: #ecf0f1;
        }

        .step p {
            font-size: 0.9em;
            opacity: 0.9;
            line-height: 1.4;
        }

        .contact {
            background: linear-gradient(135deg, #f39c12 0%, #e67e22 100%);
            color: #000;
            padding: 30px;
            border-radius: 15px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }

        .contact::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
            animation: pulse 4s ease-in-out infinite;
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); opacity: 0.5; }
            50% { transform: scale(1.1); opacity: 0.8; }
        }

        .contact h3 {
            font-size: 1.6em;
            margin-bottom: 15px;
            position: relative;
            z-index: 1;
        }

        .contact p {
            font-size: 1.1em;
            opacity: 0.95;
            position: relative;
            z-index: 1;
        }

        .highlight {
            background: linear-gradient(135deg, #3498db, #2ecc71);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-weight: bold;
        }

        @media print {
            body {
                background: white;
                padding: 0;
            }
            
            .infographic {
                box-shadow: none;
                border-radius: 0;
            }
            
            .service-card:hover {
                transform: none;
                box-shadow: 0 10px 30px rgba(0,0,0,0.1);
            }
        }
@media (max-width:1200px) {.title-line {top:6%}}
@media (max-width:1000px) {.splide .splide__toggle {position:absolute;bottom:8.5%;right:3%;}.splide .splide__pagination {position:absolute;bottom:5.5%;right:1%;}}
@media (max-width:768px) {.key-feature {min-height: 54vh;}.title-line {top:4.5%;font-size:1.4em}.services-container {margin:0}.box-content-modal-wrapper{font-size:4vw;}.splide__list {height:320px}.splide__caption .caption .caption-heading {font-size: 1.5rem;font-weight:bold}.splide__caption .caption .caption-body {font-size: 1.3rem} .on-page-resources-box {display:block;text-align:center;padding: 1em 0 0;}.on-page-resources:before {background:transparent}.directory-listing-container {margin:0}}