@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@600&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap";:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;font-weight:400;color:#2f281e;background-color:#f7f3ed;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}a:hover{color:#7c5b3b}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.8),transparent 35%),radial-gradient(circle at 80% 10%,rgba(255,255,255,.8),transparent 30%),url(/hatter.png) center/cover fixed}button{font-family:inherit}input,textarea,button{outline:none}:root{--text-primary: #2d5016;--text-secondary: #4a7c2c;--text-tertiary: #1a3a0a;--bg-primary: #f8f9f3;--bg-secondary: #ffffff;--bg-tertiary: #fafbf6;--accent-teal: #6b8e23;--accent-cyan: #c4a557;--accent-blue: #e6bf52;--accent-light: rgba(107, 142, 35, .12);--border-color: rgba(107, 142, 35, .08);--border-color-medium: rgba(107, 142, 35, .12);--shadow-color: rgba(45, 80, 22, .08);--shadow-color-heavy: rgba(45, 80, 22, .35);--gradient-teal-light: rgba(107, 142, 35, .12);--gradient-teal-medium: rgba(107, 142, 35, .1);--gradient-blue: rgba(143, 176, 61, .1);--gradient-primary: linear-gradient(135deg, #6b8e23, #e6bf52);--gradient-secondary: linear-gradient(90deg, rgba(107, 142, 35, .15), rgba(212, 175, 87, .15));font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-primary)}[data-theme=dark]{--text-primary: #f0e8d8;--text-secondary: #d4c28f;--text-tertiary: #fef9e8;--bg-primary: #0f0f0f;--bg-secondary: #1a1a1a;--bg-tertiary: #252525;--accent-teal: #8fb03d;--accent-cyan: #d4b85a;--accent-blue: #e6bf52;--accent-light: rgba(143, 176, 61, .15);--border-color: rgba(143, 176, 61, .12);--border-color-medium: rgba(143, 176, 61, .18);--shadow-color: rgba(15, 10, 5, .4);--shadow-color-heavy: rgba(15, 10, 5, .7);--gradient-teal-light: linear-gradient(135deg, rgba(143, 176, 61, .05), rgba(212, 175, 87, .05));--gradient-teal-medium: linear-gradient(90deg, rgba(143, 176, 61, .03), rgba(212, 175, 87, .03));--gradient-blue: linear-gradient(45deg, rgba(143, 176, 61, .03), rgba(230, 191, 82, .03));--gradient-primary: linear-gradient(135deg, #8fb03d, #e6bf52);--gradient-secondary: linear-gradient(90deg, rgba(143, 176, 61, .2), rgba(212, 175, 87, .2));--gradient-secondary: linear-gradient(90deg, rgba(143, 176, 61, .2), rgba(143, 176, 61, .2))}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 20%,var(--gradient-teal-light),transparent 28%),radial-gradient(circle at 78% 12%,var(--gradient-teal-medium),transparent 30%),radial-gradient(circle at 30% 70%,var(--gradient-blue),transparent 22%),var(--bg-primary) url(/hatter.png) center/cover no-repeat fixed;color:var(--text-primary);transition:background-color .3s ease,color .3s ease}[data-theme=dark] body{background:radial-gradient(circle at 20% 20%,var(--gradient-teal-light),transparent 28%),radial-gradient(circle at 78% 12%,var(--gradient-teal-medium),transparent 30%),radial-gradient(circle at 30% 70%,var(--gradient-blue),transparent 22%),#0f0f0f;background-attachment:fixed}#root{max-width:1280px;margin:0 auto;padding:1.5rem}.page{position:relative;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:24px;box-shadow:0 30px 80px var(--shadow-color);overflow:hidden;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}[data-theme=dark] .page{background:var(--bg-secondary)}.page:before,.page:after{content:"";position:absolute;width:240px;height:240px;background:radial-gradient(circle,var(--accent-light),transparent 55%);filter:blur(10px);z-index:0}.page:before{top:-120px;left:-120px}.page:after{bottom:-140px;right:-120px;background:radial-gradient(circle,var(--accent-light),transparent 55%)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 32px;background:linear-gradient(90deg,#fffffff2,#f0f7fbd1);border-bottom:1px solid var(--border-color);gap:12px;transition:background-color .3s ease,border-color .3s ease}[data-theme=dark] .topbar{background:linear-gradient(90deg,#0f0f0f,#1a1a1a);border-bottom-color:#8fb03d33}.topbar__brand{display:flex;align-items:center;gap:14px}.topbar__brand--clickable{display:flex;align-items:center;gap:14px;background:none;border:none;padding:0;cursor:pointer;transition:all .3s ease}.topbar__brand--clickable:hover{opacity:.8;transform:scale(1.02)}.brand__icon{width:48px;height:48px;object-fit:contain;border-radius:12px;background:#6b8e2314;padding:6px;transition:background-color .3s ease}[data-theme=dark] .brand__icon{background:#d4af571f}.brand__title{margin:0;font-weight:700;letter-spacing:.6px;color:var(--text-primary)}.brand__subtitle{margin:0;color:var(--text-secondary);font-weight:500;font-size:.95rem}.topbar__contact{display:flex;align-items:center;gap:8px;font-size:.95rem;color:var(--text-secondary);flex-wrap:wrap}.contact__phone{color:var(--accent-teal);font-weight:600}[data-theme=dark] .contact__phone{color:#d4c597;font-weight:700}.navbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 32px;border-bottom:1px solid var(--border-color);position:sticky;top:0;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;box-shadow:0 10px 40px var(--shadow-color);transition:all .3s ease}.navbar--hidden{display:none}[data-theme=dark] .navbar{background:linear-gradient(90deg,#0f0f0f,#1a1a1a);border-bottom-color:#8fb03d33;box-shadow:0 10px 40px #0006}.navbar:after{content:"";position:absolute;inset:auto 18px 0;height:3px;background:linear-gradient(90deg,var(--accent-teal),var(--accent-cyan),var(--accent-blue));border-radius:999px}.navbar__left{display:flex;align-items:center;gap:10px}.navbar__logo{width:36px;height:36px;border-radius:10px;background:#6b8e231a;padding:6px;transition:background-color .3s ease}[data-theme=dark] .navbar__logo{background:#d4af571f}.navbar__name{font-weight:700;letter-spacing:.5px;color:var(--text-primary)}.navbar__links{display:flex;flex-wrap:nowrap;gap:8px;justify-content:center;overflow-x:auto;scrollbar-width:none}.navbar__links::-webkit-scrollbar{display:none}.navbar__link{padding:8px 10px;border-radius:10px;color:var(--text-secondary);font-weight:600;transition:all .2s ease;border:none;background:transparent;white-space:nowrap;cursor:pointer}.navbar__link:hover{background:#6b8e231f;color:var(--accent-teal)}[data-theme=dark] .navbar__link:hover{background:#8fb03d33;color:#d4c597}[data-theme=dark] .navbar__link.is-active{background:#d4af5740;color:gold}.navbar__link.is-active{background:#6b8e2326;color:var(--accent-teal);border:1px solid rgba(107,142,35,.18)}[data-theme=dark] .navbar__link.is-active{background:linear-gradient(135deg,#8fb03d26,#d4af5726);color:var(--accent-cyan)}.navbar__actions{display:flex;gap:10px}.btn{background:var(--gradient-primary);color:#fff;border:1px solid rgba(107,142,35,.16);padding:10px 16px;border-radius:12px;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 10px 30px #6b8e2340}.btn:hover{transform:translateY(-1px);box-shadow:0 14px 34px #6b8e234d}[data-theme=dark] .btn{box-shadow:0 10px 30px #8fb03d40;background:var(--gradient-primary)}[data-theme=dark] .btn:hover{box-shadow:0 16px 40px #8fb03d59}[data-theme=dark] .btn--ghost{color:var(--accent-blue);border:2px solid var(--accent-teal);background:linear-gradient(135deg,#8fb03d1a,#8fb03d1a)}[data-theme=dark] .btn--ghost:hover{background:var(--gradient-secondary);color:var(--accent-blue);border-color:var(--accent-blue);box-shadow:0 4px 12px #8fb03d40}main{display:flex;flex-direction:column;gap:64px;padding:36px 32px 56px;background:radial-gradient(circle at 24% 18%,var(--gradient-teal-light),transparent 26%),radial-gradient(circle at 78% 20%,var(--gradient-teal-medium),transparent 28%);position:relative;z-index:1;transition:background .3s ease}[data-theme=dark] main{background:radial-gradient(circle at 24% 18%,var(--gradient-teal-light),transparent 26%),radial-gradient(circle at 78% 20%,var(--gradient-teal-medium),transparent 28%),var(--bg-primary)}.page__content{display:grid;gap:32px}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:28px;align-items:center;background:linear-gradient(135deg,#6b8e2314,#d4af5714);border:1px solid var(--border-color);border-radius:22px;padding:10px;transition:all .3s ease}.hero__content h1{font-family:Playfair Display,serif;font-size:clamp(2.2rem,3vw,2.8rem);margin:8px 0 12px;color:var(--text-tertiary)}.hero__lead{margin:0 0 16px;max-width:640px;color:var(--text-primary);background:var(--gradient-secondary);padding:12px 14px;border-radius:14px;border:1px solid var(--border-color-medium);transition:all .3s ease}.hero__badges{display:flex;flex-wrap:wrap;gap:8px;color:var(--accent-teal);font-weight:600}.hero__badges span{background:#6b8e231f;padding:8px 12px;border-radius:12px;border:1px solid rgba(107,142,35,.2);transition:all .3s ease}[data-theme=dark] .hero__badges span{background:linear-gradient(135deg,#8fb03d26,#d4af5726);border-color:#8fb03d4d}.hero__eyebrow{text-transform:uppercase;letter-spacing:1px;font-size:.85rem;color:var(--accent-teal);margin:0}.hero__visual{background:linear-gradient(145deg,rgba(240,165,0,.12),var(--bg-secondary));border-radius:20px;padding:20px;border:1px solid var(--border-color-medium);display:flex;flex-direction:column;gap:14px;box-shadow:inset 0 1px #fff9,0 14px 40px var(--shadow-color);transition:all .3s ease}[data-theme=dark] .hero__visual{box-shadow:inset 0 1px #ffffff1a,0 14px 40px var(--shadow-color)}.visual__frame{background:#6b8e231a;border-radius:16px;border:1px dashed rgba(107,142,35,.2);min-height:200px;display:grid;place-items:center;color:var(--accent-teal);transition:all .3s ease}[data-theme=dark] .visual__frame{background:#8fb03d14;border-color:#8fb03d4d;color:var(--accent-cyan)}.visual__details{display:flex;flex-wrap:wrap;gap:10px;color:var(--accent-teal);font-weight:600}.visual__details span{background:var(--bg-secondary);padding:8px 12px;border-radius:12px;border:1px solid rgba(107,142,35,.18);box-shadow:0 8px 20px #6b8e231a;transition:all .3s ease}[data-theme=dark] .visual__details span{border-color:#d4af5740;box-shadow:0 8px 20px #8fb03d14}.section__header{text-align:center;max-width:820px;margin:0 auto 28px;position:relative;padding:12px 0 18px}.section__eyebrow{text-transform:uppercase;letter-spacing:1px;font-size:.8rem;color:var(--accent-teal);margin:0 0 6px}.section__lead{margin:8px auto 0;color:var(--text-secondary)}.section__header:after{content:"";position:absolute;width:120px;height:6px;border-radius:999px;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-teal));inset:auto 0 -4px;margin:0 auto}.cards .card__grid,.timeline__grid,.blog__grid,.gallery__strip,.showcase__list,.panel__content{display:grid;gap:20px}.card__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.info-card{padding:20px;border-radius:16px;border:1px solid var(--border-color-medium);background:var(--bg-secondary);box-shadow:0 12px 30px var(--shadow-color);transition:all .3s ease}[data-theme=dark] .info-card{background:linear-gradient(135deg,#8fb03d14,#8fb03d14);border-color:#8fb03d1f;box-shadow:0 12px 30px #0000004d}.info-card h3{margin:0 0 8px;color:var(--text-primary)}.link{color:var(--accent-teal);font-weight:700;background:transparent;border:none;padding:0;cursor:pointer;transition:color .3s ease}.link:hover{color:var(--accent-cyan);text-decoration:underline}.showcase__list{gap:12px}.showcase__item{display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;padding:16px;gap:12px;background-image:linear-gradient(90deg,var(--accent-light),var(--gradient-teal-medium));transition:all .3s ease}.showcase__item:hover{border-color:var(--border-color-medium);box-shadow:0 8px 20px var(--shadow-color)}.timeline__grid,.blog__grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.timeline__card,.blog__card{background:linear-gradient(135deg,#6b8e2314,#d4af5714);border:1px solid var(--border-color);border-radius:16px;padding:18px;box-shadow:0 12px 30px var(--shadow-color);transition:all .3s ease}[data-theme=dark] .timeline__card,[data-theme=dark] .blog__card{background:linear-gradient(135deg,#8fb03d14,#d4af5714);border-color:#8fb03d26;box-shadow:0 12px 30px #0000004d}.timeline__card:hover,.blog__card:hover{border-color:var(--border-color-medium);box-shadow:0 16px 36px var(--shadow-color);transform:translateY(-2px)}.timeline__date{color:var(--accent-teal);font-weight:700;margin:0 0 6px}.calendar__layout{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.calendar__card,.calendar__sidebar{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:16px;box-shadow:0 12px 30px var(--shadow-color);transition:all .3s ease}.calendar__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.calendar__legend{display:flex;gap:8px;align-items:center;margin:12px 0 8px}.legend__item{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;font-weight:700;border:1px solid var(--border-color-medium);color:var(--text-primary);transition:all .3s ease}.legend__item--highlight{background:#f0a5001f;color:var(--accent-teal)}.legend__item--event{background:#6b8e231a;color:var(--accent-teal)}[data-theme=dark] .legend__item--highlight{background:linear-gradient(135deg,#8fb03d26,#d4af5726);color:var(--accent-cyan)}[data-theme=dark] .legend__item--event{background:#d4af571f;color:var(--accent-cyan)}.calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar__weekday{text-align:center;font-weight:700;color:var(--accent-teal);text-transform:uppercase;font-size:.9rem;transition:color .3s ease}[data-theme=dark] .calendar__weekday{color:var(--accent-cyan)}.calendar__day{height:44px;border-radius:12px;border:1px solid var(--border-color-medium);background:var(--bg-secondary);color:var(--text-primary);display:grid;place-items:center;cursor:pointer;transition:all .15s ease}.calendar__day.is-empty{border:none;background:transparent;cursor:default}.calendar__day.has-event{border-color:var(--border-color-medium);background:#6b8e2314;font-weight:700;color:var(--accent-teal)}[data-theme=dark] .calendar__day.has-event{background:#8fb03d1a;color:var(--accent-cyan)}.calendar__day.is-selected{background:var(--accent-teal);color:#fff;border-color:var(--accent-teal);box-shadow:0 12px 30px #6b8e2359}[data-theme=dark] .calendar__day.is-selected{background:var(--accent-cyan);border-color:var(--accent-cyan);box-shadow:0 12px 30px #8fb03d4d}.calendar__sidebar{display:grid;gap:12px;align-content:start}.sidebar__header{display:flex;align-items:center;gap:12px}.calendar__badge{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--accent-light),rgba(107,142,35,.14));display:grid;place-items:center;font-weight:800;color:var(--accent-teal);border:1px solid var(--border-color-medium);transition:all .3s ease}[data-theme=dark] .calendar__badge{color:var(--accent-cyan)}.sidebar__title{margin:0;text-transform:capitalize}.sidebar__list{display:grid;gap:10px}.sidebar__card{border:1px solid var(--border-color);border-radius:12px;padding:12px;background:var(--bg-secondary);transition:all .3s ease}[data-theme=dark] .sidebar__card{background:linear-gradient(135deg,#8fb03d1a,#d4af571a);border-color:#8fb03d26;color:var(--text-primary)}.sidebar__date{margin:0 0 6px;color:var(--accent-teal);font-weight:700;transition:color .3s ease}[data-theme=dark] .sidebar__date{color:var(--accent-cyan)}.sidebar__empty{margin:0;color:var(--text-secondary)}.gallery__strip{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.gallery__strip--wide{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.gallery__item{background:linear-gradient(145deg,var(--accent-light),var(--gradient-teal-medium));border:2px solid var(--border-color-medium);border-radius:14px;padding:0;display:grid;grid-template-rows:1fr auto;gap:10px;color:var(--text-secondary);font-weight:700;transition:all .3s ease;overflow:hidden;min-height:220px}.gallery__item img{width:100%;height:100%;object-fit:cover;border-radius:12px 12px 0 0}.gallery__item p{padding:0 12px 12px;margin:0;font-size:.95rem}[data-theme=dark] .gallery__item{background:linear-gradient(145deg,#34251999,#3a281c66);border-color:linear-gradient(135deg,rgba(143,176,61,.15),rgba(212,175,87,.15));color:var(--text-secondary)}.gallery__item:hover{border-color:var(--accent-teal);transform:translateY(-2px);box-shadow:0 8px 16px #6b8e2333}[data-theme=dark] .gallery__item:hover{border-color:#d4c597;box-shadow:0 8px 16px #8fb03d33}.cta{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--border-color);border-radius:16px;padding:18px;background:linear-gradient(90deg,rgba(107,142,35,.05),transparent);flex-wrap:wrap;transition:all .3s ease}[data-theme=dark] .cta{background:linear-gradient(90deg,rgba(212,175,87,.06),transparent)}.cta__actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.cta__actions--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:start}.contact__details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.contact__label{font-weight:700;color:var(--accent-teal);margin:0 0 4px}.contact__card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:16px;transition:all .3s ease}.contact__card input,.contact__card textarea,.admin__form input,.admin__form textarea,.modal__content input,.modal__content textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border-color-medium);background:var(--bg-secondary);font-size:.95rem;color:var(--text-primary);transition:all .3s ease}[data-theme=dark] .contact__card input,[data-theme=dark] .contact__card textarea,[data-theme=dark] .admin__form input,[data-theme=dark] .admin__form textarea,[data-theme=dark] .modal__content input,[data-theme=dark] .modal__content textarea{background:#342519b3;border-color:linear-gradient(135deg,rgba(143,176,61,.15),rgba(212,175,87,.15))}.contact__card input:focus,.contact__card textarea:focus,.admin__form input:focus,.admin__form textarea:focus,.modal__content input:focus,.modal__content textarea:focus{border-color:var(--accent-teal);outline:none;box-shadow:0 0 0 3px #6b8e231a}[data-theme=dark] .contact__card input:focus,[data-theme=dark] .contact__card textarea:focus,[data-theme=dark] .admin__form input:focus,[data-theme=dark] .admin__form textarea:focus,[data-theme=dark] .modal__content input:focus,[data-theme=dark] .modal__content textarea:focus{border-color:#d4c597;background:#342519f2;box-shadow:0 0 0 3px #8fb03d33}.contact__card textarea{resize:vertical}.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.pillar__item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:14px;text-align:center;color:var(--text-primary);transition:all .3s ease}.pillar__item:hover{border-color:var(--border-color-medium);box-shadow:0 8px 20px var(--shadow-color)}.about__layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px;align-items:start}.about__content{display:flex;flex-direction:column;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;padding:16px;color:var(--text-primary);line-height:1.6}[data-theme=dark] .about__content{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.about__paragraph{margin:0}.about__quote{margin:0;padding:14px 16px;border-left:4px solid var(--accent-teal);background:#6b8e2314;border-radius:10px;font-weight:700;color:var(--text-tertiary)}.about__side{display:flex;flex-direction:column;gap:12px}.about__card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;padding:14px;color:var(--text-primary);transition:all .3s ease}[data-theme=dark] .about__card{background:var(--bg-secondary);border-color:var(--border-color)}.timeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.timeline__item{display:grid;grid-template-columns:80px 1fr;gap:10px;align-items:start}.timeline__year{font-weight:800;color:var(--accent-teal)}.timeline__title{margin:0;font-weight:700;color:var(--text-primary)}.timeline__detail{margin:4px 0 0;color:var(--text-secondary)}.chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:10px;background:#6b8e231f;color:var(--accent-teal);font-weight:700;transition:all .3s ease}[data-theme=dark] .chip{background:linear-gradient(135deg,#8fb03d26,#d4af5726);color:var(--accent-cyan)}.gallery__strip--wide{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}@media(max-width:900px){.about__layout,.timeline__item{grid-template-columns:1fr}}.footer{padding:16px 32px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--border-color);background:linear-gradient(90deg,var(--bg-secondary),var(--gradient-teal-light));flex-wrap:wrap;transition:all .3s ease}[data-theme=dark] .footer{background:linear-gradient(90deg,#0f0f0f,#1a1a1a);border-top-color:#8fb03d33}.footer__links{display:flex;gap:10px;font-weight:700;flex-wrap:wrap}.footer__link{background:transparent;border:none;color:var(--accent-teal);font-weight:700;cursor:pointer;transition:color .3s ease}.footer__link:hover{color:var(--accent-cyan)}[data-theme=dark] .footer__link{color:#d4c597}[data-theme=dark] .footer__link:hover{color:gold}.footer__note{margin:0;color:var(--accent-teal);font-size:.9rem}[data-theme=dark] .footer__note{color:#a4ac86}.modal__backdrop{position:fixed;inset:0;background:#143a4a8c;display:grid;place-items:center;padding:16px;z-index:20;transition:background .3s ease}[data-theme=dark] .modal__backdrop{background:#140f0acc}.modal{background:var(--bg-secondary);border-radius:18px;padding:24px;width:min(1250px,100%);max-height:90vh;overflow-y:auto;border:1px solid var(--border-color-medium);box-shadow:0 30px 70px var(--shadow-color-heavy);transition:all .3s ease}[data-theme=dark] .modal{background:linear-gradient(180deg,#342519f2,#3a281ce6);border-color:linear-gradient(135deg,rgba(143,176,61,.15),rgba(212,175,87,.15));box-shadow:0 30px 70px #00000080}.modal--content{max-width:720px}.modal__header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--border-color)}.modal__header h2{margin:0;color:var(--text-primary)}.modal__content{display:grid;gap:24px}.modal__card{border:1px solid var(--border-color-medium);border-radius:12px;padding:16px;background:var(--bg-tertiary);display:grid;gap:12px;border-left:4px solid var(--accent-teal);transition:all .3s ease}[data-theme=dark] .modal__card{background:linear-gradient(135deg,#8fb03d0d,#d4af570d);border-color:#8fb03d33;border-left-color:var(--accent-teal)}.modal__card label{display:flex;flex-direction:column;gap:6px;font-weight:600;color:var(--accent-teal);font-size:.9rem}.modal__card input,.modal__card textarea{padding:10px;border:1px solid var(--border-color-medium);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;transition:all .2s ease}.modal__card input:focus,.modal__card textarea:focus{outline:none;border-color:var(--accent-teal);box-shadow:0 0 0 2px #6b8e231a}[data-theme=dark] .modal__card input:focus,[data-theme=dark] .modal__card textarea:focus{box-shadow:0 0 0 2px #d4af571f}.modal__lead{font-weight:600;color:var(--text-tertiary);margin-top:0}.modal__text{margin:0 0 10px;color:var(--text-primary)}.modal__section{border:1px solid var(--border-color);border-radius:14px;padding:20px;background:linear-gradient(180deg,var(--bg-tertiary),var(--bg-secondary));display:grid;gap:28px;transition:all .3s ease}.modal__section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;padding-bottom:12px;border-bottom:2px solid var(--border-color)}.modal__section-title h4{margin:0;color:var(--accent-teal);font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}[data-theme=dark] .modal__section-title h4{color:#d4c597}.modal__section-title>*:last-child{margin-left:auto}.modal__inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:8px}.modal__inline--actions{align-items:center;justify-content:space-between;background:#6b8e230a;padding:12px;border-radius:10px;border:1px solid var(--border-color);transition:all .3s ease}[data-theme=dark] .modal__inline--actions{background:#8fb03d14;border-color:#d4af571f}.admin__form{display:grid;gap:14px;background:var(--bg-secondary);border-radius:14px;padding:20px;border:1px solid var(--border-color);transition:all .3s ease}[data-theme=dark] .admin__form{background:linear-gradient(180deg,#342519cc,#3a281c99);border-color:#d4af571f}.admin__form label{display:flex;flex-direction:column;gap:6px;font-weight:600;color:var(--accent-teal);font-size:.95rem}.admin__form input,.admin__form textarea{padding:12px;border:1px solid var(--border-color-medium);border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);font-size:.95rem;transition:all .2s ease}.admin__form input:focus,.admin__form textarea:focus{outline:none;border-color:var(--accent-teal);box-shadow:0 0 0 3px #6b8e231a}[data-theme=dark] .admin__form input:focus,[data-theme=dark] .admin__form textarea:focus{box-shadow:0 0 0 3px #d4af571f}.admin__form textarea{resize:vertical;font-family:Inter,monospace}.gallery__strip--wide,.gallery__strip,.card__grid,.timeline__grid,.blog__grid,.contact__details,.modal__inline,.cta__actions--grid{width:100%}.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.help-text{margin:0;padding:12px;color:var(--text-tertiary);font-size:.9rem;background:#6b8e230f;border-radius:10px;border-left:3px solid var(--accent-teal);line-height:1.5}.db-status{display:grid;gap:12px;padding:16px;border-radius:12px;background:linear-gradient(135deg,rgba(107,142,35,.08),var(--accent-light));border:2px solid var(--border-color-medium);border-left:4px solid var(--accent-teal);transition:all .3s ease}[data-theme=dark] .db-status{background:linear-gradient(135deg,#8fb03d14,#d4af5714);border-left-color:var(--accent-teal)}.db-status__text{margin:0;font-weight:600;color:var(--text-tertiary);font-size:.95rem;font-family:Inter,monospace;letter-spacing:.5px}.db-status__chips{display:flex;flex-wrap:wrap;gap:8px}.chip--muted{background:#6b8e231f;color:var(--text-secondary);border:1px solid var(--border-color-medium);font-size:.85rem;font-weight:600;padding:6px 10px;border-radius:8px;transition:all .3s ease}[data-theme=dark] .chip--muted{background:#8fb03d1a;border-color:#8fb03d33}.tag{padding:6px 10px;border-radius:12px;background:#6b8e231a;color:var(--accent-teal);font-weight:700;font-size:.9rem;transition:all .3s ease}[data-theme=dark] .tag{background:#8fb03d1a;color:var(--accent-cyan)}.admin__tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--border-color);overflow-x:auto;scrollbar-width:none;padding-bottom:12px;transition:border-color .3s ease}.admin__tabs::-webkit-scrollbar{display:none}.admin__tab{padding:12px 16px;border:none;background:transparent;color:var(--text-secondary);font-weight:600;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s ease;white-space:nowrap;font-size:.95rem}.admin__tab:hover{color:var(--accent-teal);background:#6b8e230d}[data-theme=dark] .admin__tab:hover{background:#8fb03d14;color:var(--accent-cyan)}.admin__tab.is-active{color:var(--accent-teal);border-bottom-color:var(--accent-teal);background:#6b8e2314}[data-theme=dark] .admin__tab.is-active{color:var(--accent-cyan);border-bottom-color:var(--accent-cyan);background:#8fb03d14}.admin__tab-content{display:none}.admin__tab-content.is-visible{display:grid;gap:24px}.calendar__switchers{display:flex;gap:8px}.theme-toggle{width:48px;height:48px;border-radius:12px;border:1px solid var(--border-color);background:#fff9;color:var(--text-primary);cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;padding:0}[data-theme=dark] .theme-toggle{background:#8fb03d1a;border-color:var(--border-color)}.theme-toggle:hover{background:#fffc;border-color:var(--accent-teal);transform:scale(1.05)}[data-theme=dark] .theme-toggle:hover{background:#8fb03d33}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}.selection-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:40px 20px;background:linear-gradient(135deg,var(--bg-primary),var(--bg-secondary))}.selection-page__content{display:flex;flex-direction:column;align-items:center;gap:60px;max-width:1000px;width:100%}.selection-page__header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.selection-page__logo{width:80px;height:80px;object-fit:contain;border-radius:16px;background:#6b8e231f;padding:12px;animation:slideDown .6s ease-out}.selection-page__header h1{font-size:3.5rem;margin:0;font-weight:700;color:var(--text-primary);letter-spacing:-1px;animation:slideDown .8s ease-out .1s both}.selection-page__header p{font-size:1.25rem;margin:0;color:var(--text-secondary);font-weight:500;animation:slideDown 1s ease-out .2s both}.selection-page__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%}.selection-page__footer{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.selection-menu-item{position:relative;border:none;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-tertiary));color:var(--text-primary);border-radius:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;overflow:hidden;border:2px solid transparent;box-shadow:0 8px 24px #6b8e231f}.selection-menu-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(107,142,35,.2),transparent);transition:left .5s ease;z-index:1}.selection-menu-item:hover:before{left:100%}.selection-menu-item span{position:relative;z-index:2}.selection-menu-item--large{font-size:1.75rem;padding:60px 40px;border-color:var(--border-color)}.selection-menu-item--large:hover{border-color:var(--accent-teal);box-shadow:0 12px 32px #6b8e2340;transform:translateY(-8px);background:linear-gradient(135deg,#6b8e230d,#8fb03d14)}.selection-menu-item--small{font-size:1rem;padding:14px 28px;border-color:var(--border-color-medium)}.selection-menu-item--small:hover{border-color:var(--accent-teal);box-shadow:0 8px 20px #6b8e2333;transform:translateY(-4px);background:linear-gradient(135deg,#6b8e230d,#8fb03d14)}.selection-menu-item:active{transform:scale(.98)}[data-theme=dark] .selection-page{background:linear-gradient(135deg,#0f0f0f,#1a1a1a)}[data-theme=dark] .selection-page__logo{background:var(--gradient-secondary)}[data-theme=dark] .selection-page__header h1{color:var(--text-primary)}[data-theme=dark] .selection-page__header p{color:var(--text-secondary)}[data-theme=dark] .selection-menu-item{background:linear-gradient(135deg,#6b8e2399,#b4913c99);border-color:#8fb03d80;border:2px solid rgba(143,176,61,.5);box-shadow:0 8px 32px #0006;color:#f0e8d8;font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.3)}[data-theme=dark] .selection-menu-item span{color:#f0e8d8}[data-theme=dark] .selection-menu-item:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent)}[data-theme=dark] .selection-menu-item--large:hover,[data-theme=dark] .selection-menu-item--small:hover{border-color:#8fb03db3;box-shadow:0 12px 40px #6b8e234d;background:linear-gradient(135deg,#82a52dbf,#c8a54bbf);transform:translateY(-4px)}.navbar__home-btn{background:none;border:none;cursor:pointer;padding:0;font-weight:600;transition:all .3s ease}.navbar__home-btn:hover{color:var(--accent-teal)}[data-theme=dark] .navbar__home-btn:hover{color:var(--accent-cyan)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:960px){#root{padding:1rem}.navbar{grid-template-columns:1fr;justify-items:start}.navbar__links,.navbar__actions{width:100%;justify-content:flex-start}main{padding:24px 20px 40px;gap:48px}.contact{grid-template-columns:1fr}.footer{flex-direction:column;align-items:flex-start}.calendar__layout{grid-template-columns:1fr}.selection-page__header h1{font-size:2.5rem}.selection-page__grid{grid-template-columns:1fr}.selection-menu-item--large{font-size:1.5rem;padding:50px 30px}.selection-page__footer{gap:12px}.selection-menu-item--small{padding:12px 24px;font-size:.95rem}}.webshop__container{display:grid;grid-template-columns:280px 1fr;gap:40px;margin-top:40px}.webshop__sidebar{display:grid;gap:40px;align-content:start}.webshop__filters{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px;height:fit-content;max-height:500px;overflow-y:auto}.webshop__filters h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:16px}.webshop__filter-btn{width:100%;padding:12px 16px;margin-bottom:8px;background:transparent;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.95rem;text-align:left;transition:all .3s ease}.webshop__filter-btn:hover{border-color:var(--accent-teal);background:var(--gradient-secondary);color:var(--text-primary)}.webshop__filter-btn.is-active{background:var(--gradient-primary);color:var(--bg-secondary);border-color:var(--accent-teal);font-weight:600}.webshop__cart{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px;height:fit-content}.webshop__cart h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:16px;display:flex;align-items:center;gap:8px}.cart__badge{display:inline-block;min-width:24px;height:24px;padding:0 8px;background:linear-gradient(135deg,#6b8e23,#e6bf52);color:#fff;border-radius:12px;font-size:.8rem;font-weight:700;text-align:center;line-height:24px;margin-left:auto}.cart__items{max-height:300px;overflow-y:auto;margin-bottom:16px;display:grid;gap:12px}.cart__item{padding:12px;background:var(--bg-tertiary);border-radius:8px;border-left:3px solid var(--accent-teal)}.cart__item p{margin:0;font-size:.9rem;color:var(--text-primary)}.cart__price{color:var(--accent-blue);font-weight:600;margin-top:4px}.cart__empty{color:var(--text-secondary);font-style:italic;text-align:center;padding:20px 0}.webshop__empty{display:flex;align-items:center;justify-content:center;min-height:500px;width:100%}.webshop__empty-center{display:flex;align-items:center;justify-content:center;min-height:400px;width:100%}.webshop__empty-message{font-size:1.5rem;font-weight:600;color:var(--text-primary);text-align:center;margin:0}.webshop__notice{background:var(--bg-secondary);border:2px solid var(--accent-teal);border-radius:12px;padding:40px;margin-bottom:40px;text-align:center;width:100%}.webshop__notice-message{font-size:1.8rem;font-weight:700;color:var(--text-primary);margin:0}.webshop__main{min-height:600px}.webshop__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.product__card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:all .3s ease}.product__card:hover{border-color:var(--accent-teal);box-shadow:0 8px 24px var(--shadow-color-heavy);transform:translateY(-4px)}.product__image{width:100%;height:200px;overflow:hidden;background:var(--bg-tertiary);display:none}.product__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product__card:hover .product__image img{transform:scale(1.05)}.product__content{padding:24px;display:flex;flex-direction:column;flex-grow:1}.product__category{font-size:.8rem;color:var(--accent-teal);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px}.product__content h4{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0 0 12px;line-height:1.3}.product__description{font-size:.9rem;color:var(--text-secondary);margin:0 0 16px;flex-grow:1;line-height:1.4}.product__footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--border-color);gap:12px}.product__price{font-size:1.1rem;font-weight:700;color:var(--accent-blue)}.btn--small{padding:8px 12px;font-size:.85rem;white-space:nowrap}@media(max-width:1024px){.webshop__container{grid-template-columns:1fr;gap:24px}.webshop__filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:16px}.webshop__filter-btn{margin-bottom:0}.webshop__grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media(max-width:640px){.webshop__grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.product__content{padding:16px}.product__card{border-radius:8px}.webshop__filters{grid-template-columns:repeat(2,1fr)}}
