:root{--navy:#092c56;--navy-deep:#061e3d;--blue:#0c4fa2;--teal:#148d93;--green:#15866b;--gold:#e2a21c;--ink:#182845;--muted:#62718a;--border:#e3e9f1;--background:#f6f9fc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--background);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica Neue,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.container{max-width:1370px;margin-inline:auto;padding-inline:32px}.site-header{z-index:10;background:#fff;position:relative;box-shadow:0 3px 20px #102d5020}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:100px;display:flex}.brand{align-items:center;gap:16px;min-width:0;display:inline-flex}.brand-logo{object-fit:cover;border-radius:50%;flex-shrink:0;width:70px;height:70px;box-shadow:0 1px 5px #051e4126}.brand-text{flex-direction:column;gap:5px;display:flex}.brand-text strong{letter-spacing:-.8px;color:var(--navy);white-space:nowrap;font-size:clamp(22px,2.3vw,33px)}.brand-text small{color:#637590;letter-spacing:1.5px;text-transform:uppercase;font-size:12px}.desktop-nav{align-items:center;gap:clamp(18px,3vw,48px);height:100%;display:flex}.desktop-nav a{color:#1b3458;white-space:nowrap;border-bottom:4px solid #0000;padding:38px 0 34px;font-size:17px;font-weight:700;transition:color .15s,border-color .15s}.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--teal);border-color:var(--teal)}.mobile-nav{display:none}.hero{background:var(--navy);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:412px;display:grid;overflow:hidden}.hero-copy{color:#fff;background:linear-gradient(135deg,#071e3b 0%,#0c3b69 100%);align-items:center;min-width:0;display:flex}.hero-inner{box-sizing:border-box;width:100%;min-width:0;max-width:760px;padding:50px clamp(24px,4vw,64px) 55px max(32px,50vw - 653px)}.hero-eyebrow{color:#65e4df;letter-spacing:2.2px;text-transform:uppercase;margin-bottom:18px;font-size:12px;font-weight:700;display:block}.hero h1{letter-spacing:-1.6px;overflow-wrap:normal;min-width:0;max-width:660px;margin:0 0 20px;font-size:clamp(35px,3.7vw,60px);line-height:1.13}.hero p{color:#d3e1ef;max-width:560px;margin:0 0 29px;font-size:clamp(15px,1.23vw,18px);line-height:1.7}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button{border-radius:9px;justify-content:center;align-items:center;gap:9px;min-height:49px;padding:12px 22px;font-size:15px;font-weight:700;display:inline-flex}.primary-button{color:#fff;background:#0f9499}.primary-button:hover{background:#0b8288}.secondary-button{color:#fff;border:1px solid #8cbed1}.secondary-button:hover{background:#ffffff18}.hero-photo{min-height:412px;position:relative}.hero-photo img{object-fit:cover;object-position:center 50%}.hero-photo:after{content:"";pointer-events:none;background:linear-gradient(90deg,#061d3830 0,#0000 22%);position:absolute;inset:0}.home-section{padding-top:32px;padding-bottom:38px}.home-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.info-card{background:#fff;border:1px solid #e4ebf2;border-radius:16px;flex-direction:column;min-height:348px;display:flex;overflow:hidden;box-shadow:0 4px 20px #082c4d0c}.card-header{align-items:center;gap:13px;min-height:78px;padding:21px 23px 17px;display:flex}.card-header h2{color:var(--navy);margin:0;font-size:clamp(19px,1.65vw,23px)}.card-icon{border-radius:14px;flex:0 0 45px;place-items:center;width:45px;height:45px;display:grid}.card-icon.green{color:#0d8d76;background:#e5f6f0}.card-icon.gold{color:#da9b13;background:#fff5df}.card-icon.blue{color:#155caa;background:#eaf2ff}.card-body{flex:1;padding:4px 22px 15px}.empty-message{color:#667691;background:#f6f9fb;border:1px dashed #d9e4ee;border-radius:10px;margin:8px 0;padding:27px 22px;font-size:15px;line-height:1.65}.news-list{margin:0;padding:0;list-style:none}.news-list li{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:11px 0;display:flex}.news-list li img{object-fit:cover;border-radius:7px;flex-shrink:0}.news-list li a{flex-direction:column;gap:8px;min-width:0;display:flex}.news-list time{color:var(--teal);font-size:13px}.card-footer{color:var(--blue);border-top:1px solid #eef1f5;align-items:center;gap:7px;margin:0 22px;padding:16px 0 17px;font-size:14px;font-weight:700;display:flex}.card-footer:hover,.about-strip a:hover{color:var(--teal)}.calendar-card .card-body{padding-top:0;padding-bottom:5px}.calendar{width:100%}.calendar-toolbar{justify-content:space-between;align-items:center;gap:8px;padding:0 1px 10px;display:flex}.calendar-toolbar button{cursor:pointer;width:32px;height:32px;color:var(--navy);background:#f4f7fb;border:0;border-radius:8px;place-items:center;display:grid}.calendar-toolbar button:hover{background:#e4eff8}.calendar-month{text-transform:capitalize;color:var(--navy);font-size:16px}.calendar-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px 0;display:grid}.calendar-weekday{color:#64748b;padding:5px 0 7px;font-size:11px;font-weight:700}.calendar-weekday:nth-child(7n+6),.calendar-weekday:nth-child(7n+7){color:var(--green)}.calendar-day{cursor:default;width:32px;height:32px;min-height:32px;color:inherit;background:0 0;border:0;border-radius:50%;place-items:center;margin:auto;font-size:13px;display:grid}.calendar-day.outside{color:#c1c9d3}.calendar-day.today{background:var(--blue);color:#fff;font-weight:700}.calendar-day.event-day{cursor:pointer;font-weight:700}.calendar-day.event-holiday:not(.today),.legend-swatch.holiday{color:#b42318;background:#ffd9d9}.calendar-day.event-autumn-break:not(.today),.legend-swatch.autumn-break{color:#23733b;background:#d9f2df}.calendar-day.event-winter-break:not(.today),.legend-swatch.winter-break{color:#17658c;background:#d8efff}.calendar-day.event-spring-break:not(.today),.legend-swatch.spring-break{color:#7040a5;background:#eadcff}.calendar-day.event-school:not(.today),.legend-swatch.school{color:#8b6500;background:#fff0c7}.calendar-legend{color:var(--muted);flex-wrap:wrap;gap:8px 14px;margin-top:16px;font-size:12px;display:flex}.calendar-legend span{align-items:center;gap:5px;display:inline-flex}.legend-swatch{border-radius:50%;width:12px;height:12px;display:inline-block}.calendar-selected{border-left:3px solid var(--blue);background:#f5f9fd;flex-direction:column;gap:3px;margin-top:12px;padding:9px 12px;font-size:13px;display:flex}.calendar-selected span{color:var(--navy)}.event-label{font-weight:700}.event-label.holiday{color:#b42318}.event-label.autumn-break{color:#23733b}.event-label.winter-break{color:#17658c}.event-label.spring-break{color:#7040a5}.event-label.school{color:#8b6500}.quick-access{border:1px solid var(--border);background:#fff;border-radius:15px;align-items:center;min-height:100px;margin-top:19px;display:flex;box-shadow:0 2px 14px #092b4b0a}.quick-label{min-width:180px;color:var(--navy);align-self:stretch;align-items:center;padding:0 25px;font-size:18px;font-weight:800;display:flex}.quick-access a{border-left:1px solid var(--border);color:#213a5a;flex:1;justify-content:center;align-items:center;gap:12px;min-width:0;min-height:50px;font-size:15px;font-weight:700;display:flex}.quick-access a:hover{color:var(--teal)}.quick-access a svg{color:var(--teal);stroke-width:1.8px;width:26px;height:26px}.about-strip{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:19px;margin-top:19px;padding:23px 27px;display:flex}.about-strip-icon{background:var(--navy);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:65px;height:65px;display:grid}.about-strip h2{color:var(--navy);margin:0 0 5px;font-size:22px}.about-strip p{color:#4f5e72;margin:0;line-height:1.6}.about-strip>div{flex:1}.about-strip a{white-space:nowrap;color:var(--blue);align-items:center;gap:6px;font-size:14px;font-weight:700;display:flex}.footer{background:linear-gradient(120deg, var(--navy-deep), var(--navy) 75%);color:#fff}.footer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding-top:27px;padding-bottom:26px;display:grid}.footer-contact{border-right:1px solid #ffffff3d;align-items:center;gap:15px;min-width:0;font-size:14px;line-height:1.45;display:flex}.footer-contact:last-child{border:0}.footer-contact>svg{color:#4bd0d3;stroke-width:1.6px;flex-shrink:0;width:29px;height:29px}.footer-contact span{overflow-wrap:anywhere}.footer-contact small{color:#b4cadf;margin-bottom:3px;font-size:12px;display:block}.footer-contact a:hover{color:#4bd0d3}.footer-bottom{color:#bad0e5;border-top:1px solid #ffffff1c;justify-content:space-between;gap:14px;padding-top:14px;padding-bottom:17px;font-size:12px;display:flex}.footer-bottom a:hover{color:#fff}.page-heading{color:#fff;background:linear-gradient(120deg,#082443,#0d487d);padding:39px 0 46px}.page-heading .container>a,.page-heading .container>span{color:#a9d3e5;font-size:13px}.page-heading h1{margin:22px 0 9px;font-size:clamp(32px,4vw,48px)}.page-heading p{color:#d9e8f4;margin:0;font-size:17px;line-height:1.6}.page-content{min-height:355px;padding-top:43px;padding-bottom:60px}.about-page{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.prose{max-width:750px;font-size:17px;line-height:1.8}.prose h2{color:var(--navy);margin:0 0 15px;font-size:28px}.prose p{margin:0 0 18px}.about-image{border-radius:14px;min-height:330px;position:relative;overflow:hidden}.about-image img{object-fit:cover}.staff-page{max-width:1200px}.staff-section-title{color:var(--navy);margin:28px 0 18px;font-size:28px}.staff-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.staff-card{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:16px;padding:22px;display:flex;box-shadow:0 4px 16px #092b4b0b}.staff-photo{width:58px;height:58px;color:var(--teal);background:#e7f5f3;border-radius:50%;flex:0 0 58px;place-items:center;display:grid;overflow:hidden}.staff-photo img{object-fit:cover;width:100%;height:100%}.staff-role{color:var(--teal);margin:0 0 5px;font-size:13px;font-weight:700}.staff-card h3{color:var(--navy);margin:0;font-size:18px}.teachers-section{margin-top:42px;padding:8px 0 20px}.staff-select-label{color:var(--navy);margin-bottom:8px;font-weight:700;display:block}.staff-select{width:min(100%,430px);font:inherit;background:#fff;border:1px solid #cbd8e5;border-radius:8px;padding:12px}.staff-tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.staff-tabs button{color:var(--navy);cursor:pointer;background:#fff;border:1px solid #cbd8e5;border-radius:8px;padding:11px 16px;font-weight:700}.staff-tabs button.active{background:var(--blue);border-color:var(--blue);color:#fff}.staff-empty{max-width:600px;color:var(--muted);background:#fff;border:1px dashed #d9e4ee;border-radius:10px;margin-top:18px;padding:20px}.teacher-list{max-width:600px;margin:20px 0 0;padding:0;list-style:none}.teacher-list li{border-bottom:1px solid var(--border);color:var(--navy);background:#fff;align-items:center;gap:10px;padding:13px 16px;display:flex}.teacher-list li span{gap:4px;display:grid}.teacher-list li small{color:var(--muted);font-size:13px}.notice-empty{border:1px solid var(--border);color:#54647a;background:#fff;border-radius:13px;padding:35px;line-height:1.6}.admin-page{max-width:850px}.admin-card{border:1px solid var(--border);background:#fff;border-radius:15px;padding:clamp(22px,5vw,42px);box-shadow:0 5px 22px #092b4b0b}.admin-card h1,.admin-card h2{color:var(--navy);margin-top:0}.admin-form{gap:16px;max-width:460px;display:grid}.admin-form label{color:var(--navy);gap:7px;font-weight:700;display:grid}.admin-form input{font:inherit;border:1px solid #cbd8e5;border-radius:8px;padding:12px}.admin-toolbar{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.admin-kicker{color:var(--teal);margin:0 0 5px;font-weight:700}.admin-logout{color:var(--navy);border-color:#cbd8e5}.admin-nav{background:#f4f8fb;border-radius:9px;flex-wrap:wrap;gap:10px;margin:25px 0;padding:12px;display:flex}.admin-nav a{color:var(--blue);font-weight:700}.schedule-validity{color:var(--teal);margin-top:0;font-weight:700}.schedule-controls{justify-content:space-between;align-items:end;gap:20px;margin:20px 0;display:flex}.schedule-class-control{flex-wrap:wrap;align-items:end;gap:18px;display:flex}.schedule-teachers-link{white-space:nowrap;align-items:center;min-height:43px;display:inline-flex}.schedule-controls label{color:var(--navy);gap:7px;font-weight:700;display:grid}.schedule-controls select{min-width:150px;font:inherit;background:#fff;border:1px solid #cbd8e5;border-radius:8px;padding:11px}.schedule-days{gap:5px;display:none}.schedule-days button{border:1px solid var(--border);color:var(--navy);cursor:pointer;background:#fff;border-radius:8px;padding:9px 12px}.schedule-days button.active{color:#fff;background:var(--blue);border-color:var(--blue)}.schedule-days button.today-day:after{content:" · danas";font-size:10px}.schedule-table-scroll{border:1px solid var(--border);background:#fff;border-radius:13px;overflow-x:auto}.schedule-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:750px}.schedule-table th,.schedule-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);vertical-align:top;text-align:left;padding:12px 10px}.schedule-table thead th{color:var(--navy);text-align:center;background:#f4f8fb}.schedule-table tbody>tr>th{width:145px;color:var(--navy);background:#fbfcfd}.schedule-table small,.schedule-cell-content small,.schedule-mobile-lesson small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:400;display:block}.schedule-cell-content{min-height:42px;color:var(--navy)}.schedule-cell-content strong{font-size:14px}.schedule-group+.schedule-group{border-top:1px dashed #cad7e4;margin-top:8px;padding-top:8px}.schedule-empty{color:#b7c0ca}.schedule-mobile-list{display:none}.post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.post-item{border:1px solid var(--border);background:#fff;border-radius:12px;padding:25px}.post-image{border-radius:12px 12px 0 0;height:190px;margin:-25px -25px 20px;display:block;position:relative;overflow:hidden}.post-image img,.news-cover img,.gallery-grid img{object-fit:cover}.post-item h2 a{color:inherit}.text-link{color:var(--teal);font-weight:700}.announcement-subtitle{color:var(--teal);font-style:italic;font-weight:700}.detail-subtitle{margin:-12px 0 22px;font-size:20px}.news-detail{max-width:850px}.news-detail article>time{color:var(--teal);font-size:13px}.news-detail h1{color:var(--navy);margin:10px 0 24px;font-size:clamp(30px,5vw,46px);line-height:1.12}.news-cover{border-radius:15px;height:min(520px,65vw);min-height:280px;margin-bottom:28px;position:relative;overflow:hidden}.news-detail .prose{max-width:760px}.news-gallery{margin-top:38px}.news-gallery h2{color:var(--navy)}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.gallery-grid a{aspect-ratio:4/3;background:#eef3f7;border-radius:10px;display:block;position:relative;overflow:hidden}.gallery-grid a:hover img{transform:scale(1.03)}.gallery-grid img{transition:transform .2s}.post-item time{color:var(--teal);font-size:13px}.post-item h2{color:var(--navy);font-size:20px}.post-item p{color:var(--muted);line-height:1.6}.document-list{margin:0;padding:0;list-style:none}.document-list li{border:1px solid var(--border);background:#fff;border-radius:10px;align-items:center;gap:20px;margin-bottom:10px;padding:18px 20px;display:flex}.document-list li>svg{color:var(--teal)}.document-list li>div{flex:1}.document-list li strong,.document-list li small{display:block}.document-list li small{color:var(--muted);margin-top:4px}.document-list li a{color:var(--blue);font-weight:700}.contact-panel{border:1px solid var(--border);background:#fff;border-radius:15px;max-width:760px;padding:20px 32px}.contact-row{border-bottom:1px solid var(--border);align-items:flex-start;gap:24px;padding:18px 0;display:flex}.contact-row:last-child{border-bottom:none}.contact-row>svg{color:var(--teal);width:27px;height:27px}.contact-row strong{color:var(--navy)}.contact-row p{margin:6px 0 0;line-height:1.65}.contact-row a{color:var(--blue);text-underline-offset:2px;text-decoration:underline}.calendar-page{border:1px solid var(--border);background:#fff;border-radius:15px;max-width:750px;padding:25px}.calendar-full .calendar-toolbar{margin-bottom:15px}.calendar-full .calendar-month{font-size:24px}.calendar-full .calendar-day{width:54px;height:54px;min-height:62px;font-size:17px}.calendar-full .calendar-weekday{font-size:14px}.calendar-events{border-top:1px solid var(--border);margin-top:22px;padding-top:10px}.calendar-events h2{font-size:20px}.calendar-events p{color:var(--muted)}.calendar-events li{line-height:1.8}@media (max-width:1120px){.container{padding-inline:24px}.desktop-nav{gap:18px}.desktop-nav a{font-size:15px}.brand-logo{width:57px;height:57px}.brand-text strong{font-size:25px}.hero-inner{padding-left:35px;padding-right:28px}.hero h1{font-size:42px}.card-header,.card-body{padding-inline:16px}.card-footer{margin-inline:16px}.footer-grid{gap:13px}.footer-contact{gap:9px;font-size:12px}}@media (max-width:800px){.header-inner{min-height:82px}.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{cursor:pointer;color:var(--navy);border-radius:8px;align-items:center;gap:6px;padding:11px;font-weight:700;list-style:none;display:flex}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{border:1px solid var(--border);background:#fff;border-radius:10px;flex-direction:column;gap:0;min-width:230px;display:flex;position:absolute;top:48px;right:0;overflow:hidden;box-shadow:0 13px 30px #0d2d5240}.mobile-nav nav a{border-bottom:1px solid var(--border);color:var(--navy);padding:15px 20px;display:block}.mobile-nav nav a:last-child{border-bottom:none}.mobile-nav nav a:hover{background:#f1f7fb}.hero{grid-template-columns:1fr}.hero-copy{order:2}.hero-photo{order:1;min-height:300px}.hero-photo:after{background:0 0}.hero-inner{padding:35px 24px 40px}.hero h1{font-size:clamp(32px,7.5vw,50px)}.home-grid{grid-template-columns:1fr 1fr}.calendar-card{grid-column:1/-1}.calendar-card .card-body{width:100%;max-width:480px;margin-inline:auto}.info-card{min-height:255px}.quick-label{display:none}.quick-access a:first-of-type{border-left:none}.quick-access a{text-align:center;flex-direction:column;gap:7px;padding:14px}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-contact:nth-child(2){border:0}.about-page{grid-template-columns:1fr}.staff-grid,.post-grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.container{padding-inline:16px}.header-inner{gap:12px;min-height:72px}.brand-logo{width:48px;height:48px}.brand{gap:9px}.brand-text strong{letter-spacing:-.8px;font-size:20px}.brand-text small,.mobile-nav summary span{display:none}.hero-photo{min-height:250px}.hero-inner{padding-inline:20px}.hero-eyebrow{letter-spacing:1px;font-size:10px}.hero h1{font-size:35px}.home-grid{grid-template-columns:1fr;gap:15px}.calendar-card{grid-column:auto}.home-section{padding-top:17px}.info-card{min-height:230px}.calendar-card .card-body{max-width:400px}.quick-access{grid-template-columns:1fr 1fr;display:grid}.quick-access a{border:none;border-bottom:1px solid var(--border)}.quick-access a:nth-of-type(2n){border-left:1px solid var(--border)}.quick-access a:nth-last-child(-n+2){border-bottom:0}.about-strip{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:19px}.about-strip-icon{width:48px;height:48px}.about-strip>div{flex-basis:calc(100% - 64px)}.about-strip a{margin-left:60px}.footer-grid{grid-template-columns:1fr;gap:19px}.footer-contact{border:0;font-size:14px}.footer-bottom{flex-direction:column}.page-content{padding-top:25px;padding-bottom:40px}.page-heading{padding:30px 0 36px}.about-image{min-height:250px}.staff-grid,.post-grid{grid-template-columns:1fr}.schedule-controls{flex-direction:column;align-items:stretch}.schedule-class-control{align-items:stretch}.schedule-days{display:flex}.schedule-table-scroll{display:none}.schedule-mobile-list{gap:10px;display:grid}.schedule-mobile-lesson{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:105px 1fr;gap:12px;padding:13px;display:grid}.schedule-mobile-lesson>div:first-child{color:var(--navy)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.calendar-page{padding:13px}.calendar-full .calendar-day{width:37px;height:37px;min-height:40px;font-size:15px}.calendar-full .calendar-month{font-size:18px}.contact-panel{padding:12px 18px}}
