html:has(.map-app){scroll-behavior:auto}.map-app{height:100dvh;overflow:hidden;background:#f1eee6}.app-header{height:78px!important;padding:0 30px!important;position:relative!important;display:flex;align-items:center;gap:32px;background:var(--dark);color:var(--white);z-index:10}.app-header .brand{margin:0;width:185px;flex-shrink:0}.app-header .brand>svg{width:42px}.app-header .brand-wordmark{width:116px}.app-caption{font-size:11px;letter-spacing:.12em;color:#b4c4cf}.app-header nav{margin-left:auto;display:flex;gap:25px;align-items:center}.app-header nav a{font-size:12px;color:#d0d7de}.app-header nav a:hover,.app-header nav a[aria-current]{color:var(--lime)}#menu-toggle{display:none;background:transparent;border:0;color:white;padding:10px}.map-shell{height:calc(100dvh - 112px);display:grid;grid-template-columns:390px minmax(0,1fr);transition:grid-template-columns .3s}.map-shell.reading{grid-template-columns:minmax(460px,48%) minmax(0,1fr)}#panel{overflow-y:auto;overscroll-behavior:contain;background:#f4f1e8;scrollbar-width:thin;scrollbar-color:#bcbcad transparent;position:relative;z-index:2;box-shadow:4px 0 18px #15243e15}.search-panel{padding:30px 26px 0;background:#f4f1e8;position:sticky;top:0;z-index:3}.search-panel .eyebrow{margin-bottom:10px;font-size:9px}.search-panel h1{font-size:38px;margin:0 0 24px}.search-box{display:flex;align-items:center;gap:12px;padding:13px 18px;background:white;border:1px solid #15243e16;border-radius:30px;box-shadow:0 4px 10px #15243e08}.search-box span{font-size:27px;line-height:1}.search-box input{width:100%;min-width:0;border:0;outline:none;background:none;font:inherit;font-size:13px;color:var(--dark)}.search-box:focus-within{outline:2px solid #93b6c8}.filters{display:flex;gap:8px;margin:14px 0 24px}.filters select,.filters button{font:inherit;font-size:11px;padding:9px;border:1px solid #15243e35;border-radius:18px;background:transparent;color:var(--dark);min-width:0}.result-caption{display:flex;justify-content:space-between;border-bottom:1px solid #15243e25;padding:0 0 15px;font-size:11px;color:#667177}.result-caption span+span{font-size:8px;letter-spacing:.12em}.person{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #15243e20;background:none;padding:25px 26px;position:relative}.person:hover,.person:focus-visible{background:#e4ebdf}.person h2{font-size:24px;letter-spacing:-.03em;padding-right:58px}.person p{font-size:12px;color:#657071;margin-top:7px}.person .life{font-size:10px;letter-spacing:.12em;color:#697d88;margin-bottom:6px}.monogram{position:absolute;right:25px;top:29px;display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#dde3db;font-family:var(--serif);font-size:18px;color:#607272}.person-link{display:inline-block;margin-top:16px;font-size:11px;border-bottom:1px solid #a3ad9e;padding-bottom:4px}.person-link b{margin-left:15px;font-size:16px}.empty{padding:35px}.map-area{position:relative;min-width:0;overflow:hidden;background:#e7e6dc}#map{position:absolute;inset:0}.map-heading{position:absolute;top:24px;left:24px;background:#fffef7ee;box-shadow:0 4px 20px #15243e10;border-radius:25px;padding:12px 18px;display:flex;align-items:center;gap:9px;font-size:11px;max-width:calc(100% - 85px)}.live-dot{width:6px;height:6px;background:#9aa780;border-radius:50%}.map-key{position:absolute;left:22px;bottom:40px;display:flex;align-items:center;gap:8px;background:#fffef7ee;border-radius:8px;padding:12px;font-size:9px;pointer-events:none}.key-stone{width:14px;height:14px;background:#bc943d;border:1px solid #5b461e;border-radius:3px}.key-cluster{display:grid;place-items:center;border-radius:50%;background:var(--dark);color:white;width:21px;height:21px;margin-left:6px}#overview{position:absolute;right:15px;bottom:116px;background:white;border:0;border-radius:8px;padding:12px;box-shadow:0 2px 8px #15243e22;font-size:18px}#overview span{display:none}.maplibregl-ctrl-bottom-right{bottom:32px}.maplibregl-ctrl-attrib{font-size:9px!important}.maplibregl-ctrl-group{border-radius:10px!important}.app-footer{height:34px!important;padding:0 25px!important;display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--dark);color:#b5c3d0;font-size:9px;position:relative;z-index:5}.app-footer a{color:var(--lime)}#map-error{position:absolute;top:90px;left:24px;right:24px;background:white;padding:18px;font-size:12px;border-radius:10px}.record-top{position:sticky;top:0;z-index:4;background:#f4f1e8ed;backdrop-filter:blur(10px);border-bottom:1px solid #15243e18;padding:14px 30px;display:flex;justify-content:space-between;align-items:center}.record-top button{border:0;background:transparent;font-size:12px;padding:5px}.record-top span{font-size:9px;letter-spacing:.1em}.record-body{padding:28px 36px 45px;max-width:800px;margin:auto}.paving{padding:32px 40px;background-color:#999d9b;background-image:linear-gradient(90deg,#4d53513b 2px,transparent 2px),linear-gradient(#434a484f 2px,transparent 2px),linear-gradient(140deg,#c3c3b7,#757d7c);background-size:63px 81px,63px 81px,100% 100%;border-radius:12px;box-shadow:inset 0 0 35px #0003;position:relative}.plaque{display:block;width:100%;max-width:370px;margin:auto;filter:drop-shadow(3px 8px 7px #0007);transform:rotate(-1.5deg)}.record-body .demo-note{font-size:9px;color:#788086;margin:10px 0 24px;line-height:1.6}.record-body h1{font-size:clamp(36px,3.7vw,55px);line-height:1.15}.record-meta{display:flex;gap:18px;margin:14px 0 24px;font-size:12px;color:#647174}.address-card{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #15243e20;border-bottom:1px solid #15243e20;padding:20px 0;font-size:12px}.address-card :is(a,button){border:0;background:#dcebbd;border-radius:20px;padding:9px 15px;font-size:11px}.candle-card{background:var(--dark);color:white;border-radius:12px;padding:25px;margin:25px 0;display:flex;align-items:center;gap:20px}.candle-symbol{width:38px;height:52px;border-radius:6px;background:linear-gradient(90deg,#c7bc9f,#f7eacd,#d2c19e);position:relative;margin:20px 8px 0;flex-shrink:0}.candle-symbol:before{content:'';position:absolute;width:12px;height:23px;left:13px;top:-26px;background:#9b9c99;border-radius:80% 20% 65% 35%;transform:rotate(25deg)}.lit .candle-symbol:before{background:#ffd880;box-shadow:0 0 30px 12px #e9b75270}.candle-card h2{font-size:24px}.candle-card p{font-size:11px;color:#bbc9d2;margin:8px 0}.candle-card button{border:1px solid #dcebbd66;color:var(--lime);background:transparent;border-radius:20px;padding:9px 15px;font-size:11px}.story-card{background:white;padding:28px;border-radius:12px;margin:24px 0}.story-card h2{font-size:29px;margin-bottom:16px}.story-card p{font-size:13px;line-height:1.9;margin:17px 0;color:#4e5b65}.audio-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.audio-controls button{padding:9px 13px;border:1px solid #ccd3d5;border-radius:20px;background:#f2f6f7;font-size:11px}.audio-status{font-size:10px;color:#647174}.timeline{list-style:none;padding:0;margin:0}.timeline li{display:grid;grid-template-columns:52px 1fr;gap:20px;padding:15px 0;border-top:1px solid #15243e18;font-size:12px;line-height:1.7}.timeline strong{color:#8a6b2e}.record-actions{display:flex;gap:10px;flex-wrap:wrap}.record-actions a,.record-actions button{border:1px solid #15243e30;border-radius:25px;background:transparent;padding:11px 16px;font-size:11px}.related{display:block;padding:16px 0;border-top:1px solid #15243e20;width:100%;text-align:left;border-left:0;border-right:0;border-bottom:0;background:transparent;font-size:12px}.related span{float:right}.reading .search-panel,.reading #results{display:none}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #83aabd;outline-offset:3px}@media(max-width:1100px){.app-caption{display:none}.app-header nav{gap:17px}.map-shell{grid-template-columns:340px 1fr}.record-body{padding:22px}.map-shell.reading{grid-template-columns:52% 48%}.paving{padding:25px}.map-heading{top:16px;left:16px}}@media(max-width:700px){.app-header{height:65px!important;padding:0 18px!important}.app-header .brand{width:160px}.app-header .brand>svg{width:35px}.app-header .brand-wordmark{width:103px}#menu-toggle{display:block;margin-left:auto}.app-header nav{display:none;position:absolute;top:65px;left:0;right:0;padding:20px;background:var(--dark);flex-direction:column;align-items:stretch}.app-header nav.open{display:flex}.map-shell,.map-shell.reading{height:calc(100dvh - 99px);display:flex;flex-direction:column}.map-area{height:34%;min-height:160px;order:-1;flex-shrink:0}#panel{flex:1;min-height:0}.search-panel{padding:19px 22px 0;position:relative}.search-panel h1{font-size:29px;margin-bottom:15px}.search-panel .eyebrow{display:none}.filters{margin-bottom:15px}.map-heading{top:10px;left:10px;font-size:9px;padding:8px 10px}.map-key{display:none}.maplibregl-ctrl-bottom-right{bottom:20px}#overview{bottom:105px;padding:8px;font-size:14px}.app-footer{padding:0 12px!important;font-size:8px}.app-footer>span:first-child,.app-footer a{display:none}.app-footer>span{margin:auto}.record-body{padding:22px}.record-top{padding:10px 20px}.record-top span{font-size:8px}.record-body h1{font-size:36px}.story-card{padding:23px}.paving{padding:23px 35px}.plaque{max-width:290px}.person{padding:21px 23px}.maplibregl-ctrl-attrib{max-width:95%;font-size:8px!important}}
.app-header{top:0!important}
#overview{top:24px;bottom:auto;right:16px;z-index:2}@media(max-width:700px){#overview{top:10px;right:10px}}
/* A főoldal arculatával összehangolt térképes felület. */
.map-app{--app-head:98px;--app-foot:56px}.app-header{height:var(--app-head)!important;justify-content:center;padding:14px 28px!important}.app-nav-shell{width:min(1100px,100%);display:flex;align-items:center;gap:24px;padding:12px 17px;border:1px solid #ffffff18;border-radius:15px;background:#ffffff05}.app-caption{display:none}.app-header .brand{width:196px;padding-right:25px}.app-header nav{margin-left:auto}.app-header nav a[aria-current]{background:var(--lime);color:var(--dark);padding:10px 17px;border-radius:10px}.map-shell{height:calc(100dvh - var(--app-head) - var(--app-foot))}.app-footer{height:var(--app-foot)!important;border-top:1px solid #ffffff1a;padding:0 28px!important;font-size:10px}.app-footer .footer-signature{font-size:14px;letter-spacing:.12em;color:#f6f5f5;display:flex;align-items:center;gap:15px}.footer-signature small{font-size:9px;letter-spacing:0;color:#b7c4d0}.app-footer>a:last-child{padding:8px 13px;border:1px solid #ffffff2a;border-radius:8px}.directory-hero,.record-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--dark);color:var(--white);padding:32px 28px 35px}.directory-hero h1{font-size:42px;line-height:1.12;letter-spacing:-.055em}.directory-hero em{color:var(--blue)}.directory-hero .eyebrow,.record-hero .eyebrow{font-size:8px;color:#bdcbd5;margin-bottom:18px;letter-spacing:.14em}.directory-hero>p:last-child{font-size:11px;color:#becbd4;margin-top:16px;line-height:1.8}.panel-motif{position:absolute;z-index:-1;right:-94px;top:0;width:210px;height:100%;transform:scaleX(-1);opacity:.6;pointer-events:none}.panel-motif svg{width:100%;height:100%}.search-panel{padding-top:22px}.reading .directory-hero{display:none}.person-link{background:var(--dark);color:white;border:0;padding:11px 15px;border-radius:10px;font-weight:600;font-size:10px;display:inline-flex;align-items:center;gap:17px}.person-link b{margin:0}.person:hover .person-link{background:#293f5d}.record-top{padding:13px 25px}.record-top button{border:1px solid #15243e26;border-radius:9px;padding:10px 13px;background:white}.record-hero{padding:35px 36px 38px}.record-hero h1{font-size:clamp(35px,3.5vw,53px);padding-right:60px;line-height:1.15}.record-hero>p:last-child{font-size:12px;color:#cee7f6;margin-top:15px}.record-hero>p span{margin:0 9px}.record-hero .panel-motif{right:-50px;width:225px;opacity:.65}.record-body{padding-top:27px}.paving{background:#e7e3d9;background-image:radial-gradient(ellipse at 50% 80%,#c1b79e66,transparent 62%);box-shadow:none;border-radius:12px;padding:16px 38px 24px}.plaque{width:100%;max-width:350px;transform:rotate(-1deg);filter:drop-shadow(1px 13px 9px #30281640)}.record-meta{justify-content:center;margin:15px 0 20px}.record-body .demo-note{margin-bottom:15px}.audio-controls button,.record-actions a,.record-actions button{border-radius:10px;min-height:41px;background:var(--dark);color:white;border:0;padding:12px 16px}.audio-controls button:hover,.record-actions a:hover,.record-actions button:hover{background:#2c4261}.address-card :is(a,button){padding:12px 16px;border-radius:10px;font-weight:600}.candle-card button{border-radius:10px;background:var(--lime);color:var(--dark);font-weight:600;padding:12px 16px}.related{display:grid;grid-template-columns:47px 1fr auto;gap:15px;align-items:center;padding:18px;background:#f3f1e9;border:0;border-radius:10px;margin-top:10px}.related .related-monogram{float:none;width:47px;height:55px;display:grid;place-items:center;background:#dce2d9;border-radius:8px;font-family:var(--serif);font-size:18px;color:#67786f}.related small{font-size:9px;color:#7b817c;display:block;margin-bottom:7px}.related h3{font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:0}.related p{font-size:10px;line-height:1.6;margin:6px 0 0}.related button{border:0;background:white;min-height:42px;border-radius:10px;font-size:10px;padding:10px 13px;white-space:nowrap}.related button span{margin-left:12px}.related button:hover{background:var(--lime)}@media(max-width:1000px){.app-header nav{gap:12px}.app-header nav a{font-size:10px}.app-nav-shell{gap:12px}.app-header .brand{width:177px}.footer-signature small{display:none}.related{grid-template-columns:40px 1fr;gap:10px}.related button{grid-column:2;width:max-content}.related .related-monogram{width:40px;height:48px}}@media(max-width:700px){.map-app{--app-head:80px;--app-foot:46px}.app-header{height:80px!important;padding:10px 14px!important}.app-nav-shell{padding:7px 10px;border-radius:12px;width:100%}.app-header .brand{width:165px;border:0;padding-right:0}.app-header nav{top:80px}.map-shell,.map-shell.reading{height:calc(100dvh - 126px)}.map-area{height:30%;min-height:145px}.app-footer{height:46px!important;padding:0 12px!important;justify-content:center}.app-footer .footer-signature,.app-footer>a:last-child{display:none}.app-footer>span{font-size:8px;text-align:center}.directory-hero{padding:25px 23px}.directory-hero h1{font-size:37px}.directory-hero .eyebrow{font-size:8px}.directory-hero>p:last-child{margin-top:12px}.directory-hero .panel-motif{right:-68px}.record-hero{padding:28px 24px}.record-hero h1{font-size:36px}.record-top{padding:10px 16px}.record-top button{font-size:10px;padding:9px}.record-top span{max-width:90px;text-align:right;font-size:7px}.paving{padding:15px 20px 20px}.plaque{max-width:300px}.record-meta{gap:12px;font-size:10px}.story-card{padding:22px}.related{padding:13px}.search-panel{position:relative}}
@media(prefers-reduced-motion:no-preference){.reading #record{animation:panel-in .32s ease-out}@keyframes panel-in{from{opacity:.3;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}}
/* Közös fejléc, teljes szélességű hero és közös lábléc. */
html:has(.map-app){scroll-behavior:smooth;scroll-padding-top:0}.map-app{height:auto;overflow:visible;background:var(--white)}.map-app .article-hero{margin:0}.map-app .article-heading .actions{justify-content:center}.map-app .map-shell{height:calc(100dvh - 20px);min-height:540px;position:relative;padding-bottom:28px;scroll-margin-top:0}.map-demo-strip{position:absolute;left:0;right:0;bottom:0;height:28px;display:flex;align-items:center;justify-content:center;background:#edf0e9;color:#657174;font-size:9px;border-top:1px solid #15243e1a}.map-app #panel{box-shadow:3px 0 15px #15243e12}.map-app .search-panel{padding-top:27px}.map-app .search-panel>.eyebrow{font-size:9px;margin-bottom:18px}.map-app .record-hero{padding-top:27px;padding-bottom:29px}.map-app .record-hero h1{font-size:clamp(33px,3.1vw,46px)}@media(max-width:700px){.map-app .map-shell,.map-app .map-shell.reading{height:calc(100dvh - 12px);min-height:550px;padding-bottom:30px}.map-app .map-area{height:32%;min-height:170px}.map-demo-strip{font-size:8px;padding:0 10px;text-align:center;height:30px}.map-app .search-panel>.eyebrow{display:block;font-size:8px}.map-app .article-heading .actions{flex-wrap:wrap}.map-app .record-hero h1{font-size:35px}}
.map-app .map-shell,.map-app .map-shell.reading{padding-bottom:0}.life-timeline{list-style:none;padding:15px 0 0;margin:0}.life-timeline li{position:relative;display:grid;grid-template-columns:73px 1fr;gap:31px;padding-bottom:34px}.life-timeline li:last-child{padding-bottom:0}.life-timeline li:before{content:'';position:absolute;left:86px;top:16px;bottom:-16px;width:1px;background:#bccfce}.life-timeline li:last-child:before{display:none}.life-timeline li:after{content:'';position:absolute;left:81px;top:13px;width:11px;height:11px;border-radius:50%;background:#b7964b;box-shadow:0 0 0 5px #f3eedf;border:2px solid white}.timeline-year{font-family:var(--serif);font-size:29px;line-height:1.4;letter-spacing:-.03em;color:#937538}.timeline-label{display:block;font-size:8px;letter-spacing:.12em;color:#7c8b91;margin:6px 0 10px}.life-timeline h3{font-size:23px;line-height:1.25;letter-spacing:-.04em}.life-timeline p{font-size:12px;line-height:1.8;margin:11px 0 0}.life-timeline .timeline-present>div{background:#eaf3f7;border-radius:10px;padding:17px 19px;margin-top:-5px}.life-timeline .timeline-present:after{background:var(--dark);box-shadow:0 0 0 5px #e2edf1}.timeline-present .timeline-year{color:var(--dark)}@media(max-width:700px){.life-timeline li{grid-template-columns:57px 1fr;gap:25px;padding-bottom:30px}.life-timeline li:before{left:66px}.life-timeline li:after{left:61px}.timeline-year{font-size:25px}.life-timeline h3{font-size:21px}.life-timeline p{font-size:11px}.life-timeline .timeline-present>div{padding:14px;margin-right:-6px}.timeline-label{font-size:7px}}
.map-app .search-panel .filters{display:flex;align-items:center;gap:10px;margin:14px 0 23px}.map-app .search-panel .filters select,.map-app .search-panel .filters button{height:42px;box-sizing:border-box;line-height:20px;font-size:12px;margin:0;border-radius:22px;border:1px solid #15243e35;background-color:transparent}.map-app .search-panel .filters select{appearance:none;-webkit-appearance:none;flex:1;min-width:0;padding:10px 36px 10px 15px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2315243e' stroke-width='1.4'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.map-app .search-panel .filters button{display:inline-flex;justify-content:center;align-items:center;flex:0 0 auto;padding:10px 15px}.map-app .search-panel .filters button:hover{background:#e3eadb}.paving{padding:0;background:none;overflow:hidden;border-radius:12px}.photo-stone{position:relative;width:100%;max-width:590px;margin:auto}.photo-stone img{width:100%;height:auto;display:block}.stone-lettering{position:absolute;inset:0;width:100%;height:100%;mix-blend-mode:multiply}.stone-lettering text{paint-order:stroke fill;stroke:#493d22;stroke-width:.3}
.city-picker{position:relative;flex:1;min-width:0}.map-app .search-panel .filters #city-trigger{width:100%;display:flex;justify-content:space-between;gap:14px;padding:10px 15px;background:#fff9;white-space:nowrap}.map-app .search-panel .filters #city-trigger[aria-expanded=true]{border-color:#6f9bad;box-shadow:0 0 0 2px #cee7f6;background:#fff}.city-picker #city-trigger svg{flex-shrink:0;transition:transform .18s}.city-picker #city-trigger[aria-expanded=true] svg{transform:rotate(180deg)}#city-options{position:absolute;top:calc(100% + 8px);left:0;min-width:100%;width:max-content;max-width:calc(100vw - 50px);background:white;border:1px solid #b6d1dc;border-radius:18px;box-shadow:0 15px 36px #15243e18;padding:8px;z-index:20}#city-options[hidden]{display:none}.map-app .search-panel .filters #city-options button{display:flex;justify-content:flex-start;width:100%;height:auto;min-height:44px;margin:0;border:0;border-radius:10px;background:white;padding:12px 16px;font-size:13px;color:var(--dark);text-align:left;white-space:nowrap}.map-app .search-panel .filters #city-options button[aria-selected=true]{background:#edf3e2;font-weight:600}.map-app .search-panel .filters #city-options button[aria-selected=true]:after{content:'✓';margin-left:auto;padding-left:20px}.map-app .search-panel .filters #city-options button:hover,.map-app .search-panel .filters #city-options button:focus-visible{background:#eaf3f7;outline:none}.map-app .search-panel:has(#city-options:not([hidden])){z-index:8}
.audio-controls #read-aloud{display:inline-flex;align-items:center;gap:9px}.speaker-icon{width:17px;height:17px;flex:0 0 17px}
.audio-controls #read-aloud .speaker-icon{width:20px;height:20px;display:block;stroke:currentColor;flex:0 0 20px}
.map-app .search-panel .filters #reset{display:inline-flex;align-items:center;gap:7px}.reset-icon{font-size:21px;line-height:16px;font-weight:400;display:inline-block;transform:translateY(-1px)}
.audio-controls #audio-stop{display:inline-flex;align-items:center;gap:8px}.stop-icon{width:15px;height:15px;flex:0 0 15px}
.reset-svg{width:18px;height:18px;display:block;flex:0 0 18px}.map-app .search-panel .filters #reset{gap:7px}
.map-app{overflow-x:hidden}.reset-svg{width:18px;height:18px;display:block;flex:0 0 18px}
.map-actions{position:absolute;right:15px;top:24px;z-index:4;display:flex;gap:8px}.map-actions button{border:0;border-radius:9px;background:#fff;box-shadow:0 2px 8px #15243e22;padding:11px 13px;color:var(--dark);font:inherit;font-size:10px;display:flex;align-items:center;gap:7px}.map-actions button:hover,.map-actions button.active{background:var(--lime)}.map-actions button:first-child{font-size:17px}.map-actions button:first-child span{font-size:10px}.map-actions #overview{position:static;right:auto;bottom:auto;font-size:10px;box-shadow:0 2px 8px #15243e22}.map-actions #overview span{display:inline}@media(max-width:700px){.map-actions{top:10px;right:10px}.map-actions button{padding:9px}.map-actions #overview span{display:none}.map-actions button:first-child span{display:none}}

/* One portrait treatment for results, nearby records and the detail panel. */
.person-avatar{overflow:hidden;isolation:isolate;flex-shrink:0;position:relative}
.person-avatar>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);z-index:1}
.person .monogram{position:absolute;width:60px;height:60px;right:25px;top:27px}
.person h2{padding-right:72px}
.record-portrait-block{position:relative;padding-bottom:66px;margin-bottom:10px}
.record-avatar{position:absolute;bottom:0;right:32px;display:grid;place-items:center;width:140px;height:140px;border:7px solid #f4f1e8;border-radius:50%;background:#dde3db;color:#607272;font-family:var(--serif);font-size:42px;box-shadow:0 6px 22px #15243e18}
.record-portrait-block .paving{margin-bottom:0}
@media(max-width:700px){.record-avatar{width:106px;height:106px;right:18px;border-width:5px;font-size:34px}.record-portrait-block{padding-bottom:52px}}

#record [hidden]{display:none!important}

.record-avatar{left:50%;right:auto;transform:translateX(-50%)}
.related .related-monogram{width:64px;height:64px;border-radius:50%;float:none}
.related{grid-template-columns:64px minmax(0,1fr) auto}
.related .relationship{display:inline-block;background:white;padding:4px 11px;border-radius:20px;color:#4b626e;font-size:11px}
.document-list{display:grid;gap:12px}.document-link{display:grid;grid-template-columns:52px minmax(0,1fr) 24px;align-items:center;gap:16px;padding:22px;background:#eaf1f3;border-radius:12px;color:var(--dark);text-decoration:none}.document-link:hover{background:#dce9ef}.document-format{font-size:10px;font-weight:700;padding:15px 6px;border:1px solid #15243e28;border-radius:8px;text-align:center}.document-link strong{font-size:14px}.document-link small{display:block;font-size:11px;color:#59707c;margin-top:5px}.document-link svg{width:24px;height:24px}.record-empty{font-size:13px!important;color:#63747c}.archival-cover{min-height:230px;display:grid;align-content:center;text-align:center;background:#dbe6e2;border-radius:12px;padding:24px 24px 55px}.archival-cover>p:last-child{font-family:var(--serif);font-size:34px;color:var(--dark)}
@media(max-width:700px){.record-avatar{right:auto;left:50%}.related{grid-template-columns:54px minmax(0,1fr)}.related .related-monogram{width:54px;height:54px}.document-link{padding:16px;gap:10px}}

/* Use the homepage component and its original SVG motif. */
#results{padding:18px;background:var(--blue);display:grid;gap:16px}
.reading #results{display:none}
#results .person.discover-card{display:flex;flex-direction:column;align-items:stretch;width:100%;min-height:240px;padding:24px 26px;border:1px solid #15243e12;border-radius:10px}
#results .person.discover-card:before,#results .person.discover-card:after{content:none}
#results .person.discover-card h2{font-size:28px;line-height:1.18;margin:18px 0 10px;padding-right:50px}
#results .person.discover-card p{max-width:none;font-size:12px;line-height:1.65;margin:0}
#results .person.discover-card .life{font-size:10px;letter-spacing:.12em;opacity:.65;margin:0 64px 0 0}
#results .person.discover-card .monogram{position:absolute;top:20px;right:20px;width:50px;height:50px;border:3px solid #f6f5f1;z-index:2}
#results .person.discover-card .card-link{background:none;color:inherit;display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin-top:auto;padding:24px 0 0;border:0;border-radius:0;font-size:11px;font-weight:500}
#results .person.discover-card .card-link b{margin:0;font-weight:400}
#results .person.discover-card:nth-child(3) p{color:#c8d4df}
#results .person.discover-card:nth-child(3) h2{color:var(--white)}
@media(max-width:700px){#results{padding:14px}#results .person.discover-card{min-height:230px;padding:22px 24px}}
/* Directory uses only the light homepage card variant. */
#results .person.discover-card:nth-child(n),
#results .person.discover-card:nth-child(n):hover{background:#f6f5f1;color:var(--dark)}
#results .person.discover-card:nth-child(n) h2{color:var(--dark)}
#results .person.discover-card:nth-child(n) p{color:var(--graphite)}
#results .person.discover-card:nth-child(n) .card-link b{background:transparent;color:var(--dark);border-color:#15243e35}
#results .person.discover-card:nth-child(n) .card-hero-motif{opacity:1}
#results .person.discover-card:nth-child(n) .card-hero-motif path{fill:#8db8cc;opacity:.3}
#results .person.discover-card:nth-child(n) .card-hero-motif path:nth-child(3){fill:#79a9be;opacity:.45}
#results .person.discover-card:nth-child(n) .card-hero-motif path:nth-child(5){fill:#89b4c8;opacity:.5}
/* Larger portraits get a dedicated row, clear of the decorative motif. */
#results .person.discover-card{display:grid;grid-template-columns:86px minmax(0,1fr);grid-template-rows:auto auto auto 1fr;column-gap:18px;align-items:start;min-height:300px}
#results .person.discover-card .monogram{position:relative;grid-column:1;grid-row:1;top:auto;right:auto;width:86px;height:86px;margin:0;border:4px solid white;box-shadow:0 3px 12px #15243e14;font-size:28px}
#results .person.discover-card .life{grid-column:2;grid-row:1;align-self:center;margin:0;font-size:10px;line-height:1.8}
#results .person.discover-card h2{grid-column:1/-1;grid-row:2;padding-right:0;margin:20px 0 10px}
#results .person.discover-card>p:not(.life){grid-column:1/-1;grid-row:3}
#results .person.discover-card .card-link{grid-column:1/-1;grid-row:4;align-self:end;padding-top:24px}
@media(max-width:400px){#results .person.discover-card{grid-template-columns:78px minmax(0,1fr);column-gap:14px}#results .person.discover-card .monogram{width:78px;height:78px}}
/* Compact white cards on a warm brass-tinted directory background. */
#results{background:#e9dfc7;gap:12px;padding:16px}
#results .person.discover-card:nth-child(n),#results .person.discover-card:nth-child(n):hover{background:#fff;min-height:0;padding:20px 24px;grid-template-rows:auto auto auto auto}
#results .person.discover-card h2{margin:13px 0 6px;font-size:26px}
#results .person.discover-card .card-link{margin-top:0;padding-top:17px}
#results .person.discover-card .card-hero-motif{min-height:0;opacity:.6}
#results .person.discover-card:nth-child(n) .card-hero-motif path{fill:#ba9c59;opacity:.18}
#results .person.discover-card:nth-child(n) .card-hero-motif path:nth-child(3){fill:#ba9c59;opacity:.25}
#results .person.discover-card:nth-child(n) .card-hero-motif path:nth-child(5){fill:#ba9c59;opacity:.22}
@media(max-width:400px){#results .person.discover-card:nth-child(n){padding:18px 20px}}
/* Masonry archive photographs and accessible full-screen viewer. */
.record-gallery{columns:2;column-gap:14px;margin-top:25px}
.gallery-tile{position:relative;display:block;break-inside:avoid;width:100%;padding:0;margin:0 0 14px;border:0;border-radius:12px;overflow:hidden;background:#f2eee5;color:var(--dark);text-align:left;cursor:zoom-in}
.gallery-tile img{display:block;width:100%;height:auto;transition:filter .2s}
.gallery-tile:hover img{filter:brightness(.93)}
.gallery-caption{display:block;padding:13px 44px 13px 14px;font-size:11px;line-height:1.6}
.gallery-enlarge{position:absolute;right:9px;bottom:12px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:white;box-shadow:0 2px 10px #15243e14}
.gallery-enlarge svg{width:17px;height:17px}
.gallery-dialog{position:fixed;inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:70px 85px 35px;border:0;background:#101b2aee;color:white;overscroll-behavior:contain}
.gallery-dialog::backdrop{background:#101b2aeb}
.gallery-dialog[open]{display:grid;place-items:center}
.gallery-dialog figure{margin:0;width:min(1080px,100%);min-height:0;max-height:100%;display:flex;flex-direction:column;align-items:center}
.gallery-full-image{width:auto!important;max-width:100%;height:auto;max-height:calc(100dvh - 170px);object-fit:contain;border-radius:8px}
.gallery-dialog figcaption{width:100%;display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:18px;font-size:14px;color:#e3e8ed}
.gallery-counter{white-space:nowrap;color:#c9d4df;font-variant-numeric:tabular-nums}
.gallery-dialog button{position:absolute;display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff40;border-radius:50%;background:#ffffff14;color:white;cursor:pointer}
.gallery-dialog button:hover{background:#ffffff2b}.gallery-dialog button:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
.gallery-dialog button svg{width:24px;height:24px}.gallery-close{top:20px;right:24px}.gallery-prev{left:20px;top:calc(50% - 24px)}.gallery-next{right:20px;top:calc(50% - 24px)}.gallery-dialog button:disabled{opacity:.3;cursor:default}
.gallery-error{color:white;font-size:14px}.gallery-error[hidden]{display:none}
@media(max-width:700px){.record-gallery{column-gap:10px}.gallery-tile{margin-bottom:10px}.gallery-dialog{padding:75px 16px 95px}.gallery-full-image{max-height:calc(100dvh - 230px)}.gallery-dialog figcaption{font-size:12px;gap:14px}.gallery-prev,.gallery-next{top:auto;bottom:24px}.gallery-prev{left:calc(50% - 62px)}.gallery-next{right:calc(50% - 62px)}.gallery-caption{padding:10px;font-size:10px}.gallery-enlarge{bottom:auto;top:8px}}
@media(prefers-reduced-motion:reduce){.gallery-tile img{transition:none}}
/* Bleed the SVG beyond its internal viewBox margin. */
#results .person.discover-card:nth-child(n){padding:16px 22px;grid-template-columns:80px minmax(0,1fr);column-gap:16px}
#results .person.discover-card .monogram{width:80px;height:80px}
#results .person.discover-card h2{margin:10px 0 4px}
#results .person.discover-card .card-link{padding-top:12px}
#results .person.discover-card .card-hero-motif{top:-10px;bottom:-10px;height:calc(100% + 20px);min-height:0}
#results .person.discover-card .card-hero-motif svg{display:block;height:100%;width:100%}
/* Detail header shares the white-and-brass directory card treatment. */
#record{background:#e9dfc7}
#record .record-hero{margin:18px 24px 0;padding:28px 30px;background:#fff;color:var(--dark);border:1px solid #15243e12;border-radius:12px;box-shadow:0 10px 25px #15243e08}
#record .record-hero h1{color:var(--dark);padding-right:30px;font-size:clamp(32px,3.5vw,50px)}
#record .record-hero h1:focus{outline:none}
#record .record-hero .eyebrow,#record .record-hero>p:last-child{color:#65747b}
#record .record-hero .panel-motif{top:-10px;right:-12px;width:155px;height:calc(100% + 20px);transform:rotate(180deg);opacity:1}
#record .record-hero .panel-motif svg{display:block;width:100%;height:100%}
#record .record-hero .panel-motif path{fill:#ba9c59;opacity:.18}
#record .record-hero .panel-motif path:nth-child(3){opacity:.25}
#record .record-hero .panel-motif path:nth-child(5){opacity:.22}
#record .record-avatar{border-color:#e9dfc7}
#record .archival-cover{background:#fff}
@media(max-width:700px){#record .record-hero{margin:14px 16px 0;padding:24px}#record .record-hero h1{font-size:34px;padding-right:10px}}
/* Scroll navigation fix is confined to botlatokovek.html. */
body.directory-scroll-page{overflow-x:clip;overflow-y:visible;--directory-header-height:100px}
.directory-scroll-page>header{position:sticky!important;top:0!important;z-index:30;background:var(--dark)}
.directory-scroll-page .map-shell,.directory-scroll-page .map-shell.reading{height:calc(100dvh - var(--directory-header-height) - 20px);min-height:360px;scroll-margin-top:var(--directory-header-height)}
.directory-scroll-page #panel{overscroll-behavior-y:auto;min-height:0}
@media(max-width:700px){.directory-scroll-page .map-shell,.directory-scroll-page .map-shell.reading{height:calc(100dvh - var(--directory-header-height) - 16px);min-height:360px}}
.candle-card>div{min-width:0;flex:1}.candle-card .memorial-link{display:block;width:max-content;max-width:100%;margin-top:14px;color:#dcebbd;font-size:11px;line-height:1.4;text-decoration:none;border-bottom:1px solid #dcebbd66;padding-bottom:3px}.candle-card .memorial-link:hover{color:#fff;border-bottom-color:#fff}
@media(max-width:700px){.candle-card .memorial-link{font-size:10px;width:auto}.candle-card{align-items:flex-start}}
.candle-card.lit .candle-symbol:before{transform-origin:50% 100%;animation:record-candle-flicker 3.2s ease-in-out infinite}
@keyframes record-candle-flicker{0%,100%{transform:rotate(25deg) scale(1);opacity:1}28%{transform:rotate(21deg) scale(.97,1.04);opacity:.92}53%{transform:rotate(27deg) scale(1.02,.97);opacity:.98}76%{transform:rotate(23deg) scale(.98,1.02);opacity:.94}}
@media(prefers-reduced-motion:reduce){.candle-card.lit .candle-symbol:before{animation:none}}

/* A viewport-sized map with the shared navigation along the bottom. */
html:has(.map-workspace){height:100%;overflow:hidden;scroll-behavior:auto;scroll-padding-top:0}
body.map-workspace{height:100dvh;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}
.map-workspace>main{min-height:0;overflow:hidden}
.map-workspace .map-shell,.map-workspace .map-shell.reading{height:100%;min-height:0;padding:0;scroll-margin-top:0}
.map-workspace #panel{min-height:0;overscroll-behavior:contain}
.map-workspace .map-area{height:100%;min-height:0}
.map-navigation{position:relative;z-index:30;padding:8px 24px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #ffffff20}
.map-navigation .nav-shell{max-width:100%;padding:8px 16px;gap:28px}
.map-navigation .brand{border-right:1px solid #ffffff38;padding-right:24px}
.map-navigation nav{gap:24px}
.map-navigation nav a{font-size:12px;padding:10px 0}
.map-navigation nav a:hover,.map-navigation nav a[aria-current="page"]{color:var(--lime)}
.map-navigation nav .nav-cta{display:flex;align-items:center;gap:22px;border-radius:10px;padding:10px 16px;background:var(--lime);color:var(--dark)}
.map-navigation nav .nav-cta:hover{background:#edf5da;color:var(--dark)}
.map-navigation :focus-visible{outline-color:var(--lime)}
@media(max-width:900px){
 .map-navigation{padding:7px 14px calc(7px + env(safe-area-inset-bottom))}
 .map-navigation .nav-shell{width:100%;position:relative;justify-content:space-between;padding:7px 12px;gap:16px}
 .map-navigation .brand{border:0;padding:0}
 .map-navigation .menu-button{display:flex;align-items:center;gap:12px;border:1px solid #ffffff40;border-radius:10px;background:none;color:var(--white);padding:9px 12px;font-size:11px}
 .map-navigation #navigation{display:none;position:absolute;top:auto;bottom:calc(100% + 9px);left:0;right:0;max-height:calc(100dvh - 95px);overflow-y:auto;padding:12px;background:#20334f;border:1px solid #ffffff20;border-radius:12px;box-shadow:0 -8px 30px #0003}
 .map-navigation #navigation.open{display:grid;gap:3px}
 .map-navigation #navigation a{padding:13px;font-size:13px}
 .map-navigation #navigation .nav-cta{margin-top:4px;justify-content:space-between}
}
@media(max-width:700px){
 .map-workspace .map-area{height:38%;min-height:120px}
 .map-navigation .brand>svg{width:32px;height:32px}
}
