:root{color-scheme:dark;--bg:#110f16;--card:#211b25;--card2:#29222e;--light:#f4ede4;--muted:#c4b7b2;--gold:#f0c985;--line:#56434e;--shadow:#050307ae}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--light);background:radial-gradient(circle at 80% -20%,#593742 0,#241a27 33%,#110f16 70%);min-height:100vh}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ecc78b;outline-offset:3px}.skip{position:absolute;left:0;top:-100px;background:#fff;color:#111;padding:8px;z-index:9}.skip:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #604b54;background:#16121bd9;min-height:77px;padding:8px max(24px,calc((100vw - 1220px)/2))}.logo{text-decoration:none;display:flex;align-items:center;gap:12px;min-width:220px}.logo-mark{color:var(--gold);font-size:39px;font-family:Georgia,serif;line-height:1}.logo-words{display:flex;flex-direction:column}.logo-words strong{font:31px/1.1 Georgia,serif;letter-spacing:.01em}.logo-words small{letter-spacing:.18em;font:9px system-ui;color:#e0c4a0;text-transform:uppercase}.nav{display:flex;gap:30px}.nav a{text-decoration:none;color:#ded3d0;white-space:nowrap;font-family:Georgia,serif;font-size:16px}.nav a:hover,.nav a[aria-current=page]{color:var(--gold)}.language{display:flex;align-items:center;border:1px solid #77636b;border-radius:999px;padding:5px 9px;gap:5px}.language select{border:0;background:transparent;color:var(--light);font-size:13px;max-width:120px}.language option{background:#201b26}main{min-height:78vh}.view[hidden],.notice[hidden],.toast[hidden]{display:none!important}.hero{max-width:1300px;margin:auto;min-height:575px;display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,1fr);align-items:center;padding:50px clamp(25px,5vw,65px);gap:30px}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:650;letter-spacing:.25em;color:var(--gold)}.hero h1{font:clamp(55px,7vw,105px)/1.03 Georgia,serif;margin:15px 0 25px;font-weight:400;letter-spacing:-.04em}.gold-line{display:block;font:clamp(24px,3vw,40px)/1.3 Georgia,serif;letter-spacing:0;color:#f0d8aa;margin-top:10px}.hero-text{font:19px/1.75 Georgia,serif;color:#e1d4cf;max-width:520px}.hero-actions,.hero-attributes{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.hero-actions{margin:30px 0}.btn{border:1px solid #705a59;min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:12px 21px;border-radius:999px;font-weight:600;text-decoration:none;color:var(--light);transition:transform .2s,background .2s}.btn:hover{transform:translateY(-1px)}.btn.gold{border:1px solid #ffdfa2;background:linear-gradient(125deg,#f9d992,#d6a661);color:#291c16;box-shadow:0 4px 26px #b97d3866}.btn.outline{background:#211b26;color:#eee1d5}.btn.ghost{background:#403041}.hero-attributes{font-size:12px;gap:21px;color:#e0cdcb}.hero-art{height:450px;position:relative;display:grid;place-items:center;border-radius:160px 30px 140px 45px;background:radial-gradient(ellipse at 51% 54%,#76452e99 0,#41293377 23%,transparent 60%),linear-gradient(120deg,#2d1e2d55,#58404a33);isolation:isolate;overflow:hidden}.hero-art::before{content:"";position:absolute;bottom:0;left:0;right:0;height:37%;background:radial-gradient(ellipse at center,#87604a 1%,#352332 48%,transparent 80%);z-index:-1}.halo{position:absolute;width:255px;height:255px;top:75px;border-radius:50%;background:radial-gradient(circle,#ffc66c9c,#e9a34744 25%,transparent 67%);filter:blur(28px)}.candle{width:140px;height:200px;position:relative;margin-top:65px;filter:drop-shadow(0 30px 30px #080309)}.wax{position:absolute;width:138px;height:165px;bottom:0;border-radius:18px 18px 12px 12px;background:linear-gradient(90deg,#3d2b2d,#b47c55 15%,#e5af76 34%,#f6dab0 50%,#c99464 75%,#4a3334);box-shadow:inset 0 9px 17px #ffdb9c80,0 0 40px #eb9d5888}.wax::after{content:"✧";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#7b5536;font:55px Georgia,serif}.wick{position:absolute;width:4px;height:21px;bottom:161px;left:68px;border-radius:4px;background:#45322b}.flame{position:absolute;width:44px;height:70px;bottom:169px;left:48px;background:radial-gradient(circle at 60% 70%,#fffcc2 8%,#f9d175 45%,#f59e44 73%,#b64c23 90%);border-radius:80% 12% 62% 48%;transform:rotate(42deg);box-shadow:0 0 33px 14px #ffad5ca1,0 0 95px 30px #ef8f463e;animation:flicker 2.7s ease-in-out infinite}.flower{position:absolute;color:#d3b196a3;font:80px Georgia,serif;text-shadow:0 0 22px #fff2}.leftflower{bottom:54px;left:60px}.rightflower{bottom:35px;right:47px}.art-caption{position:absolute;right:15px;bottom:22px;max-width:250px;font:italic 19px/1.4 Georgia,serif;color:#e6d5c2;text-align:right}.features{max-width:1190px;margin:10px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:0 24px}.feature{display:flex;gap:17px;background:linear-gradient(125deg,#29212d,#1a1822);border:1px solid #4c3b45;border-radius:15px;padding:25px 22px;min-height:160px}.feature h2{font:23px/1.2 Georgia,serif;margin:0 0 10px}.feature p{margin:0;color:#c9bdb7;font-size:13px}.feature-icon{font-size:35px;line-height:1;color:var(--gold)}.home-bottom{max-width:1150px;margin:50px auto 85px;padding:35px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #504049}.home-bottom h2{font:33px Georgia,serif;margin:7px 0}.home-bottom p:not(.eyebrow){max-width:680px;color:#c9bdb7}.page-heading{text-align:center;max-width:730px;margin:58px auto 34px;padding:0 20px}.page-heading h1{font:clamp(38px,5vw,60px) Georgia,serif;margin:7px 0 12px}.page-heading>p:last-child{color:#c5b9b5;font-size:16px}.form-card{max-width:750px;margin:0 auto 75px;background:linear-gradient(120deg,#28212b,#1b1822);padding:clamp(20px,4vw,45px);border-radius:19px;border:1px solid #5c4b51;box-shadow:0 25px 70px #07030870}label:not(.language,.choice){display:block;font-weight:550;font-size:13px;margin:18px 0 7px}input:not([type=radio]),textarea,select:not(#language){width:100%;min-width:0;border:1px solid #66535b;border-radius:10px;background:#17141e;color:#f5e8da;padding:13px 14px;outline-offset:3px}textarea{resize:vertical}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:17px}fieldset{border:0;padding:0;margin:22px 0 10px}legend{font-weight:650;color:var(--gold);padding:0 0 12px}.choice{display:flex;align-items:center;gap:12px;padding:14px;margin-bottom:9px;background:#332a35;border:1px solid #624b51;border-radius:10px;cursor:pointer}.choice input{accent-color:#edc17b;width:19px;height:19px}.choice span{display:flex;flex-direction:column}.choice small{color:#c9bcb5;font-size:12px}.fine{font-size:12px;color:#c8b9b3;line-height:1.8}.form-actions{display:flex;justify-content:flex-end;margin:22px 0}.notice{padding:12px 15px;border-radius:10px;border:1px solid #8c6954;background:#4a302e;color:#f9daca}.filters{max-width:760px;margin:24px auto;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 18px}.public-grid{max-width:1180px;margin:24px auto 100px;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:17px;padding:0 18px}.public-card{display:block;text-decoration:none;background:#27202c;border:1px solid #624954;border-radius:16px;padding:23px;min-height:175px}.public-card:hover{border-color:#e1b878}.public-card strong{display:block;font:25px Georgia,serif}.public-card .small{color:#bcb0b0;font-size:12px}.public-card p{max-height:80px;overflow:hidden;color:#e5d5cd}.quiet-empty{grid-column:1/-1;text-align:center;padding:65px 24px;color:#c7b9b4}.quiet-empty h2{font:32px Georgia,serif;color:#f3e3d1}
.memorial-banner{max-width:1180px;margin:35px auto 20px;text-align:center;border-radius:25px;padding:38px 24px;background:linear-gradient(115deg,#3b2633,#352832 65%,#513a37);border:1px solid #594752}.memorial-banner h1{font:clamp(37px,5vw,62px)/1.2 Georgia,serif;margin:10px 0 8px}.memorial-banner p{color:#ebd2bf}.memorial-layout{max-width:1180px;margin:0 auto 85px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.85fr);gap:17px;padding:0 18px}.memorial-card{border:1px solid #53434d;border-radius:18px;background:linear-gradient(140deg,#2b2230,#1c1822);padding:25px}.memorial-card h2{font:26px Georgia,serif;margin:2px 0 16px}.candle-scene{text-align:center;min-height:325px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border-radius:20px;background:radial-gradient(ellipse at center,#64403091,#31212d 54%,#211922)}.candle-scene .candle{transform:scale(.64);transform-origin:center;margin:5px 0 -17px;height:260px}.candle-scene .wax{bottom:35px}.candle-scene .wick{bottom:196px}.candle-scene .flame{bottom:204px}.candle-scene .candle-count{font:39px Georgia,serif;color:#f7cd89}.muted{font-size:13px;color:#c1b5b3}.share-box{background:#17141e;border-radius:10px;border:1px solid #685563;padding:13px;margin:16px 0;overflow-wrap:anywhere;font-size:13px}.mini-actions{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}.mini-actions .btn{border-radius:10px}.nickname-field{margin-bottom:15px}.chat-feed{display:flex;flex-direction:column;gap:9px;max-height:340px;min-height:160px;overflow:auto;padding:10px;background:#15131c;border:1px solid #51414d;border-radius:12px}.chat-message{border:1px solid #5d4758;background:#2d2532;border-radius:10px;padding:11px 12px}.chat-message strong{color:#f5cb8c;font-size:13px}.chat-message small{margin-left:9px;color:#bcaeaf}.chat-message p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.chat-controls{display:grid;grid-template-columns:1fr auto;gap:8px;margin:10px 0}.chat-controls textarea{min-height:66px}.section-connection{font-size:12px;color:#b8adaf}.section-connection.online{color:#cdd7b0}.status-line{color:#f4d3a7;min-height:1.5em}.support-note{background:#201b25;padding:14px;border-radius:12px;border:1px solid #4d3d4a;margin-top:23px}.support-note strong{font-family:Georgia,serif}.support-note p{font-size:12px;color:#d3c2ba}.support-note .btn{font-size:12px;min-height:35px}.memorial-tribute{font:italic 20px/1.5 Georgia,serif;color:#e8d4bf}.memorial-actions{margin-top:17px}.privacy-option{font-size:13px}.memorial-right .memorial-card+.memorial-card,.memorial-left .memorial-card+.memorial-card{margin-top:17px}.memorial-expiry{border:1px solid #6c5664;background:#332734;border-radius:10px;padding:12px;color:#e5c7af;font-size:13px}.upgrade-panel{padding-top:12px;border-top:1px solid #59444f}.toast{position:fixed;right:25px;bottom:20px;max-width:420px;padding:14px 22px;background:#55404b;color:white;border:1px solid #d8b682;border-radius:12px;z-index:100;box-shadow:0 15px 50px #0007}footer{max-width:1180px;margin:auto;border-top:1px solid #4b3943;padding:25px 15px 35px;display:flex;justify-content:space-between;align-items:center;gap:15px;color:#bdb0aa;font-size:12px}footer a{text-decoration:none}.footer-logo{font:25px Georgia,serif;color:#e4c58e}@keyframes flicker{0%,100%{transform:rotate(42deg) scale(1);opacity:1}30%{transform:rotate(38deg) scale(.95,1.04);opacity:.9}60%{transform:rotate(45deg) scale(1.03,.94);opacity:1}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media(max-width:930px){.hero{grid-template-columns:1fr;padding-top:35px}.hero-art{height:360px;max-width:650px;width:100%;justify-self:center}.features{grid-template-columns:1fr}.feature{min-height:100px}.home-bottom{margin:24px;padding:24px}.memorial-layout{grid-template-columns:1fr}.header{gap:12px}.nav{gap:13px}}@media(max-width:610px){.header{padding:12px 16px;flex-wrap:wrap}.logo{min-width:0;flex:1}.logo-words strong{font-size:25px}.nav{order:3;width:100%;display:flex;justify-content:space-between;gap:7px}.nav a{font-size:13px}.hero{padding:25px 18px}.hero h1{font-size:58px}.hero-art{height:335px;border-radius:100px 20px 80px 20px}.hero-attributes{gap:11px}.art-caption{font-size:15px}.form-two,.filters{grid-template-columns:1fr}.memorial-banner{margin:16px}.memorial-layout{padding:0 12px}.memorial-card{padding:19px}.chat-controls{grid-template-columns:1fr}.home-bottom{display:block}.home-bottom .btn{margin-top:16px}footer{flex-direction:column;text-align:center}}

/* Lumerento — optional social sign-in and quiet sharing studio */
.account-trigger{border:1px solid #846b64;background:linear-gradient(135deg,#30232e,#211b25);color:var(--light);padding:10px 18px;border-radius:999px;white-space:nowrap;font-weight:600;font-size:13px;letter-spacing:.01em;transition:border-color .2s,transform .2s}
.account-trigger:hover{border-color:var(--gold);transform:translateY(-1px)}
.account-dialog{position:fixed;inset:0;max-width:min(440px,calc(100vw - 28px));max-height:calc(100dvh - 35px);width:100%;border:1px solid #8c6a6a;border-radius:26px;padding:32px;background:radial-gradient(ellipse at 50% -15%,#574055 0%,#27212b 48%,#18141d 100%);box-shadow:0 25px 100px #000b;color:var(--light);text-align:center;overflow:auto}
.account-dialog::backdrop{background:#07050bdc;backdrop-filter:blur(6px)}
.account-crown{margin:0 auto 10px;font:62px/1 Georgia,serif;color:#e6c88f;text-shadow:0 0 34px #e6a85c8a}
.account-dialog h2{font:34px/1.18 Georgia,serif;margin:9px 0 18px;color:#fff1e4}
.account-dialog p:not(.eyebrow){color:#dbcad0}
.account-dialog .fine{font-size:12px;line-height:1.6}
.modal-close{position:absolute;top:14px;right:18px;border:0;background:#ffffff12;color:#f0dfcc;border-radius:50%;width:36px;height:36px;font-size:25px}
.auth-providers{display:grid;gap:12px;margin:26px 0 20px}
.auth-provider{min-height:54px;display:flex;justify-content:center;align-items:center;gap:13px;border:1px solid #c7b6ba;border-radius:14px;background:#fbf7f4;color:#24232b;font-weight:700;box-shadow:0 8px 20px #0003}
.auth-provider:not(:disabled):hover{box-shadow:0 12px 28px #0005;transform:translateY(-1px)}
.auth-provider:disabled{background:#aa9da2;color:#3a3236;opacity:.68}
.auth-provider span{font:700 23px system-ui}
.auth-provider .google-g{color:#4285f4}
.auth-provider .facebook-f{color:#1877f2}
.share-studio{display:grid;gap:17px;padding:8px 0 0}
.share-kicker{font-size:10px!important;letter-spacing:.2em;color:var(--gold)!important;margin:0}
.share-visual{min-height:136px;border:1px solid #b5936c66;border-radius:18px;display:flex;align-items:center;gap:21px;padding:20px 24px;background:radial-gradient(circle at 17% 43%,#bd7c4644,transparent 44%),linear-gradient(145deg,#483141,#1a1723);box-shadow:inset 0 1px 0 #ffffff18;overflow:hidden}
.share-flame{display:grid;place-items:center;min-width:80px;width:80px;height:80px;border:1px solid #ffe0a33d;border-radius:50%;background:radial-gradient(circle,#f4d39322,transparent 70%);font:55px Georgia,serif;color:#f2ce85;text-shadow:0 0 22px #f7b74d90}
.share-visual strong{display:block;font:clamp(23px,2.7vw,32px)/1.16 Georgia,serif;color:#fdf2e5;overflow-wrap:anywhere}
.share-visual span{display:block;margin-top:8px;font:12px/1.4 system-ui;color:#d9c3bd}
.share-description{margin:0;color:#e7d6d0;font:16px/1.5 Georgia,serif}
.share-quick{display:flex;flex-wrap:wrap;gap:9px}
.share-action{display:flex;gap:9px;align-items:center;justify-content:center;flex:1 1 140px;min-height:46px;border:1px solid #9e806f;border-radius:12px;background:#362a35;color:#f7e9da;font-weight:650;padding:10px 12px}
.share-action.main{background:linear-gradient(120deg,#f3d5a1,#ca9c65);color:#241925;border-color:#ebca8c}
.share-action-icon{font-size:20px;line-height:1}
.share-action:hover{filter:brightness(1.13)}
.share-networks{border-top:1px solid #72555c; padding-top:17px}
.share-networks>p{margin:0 0 13px;color:#ddc8c4;font-size:13px}
.share-net-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.share-site{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:76px;border:1px solid #66535d;border-radius:12px;background:#ffffff08;text-decoration:none;color:#f8e9e2;transition:background .2s,transform .2s}
.share-site:hover{background:#f4c88c1c;transform:translateY(-2px);border-color:#d4ae7d}
.share-site>span{display:grid;place-items:center;width:33px;height:33px;border-radius:11px;background:#e9cdac18;border:1px solid #cda67f40;font-size:17px;font-weight:800}
.share-site small{font-size:10px;line-height:1.2;text-align:center;color:#d9c4bf}
.share-link-row{border:1px solid #755f62;border-radius:11px;background:#0e0c12;padding:4px 12px}
.share-url{font-size:12px;width:100%;color:#d8c6c3!important;background:transparent!important;border:0!important;outline:none!important;text-overflow:ellipsis}
.share-privacy{font-size:12px;line-height:1.5;color:#c5afb0;margin:0}
@media(max-width:760px){.account-trigger{padding:8px 12px;max-width:160px;overflow:hidden;text-overflow:ellipsis}.share-visual{padding:17px 14px;gap:10px}.share-flame{min-width:62px;width:62px;height:62px;font-size:42px}.share-net-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.share-site{min-height:70px}}
@media(max-width:410px){.share-net-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.account-dialog{padding:25px 16px}.account-trigger{max-width:125px;font-size:12px}}

@media(max-width:610px){
 .header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 8px;align-items:center}
 .header .logo{grid-column:1;grid-row:1;min-width:0}
 .header #account-trigger{grid-column:2;grid-row:1;max-width:130px}
 .header .language{grid-column:2;grid-row:2;justify-self:end;max-width:160px}
 .header .nav{grid-column:1/-1;grid-row:3;width:100%;order:initial;display:flex;justify-content:space-between}
}

/* Lumerento · remembrance archive, collections and places */
.archive-choice{margin:18px 0 12px!important;background:linear-gradient(120deg,#b48b5d14,#5b354822);border-color:#ae886967!important}
.timeline-track{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:20px 0 8px}
.timeline-track>.eyebrow{margin-right:13px}
.timeline-period{border:1px solid #9b7e7a;border-radius:100px;background:#342733;color:#f0dfd2;padding:9px 16px;min-height:39px;font-size:13px}
.timeline-period[aria-pressed=true],.timeline-period:hover{background:#c6a376;color:#251c24;border-color:#dec291}
.places-directory{margin:16px 0 30px;padding:18px 22px;border:1px solid #896b5a77;border-radius:18px;background:linear-gradient(135deg,#362b35a8,#201a24c4)}
.places-directory h2{font:clamp(22px,2.5vw,29px)/1.3 Georgia,serif;color:#f5e3d0;margin:2px 0 8px}
.places-directory .muted{font-size:12px;margin:0 0 13px}
.place-chip{display:inline-flex;align-items:center;gap:6px;margin:5px 7px 5px 0;min-height:38px;padding:8px 13px;border:1px solid #a68c78;border-radius:10px;color:#f0ddcd;text-decoration:none;font-size:13px;background:#70513c2b}
.place-chip:hover{background:#b88a583d;border-color:#e2b980}
.cemetery-details{margin:14px 0 0;padding-top:14px;border-top:1px solid #846d654a}
.cemetery-details .muted{font-size:11px;line-height:1.5}
.memorial-card input#manage-cemetery{display:block;width:100%;margin:8px 0 12px}
.memorial-card button{margin-top:7px}
@media(max-width:610px){.timeline-track{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 0 12px}.timeline-period{flex:0 0 auto;scroll-snap-align:start}.places-directory{padding:16px 14px}.place-chip{max-width:100%;white-space:normal}.nav a{font-size:11px}}

.place-lookup{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:9px;align-items:center;margin:14px 0}
.place-lookup input{width:100%;min-width:0;border:1px solid #9d7a75;border-radius:10px;background:#1f1a23;color:#fff4e7;padding:12px;font-size:14px}
.place-lookup button{margin:0;white-space:nowrap}
@media(max-width:610px){.header .nav{flex-wrap:wrap;justify-content:center;gap:4px}.header .nav a{flex:1 1 auto;min-width:0;white-space:nowrap;padding:8px 6px}.place-lookup{grid-template-columns:1fr 1fr}.place-lookup button{grid-column:1/-1}}

/* Lumerento Atelier: extra navigation item without horizontal clipping */
@media(max-width:920px){.header .nav{flex-wrap:wrap;justify-content:center;row-gap:8px}}

/* Email federation appears only after the central broker is enabled. */
.auth-provider[hidden]{display:none!important}
.auth-provider .email-mark{color:#966d42;font-size:20px}
.auth-provider [data-i18n="accountEmail"]{font-size:15px;font-weight:650;letter-spacing:.01em}

/* Gentle 24-hour emphasis on newly shared remembrances. */
.chat-message--recent { box-shadow: inset 2px 0 0 rgba(177,143,105,.65); }
.archive-browse { margin: 1rem 0 1.25rem; }
.archive-browse label { display: inline-flex; align-items: center; gap: .7rem; cursor: pointer; }
.archive-browse input { accent-color: #a98b62; }
