:root{--night: #0b0d12;--night-2: #171b24;--parchment: #eef1f5;--parchment-2: #d6dbe3;--parchment-edge: #aab2bf;--ink: #12151b;--ink-soft: #4a515d;--gryffindor: #c4121a;--gold: #c3c9d4;--gold-light: #f2f5fa;--slytherin: #11457e;--ravenclaw: #4a515d;--hufflepuff: #2b313c;--radius: 6px;--font-title: "Cinzel", "Trajan Pro", Georgia, serif;--font-deco: "Cinzel Decorative", "Cinzel", Georgia, serif;--font-body: "Cormorant Garamond", Georgia, "Times New Roman", serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:1.2rem;line-height:1.6;color:var(--ink);min-height:100vh;display:flex;flex-direction:column;background-color:var(--night);background-image:radial-gradient(1px 1px at 20px 30px,rgba(242,245,250,.55),transparent),radial-gradient(1px 1px at 120px 90px,rgba(238,241,245,.5),transparent),radial-gradient(1.5px 1.5px at 210px 40px,rgba(242,245,250,.45),transparent),radial-gradient(1px 1px at 280px 150px,rgba(238,241,245,.4),transparent),radial-gradient(1px 1px at 70px 190px,rgba(242,245,250,.4),transparent),radial-gradient(ellipse at top,rgba(215,20,26,.12),transparent 55%),linear-gradient(var(--night-2),var(--night) 60%);background-size:300px 220px,300px 220px,300px 220px,300px 220px,300px 220px,100% 100%,100% 100%;background-attachment:fixed}main{flex:1}img{max-width:100%;display:block}a{color:var(--gryffindor);text-underline-offset:3px}a:hover{color:#8f0b11}h1,h2,h3,h4{font-family:var(--font-title);font-weight:700;line-height:1.2;letter-spacing:.02em;margin:0 0 .6em}h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.5rem,3.5vw,2.1rem)}h3{font-size:1.25rem}.container{width:min(1100px,100% - 2rem);margin-inline:auto}.parchment{position:relative;isolation:isolate;padding:clamp(1.5rem,3.5vw,3rem);color:var(--ink)}.parchment:before{content:"";position:absolute;inset:-6px;z-index:-1;background:radial-gradient(ellipse at 15% 8%,rgba(255,255,255,.45),transparent 45%),radial-gradient(ellipse at 90% 95%,rgba(40,60,100,.3),transparent 50%),radial-gradient(ellipse at 50% 50%,transparent 55%,rgba(60,80,120,.35)),var(--parchment);filter:url(#rough) drop-shadow(0 12px 22px rgba(0,0,0,.55))}.page{padding:3rem 0 4.5rem}.page-title{text-align:center;font-family:var(--font-deco);background:linear-gradient(180deg,var(--gold-light),var(--gold) 55%,#8b93a1);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 10px rgba(0,0,0,.7));margin-bottom:.2em}.page-sub{text-align:center;color:var(--parchment-2);font-style:italic;margin:0 0 2.25rem;font-size:1.3rem}.page-sub:after{content:"✦ ❖ ✦";display:block;color:var(--gold);letter-spacing:.6em;font-size:.8rem;margin-top:.5rem;font-style:normal}.divider{text-align:center;color:var(--gold);letter-spacing:.6em;margin:1.5rem 0;font-size:.9rem}.ornament{display:flex;align-items:center;gap:1rem;color:var(--gold);margin:1rem 0 2rem}.ornament:before,.ornament:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.ornament span{font-family:var(--font-deco);font-size:clamp(1.4rem,3vw,2rem);text-shadow:0 0 14px rgba(195,201,212,.6)}.btn{display:inline-block;font-family:var(--font-title);font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:.8rem 1.7rem;border:2px solid var(--gold);border-radius:3px;background:linear-gradient(180deg,#d7141a,var(--gryffindor));color:var(--gold-light);box-shadow:inset 0 0 0 2px #00000059,0 4px 14px #00000080;transition:transform .15s,box-shadow .2s,color .2s}.btn:hover{color:#fff;transform:translateY(-2px);box-shadow:inset 0 0 0 2px #00000059,0 6px 20px #c3c9d473}.btn.ghost{background:linear-gradient(180deg,#1a5aa3,var(--slytherin));color:#fff;border-color:#fff}.btn.ghost:hover{background:linear-gradient(180deg,#2268b5,#14509a)}.btn{border-color:#fff}.page-title:after,.card:before{content:"";display:block;background:linear-gradient(90deg,#fff 0 33.33%,#d7141a 33.33% 66.66%,#11457e 66.66% 100%)}.page-title:after{height:6px;width:min(260px,60%);margin:.35em auto 0;border-radius:3px}.card:before{height:8px;margin:-10px -10px 10px;border-radius:5px 5px 0 0}.ornament:before,.ornament:after{height:3px;background:linear-gradient(90deg,#11457e,#fff,#d7141a)}.ornament:after{background:linear-gradient(90deg,#d7141a,#fff,#11457e)}.card{border-color:var(--slytherin)}.page-sub:after{color:var(--gryffindor)}.badge{display:inline-block;font-family:var(--font-title);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .65rem;border-radius:999px;border:1px solid currentColor;background:#ffffff73}.badge.chovna,.badge.volne{color:var(--slytherin)}.badge.kryci,.badge.rezervovane{color:var(--gryffindor)}.badge.duchod,.badge.novy-domov{color:var(--ravenclaw)}.badge.mazlicek,.badge.zustava{color:var(--hufflepuff)}.badge.duhovy-most{color:#12151b}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.75rem}.card{position:relative;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);padding:10px;background:radial-gradient(ellipse at 20% 0%,rgba(255,255,255,.4),transparent 50%),var(--parchment);border:3px double var(--gold);border-radius:8px;box-shadow:inset 0 0 28px #283c644d,0 10px 24px #0000008c;transition:transform .25s,box-shadow .25s}.card:after{content:"✦";position:absolute;top:4px;right:8px;color:var(--gold);font-size:.85rem;text-shadow:0 0 6px rgba(195,201,212,.7)}a.card:hover{transform:translateY(-6px) rotate(-.6deg);color:var(--ink);box-shadow:inset 0 0 28px #283c644d,0 18px 34px #0009,0 0 26px #c3c9d473}.card-img{aspect-ratio:4 / 5;background:var(--parchment-2);border:2px solid var(--parchment-edge);box-shadow:inset 0 0 14px #00000059;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}a.card:hover .card-img img{transform:scale(1.05)}.card-body{margin-top:10px;padding:.7rem .8rem 1rem;text-align:center;border-top:1px solid var(--parchment-edge)}.card-body h3{margin-bottom:.2em;color:var(--gryffindor);font-size:1.3rem}.card-meta{margin:.2rem 0;color:var(--ink-soft);font-size:1rem}.placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,transparent 0 14px,rgba(40,60,100,.06) 14px 28px),var(--parchment-2);color:var(--parchment-edge)}.placeholder svg{width:45%;height:auto}dl.facts{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1.25rem;margin:0 0 1.5rem}dl.facts dt{font-family:var(--font-title);font-size:.85rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);padding-top:.15rem}dl.facts dd{margin:0}ul.list{padding-left:1.2rem;margin:0 0 1.5rem}ul.list li::marker{color:var(--gold);content:"✦  "}.prose p{margin:0 0 1em}.prose h2,.prose h3{color:var(--gryffindor);margin-top:1.5em}.prose>p:first-of-type:first-letter{font-family:var(--font-deco);font-size:3.4em;float:left;line-height:.85;padding:.08em .12em 0 0;color:var(--gryffindor);text-shadow:1px 1px 0 var(--gold)}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.9rem}.gallery img{width:100%;aspect-ratio:1;object-fit:cover;border:4px solid var(--parchment);border-radius:3px;box-shadow:0 6px 14px #00000080;transition:transform .25s}.gallery a:nth-child(odd) img{transform:rotate(-1.2deg)}.gallery a:nth-child(2n) img{transform:rotate(1.2deg)}.gallery a:hover img{transform:rotate(0) scale(1.04)}.sparkle{position:fixed;z-index:9999;width:8px;height:8px;pointer-events:none;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--gold-light) 40%,transparent 70%);animation:sparkle-fall .8s ease-out forwards}@keyframes sparkle-fall{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--dx),28px) scale(.2)}}@media(max-width:600px){body{font-size:1.1rem}dl.facts{grid-template-columns:1fr}dl.facts dt{padding-top:.6rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.sparkle{display:none}}.site-header{background:linear-gradient(#173f73,#0c2a52);border-bottom:8px solid;border-image:linear-gradient(90deg,#fff 0 33.33%,#d7141a 33.33% 66.66%,#11457e 66.66% 100%) 1;position:sticky;top:0;z-index:10}.site-header .bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:.6rem;font-family:var(--font-title);font-size:1.25rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);text-decoration:none}.brand:hover{color:#fff}.site-header nav{display:flex;gap:.25rem 1.25rem;flex-wrap:wrap}.site-header nav a{font-family:var(--font-title);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--parchment);text-decoration:none;padding:.35rem 0;border-bottom:2px solid transparent}.site-header nav a:hover,.site-header nav a.active{color:var(--gold);border-bottom-color:var(--gold)}.menu-toggle,.menu-btn{display:none}@media(max-width:860px){.menu-btn{display:block;color:var(--gold);font-size:1.8rem;cursor:pointer;line-height:1}.site-header nav{display:none;width:100%;flex-direction:column;padding-bottom:.5rem}.menu-toggle:checked~nav{display:flex}}.site-footer{background:var(--night-2);border-top:8px solid;border-image:linear-gradient(90deg,#fff 0 33.33%,#d7141a 33.33% 66.66%,#11457e 66.66% 100%) 1;color:var(--parchment-2);text-align:center;padding:2rem 0}.site-footer p{margin:.3rem 0}.site-footer a{color:var(--gold)}.site-footer .motto{font-family:var(--font-deco);color:var(--gold);letter-spacing:.1em;text-shadow:0 0 14px rgba(195,201,212,.5)}.site-footer .oath{font-style:italic;color:var(--parchment-2);opacity:.8}.site-footer{background:linear-gradient(#0c2a52,#061326)}.brand{font-family:var(--font-deco);text-shadow:0 0 12px rgba(195,201,212,.45)}.site-header{box-shadow:0 4px 22px #0009,0 1px #f2f5fa80}.site-header nav a:hover{text-shadow:0 0 10px rgba(242,245,250,.8)}.site-footer .small{font-size:.9rem;opacity:.85}
