.modal-backdrop{background-color:var(--bg-shadow);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container{background:var(--bg-color-primary);border-radius:var(--border-radius-md);width:90%;max-width:500px;max-height:90vh;overflow:auto}.modal-header{padding:var(--spacing-md);border-bottom:var(--border-secondary);justify-content:space-between;align-items:center;display:flex}.modal-title{margin:0}.modal-close-btn{cursor:pointer;background:0 0;border:none;display:flex}.modal-body{padding:var(--spacing-md)}
.button{justify-content:center;align-items:center;gap:var(--spacing-md);text-align:center;border:var(--border-secondary);border-radius:var(--border-radius-md);width:100%;display:flex}.button.fit{padding-right:calc(var(--spacing-lg)*2);padding-left:calc(var(--spacing-lg)*2);width:fit-content!important}.button.primary:hover{color:var(--accent-color);background-color:var(--bg-color-secondary)}.button.secondary:hover{color:var(--accent-color);background-color:var(--bg-color-primary)}.button.noOutline{border:none}.button:active{outline:2px solid var(--accent-color)}.button.sm{padding:var(--spacing-sm)var(--spacing-md);font-size:var(--font-size-sm)}.button.md{padding:calc(var(--spacing-sm)*1.5)calc(var(--spacing-md)*1.5);font-size:var(--font-size-md)}.button.lg{padding:calc(var(--spacing-sm)*2);font-size:var(--font-size-lg)}@media (max-width:1024px){.button{padding:var(--spacing-sm)}}@media (min-width:1025px){.button{padding:calc(var(--spacing-sm)*1.5)}}
.project{border:var(--border-secondary);border-radius:var(--border-radius-lg);flex-direction:column;display:flex}.project-details{padding:var(--spacing-md);gap:var(--spacing-md);flex-direction:column;flex-grow:1;display:flex}.project-image{border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);object-fit:cover;border-bottom:var(--border-secondary);width:100%;height:auto}.projects-list{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));max-width:100%;display:grid}.project-card{border:var(--border-secondary);border-radius:var(--border-radius-lg);flex-direction:row;display:flex}.project-card-description{padding:var(--spacing-md);flex:1;display:flex}.project-card-image-wrapper{padding:var(--spacing-md);flex:1;justify-content:flex-end;display:flex}.project-card-image{border-radius:var(--border-radius-md);object-fit:cover;width:100%;height:auto}@media (max-width:768px){.project-card{flex-direction:column}.project-card-image-wrapper{justify-content:center;padding:0}.project-card-image{border-radius:0 0 var(--border-radius-lg)var(--border-radius-lg);border-top:var(--border-secondary)}}@media (min-width:1024px){.projects-list{grid-template-columns:repeat(3,1fr)}}
.loader{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
.offer-container{border:var(--border-secondary);border-radius:var(--border-radius-lg);flex-direction:column;display:flex}.offer-image{border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);object-fit:cover;border-bottom:var(--border-secondary);width:100%;height:300px}.offer-name{width:100%;color:var(--text-color-primary);font-family:var(--font-lato),sans-serif;text-align:center;font-size:x-large;font-weight:400}.offer-details{gap:var(--spacing-md);padding:var(--spacing-md);flex-direction:column;flex:1;display:flex}.offers-list{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));max-width:100%;display:grid}.offer-image-loader{justify-content:center;align-items:center;height:300px;display:flex}.loader-line{border-radius:var(--border-radius-md);background-color:var(--bg-color-secondary);width:100%;height:20px}
.chip{gap:var(--spacing-sm);align-items:center;display:inline-flex}.chip.outlined{padding:var(--spacing-sm)var(--spacing-md);background-color:var(--bg-color-secondary);border-radius:var(--border-radius-lg);border:var(--border-secondary)}
.term{gap:var(--spacing-sm);padding:var(--spacing-md);border:var(--border-secondary);border-radius:var(--border-radius-lg);flex-direction:column;display:flex}.terms-list{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));display:grid}@media (max-width:768px){.term{width:100%}}
.board{border:var(--border-secondary);border-radius:var(--border-radius-md)}.board-header{gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--bg-color-secondary);border-bottom:var(--border-secondary);border-top-left-radius:var(--border-radius-md);border-top-right-radius:var(--border-radius-md);flex-direction:row;display:flex}.board-body{padding:var(--spacing-md);gap:var(--spacing-md);flex-direction:column;display:flex}@media (max-width:767px){.board{width:100%}}@media (min-width:768px) and (max-width:1023px){.board{width:fit-content}}@media (min-width:1024px){.board{width:400px}}
.reservation{gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--border-radius-lg);border:var(--border-secondary);flex-direction:column;display:flex}.reservations-list{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));display:grid}
.message{border-radius:var(--border-radius-lg);justify-content:space-between;align-items:start;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--bg-color-primary);opacity:0;pointer-events:none;flex-direction:row;transition:opacity .3s,transform .3s;display:flex;position:fixed;overflow-y:auto;transform:translateY(20px);box-shadow:0 4px 6px #0000001a;bottom:var(--spacing-lg)!important}.message-content{gap:var(--spacing-sm);flex-direction:column;flex:1;display:flex}.message-children{margin-top:var(--spacing-sm)}.message-close{cursor:pointer;color:var(--text-color-primary);opacity:.6;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .2s;display:flex}.message-close:hover{opacity:1}.message.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.message.info{border:1px solid var(--severity-color-info)}.message.success{border:1px solid var(--severity-color-success)}.message.error{border:1px solid var(--severity-color-error)}@media (max-width:768px){.message{right:var(--spacing-md);width:calc(100% - var(--spacing-md)*2);max-height:calc(100vh - var(--spacing-md)*2)}}@media (min-width:769px){.message{right:var(--spacing-lg);width:fit-content;max-height:calc(40vh - var(--spacing-md)*2)}}@media (min-width:769px) and (max-width:1024px){.message{min-width:50%;max-width:calc(60% - var(--spacing-md)*2)}}@media (min-width:1025px) and (max-width:1440px){.message{min-width:40%;max-width:calc(45% - var(--spacing-md)*2)}}@media (min-width:1441px){.message{min-width:30%;max-width:calc(35% - var(--spacing-md)*2)}}
.stat{border:var(--border-light);border-radius:var(--border-radius-md);padding:var(--spacing-md);background-color:var(--bg-color-secondary);gap:var(--spacing-sm);flex-direction:column;display:flex}
