/* Reversible exterior backgrounds; original styles remain intact. */
html{min-height:100%;background:#edf5fa}body{position:relative;isolation:isolate;background:#edf5fa!important;margin:0;padding:24px 20px;min-height:100vh}body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none}body.exterior-story::before{background:url('assets/story-garden.png') center/cover no-repeat;opacity:.12}body.exterior-brand::before{background:url('assets/sigla-paradisul-piticilor.jpg') 24px 24px/158px 198px repeat;opacity:.045;mix-blend-mode:multiply}.site-shell{width:100%;max-width:1200px;margin:0 auto;background:#fffaf0 url('assets/story-garden.png') center top/1400px auto no-repeat;border-radius:18px;box-shadow:0 8px 32px #24456220;overflow:hidden;min-width:0}.site-shell>.demo,.site-shell>.forest-header,.site-shell>main,.site-shell>footer{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;box-sizing:border-box}.site-shell>main{min-width:0}.site-shell>footer{padding:36px 32px;grid-template-columns:2fr 1fr 1.6fr}.site-shell .forest-header nav{min-width:0}.site-shell .grid>*{min-width:0}.site-shell img{max-width:100%}.site-shell .values{min-width:0}.site-shell .value{min-width:0;padding:0 10px;font-size:13px}.site-shell .orb{width:44px;height:44px;flex-shrink:0;font-size:27px}.background-preview{position:relative;z-index:3;width:max-content;max-width:100%;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;background:#fffaf0f2;border:1px solid #cad7e2;border-radius:14px;padding:8px 12px;font-size:12px;box-shadow:0 2px 10px #24456210}.background-preview button{padding:7px 12px;border-radius:9px;background:#eef4fb;color:#234e7b;border-color:#abc1d6;box-shadow:none;font-size:12px}.background-preview button[aria-pressed=true]{background:#234e7b;color:white}.background-preview span{color:#4d5c65}@media(max-width:1000px){body{padding:14px 12px}.site-shell>footer{grid-template-columns:1.5fr 1fr 1fr}.site-shell .values{grid-template-columns:repeat(3,1fr)}.site-shell .value{font-size:13px}}@media(max-width:560px){body{padding:8px 5px}.site-shell{border-radius:12px;background-size:1050px auto;background-position:55% top}.site-shell>footer{grid-template-columns:1fr;padding:28px 22px}.site-shell .values{grid-template-columns:repeat(2,1fr)}.site-shell .value{font-size:12px;padding:0 5px}.background-preview{gap:6px;padding:8px;margin-bottom:8px}.background-preview span{flex-basis:100%;text-align:center}.background-preview button{font-size:11px}body::before{position:absolute;background-attachment:scroll}}
body::before{top:0;left:0;width:100%;height:100vh}.site-shell{background-image:linear-gradient(to bottom,transparent 78%,#fffaf0 100%),url('assets/fundal-pastel-v4.png');background-size:100% 1000px,100% auto;background-position:center 26px;background-repeat:no-repeat}@media(max-width:560px){body::before{height:100%;min-height:100vh}.site-shell{background-size:100% 83.333vw,100% auto;background-position:center 26px}}

/* Aspect 1000 px: marca originală se îmbină cu bleu-ul prin multiply. */
html{background:#bdcfeb}body{background:#bdcfeb!important}.site-shell,.site-shell>.demo,.site-shell>.forest-header,.site-shell>main,.site-shell>footer{max-width:1000px}body.exterior-brand::before{background-image:url('assets/sigla-paradisul-piticilor.jpg');background-size:154px 193px;background-position:0 0;background-repeat:repeat;filter:grayscale(1);mix-blend-mode:multiply;opacity:.085}body.exterior-story::before{background:url('assets/story-garden.png') center/cover no-repeat;opacity:.09}.site-shell .home-panels{grid-template-columns:1fr 1fr}.site-shell .home-panels .useful-panel{grid-column:auto}.site-shell .home-panels .useful-links{grid-template-columns:1fr}.site-shell .forest-header nav{grid-template-columns:.8fr 1.25fr .85fr 1.2fr 1fr .8fr 1.4fr}.site-shell .forest-header nav a{font-size:13px}.site-shell .forest-header nav a.button{font-size:13px}@media(max-width:1000px){.site-shell .forest-header nav{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:700px){.site-shell .forest-header nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.site-shell .home-panels{grid-template-columns:1fr}}

/* Varianta aleasă: marcă repetată, interfață mai compactă. */
.background-preview{display:none}.site-shell .forest-header{padding:18px 24px 16px;gap:14px 20px;grid-template-columns:118px minmax(0,1fr) auto}.site-shell .logo-separate img{width:90px;height:113px}.site-shell .forest-header .brand{padding:12px 18px;font-size:21px}.site-shell .forest-header .brand strong{font-size:31px}.site-shell .forest-header nav{padding:8px;gap:6px;border-radius:14px}.site-shell .forest-header nav a{min-height:46px;padding:9px 7px;font-size:12px;border-radius:9px}.site-shell .forest-header nav a>span:first-child{font-size:19px}.site-shell .forest-header nav a.button{font-size:12px}.site-shell main>.wrap{padding:28px;margin-top:18px}.site-shell .card,.site-shell .parchment{padding:20px;border-radius:15px}.site-shell .grid,.site-shell .home-panels{gap:16px}.site-shell .card h2,.site-shell .panel-heading h2{font-size:25px}.site-shell .button,.site-shell button{padding:9px 16px}.site-shell .home-introduction{padding:24px 28px}.site-shell .home-accreditation{padding:14px 20px;font-size:16px}.site-shell .values{padding:12px 16px;border-radius:14px}.site-shell .orb{width:38px;height:38px;font-size:24px}.site-shell .home-panels .home-facebook{padding:18px 16px}.site-shell .useful-links a{padding:9px 12px;font-size:13px}.site-shell .calendar-content,.site-shell .enrollment-page{gap:18px}@media(max-width:700px){.site-shell .forest-header{grid-template-columns:92px minmax(0,1fr);padding:16px 12px;gap:12px}.site-shell .logo-separate img{width:76px;height:95px}.site-shell .forest-header .brand{font-size:17px;padding:10px 12px}.site-shell .forest-header .brand strong{font-size:25px}.site-shell .forest-header nav a{min-height:48px}.site-shell .forest-header #menu-toggle{padding:10px 16px}}@media(max-width:560px){.site-shell main>.wrap{padding:18px 14px}.site-shell .card,.site-shell .parchment{padding:18px}.site-shell .home-introduction{padding:20px 18px}.site-shell .button,.site-shell button{min-height:44px}.site-shell .card h2{font-size:24px}}

.site-shell .home-introduction p{font-size:15px;line-height:1.65;margin-bottom:14px}.site-shell .home-introduction p:last-child{margin-bottom:0}@media(max-width:560px){.site-shell .home-introduction p{font-size:14px;line-height:1.65}}

.site-shell footer .text-button{display:block;min-height:0;padding:0;margin:0 0 9px;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;font:inherit;text-align:left;line-height:inherit}

.home-photo-trial{max-width:792px;margin:20px auto 24px;padding:6px;background:#fffaf0;border:1px solid #d8b67d;border-radius:16px;box-shadow:0 4px 14px #24456218}.home-photo-trial img{display:block;width:100%;height:auto;border-radius:11px}@media(max-width:560px){.home-photo-trial{margin:16px auto;padding:4px;border-radius:12px}}

/* Tipografie mai discretă, comună tuturor paginilor. */
.site-shell .forest-header .brand strong{font-size:28px}.site-shell .forest-header .brand{font-size:19px}.site-shell .hero h1{font-size:clamp(27px,2.6vw,35px);line-height:1.2;letter-spacing:-.5px}.site-shell .hero p{font-size:16px;line-height:1.6}.site-shell .page-title h1{font-size:34px;line-height:1.2;letter-spacing:-.7px}.site-shell .page-title>p{font-size:15px}.site-shell .card h2,.site-shell .parchment h2,.site-shell .panel-heading h2,.site-shell .cta h2{font-size:23px;line-height:1.25}.site-shell h3{font-size:19px;line-height:1.3}.site-shell .institutional-documents h3,.site-shell .story-news h3{font-size:16px}.site-shell .card .story-motto{font-size:19px;line-height:1.6}.site-shell .schedule-hours{font-size:32px}.site-shell .enrollment-ages h3{font-size:19px}.site-shell .enrollment-ages strong{font-size:24px}.site-shell .home-panels .home-facebook h2{font-size:21px}.site-shell .home-accreditation{font-size:15px}.site-shell footer strong{font-size:21px}@media(max-width:700px){.site-shell .forest-header .brand{font-size:16px}.site-shell .forest-header .brand strong{font-size:24px}}@media(max-width:560px){.site-shell .hero h1{font-size:28px}.site-shell .hero p{font-size:15px}.site-shell .page-title h1{font-size:28px}.site-shell .card h2,.site-shell .parchment h2,.site-shell .cta h2{font-size:22px}.site-shell .card .story-motto{font-size:18px}.site-shell .schedule-hours{font-size:28px}.site-shell .enrollment-ages strong{font-size:22px}.site-shell .enrollment-ages h3{font-size:17px}.site-shell .home-accreditation{font-size:14px}}

.site-shell .forest-header .brand{justify-self:start;width:fit-content;max-width:100%;padding:12px 22px}@media(max-width:700px){.site-shell .forest-header .brand{padding:10px 12px}}

.site-shell .home-accreditation{width:fit-content;max-width:100%;margin:18px auto;padding:10px 16px;justify-content:center;text-align:center;border-radius:12px}

/* Probă reversibilă: ornamente mai discrete și casete potrivite conținutului. */
body:not(.aspect-anterior).exterior-brand::before{opacity:.085}
body:not(.aspect-anterior) .site-shell .card,body:not(.aspect-anterior) .site-shell .parchment{border-color:#e1d6bd;box-shadow:0 3px 10px #2445620c}
body:not(.aspect-anterior) .site-shell .home-panels{align-items:start}
body:not(.aspect-anterior) .site-shell .home-panels .parchment{background:#fffaf0}
body:not(.aspect-anterior) .site-shell .home-panels .home-facebook{flex-direction:row;align-items:center;text-align:left;gap:18px}
body:not(.aspect-anterior) .site-shell .home-panels .home-facebook h2{font:700 21px/1.3 Georgia,serif;margin:0 0 10px}
body:not(.aspect-anterior) .site-shell .home-panels .home-facebook img{width:85px;height:85px}
body:not(.aspect-anterior) .site-shell .home-panels .home-facebook figcaption{max-width:85px;font-size:10px}
body:not(.aspect-anterior) .site-shell .values{background:#fff8e8;border:1px solid #e1d6bd;box-shadow:none}
body:not(.aspect-anterior) .site-shell .orb{box-shadow:none;filter:saturate(.65);border-width:1px}
body:not(.aspect-anterior) .site-shell .forest-header nav a>span:first-child{filter:grayscale(.65);opacity:.8;font-size:17px}
body:not(.aspect-anterior) .site-shell .home-accreditation{border-width:1px;border-color:#d6bd87;background:#fff5d9;box-shadow:0 2px 8px #2445620c}
body:not(.aspect-anterior) .site-shell .home-photo-trial{max-width:700px;padding:4px;border-color:#e1d6bd;box-shadow:0 3px 10px #2445620c;margin:24px auto}
body:not(.aspect-anterior) .site-shell .home-introduction{background:#fffaf0;border-color:#e1d6bd;box-shadow:none}
.design-comparison{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;padding:12px;font-size:12px;background:#fffaf0;color:#244562;border-top:1px solid #e1d6bd}
.design-comparison button{font:inherit;padding:7px 12px;border:1px solid #bacadb;border-radius:8px;background:#edf4ff;color:#244562;cursor:pointer}
/* Fade-ul urmărește înălțimea reală a imaginii (1374 × 1145), fără muchie la final. */
.site-shell{background-image:linear-gradient(to bottom,transparent 80%,#fffaf066 88%,#fffaf0 99%),url('assets/fundal-pastel-v4.png');background-size:100% min(833.333px,calc((100vw - 40px)*.833333)),100% auto;background-position:center 26px;background-repeat:no-repeat}
@media(max-width:1000px){.site-shell{background-size:100% calc((100vw - 24px)*.833333),100% auto}}
@media(max-width:560px){.site-shell{background-size:100% calc((100vw - 10px)*.833333),100% auto}}
@media(max-width:560px){body:not(.aspect-anterior) .site-shell .home-panels .home-facebook{gap:12px}body:not(.aspect-anterior) .site-shell .home-photo-trial{margin:18px auto}}



.unified-icon{display:inline-block;width:20px;height:20px;vertical-align:middle;flex-shrink:0}
.site-shell .forest-header nav a>span:first-child{filter:none!important;opacity:1!important;display:flex;align-items:center}
.site-shell .orb .unified-icon{width:21px;height:21px}
.site-shell .news-stamp .unified-icon{width:22px;height:22px}
.site-shell .useful-links a{justify-content:flex-start;gap:8px}
.site-shell .useful-links a>span:last-child{margin-left:auto}
.site-shell .panel-heading .unified-icon{width:20px;height:20px}


/* Aceeași nuanță de bordo pentru butoanele principale. */
.site-shell .button,.site-shell button:not(.text-button):not(#menu-toggle):not(.design-comparison button),.site-shell .forest-header nav a.button,.site-shell .home-facebook .button{background:#992d48;border-color:#84243c;color:#fff;box-shadow:0 2px 6px #63203518}
.site-shell .button.secondary{background:#992d48;color:#fff;border-color:#84243c}
.site-shell .gallery-navigation button,.site-shell .design-comparison button{background:#fffaf0;color:#244562;border-color:#d6bd87}


.site-shell .forest-header nav{grid-template-columns:.75fr 1.2fr .75fr .85fr 1.2fr 1fr .8fr 1.35fr}
.team-section{margin-top:24px}.team-section>h2{font-size:23px;color:#173e66;margin:0 0 16px}.team-intro blockquote{margin:0 0 18px;font:italic 20px/1.6 Georgia,serif;color:#173e66}.team-intro cite{display:block;font:13px/1.5 system-ui;margin-top:8px}.team-profile{display:flex;align-items:flex-start;gap:16px}.team-profile img{width:97px;height:113px;object-fit:contain;background:#fff;border-radius:8px;flex-shrink:0}.team-role{font-size:12px;font-weight:700;color:#992d48}.team-profile h3{margin:5px 0 9px}.team-profile p{font-size:14px;line-height:1.6;margin:0}.team-list{list-style:none;padding:0;margin:0}.team-list li{padding:12px 0;border-bottom:1px solid #e1d6bd}.team-list li:last-child{border-bottom:0}.team-list span{display:block;font-size:14px;margin-top:4px;color:#59685c}.team-auxiliary{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
@media(max-width:1000px){.site-shell .forest-header nav{grid-template-columns:repeat(4,minmax(0,1fr))}.site-shell .forest-header nav a.button{grid-column:auto}}
@media(max-width:700px){.site-shell .forest-header nav{grid-template-columns:repeat(2,minmax(0,1fr))}.team-profile{gap:12px}.team-auxiliary{grid-template-columns:1fr}}
@media(max-width:380px){.team-profile{flex-direction:column}}

.calendar-grid .day.calendar-course{background:#dcf3ff;border-color:#b9dfef;color:#173e66}
.calendar-grid .day.calendar-vacation{background:#fbd4e5;border-color:#e9adc8;color:#6c2846}
.calendar-grid .day.calendar-activity{background:#dceecd;border-color:#a7c68c;color:#315b41}
.calendar-grid .day.calendar-theme{border:2px solid #a94b9e;font-weight:750}
.calendar-grid .day.calendar-drill{border:2px solid #c38a22;font-weight:750}
.calendar-grid .day.calendar-holiday{border:2px solid #b72d46;background:#fff0f1;color:#992d48;font-weight:750}

.site-shell .activity-photo-scene{height:auto;background:none;aspect-ratio:500/282;border-color:#e1d6bd}
.activity-photo-scene img{display:block;width:100%;height:auto;border-radius:12px}
.activity-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
.activity-gallery .card{padding:12px}.activity-gallery img{display:block;width:100%;height:auto;border-radius:9px}.activity-gallery h3{font-size:17px;margin:12px 4px 4px}
@media(max-width:560px){.activity-gallery{grid-template-columns:1fr}.gallery-navigation{gap:9px}}
.tour-building-photo{max-width:700px;margin:0 auto 24px}.tour-building-photo img{display:block;width:100%;height:auto;border-radius:14px}.tour-building-photo figcaption{text-align:center;font-size:13px;color:#59685c;margin-top:10px}

.photo-tour{max-width:820px;margin:auto}.photo-tour>figure{margin:0}.photo-tour #tour-image{display:block;width:100%;height:auto;aspect-ratio:500/282;object-fit:contain;background:#f4f1e8;border-radius:12px}.photo-tour figcaption{padding:18px 0 4px}.photo-tour figcaption h2{margin:8px 0}.photo-tour figcaption p{margin:0;line-height:1.6}.photo-tour #tour-step{font-size:12px;color:#992d48;font-weight:700}.tour-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}.tour-controls p{font-size:12px;text-align:center;margin:0}.tour-stops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-height:0;margin:0;padding:0;background:none;border:0;box-shadow:none}.site-shell .tour-stops button{padding:5px;background:#fffaf0;color:#244562;border:1px solid #e1d6bd;border-radius:9px;box-shadow:none;text-align:left}.tour-stops img{width:100%;height:auto;display:block;border-radius:5px}.tour-stops span{display:block;padding:7px 4px;font-size:12px;line-height:1.4}.site-shell .tour-stops button[aria-pressed=true]{border:2px solid #992d48;background:#fff0f3}.tour-stops button:focus-visible{outline:3px solid #245e97;outline-offset:2px}.tour-intro{font-size:14px;margin:0 0 18px}
@media(max-width:560px){.tour-stops{grid-template-columns:repeat(2,minmax(0,1fr))}.tour-controls{flex-wrap:wrap}.tour-controls p{order:3;width:100%}.tour-controls button{font-size:13px}}

/* Fotografii de tur mai apropiate de rezoluția originală. */
.photo-tour #tour-image{max-width:500px;width:100%;margin:0 auto}
.photo-tour>figure{max-width:560px;margin:0 auto}
.photo-tour .tour-stops{max-width:600px;margin:0 auto}

/* Panouri de tur discrete, fără accent bordo. */
.site-shell .photo-tour .tour-stops button{background:#fffaf2;border:1px solid #e3dccb;color:#365568;box-shadow:none}
.site-shell .photo-tour .tour-stops button[aria-pressed=true]{background:#edf4f6;border:1px solid #9bb8c2;color:#244b60;box-shadow:0 0 0 1px #9bb8c233}

/* Prioritate față de regula generală pentru butoanele bordo. */
.site-shell .photo-tour nav.tour-stops button[data-tour-stop]{background:#faf9f5!important;color:#52636a!important;border:1px solid #e5e3dc!important;box-shadow:none!important}
.site-shell .photo-tour nav.tour-stops button[data-tour-stop][aria-pressed=true]{background:#f0f4f3!important;color:#36545a!important;border-color:#bdceca!important;box-shadow:none!important}

/* Comenzi compacte pentru turul foto. */
.site-shell .photo-tour .tour-controls button{font-size:12px;line-height:1.3;padding:7px 12px;min-height:34px;border-radius:8px;background:#f5f3eb!important;color:#42606b!important;border:1px solid #d9ded9;box-shadow:none!important;font-weight:600}
.site-shell .photo-tour nav.tour-stops button[data-tour-stop]{padding:4px;min-height:0;border-radius:7px}
.photo-tour .tour-stops span{font-size:11px;line-height:1.4;padding:5px 3px;font-weight:500}
.photo-tour .tour-stops{max-width:500px;gap:8px}
.photo-tour .tour-controls{max-width:560px;margin:14px auto;gap:8px}
@media(pointer:coarse){.site-shell .photo-tour .tour-controls button{min-height:44px}}

/* Casete compacte pentru cele două programe. */
.site-shell .enrollment-schedules{width:100%;max-width:650px;margin:0 auto;gap:14px}
.site-shell .enrollment-schedules .card{padding:16px 20px;border-radius:12px}
.site-shell .enrollment-schedules h2{font-size:20px;margin:0 0 8px}
.site-shell .enrollment-schedules .schedule-icon{font-size:23px;margin-bottom:6px}
.site-shell .enrollment-schedules .schedule-hours{font-size:26px;margin:8px 0;line-height:1.2}
.site-shell .enrollment-schedules p{font-size:13px}
@media(max-width:560px){.site-shell .enrollment-schedules .card{padding:14px 18px}.site-shell .enrollment-schedules .schedule-hours{font-size:24px}}

.site-shell .enrollment-visit .button{flex:none;align-self:center;width:auto;min-height:36px;padding:8px 14px;font-size:13px;line-height:1.3;border-radius:9px;white-space:normal;text-align:center}
@media(max-width:560px){.site-shell .enrollment-visit .button{align-self:flex-start;min-height:44px}}

.site-shell .documents-logo-background::before{width:min(28%,230px);background-position:center;opacity:.22}

.site-shell .contact-visit-button{display:inline-flex;width:auto;min-height:36px;padding:8px 14px;font-size:13px;line-height:1.3;border-radius:9px}
@media(pointer:coarse){.site-shell .contact-visit-button{min-height:44px}}

.site-shell .documents-logo-background .page-title h1{font-size:28px;margin-bottom:10px}
.site-shell .documents-logo-background .page-title>p{font-size:13px;line-height:1.6;max-width:none}
.documents-school-name{white-space:nowrap}
.site-shell .documents-logo-background .filter{font-size:12px;max-width:310px;margin-bottom:18px}
.site-shell .documents-logo-background #doc-filter{font-size:12px;padding:7px 10px;min-height:34px;border-radius:8px}
.site-shell .institutional-documents{gap:12px;align-items:start}
.site-shell .institutional-documents .card{padding:16px;border-radius:12px}
.site-shell .institutional-documents h2{font-size:20px;margin-bottom:12px}
.site-shell .institutional-documents h3{font-size:14px;line-height:1.45;margin-bottom:7px}
.site-shell .institutional-documents article{padding:12px 0}
.site-shell .institutional-documents p,.site-shell .institutional-documents .text-link{font-size:12px;margin-bottom:8px}
@media(max-width:560px){.site-shell .documents-logo-background .page-title h1{font-size:25px}.documents-school-name{white-space:normal}.site-shell .documents-logo-background #doc-filter{min-height:44px}}

.weekly-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-heading{margin-top:28px}.visit-request{padding:16px 0;border-top:1px solid #e1d6bd}.visit-request h3{margin-bottom:8px}.visit-request p{font-size:14px}.visit-request button{font-size:12px}.site-shell #visit-form button,.site-shell #menu-form button,.site-shell #staff-login button{font-size:13px;padding:8px 14px}
@media(max-width:560px){.weekly-menu-grid{grid-template-columns:1fr}}

/* Galerie în pagină și legendă discretă pentru calendar. */
.gallery-lightbox{width:min(590px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:42px 20px 18px;border:1px solid #ded7c8;border-radius:14px;background:#fffaf2;color:#244562;overflow:auto;box-sizing:border-box}
.gallery-lightbox::backdrop{background:rgba(20,35,45,.7)}
.gallery-lightbox figure{margin:0}.gallery-lightbox img{display:block;width:100%;max-height:65dvh;object-fit:contain;border-radius:8px}.gallery-lightbox figcaption{text-align:center;font-size:15px;margin-top:14px}
.gallery-lightbox button,.site-shell .calendar-current{background:#f5f3eb;color:#42606b;border:1px solid #d9ded9;border-radius:8px;min-height:36px;padding:6px 12px;font-size:13px;box-shadow:none}
.lightbox-close{position:absolute;right:10px;top:7px}.lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.lightbox-controls span{font-size:12px}
.site-shell .calendar-current{display:block;margin:0 auto 16px}.calendar-legend{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:12px}.calendar-legend li{display:flex;align-items:center;gap:7px}.calendar-legend span{width:15px;height:15px;border:1px solid #cbd7df;border-radius:4px;flex-shrink:0}.legend-course{background:#dcf3ff}.legend-vacation{background:#fbd4e5}.legend-activity{background:#dceecd}.calendar-legend .legend-theme{border:2px solid #a94b9e}.calendar-legend .legend-drill{border:2px solid #c38a22}.calendar-legend .legend-holiday{background:#fff0f1;border:2px solid #b72d46}
@media(pointer:coarse){.gallery-lightbox button,.site-shell .calendar-current{min-height:44px}}

.group-page{font-size:14px;line-height:1.75}.group-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding:0;background:none;box-shadow:none;min-height:0}.group-links a{padding:7px 11px;border:1px solid #dedbce;border-radius:8px;background:#faf8f1;font-size:12px}.group-links a[aria-current]{background:#edf3f1;border-color:#b9ccc6;color:#315b41}.group-page h2{font-size:23px}.group-page h3{font-size:19px;line-height:1.3}.group-page .card{padding:20px;transform:none}.group-page .card p:last-child{margin-bottom:0}.group-context{color:#59685c;font-size:12px}.group-development,.group-family,.group-sources{margin-top:24px}.group-development>.grid{align-items:start}.group-sources{font-size:12px}.group-sources summary{cursor:pointer;font-weight:650;color:#244562}.group-sources[open] summary{margin-bottom:16px}.group-sources li{margin-bottom:9px}.group-sources a{text-decoration:underline;overflow-wrap:anywhere}.group-family .button{padding:8px 14px;font-size:13px}.group-family .actions{align-items:center}
@media(max-width:560px){.group-page .card{padding:17px}.group-page h2{font-size:21px}.group-page h3{font-size:18px}.group-links a{min-height:44px;display:flex;align-items:center}.group-page .grid{grid-template-columns:1fr}}

.site-shell nav.group-links{border:0;border-radius:0;background:none;box-shadow:none;justify-content:flex-start}

.site-shell .hero .actions .home-discover-button{font-size:12px;line-height:1.35;padding:8px 13px;min-height:34px;border-radius:9px}
@media(pointer:coarse){.site-shell .hero .actions .home-discover-button{min-height:44px}}
/* Prezentarea de pe Acasă: paragrafe centrate, cu rânduri echilibrate. */
.site-shell .home-introduction p{max-width:760px;margin-left:auto;margin-right:auto;text-align:center;text-wrap:pretty;line-height:1.8}
.site-shell .home-introduction p{font-size:14px}
@media(max-width:560px){.site-shell .home-introduction p{font-size:13px}}
/* Banda verde păstrează înălțimea inițială și acoperă spațiul până la fundal. */
.site-shell>.demo{height:26px;min-height:26px;padding:0;margin-top:0;margin-bottom:0;background:#234d3e}

.site-shell .story-building-background .presentation-tour-button{font-size:12px;line-height:1.35;padding:7px 12px;min-height:32px;border-radius:8px}
@media(pointer:coarse){.site-shell .story-building-background .presentation-tour-button{min-height:44px}}
.site-shell .announcement-toolbar #open-teacher-editor{font-size:12px;line-height:1.35;padding:7px 12px;min-height:32px;border-radius:8px}
@media(pointer:coarse){.site-shell .announcement-toolbar #open-teacher-editor{min-height:44px}}
/* Formular compact pentru administrarea anunțurilor. */
.site-shell #teacher-editor{max-width:640px;margin:16px auto;padding:16px 18px;border-radius:12px}
.site-shell #teacher-editor h2{font-size:21px;margin-bottom:10px}
.site-shell #teacher-editor p,.site-shell #announcement-form label{font-size:12px;line-height:1.6}
.site-shell #announcement-form{gap:12px}
.site-shell #announcement-form input,.site-shell #announcement-form select,.site-shell #announcement-form textarea{font-size:13px;padding:8px 10px;border-radius:8px}
.site-shell #announcement-form textarea{min-height:110px;height:130px;resize:vertical}
.site-shell #announcement-form .actions{gap:8px;margin-top:12px}
.site-shell #announcement-form button{font-size:12px;line-height:1.35;padding:7px 12px;min-height:32px;border-radius:8px}
@media(pointer:coarse){.site-shell #announcement-form button,.site-shell #announcement-form input,.site-shell #announcement-form select{min-height:44px}}
/* Selectorul grupelor din pagina Anunțuri. */
.site-shell .announcement-toolbar .filter{width:100%;max-width:250px;font-size:12px;margin-bottom:0}
.site-shell .announcement-toolbar #announcement-filter{font-size:12px;line-height:1.35;padding:7px 10px;min-height:34px;border-radius:8px}
@media(pointer:coarse){.site-shell .announcement-toolbar #announcement-filter{min-height:44px}}
.site-shell .wrap:has(.booking-layout) .page-title h1{font-size:28px;margin-bottom:12px}
.site-shell .wrap:has(.booking-layout) .page-title p{font-size:13px}
.site-shell .booking-layout{gap:14px;align-items:start}
.site-shell .booking-layout .card{padding:16px 18px;border-radius:12px}
.site-shell .booking-layout h2{font-size:21px;margin-bottom:12px}
.site-shell .booking-layout p,.site-shell .booking-layout .text-link{font-size:12px;line-height:1.65;margin-bottom:12px}
.site-shell .booking-layout .notice{padding:10px 12px}
.site-shell .booking-layout #visit-form{gap:10px}
.site-shell .booking-layout #visit-form label{font-size:12px;line-height:1.4}
.site-shell .booking-layout #visit-form input,.site-shell .booking-layout #visit-form select{font-size:13px;line-height:1.4;padding:7px 10px;min-height:34px;border-radius:8px}
.site-shell .booking-layout #visit-form button{justify-self:start;font-size:12px;padding:7px 12px;min-height:34px;border-radius:8px}
.site-shell .booking-layout #visit-result:empty{display:none}
@media(max-width:560px){.site-shell .wrap:has(.booking-layout) .page-title h1{font-size:25px}}
@media(pointer:coarse){.site-shell .booking-layout #visit-form input,.site-shell .booking-layout #visit-form select,.site-shell .booking-layout #visit-form button{min-height:44px}}
/* Bandă superioară mai fină, fără spațiu alb până la fundal. */
.site-shell>.demo{height:16px;min-height:16px}
.site-shell{background-position:center 16px}
/* Contact: casete și texte mai compacte. */
.site-shell .contact-flags .page-title{padding:14px 16px;margin-bottom:18px}
.site-shell .contact-flags .page-title h1{font-size:28px;margin-bottom:0}
.site-shell .contact-flags .page-title>p:empty{display:none}
.site-shell .contact-flags .grid{gap:14px;align-items:start}
.site-shell .contact-flags .card{padding:16px 18px;border-radius:12px}
.site-shell .contact-flags .card h2{font-size:21px;margin-bottom:12px}
.site-shell .contact-flags .card p{font-size:13px;line-height:1.65;margin-bottom:12px;overflow-wrap:anywhere}
.site-shell .contact-flags .contact-qr-original{width:95px;height:95px;object-fit:contain}
.site-shell .contact-flags .contact-map-original{width:100%;max-width:375px;height:190px}
.site-shell .contact-flags .contact-visit-button{font-size:12px;padding:7px 12px;min-height:34px}
@media(max-width:560px){.site-shell .contact-flags .page-title h1{font-size:25px}.site-shell .contact-flags .card h2{font-size:20px}}
@media(pointer:coarse){.site-shell .contact-flags .contact-visit-button{min-height:44px}}
.site-shell #privacy-cookies{font-size:12px;line-height:1.35;padding:7px 12px;min-height:32px;border-radius:8px}
@media(pointer:coarse){.site-shell #privacy-cookies{min-height:44px}}
.site-shell .privacy-content h2{font-size:21px;margin-top:24px}.site-shell .privacy-content h2:first-child{margin-top:0}.site-shell .privacy-content p{font-size:13px;line-height:1.75}.site-shell .privacy-content a{overflow-wrap:anywhere;text-decoration:underline}

.cookies{max-height:calc(100dvh - 40px);overflow:auto;padding:18px}.cookies h2{font-size:22px}.cookies p,.cookies label,.cookies .text-link{font-size:12px;line-height:1.6}.cookies button,.site-shell #map-cookie-settings{font-size:12px;padding:7px 12px;min-height:36px}.cookies input[type=checkbox]{width:18px;min-height:18px;margin-right:7px}.cookies .actions{gap:8px}#cookie-options{margin-top:16px}#map-preferences{margin-top:16px}

.facebook-video{max-width:320px;margin:16px auto}.facebook-video iframe{width:100%;height:570px;border:0;border-radius:10px}.facebook-video p{font-size:12px}.site-shell .facebook-video button{font-size:12px;padding:7px 12px}

.facebook-video iframe{height:auto;aspect-ratio:9/16}

/* Noutăți: casete aerisite și videoclipuri fără restricții de încorporare. */
.site-shell .news-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}.news-grid .card{min-width:0;padding:22px}.news-grid .card h3{font-size:21px;line-height:1.35}.news-grid .card p{font-size:14px;line-height:1.7}.news-grid .facebook-external-note{font-size:12px;color:#59685c;background:#edf2ec;border-radius:8px;padding:10px 12px}.news-grid .facebook-video{width:100%;max-width:320px}.news-grid iframe{display:block}.news-grid .text-link{font-size:12px}@media(max-width:640px){.site-shell .news-grid{grid-template-columns:1fr}.news-grid .card{padding:18px}}

.facebook-video.landscape iframe{aspect-ratio:16/9;height:auto}.facebook-video.portrait iframe{aspect-ratio:9/16;height:auto}

.site-shell .news-grid .facebook-video{padding:0;border:0;margin:14px 0;width:100%;max-width:320px}.news-grid .facebook-video summary{display:inline-block;font-size:12px;font-weight:600;padding:8px 12px;border:1px solid #cbd8ce;border-radius:8px;background:#edf2ec;color:#315b41;cursor:pointer}.news-grid .facebook-video[open] summary{margin-bottom:12px}.news-grid .card{height:auto;min-height:0}.news-grid .card:hover{transform:none}

.activity-archive-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 22px}.activity-archive-nav a{font-size:13px}.archive-year{font-size:12px;padding:7px 12px;border:1px solid #d9dfd2;border-radius:8px;background:#edf2ec;color:#315b41}.archive-introduction{padding:20px;border:1px solid #e1d6bd;border-radius:12px;background:#fffaf0}.site-shell .archive-introduction h2{font-size:22px}.archive-introduction p{font-size:14px;margin-bottom:0}

.site-shell .activity-archive-nav .archive-button{font-size:13px;padding:9px 15px;line-height:1.4}

/* Casete și navigare pentru activități. */
.site-shell .news-grid{gap:18px;align-items:stretch}.site-shell .news-grid .news-card{padding:20px;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start}.site-shell .news-card h3{font-size:20px;line-height:1.35;margin:12px 0}.site-shell .news-card>p{font-size:14px;line-height:1.7;margin:0 0 16px}.site-shell .news-card>p.muted{font-size:12px;margin-bottom:12px}.news-card>.text-link{margin-top:auto;padding-top:12px;font-size:12px}.news-card .tag{font-size:10px}.news-card .facebook-video{align-self:center}.news-cover{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px;margin-bottom:12px}.activity-page-cover{margin:0 0 24px;position:relative;border-radius:12px;overflow:hidden}.activity-page-cover img{display:block;width:100%;height:180px;object-fit:cover}.activity-page-cover figcaption{position:absolute;bottom:0;left:0;right:0;padding:20px 16px 10px;background:linear-gradient(transparent,#173b32cf);color:white;font-size:12px}.archive-months{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.site-shell .archive-months button{font-size:12px;padding:8px 13px;min-height:36px;background:#f5f5ec;color:#315b41;border:1px solid #d6dece;border-radius:8px}.site-shell .archive-months button[aria-pressed=true]{background:#315b41;color:white;border-color:#315b41}.archive-months span{opacity:.8}.site-shell .news-grid .facebook-video summary{font-size:12px;padding:8px 12px;min-height:36px}.site-shell .activity-archive-nav .archive-button{min-height:36px}@media(max-width:640px){.site-shell .news-grid .news-card{padding:18px}.site-shell .news-card h3{font-size:19px}.activity-page-cover img{height:145px}.assistant-button{position:static;display:block;width:fit-content;margin:16px 16px 16px auto;font-size:12px;padding:8px 13px}.site-shell .forest-header #menu-toggle{min-height:40px}body:has(.news-grid){padding-bottom:0}}
/* Aceeași formă pentru toate butoanele site-ului. */
:root{--button-radius:8px}
button,.button,input[type=submit],input[type=button],input[type=reset],[role=button],.forest-header nav a,.group-links a,.facebook-video summary{border-radius:var(--button-radius)!important}
/* Asistent public pentru părinți. */
#assistant{width:min(410px,calc(100vw - 28px));max-height:80vh;padding:20px;box-shadow:0 12px 45px #203e3930}#assistant h2{font-size:22px;margin:0}#assistant .assistant-intro,#assistant .assistant-method{font-size:12px;line-height:1.6}#assistant #faq-buttons{display:flex;flex-wrap:wrap;gap:7px}#assistant #faq-buttons button{padding:7px 10px;font-size:12px}#assistant-question-form{margin-top:18px}#assistant-question-form label{font-size:12px;margin-bottom:7px}.assistant-input-row{display:flex;gap:7px;align-items:center}.assistant-input-row input{min-width:0;margin:0;padding:9px;font-size:13px}.assistant-input-row button{padding:9px 12px;font-size:12px}#faq-answer:not(:empty){margin-top:16px;background:#edf2ec;border:1px solid #d8e1d5;border-radius:10px;padding:14px}#faq-answer p{font-size:13px;line-height:1.7;margin:8px 0}#faq-answer strong{font-size:14px}#faq-answer a{font-size:12px}.assistant-method{color:#59685c}@media(max-width:640px){#assistant{right:14px;bottom:14px;max-height:calc(100dvh - 28px)}}

.page-scroll-control{position:fixed;right:2px;top:30vh;height:40vh;width:26px;margin:0;padding:3px;box-sizing:border-box;z-index:90;writing-mode:vertical-lr;direction:ltr;accent-color:#54765b;cursor:ns-resize;touch-action:none;opacity:.75;border-radius:12px;background:rgba(250,248,240,.85)}
.page-scroll-control:hover,.page-scroll-control:focus-visible{opacity:1}
.page-scroll-control[hidden]{display:none}
@media print{.page-scroll-control{display:none}}
.optional-section{margin-top:24px;scroll-margin-top:20px}.optional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.site-shell .optional-card{padding:0;overflow:hidden}.optional-card img{display:block;width:100%;height:190px;object-fit:cover}.optional-body{padding:18px}.site-shell .optional-body h3{font-size:20px;margin:0 0 8px}.site-shell .optional-body p,.optional-section>p{font-size:13px;line-height:1.65}.optional-intro{color:#315640;font-weight:600}.optional-body dl{margin:14px 0 0}.optional-body dl>div{display:grid;grid-template-columns:90px 1fr;gap:8px;padding:7px 0;border-top:1px solid #e1e6d8;font-size:13px}.optional-body dt{font-weight:600}.optional-body dd{margin:0}.optional-price{color:#315640;font-weight:700}.optional-note{font-size:12px;line-height:1.6}.optional-body .optional-note{background:#f4f6ee;padding:10px;border-radius:8px}@media(max-width:650px){.optional-grid{grid-template-columns:1fr}.optional-card img{height:auto;aspect-ratio:3/2}}
.site-shell .fees-admin fieldset{border:1px solid #d5dece;border-radius:8px;margin:16px 0;padding:14px;min-width:0}.fees-admin legend{font-size:15px;font-weight:600;color:#315640;padding:0 6px}
.family-benefits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.site-shell .fees-family-benefits{margin:20px 0;padding:20px}.site-shell .fees-family-benefits h2{font-size:21px}.site-shell .fees-family-benefits h3{font-size:16px;margin:10px 0 6px;color:#315640}.site-shell .fees-family-benefits p{font-size:13px;line-height:1.65}
.site-shell .estimate-optionals{min-width:0;padding:14px;border:1px solid #d5dece;border-radius:8px;margin:16px 0}.estimate-optionals legend{font-size:15px;font-weight:600;color:#315640}.estimate-optional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-shell .estimate-optional-choice{display:flex;align-items:center;gap:9px;font-size:13px;min-width:0}.site-shell .estimate-optional-choice input{width:18px;height:18px;min-height:0;margin:0;flex-shrink:0;accent-color:#315640}.estimate-optional-choice small{display:block;font-size:12px;margin-top:3px}.estimate-optional-choice:has(input:disabled){opacity:.55}.site-shell .estimate-safety-days{max-width:230px;font-size:13px;margin-top:14px}.site-shell .estimate-safety-days input{font-size:13px;padding:8px;min-height:38px}.estimate-included{color:#315640;font-weight:600}.fee-calculator-result{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:700px){.fee-calculator-result,.family-benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.fee-calculator-result,.family-benefits-grid,.estimate-optional-grid{grid-template-columns:1fr}}
.activity-admin-list>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #d5dece}.activity-admin-list strong{flex:1;min-width:130px}.site-shell .activities-admin p,.site-shell .activities-admin label{font-size:13px}.activities-admin fieldset{min-width:0;border:1px solid #d5dece;border-radius:8px;padding:14px}.optional-placeholder{height:150px;display:grid;place-items:center;background:#eaf0e0;color:#54765b;font-size:45px}.activities-admin form{margin-top:18px}.activities-admin textarea{min-height:90px}.activities-admin form[hidden]{display:none}

.schedule-admin form{margin-top:1.2rem;padding-top:1rem;border-top:1px solid #e0e7df}.schedule-editor-row{display:grid;grid-template-columns:110px 110px 1fr auto;gap:10px;align-items:end;margin-bottom:12px}.schedule-admin fieldset{border:1px solid #dce5da;border-radius:10px;padding:14px;margin:12px 0}.schedule-admin legend{font-weight:600;padding:0 6px}.schedule-admin textarea{min-height:70px}.optional-schedule-change{background:#edf3e9;border-left:3px solid #8da98b;padding:10px;font-size:.88rem}@media(max-width:650px){.schedule-editor-row{grid-template-columns:1fr 1fr}.schedule-editor-row label:nth-child(3){grid-column:1/-1}}

.content-admin>details{border-top:1px solid #dae4d7;padding:14px 0}.content-admin summary{cursor:pointer;font-weight:600;font-size:.95rem}.content-admin form{margin-top:14px}.content-admin fieldset{border:1px solid #dce5da;border-radius:10px;padding:14px;margin:12px 0}.content-admin textarea{min-height:90px}.content-field-list{max-height:65vh;overflow-y:auto;margin:14px 0}.content-field-list>details{padding:12px;border-bottom:1px solid #e4e9e1}.content-field-list p{overflow-wrap:anywhere}.admin-index{margin-bottom:22px}.admin-index .actions{display:flex;flex-wrap:wrap;gap:8px}.admin-index .button{font-size:.82rem;padding:8px 12px}.calendar-editor-list,.team-editor-list{max-height:65vh;overflow:auto;padding:2px}

/* Compact controls limited to the administration panel. */
.site-shell #staff-panel button:not(#menu-toggle),
.site-shell #staff-panel .button {
  min-height: 32px;
  width: auto;
  padding: 6px 11px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  border: 1px solid #84243c;
  border-radius: 6px !important;
  background: #992d48;
  color: #fff;
  box-shadow: none;
  text-align: center;
  vertical-align: middle;
}
.site-shell #staff-panel button:not(#menu-toggle):hover:not(:disabled),
.site-shell #staff-panel .button:hover {
  background: #84243c;
  border-color: #712037;
}
.site-shell #staff-panel button:not(#menu-toggle):focus-visible,
.site-shell #staff-panel .button:focus-visible {
  outline: 2px solid #794354;
  outline-offset: 3px;
}
.site-shell #staff-panel button:not(#menu-toggle):disabled {
  opacity: .55;
  cursor: wait;
}
.site-shell #staff-panel .admin-index {
  display: block;
}
.site-shell #staff-panel .admin-index h2 {
  text-align: center;
}
.site-shell #staff-panel .admin-index .actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 8px;
  max-width: 600px;
  margin: 12px auto 0;
}
.site-shell #staff-panel .admin-index .button {
  display: inline-flex;
  flex: 0 0 calc((100% - 16px) / 3);
  box-sizing: border-box;
  min-width: 0;
  max-width: none;
  height: 40px;
  min-height: 40px;
  padding: 4px 10px;
  font-size: 11px;
  line-height: 1.25;
  align-items: center;
  justify-content: center;
  white-space: normal;
  overflow-wrap: anywhere;
}
@media (max-width: 640px) {
  .site-shell #staff-panel .admin-index .button {
    flex-basis: calc((100% - 8px) / 2);
  }
}
@media (max-width: 420px) {
  .site-shell #staff-panel .admin-index .button {
    flex-basis: 100%;
    max-width: 220px;
  }
}
#staff-panel .actions {
  gap: 7px;
  align-items: center;
}
#staff-panel .visit-request .actions {
  margin-top: 12px;
}
#staff-panel .visit-delete-result:empty {
  display: none;
}
@media (pointer: coarse) {
  .site-shell #staff-panel button:not(#menu-toggle),
  .site-shell #staff-panel .button {
    min-height: 40px;
    padding: 8px 12px;
  }
}

/* Compact entry controls for documents and announcements. */
.site-shell button#open-documents-editor:not(#menu-toggle),
.site-shell button#open-documents-delete:not(#menu-toggle),
.site-shell button#open-teacher-editor:not(#menu-toggle),
.site-shell button#save-announcement:not(#menu-toggle),
.site-shell #documents-delete-form button:not(#menu-toggle),
.site-shell #documents-upload-form button:not(#menu-toggle) {
  width: auto;
  min-width: 0;
  min-height: 30px;
  padding: 5px 9px;
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.3;
  border: 1px solid #84243c;
  border-radius: 6px !important;
  background: #992d48;
  color: #fff;
  box-shadow: none;
}
@media (pointer: coarse) {
  .site-shell button#open-documents-editor:not(#menu-toggle),
  .site-shell button#open-documents-delete:not(#menu-toggle),
  .site-shell button#open-teacher-editor:not(#menu-toggle),
  .site-shell button#save-announcement:not(#menu-toggle),
  .site-shell #documents-delete-form button:not(#menu-toggle),
.site-shell #documents-upload-form button:not(#menu-toggle) {
    min-height: 40px;
    padding: 7px 10px;
  }
}

/* Use the available page width, excluding the native scrollbar. */
/* Equal, compact burgundy controls on the news page, including video toggles. */
.site-shell #news-link-editor textarea {
  width: 100%;
  box-sizing: border-box;
  min-height: 72px;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.5;
  resize: vertical;
}
.site-shell #news-link-editor #news-link-description { min-height: 150px; }
.site-shell .news-card h3 { overflow-wrap: anywhere; }
.site-shell .news-card > p:not(.muted) { white-space: pre-line; overflow-wrap: anywhere; }
.site-shell .news-page .news-grid .facebook-video.landscape { width: 100%; max-width: 100%; }
.site-shell .news-page .news-grid .facebook-video.landscape iframe { width: 100%; height: auto; aspect-ratio: 16 / 9; }
@media (max-width: 640px) {
  .site-shell #news-link-editor textarea { font-size: 16px; }
}
.site-shell .news-page button:not(#menu-toggle),
.site-shell .news-page .activity-archive-nav .button,
.site-shell .news-page .news-grid .facebook-video summary {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  width: 176px;
  max-width: 100%;
  min-width: 0;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #84243c;
  border-radius: 6px !important;
  background: #992d48;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  white-space: normal;
  box-shadow: none;
  cursor: pointer;
}
.site-shell .news-page button:not(#menu-toggle):hover:not(:disabled),
.site-shell .news-page .activity-archive-nav .button:hover,
.site-shell .news-page .news-grid .facebook-video summary:hover { background: #84243c; color: #fff; }
.site-shell .news-page button:not(#menu-toggle):focus-visible,
.site-shell .news-page .activity-archive-nav .button:focus-visible,
.site-shell .news-page .news-grid .facebook-video summary:focus-visible { outline: 2px solid #794354; outline-offset: 3px; }
.site-shell .news-page button:disabled { opacity: .55; cursor: default; }
.site-shell .news-page .activity-archive-nav { justify-content: center; gap: 8px; }
.site-shell .news-page .news-grid .facebook-video summary { list-style: none; }
.site-shell .news-page [hidden] { display: none !important; }
@media (pointer: coarse), (max-width: 640px) {
  .site-shell .news-page button:not(#menu-toggle),
  .site-shell .news-page .activity-archive-nav .button,
  .site-shell .news-page .news-grid .facebook-video summary { min-height: 40px; }
}

#assistant{width:min(410px,calc(100% - 28px))}
body:has(#assistant:not([hidden]),#cookies:not([hidden])) .page-scroll-control{visibility:hidden;pointer-events:none}
@media(max-width:640px){
  .site-shell nav.group-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .site-shell nav.group-links a{min-width:0;white-space:normal;overflow-wrap:anywhere;justify-content:center;text-align:center}
  .site-shell .estimate-optional-grid{grid-template-columns:1fr}
  .site-shell .estimate-optional-choice{min-height:44px}
  #assistant-close{min-width:44px;min-height:44px;flex-shrink:0}
  #assistant-question{font-size:16px}
  .site-shell .booking-layout #visit-form input,.site-shell .booking-layout #visit-form select{font-size:16px;min-height:44px}
}

/* Compact panoramic tour, followed by the existing photo gallery. */
.site-shell .virtual-tour{margin-bottom:30px;padding:22px;min-width:0}
.virtual-tour-intro{display:flex;gap:14px;align-items:flex-start;max-width:660px;margin:0 auto 20px}
.virtual-tour-intro h2{margin:0 0 8px}.virtual-tour-intro p{margin:0;font-size:14px;line-height:1.6}
.virtual-tour-badge{background:#345c49;color:#fff3c9;padding:10px;border-radius:50%;font-weight:700;font-size:14px;flex-shrink:0}
#virtual-tour-frame{display:block;width:100%;height:320px;max-width:none;margin:0 auto;border:0;border-radius:14px}
.virtual-tour-navigation{display:flex;max-width:none;margin:12px auto;align-items:center;gap:12px;justify-content:space-between}
.virtual-tour-navigation p{text-align:center;margin:0;line-height:1.5;font-size:14px}.virtual-tour-navigation p span{display:block;font-size:12px;color:#65756d}
.site-shell .virtual-tour-navigation button{min-height:44px;min-width:44px;padding:8px;background:#f5f3eb;color:#345c49;border:1px solid #cad7cc;border-radius:9px;box-shadow:none}
.virtual-tour-choice{display:flex;gap:14px;align-items:center;max-width:none;margin:14px auto;font-size:13px;font-weight:600}.virtual-tour-choice select{min-width:0;flex:1}
.virtual-tour-scenes{display:flex;gap:9px;overflow:auto;padding:5px 2px 12px;margin:16px 0 0;scrollbar-width:thin;scroll-snap-type:x proximity}
.site-shell .virtual-tour-scenes button{flex:0 0 116px;white-space:normal;padding:6px;background:#fffcf6;color:#344f43;border:1px solid #d5dccf;border-radius:9px;box-shadow:none;scroll-snap-align:start;text-align:left}
.virtual-tour-scenes img{display:block;width:100%;height:52px;object-fit:cover;border-radius:5px}.virtual-tour-scenes span{display:block;font-size:11px;line-height:1.4;margin:6px 2px;min-height:30px}
.site-shell .virtual-tour-scenes button[aria-pressed=true]{border:2px solid #345c49;background:#edf3e9;padding:5px}.virtual-tour-hint{font-size:12px;text-align:center;color:#65756d;margin:8px 0 0}
@media(max-width:560px){.site-shell .virtual-tour{padding:13px}.virtual-tour-intro{gap:10px}.virtual-tour-intro h2{font-size:20px}.virtual-tour-choice{display:block}.virtual-tour-choice select{display:block;width:100%;margin-top:6px}.virtual-tour-scenes{margin-top:10px}}
#main .virtual-tour-scenes{flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;width:100%;min-height:0;background:none;border:0;box-shadow:none;border-radius:0}
#main .virtual-tour-scenes button{background:#fffcf6;color:#344f43;border-color:#d5dccf;box-shadow:none}
#main .virtual-tour-scenes button[aria-pressed=true]{background:#edf3e9;border-color:#345c49;color:#234e37}
#main .virtual-tour .virtual-tour-scenes button[data-panorama][aria-pressed]{background:#fffcf6;color:#344f43;border:1px solid #d5dccf;box-shadow:none}
#main .virtual-tour .virtual-tour-scenes button[data-panorama][aria-pressed=true]{background:#edf3e9;color:#234e37;border:2px solid #345c49}

/* Keep the ten main navigation links balanced without changing their colors. */
.site-shell .forest-header #nav>a{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;max-width:none;text-align:center;grid-column:auto;min-height:34px;height:100%;padding:3px 9px}
.site-shell .forest-header #nav>a>span:last-child{white-space:normal;line-height:1.35}
@media(min-width:1001px){.site-shell .forest-header #nav{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}}
@media(min-width:701px) and (max-width:1000px){.site-shell .forest-header #nav>a:nth-last-child(2){grid-column:2}.site-shell .forest-header #nav>a:last-child{grid-column:3}}
@media(max-width:700px){.site-shell .forest-header #nav>a{min-height:36px}}
.site-shell #staff-login :is(#staff-password,#staff-username){min-height:32px;height:32px;padding:4px 10px;font-size:16px;line-height:1.3}
/* Compact fields only in the requested administration forms; text areas keep their size. */
.site-shell #staff-panel nav.admin-index{border-radius:16px;overflow:hidden}
.site-shell #fees-form input,
.site-shell #school-schedule-form input,
.site-shell #optional-schedule-form input,
.site-shell #site-settings-form input,
.site-shell #publication-admin select,
.site-shell #publication-admin input[name="date"],
.site-shell #publication-admin input[name="schoolYear"],
.site-shell #visual-media-form input:not([type="checkbox"]),
.site-shell #visual-media-form select{min-height:32px;height:32px;padding:4px 10px;font-size:14px;line-height:1.3;min-width:0;box-sizing:border-box}
.site-shell #school-schedule-form .schedule-program-times{grid-template-columns:repeat(4,minmax(0,1fr));max-width:680px;align-items:end}
.site-shell #school-schedule-form .schedule-program-times label{min-width:0}
.site-shell #school-schedule-form .schedule-editor-row{grid-template-columns:160px 160px minmax(0,1fr) auto}
.site-shell #school-schedule-form .schedule-editor-row label{min-width:0}
.site-shell #school-schedule-form input[type="time"],
.site-shell #site-settings-form input[type="time"]{padding-inline:6px;font-variant-numeric:tabular-nums}
.site-shell #visual-media-form input[type="file"]{height:auto;min-height:32px;padding:3px 6px}
@media(max-width:850px){.site-shell #school-schedule-form .schedule-program-times{grid-template-columns:repeat(2,minmax(0,1fr));max-width:380px}.site-shell #school-schedule-form .schedule-editor-row{grid-template-columns:minmax(140px,1fr) minmax(140px,1fr)}.site-shell #school-schedule-form .schedule-editor-row label:nth-child(3){grid-column:1/-1}.site-shell #school-schedule-form .schedule-editor-row button{justify-self:start}}
@media(max-width:560px){.site-shell #fees-form input,.site-shell #school-schedule-form input,.site-shell #optional-schedule-form input,.site-shell #site-settings-form input,.site-shell #publication-admin select,.site-shell #publication-admin input[name="date"],.site-shell #publication-admin input[name="schoolYear"],.site-shell #visual-media-form input:not([type="checkbox"]),.site-shell #visual-media-form select{font-size:16px}.site-shell #school-schedule-form .schedule-program-times,.site-shell #school-schedule-form .schedule-editor-row{grid-template-columns:minmax(0,1fr)}.site-shell #school-schedule-form .schedule-program-times{max-width:240px}}
body #assistant-toggle.assistant-button{width:auto;min-width:0;height:32px;min-height:32px;padding:5px 10px;font-size:12px;line-height:1.3}
.site-shell footer .anpc-sal-badge{width:200px;height:40px;max-width:100%;margin:10px auto 0;object-fit:contain}
.site-shell footer .consumer-protection-links{width:max-content;max-width:100%}
.site-shell footer a[href="https://anpc.ro/"]{text-align:left}
.site-shell>footer{grid-template-columns:1.2fr 1.45fr 1.35fr;align-items:start}
.site-shell footer>section{min-width:0}
.site-shell footer>section>h2{font:650 14px/1.4 system-ui,sans-serif;color:inherit;margin:0 0 15px}
@media(max-width:700px){.site-shell>footer{grid-template-columns:minmax(0,1fr)}}
.site-shell footer .footer-note .footer-admin-link{width:fit-content;margin:10px 0 0;font-size:11px;color:inherit;opacity:.85}

/* Compact program cards: photographs fade into the cream, never enlarge the row. */
.site-shell .enrollment-schedules .card{position:relative;min-height:132px;padding:16px 46% 16px 16px;background:#fff8e9;overflow:hidden}
.site-shell .enrollment-schedules .schedule-photo{position:absolute;right:0;top:0;width:48%;height:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(to right,transparent,#000 22%,#000 78%,transparent),linear-gradient(to bottom,transparent,#000 15%,#000 85%,transparent);mask-composite:intersect;pointer-events:none}
.site-shell .enrollment-schedules h2{position:relative;font-size:18px;margin-bottom:8px;line-height:1.25}
.site-shell .enrollment-schedules .schedule-hours{position:relative;font-size:21px;margin:6px 0;white-space:nowrap}
.site-shell .enrollment-schedules p{position:relative;font-size:12px}
@media(max-width:560px){.site-shell .enrollment-schedules .card{min-height:125px;padding:16px 47% 16px 16px}.site-shell .enrollment-schedules .schedule-photo{width:49%}.site-shell .enrollment-schedules h2{font-size:18px}.site-shell .enrollment-schedules .schedule-hours{font-size:21px}}

/* Individual group artwork: preserve the complete image and its embedded labels. */
.site-shell .enrollment-ages .group-picture-card{padding:0;overflow:hidden;background:transparent;border:0;box-shadow:none}
.site-shell .group-picture{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain}
@media(max-width:560px){.site-shell .enrollment-ages{grid-template-columns:repeat(2,minmax(0,1fr))}}
