:root{--color-background:#F8F9Fa;--color-text:#191A23;--color-text-dark:#F3F3F3;--color-accent:#BBE04C;--color-primary-button-dark:#191A23;--color-primary-button-light:#FFFFFF;--color-link:#607C0E;--color-error:#d9534f;--color-off:#F3F3F3;--color-off-dark:#1D1F29;--color-light:#F8F9Fa;--color-dark:#191A23;--color-today-highlight:#757F8A44}.dark{--color-background:#191A23;--color-text:#F2F2F2;--color-text-dark:#191A23;--color-link:#BBE04C;--color-off:#1D1F29;--color-off-dark:#F3F3F3;--color-today-highlight:#28303F}html,body{height:100%}body{font-family:cairo,sans-serif;background-color:var(--color-background);margin:0;padding:0;color:var(--color-text);display:flex;flex-direction:column;justify-content:flex-start;position:relative;overflow-x:hidden}main{flex:1}h1,h2,h3,h4,h5{font-family:'exo 2',sans-serif;font-weight:500;margin-top:1rem;margin-bottom:.5rem;color:var(--color-text);text-align:left}p{line-height:1.6;margin-bottom:1rem}.container{width:100%;max-width:1200px;margin:0 auto}.navbar{position:sticky;padding:1rem;top:0;left:0;width:100%;background-color:var(--color-off);color:var(--color-text);border:1px solid var(--color-text);border-radius:0 0 30px 30px;box-shadow:0 4px 0 0 var(--color-text);z-index:1000}.nav-item{display:flex;align-items:center;justify-content:center;text-align:center}.navbar-brand{color:var(--color-text);font-family:'exo 2',sans-serif;font-size:1.5rem;font-weight:700}.navbar-brand:hover{color:var(--color-accent)}.navbar-nav .nav-link{color:var(--color-text);font-size:1.1rem;margin-right:10px;transition:color .3s ease-in-out;margin-left:1rem}.navbar-nav .nav-link:hover{text-decoration:underline}li .dropdown-item-mobile{display:block}.nav-item.dropdown{position:relative}.dark .navbar-toggler{border:1px solid var(--color-text)}.dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.show-on-hover:hover>.dropdown-menu{background-color:var(--color-off);display:block;position:absolute;top:100%;left:0;margin-top:0}.dropdown-icon{margin-left:-1rem}.dropdown-menu .dropdown-item:active{background-color:var(--color-off);color:var(--color-text)}.dropdown-menu .dropdown-item{color:var(--color-text);padding:.3rem 1rem}.dropdown-menu .dropdown-item:active{background-color:var(--color-off);color:var(--color-dark)}.dropdown-menu .dropdown-item:hover{background-color:var(--color-accent);color:var(--color-dark)}#theme-switch{height:2.3rem;width:2.3rem;padding:0;border:none;border-radius:50%;background-color:transparent;display:flex;justify-content:center;align-items:center;appearance:none}#theme-switch img#light-icon{display:none}#theme-switch img#dark-icon{display:inline}.dark #theme-switch img#light-icon{display:inline}.dark #theme-switch img#dark-icon{display:none}.hero-section{padding:6rem 0;max-width:45rem;margin:5rem auto;text-align:center}.hero-section h1{padding:0 1rem;margin-bottom:1rem;line-height:1.2;font-size:3.2rem}.hero-section p{margin-bottom:.5rem;font-size:1.25rem;color:var(--color-text);max-width:35rem;margin-left:auto;margin-right:auto}.hero-icons svg{color:var(--color-text)}.hero-card{width:12rem;height:10rem;background-color:var(--color-off);color:var(--color-text);border:1px solid var(--color-text);border-radius:30px;box-shadow:0 4px 0 0 var(--color-text);pointer-events:auto;position:relative}.hero-card-wrapper{position:absolute;top:25%;left:0;width:100vw;display:flex;justify-content:space-between;pointer-events:none}.hero-card-column{display:flex;flex-direction:column;gap:1.5rem;pointer-events:auto}.hero-card-column.left{align-items:flex-start}.hero-card-column.right{align-items:flex-end}.hero-card a{color:var(--color-text);text-decoration:none;font-size:1.1rem;font-weight:500}.dark .hero-card.left-1 svg{color:var(--color-accent)}.hero-card.left-1 a:hover,.hero-card.left-1 a:active{color:var(--color-link)}.hero-card.left-1 svg{color:var(--color-text)}.hero-card.right-1 svg{color:var(--color-text)}.hero-card.right-1 svg:hover,.hero-card.right-1 svg:active{color:var(--color-link)}.left-1{height:15rem;width:17rem;z-index:2;border-radius:0 30px 30px 0;padding:1rem 0 1rem 2rem;display:flex;flex-direction:column;justify-content:space-evenly}.left-2{height:10rem;width:12rem;z-index:1;border-radius:0 30px 30px 0;bottom:5rem}.right-1{height:18rem;width:8rem;z-index:2;border-radius:30px 0 0 30px;top:0;padding:0 0 0 2.7rem;display:flex;flex-direction:column;justify-content:space-evenly;gap:.5rem}.right-2{height:14rem;width:16rem;z-index:1;border-radius:30px 0 0 30px;bottom:12rem}.about-section{margin-bottom:3rem}.about-image{max-height:28rem;object-fit:cover;overflow:hidden;display:block;border-radius:30px;margin-top:3rem}.card{background-color:var(--color-off);color:var(--color-text);border:1px solid var(--color-text);border-radius:30px;box-shadow:0 4px 0 0 var(--color-text)}.card-header{font-weight:600;font-size:1.25rem;background-color:transparent;border-bottom:none;color:var(--color-text);padding:1.5rem 0 0 1.25rem}.card-body,.card-button{padding:1rem 1.25rem}.ese-section{background-color:var(--color-off);padding:5rem 0;margin:1rem 0 3rem}.ese-section .card-header{font-size:2rem}.ese-section .card-body{font-size:1.1rem;align-content:center;max-width:90%;margin-left:auto;margin-right:auto}.btn{font-size:1.1rem}.btn-primary{border:1px solid var(--color-primary-button-dark);background-color:var(--color-primary-button-dark);color:var(--color-primary-button-light)}.btn-primary:hover,.btn-primary:active{color:var(--color-primary-button-dark) !important;background-color:transparent !important;border:1px solid var(--color-primary-button-dark) !important;box-shadow:0 4px 0 0 var(--color-primary-button-dark)}.dark .btn-primary{border:1px solid var(--color-accent);background-color:var(--color-accent);color:var(--color-text-dark)}.dark .btn-primary:hover,.dark.btn.btn-primary:active{color:var(--color-text) !important;background-color:transparent;border:1px solid var(--color-accent) !important;box-shadow:0 4px 0 0 var(--color-accent)}.btn-secondary{background-color:transparent;color:var(--color-primary-button-dark);border:1px solid var(--color-primary-button-dark)}.btn-secondary:hover,.btn-secondary:active{text-decoration:none !important;color:var(--color-primary-button-dark) !important;background-color:transparent !important;border-color:var(--color-primary-button-dark);box-shadow:0 4px 0 0 var(--color-primary-button-dark)}.dark .btn-secondary{background-color:transparent;color:var(--color-primary-button-light);border:1px solid var(--color-primary-button-light)}.dark .btn-secondary:hover,.dark .btn-secondary:active{background-color:transparent;color:var(--color-primary-button-light) !important;border-color:var(--color-primary-button-light);box-shadow:0 4px 0 0 var(--color-primary-button-light)}footer{background-color:var(--color-off)}.footer{padding:3rem 0;width:100%;margin-top:auto;text-align:center;font-size:1.1rem}.footer-nav ul{list-style:none;padding:0;margin:.5rem 0 0;display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.footer-nav li{display:inline}.footer-nav a{color:var(--color-text);text-decoration:none;transition:color .3s ease}.footer-nav a:hover,.footer-nav a:focus{color:var(--color-text);text-decoration:underline;outline:none}.feed-section #feed{margin:2rem auto;padding:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.page{column-count:3;column-gap:2rem}.page .feed-entry{justify-content:start;break-inside:avoid;margin-bottom:2rem}.feed-thumbnail-wrapper{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:8px;margin-bottom:1rem}.feed-thumbnail{width:100%;height:100%;object-fit:cover;display:block}.feed-heading{font-size:2.5rem;margin-top:0;display:block;width:max-content;margin-left:auto;margin-right:auto;color:var(--color-text);background-color:var(--color-accent);border-radius:8px;padding:5px 10px;box-shadow:0 4px 0 0 var(--color-text)}.feed-heading::before{content:"// ";color:var(--color-text);font-weight:700}.dark .feed-heading{color:var(--color-text-dark);box-shadow:0 4px 0 0 var(--color-off)}.dark .feed-heading::before{color:var(--color-text-dark)}.feed-entry{width:100%;box-sizing:border-box;background-color:var(--color-off);border:1px solid var(--color-text);border-radius:20px;box-shadow:0 4px 0 0 var(--color-text);padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between}.feed-content{font-size:1.1rem;line-height:1.6;margin-bottom:.75rem;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;text-overflow:ellipsis}.page .feed-content{overflow:visible !important;display:block !important;-webkit-line-clamp:unset !important;-webkit-box-orient:unset !important;text-overflow:unset !important;white-space:normal !important}.feed-content a{color:var(--color-link);text-decoration:none;transition:color .3s}.feed-content a:hover{color:var(--color-link);text-decoration:underline}.fc-daygrid-day-number{color:var(--color-text) !important}.fc-daygrid-block-event .fc-event-title,.fc-event-time{color:var(--color-dark) !important}.fc-event-title{font-weight:700 !important}.fc-toolbar-title{font-weight:600;font-size:1.8rem;color:var(--color-text) !important}.fc-button{background-color:var(--color-accent);border:none;color:var(--color-text);padding:.4rem 1rem;border-radius:4px;font-weight:500;cursor:pointer;transition:background-color .3s ease}.fc-day a{text-decoration:none !important}.fc-day-today{background-color:var(--color-today-highlight) !important}.fc-day-today .fc-daygrid-day-number{color:var(--color-text) !important}.fc-event{background-color:var(--color-accent);border:none;border-radius:4px;color:var(--color-dark);font-size:.85rem;padding:2px 6px;cursor:pointer;transition:background-color .3s ease;margin-bottom:.5rem}.fc-event.fc-event-start,.fc-event.fc-event-end{border-radius:4px}.fc-col-header-cell-cushion{color:var(--color-text) !important}.fc-col-header{background-color:var(--color-background) !important}.fc-event:hover,.fc-event:active{background-color:var(--color-accent);color:var(--color-dark)}.fc-daygrid-event-dot{display:none}#eventModal .modal-content{background-color:var(--color-background);color:var(--color-text);transition:background-color .3s ease,color .3s ease}#eventModal .modal-header,#eventModal .modal-footer{padding:1rem}#eventModal .modal-content{background-color:var(--color-light);border:1px solid var(--color-text);border-radius:30px;box-shadow:0 4px 0 0 var(--color-text)}.dark #eventModal .modal-content{background-color:var(--color-dark);border:1px solid var(--color-text);border-radius:30px;box-shadow:0 4px 0 0 var(--color-text)}.page-not-found{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:'exo 2',sans-serif;text-align:center}.page-not-found .error-code{font-size:6rem;font-weight:700;color:var(--color-error)}.page-not-found .error-message{font-size:1.25rem;color:var(--color-text)}@media(max-width:991px){.navbar-collapse .dropdown-menu{display:none !important}.navbar-nav .nav-link{text-align:center}.nav-item.dropdown{justify-content:center}.navbar-nav{margin-top:1rem}.nav-item{font-weight:700;border:1px solid var(--color-text);border-radius:30px;box-shadow:0 4px 0 0 var(--color-text);margin:.4rem 0;padding:.5rem 1rem;cursor:pointer}.nav-item .nav-link{display:block;width:100%;height:100%}.nav-item:hover,.nav-item:active{background-color:var(--color-accent)}.nav-item:hover .nav-link,.nav-item:active .nav-link{color:var(--color-dark) !important}.dropdown-item-mobile{margin:.4rem 0}.dropdown-icon{display:none !important}.hero-section{padding:0 !important}.ese-section .card-body .page{max-width:100%}}@media(min-width:992px){.dropdown-item-mobile{display:none !important}}@media(min-width:1261px){.hero-icons{display:none !important}}@media(max-width:1260px){.hero-card-wrapper{display:none}.hero-section{padding:0;margin:2rem auto}.hero-section h1{font-size:2.5rem}.hero-section p{font-size:1.1rem}.page{column-count:2}}@media(max-width:768px){.feed-entry{flex:0 1 100%}.hero-section h1{font-size:2rem}.hero-section p{font-size:1rem}.page{column-count:1 !important;column-gap:1rem;margin:0 1rem}.footer{padding:2rem 0;font-size:1rem}}