*{margin:0;padding:0;box-sizing:border-box}:root{--primary-green: #2c6e49;--light-green: #4a8f6a;--accent-green: #7db46c;--soft-beige: #f7f5f3;--light-grey: #f8f9fa;--white: #fff;--dark-text: #2c3e50;--light-text: #6c757d;--shadow: rgb(0 0 0 / 10%);--soft-shadow: rgb(0 0 0 / 5%);--transition: all .3s ease}body{font-family:Lato,sans-serif;line-height:1.6;color:var(--dark-text);background-color:var(--soft-beige);overflow-x:hidden;transition:var(--transition)}[dir=rtl]{font-family:Noto Sans Arabic,sans-serif}html{scroll-behavior:smooth}.container{max-width:85vw;margin:0 auto;padding:0 20px}.page-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--primary-green),var(--light-green));display:flex;justify-content:center;align-items:center;z-index:9999;opacity:1;visibility:visible;transition:opacity .5s ease,visibility .5s ease}.page-loader.hidden{opacity:0;visibility:hidden}.loader-content{text-align:center;color:#fff;animation:loaderPulse 2s ease-in-out infinite}.loader-logo{font-size:clamp(2rem,5vw,3rem);font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgb(0 0 0 / 30%)}.loader-spinner{width:60px;height:60px;border:4px solid rgb(255 255 255 / 30%);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.section-header{text-align:center;margin-bottom:3rem;opacity:0;transform:translateY(30px);animation:sectionHeaderSlide .8s ease-out forwards}[dir=rtl] .section-header{text-align:center}.section-header h2{font-size:clamp(2rem,5vw,2.8rem);color:var(--primary-green);margin-bottom:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.section-divider{width:80px;height:4px;background:linear-gradient(90deg,var(--accent-green),var(--light-green));margin:0 auto 1.5rem;border-radius:2px}.section-description{font-size:clamp(1rem,3vw,1.2rem);color:var(--light-text);max-width:600px;margin:0 auto;line-height:1.8}@keyframes navItemSlide{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes floatingParticles{0%{transform:translateY(0) rotate(0)}to{transform:translateY(-100vh) rotate(360deg)}}@keyframes heroContentSlide{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes titleGlow{0%{text-shadow:2px 2px 4px rgb(0 0 0 / 30%)}to{text-shadow:2px 2px 4px rgb(0 0 0 / 30%),0 0 30px rgb(255 255 255 / 30%)}}@keyframes subtleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes fadeInUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.gallery-modal,.landmark-modal{display:none;position:fixed;z-index:2000;left:0;top:0;width:100%;height:100%;background-color:#000000e5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:modalFadeIn .4s ease-out}.gallery-modal-content,.landmark-modal-content{position:relative;background-color:#fff;margin:2% auto;padding:clamp(1.5rem,3vw,2rem);width:90%;max-width:800px;border-radius:15px;max-height:90vh;overflow-y:auto;direction:inherit;animation:modalSlideIn .5s ease-out;box-shadow:0 25px 50px #0000007f}.modal-image{width:100%;height:auto;border-radius:10px;margin-bottom:1rem}.close-modal{color:#aaa;float:right;font-size:clamp(24px,5vw,28px);font-weight:700;cursor:pointer;line-height:1;transition:all .3s ease;border-radius:50%;width:clamp(35px,8vw,40px);height:clamp(35px,8vw,40px);display:flex;align-items:center;justify-content:center}.close-modal:hover{color:var(--primary-green);background:var(--light-grey);transform:rotate(90deg)}.header-offset{margin-top:0}@media (width <= 992px){.header-offset{margin-top:60px}}@media (width <= 480px){.header-offset{margin-top:55px}}.language-switcher{position:fixed;top:90px;right:20px;z-index:1001;display:flex;gap:5px;background:#fffffff2;border-radius:25px;padding:5px;box-shadow:0 5px 15px var(--soft-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideInRight .6s ease-out;transform:translate(0)}[dir=rtl] .language-switcher{right:auto;left:20px;animation:slideInLeft .6s ease-out}.lang-btn{background:transparent;border:none;padding:8px 12px;border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:600;color:var(--light-text);transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:5px;position:relative;overflow:hidden}.lang-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 50%),transparent);transition:left .5s ease}.lang-btn:hover:before{left:100%}.lang-btn.active,.lang-btn:hover{background:var(--primary-green);color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #2c6e494d}.navbar{background:#fffffff2;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);position:fixed;top:0;width:100%;z-index:1000;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 20px var(--soft-shadow);animation:slideDown .8s ease-out}.navbar.scrolled{background:#fffffffa;box-shadow:0 5px 30px var(--shadow);transform:translateY(0)}.nav-container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:70px;position:relative}.nav-logo h2{color:var(--primary-green);font-weight:700;font-size:clamp(1.3rem,3vw,1.8rem);animation:logoGlow 3s ease-in-out infinite alternate}.nav-menu{display:flex;list-style:none;gap:1.5rem;position:absolute;left:50%;transform:translate(-50%)}[dir=rtl] .nav-menu{flex-direction:row-reverse}@media (width <= 992px){.nav-menu,[dir=rtl] .nav-menu{flex-direction:column!important}}.nav-item{animation:navItemSlide .6s ease-out;animation-fill-mode:both}.nav-item:nth-child(1){animation-delay:.1s}.nav-item:nth-child(2){animation-delay:.2s}.nav-item:nth-child(3){animation-delay:.3s}.nav-item:nth-child(4){animation-delay:.4s}.nav-item:nth-child(5){animation-delay:.5s}.nav-item:nth-child(6){animation-delay:.6s}.nav-item:nth-child(7){animation-delay:.7s}.nav-link{text-decoration:none;color:var(--dark-text);font-weight:500;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;padding:.5rem 0;overflow:hidden;font-size:clamp(.9rem,2vw,1rem)}.nav-link:hover{color:var(--primary-green);transform:translateY(-2px)}.nav-link:after{content:"";position:absolute;width:0;height:3px;bottom:0;left:0;background:linear-gradient(90deg,var(--primary-green),var(--accent-green));transition:width .4s cubic-bezier(.4,0,.2,1);border-radius:2px}[dir=rtl] .nav-link:after{left:auto;right:0}.nav-link:hover:after{width:100%}.credits-btn{background:var(--primary-green);color:#fff;border:none;padding:8px 18px;border-radius:999px;font-weight:600;font-size:1rem;cursor:pointer;transition:background .3s,box-shadow .3s,transform .2s;display:inline-flex;align-items:center;gap:.6em;position:relative;overflow:hidden;box-shadow:0 4px 12px #2c6e492e;max-width:100vw;min-width:0;height:auto;line-height:1.1;white-space:nowrap;justify-content:center}.credits-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;pointer-events:none}.credits-btn:hover:before{left:100%}.credits-btn:hover{background:var(--light-green);transform:translateY(-2px) scale(1.04);box-shadow:0 8px 20px #2c6e4947}.credits-btn:active{transform:scale(.98)}.credits-btn i{font-size:1.1em;margin-right:.3em;display:inline-block;vertical-align:middle;animation:heartPulse 2s ease-in-out infinite}.credits-btn span{display:inline-block;vertical-align:middle;font-size:1em;font-weight:600;white-space:nowrap;margin:0}.nav-toggle{display:none;flex-direction:column;cursor:pointer;z-index:1001;padding:5px;border-radius:5px;transition:background .3s ease}.nav-toggle:hover{background:#2c6e491a}.bar{width:25px;height:3px;background-color:var(--primary-green);margin:3px 0;transition:all .4s cubic-bezier(.4,0,.2,1);border-radius:2px;transform-origin:center}.nav-toggle.active .bar:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.nav-toggle.active .bar:nth-child(2){opacity:0;transform:scale(0)}.nav-toggle.active .bar:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.lang-transition{transition:opacity .3s ease}.lang-transition.hiding{opacity:0}@media (width <= 992px){.nav-container{justify-content:space-between}.nav-menu{left:-100%;top:70px;flex-direction:column;background-color:#fffffffa;width:100%;text-align:center;transition:left .3s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 27px #0000000d;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:2rem 0;height:calc(100vh - 70px);overflow-y:auto;z-index:999;will-change:transform;position:static;transform:none}.nav-menu.active{left:0}[dir=rtl] .nav-menu{left:100%;right:-100%}[dir=rtl] .nav-menu.active{left:0;right:0}.nav-item{margin:1rem 0;opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease}.nav-menu.active .nav-item{opacity:1;transform:translateY(0)}.nav-menu.active .nav-item:nth-child(1){transition-delay:.1s}.nav-menu.active .nav-item:nth-child(2){transition-delay:.15s}.nav-menu.active .nav-item:nth-child(3){transition-delay:.2s}.nav-menu.active .nav-item:nth-child(4){transition-delay:.25s}.nav-menu.active .nav-item:nth-child(5){transition-delay:.3s}.nav-menu.active .nav-item:nth-child(6){transition-delay:.35s}.nav-menu.active .nav-item:nth-child(7){transition-delay:.4s}.nav-toggle{display:flex}.language-switcher{top:80px;right:15px}[dir=rtl] .language-switcher{left:15px;right:auto}}@media (width <= 768px){.nav-container{padding:0 15px;height:60px}.navbar{height:60px}.nav-menu{top:60px;height:calc(100vh - 60px)}.nav-logo h2{font-size:1.4rem}.language-switcher{top:70px;right:10px;padding:3px}[dir=rtl] .language-switcher{left:10px;right:auto}.lang-btn{padding:6px 10px;font-size:.8rem}}@media (width <= 480px){.nav-container{height:55px;padding:0 10px}.navbar{height:55px}.nav-menu{top:55px;height:calc(100vh - 55px);padding:1.5rem 0}.nav-logo h2{font-size:1.2rem}@media (width <= 600px){.credits-btn{font-size:.97rem;padding:7px 12px;border-radius:999px;gap:.5em;max-width:95vw}.credits-btn i{font-size:1em;margin-right:.2em}.credits-btn span{font-size:.97em}}.language-switcher{top:65px;right:5px;padding:2px}[dir=rtl] .language-switcher{left:5px;right:auto}.lang-btn{padding:5px 8px;font-size:.75rem}}@keyframes creditsSlideIn{0%{transform:translate(50px) scale(.8);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes heartPulse{0%,to{transform:scale(1);color:#fff}50%{transform:scale(1.1);color:#ffb6c1}}@media (width <= 600px){.hero{min-height:420px;padding-bottom:2.5rem;padding-top:4.5rem}.hero-content{padding:0 6px;max-width:98vw}.hero-title{font-size:2.1rem;margin-bottom:.7rem}.hero-subtitle{font-size:1rem;margin-bottom:1.2rem;line-height:1.3}.hero-stats{gap:.5rem;margin-bottom:1.2rem}.stat-item{min-width:110px;padding:.7rem .5rem;font-size:.97rem;border-radius:10px}.stat-number{font-size:1.05rem}.stat-label{font-size:.75rem}.cta-button{padding:8px 16px;font-size:.95rem;border-radius:16px;margin-top:.5rem}}.hero{height:100vh;min-height:600px;background:linear-gradient(#2c6e494d,#2c6e497f),linear-gradient(135deg,var(--primary-green),var(--light-green)),url(/assets/hero-bg-DghtJeH7.avif) center 30% / cover no-repeat fixed;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;position:relative;overflow:hidden;background-blend-mode:overlay,overlay,normal}.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgb(255 255 255 / 10%) 2px,transparent 2px),radial-gradient(circle at 80% 20%,rgb(255 255 255 / 10%) 2px,transparent 2px),radial-gradient(circle at 40% 80%,rgb(255 255 255 / 10%) 2px,transparent 2px);background-size:100px 100px,150px 150px,200px 200px;animation:floating-particles 20s linear infinite;z-index:1}@keyframes floating-particles{0%{background-position:0 0,0 0,0 0}to{background-position:200px 100px,300px 200px,400px 300px}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#2c6e4966,#4a8f6a4d);z-index:2;pointer-events:none}.hero-content{z-index:3;max-width:800px;padding:0 20px;animation:hero-content-slide 1.2s ease-out;margin:0 auto}@keyframes hero-content-slide{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.hero-title{font-size:clamp(2.5rem,8vw,4.5rem);font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgb(0 0 0 / 30%);animation:title-glow 2s ease-out,float 4s ease-in-out infinite}@keyframes title-glow{0%{text-shadow:0 0 10px #fff,0 0 20px #fff}to{text-shadow:2px 2px 4px rgb(0 0 0 / 30%)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-subtitle{font-size:clamp(1rem,4vw,1.5rem);font-weight:500;margin-bottom:2rem;opacity:0;animation:fade-in-up 1s ease-out .3s forwards,subtle-float 6s ease-in-out infinite;text-shadow:0 4px 18px rgb(0 0 0 / 65%),0 1px 0 #fff3}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes subtle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.hero-stats{display:flex;justify-content:center;gap:clamp(.7rem,2vw,1.2rem);margin-bottom:2rem;flex-wrap:wrap;opacity:0;animation:fade-in-up 1s ease-out .6s forwards}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center;padding:clamp(1rem,2.5vw,1.5rem);min-width:clamp(120px,18vw,160px);max-width:unset;height:auto;transition:all .3s cubic-bezier(.25,.8,.25,1);animation:stat-slide-up .8s ease-out;animation-fill-mode:both;position:relative;isolation:isolate;background:linear-gradient(135deg,#000c,#141414d9,#000000e5);border:1px solid rgb(255 255 255 / 20%);border-radius:12px;box-shadow:0 8px 25px #0000004d,0 2px 8px #00000026,inset 0 1px #ffffff14;outline:0 solid rgb(74 143 106 / 0%);outline-offset:0}.stat-item:hover{transform:translateY(-6px) scale(1.03);background:linear-gradient(135deg,#0a0a0ad9,#191919e5,#0a0a0af2);border-color:#4a8f6a66;box-shadow:0 12px 35px #0006,0 4px 12px #0003,inset 0 1px #ffffff1f;outline:2px solid rgb(74 143 106 / 30%);outline-offset:2px}@keyframes stat-slide-up{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.stat-item:nth-child(1){animation-delay:.2s}.stat-item:nth-child(2){animation-delay:.4s}.stat-item:nth-child(3){animation-delay:.6s}.stat-number{display:flex;align-items:center;justify-content:center;font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:900;color:#fff;text-shadow:0 2px 8px rgb(0 0 0 / 80%),0 0 20px rgb(74 143 106 / 30%);position:relative;z-index:2;letter-spacing:-.02em;line-height:1;margin-bottom:.3rem;opacity:1}.stat-label{font-size:clamp(.75rem,1.2vw,.9rem);color:#fffffff2;text-shadow:0 1px 4px rgb(0 0 0 / 80%),0 0 8px rgb(74 143 106 / 20%);position:relative;z-index:2;font-weight:500;text-transform:uppercase;letter-spacing:.8px;line-height:1.3;opacity:1}.cta-button{display:inline-block;background:linear-gradient(45deg,var(--accent-green),var(--light-green));color:#fff;padding:clamp(7px,1vw,10px) clamp(16px,3vw,22px);text-decoration:none;border-radius:22px;font-weight:600;font-size:clamp(.85rem,1.5vw,1rem);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #7db46c40;opacity:0;animation:fade-in-up 1s ease-out 1s forwards,button-pulse 3s ease-in-out infinite;position:relative;overflow:hidden;margin-top:.7rem;letter-spacing:.01em}.cta-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 30%),transparent);transition:left .6s ease}.cta-button:hover:before{left:100%}.cta-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 15px 35px #7db46c99;background:linear-gradient(45deg,var(--light-green),var(--accent-green))}@keyframes button-pulse{0%,to{box-shadow:0 5px 18px #7db46c73}50%{box-shadow:0 10px 32px #7db46ca6}}.scroll-indicator{position:absolute;bottom:30px;left:50%;transform:translate(-50%);z-index:2;animation:scroll-indicator-fade 1s ease-out 1.5s forwards;opacity:0}@keyframes scroll-indicator-fade{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.scroll-arrow{color:#fff;font-size:clamp(1.2rem,3vw,1.5rem);animation:bounce 2s infinite;cursor:pointer;transition:all .3s ease;padding:10px;border-radius:50%;background:#ffffff1a}.scroll-arrow:hover{background:#fff3;transform:scale(1.2)}@supports not (backdrop-filter: blur(1px)){.stat-item{background:linear-gradient(145deg,#000000f7,#000000fc),radial-gradient(circle at 30% 30%,rgb(255 255 255 / 10%),transparent 60%);border:4px solid rgb(255 255 255 / 70%);outline:2px solid rgb(255 255 255 / 25%);box-shadow:0 15px 50px #000000d9,0 0 0 3px #000000f2,0 6px 30px #ffffff4d inset}}.about{padding:clamp(2rem,5vw,3rem) 0;background:var(--white);position:relative;overflow:hidden}.about:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgb(125 180 108 / 5%) 0%,transparent 70%)}.about-content{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:clamp(2rem,5vw,3rem);align-items:center;position:relative;z-index:1}[dir=rtl] .about-content{grid-template-columns:1fr 1fr}.about-text{opacity:0;transform:translate(-50px);animation:slideInFromLeft 1s ease-out .3s forwards}[dir=rtl] .about-text{transform:translate(50px);animation:slideInFromRight 1s ease-out .3s forwards}.about-intro{font-size:clamp(1rem,2.5vw,1.1rem);line-height:1.8;color:var(--dark-text);margin-bottom:2rem;text-align:inherit}.about-intro:after{content:"";display:table;clear:both}.distances-info,.borders-info,.name-origin{margin-top:2rem;opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease-out forwards}.distances-info{animation-delay:1.2s}.borders-info{animation-delay:1.4s}.name-origin{animation-delay:1.6s}.distances-info h3,.borders-info h3,.name-origin h3{color:var(--primary-green);margin-bottom:1rem;font-size:clamp(1.1rem,3vw,1.3rem);position:relative}.distances-list,.borders-list{list-style:none;padding:0}.distances-list li,.borders-list li{padding:.5rem 0 .5rem 2rem;position:relative;color:var(--light-text);border-bottom:1px solid #f0f0f0;transition:all .3s ease;animation:listItemSlide .5s ease-out forwards;opacity:0;font-size:clamp(.9rem,2vw,1rem)}.distances-list li:nth-child(1){animation-delay:1.3s}.distances-list li:nth-child(2){animation-delay:1.4s}.distances-list li:nth-child(3){animation-delay:1.5s}.borders-list li:nth-child(1){animation-delay:1.5s}.borders-list li:nth-child(2){animation-delay:1.6s}.borders-list li:nth-child(3){animation-delay:1.7s}.borders-list li:nth-child(4){animation-delay:1.8s}.distances-list li:hover,.borders-list li:hover{color:var(--dark-text);transform:translate(10px);background:#7db46c1a;padding-left:2.5rem}[dir=rtl] .distances-list li,[dir=rtl] .borders-list li{padding-left:0;padding-right:2rem}[dir=rtl] .distances-list li:hover,[dir=rtl] .borders-list li:hover{transform:translate(-10px);padding-right:2.5rem}.distances-list li:before{content:"📍";position:absolute;left:0;top:.5rem;animation:iconBounce 2s ease-in-out infinite}.borders-list li:before{content:"🧭";position:absolute;left:0;top:.5rem;animation:iconRotate 3s linear infinite}[dir=rtl] .distances-list li:before,[dir=rtl] .borders-list li:before{left:auto;right:0}.about-image{position:relative;border-radius:15px;overflow:visible;box-shadow:0 15px 35px var(--shadow);aspect-ratio:4 / 3;height:auto;opacity:0;transform:translate(50px);animation:slideInFromRight 1s ease-out .6s forwards}[dir=rtl] .about-image{transform:translate(-50px);animation:slideInFromLeft 1s ease-out .6s forwards}.panorama-container{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 20px 40px #00000026,0 0 0 1px #7db46c1a;transition:all .4s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,rgb(125 180 108 / 5%) 0%,transparent 100%);margin-bottom:2rem}.panorama-container:hover{transform:translateY(-8px);box-shadow:0 25px 50px #0003,0 0 0 1px #7db46c33,0 0 40px #7db46c1a}.panorama-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.4,0,.2,1);filter:brightness(1.05) contrast(1.1) saturate(1.2)}.panorama-container:hover .panorama-image{transform:scale(1.08)}.image-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#2c6e49cc,#7db46c99,#0006);display:flex;align-items:center;justify-content:center;opacity:0;transition:all .4s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.panorama-container:hover .image-overlay{opacity:1}.overlay-content{text-align:center;color:#fff;transform:translateY(20px);transition:transform .4s cubic-bezier(.4,0,.2,1)}.panorama-container:hover .overlay-content{transform:translateY(0)}.overlay-content i{font-size:3rem;margin-bottom:1rem;display:block;animation:mountainFloat 2s ease-in-out infinite}.overlay-content span{font-size:1.2rem;font-weight:600;text-shadow:2px 2px 4px rgb(0 0 0 / 30%);letter-spacing:1px}@keyframes mountainFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}#village-panorama{width:100%;height:100%;object-fit:cover;display:block;transition:opacity 1s ease-in-out}.village-shield-container{display:flex;flex-direction:column;align-items:center;margin:2rem auto;max-width:320px;text-align:center;background:linear-gradient(135deg,#fffffff2,#f8fafce5,#f1f5f9f2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid transparent;background-clip:padding-box;box-shadow:0 8px 32px var(--shadow);border-radius:20px;padding:2rem;position:relative;overflow:hidden;transition:all .5s cubic-bezier(.4,0,.2,1)}.village-shield-container:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg at 50% 50%,#7db46c33,#2c6e494d,#7db46c33,#2c6e494d 360deg);opacity:.12;animation:conicRotate 8s linear infinite}@keyframes conicRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.village-shield-container:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 20px 40px #00000026,0 0 60px #7db46c33;border-color:#7db46c4d}.shield-wrapper{position:relative;z-index:2;display:inline-block;margin-bottom:1rem;background:linear-gradient(145deg,#fff,#fafcfffa);border-radius:15px;padding:1rem;box-shadow:inset 0 4px 12px #00000014,0 2px 8px #7db46c1a;border:1px solid rgb(125 180 108 / 15%);transition:all .3s ease}.village-shield-container:hover .shield-wrapper{box-shadow:inset 0 6px 16px #0000001f,0 4px 16px #7db46c33}.village-coat-of-arms{position:relative;width:200px;height:220px;margin:0 auto;animation:shield-glow 4s ease-in-out infinite;filter:drop-shadow(0 10px 20px rgb(0 0 0 / 25%));transition:all .4s cubic-bezier(.4,0,.2,1)}.village-coat-of-arms:hover{transform:scale(1.08) rotateY(5deg);animation-play-state:paused;filter:drop-shadow(0 15px 30px rgb(0 0 0 / 35%)) drop-shadow(0 0 20px rgb(125 180 108 / 40%))}@keyframes shield-glow{0%,to{filter:drop-shadow(0 10px 20px rgb(0 0 0 / 25%))}50%{filter:drop-shadow(0 15px 25px rgb(0 0 0 / 35%)) drop-shadow(0 0 15px rgb(125 180 108 / 30%))}}.coat-of-arms-image{width:100%;height:100%;object-fit:contain;display:block;border-radius:12px;transition:all .4s cubic-bezier(.4,0,.2,1);filter:brightness(1.1) contrast(1.15) saturate(1.2)}.village-coat-of-arms:hover .coat-of-arms-image{filter:brightness(1.2) contrast(1.25) saturate(1.3);transform:scale(1.02)}.image-glow{position:absolute;inset:-10px;background:radial-gradient(ellipse at center,rgb(125 180 108 / 30%) 0%,rgb(125 180 108 / 10%) 40%,transparent 70%);border-radius:50%;opacity:0;animation:glowPulse 3s ease-in-out infinite;z-index:-1}.village-coat-of-arms:hover .image-glow{opacity:1}@keyframes glowPulse{0%,to{opacity:.3;transform:scale(.95)}50%{opacity:.6;transform:scale(1.05)}}.shield-description{color:var(--primary-green);font-size:1rem;font-weight:600;margin:0;text-transform:uppercase;letter-spacing:.8px;margin-top:.5rem;position:relative;z-index:2;background:linear-gradient(90deg,var(--primary-green) 0%,var(--accent-green) 50%,var(--primary-green) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:all .3s ease}.shield-description:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:50px;height:2px;background:linear-gradient(90deg,transparent 0%,var(--accent-green) 50%,transparent 100%);transition:width .3s ease}.village-shield-container:hover .shield-description:after{width:80px}@media (width >= 1200px){.village-shield-container{float:right;margin:0 0 2rem 3rem;max-width:350px;clear:right}.about-intro{text-align:justify;line-height:1.8}.village-coat-of-arms{width:220px;height:240px}[dir=rtl] .village-shield-container{float:left;margin:0 3rem 2rem 0;clear:left}}@media (width >= 768px) and (width <= 1199px){.village-shield-container{float:right;margin:0 0 2rem 2rem;max-width:300px}.village-coat-of-arms{width:180px;height:200px}[dir=rtl] .village-shield-container{float:left;margin:0 2rem 2rem 0}}@media (width <= 767px){.about-content{grid-template-columns:1fr!important;gap:1.5rem}.about-image{order:-1;height:auto;aspect-ratio:auto;margin:0;overflow:visible}.panorama-container{margin-bottom:1.5rem}.panorama-image{height:250px}.village-shield-container{float:none!important;margin:1.5rem auto 0!important;padding:1.5rem;max-width:90%;width:100%;box-sizing:border-box;clear:both}.village-coat-of-arms{width:150px;height:170px}.shield-description{font-size:.9rem}.about-image .village-shield-container{float:none!important;margin:1.5rem auto 0!important;max-width:90%!important;clear:both}}@media (width <= 480px){.panorama-image{height:200px}.village-shield-container{margin:1rem auto 0!important;padding:1rem;max-width:95%}.village-coat-of-arms{width:130px;height:150px}.shield-description{font-size:.8rem;letter-spacing:.5px}.shield-wrapper{padding:.8rem}.about-image .village-shield-container{max-width:95%!important;margin:1rem auto 0!important}}@media (width >= 768px){[dir=rtl] .about-intro{text-align:justify}}.about-image .village-shield-container{float:none!important;margin:1.25rem auto 0!important;clear:both;max-width:360px}@media (width >= 1200px){.about-image .village-shield-container{max-width:380px}}.history{padding:clamp(2rem,5vw,3rem) 0;background:var(--light-grey);position:relative}.history-timeline{max-width:85vw;margin:0 auto;position:relative}.history-timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:4px;background:linear-gradient(to bottom,var(--primary-green),var(--accent-green));transform:translate(-50%);animation:timelineGrow 2s ease-out .5s both}#first-timeline-year{background:var(--light-grey);animation:none}#first-timeline-year:before{animation:none}.timeline-item{display:flex;gap:clamp(1rem,3vw,2rem);flex-direction:row;margin-bottom:3rem;padding:clamp(1.5rem,3vw,2rem);background:var(--light-grey);border-radius:15px;box-shadow:0 10px 30px var(--soft-shadow);align-items:flex-start;opacity:0;transform:translate(-50px);animation:timelineItemSlide .8s ease-out forwards;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.timeline-item:nth-child(1){animation-delay:.8s}.timeline-item:nth-child(2){animation-delay:1s}.timeline-item:nth-child(3){animation-delay:1.2s}.timeline-item:nth-child(4){animation-delay:1.4s}.timeline-item:nth-child(2n){transform:translate(50px);animation-name:timelineItemSlideRight}.timeline-item:hover{transform:translateY(-5px);box-shadow:0 20px 40px var(--shadow)}.timeline-year{background:linear-gradient(135deg,var(--primary-green),var(--light-green));color:#fff;padding:clamp(.8rem,2vw,1rem);border-radius:10px;font-weight:700;font-size:clamp(1rem,2.5vw,1.1rem);min-width:clamp(120px,25vw,150px);text-align:center;white-space:nowrap;animation:yearGlow 2s ease-in-out infinite alternate;position:relative;overflow:hidden}.timeline-year:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 30%),transparent);animation:shimmer 3s infinite}.timeline-content{flex:1}.timeline-content h3{color:var(--primary-green);font-size:clamp(1.2rem,3vw,1.5rem);margin-bottom:1rem;animation:contentSlide .6s ease-out 1.8s both}.timeline-content p{line-height:1.7;color:var(--dark-text);text-align:justify;font-size:clamp(.9rem,2vw,1rem);animation:contentFade .8s ease-out 2s both}.landmarks{padding:clamp(2rem,5vw,3rem) 0;background:var(--white)}.landmarks-grid{display:grid;justify-content:space-around;grid-template-columns:repeat(auto-fit,minmax(280px,30%));gap:clamp(1.5rem,3vw,2rem);width:100%;margin:0 auto}.landmark-card{background:var(--white);border-radius:15px;overflow:hidden;box-shadow:0 10px 30px var(--soft-shadow);transition:all .5s cubic-bezier(.4,0,.2,1);cursor:pointer;opacity:0;transform:translateY(50px);animation:landmarkCardRise .8s ease-out forwards;position:relative}.landmark-card:nth-child(1){animation-delay:.2s}.landmark-card:nth-child(2){animation-delay:.4s}.landmark-card:nth-child(3){animation-delay:.6s}.landmark-card:nth-child(4){animation-delay:.8s}.landmark-card:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent,rgb(125 180 108 / 10%),transparent);opacity:0;transition:opacity .5s ease;z-index:1;pointer-events:none}.landmark-card:hover:before{opacity:1}.landmark-card:hover{transform:translateY(-15px) scale(1.02);box-shadow:0 25px 50px var(--shadow)}.landmark-image{position:relative;height:clamp(200px,30vw,250px);overflow:hidden;background:linear-gradient(135deg,var(--primary-green),var(--light-green));display:flex;align-items:center;justify-content:center}.card-image{object-fit:contain;height:100%;width:100%;transition:transform .3s ease}.landmark-overlay{position:absolute;inset:0;background:#2c6e49e5;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .5s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(.2px);backdrop-filter:blur(.2px)}.landmark-overlay-1{position:absolute;inset:0;background:#2c6e49e5;display:flex;align-items:center;justify-content:center;opacity:1;transition:all .5s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(.2px);backdrop-filter:blur(.2px)}.landmark-card:hover .landmark-overlay{opacity:1}.landmark-overlay i{color:#fff;font-size:clamp(1.5rem,4vw,2rem);animation:iconBounce 1s ease-in-out infinite}.landmark-content{padding:clamp(1rem,3vw,1.5rem);position:relative;z-index:2}[dir=rtl] .landmark-content{text-align:right}.landmark-content h3{font-size:clamp(1.2rem,3vw,1.4rem);font-weight:600;color:var(--primary-green);margin-bottom:1rem;animation:contentSlide .6s ease-out}.landmark-meta{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap;animation:metaSlide .6s ease-out .2s both}.landmark-era,.landmark-type{background:var(--accent-green);color:#fff;padding:.3rem .8rem;border-radius:15px;font-size:clamp(.8rem,2vw,.85rem);font-weight:500;animation:tagFloat 3s ease-in-out infinite}.landmark-type{background:var(--light-green);animation-delay:1s}.learn-more-btn{background:linear-gradient(45deg,var(--primary-green),var(--light-green));color:#fff;border:none;padding:clamp(.6rem,2vw,.8rem) clamp(1.2rem,3vw,1.5rem);border-radius:25px;font-weight:600;font-size:clamp(.9rem,2vw,1rem);cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%;position:relative;overflow:hidden;animation:btnSlide .6s ease-out .4s both}.learn-more-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 30%),transparent);transition:left .6s ease}.learn-more-btn:hover:before{left:100%}.learn-more-btn:hover{transform:translateY(-3px);box-shadow:0 10px 25px #2c6e4966}.gallery{padding:clamp(2rem,5vw,3rem) 0;background:var(--white)}.gallery-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(1.5rem,3vw,2rem);max-width:1200px;margin:0 auto;padding:0 1rem}.category-card{background:#fff;border:2px solid var(--primary-green);border-radius:20px;padding:2rem 1.5rem;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;text-align:center;box-shadow:0 8px 25px #0000001a;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center}.category-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(135deg,var(--primary-green),var(--accent-green, #2d9a50));transition:left .4s ease;z-index:0}.category-card:hover:before,.category-card.active:before{left:0}.category-card:hover,.category-card.active{transform:translateY(-10px);box-shadow:0 15px 40px #2c6e494d;border-color:transparent}.category-card:hover .category-icon,.category-card.active .category-icon{color:#fff;transform:scale(1.1)}.category-card:hover .category-content,.category-card.active .category-content{color:#fff}.category-icon{position:relative;z-index:1;margin-bottom:1.5rem;transition:all .3s ease}.category-icon i{font-size:3rem;color:var(--primary-green);transition:all .3s ease}.category-content{position:relative;z-index:1;transition:all .3s ease}.category-content h3{font-size:1.4rem;font-weight:600;margin:0 0 .75rem;color:var(--primary-green);transition:all .3s ease}.category-content p{font-size:.95rem;line-height:1.5;margin:0;opacity:.8;color:var(--dark-text);transition:all .3s ease}@media (width <= 768px){.gallery-categories{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.category-card{padding:1.5rem 1rem;min-height:180px}.category-icon i{font-size:2.5rem}.category-content h3{font-size:1.2rem}.category-content p{font-size:.9rem}}.gallery-grid-container{margin-top:3rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;padding:0 1rem}.gallery-item{position:relative;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 8px 25px #0000001a;transition:all .3s ease;cursor:pointer}.gallery-item:hover{transform:translateY(-8px);box-shadow:0 15px 40px #0003}.gallery-item img{width:100%;height:250px;object-fit:cover;transition:transform .3s ease}.gallery-item:hover img{transform:scale(1.05)}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);color:#fff;padding:1.5rem 1rem 1rem;transform:translateY(100%);transition:transform .3s ease}.gallery-item:hover .gallery-overlay{transform:translateY(0)}.gallery-overlay h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.gallery-overlay p{margin:0;font-size:.9rem;opacity:.9;line-height:1.4}.progressive-image{position:relative;overflow:hidden}.progressive-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s ease}.progressive-image img.loaded{opacity:1}.progressive-image .placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;color:#999}.progressive-image .loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid var(--primary-green);border-radius:50%;animation:spin 1s linear infinite}.gallery-modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000e5}.gallery-modal.active{display:flex;align-items:center;justify-content:center}.modal-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000e5;cursor:pointer}.modal-content{position:relative;max-width:90vw;max-height:90vh;background:#fff;border-radius:15px;overflow:hidden;display:flex;flex-direction:column}.modal-image-container{position:relative;flex:1;min-height:400px;background:#000;display:flex;align-items:center;justify-content:center}.modal-image{max-width:100%;max-height:70vh;object-fit:contain;opacity:0;transition:opacity .3s ease}.modal-image.loaded{opacity:1}.modal-info{padding:1.5rem;background:#fff}.modal-title{margin:0 0 .5rem;font-size:1.4rem;color:var(--primary-green)}.modal-description{margin:0;color:var(--dark-text);line-height:1.6}.modal-close,.modal-prev,.modal-next{position:absolute;background:#000000b3;color:#fff;border:none;font-size:1.5rem;padding:1rem;cursor:pointer;transition:background .3s ease;z-index:10}.modal-close{top:1rem;right:1rem;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center}.modal-prev{left:1rem;top:50%;transform:translateY(-50%);border-radius:50%;width:50px;height:50px}.modal-next{right:1rem;top:50%;transform:translateY(-50%);border-radius:50%;width:50px;height:50px}.modal-close:hover,.modal-prev:hover,.modal-next:hover{background:#000000e5}.modal-counter{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);background:#000000b3;color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.9rem}.gallery-loading,.gallery-empty{text-align:center;padding:3rem 1rem;color:var(--dark-text);font-size:1.1rem}.gallery-loading{display:flex;align-items:center;justify-content:center;gap:1rem}.gallery-loading:before{content:"";width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid var(--primary-green);border-radius:50%;animation:spin 1s linear infinite}.gallery-empty{color:#666;font-style:italic}.optimized-gallery-item{position:relative;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 8px 25px #0000001a;transition:all .3s ease;cursor:pointer}.optimized-gallery-item:hover{transform:translateY(-8px);box-shadow:0 15px 40px #0003}.optimized-gallery-item .gallery-image{width:100%;height:250px;object-fit:cover;transition:transform .3s ease}.optimized-gallery-item:hover .gallery-image,.hover-zoom:hover .gallery-image{transform:scale(1.05)}@media (width <= 768px){.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.modal-content{max-width:95vw;max-height:95vh}.modal-image{max-height:60vh}}.map-section{padding:clamp(2rem,5vw,3rem) 0;background:var(--light-grey)}.map-container{position:relative;border-radius:15px;overflow:hidden;box-shadow:0 15px 35px var(--shadow);opacity:0;transform:translateY(30px);animation:mapSlideUp .8s ease-out .3s forwards}.map-container:hover{transform:translateY(-5px);box-shadow:0 25px 50px var(--shadow)}#interactive-map{height:75vh;width:100%;transition:all .3s ease}.custom-div-icon{background:transparent!important;border:none!important}.custom-marker{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.marker-inner{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;box-shadow:0 2px 10px #0000004d;transition:all .3s ease;z-index:2;position:relative}.marker-pulse{position:absolute;top:4px;left:4px;width:32px;height:32px;border-radius:50%;animation:pulse 2s infinite;opacity:.6}.village-marker .marker-inner,.village-marker .marker-pulse{background:#2c5530}.fortress-marker .marker-inner,.fortress-marker .marker-pulse{background:#8b4513}.mountain-marker .marker-inner,.mountain-marker .marker-pulse{background:#4a5d3a}.shrine-marker .marker-inner,.shrine-marker .marker-pulse{background:#6b46c1}.watchtower-marker .marker-inner,.watchtower-marker .marker-pulse{background:#dc2626}.mine-marker .marker-inner,.mine-marker .marker-pulse{background:#92400e}.spring-marker .marker-inner,.spring-marker .marker-pulse{background:#0891b2}.municipal-marker .marker-inner,.municipal-marker .marker-pulse{background:#1e40af}.historical-marker .marker-inner,.historical-marker .marker-pulse{background:#b45309}.valley-marker .marker-inner,.valley-marker .marker-pulse{background:#059669}.custom-marker:hover .marker-inner{transform:scale(1.2);box-shadow:0 4px 15px #0006}@keyframes pulse{0%{transform:scale(.8);opacity:.6}50%{transform:scale(1.2);opacity:.3}to{transform:scale(1.4);opacity:0}}.custom-popup .leaflet-popup-content-wrapper{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:12px;box-shadow:0 10px 30px #0003;border:1px solid #e2e8f0}.landmark-popup{padding:5px;text-align:center}.popup-title{color:#2c5530;font-size:16px;font-weight:600;margin:0 0 8px;text-align:center}.popup-description{color:#64748b;font-size:13px;line-height:1.4;margin:0 0 10px}.popup-type{display:flex;align-items:center;justify-content:center;gap:6px;padding:4px 8px;background:#f1f5f9;border-radius:20px;font-size:12px;color:#475569}.popup-type i{color:#2c5530}.boundary-popup{text-align:center;padding:5px}.boundary-popup h3{color:#2c5530;font-size:14px;margin:0 0 5px}.boundary-popup p{color:#64748b;font-size:12px;margin:0}#interactive-map{height:500px;border-radius:12px;box-shadow:0 10px 30px #00000026;overflow:hidden}@media (width <= 768px){#interactive-map{height:400px}.custom-marker{width:35px;height:35px}.marker-inner{width:28px;height:28px;font-size:12px}.marker-pulse{width:28px;height:28px;top:3.5px;left:3.5px}}.municipality{padding:clamp(2rem,5vw,3rem) 0;background:var(--white);position:relative}.municipality-text{width:100%}.municipality-content{max-width:100%;margin:0 auto}.foundation-info,.french-mandate,.current-structure{background:#fff;padding:clamp(1.5rem,3vw,2rem);border-radius:15px;margin-bottom:2rem;box-shadow:0 10px 30px var(--soft-shadow);opacity:0;transform:translateY(30px);animation:cardSlideUp .8s ease-out forwards;transition:all .4s cubic-bezier(.4,0,.2,1)}.foundation-info{animation-delay:.2s}.french-mandate{animation-delay:.4s}.current-structure{animation-delay:.6s}.foundation-info:hover,.french-mandate:hover,.current-structure:hover{transform:translateY(-5px);box-shadow:0 20px 40px var(--shadow)}.foundation-info h3,.french-mandate h3,.current-structure h3{color:var(--primary-green);font-size:clamp(1.2rem,3vw,1.5rem);margin-bottom:1rem;animation:titleSlide .6s ease-out .8s both}.foundation-info p,.french-mandate p,.current-structure p{font-size:clamp(.9rem,2vw,1rem);line-height:1.6}.structure-stats{display:flex;gap:clamp(1rem,3vw,2rem);margin-top:1rem;flex-wrap:wrap}.structure-item{text-align:center;padding:clamp(1rem,3vw,1.5rem);background:var(--light-grey);border-radius:10px;flex:1;min-width:150px;transition:all .4s cubic-bezier(.4,0,.2,1);animation:structureItemPop .6s ease-out forwards;opacity:0}.structure-item:nth-child(1){animation-delay:1s}.structure-item:nth-child(2){animation-delay:1.2s}.structure-item:hover{background:var(--primary-green);color:#fff;transform:translateY(-5px) scale(1.05)}.structure-number{font-size:clamp(2rem,5vw,2.5rem);font-weight:700;color:var(--primary-green);margin-bottom:.5rem;animation:numberPulse 2s ease-in-out infinite;transition:color .3s ease}.structure-item:hover .structure-number{color:#fff}.structure-label{font-size:clamp(.9rem,2vw,1rem)}.donation-section{background:var(--light-grey);padding:clamp(2rem,5vw,3rem) 0;position:relative;font-family:Lato,Noto Sans Arabic,sans-serif}.donation-section .container{max-width:85vw;margin:0 auto;padding:0 20px}.donation-section .section-header{text-align:center;margin-bottom:clamp(1.5rem,3vw,2.5rem)}.donation-section .section-header h2{font-size:clamp(1.6rem,3.5vw,2.2rem);color:var(--primary-green);margin-bottom:.8rem;font-weight:600}.donation-section .section-divider{width:50px;height:3px;background:var(--accent-green);margin:0 auto 1rem;border-radius:2px}.donation-section .section-description{color:var(--light-text);font-size:clamp(.95rem,2vw,1rem);max-width:500px;margin:0 auto;line-height:1.5}.donation-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(1.2rem,3vw,2rem);margin-bottom:1.5rem}.donation-contact{background:var(--white);border-radius:10px;padding:clamp(1.2rem,3vw,1.6rem);box-shadow:0 8px 22px #0000001f;transition:var(--transition)}.donation-contact:hover{transform:translateY(-2px);box-shadow:0 12px 32px #00000029,0 4px 12px #00000014;border-color:#4a8f6a26}.donation-contact h3{color:var(--primary-green);font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:1.2rem;font-weight:600}.contact-info{display:flex;flex-direction:column;gap:.8rem}.contact-item{display:flex;align-items:center;padding:.8rem;background:#7db46c0d;border-radius:6px;transition:var(--transition);gap:10px}.contact-item:hover{background:#7db46c14}.contact-item i{font-size:1rem;color:var(--primary-green);margin-right:.8rem;width:18px;text-align:center;flex-shrink:0}.contact-details{display:flex;flex-direction:column;min-width:0}.contact-label{font-size:.8rem;color:var(--light-text);margin-bottom:2px;font-weight:500}.donation-contact a{color:var(--primary-green);text-decoration:none;font-weight:600;font-size:.9rem;transition:color .2s;overflow-wrap:anywhere}.donation-contact a:hover{color:var(--light-green)}.donation-supporters{background:var(--white);border-radius:10px;padding:clamp(1.2rem,3vw,1.6rem);box-shadow:0 8px 22px #0000001f;transition:var(--transition)}.donation-supporters:hover{transform:translateY(-2px);box-shadow:0 12px 32px #00000029,0 4px 12px #00000014;border-color:#4a8f6a26}.donation-supporters h3{color:var(--primary-green);font-size:clamp(1rem,2.5vw,1.2rem);margin-bottom:1.2rem;font-weight:600}.supporters-list{margin-bottom:1.2rem}.supporter-item{display:flex;align-items:center;padding:.8rem;margin-bottom:.6rem;background:#7db46c0d;border-radius:6px;transition:var(--transition)}.supporter-item:hover{background:#7db46c14}.supporter-info{display:flex;flex-direction:column;min-width:0}.supporter-name{font-weight:600;color:var(--dark-text);margin-bottom:2px;font-size:.9rem}.supporter-contribution{font-size:.8rem;color:var(--light-text);overflow-wrap:anywhere}.community-stats{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;padding-top:1.2rem;border-top:1px solid rgb(125 180 108 / 20%)}.community-stats .stat-item{text-align:center;padding:.8rem;background:#7db46c0d;border-radius:6px}.community-stats .stat-number{display:block;font-size:1.3rem;font-weight:700;color:var(--primary-green);margin-bottom:4px;text-shadow:0 2px 8px rgb(74 143 106 / 20%),0 1px 2px rgb(0 0 0 / 10%);letter-spacing:.5px}.community-stats .stat-label{font-size:.8rem;color:var(--dark-text);font-weight:500;line-height:1.2;text-shadow:0 1px 2px rgb(74 143 106 / 10%),0 1px 2px rgb(0 0 0 / 8%);letter-spacing:.3px}.donation-cta{background:var(--white);border-radius:10px;padding:clamp(1.2rem,3vw,1.6rem);text-align:center;box-shadow:0 8px 22px #0000001f;margin-top:1.2rem}.donation-cta p{color:var(--light-text);font-size:clamp(.9rem,2vw,1rem);line-height:1.5;margin-bottom:1.2rem;max-width:450px;margin-left:auto;margin-right:auto}.credits-link{display:inline-flex;align-items:center;background:var(--primary-green);color:var(--white);padding:.65rem 1.3rem;border-radius:6px;text-decoration:none;font-weight:600;font-size:.9rem;transition:var(--transition);gap:.4rem}.credits-link:hover{background:var(--light-green);transform:translateY(-1px)}.credits-link i{font-size:.9rem}.donation-section .donation-supporters,.donation-section .donation-cta{background:var(--white);border:1px solid rgb(0 0 0 / 8%);box-shadow:0 8px 22px #0000001f,0 2px 8px #0000000f}.donation-section .donation-contact:hover,.donation-section .donation-supporters:hover,.donation-section .donation-cta:hover{transform:translateY(-2px);box-shadow:0 12px 32px #00000029,0 4px 12px #00000014;border-color:#4a8f6a26}.donation-section .contact-item,.donation-section .supporter-item,.donation-section .community-stats .stat-item{background:#7db46c0f;border:1px solid rgb(125 180 108 / 10%);transition:all .3s ease}.donation-section .contact-item:hover,.donation-section .supporter-item:hover,.donation-section .community-stats .stat-item:hover{background:#7db46c1a;border-color:#7db46c26;transform:translateY(-1px)}@media (width <= 768px){.donation-section{padding:clamp(1.5rem,4vw,2rem) 0}.donation-content{grid-template-columns:1fr;gap:1.2rem}.community-stats{grid-template-columns:1fr;gap:.6rem}.contact-item,.supporter-item{padding:.6rem}.donation-contact,.donation-supporters,.donation-cta{padding:1rem}}@media (width <= 480px){.donation-section .container{padding:0 15px}.donation-section .section-header h2{font-size:1.4rem}.donation-section .section-description{font-size:.9rem}.contact-item i{margin-right:.6rem}.credits-link{padding:.6rem 1.1rem;font-size:.85rem}}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes avatarPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes donatorGlow{0%,to{box-shadow:0 5px 15px var(--soft-shadow, rgb(0 0 0 / 10%))}50%{box-shadow:0 8px 25px #7db46c4d}}[dir=rtl] .section-header-credits h2{flex-direction:row-reverse}[dir=rtl] .back-home-btn i{transform:rotate(180deg)}.credits-body{padding-top:70px;min-height:100vh;background:var(--soft-beige, #f7f5f3)}.credits-hero{background:linear-gradient(135deg,var(--primary-green, #2c6e49),var(--light-green, #4a8f6a));color:#fff;padding:clamp(3rem,8vw,5rem) 0 clamp(2rem,5vw,3rem);text-align:center;position:relative;overflow:hidden}.credits-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgb(255 255 255 / 10%) 2px,transparent 2px),radial-gradient(circle at 80% 20%,rgb(255 255 255 / 10%) 2px,transparent 2px);background-size:100px 100px,150px 150px;animation:floatingParticles 20s linear infinite}.credits-hero-content{position:relative;z-index:2;max-width:800px;margin:0 auto;padding:0 20px}.credits-title{font-size:clamp(2rem,6vw,3.5rem);font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgb(0 0 0 / 30%);animation:titleGlow 2s ease-out}.credits-subtitle{font-size:clamp(1rem,3vw,1.3rem);font-weight:300;opacity:0;animation:fadeInUp 1s ease-out .3s forwards}.credits-container{max-width:1200px;margin:0 auto;padding:clamp(2rem,5vw,3rem) 20px}.credits-section{background:var(--white, #fff);margin-bottom:clamp(2rem,4vw,3rem);border-radius:15px;overflow:hidden;box-shadow:0 10px 30px var(--soft-shadow, rgb(0 0 0 / 10%));opacity:0;transform:translateY(30px);animation:cardSlideUp .8s ease-out forwards;transition:all .4s cubic-bezier(.4,0,.2,1)}.credits-section:nth-child(1){animation-delay:.2s}.credits-section:nth-child(2){animation-delay:.4s}.credits-section:nth-child(3){animation-delay:.6s}.credits-section:nth-child(4){animation-delay:.8s}.credits-section:hover{transform:translateY(-5px);box-shadow:0 20px 40px var(--shadow, rgb(0 0 0 / 15%))}.section-header-credits{background:linear-gradient(135deg,var(--primary-green, #2c6e49),var(--light-green, #4a8f6a));color:#fff;padding:clamp(1.5rem,3vw,2rem);position:relative;overflow:hidden}.section-header-credits:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 20%),transparent);animation:shimmer 3s infinite}.section-header-credits h2{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;margin:0;position:relative;z-index:2;display:flex;align-items:center;gap:.5rem}.section-content{padding:clamp(1.5rem,3vw,2rem)}.developers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(1rem,3vw,2rem)}.developer-card{background:var(--light-grey, #f8f9fa);border-radius:12px;padding:clamp(1.5rem,3vw,2rem);text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);border-left:4px solid var(--accent-green, #7db46c);position:relative;overflow:hidden}.developer-card:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent,rgb(125 180 108 / 10%),transparent);opacity:0;transition:opacity .3s ease}.developer-card:hover:before{opacity:1}.developer-card:hover{transform:translateY(-8px);box-shadow:0 15px 35px var(--shadow, rgb(0 0 0 / 15%));border-left-color:var(--primary-green, #2c6e49)}.developer-avatar{width:80px;height:80px;background:linear-gradient(135deg,var(--primary-green, #2c6e49),var(--accent-green, #7db46c));border-radius:50%;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;font-weight:700;animation:avatarPulse 2s ease-in-out infinite}.developer-name{font-size:clamp(1.2rem,3vw,1.4rem);font-weight:600;color:var(--primary-green, #2c6e49);margin-bottom:.5rem}.developer-role{color:var(--light-text, #666);font-style:italic;font-size:clamp(.9rem,2vw,1rem)}.data-provider-card{background:linear-gradient(135deg,var(--white, #fff),var(--light-grey, #f8f9fa));border-radius:15px;padding:clamp(1.5rem,4vw,2.5rem);text-align:center;box-shadow:0 10px 30px var(--soft-shadow, rgb(0 0 0 / 10%));border:2px solid var(--accent-green, #7db46c);position:relative;overflow:hidden;animation:cardSlideUp .8s ease-out .4s both}.data-provider-icon{font-size:clamp(2.5rem,6vw,3.5rem);color:var(--primary-green, #2c6e49);margin-bottom:1rem;animation:iconFloat 3s ease-in-out infinite}.data-provider-name{font-size:clamp(1.3rem,4vw,1.6rem);font-weight:700;color:var(--primary-green, #2c6e49);margin-bottom:1rem}.data-provider-description{color:var(--dark-text, #333);font-size:clamp(1rem,2.5vw,1.1rem);line-height:1.6}.donators-intro{text-align:center;margin-bottom:2rem}.donators-intro h3{color:var(--primary-green, #2c6e49);font-size:clamp(1.2rem,3vw,1.5rem);margin-bottom:.5rem}.donators-intro p{color:var(--light-text, #666);font-size:clamp(.9rem,2vw,1rem);line-height:1.6}.donators-container{max-width:100%}.donators-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:clamp(1rem,2vw,1.5rem)}.donator-card{background:var(--light-grey, #f8f9fa);padding:clamp(1rem,2.5vw,1.5rem);border-radius:10px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid transparent;position:relative;overflow:hidden;min-height:80px;display:flex;align-items:center;justify-content:center}.donator-card:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,var(--primary-green, #2c6e49),var(--accent-green, #7db46c));opacity:0;transition:all .4s ease;transform:scale(0)}.donator-card:hover:before{opacity:.1;transform:scale(1)}.donator-card:hover{transform:translateY(-8px) scale(1.02);border-color:var(--accent-green, #7db46c);box-shadow:0 15px 35px var(--soft-shadow, rgb(0 0 0 / 10%));animation:donatorGlow 2s ease-in-out infinite}.donator-name{font-weight:600;color:var(--primary-green, #2c6e49);font-size:clamp(.9rem,2vw,1.1rem);position:relative;z-index:2;transition:all .3s ease}.donator-card:hover .donator-name{color:var(--primary-green, #2c6e49);font-weight:700;text-shadow:0 2px 4px rgb(0 0 0 / 10%)}.donator-card.featured{background:linear-gradient(135deg,#7db46c26,#4a8f6a26);border:2px solid var(--accent-green, #7db46c)}.donator-card.featured .donator-name{color:var(--primary-green, #2c6e49);font-weight:700}.no-donators{text-align:center;padding:clamp(2rem,4vw,3rem);background:linear-gradient(135deg,#7db46c1a,#4a8f6a1a);border-radius:15px;border:2px dashed var(--accent-green, #7db46c);max-width:600px;margin:0 auto;position:relative;overflow:hidden;grid-column:1 / -1}.no-donators:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent,rgb(125 180 108 / 5%),transparent);animation:shimmer 4s infinite}.no-donators i{font-size:clamp(2.5rem,5vw,3rem);color:var(--accent-green, #7db46c);margin-bottom:1rem;animation:iconFloat 3s ease-in-out infinite;position:relative;z-index:2}.no-donators h3{color:var(--primary-green, #2c6e49);font-size:clamp(1.2rem,3vw,1.4rem);margin-bottom:1rem;font-weight:600;position:relative;z-index:2}.no-donators p{color:var(--light-text, #666);font-size:clamp(.9rem,2vw,1rem);line-height:1.6;position:relative;z-index:2}.thank-you-section{background:linear-gradient(135deg,var(--primary-green, #2c6e49),var(--light-green, #4a8f6a));color:#fff;padding:clamp(2.5rem,5vw,4rem) clamp(1rem,3vw,2rem);border-radius:20px;text-align:center;margin:clamp(2rem,4vw,3rem) 0;position:relative;overflow:hidden;animation:cardSlideUp .8s ease-out .8s both}.thank-you-section:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 30% 40%,rgb(255 255 255 / 10%) 2px,transparent 2px),radial-gradient(circle at 70% 80%,rgb(255 255 255 / 10%) 2px,transparent 2px);background-size:150px 150px,200px 200px;animation:floatingParticles 25s linear infinite}.thank-you-content{position:relative;z-index:2}.thank-you-section h2{font-size:clamp(2rem,5vw,2.8rem);font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgb(0 0 0 / 30%)}.thank-you-section p{font-size:clamp(1rem,3vw,1.2rem);line-height:1.7;opacity:.95;max-width:700px;margin:0 auto}.back-home{text-align:center;margin-bottom:clamp(2rem,4vw,3rem)}.back-home-btn{display:inline-block;background:linear-gradient(45deg,var(--accent-green, #7db46c),var(--light-green, #4a8f6a));color:#fff;padding:clamp(12px,3vw,15px) clamp(24px,5vw,30px);text-decoration:none;border-radius:30px;font-weight:600;font-size:clamp(.9rem,2.5vw,1rem);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 5px 15px #7db46c66;position:relative;overflow:hidden}.back-home-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 30%),transparent);transition:left .6s ease}.back-home-btn:hover:before{left:100%}.back-home-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 15px 35px #7db46c99}.back-home-btn i{margin-right:.5rem}[dir=rtl] .back-home-btn i{margin-right:0;margin-left:.5rem}@media (width <= 768px){.developers-grid{grid-template-columns:1fr}.donators-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.no-donators{padding:clamp(1.5rem,4vw,2rem);margin:0 10px}}@media (width <= 480px){.donators-grid{grid-template-columns:1fr 1fr;gap:.8rem}.credits-body{padding-top:60px}.section-header-credits h2{flex-direction:column;text-align:center;gap:.3rem}}.footer{background:linear-gradient(135deg,var(--primary-green),var(--light-green));color:var(--white);padding:60px 0 20px;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgb(255 255 255 / 10%) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgb(255 255 255 / 10%) 0%,transparent 50%);pointer-events:none}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;margin-bottom:40px;position:relative;z-index:1}.footer-section{animation:fadeInUp .6s ease-out}.footer-section:nth-child(2){animation-delay:.1s}.footer-section:nth-child(3){animation-delay:.2s}.footer-section:nth-child(4){animation-delay:.3s}.footer-logo h3{font-size:2rem;font-weight:700;margin-bottom:15px;color:var(--white);text-shadow:2px 2px 4px rgb(0 0 0 / 30%);animation:logoGlow 2s ease-in-out infinite}.footer-logo p{color:#ffffffe5;font-size:1.1rem;line-height:1.6;font-style:italic}.footer h3{font-size:1.3rem;font-weight:600;margin-bottom:20px;color:var(--white);position:relative;padding-bottom:10px}.footer-section h4:after{content:"";position:absolute;bottom:0;left:0;width:40px;height:2px;background:var(--accent-green);border-radius:1px}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:12px}.footer-links a{color:#ffffffd9;text-decoration:none;font-size:1rem;transition:var(--transition);position:relative;padding:5px 0;display:inline-block}.footer-links a:hover{color:var(--white);padding-left:10px;transform:translate(5px)}.footer-links a:before{content:"→";position:absolute;left:-15px;opacity:0;transition:var(--transition)}.footer-links a:hover:before{opacity:1;left:-10px}.footer-contact{display:flex;flex-direction:column;gap:15px}.footer-contact .contact-item{display:flex;align-items:center;gap:15px;color:#ffffffe5;font-size:1rem;transition:var(--transition)}.footer-contact .contact-item:hover{color:var(--white);transform:translate(5px)}.footer-contact .contact-item i{font-size:1.2rem;color:var(--accent-green);width:20px;text-align:center}.footer-contact .contact-item span{flex:1}.footer-bottom{position:relative;z-index:1}.footer-divider{height:1px;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 30%),transparent);margin:40px 0 30px}.footer-credits{text-align:center;color:#fffc;font-size:.95rem}.footer-credits p{margin-bottom:10px}.developers-credit{font-size:1rem;color:#ffffffe5}.developers-credit strong{color:var(--white);font-weight:600;text-shadow:0 1px 2px rgb(0 0 0 / 30%)}[dir=rtl] .footer-links a:hover{padding-left:0;padding-right:10px;transform:translate(-5px)}[dir=rtl] .footer-links a:before{content:"←";right:-15px;left:auto}[dir=rtl] .footer-links a:hover:before{right:-10px;left:auto}[dir=rtl] .footer-contact .contact-item:hover{transform:translate(-5px)}[dir=rtl] .footer-section h4:after{right:0;left:auto}@media (width <= 768px){.footer{padding:40px 0 15px}.footer-content{grid-template-columns:1fr;gap:30px;margin-bottom:30px}.footer-logo h3{font-size:1.7rem}.footer-section h4{font-size:1.2rem}.footer-contact .contact-item{font-size:.95rem}.footer-credits{font-size:.9rem}}@media (width <= 480px){.footer{padding:30px 0 10px;margin-top:40px}.footer-logo h3{font-size:1.5rem}.footer-logo p{font-size:1rem}.footer-section h4{font-size:1.1rem;margin-bottom:15px}.footer-contact .contact-item{font-size:.9rem;gap:12px}.footer-credits{font-size:.85rem}.developers-credit{font-size:.9rem}}.footer-section{transition:var(--transition)}.footer-section:hover{transform:translateY(-2px)}.footer-logo{border-left:4px solid var(--accent-green);padding-left:20px}[dir=rtl] .footer-logo{border-left:none;border-right:4px solid var(--accent-green);padding-left:0;padding-right:20px}@media (width >= 1400px){.container{max-width:85vw}.hero-title{font-size:5rem}.section-header h2{font-size:3.2rem}}@media (width <= 1200px){.container{padding:0 15px}.hero-stats{gap:1rem}.stat-item{padding:.8rem}.landmarks-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (width <= 992px){.nav-menu{position:fixed;left:-100%;top:70px;flex-direction:column;background-color:#fffffffa;width:100%;text-align:center;transition:.3s;box-shadow:0 10px 27px #0000000d;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:2rem 0;height:calc(100vh - 70px);overflow-y:auto;z-index:999}.nav-menu.active{left:0}[dir=rtl] .nav-menu{left:100%}[dir=rtl] .nav-menu.active{left:0}.nav-item{margin:1rem 0}.nav-toggle{display:flex}.about-content{grid-template-columns:1fr!important;gap:1.5rem}.about-image{order:-1;height:auto;aspect-ratio:auto;margin:0;overflow:visible}#village-panorama{width:100%;height:250px;object-fit:cover;border-radius:12px}.contact-content{grid-template-columns:1fr;gap:2rem}.timeline-item{flex-direction:column;text-align:center}.timeline-year{min-width:100%;justify-self:center;margin-bottom:1rem}.structure-stats{flex-direction:column;gap:1rem}.hero-stats{flex-direction:column;align-items:center;gap:1rem}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.language-switcher{top:80px;right:15px}[dir=rtl] .language-switcher{left:15px;right:auto}}@media (width <= 768px){.nav-container{padding:0 15px;height:60px}.navbar{height:60px}.nav-menu{top:60px;height:calc(100vh - 60px)}.nav-logo h2{font-size:1.4rem}.language-switcher{top:70px;right:10px;padding:3px}[dir=rtl] .language-switcher{left:10px;right:auto}.lang-btn{padding:6px 10px;font-size:.8rem}.hero{min-height:500px;padding:1rem 0}.hero-content{padding:0 15px}.cta-button{padding:12px 25px;font-size:.9rem}.section-header{margin-bottom:2rem}.about,.municipality,.history,.landmarks,.gallery,.contact,.map-section{padding:2rem 0}.foundation-info,.french-mandate,.current-structure{padding:1.5rem;margin-bottom:1.5rem}.timeline-item{padding:1.5rem;margin-bottom:2rem}.timeline-content h3{font-size:1.3rem}.landmark-content{padding:1rem}.landmarks-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.contact-form{padding:1.5rem}.contact-item{padding:1rem;flex-direction:row;text-align:left}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.footer-content{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;text-align:center}.gallery-modal-content,.landmark-modal-content{margin:5% auto;padding:1.5rem;width:95%}}@media (width <= 576px){.container{padding:0 10px}.hero{min-height:450px}.hero-stats{gap:.8rem}.stat-item{width:100%;padding:.8rem}.stat-number{font-size:1.5rem}.about-intro{font-size:1rem;text-align:inherit}.structure-number{font-size:2rem}.timeline-item{padding:1rem}.timeline-year{padding:.8rem;font-size:1rem;min-width:100%;justify-self:center}.landmarks-grid{grid-template-columns:1fr;gap:1rem}.landmark-image{height:200px}.landmark-meta{justify-content:flex-start}.gallery-filters{gap:.5rem}.filter-btn{padding:.6rem 1rem;font-size:.85rem}.gallery-grid{grid-template-columns:1fr;gap:1rem}.gallery-item{height:250px}.contact-item{padding:1rem;flex-direction:column;text-align:center;align-items:center}.contact-item i{margin-top:0;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{padding:.8rem}.submit-btn{padding:.8rem 1.5rem;font-size:1rem}.footer{padding:2rem 0 1rem}.footer-content{grid-template-columns:1fr;text-align:center}.social-links{justify-content:center}.gallery-modal-content,.landmark-modal-content{margin:5% auto;padding:1rem;width:95%;max-height:85vh}}@media (width <= 480px){.hero-title{font-size:2.2rem}.section-header h2{font-size:1.6rem}.nav-logo h2{font-size:1.2rem}.nav-container{height:55px;padding:0 10px}.navbar{height:55px}.nav-menu{top:55px;height:calc(100vh - 55px);padding:1.5rem 0}.language-switcher{top:65px;right:5px;padding:2px}[dir=rtl] .language-switcher{left:5px;right:auto}.lang-btn{padding:5px 8px;font-size:.75rem}.hero{min-height:400px}.hero-content{padding:0 10px}.cta-button{padding:10px 20px;font-size:.85rem}.stat-item{padding:.6rem;width:100%}.stat-number{font-size:1.3rem}.stat-label{font-size:.8rem}.about,.municipality,.history,.landmarks,.gallery,.contact,.map-section{padding:1.5rem 0}.section-header{margin-bottom:1.5rem}.foundation-info,.french-mandate,.current-structure{padding:1rem;margin-bottom:1rem}.structure-number{font-size:1.8rem}.structure-item{padding:1rem}.timeline-item{padding:.8rem;margin-bottom:1.5rem}.timeline-year{padding:.6rem;font-size:.9rem;min-width:100%}.timeline-content h3{font-size:1.1rem}.landmark-card{margin-bottom:1rem}.landmark-image{height:180px}.landmark-content{padding:.8rem}.landmark-content h3{font-size:1.1rem}.gallery-item{height:200px}.filter-btn{padding:.5rem .8rem;font-size:.8rem}.contact-form{padding:1rem}.contact-item{padding:.8rem}.form-group{margin-bottom:.8rem}.form-group input,.form-group select,.form-group textarea{padding:.7rem;font-size:.9rem}.form-group textarea{min-height:100px}.submit-btn{padding:.7rem 1.2rem;font-size:.9rem}.gallery-modal-content,.landmark-modal-content{margin:2% auto;padding:.8rem;width:98%;max-height:90vh}.close-modal{width:30px;height:30px;font-size:20px}}@media (width <= 360px){.container{padding:0 8px}.hero-title{font-size:1.8rem}.section-header h2{font-size:1.4rem}.nav-container{height:50px;padding:0 8px}.navbar{height:50px}.nav-menu{top:50px;height:calc(100vh - 50px)}.nav-logo h2{font-size:1.1rem}.language-switcher{top:60px;right:3px}[dir=rtl] .language-switcher{left:3px;right:auto}.hero{min-height:350px}.stat-item{padding:.5rem}.about-content{grid-template-columns:1fr!important;gap:1rem}.about-image{order:-1;height:auto;aspect-ratio:auto;margin:0;overflow:visible}#village-panorama{width:100%;height:200px;object-fit:cover;border-radius:12px}.about,.municipality,.history,.landmarks,.gallery,.contact,.map-section{padding:1rem 0}.form-group input,.form-group select,.form-group textarea,.gallery-modal-content,.landmark-modal-content{padding:.6rem}}@keyframes loaderPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideInRight{0%{transform:translate(100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-100px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes logoGlow{0%,to{text-shadow:0 0 5px rgb(44 110 73 / 30%)}50%{text-shadow:0 0 20px rgb(44 110 73 / 60%),0 0 30px rgb(44 110 73 / 40%)}}@keyframes statSlideUp{0%{transform:translateY(50px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes numberCount{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes buttonPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes scrollIndicatorFade{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes sectionHeaderSlide{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes textShimmer{0%,to{background-position:-200% center}50%{background-position:200% center}}@keyframes dividerExpand{0%{width:0}to{width:80px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes backgroundFloat{0%{transform:rotate(0) translate(0)}to{transform:rotate(360deg) translate(50px,50px)}}@keyframes slideInFromLeft{0%{transform:translate(-50px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromRight{0%{transform:translate(50px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes listItemSlide{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes iconBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.1)}}@keyframes iconRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes textFade{0%,to{opacity:.9}50%{opacity:.6}}@keyframes cardSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes titleSlide{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes structureItemPop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes numberPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes timelineGrow{0%{height:0}to{height:100%}}@keyframes timelineItemSlide{0%{transform:translate(-50px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes timelineItemSlideRight{0%{transform:translate(50px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes yearGlow{0%,to{box-shadow:0 0 5px #ffffff4d}50%{box-shadow:0 0 20px #fff9}}@keyframes contentSlide{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes contentFade{0%{opacity:0}to{opacity:1}}@keyframes landmarkCardRise{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes tagFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes btnSlide{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes filtersSlide{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes galleryItemPop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes overlaySlideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes contactItemSlide{0%{transform:translate(-30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes formSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes formFieldSlide{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes submitBtnSlide{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes metaSlide{0%{transform:translate(-15px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes mapSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes footerPattern{0%{transform:translate(0) translateY(0)}to{transform:translate(-100px) translateY(-100px)}}@keyframes footerSectionSlide{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes socialIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{transform:translateY(-50px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.auto-progressive-image{transition:filter .3s ease-out,opacity .2s ease-out;will-change:filter}.auto-progressive-image.progressive-loaded{filter:none!important}.auto-progressive-image:not(.progressive-loaded){position:relative}.auto-progressive-image:not(.progressive-loaded):after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;opacity:.7;pointer-events:none}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.auto-progressive-image.progressive-loaded:after{display:none}
