:root{--bg:#f7f5f1;--paper:#fff;--text:#292a28;--muted:#73756f;--line:#e6e2db;--accent:#526b5d;--accent-dark:#34483d;--soft:#eef1ed;--danger:#9f3f3f;--radius:18px;--shadow:0 14px 40px rgba(35,38,33,.07);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6}a{color:var(--accent-dark);text-decoration:none}a:hover{text-decoration:underline}img,video{max-width:100%;display:block}button,input,textarea,select{font:inherit}.container{width:min(1160px,calc(100% - 36px));margin:auto}.narrow{width:min(700px,calc(100% - 36px));margin:auto}.narrow-wide{width:min(900px,calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(247,245,241,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(230,226,219,.8)}.nav{height:72px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:9px;align-items:center;font-weight:760;font-size:1.15rem;color:var(--text)}.brand-mark{font-size:1.7rem;color:var(--accent)}.nav nav{display:flex;align-items:center;gap:22px}.nav nav>a,.link-btn{font-weight:560;color:#4a4d48}.inline{display:inline}.link-btn{background:none;border:0;padding:0;cursor:pointer}.nav-toggle{display:none;background:none;border:0;font-size:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:999px;padding:12px 20px;font-weight:700;cursor:pointer;text-decoration:none;transition:.15s}.btn:hover{background:var(--accent-dark);text-decoration:none;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--accent-dark);border-color:#b9c2bc}.btn-small{padding:8px 14px;font-size:.9rem}.full{width:100%}.danger{background:var(--danger);border-color:var(--danger)}.danger-link{border:0;background:none;color:var(--danger);font-weight:700;cursor:pointer;padding:4px}.hero{padding:88px 0 76px;background:linear-gradient(180deg,#f7f5f1,#f2efe9)}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:64px;align-items:center}.hero h1,.page-head h1{font-family:Georgia,serif;line-height:1.08;font-weight:500;letter-spacing:-.03em}.hero h1{font-size:clamp(2.8rem,6vw,5.7rem);margin:12px 0 22px}.lead{font-size:1.2rem;color:#5c5f59;max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:800;color:var(--accent)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.hero-card{background:var(--paper);padding:32px;border-radius:32px;box-shadow:var(--shadow);text-align:center;transform:rotate(1.5deg)}.portrait-placeholder{width:160px;height:160px;border-radius:50%;margin:0 auto 20px;display:grid;place-items:center;background:#e6ebe7;font-size:4rem;color:var(--accent)}.hero-card h2{font-family:Georgia,serif;font-size:2rem;margin:8px}.memory-line{width:55px;height:1px;background:#cfcac2;margin:20px auto}.muted{color:var(--muted)}.section{padding:72px 0}.section.soft{background:#edf0ec}.section-head{max-width:700px;margin-bottom:32px}.section-head h2,.section-title{font-family:Georgia,serif;font-weight:500;font-size:2.35rem;line-height:1.2;margin:8px 0}.cards{display:grid;gap:22px}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 5px 20px rgba(35,38,33,.035)}.card h2,.card h3{margin-top:0}.plan .price{font-size:2rem;font-weight:760;margin:20px 0 0}.price small{font-size:.85rem;color:var(--muted)}.plan ul{padding-left:20px}.page-head{padding:70px 0 30px;background:#f0eee9}.page-head.compact{padding:35px 0 22px}.page-head h1{font-size:clamp(2.4rem,5vw,4rem);margin:6px 0}.prose{max-width:780px;margin:auto;font-size:1.08rem}.prose h2{font-family:Georgia,serif;margin-top:38px}.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:12px 0}.faq summary{font-weight:750;cursor:pointer}.form{display:grid;gap:16px}.form label,.form fieldset{display:grid;gap:6px;font-weight:670}.form small{font-weight:400;color:var(--muted)}input,textarea,select{width:100%;border:1px solid #d3d0ca;border-radius:11px;background:#fff;color:var(--text);padding:11px 12px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(82,107,93,.12)}textarea{resize:vertical}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}fieldset{border:1px solid var(--line);border-radius:12px;padding:13px}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start!important;gap:9px!important;font-weight:500!important}.check input{width:auto;margin-top:5px}.auth-wrap{min-height:calc(100vh - 72px);display:grid;place-items:center;padding:50px 18px}.auth-card{width:min(480px,100%);padding:34px}.auth-card h1{font-family:Georgia,serif;font-size:2.4rem;margin:5px 0 22px}.oauth{display:grid;gap:10px;margin-top:18px}.center{text-align:center}.flash,.memorial-flash{padding:13px 16px;border-radius:12px;margin-top:16px}.flash.success,.memorial-flash.success{background:#e4f0e8;color:#244631}.flash.error,.memorial-flash.error{background:#f8e3e1;color:#7b2b2b}.memorial-flash{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:80;box-shadow:var(--shadow)}.dashboard-head,.admin-head{display:flex;align-items:center;justify-content:space-between;gap:24px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}.stat span{display:block;color:var(--muted);font-size:.86rem}.stat strong{font-size:1.35rem}.section-title{margin-top:42px}.empty{text-align:center;padding:45px}.memorial-list{display:grid;gap:13px}.memorial-row{display:flex;align-items:center;gap:17px}.mini-avatar{width:64px;height:64px;border-radius:50%;background:#edf0ec;display:grid;place-items:center;overflow:hidden;font-size:1.6rem}.mini-avatar img{width:100%;height:100%;object-fit:cover}.grow{flex:1}.grow h3{margin-bottom:3px}.grow p{margin:0}.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.timeline{list-style:none;padding:0;margin:0}.timeline li{padding:10px 0;border-bottom:1px solid var(--line)}.timeline li:last-child{border:0}.timeline span{color:var(--muted);font-size:.84rem;margin-right:12px}.editor-grid{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:start}.editor-nav{position:sticky;top:92px;display:grid;gap:5px}.editor-nav a{padding:9px 10px;border-radius:8px}.editor-nav a:hover{background:var(--soft);text-decoration:none}.badge{background:var(--accent);color:#fff;border-radius:999px;padding:2px 7px;font-size:.75rem}.editor-main{display:grid;gap:22px}.main-preview{width:180px;height:180px;border-radius:20px;object-fit:cover;margin-bottom:16px}.inset{background:#f7f7f5;border:1px solid var(--line);border-radius:14px;padding:18px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:20px}.media-card{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff}.media-card img,.video-placeholder{width:100%;aspect-ratio:4/3;object-fit:cover}.video-placeholder{display:grid;place-items:center;background:#282a29;color:#fff}.media-card>div{padding:12px}.moderation-list{display:grid;gap:10px}.moderation-item{border:1px solid var(--line);border-radius:13px;padding:14px;display:flex;justify-content:space-between;gap:20px}.moderation-item p{margin:8px 0}.status{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:.72rem;background:#eee}.status.approved,.status.active{background:#dfeee3;color:#255236}.status.pending,.status.new{background:#f5ead2;color:#705716}.status.rejected,.status.disabled,.status.spam{background:#f4dddd;color:#713232}.danger-zone{border-color:#efcaca}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:700px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.admin-body{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-side{background:#26332d;color:#fff;padding:24px;position:sticky;top:0;height:100vh}.admin-side .brand{color:#fff}.admin-side nav{display:grid;gap:4px;margin-top:28px}.admin-side nav a{color:#dbe2dd;padding:9px 10px;border-radius:8px}.admin-side nav a:hover{background:#34463d;text-decoration:none}.admin-main{padding:34px;min-width:0}.admin-head{margin-bottom:24px}.admin-stats{margin-bottom:24px}.search,.inline-admin{display:flex;gap:8px}.inline-admin input{min-width:160px}.cookie{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.16);border-radius:18px;padding:18px;display:flex;align-items:center;gap:15px}.cookie>div{flex:1}.cookie p{margin:2px 0;color:var(--muted)}footer{border-top:1px solid var(--line);padding:40px 0;background:#efede8}.footer-grid{display:flex;justify-content:space-between}.footer-grid>div:last-child{display:grid;gap:5px}.error-page{min-height:100vh;display:grid;place-content:center;text-align:center;padding:20px}.error-page h1{font-family:Georgia,serif;font-size:5rem;margin:0}.private-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 25%,#edf2ee,#dadfd9)}.private-card{width:min(480px,100%);background:rgba(255,255,255,.92);padding:38px;border-radius:28px;box-shadow:var(--shadow);text-align:center}.private-card h1{font-family:Georgia,serif}.candle-symbol{font-size:3rem;color:var(--accent)}
/* memorial */.memorial-body{--m-bg:#f6f3ee;--m-paper:#fff;--m-text:#292a28;--m-accent:#667766;background:var(--m-bg);color:var(--m-text);font-family:ui-sans-serif,-apple-system,"Segoe UI",sans-serif}.theme-nature{--m-bg:#eef2ec;--m-paper:#fbfdf9;--m-accent:#526f54}.theme-dark{--m-bg:#191c1b;--m-paper:#242827;--m-text:#eceeea;--m-accent:#b7c6b6;color:var(--m-text)}.theme-minimal{--m-bg:#fafafa;--m-paper:#fff;--m-accent:#444}.theme-floral{--m-bg:#f8f0f1;--m-paper:#fffafc;--m-accent:#865f69}.memorial-top{max-width:1120px;margin:auto;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.memorial-brand{font-weight:750;color:var(--m-text)}.owner-pill{font-size:.8rem;border:1px solid currentColor;border-radius:999px;padding:7px 12px;color:var(--m-accent)}.memorial-hero{min-height:540px;padding:48px 24px 75px;display:grid;grid-template-columns:minmax(260px,420px) minmax(300px,600px);gap:70px;align-items:center;justify-content:center}.memorial-portrait img,.portrait-empty{width:min(390px,82vw);aspect-ratio:1/1.18;border-radius:48% 48% 44% 44%;object-fit:cover;box-shadow:0 25px 70px rgba(20,24,20,.14)}.portrait-empty{display:grid;place-items:center;background:var(--m-paper);font-size:6rem;color:var(--m-accent)}.memorial-title h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3rem,7vw,6.5rem);line-height:.98;margin:12px 0 20px;letter-spacing:-.04em}.life-dates{font-family:Georgia,serif;font-size:1.5rem;letter-spacing:.05em}.life-dates span{padding:0 12px;color:var(--m-accent)}.memorial-subtitle{font-size:1.15rem;opacity:.75}.memorial-nav{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--m-paper) 90%,transparent);backdrop-filter:blur(10px);border-top:1px solid rgba(120,120,120,.15);border-bottom:1px solid rgba(120,120,120,.15);display:flex;justify-content:center;gap:30px;padding:13px 18px}.memorial-nav a{color:var(--m-text);font-size:.9rem;font-weight:650}.memorial-content{width:min(960px,calc(100% - 36px));margin:auto}.memory-section{padding:80px 0;border-bottom:1px solid rgba(120,120,120,.17)}.memory-section h2{font-family:Georgia,serif;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:400;margin:8px 0 24px}.biography{font-family:Georgia,serif;font-size:1.18rem;line-height:1.9;max-width:780px}.biography h2,.biography h3{font-size:1.55rem}.empty-copy{font-family:Georgia,serif;font-style:italic;opacity:.65}.fact-row{display:flex;gap:40px;margin-top:30px}.fact-row div{display:grid}.fact-row small{opacity:.6}.memory-gallery{columns:2 320px;column-gap:14px}.memory-item{break-inside:avoid;margin:0 0 14px;background:var(--m-paper);border-radius:16px;overflow:hidden}.memory-item img,.memory-item video{width:100%}.memory-item figcaption{padding:12px 14px;display:grid}.memory-item figcaption span{opacity:.7;font-size:.9rem}.greetings{display:grid;grid-template-columns:1fr 1fr;gap:13px}.greetings blockquote{margin:0;padding:22px;background:var(--m-paper);border-radius:16px;border:1px solid rgba(120,120,120,.12)}.greetings blockquote p{font-family:Georgia,serif;font-size:1.05rem}.greetings footer{padding:0;background:none;border:0;font-size:.85rem;opacity:.7}.memory-form-box{margin-top:24px;background:var(--m-paper);border-radius:16px;border:1px solid rgba(120,120,120,.15);padding:0 20px}.memory-form-box summary{padding:16px 0;font-weight:750;cursor:pointer}.memory-form-box .form{padding:0 0 22px}.candle-section{text-align:center}.candle-count{display:grid;justify-items:center}.flame{font-size:3.4rem;color:#c98e45;animation:flicker 2.8s ease-in-out infinite}.candle-count strong{font-family:Georgia,serif;font-size:4rem;font-weight:400;line-height:1}.recent-candles{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:28px 0}.recent-candles>div{background:var(--m-paper);border-radius:12px;padding:10px 14px;display:grid;min-width:120px}.recent-candles small{opacity:.65}.subscribe-box{text-align:center}.inline-subscribe{display:flex;max-width:520px;margin:20px auto 0;gap:8px}.memorial-footer{text-align:center;padding:42px;background:var(--m-paper);border:0}.memorial-footer p{opacity:.6}.memorial-footer .link-btn{color:var(--m-accent)}@keyframes flicker{0%,100%{transform:rotate(-2deg) scale(1)}50%{transform:rotate(2deg) scale(1.06)}}
@keyframes tributeFlame{0%,100%{transform:translateX(-50%) rotate(-3deg) scale(.98,1);opacity:.95}18%{transform:translateX(-50%) rotate(2deg) scale(1.02,.94);opacity:1}38%{transform:translateX(-50%) rotate(-1deg) scale(.94,1.08)}58%{transform:translateX(-50%) rotate(4deg) scale(1.06,.93);opacity:.92}78%{transform:translateX(-50%) rotate(-2deg) scale(.97,1.03)}}@keyframes tributeAura{0%,100%{transform:translateX(-50%) scale(.92);opacity:.7}50%{transform:translateX(-50%) scale(1.06);opacity:1}}@keyframes tributeGlow{0%,100%{transform:translateX(-50%) scale(.94);opacity:.65}50%{transform:translateX(-50%) scale(1.08);opacity:1}}@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:35px}.hero-card{max-width:500px}.cards.three{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:1fr 1fr}.editor-grid{grid-template-columns:1fr}.editor-nav{position:static;display:flex;overflow:auto}.admin-body{grid-template-columns:1fr}.admin-side{height:auto;position:static}.admin-side nav{grid-template-columns:repeat(4,1fr)}.admin-main{padding:20px}.settings-grid{grid-template-columns:1fr}.memorial-hero{grid-template-columns:1fr;text-align:center;gap:30px;padding-top:20px}.memorial-portrait{display:flex;justify-content:center}.memorial-title h1{font-size:clamp(3rem,12vw,5rem)}.memorial-nav{overflow:auto;justify-content:flex-start}.fact-row{justify-content:center}}
@media(max-width:680px){.container{width:min(100% - 24px,1160px)}.nav-toggle{display:block}.nav nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--bg);padding:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.hero{padding:54px 0}.hero h1{font-size:2.8rem}.section{padding:50px 0}.cards.three,.grid2,.gallery,.greetings{grid-template-columns:1fr}.dashboard-head,.admin-head{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:1fr 1fr}.memorial-row,.moderation-item{align-items:flex-start;flex-direction:column}.row-actions{width:100%}.row-actions .btn{flex:1}.admin-side nav{grid-template-columns:1fr 1fr}.cookie{flex-wrap:wrap;left:10px;right:10px;bottom:10px}.cookie>div{flex-basis:100%}.footer-grid{flex-direction:column;gap:20px}.memory-section{padding:58px 0}.memorial-hero{min-height:auto;padding-bottom:45px}.memorial-portrait img,.portrait-empty{width:min(300px,82vw);border-radius:50%}.memorial-title h1{font-size:3rem}.life-dates{font-size:1.2rem}.memory-gallery{columns:1}.inline-subscribe{flex-direction:column}.fact-row{flex-direction:column;gap:12px}.memory-form-box{padding:0 14px}.admin-main{padding:14px}.card{padding:18px}.search{width:100%}.search input{flex:1}}

.gallery-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.memory-item[hidden]{display:none}

/* === Rich biography editor === */
.rich-field{display:grid;gap:0}.rich-label-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:7px}.rich-label{font-weight:670}.rich-label-row small,.theme-picker-head small{color:var(--muted);font-weight:400}.rich-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:8px;border:1px solid #d3d0ca;border-bottom:0;border-radius:12px 12px 0 0;background:#f4f3ef}.rich-toolbar button{width:auto;border:1px solid transparent;border-radius:7px;background:transparent;padding:6px 9px;color:#343733;cursor:pointer;font-size:.88rem}.rich-toolbar button:hover,.rich-toolbar button:focus{background:#fff;border-color:#d7d4cd}.rich-separator{width:1px;background:#d7d4cd;margin:3px 3px}.rich-editor{min-height:240px;border:1px solid #d3d0ca;border-radius:0 0 12px 12px;background:#fff;padding:18px;outline:none;font-family:Georgia,serif;font-size:1.05rem;line-height:1.75;overflow:auto}.rich-editor:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(82,107,93,.12)}.rich-editor:empty:before{content:attr(data-placeholder);color:#9c9c96;pointer-events:none}.rich-editor p{margin:0 0 1em}.rich-editor h2{font-size:1.55rem;font-weight:500;margin:1.3em 0 .5em}.rich-editor blockquote{border-left:3px solid #b8c2bb;margin:1em 0;padding:.2em 0 .2em 1em;color:#60645f;font-style:italic}.rich-editor ul,.rich-editor ol{padding-left:1.5em}.rich-source{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;clip:rect(0 0 0 0)!important;overflow:hidden!important}.rich-help{display:flex;justify-content:space-between;gap:12px;margin-top:6px;color:var(--muted);font-size:.78rem;font-weight:400}

/* === Theme picker and preview === */
.theme-picker{display:grid;gap:14px}.theme-picker-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.theme-picker-head>div{display:grid;gap:3px}.theme-picker-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(320px,1.2fr);gap:16px;align-items:stretch}.theme-options{display:grid;gap:9px}.theme-option{position:relative;display:grid!important;grid-template-columns:72px 1fr 26px!important;gap:12px!important;align-items:center!important;border:1px solid var(--line);border-radius:14px;padding:10px;background:#fff;cursor:pointer;font-weight:400!important;transition:.15s}.theme-option:hover{border-color:#aeb9b1;transform:translateY(-1px)}.theme-option.selected{border-color:var(--accent);box-shadow:0 0 0 2px rgba(82,107,93,.12)}.theme-option input{position:absolute;opacity:0;pointer-events:none}.theme-option-copy{display:grid}.theme-option-copy strong{font-size:.96rem}.theme-option-copy small{font-size:.78rem;color:var(--muted);line-height:1.3}.theme-check{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#edf0ec;color:transparent;font-size:.8rem}.theme-option.selected .theme-check{background:var(--accent);color:#fff}.theme-swatch{height:58px;border-radius:9px;display:flex;gap:7px;align-items:center;padding:7px;overflow:hidden;border:1px solid rgba(0,0,0,.06);background:var(--m-bg,#f6f3ee);color:var(--m-text,#292a28)}.theme-swatch-photo{width:24px;height:34px;background:var(--m-paper,#fff);box-shadow:0 2px 5px rgba(0,0,0,.09);flex:0 0 auto}.theme-swatch-copy{display:grid;gap:3px;flex:1}.theme-swatch-copy i{width:30%;height:3px;background:var(--m-accent,#667766)}.theme-swatch-copy b{width:82%;height:6px;background:currentColor;opacity:.8}.theme-swatch-copy em{width:100%;height:2px;background:currentColor;opacity:.2}.theme-swatch-copy em:last-child{width:68%}
.theme-showcase{--m-bg:#f6f3ee;--m-paper:#fff;--m-text:#292a28;--m-accent:#667766;position:relative;overflow:hidden;border-radius:20px;border:1px solid rgba(0,0,0,.08);background:var(--m-bg);color:var(--m-text);min-height:440px;box-shadow:0 12px 32px rgba(25,30,26,.08)}.theme-showcase-top{padding:14px 18px;font-weight:750;font-size:.72rem}.theme-showcase-hero{display:grid;grid-template-columns:120px 1fr;gap:25px;align-items:center;padding:20px 32px 30px}.theme-showcase-photo{height:145px;background:var(--m-paper);display:grid;place-items:center;font-size:2.3rem;color:var(--m-accent);box-shadow:0 10px 25px rgba(0,0,0,.1);overflow:hidden}.theme-showcase-title{display:grid;gap:7px}.theme-showcase-title small,.theme-showcase-body small{font-size:.56rem;letter-spacing:.16em;font-weight:800;color:var(--m-accent)}.theme-showcase-title strong{font-family:Georgia,serif;font-size:2rem;line-height:1;font-weight:400}.theme-showcase-title span{font-family:Georgia,serif;font-size:.9rem}.theme-showcase-nav{height:32px;border-top:1px solid rgba(100,100,100,.12);border-bottom:1px solid rgba(100,100,100,.12);display:flex;gap:15px;justify-content:center;align-items:center;background:color-mix(in srgb,var(--m-paper) 75%,transparent)}.theme-showcase-nav i{width:38px;height:3px;border-radius:3px;background:currentColor;opacity:.2}.theme-showcase-body{padding:28px 42px}.theme-showcase-body>b{display:block;font-family:Georgia,serif;font-size:1.45rem;font-weight:400;margin:5px 0 15px}.theme-showcase-body p{height:5px;width:100%;background:currentColor;opacity:.13;border-radius:4px}.theme-showcase-body p.short{width:70%}.theme-showcase-memory{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:20px}.theme-showcase-memory span{height:50px;background:var(--m-paper);border-radius:6px}.theme-showcase-label{position:absolute;right:12px;bottom:10px;background:rgba(255,255,255,.88);color:#333;border-radius:999px;padding:5px 9px;font-size:.68rem;box-shadow:0 3px 12px rgba(0,0,0,.08)}.theme-dialog{width:min(920px,calc(100% - 24px));border:0;padding:0;background:transparent}.theme-dialog::backdrop{background:rgba(12,15,13,.68);backdrop-filter:blur(5px)}.theme-dialog-inner{padding:24px}.theme-dialog-close{position:absolute;right:28px;top:28px;z-index:2;border:0;background:#fff;width:38px;height:38px;border-radius:50%;font-size:1.5rem;cursor:pointer;box-shadow:0 5px 20px rgba(0,0,0,.18)}.theme-showcase-large{min-height:680px}.theme-showcase-large .theme-showcase-hero{grid-template-columns:220px 1fr;padding:52px 70px;gap:55px}.theme-showcase-large .theme-showcase-photo{height:270px}.theme-showcase-large .theme-showcase-title strong{font-size:3.8rem}.theme-showcase-large .theme-showcase-body{padding:45px 90px}.theme-showcase-large .theme-showcase-memory span{height:100px}

/* Preview palette/layouts mirror the public themes */
.theme-swatch.theme-classic,.theme-showcase.theme-classic{--m-bg:#f4efe6;--m-paper:#fffdf8;--m-text:#332f2a;--m-accent:#8c7454}.theme-swatch.theme-classic .theme-swatch-photo,.theme-showcase.theme-classic .theme-showcase-photo{border-radius:48% 48% 44% 44%}.theme-showcase.theme-classic .theme-showcase-hero{background:linear-gradient(180deg,#f7f2e9,#f1eadf)}
.theme-swatch.theme-nature,.theme-showcase.theme-nature{--m-bg:#e8efe7;--m-paper:#f8fbf5;--m-text:#243329;--m-accent:#4c7459}.theme-swatch.theme-nature .theme-swatch-photo,.theme-showcase.theme-nature .theme-showcase-photo{border-radius:55% 38% 52% 42%}.theme-showcase.theme-nature .theme-showcase-hero{background:radial-gradient(circle at 12% 15%,rgba(101,139,105,.20),transparent 30%),linear-gradient(140deg,#dfe9df,#f2f5ec)}.theme-showcase.theme-nature .theme-showcase-body{background:rgba(255,255,255,.32)}
.theme-swatch.theme-dark,.theme-showcase.theme-dark{--m-bg:#171816;--m-paper:#242522;--m-text:#eee9dd;--m-accent:#c3a96d}.theme-showcase.theme-dark{border-color:#393a35;box-shadow:0 14px 35px rgba(0,0,0,.28)}.theme-showcase.theme-dark .theme-showcase-photo{border-radius:50%;border:1px solid #8f7b52;box-shadow:0 0 0 8px rgba(195,169,109,.06),0 12px 35px rgba(0,0,0,.3)}.theme-showcase.theme-dark .theme-showcase-hero{grid-template-columns:1fr;text-align:center;justify-items:center;padding-top:35px}.theme-showcase.theme-dark .theme-showcase-photo{width:125px}.theme-showcase.theme-dark .theme-showcase-label{background:#262823;color:#eee9dd}
.theme-swatch.theme-minimal,.theme-showcase.theme-minimal{--m-bg:#fff;--m-paper:#f4f4f2;--m-text:#111;--m-accent:#111}.theme-swatch.theme-minimal .theme-swatch-photo,.theme-showcase.theme-minimal .theme-showcase-photo{border-radius:0;box-shadow:none}.theme-showcase.theme-minimal{border-radius:4px}.theme-showcase.theme-minimal .theme-showcase-hero{grid-template-columns:1fr 1fr;padding:30px 32px;border-bottom:5px solid #111}.theme-showcase.theme-minimal .theme-showcase-title strong{font-family:ui-sans-serif,-apple-system,"Segoe UI",sans-serif;font-weight:800;letter-spacing:-.05em}.theme-showcase.theme-minimal .theme-showcase-nav{justify-content:flex-start;padding-left:32px}.theme-showcase.theme-minimal .theme-showcase-body>b{font-family:ui-sans-serif,-apple-system,"Segoe UI",sans-serif;font-weight:800}
.theme-swatch.theme-floral,.theme-showcase.theme-floral{--m-bg:#f7ecee;--m-paper:#fffafa;--m-text:#4a3036;--m-accent:#9c6674}.theme-swatch.theme-floral .theme-swatch-photo,.theme-showcase.theme-floral .theme-showcase-photo{border-radius:50% 50% 46% 46%;outline:4px double rgba(156,102,116,.25)}.theme-showcase.theme-floral .theme-showcase-hero{background:radial-gradient(ellipse at 5% 15%,rgba(194,139,153,.25),transparent 24%),radial-gradient(ellipse at 95% 82%,rgba(194,139,153,.18),transparent 28%)}.theme-showcase.theme-floral .theme-showcase-title strong{font-style:italic}.theme-showcase.theme-floral:after{content:"❦";position:absolute;right:22px;top:55px;color:var(--m-accent);opacity:.3;font-size:2.2rem}

/* === Stronger variation between public memorial themes === */
.memorial-body{min-height:100vh;transition:background .25s ease,color .25s ease}.theme-classic{--m-bg:#f4efe6;--m-paper:#fffdf8;--m-text:#332f2a;--m-accent:#8c7454}.theme-classic .memorial-hero{background:linear-gradient(180deg,#f8f3eb 0%,#f1eadf 100%);position:relative}.theme-classic .memorial-hero:after{content:"";position:absolute;bottom:36px;left:50%;width:88px;height:1px;background:var(--m-accent);transform:translateX(-50%);opacity:.45}.theme-classic .memorial-portrait img,.theme-classic .portrait-empty{border-radius:48% 48% 44% 44%;border:8px solid rgba(255,255,255,.58);outline:1px solid rgba(140,116,84,.22)}.theme-classic .memory-section{max-width:880px;margin:auto}.theme-classic .greetings blockquote{box-shadow:0 8px 26px rgba(80,65,47,.05)}

.theme-nature{--m-bg:#e7eee6;--m-paper:#f8fbf5;--m-text:#26342a;--m-accent:#52745b}.theme-nature .memorial-top{max-width:none;padding-inline:max(24px,calc((100vw - 1120px)/2))}.theme-nature .memorial-hero{max-width:1180px;margin:18px auto 55px;min-height:570px;border-radius:42px;background:radial-gradient(circle at 7% 18%,rgba(91,129,93,.23),transparent 29%),radial-gradient(circle at 92% 86%,rgba(151,177,131,.25),transparent 30%),linear-gradient(135deg,#dce8dc,#f1f5eb);position:relative;overflow:hidden}.theme-nature .memorial-hero:before,.theme-nature .memorial-hero:after{content:"";position:absolute;width:230px;height:330px;border:1px solid rgba(70,105,76,.17);border-radius:50%;transform:rotate(35deg)}.theme-nature .memorial-hero:before{left:-120px;bottom:-180px}.theme-nature .memorial-hero:after{right:-120px;top:-180px}.theme-nature .memorial-portrait img,.theme-nature .portrait-empty{border-radius:58% 38% 54% 42%;box-shadow:0 28px 70px rgba(45,71,49,.18)}.theme-nature .memorial-title h1{color:#27402e}.theme-nature .memory-section{background:rgba(255,255,255,.36);border:1px solid rgba(85,112,89,.10);border-radius:28px;padding:58px;margin:28px 0}.theme-nature .memory-gallery .memory-item{box-shadow:0 10px 28px rgba(44,72,48,.08)}.theme-nature .memorial-footer{background:#dce6da}

.theme-dark{--m-bg:#151714;--m-paper:#22241f;--m-text:#eee9dd;--m-accent:#c6a968;background:radial-gradient(circle at 50% -10%,#2d2d25 0,#171914 36%,#111310 100%)}.theme-dark .memorial-top{border-bottom:1px solid rgba(198,169,104,.18)}.theme-dark .memorial-brand,.theme-dark .memorial-nav a{color:#eee9dd}.theme-dark .memorial-hero{grid-template-columns:1fr;justify-items:center;text-align:center;padding:60px 24px 85px;min-height:680px;position:relative}.theme-dark .memorial-hero:before{content:"";position:absolute;width:min(620px,90vw);height:min(620px,90vw);border-radius:50%;background:radial-gradient(circle,rgba(198,169,104,.14),rgba(198,169,104,.035) 42%,transparent 68%);pointer-events:none}.theme-dark .memorial-portrait{z-index:1}.theme-dark .memorial-portrait img,.theme-dark .portrait-empty{width:min(310px,72vw);aspect-ratio:1;border-radius:50%;border:1px solid rgba(198,169,104,.58);box-shadow:0 0 0 12px rgba(198,169,104,.05),0 28px 80px rgba(0,0,0,.55)}.theme-dark .memorial-title{z-index:1}.theme-dark .memorial-title h1{font-size:clamp(3.4rem,7vw,6rem);color:#f1eadb}.theme-dark .eyebrow{color:#c6a968}.theme-dark .memorial-nav{background:rgba(20,22,18,.88);border-color:rgba(198,169,104,.16)}.theme-dark .memory-section{border-color:rgba(198,169,104,.14)}.theme-dark .biography{color:#ddd7ca}.theme-dark .memory-item,.theme-dark .greetings blockquote,.theme-dark .memory-form-box{border-color:rgba(198,169,104,.15);box-shadow:0 14px 36px rgba(0,0,0,.16)}.theme-dark input,.theme-dark textarea,.theme-dark select{background:#1a1c18;color:#eee9dd;border-color:#47483f}.theme-dark .memorial-footer{background:#0f110e;border-top:1px solid rgba(198,169,104,.14)}

.theme-minimal{--m-bg:#fff;--m-paper:#fff;--m-text:#111;--m-accent:#111;background:#fff}.theme-minimal .memorial-top{max-width:none;border-bottom:1px solid #111;padding:17px 5vw}.theme-minimal .memorial-brand{font-family:ui-sans-serif,-apple-system,"Segoe UI",sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.theme-minimal .memorial-hero{grid-template-columns:minmax(280px,48vw) 1fr;max-width:none;padding:0;gap:0;min-height:620px;border-bottom:8px solid #111}.theme-minimal .memorial-portrait,.theme-minimal .memorial-portrait img,.theme-minimal .portrait-empty{width:100%;height:100%;min-height:620px}.theme-minimal .memorial-portrait img,.theme-minimal .portrait-empty{border-radius:0;object-fit:cover;box-shadow:none}.theme-minimal .memorial-title{padding:8vw 7vw}.theme-minimal .memorial-title h1{font-family:ui-sans-serif,-apple-system,"Segoe UI",sans-serif;font-size:clamp(3.3rem,7vw,7.5rem);font-weight:850;letter-spacing:-.07em;line-height:.88}.theme-minimal .life-dates{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1rem}.theme-minimal .memorial-nav{justify-content:flex-start;padding-left:5vw;background:#fff;border-top:0;border-color:#111;gap:22px}.theme-minimal .memorial-nav a{text-transform:uppercase;letter-spacing:.1em;font-size:.68rem}.theme-minimal .memorial-content{width:min(1180px,90vw)}.theme-minimal .memory-section{padding:100px 0;border-bottom:1px solid #111}.theme-minimal .memory-section h2,.theme-minimal .biography{font-family:ui-sans-serif,-apple-system,"Segoe UI",sans-serif}.theme-minimal .memory-section h2{font-weight:850;letter-spacing:-.05em}.theme-minimal .biography{font-size:1.08rem;line-height:1.8;max-width:700px}.theme-minimal .memory-item,.theme-minimal .greetings blockquote,.theme-minimal .memory-form-box{border-radius:0;border-color:#111;box-shadow:none}.theme-minimal .memory-item figcaption{border-top:1px solid #111}.theme-minimal .btn{border-radius:0;background:#111;border-color:#111}.theme-minimal .btn-ghost{background:#fff;color:#111}.theme-minimal .memorial-footer{border-top:8px solid #111;background:#fff}

.theme-floral{--m-bg:#f7edef;--m-paper:#fffafb;--m-text:#4c3238;--m-accent:#986674;background:linear-gradient(180deg,#f9f0f2,#f5eaec)}.theme-floral .memorial-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 8% 12%,rgba(173,111,128,.16),transparent 22%),radial-gradient(ellipse at 92% 85%,rgba(173,111,128,.14),transparent 24%)}.theme-floral .memorial-hero:before,.theme-floral .memorial-hero:after{content:"❦";position:absolute;color:#aa7985;opacity:.18;font-size:8rem;font-family:Georgia,serif}.theme-floral .memorial-hero:before{left:2vw;top:30px;transform:rotate(-18deg)}.theme-floral .memorial-hero:after{right:2vw;bottom:30px;transform:rotate(162deg)}.theme-floral .memorial-portrait img,.theme-floral .portrait-empty{border-radius:50% 50% 47% 47%;border:8px solid rgba(255,255,255,.55);outline:3px double rgba(152,102,116,.34)}.theme-floral .memorial-title h1{font-style:italic;color:#55333b}.theme-floral .memory-section h2{font-style:italic;color:#5a3740}.theme-floral .memory-section{position:relative}.theme-floral .story-section:after,.theme-floral .greeting-section:after{content:"❦";position:absolute;right:0;top:70px;font-size:2.8rem;color:var(--m-accent);opacity:.18}.theme-floral .greetings blockquote{border:1px solid rgba(152,102,116,.18);box-shadow:0 10px 32px rgba(93,53,64,.06)}.theme-floral .memorial-footer{background:#efe1e4}

/* === More atmospheric candle sanctuary === */
.candle-section{max-width:none!important;text-align:center;border-bottom:0!important;padding:70px 0!important}.candle-sanctuary{position:relative;overflow:hidden;border-radius:34px;padding:72px 24px 38px;background:radial-gradient(circle at 50% 42%,#47372a 0,#28241f 32%,#171916 68%,#111310 100%);color:#f4ede0;box-shadow:inset 0 0 90px rgba(0,0,0,.4),0 22px 55px rgba(30,26,20,.12)}.candle-sanctuary:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 10%,rgba(255,207,125,.08),transparent 34%),linear-gradient(90deg,rgba(255,255,255,.015),transparent 25%,transparent 75%,rgba(255,255,255,.015));pointer-events:none}.candle-sanctuary h2{color:#f7efe2;margin-bottom:4px}.candle-eyebrow{color:#d8bc82!important}.candle-scene{height:190px;display:flex;align-items:flex-end;justify-content:center;gap:26px;margin:18px auto 12px;position:relative}.visual-candle{position:relative;display:block;width:64px;height:128px}.visual-candle.small{width:46px;height:90px;opacity:.82}.visual-candle .wax{position:absolute;left:0;right:0;bottom:0;height:78%;border-radius:9px 9px 5px 5px;background:linear-gradient(90deg,#c8bda6,#f2e7cc 42%,#d4c6a8 80%,#b7aa90);box-shadow:inset -8px 0 12px rgba(111,91,57,.16),0 12px 20px rgba(0,0,0,.34)}.visual-candle .wax:before{content:"";position:absolute;left:0;right:0;top:-5px;height:11px;border-radius:50%;background:#e9ddc1;box-shadow:inset 0 3px 3px rgba(116,91,53,.25)}.visual-candle .wick{position:absolute;z-index:2;left:50%;top:18%;width:2px;height:14px;background:#453a2f;transform:translateX(-50%)}.visual-flame{position:absolute;z-index:4;left:50%;top:-3px;width:28px;height:48px;transform:translateX(-50%) rotate(2deg);transform-origin:50% 90%;border-radius:52% 48% 50% 50% / 68% 68% 32% 32%;background:radial-gradient(ellipse at 50% 72%,#fff9ca 0 10%,#ffd36c 26%,#ff973c 58%,rgba(242,92,24,.78) 74%,transparent 76%);filter:drop-shadow(0 0 8px rgba(255,181,75,.9));animation:realFlicker 2.1s ease-in-out infinite}.visual-candle.small .visual-flame{width:22px;height:38px;top:-6px}.candle-glow{position:absolute;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(255,177,76,.19),rgba(255,177,76,.06) 38%,transparent 70%);filter:blur(4px);animation:glowPulse 3.2s ease-in-out infinite}.candle-glow-left{left:calc(50% - 190px);bottom:-5px}.candle-glow-right{right:calc(50% - 190px);bottom:-5px;animation-delay:1.1s}.candle-count{display:grid;justify-items:center;position:relative}.candle-count strong{font-family:Georgia,serif;font-size:4.5rem;font-weight:400;line-height:1;color:#fff6e6;text-shadow:0 0 28px rgba(255,190,101,.23)}.candle-count span{color:#d8cfc1}.candle-copy{max-width:590px;margin:15px auto 28px;color:#bfb6aa;font-family:Georgia,serif;font-style:italic}.recent-candles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-width:860px;margin:28px auto 32px;gap:14px}.recent-candle{min-width:0!important;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03))!important;border:1px solid rgba(236,208,158,.14);backdrop-filter:blur(8px);border-radius:16px!important;padding:18px 14px 16px!important;display:grid!important;justify-items:center;align-content:start;gap:6px;color:#eee4d4;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 14px 28px rgba(0,0,0,.12)}.recent-candle b{font-size:.95rem;line-height:1.25}.recent-candle small{color:#cbbfac;line-height:1.38;max-width:18ch}.tribute-candle{position:relative;display:block;width:34px;height:96px;margin:2px auto 10px}.tribute-candle-glow{position:absolute;left:50%;top:-8px;transform:translateX(-50%);width:74px;height:74px;border-radius:50%;background:radial-gradient(circle,rgba(255,190,102,.35) 0,rgba(255,190,102,.12) 35%,transparent 72%);filter:blur(4px);animation:tributeGlow 2.8s ease-in-out infinite}.tribute-wax{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:20px;height:66px;border-radius:10px 10px 6px 6px;background:linear-gradient(90deg,#d0c1a2 0,#f4ead1 38%,#efe3c6 60%,#bca98b 100%);box-shadow:inset -5px 0 8px rgba(117,95,60,.17),0 10px 14px rgba(0,0,0,.24)}.tribute-wax:before{content:'';position:absolute;left:0;right:0;top:-5px;height:10px;border-radius:50%;background:linear-gradient(180deg,#f8efd8,#d9c9ab);box-shadow:inset 0 2px 2px rgba(90,71,40,.14)}.tribute-wax:after{content:'';position:absolute;left:4px;top:14px;width:3px;height:18px;border-radius:3px;background:rgba(255,255,255,.34);filter:blur(.2px)}.tribute-base{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);width:26px;height:6px;border-radius:999px;background:rgba(96,76,49,.44);filter:blur(.4px)}.tribute-wick{position:absolute;left:50%;top:9px;transform:translateX(-50%);width:2px;height:12px;background:#433327;border-radius:2px;z-index:4}.tribute-flame{position:absolute;left:50%;top:-1px;transform-origin:50% 88%;border-radius:52% 48% 50% 50% / 70% 70% 30% 30%;animation:tributeFlame 1.8s ease-in-out infinite;z-index:5}.tribute-flame.aura{width:30px;height:48px;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 65%,rgba(255,234,157,.45) 0,rgba(255,171,67,.2) 48%,transparent 72%);filter:blur(5px);opacity:.9;animation:tributeAura 2.3s ease-in-out infinite}.tribute-flame.outer{width:20px;height:36px;transform:translateX(-50%) rotate(1deg);background:radial-gradient(ellipse at 50% 70%,#fff6bc 0 10%,#ffd26c 26%,#ff9a3c 62%,rgba(230,103,33,.9) 78%,transparent 80%);filter:drop-shadow(0 0 10px rgba(255,177,75,.9))}.tribute-flame.inner{width:10px;height:18px;top:9px;transform:translateX(-50%) rotate(-2deg);background:radial-gradient(ellipse at 50% 70%,#ffffef 0 22%,#fff8ca 45%,#ffd66f 78%,rgba(255,214,111,.35) 100%);animation-duration:1.2s;filter:blur(.1px)}.candle-form-box{max-width:650px;margin:25px auto 0;background:rgba(255,255,255,.07)!important;border-color:rgba(236,208,158,.18)!important;text-align:left}.candle-form-box summary{color:#f2e7d6}.candle-form-box input{background:rgba(255,255,255,.92);color:#292a28}.candle-form-box .btn{background:#ad8954;border-color:#ad8954}.candle-form-box .btn:hover{background:#c29d63}.theme-dark .candle-sanctuary{box-shadow:inset 0 0 100px rgba(0,0,0,.5),0 20px 60px rgba(0,0,0,.25)}.theme-nature .candle-sanctuary{background:radial-gradient(circle at 50% 42%,#414432,#252d27 38%,#14201a 72%,#0f1713)}.theme-floral .candle-sanctuary{background:radial-gradient(circle at 50% 42%,#573c40,#302428 40%,#1c1719 75%,#151214)}.theme-minimal .candle-sanctuary{border-radius:0;background:radial-gradient(circle at 50% 42%,#3d372e,#1d1c19 42%,#0d0e0c)}
@keyframes realFlicker{0%,100%{transform:translateX(-50%) rotate(-2deg) scale(1);opacity:.95}27%{transform:translateX(-50%) rotate(3deg) scale(.94,1.06);opacity:1}53%{transform:translateX(-50%) rotate(-1deg) scale(1.06,.97);opacity:.9}76%{transform:translateX(-50%) rotate(2deg) scale(.97,1.03);opacity:1}}@keyframes glowPulse{0%,100%{opacity:.72;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}

@media(max-width:900px){.theme-picker-layout{grid-template-columns:1fr}.theme-options{grid-template-columns:1fr 1fr}.theme-showcase{min-height:390px}.theme-minimal .memorial-hero{grid-template-columns:1fr;min-height:auto}.theme-minimal .memorial-portrait,.theme-minimal .memorial-portrait img,.theme-minimal .portrait-empty{min-height:430px;max-height:60vh}.theme-minimal .memorial-title{padding:55px 7vw}.theme-nature .memorial-hero{margin:12px 18px 36px}.theme-nature .memory-section{padding:45px 30px}}
@media(max-width:680px){.rich-label-row,.theme-picker-head{align-items:flex-start;flex-direction:column}.rich-toolbar{gap:3px}.rich-toolbar button{padding:6px 7px;font-size:.8rem}.rich-separator{display:none}.rich-editor{min-height:210px}.theme-options{grid-template-columns:1fr}.theme-showcase-hero{grid-template-columns:95px 1fr;gap:18px;padding:18px 20px 25px}.theme-showcase-photo{height:115px}.theme-showcase-title strong{font-size:1.6rem}.theme-showcase-body{padding:24px}.theme-dialog-inner{padding:8px}.theme-dialog-close{right:14px;top:14px}.theme-showcase-large{min-height:560px}.theme-showcase-large .theme-showcase-hero{grid-template-columns:125px 1fr;padding:35px 28px;gap:22px}.theme-showcase-large .theme-showcase-photo{height:160px}.theme-showcase-large .theme-showcase-title strong{font-size:2.2rem}.theme-showcase-large .theme-showcase-body{padding:32px}.theme-showcase-large .theme-showcase-memory span{height:65px}.theme-nature .memory-section{margin:18px 0;padding:38px 20px}.theme-nature .memorial-hero{border-radius:26px}.theme-dark .memorial-hero{min-height:570px}.theme-minimal .memorial-hero{display:flex;flex-direction:column}.theme-minimal .memorial-portrait,.theme-minimal .memorial-portrait img,.theme-minimal .portrait-empty{min-height:360px;height:360px}.theme-minimal .memorial-title h1{font-size:3.6rem}.theme-minimal .memory-section{padding:70px 0}.candle-sanctuary{border-radius:22px;padding:55px 14px 28px}.candle-scene{height:155px;gap:18px}.visual-candle{width:54px;height:112px}.visual-candle.small{width:38px;height:78px}.candle-count strong{font-size:3.8rem}.recent-candles{grid-template-columns:1fr 1fr}.tribute-candle{height:88px}.tribute-wax{height:60px}.tribute-flame.outer{width:18px;height:31px}.tribute-flame.aura{width:28px;height:42px}.candle-form-box{padding:0 14px!important}}
.theme-showcase-photo img{width:100%;height:100%;object-fit:cover}

/* === Candle sanctuary v2: taller memorial candles, wax, richer flame === */
.candle-sanctuary{isolation:isolate}
.candle-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.candle-atmosphere i{position:absolute;display:block;width:4px;height:4px;border-radius:50%;background:rgba(255,222,164,.42);box-shadow:0 0 10px rgba(255,188,90,.4);opacity:0;animation:candleMote 8s linear infinite}
.candle-atmosphere i:nth-child(1){left:18%;bottom:12%;animation-delay:-1s}.candle-atmosphere i:nth-child(2){left:31%;bottom:2%;animation-delay:-5s;animation-duration:10s}.candle-atmosphere i:nth-child(3){left:47%;bottom:8%;animation-delay:-3s;animation-duration:9s}.candle-atmosphere i:nth-child(4){left:62%;bottom:3%;animation-delay:-7s;animation-duration:11s}.candle-atmosphere i:nth-child(5){left:76%;bottom:11%;animation-delay:-4s;animation-duration:8.5s}.candle-atmosphere i:nth-child(6){left:86%;bottom:1%;animation-delay:-8s;animation-duration:12s}
.candle-sanctuary> :not(.candle-atmosphere){position:relative;z-index:1}
.recent-candles{align-items:end}.recent-candle{min-height:205px;position:relative;overflow:hidden}.recent-candle:before{content:"";position:absolute;left:15%;right:15%;bottom:58px;height:24px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,173,72,.09),transparent 70%);filter:blur(6px);pointer-events:none}
.tribute-candle{width:42px;height:126px;margin:0 auto 12px;--wax-h:86px;--flame-speed:1.7s;filter:drop-shadow(0 14px 10px rgba(0,0,0,.13))}
.recent-candle:nth-child(6n+1) .tribute-candle{--wax-h:92px;transform:translateY(0)}
.recent-candle:nth-child(6n+2) .tribute-candle{--wax-h:76px;transform:translateY(12px)}
.recent-candle:nth-child(6n+3) .tribute-candle{--wax-h:101px;transform:translateY(-4px)}
.recent-candle:nth-child(6n+4) .tribute-candle{--wax-h:82px;transform:translateY(7px)}
.recent-candle:nth-child(6n+5) .tribute-candle{--wax-h:96px;transform:translateY(-1px)}
.recent-candle:nth-child(6n+6) .tribute-candle{--wax-h:72px;transform:translateY(16px)}
.tribute-candle-glow{top:-18px;width:92px;height:92px;background:radial-gradient(circle,rgba(255,205,118,.4) 0,rgba(255,173,68,.15) 38%,rgba(255,139,39,.04) 58%,transparent 74%);filter:blur(5px);animation:tributeGlow 2.4s ease-in-out infinite}
.tribute-floor-glow{position:absolute;left:50%;bottom:2px;transform:translateX(-50%);width:54px;height:13px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,170,71,.18),transparent 70%);filter:blur(4px);animation:floorGlow 2.8s ease-in-out infinite}
.tribute-wax{height:var(--wax-h);bottom:10px;width:18px;border-radius:7px 7px 4px 4px;background:linear-gradient(90deg,#c8b896 0,#f3e8ca 28%,#fff5dc 48%,#e5d5b4 72%,#b8a383 100%);box-shadow:inset -4px 0 7px rgba(111,86,49,.15),inset 3px 0 4px rgba(255,255,255,.18),0 12px 16px rgba(0,0,0,.26)}
.tribute-wax:before{height:9px;top:-4px;background:radial-gradient(ellipse at 50% 38%,#e8d8b7 0 34%,#c4b18d 37% 44%,#f4ead1 48% 100%);box-shadow:inset 0 1px 2px rgba(85,62,34,.18)}
.tribute-wax:after{content:"";position:absolute;left:4px;top:12px;width:2px;height:28px;border-radius:3px;background:linear-gradient(rgba(255,255,255,.4),rgba(255,255,255,.04));box-shadow:8px 18px 0 -1px rgba(255,255,255,.12)}
.wax-rim{position:absolute;left:3px;right:3px;top:-3px;height:5px;border-radius:50%;background:rgba(102,78,46,.12);box-shadow:inset 0 1px 2px rgba(76,57,33,.14)}
.wax-drip{position:absolute;display:block;width:4px;border-radius:0 0 5px 5px;background:linear-gradient(#f6ecd2,#d7c5a3);box-shadow:1px 0 1px rgba(119,91,54,.08)}
.wax-drip-a{right:1px;top:2px;height:18px}.wax-drip-b{left:2px;top:5px;height:10px;opacity:.75}
.tribute-wick{top:8px;height:13px;width:1.5px;background:linear-gradient(#2d2119,#5d4430);box-shadow:0 0 2px rgba(255,166,69,.18)}
.tribute-flame{will-change:transform,opacity;animation-name:tributeFlameV2;animation-duration:var(--flame-speed);animation-timing-function:ease-in-out;animation-iteration-count:infinite}
.tribute-flame.outer{top:-6px;width:21px;height:39px;background:radial-gradient(ellipse at 50% 73%,#fffbd8 0 8%,#ffe27e 21%,#ffad45 52%,#f27828 72%,rgba(224,70,14,.32) 83%,transparent 85%);filter:drop-shadow(0 0 7px rgba(255,185,85,.95)) drop-shadow(0 0 18px rgba(255,142,38,.38));animation-delay:-.22s}
.tribute-flame.inner{top:5px;width:9px;height:22px;background:radial-gradient(ellipse at 50% 72%,#fff 0 18%,#fffbd9 36%,#ffd86c 71%,rgba(255,185,55,.2) 100%);animation-duration:1.05s;animation-delay:-.45s}
.tribute-flame.aura{top:-13px;width:38px;height:55px;background:radial-gradient(ellipse at 50% 67%,rgba(255,235,174,.34),rgba(255,158,54,.14) 48%,transparent 72%);filter:blur(7px);animation-name:tributeAuraV2;animation-duration:2.1s}
.recent-candle:nth-child(even) .tribute-flame.outer{animation-delay:-.7s}.recent-candle:nth-child(3n) .tribute-flame.outer{--flame-speed:1.35s}.recent-candle:nth-child(4n) .tribute-flame.inner{animation-delay:-.15s}
@keyframes tributeFlameV2{0%,100%{transform:translateX(-50%) rotate(-2.4deg) scale(.98,1.02);opacity:.96}12%{transform:translateX(-50%) rotate(1.8deg) scale(1.04,.96);opacity:1}29%{transform:translateX(-50%) rotate(-4deg) scale(.94,1.08);opacity:.93}44%{transform:translateX(-50%) rotate(3.2deg) scale(1.08,.93);opacity:1}61%{transform:translateX(-50%) rotate(-1deg) scale(.97,1.05);opacity:.95}79%{transform:translateX(-50%) rotate(4.5deg) scale(1.03,.97);opacity:1}}
@keyframes tributeAuraV2{0%,100%{transform:translateX(-50%) scale(.9,.97);opacity:.55}46%{transform:translateX(-50%) scale(1.1,1.05);opacity:.9}73%{transform:translateX(-50%) scale(.98,1.12);opacity:.66}}
@keyframes floorGlow{0%,100%{opacity:.45;transform:translateX(-50%) scaleX(.88)}50%{opacity:.9;transform:translateX(-50%) scaleX(1.12)}}
@keyframes candleMote{0%{transform:translate3d(0,18px,0) scale(.7);opacity:0}15%{opacity:.35}50%{transform:translate3d(14px,-80px,0) scale(1);opacity:.28}80%{opacity:.14}100%{transform:translate3d(-10px,-170px,0) scale(.55);opacity:0}}
@media(prefers-reduced-motion:reduce){.tribute-flame,.tribute-candle-glow,.tribute-floor-glow,.candle-atmosphere i{animation:none!important}}
@media(max-width:680px){.recent-candle{min-height:190px}.tribute-candle{height:112px;--wax-h:78px}.recent-candle:nth-child(6n+2) .tribute-candle{--wax-h:68px}.recent-candle:nth-child(6n+3) .tribute-candle{--wax-h:86px}.recent-candle:nth-child(6n+4) .tribute-candle{--wax-h:72px}.recent-candle:nth-child(6n+5) .tribute-candle{--wax-h:82px}.recent-candle:nth-child(6n+6) .tribute-candle{--wax-h:64px}}

/* === Invoice-only checkout and admin billing === */
.plan-actions{display:grid;gap:9px;margin-top:20px}.invoice-checkout-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:24px;align-items:start}.invoice-summary{position:sticky;top:96px}.invoice-summary h2{font-family:Georgia,serif;font-size:2rem;margin:.25em 0}.invoice-price{display:flex;align-items:baseline;gap:9px;margin:22px 0}.invoice-price strong{font-size:2.1rem}.invoice-price span{color:var(--muted)}.invoice-access-note,.invoice-access-banner,.invoice-dashboard-banner{border:1px solid #bfd6c7;background:#edf6ef;color:#284838;border-radius:14px;padding:14px 16px}.invoice-access-note p,.invoice-access-banner p,.invoice-dashboard-banner p{margin:4px 0 0}.invoice-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.invoice-form-head h2{margin:.2em 0}.period-switch{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:#f4f2ee;white-space:nowrap}.period-switch a{padding:7px 12px;border-radius:999px;font-size:.86rem;font-weight:700}.period-switch a.active{background:var(--accent);color:#fff;text-decoration:none}.company-fields[hidden]{display:none}.invoice-page{background:#eceae5}.invoice-actions{max-width:920px;margin:0 auto 15px;display:flex;justify-content:space-between;align-items:center}.invoice-paper{max-width:920px;margin:auto;background:#fff;padding:52px;box-shadow:0 18px 60px rgba(0,0,0,.09);color:#292a28}.invoice-paper-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #292a28;padding-bottom:26px}.invoice-paper-head h1{font-family:Georgia,serif;font-size:2.8rem;margin:.1em 0}.invoice-status-large .status{font-size:.85rem;padding:7px 12px}.invoice-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:24px 0;border-bottom:1px solid #ddd}.invoice-meta-grid small,.invoice-meta-grid b{display:block}.invoice-meta-grid small{color:#777}.invoice-address-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:30px 0}.invoice-address-grid h3{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#777}.invoice-lines{min-width:0}.invoice-lines .right{text-align:right}.invoice-totals{width:min(390px,100%);margin:24px 0 24px auto;display:grid;gap:7px}.invoice-totals>div{display:flex;justify-content:space-between;gap:20px}.invoice-totals .grand{border-top:2px solid #292a28;padding-top:11px;font-size:1.2rem}.invoice-payment-box{margin-top:32px;padding:20px;border:1px solid #ddd;background:#f8f7f4}.invoice-payment-box p{margin:6px 0}.invoice-access-banner{margin-top:20px}.invoice-dashboard-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.invoice-dashboard-banner.warning{border-color:#e0bd80;background:#fff5df;color:#664d19}.admin-filter-row{margin:0 0 16px}.admin-filter-row .search{flex-wrap:wrap}.admin-filter-row select{width:auto;min-width:170px}.row-alert{background:#fff7e8}.text-danger{color:#9f3f3f!important}.trial-highlight{background:#fff5df;border:1px solid #e2c78e;border-radius:12px;padding:13px;color:#654b16}.alert-count{display:grid;place-items:center;min-width:58px;height:58px;border-radius:50%;background:#9f3f3f;color:#fff;font-size:1.5rem;font-weight:800}.stat-alert{border-color:#e2b0aa!important;background:#fff0ee!important;color:#7b2b2b}.stat-grid a.stat{text-decoration:none;color:inherit}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.status.sent{background:#f5ead2;color:#705716}.status.overdue{background:#f7d9d5;color:#7b2b2b}.status.paid{background:#dfeee3;color:#255236}.status.cancelled{background:#e8e8e8;color:#555}
@media(max-width:860px){.invoice-checkout-grid{grid-template-columns:1fr}.invoice-summary{position:static}.invoice-meta-grid{grid-template-columns:1fr 1fr}.invoice-paper{padding:30px}.invoice-form-head{flex-direction:column}.invoice-address-grid{gap:24px}}
@media(max-width:560px){.invoice-meta-grid,.invoice-address-grid{grid-template-columns:1fr}.invoice-paper{padding:22px}.invoice-paper-head{flex-direction:column;gap:14px}.invoice-actions,.invoice-dashboard-banner{align-items:stretch;flex-direction:column}.period-switch{width:100%;justify-content:center}.period-switch a{flex:1;text-align:center}}
@media print{.site-header,.site-footer,.cookie,.no-print{display:none!important}.invoice-page{background:#fff;padding:0}.invoice-paper{box-shadow:none;max-width:none;padding:0}.invoice-paper a{color:inherit}.invoice-access-banner{display:none}}

/* Manual billing / registration */
.auth-card-wide{width:min(780px,100%)}.plan-radio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.plan-radio{display:block!important;cursor:pointer}.plan-radio>input{position:absolute;opacity:0;pointer-events:none}.plan-radio>span{display:grid;gap:4px;height:100%;padding:16px;border:2px solid var(--line);border-radius:14px;background:#fff;transition:.15s}.plan-radio>input:checked+span{border-color:var(--accent);box-shadow:0 0 0 3px rgba(82,107,93,.1);background:var(--soft)}.plan-radio small{color:var(--muted);font-weight:400}.plan-radio em{font-style:normal;font-weight:750;color:var(--accent-dark)}.registration-note{display:grid;gap:4px;padding:14px 16px;border-radius:12px;background:#eef2ed;border:1px solid #d7e0d8}.registration-note span{font-size:.92rem;color:var(--muted)}.package-summary{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px;border-radius:12px;background:var(--soft)}.billing-admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0}.billing-admin-grid>div{display:grid;padding:12px;border:1px solid var(--line);border-radius:10px}.billing-admin-grid small{color:var(--muted)}@media(max-width:680px){.billing-admin-grid{grid-template-columns:1fr 1fr}.package-summary{align-items:flex-start;flex-direction:column}}


/* === Candle lifecycle: 60-day burn-down + burned-out archive === */
.tribute-candle[style]{height:132px;--wax-h:100px}
.tribute-candle[style] .tribute-wax{height:var(--wax-h)!important;transition:height .8s ease}
.tribute-candle[style] .tribute-candle-glow{top:calc(70px - var(--wax-h))!important;transition:top .8s ease}
.tribute-candle[style] .tribute-flame.aura{top:calc(78px - var(--wax-h))!important;transition:top .8s ease}
.tribute-candle[style] .tribute-flame.outer{top:calc(85px - var(--wax-h))!important;transition:top .8s ease}
.tribute-candle[style] .tribute-flame.inner{top:calc(96px - var(--wax-h))!important;transition:top .8s ease}
.tribute-candle[style] .tribute-wick{top:calc(111px - var(--wax-h))!important;transition:top .8s ease}
.recent-candle{display:flex!important;flex-direction:column;justify-content:flex-end}
.burned-candles{max-width:860px;margin:38px auto 0;padding-top:24px;border-top:1px solid rgba(236,208,158,.14);text-align:left}
.burned-candles-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:8px}.burned-candles-head>span{font-family:Georgia,serif;color:#d8c5a3;font-size:1.04rem}.burned-candles-head small{color:#8f877c;font-size:.74rem}
.burned-candle-list{display:grid;gap:0}.burned-candle-list p{display:grid;grid-template-columns:minmax(90px,145px) 1fr auto;gap:10px;margin:0;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.045);font-size:.74rem;line-height:1.4;color:#938b80}.burned-candle-list p:last-child{border-bottom:0}.burned-candle-list strong{font-weight:650;color:#aca296}.burned-candle-list span{color:#8f877d}.burned-candle-list time{font-size:.68rem;color:#716b64;white-space:nowrap}
@media(max-width:680px){.burned-candles-head{align-items:flex-start;flex-direction:column;gap:2px}.burned-candle-list p{grid-template-columns:1fr auto}.burned-candle-list p span{grid-column:1/-1;grid-row:2}.burned-candle-list time{grid-column:2;grid-row:1}}

/* === Modern registration experience === */
.registration-page{background:radial-gradient(circle at 8% 4%,rgba(96,126,108,.11),transparent 28%),radial-gradient(circle at 92% 22%,rgba(197,177,137,.13),transparent 28%),linear-gradient(180deg,#f7f6f2 0,#f1f0eb 100%);min-height:calc(100vh - 72px);padding:64px 0 84px}
.registration-shell{width:min(1180px,calc(100% - 36px));margin:auto}.registration-hero{max-width:820px;margin:0 auto 48px;text-align:center}.registration-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid #d9ddd7;border-radius:999px;background:rgba(255,255,255,.68);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark)}.registration-hero h1{font-family:Georgia,serif;font-size:clamp(2.5rem,5vw,4.6rem);font-weight:500;letter-spacing:-.045em;line-height:1.02;margin:18px 0 16px;color:#242824}.registration-hero>p{max-width:690px;margin:0 auto;color:#666b66;font-size:1.08rem}.registration-steps{display:flex;align-items:center;justify-content:center;gap:12px;margin:28px auto 0;color:#7a7e79;font-size:.76rem;font-weight:700}.registration-steps span{display:flex;align-items:center;gap:7px}.registration-steps b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#fff;border:1px solid #d9ded9;color:var(--accent-dark);font-size:.72rem}.registration-steps i{width:45px;height:1px;background:#d8dbd6}
.registration-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start}.registration-flow{display:grid;gap:18px}.register-section{background:rgba(255,255,255,.91);border:1px solid rgba(221,221,215,.9);border-radius:24px;padding:28px;box-shadow:0 12px 38px rgba(38,43,38,.055)}.register-section-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:22px}.step-number{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--accent);color:#fff;font-weight:800;box-shadow:0 7px 18px rgba(82,107,93,.2)}.register-section-head h2{font-family:Georgia,serif;font-size:1.65rem;font-weight:500;margin:-2px 0 2px;letter-spacing:-.02em}.register-section-head p{margin:0;color:var(--muted);font-size:.9rem}
.registration-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.registration-plan{position:relative;display:flex!important;flex-direction:column;gap:12px;min-height:175px;padding:18px;border:1.5px solid #deded8;border-radius:18px;background:#fff;cursor:pointer;transition:.18s ease;font-weight:400!important}.registration-plan:hover{border-color:#aebbb2;transform:translateY(-2px);box-shadow:0 10px 24px rgba(48,57,50,.06)}.registration-plan>input{position:absolute;opacity:0;pointer-events:none}.registration-plan:has(input:checked){border-color:var(--accent);background:linear-gradient(180deg,#fbfdfb,#eef3ef);box-shadow:0 0 0 3px rgba(82,107,93,.09),0 12px 28px rgba(48,57,50,.07)}.plan-check{position:absolute;right:13px;top:13px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eef1ee;color:transparent;font-size:.72rem;font-weight:900;transition:.15s}.registration-plan:has(input:checked) .plan-check{background:var(--accent);color:#fff}.plan-copy{display:grid;gap:6px;padding-right:26px}.plan-copy>b{font-size:1.04rem}.plan-copy>small{font-size:.78rem;color:var(--muted);line-height:1.4}.plan-prices{margin-top:auto;display:grid;gap:0}.plan-prices em{font-style:normal;font-size:1.22rem;font-weight:800;color:#2f4437}.plan-prices em small,.plan-prices>small{font-size:.7rem;font-weight:500;color:#8a8e89}
.register-choice-row{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-top:18px}.period-choice{display:flex;gap:7px;padding:5px;border:1px solid #dddcd6;border-radius:14px;background:#f7f6f3}.period-choice legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.period-choice label{flex:1;display:block!important;cursor:pointer}.period-choice input{position:absolute;opacity:0}.period-choice span{display:grid;gap:1px;height:100%;padding:10px 12px;border-radius:10px;font-size:.83rem;font-weight:750;color:#5e625e;transition:.15s}.period-choice span small{font-size:.66rem;color:#91958f}.period-choice input:checked+span{background:#fff;color:#2f4437;box-shadow:0 3px 11px rgba(36,43,37,.08)}.modern-field{display:grid!important;gap:7px!important;font-size:.78rem!important;font-weight:750!important;color:#555a55}.modern-field small{font-weight:500;color:#999d98}.modern-field input,.modern-field select{min-height:48px;border:1px solid #deded8;border-radius:12px;background:#fbfbf9;padding:11px 13px;transition:.15s}.modern-field input:hover,.modern-field select:hover{border-color:#c7cbc6;background:#fff}.modern-field input:focus,.modern-field select:focus{background:#fff;border-color:#71887a;box-shadow:0 0 0 4px rgba(82,107,93,.09)}.register-company{margin-top:14px;padding:15px;background:#f5f6f3;border-radius:14px}.address-grid{display:grid;grid-template-columns:.7fr 1.2fr 1fr;gap:14px}
.registration-summary{position:sticky;top:96px;padding:25px;border-radius:24px;background:linear-gradient(155deg,#27392f,#18251f);color:#f2eee5;box-shadow:0 24px 56px rgba(27,39,32,.18);overflow:hidden}.registration-summary:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-110px;top:-95px;background:radial-gradient(circle,rgba(232,212,163,.18),transparent 70%)}.registration-summary>*{position:relative}.summary-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.11);font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:#e9d6a6;margin-bottom:20px}.registration-summary .eyebrow{color:#aebdaf}.registration-summary h3{font-family:Georgia,serif;font-size:2rem;font-weight:500;margin:5px 0 9px}.summary-price{display:flex;align-items:baseline;gap:6px}.summary-price strong{font-size:2.35rem;font-weight:750;letter-spacing:-.04em}.summary-price span{color:#bfc7c0;font-size:.82rem}.summary-price i{font-style:normal}.summary-divider{height:1px;background:rgba(255,255,255,.11);margin:22px 0}.registration-summary ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}.registration-summary li{display:flex;gap:9px;color:#d2d8d3;font-size:.82rem;line-height:1.4}.registration-summary li span{color:#e0c889}.summary-next{display:grid;gap:2px;margin-top:23px;padding:14px;border-radius:13px;background:rgba(255,255,255,.07)}.summary-next small{font-size:.64rem;text-transform:uppercase;letter-spacing:.11em;color:#9eaba1}.summary-next b{font-size:.82rem}.summary-help{margin:18px 0 0;font-size:.72rem;color:#9eaaa1}.summary-help a{color:#e2d2a9}.register-submit-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-radius:20px;background:#e9eee9;border:1px solid #d3ddd4}.register-submit-card>div{display:grid;gap:3px}.register-submit-card b{font-family:Georgia,serif;font-size:1.18rem;font-weight:600}.register-submit-card span{font-size:.78rem;color:#727872}.register-submit{white-space:nowrap;padding:13px 20px}.register-submit>span{color:#fff;font-size:1rem}.registration-terms,.registration-login{text-align:center;font-size:.75rem;color:#8b8f8a}.registration-login{margin:24px 0 0;font-size:.85rem}
@media(max-width:960px){.registration-grid{grid-template-columns:1fr}.registration-summary{position:static;order:-1;display:grid;grid-template-columns:1fr auto;gap:6px 20px}.registration-summary .summary-badge,.registration-summary .eyebrow,.registration-summary h3,.registration-summary .summary-price{grid-column:1}.registration-summary .summary-divider,.registration-summary ul,.summary-next,.summary-help{grid-column:1/-1}.registration-plan-grid{grid-template-columns:1fr 1fr}.registration-plan:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:680px){.registration-page{padding:38px 0 60px}.registration-shell{width:min(100% - 24px,1180px)}.registration-hero{margin-bottom:28px;text-align:left}.registration-hero h1{font-size:2.65rem}.registration-hero>p{font-size:.95rem}.registration-steps{justify-content:flex-start;gap:7px;overflow:hidden}.registration-steps i{width:18px}.registration-steps span{font-size:.68rem}.register-section{padding:20px 16px;border-radius:19px}.registration-plan-grid{grid-template-columns:1fr}.registration-plan:last-child:nth-child(odd){grid-column:auto}.register-choice-row,.address-grid,.register-section .grid2{grid-template-columns:1fr}.register-submit-card{align-items:stretch;flex-direction:column}.register-submit{width:100%}.registration-summary{padding:20px}.summary-price strong{font-size:2rem}}

/* === QRminne warm public redesign / annual billing === */
:root{--bg:#f8f3eb;--paper:#fffdf9;--text:#3c3934;--muted:#746d64;--line:#e7ded2;--accent:#71806c;--accent-dark:#4f5f50;--soft:#f0e8de;--warm-gold:#b99262;--warm-rose:#b78175;--warm-cream:#fbf6ef;--shadow:0 18px 55px rgba(73,58,42,.08)}
body{background:radial-gradient(circle at 90% 5%,rgba(221,207,187,.22),transparent 28%),var(--bg);color:var(--text)}
.site-header{background:rgba(250,247,241,.94);border-bottom:1px solid rgba(188,171,150,.2);box-shadow:0 6px 30px rgba(75,61,46,.035)}
.brand{gap:10px;color:#3c443c}.brand>span:last-child{display:grid;line-height:1.05}.brand small{font-size:.56rem;font-weight:600;letter-spacing:.04em;color:#9a8e80;margin-top:3px}.brand-mark{color:#7e8c76}.nav nav>a,.link-btn{color:#5d5a54}.btn{background:linear-gradient(135deg,#73836e,#5f725f);border-color:#667963;box-shadow:0 8px 20px rgba(81,101,81,.12)}.btn:hover{background:linear-gradient(135deg,#657760,#4d604e)}.btn-ghost{background:rgba(255,255,255,.56);border-color:#cfc4b6;color:#566454;box-shadow:none}.card{background:rgba(255,253,249,.96);border-color:#e6ddd1}.page-head{background:linear-gradient(180deg,#f5eee4,#f8f3eb)}
.warm-kicker{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:800;color:#72806d}.warm-kicker:before{content:'❧';font-family:Georgia,serif;font-size:1rem;color:#aa8e68}.warm-lead{font-size:clamp(1.08rem,1.8vw,1.28rem);line-height:1.75;color:#665f56;max-width:720px}.warm-hero{position:relative;overflow:hidden;padding:92px 0 86px;background:radial-gradient(circle at 12% 15%,rgba(255,255,255,.78),transparent 30%),radial-gradient(circle at 88% 18%,rgba(182,199,174,.25),transparent 28%),linear-gradient(135deg,#f9f4ec 0,#f3ece2 54%,#eef1e8 100%)}.warm-hero:before,.warm-hero:after{content:'';position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.warm-hero:before{width:360px;height:360px;right:-180px;bottom:-150px;background:rgba(142,161,133,.11)}.warm-hero:after{width:250px;height:250px;left:-150px;top:100px;background:rgba(185,146,98,.09)}.warm-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:78px;align-items:center}.warm-hero-copy h1,.warm-page-head h1,.warm-section-head h2,.stone-story-copy h2,.warm-cta h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:#403c37;letter-spacing:-.035em}.warm-hero-copy h1{font-size:clamp(3rem,5.8vw,5.65rem);line-height:.99;margin:16px 0 25px;max-width:810px}.warm-hero-copy .actions{margin-top:32px}.warm-trust-row{display:flex;flex-wrap:wrap;gap:18px 26px;margin-top:32px;color:#71695f;font-size:.88rem}.warm-trust-row span{display:flex;align-items:center;gap:6px}.warm-hero-visual{position:relative;padding:28px 20px 42px}.stone-photo-card{position:relative;background:#fff9f1;border:1px solid rgba(167,144,117,.2);padding:13px;border-radius:34px;box-shadow:0 28px 70px rgba(67,59,48,.17);transform:rotate(1.2deg)}.stone-photo-card img{width:100%;border-radius:24px;aspect-ratio:4/3;object-fit:cover}.stone-photo-card p{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:12px 8px 3px;color:#564f47}.stone-photo-card p span{font-size:.82rem;color:#8a8074}.floating-memory-card{position:absolute;left:-36px;bottom:0;width:230px;padding:22px 24px;border-radius:22px;background:rgba(255,252,247,.94);backdrop-filter:blur(10px);box-shadow:0 20px 50px rgba(68,54,40,.15);border:1px solid rgba(185,154,117,.2);display:grid;gap:2px}.floating-memory-card span{text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;color:#8b806f}.floating-memory-card b{font-family:Georgia,serif;font-size:1.25rem;font-weight:400}.floating-memory-card small{color:#867c70}.floating-memory-card i{font-family:Georgia,serif;font-size:.85rem;color:#6e665c;margin-top:8px}.warm-intro-band{padding:24px 0;background:#6e7a68;color:#f8f2e9;text-align:center}.warm-intro-band p{max-width:850px;margin:auto;font-family:Georgia,serif;font-size:1.16rem;letter-spacing:.01em}.warm-section{padding:88px 0}.warm-section-head{max-width:760px;margin-bottom:42px}.warm-section-head h2{font-size:clamp(2.25rem,4vw,3.65rem);line-height:1.08;margin:10px 0 16px}.warm-section-head p{font-size:1.05rem;color:#756d63}.center-head{margin-left:auto;margin-right:auto;text-align:center}.warm-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.warm-steps article{position:relative;padding:30px 24px 28px;border-radius:26px;background:rgba(255,253,249,.86);border:1px solid rgba(192,173,151,.24);box-shadow:0 14px 38px rgba(77,62,45,.055)}.warm-steps article>span{position:absolute;right:20px;top:17px;font-family:Georgia,serif;color:#c1ab8d;font-size:1.05rem}.step-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#edf0e7;color:#6f806a;font-size:1.45rem;margin-bottom:22px}.warm-steps h3{font-family:Georgia,serif;font-size:1.32rem;font-weight:400;line-height:1.25;margin:0 0 10px}.warm-steps p{margin:0;color:#746d64;font-size:.93rem}.stone-story-section{background:linear-gradient(135deg,#e7eadf,#f2e9df)}.stone-story-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.stone-story-image{position:relative}.stone-story-image img{width:100%;border-radius:32px;box-shadow:0 28px 70px rgba(51,61,48,.18);border:8px solid rgba(255,255,255,.35)}.stone-story-image small{display:block;margin-top:9px;color:#857b70;font-size:.75rem}.stone-story-copy h2{font-size:clamp(2.5rem,4.5vw,4rem);line-height:1.02;margin:12px 0 22px}.stone-story-copy>p{font-size:1.08rem;line-height:1.8;color:#655f56}.warm-checks{list-style:none;padding:0;margin:26px 0;display:grid;gap:12px}.warm-checks li{position:relative;padding-left:31px;color:#5c5a53}.warm-checks li:before{content:'✓';position:absolute;left:0;top:0;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#778570;color:#fff;font-size:.72rem}.text-link{font-weight:750;color:#536354}.warm-memory-features{background:#fbf7f1}.warm-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.warm-feature-grid article{padding:26px;border-radius:24px;background:#fffdfa;border:1px solid #ebe1d5;min-height:210px}.feature-symbol{font-size:1.8rem;color:#8b957e}.warm-feature-grid h3{font-family:Georgia,serif;font-size:1.35rem;font-weight:400;margin:16px 0 8px}.warm-feature-grid p{margin:0;color:#756c62;font-size:.92rem}.warm-pricing-section{background:linear-gradient(180deg,#f6efe6,#fbf7f1)}.warm-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}.warm-plan{position:relative;border-radius:30px;padding:34px;background:rgba(255,253,249,.95);border:1px solid #e5dacd;box-shadow:0 16px 40px rgba(78,60,42,.055);display:flex;flex-direction:column}.warm-plan.featured{background:linear-gradient(160deg,#fffdfa,#f2f4ea);border-color:#aab69f;box-shadow:0 23px 58px rgba(84,99,77,.12);transform:translateY(-8px)}.plan-ribbon{position:absolute;right:22px;top:19px;padding:5px 10px;border-radius:999px;background:#74836e;color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem;font-weight:800}.plan-name{font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:#817767;font-size:.7rem}.warm-plan h3,.warm-plan h2{margin:16px 0 0;font-size:1rem;font-weight:500}.warm-plan h3 strong,.warm-plan h2 strong{font-family:Georgia,serif;font-size:3.1rem;font-weight:400;color:#48433d}.warm-plan h3 small,.warm-plan h2 small{color:#777064}.annual-bill{font-size:.82rem;color:#81776a;margin:2px 0 18px}.warm-plan>p:not(.annual-bill){color:#6f685f;min-height:66px}.warm-plan ul{list-style:none;padding:0;margin:19px 0 28px;display:grid;gap:10px;flex:1}.warm-plan li{position:relative;padding-left:23px;color:#5d5952;font-size:.92rem}.warm-plan li:before{content:'✓';position:absolute;left:0;color:#70806c;font-weight:800}.pricing-footnote{text-align:center;margin:26px auto 0;color:#776f64}.warm-cta{text-align:center;padding:92px 0;background:radial-gradient(circle at 50% 0,rgba(255,255,255,.12),transparent 30%),linear-gradient(135deg,#687566,#536154);color:#f7f0e7}.warm-cta .warm-kicker{color:#e2cfad}.warm-cta .warm-kicker:before{color:#e2cfad}.warm-cta h2{font-size:clamp(2.5rem,4.5vw,4.3rem);color:#fffaf2;margin:12px auto 14px;max-width:850px}.warm-cta p{color:#e6dfd5}.warm-cta .btn{background:#fff9ef;color:#526052;border-color:#fff9ef;box-shadow:none}.warm-page-head{padding:82px 0 52px;background:radial-gradient(circle at 80% 10%,rgba(178,197,168,.24),transparent 30%),linear-gradient(135deg,#f8f1e8,#f1e9de)}.warm-page-head.compact{padding:50px 0 35px}.warm-page-head h1{font-size:clamp(2.8rem,5vw,4.8rem);line-height:1.02;max-width:880px;margin:12px 0 18px}.warm-page-head p{font-size:1.12rem;line-height:1.75;color:#6f675e;max-width:770px}.pricing-page-section{padding-top:58px}.pricing-stone-note{margin-top:68px;padding:34px;border-radius:34px;background:linear-gradient(135deg,#edf0e7,#f5ece2);display:grid;grid-template-columns:minmax(280px,.82fr) 1.18fr;gap:42px;align-items:center}.pricing-stone-note img{border-radius:24px;width:100%;box-shadow:0 18px 45px rgba(58,64,53,.13)}.pricing-stone-note h2{font-family:Georgia,serif;font-weight:400;font-size:2.35rem;margin:10px 0}.pricing-stone-note p{color:#686158;line-height:1.75}.pricing-stone-note small{color:#897f73}.promo-explainer{margin:25px auto 0;padding:20px 24px;border-radius:18px;background:#fffdfa;border:1px solid #e9ded1;max-width:780px;text-align:center}.promo-explainer span{font-weight:800;color:#62715f}.promo-explainer p{margin:4px 0 0;color:#777064}.how-flow{max-width:900px}.how-flow article{display:grid;grid-template-columns:85px 1fr;gap:28px;padding:34px 0;border-bottom:1px solid #e4d9cc}.how-flow article>span{font-family:Georgia,serif;font-size:2.2rem;color:#b29c7f}.how-flow h2{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:0 0 8px}.how-flow p{color:#70695f;font-size:1.03rem;line-height:1.75;margin:0}.how-stone-step{padding:42px!important;margin:18px 0;border:0!important;border-radius:30px;background:linear-gradient(135deg,#e9ede4,#f7eee4)}.how-stone-step img{margin-top:26px;border-radius:24px;max-width:620px;width:100%;box-shadow:0 18px 45px rgba(55,64,52,.13)}.how-stone-step small{display:block;margin-top:8px;color:#83796e}.warm-faq details{border-color:#e7dcd0;background:#fffdfa;border-radius:20px;padding:20px 22px;box-shadow:0 8px 24px rgba(76,60,43,.035)}.warm-faq summary{font-family:Georgia,serif;font-weight:400;font-size:1.15rem;color:#49443e}.warm-footer{background:#414b41;color:#e8e1d8;border:0;padding:58px 0}.warm-footer .footer-grid{display:grid;grid-template-columns:1.5fr .7fr .7fr;gap:60px}.warm-footer .brand{color:#fff8ef}.warm-footer .brand small{display:none}.footer-brand p{max-width:430px;color:#d4cec5}.footer-brand>small{color:#bfb8ad}.footer-links{display:grid;align-content:start;gap:8px}.footer-links strong{color:#f7f0e8;margin-bottom:5px}.footer-links a{color:#d8d1c8}.cookie{background:#fffaf4;border-color:#ded2c4}

/* Warm registration + annual-only promo */
.warm-registration{background:radial-gradient(circle at 12% 10%,rgba(255,255,255,.85),transparent 28%),linear-gradient(135deg,#f8f2e9,#f0ebe1)}.warm-register-hero h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em;color:#433f39}.registration-plan{border-color:#ded3c5;background:#fffdfa}.registration-plan.recommended{background:linear-gradient(135deg,#fffdfa,#f1f3e9);border-color:#9ead96}.register-plan-tag{position:absolute;right:17px;top:11px;padding:4px 8px;border-radius:999px;background:#71806c;color:#fff;font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.plan-copy em{display:block;color:#74806e;font-style:normal;font-size:.72rem;margin-top:5px;font-weight:700}.annual-only-note{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:16px;background:#eef1e9;border:1px solid #dfe5d9;margin-top:18px}.annual-only-note>span{font-weight:800;color:#60705e;white-space:nowrap}.annual-only-note p{margin:0!important;color:#716b62!important;font-size:.88rem}.annual-only-note.admin-note{margin-top:0}.promo-box{margin-top:18px;padding:19px;border:1px solid #e4d5c5;border-radius:20px;background:linear-gradient(135deg,#fffaf3,#f7f0e5)}.promo-box>div:first-child{display:flex;align-items:center;gap:12px}.promo-box>div:first-child>div{display:grid}.promo-box small{color:#7c7266}.promo-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#b99465;color:#fff;font-weight:900}.promo-entry{display:flex;gap:8px;margin-top:13px}.promo-entry input{text-transform:uppercase;letter-spacing:.04em}.promo-result{margin:10px 0 0!important;padding:9px 11px;border-radius:10px;font-size:.86rem}.promo-result.success{background:#e5efe2;color:#40583e}.promo-result.error{background:#f5e3df;color:#7b3e37}.promo-total{margin-top:12px;padding-top:12px;border-top:1px solid #eadfce;display:flex;justify-content:space-between;align-items:center}.promo-total span{color:#70675c}.promo-total b{font-size:1.15rem;color:#536251}.single-choice{grid-template-columns:minmax(250px,420px)!important}.summary-stone{position:relative;margin:-6px -6px 20px}.summary-stone img{width:100%;border-radius:18px;aspect-ratio:4/3;object-fit:cover}.summary-stone small{position:absolute;right:8px;bottom:8px;padding:3px 7px;border-radius:999px;background:rgba(255,250,242,.9);color:#6c655c;font-size:.6rem}.summary-monthly{display:flex;align-items:baseline;gap:7px;margin:8px 0 4px}.summary-monthly strong{font-family:Georgia,serif;font-size:2.9rem;font-weight:400;color:#4e4942}.summary-monthly span{color:#81776b}.summary-price-row,.summary-discount,.summary-total{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:8px 0}.summary-price-row{color:#756c61}.summary-discount{color:#61725d}.summary-discount em{font-style:normal;font-size:.7rem;display:block;color:#7d8878}.summary-total{border-top:1px solid #e5dacd;margin-top:4px;padding-top:14px}.summary-total strong{font-size:1.25rem;color:#4e5f4c}.registration-summary{background:linear-gradient(180deg,#fffdf9,#f7f2e9);border-color:#ded2c3}.stone-mini-benefit,.stone-dashboard-note{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:18px;background:#eef1e9;border:1px solid #dfe4d9}.stone-mini-benefit>span,.stone-dashboard-note>span{font-size:1.45rem;color:#74816e}.stone-mini-benefit p,.stone-dashboard-note p{margin:3px 0 0;color:#71695f}.admin-stone{margin:2px 0 5px}.stone-dashboard-note{margin:0 0 20px;background:linear-gradient(135deg,#eef1e8,#f5eee6)}.warm-package-summary{background:linear-gradient(135deg,#f0f3ea,#f8f0e7)!important;border-color:#dfe3d8!important}.warm-package-summary>div{display:grid}.warm-package-summary>div span{font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;color:#788372}.warm-package-summary>div b{font-family:Georgia,serif;font-size:1.9rem;font-weight:400}.warm-package-summary>strong{color:#5c6758}.package-activation-card{border-radius:24px;padding:28px}

@media(max-width:1000px){.warm-hero-grid{grid-template-columns:1fr;gap:35px}.warm-hero-copy{max-width:780px}.warm-hero-visual{max-width:650px;margin:auto}.warm-steps,.warm-feature-grid{grid-template-columns:1fr 1fr}.stone-story-grid{grid-template-columns:1fr;gap:38px}.stone-story-image{max-width:650px}.warm-footer .footer-grid{grid-template-columns:1.3fr .7fr .7fr;gap:32px}}
@media(max-width:800px){.warm-plan-grid{grid-template-columns:1fr;max-width:620px;margin:auto}.warm-plan.featured{transform:none}.pricing-stone-note{grid-template-columns:1fr;padding:24px}.warm-footer .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.warm-hero{padding-top:60px}.warm-hero-copy h1{font-size:3.5rem}.floating-memory-card{left:0}.warm-registration .registration-grid{grid-template-columns:1fr}.warm-registration .registration-summary{position:relative;top:auto}.summary-stone{max-width:420px}}
@media(max-width:620px){.warm-hero-copy h1{font-size:2.85rem}.warm-lead{font-size:1.03rem}.warm-trust-row{display:grid;gap:9px}.warm-steps,.warm-feature-grid{grid-template-columns:1fr}.warm-section{padding:65px 0}.warm-hero-visual{padding:12px 0 62px}.floating-memory-card{width:205px;bottom:0}.stone-photo-card{border-radius:24px}.stone-photo-card img{border-radius:17px}.stone-photo-card p{align-items:flex-start;flex-direction:column;gap:1px}.warm-page-head{padding:58px 0 38px}.warm-page-head h1{font-size:2.75rem}.how-flow article{grid-template-columns:54px 1fr;gap:14px}.how-flow article>span{font-size:1.55rem}.how-flow h2{font-size:1.55rem}.how-stone-step{padding:24px!important}.warm-footer .footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.promo-entry{flex-direction:column}.single-choice{grid-template-columns:1fr!important}.annual-only-note{align-items:flex-start;flex-direction:column;gap:3px}}

/* === Warm supporting public pages === */
.warm-auth-page{min-height:calc(100vh - 72px);padding:72px 24px 90px;background:radial-gradient(circle at 12% 15%,rgba(206,171,126,.17),transparent 30%),radial-gradient(circle at 88% 80%,rgba(105,132,111,.12),transparent 31%),linear-gradient(180deg,#faf5ed 0,#f4ecdf 100%)}
.warm-auth-shell{width:min(1060px,100%);margin:auto;display:grid;grid-template-columns:1.03fr .87fr;gap:42px;align-items:stretch}.warm-auth-story{position:relative;overflow:hidden;padding:62px 58px;border-radius:36px;background:linear-gradient(155deg,#415349,#2f4038);color:#f8f0e5;box-shadow:0 30px 70px rgba(57,47,35,.14)}.warm-auth-story:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 70% 28%,rgba(235,202,146,.18),transparent 25%),radial-gradient(circle at 10% 90%,rgba(255,255,255,.08),transparent 28%);pointer-events:none}.warm-auth-story>*{position:relative}.warm-auth-story .warm-kicker{color:#e5cda8}.warm-auth-story h1{font-family:Georgia,serif;font-size:clamp(2.5rem,4.4vw,4.6rem);font-weight:400;line-height:1.02;letter-spacing:-.035em;margin:15px 0 22px}.warm-auth-story>p{font-size:1.08rem;color:#e2ddd2;max-width:540px}.warm-auth-stone{display:flex;align-items:center;gap:18px;margin:40px 0 28px;padding:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.065);border-radius:22px}.warm-auth-stone img{width:104px;height:92px;object-fit:cover;border-radius:15px}.warm-auth-stone div{display:grid;gap:3px}.warm-auth-stone b{font-family:Georgia,serif;font-size:1.1rem}.warm-auth-stone span{font-size:.88rem;color:#d4cec2;line-height:1.45}.warm-auth-story blockquote{margin:28px 0 0;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.12);font-family:Georgia,serif;font-style:italic;color:#e9dac4;font-size:1.05rem}.warm-auth-card{align-self:center;padding:48px 44px;border-radius:30px;background:rgba(255,253,249,.94);border:1px solid rgba(145,113,75,.13);box-shadow:0 24px 65px rgba(72,53,32,.10)}.warm-auth-card h1,.warm-auth-card h2{font-family:Georgia,serif;font-size:2.55rem;font-weight:400;line-height:1.08;margin:8px 0 10px;color:#342f29}.auth-soft-copy{margin:0 0 26px;color:#777067}.warm-auth-card .modern-field{font-weight:650;color:#4a443c}.warm-auth-card input{background:#fffdf9;border-color:#dcd2c4;padding:13px 14px}.warm-auth-link{text-align:right;font-size:.92rem;margin:13px 0 0}.warm-auth-divider{display:flex;align-items:center;gap:12px;margin:24px 0 15px;color:#9b9184;font-size:.82rem}.warm-auth-divider:before,.warm-auth-divider:after{content:"";height:1px;background:#e5ddd1;flex:1}.auth-register-link{margin-top:24px}.single-auth{display:block;width:min(540px,100%)}.single-auth .warm-auth-card{padding:50px}.compact-auth{display:grid;place-items:center}.warm-contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:34px;align-items:start}.contact-note{position:sticky;top:110px;padding:38px;border-radius:30px;background:linear-gradient(150deg,#52675b,#394b42);color:#fff8ed;box-shadow:0 24px 50px rgba(56,52,42,.1)}.contact-note h2{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin:12px 0}.contact-note p{color:#e2ddd3}.contact-note .feature-symbol{color:#edcf9d}.contact-small-note{display:grid;gap:4px;padding-top:22px;margin-top:26px;border-top:1px solid rgba(255,255,255,.14)}.contact-small-note span{font-size:.9rem;color:#dbd4c9}.warm-form-card{padding:36px;border-radius:28px;background:#fffdf9;border:1px solid #e4dacb;box-shadow:0 18px 50px rgba(73,56,36,.07)}.warm-form-card textarea{min-height:180px}.warm-legal-shell{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:40px;align-items:start}.warm-legal-copy{padding:44px 48px;border-radius:30px;background:#fffdf9;border:1px solid #e7ddcf;box-shadow:0 18px 45px rgba(72,57,39,.055);font-family:Georgia,serif;font-size:1.05rem;line-height:1.9;white-space:normal}.warm-cookie-settings{position:sticky;top:105px;padding:28px;border-radius:24px;background:#eef0e9;border:1px solid #dce2d7}.warm-cookie-settings h2{font-family:Georgia,serif;font-weight:400;margin:8px 0}.warm-cookie-settings form+form{margin-top:14px}.legal-review-note{margin-top:22px;color:#8c8175;font-size:.86rem}.legal-review-note p{max-width:850px}.contact-head,.legal-head{background:radial-gradient(circle at 80% 10%,rgba(112,139,119,.12),transparent 28%),linear-gradient(180deg,#faf4eb,#f5ecdf)}
@media(max-width:860px){.warm-auth-shell,.warm-contact-grid,.warm-legal-shell{grid-template-columns:1fr}.warm-auth-story{padding:44px 34px}.warm-auth-story h1{font-size:3rem}.warm-auth-card{padding:38px 30px}.contact-note,.warm-cookie-settings{position:static}.warm-auth-stone{max-width:500px}}
@media(max-width:560px){.warm-auth-page{padding:35px 14px 60px}.warm-auth-shell{gap:18px}.warm-auth-story{padding:34px 24px;border-radius:25px}.warm-auth-story h1{font-size:2.5rem}.warm-auth-stone img{width:82px;height:76px}.warm-auth-card,.single-auth .warm-auth-card{padding:30px 22px;border-radius:23px}.warm-auth-card h1,.warm-auth-card h2{font-size:2.15rem}.warm-form-card,.contact-note,.warm-legal-copy{padding:25px 20px;border-radius:22px}.warm-legal-copy{font-size:1rem}.warm-contact-grid .grid2{grid-template-columns:1fr}}

/* =========================================================
   QRminne theme expansion 2026-09: stronger visual variation
   ========================================================= */
.theme-sunset{--m-bg:#f6e7d9;--m-paper:#fff7ee;--m-text:#4a2e28;--m-accent:#bd674f;background:linear-gradient(180deg,#f8e8d7 0,#f4ddd0 38%,#f8f2e9 100%)}
.theme-sunset .memorial-top{max-width:1240px}.theme-sunset .memorial-hero{position:relative;overflow:hidden;max-width:1260px;margin:0 auto 34px;min-height:650px;border-radius:42px;background:linear-gradient(135deg,#6e3b38 0,#b8664d 48%,#e4a665 100%);color:#fff8ee;grid-template-columns:minmax(280px,460px) minmax(320px,560px);box-shadow:0 32px 80px rgba(111,58,48,.22)}.theme-sunset .memorial-hero:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-85px;top:-100px;background:rgba(255,219,151,.33);box-shadow:0 0 90px rgba(255,209,132,.28)}.theme-sunset .memorial-portrait,.theme-sunset .memorial-title{position:relative;z-index:1}.theme-sunset .memorial-portrait img,.theme-sunset .portrait-empty{border-radius:30% 30% 46% 46%;border:8px solid rgba(255,248,236,.24);box-shadow:0 25px 60px rgba(73,31,28,.28)}.theme-sunset .memorial-title h1{font-style:italic;text-shadow:0 3px 20px rgba(66,29,28,.22)}.theme-sunset .memorial-title .eyebrow{color:#ffe2a7}.theme-sunset .life-dates span{color:#ffe0a4}.theme-sunset .memorial-content{width:min(1080px,calc(100% - 36px))}.theme-sunset .memory-section{border:0;margin:26px 0;padding:58px 62px;background:rgba(255,249,241,.74);border-radius:34px;box-shadow:0 18px 45px rgba(93,52,44,.07)}.theme-sunset .memory-section h2{color:#6b3d36}.theme-sunset .memorial-nav{background:rgba(255,248,239,.9);border:0;box-shadow:0 10px 30px rgba(95,51,42,.08)}

.theme-ocean{--m-bg:#eaf5f8;--m-paper:#f9fdff;--m-text:#203d48;--m-accent:#3383a1;background:linear-gradient(180deg,#dff2f7 0,#f5fbfc 56%,#e8f3ef 100%)}
.theme-ocean .memorial-top{max-width:1240px}.theme-ocean .memorial-hero{position:relative;min-height:670px;max-width:none;padding:70px 7vw 135px;background:linear-gradient(155deg,#afd9e5 0,#d9eff3 45%,#f7fbf7 100%);grid-template-columns:minmax(270px,410px) minmax(340px,620px)}.theme-ocean .memorial-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:115px;background:radial-gradient(90px 38px at 8% 0,#fff 98%,transparent 100%),radial-gradient(130px 48px at 30% 12px,#fff 98%,transparent 100%),radial-gradient(145px 55px at 58% 2px,#fff 98%,transparent 100%),radial-gradient(125px 44px at 84% 13px,#fff 98%,transparent 100%),linear-gradient(#fff,#fff);background-repeat:no-repeat}.theme-ocean .memorial-portrait img,.theme-ocean .portrait-empty{border-radius:50%;aspect-ratio:1/1;border:10px solid rgba(255,255,255,.66);box-shadow:0 25px 65px rgba(36,102,124,.18)}.theme-ocean .memorial-title h1{color:#245d70}.theme-ocean .memorial-title h1:after{content:"≈";display:block;color:#68abc0;font-size:.55em;letter-spacing:.2em;margin-top:18px}.theme-ocean .memory-section{padding:72px 6%;border-color:rgba(42,121,149,.12)}.theme-ocean .gallery-section{background:rgba(255,255,255,.48);border-radius:40px;margin:35px 0}.theme-ocean .memory-item{border-radius:28px 28px 12px 12px;box-shadow:0 14px 36px rgba(40,104,126,.09)}.theme-ocean .greetings blockquote{border-radius:30px 8px 30px 8px}

.theme-stars{--m-bg:#09142b;--m-paper:#101e3c;--m-text:#f4f2e9;--m-accent:#e5c77d;background:radial-gradient(circle at 20% 8%,#23335c 0,#0e1a35 27%,#071126 65%,#050b18 100%);color:var(--m-text)}
.theme-stars:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.62;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.4px),radial-gradient(circle,#dbe7ff 0 1px,transparent 1.3px),radial-gradient(circle,#f5d99a 0 1.2px,transparent 1.6px);background-size:67px 67px,103px 103px,149px 149px;background-position:8px 12px,42px 64px,90px 20px}.theme-stars .memorial-top,.theme-stars .memorial-brand,.theme-stars .memorial-nav a{color:#f5f2e8}.theme-stars .memorial-hero{position:relative;grid-template-columns:1fr;text-align:center;justify-items:center;padding:72px 20px 95px}.theme-stars .memorial-portrait{position:relative}.theme-stars .memorial-portrait:before,.theme-stars .memorial-portrait:after{content:"✦";position:absolute;color:#e5c77d;filter:drop-shadow(0 0 10px rgba(229,199,125,.65));animation:starTwinkle 3.2s ease-in-out infinite}.theme-stars .memorial-portrait:before{left:-42px;top:24px;font-size:2rem}.theme-stars .memorial-portrait:after{right:-50px;bottom:45px;font-size:1.3rem;animation-delay:1.1s}.theme-stars .memorial-portrait img,.theme-stars .portrait-empty{width:min(300px,70vw);aspect-ratio:1;border-radius:50%;border:1px solid rgba(229,199,125,.65);box-shadow:0 0 0 14px rgba(229,199,125,.05),0 0 80px rgba(124,160,236,.18)}.theme-stars .memorial-title h1{font-size:clamp(3.2rem,8vw,6.8rem);color:#fff}.theme-stars .memorial-title .eyebrow{color:#e5c77d}.theme-stars .memorial-nav{background:rgba(7,17,38,.86);border-color:rgba(229,199,125,.17)}.theme-stars .memory-section{position:relative;border-color:rgba(229,199,125,.15)}.theme-stars .memory-section h2{color:#fff}.theme-stars .memory-section:after{content:"✧";position:absolute;right:0;top:52px;color:#e5c77d;opacity:.28;font-size:2rem}.theme-stars .memory-item,.theme-stars .greetings blockquote,.theme-stars .memory-form-box{background:rgba(16,30,60,.82);border:1px solid rgba(229,199,125,.13);box-shadow:0 16px 42px rgba(0,0,0,.22)}.theme-stars input,.theme-stars textarea,.theme-stars select{background:#f8f6ef;color:#222}.theme-stars .memorial-footer{background:#050b18;color:#d9dce6}
@keyframes starTwinkle{0%,100%{opacity:.45;transform:scale(.8) rotate(0)}50%{opacity:1;transform:scale(1.15) rotate(18deg)}}

.theme-woodland{--m-bg:#e9eee3;--m-paper:#fbf9f0;--m-text:#304135;--m-accent:#657d4d;background:linear-gradient(180deg,#e6ede0,#f8f5e9)}
.theme-woodland .memorial-hero{position:relative;max-width:1180px;margin:28px auto 70px;min-height:620px;padding:62px;border-radius:22px 90px 22px 90px;background:linear-gradient(130deg,#304b3a,#69815a 58%,#b7b98a);color:#fff;box-shadow:0 28px 70px rgba(44,66,49,.18)}.theme-woodland .memorial-hero:before{content:"❧";position:absolute;left:20px;bottom:-32px;font-size:8rem;color:#dce5c9;opacity:.28;transform:rotate(-18deg)}.theme-woodland .memorial-hero:after{content:"❦";position:absolute;right:24px;top:4px;font-size:7rem;color:#edf1d8;opacity:.18;transform:rotate(18deg)}.theme-woodland .memorial-portrait img,.theme-woodland .portrait-empty{border-radius:12px 72px 12px 72px;border:8px solid rgba(245,242,221,.36);box-shadow:18px 18px 0 rgba(38,64,47,.28)}.theme-woodland .memorial-title h1{color:#fff8e5}.theme-woodland .memorial-title .eyebrow{color:#e7d99e}.theme-woodland .memory-section{padding:68px 54px;margin:24px 0;background:rgba(255,253,244,.62);border:0;border-left:7px solid rgba(101,125,77,.42);border-radius:10px 38px 38px 10px}.theme-woodland .gallery-section{border-left-color:#9a7d52}.theme-woodland .greetings blockquote{border-radius:8px 30px 8px 30px;box-shadow:0 12px 30px rgba(48,65,53,.08)}

.theme-spring{--m-bg:#f8f4d9;--m-paper:#fffdf1;--m-text:#415133;--m-accent:#8fa548;background:linear-gradient(180deg,#fcf3c9 0,#f8f7df 40%,#edf4df 100%)}
.theme-spring .memorial-top{max-width:1200px}.theme-spring .memorial-hero{position:relative;max-width:1200px;margin:0 auto 50px;min-height:610px;border-radius:36px;background:radial-gradient(circle at 12% 18%,rgba(255,191,83,.38),transparent 22%),radial-gradient(circle at 92% 82%,rgba(133,182,98,.25),transparent 28%),#fff9df;box-shadow:0 24px 60px rgba(101,113,63,.12)}.theme-spring .memorial-hero:before{content:"✿  ·  ❀  ·  ✿";position:absolute;left:5%;top:30px;color:#e3a456;opacity:.62;letter-spacing:.35em;font-size:1.6rem}.theme-spring .memorial-hero:after{content:"❀  ✿";position:absolute;right:6%;bottom:30px;color:#90aa5e;opacity:.42;font-size:3.2rem;transform:rotate(-12deg)}.theme-spring .memorial-portrait img,.theme-spring .portrait-empty{border-radius:48% 52% 48% 52%;border:12px solid #fff;outline:4px solid rgba(143,165,72,.25);box-shadow:0 18px 45px rgba(112,124,69,.16)}.theme-spring .memorial-title h1{color:#566338}.theme-spring .memory-section{position:relative;border-color:rgba(143,165,72,.18)}.theme-spring .memory-section h2{color:#5c6b3b}.theme-spring .memory-item{border-radius:28px;box-shadow:0 10px 28px rgba(119,134,75,.09)}.theme-spring .greetings blockquote:nth-child(odd){background:#fff8dc}.theme-spring .greetings blockquote:nth-child(even){background:#edf4dd}

.theme-little-star{--m-bg:#eceaff;--m-paper:#fbfaff;--m-text:#45416a;--m-accent:#8d78d4;background:linear-gradient(180deg,#e8e7ff 0,#f8f4ff 48%,#eef7ff 100%)}
.theme-little-star .memorial-top{max-width:1180px}.theme-little-star .memorial-hero{position:relative;overflow:hidden;max-width:1180px;margin:12px auto 50px;min-height:640px;border-radius:56px;background:linear-gradient(145deg,#9188d7 0,#bcaee9 46%,#b8d8ef 100%);color:#fff;grid-template-columns:minmax(250px,390px) minmax(300px,560px);box-shadow:0 28px 70px rgba(105,92,160,.22)}.theme-little-star .memorial-hero:before{content:"☾";position:absolute;right:7%;top:3%;font-size:9rem;color:#fff5c8;opacity:.76;text-shadow:0 0 35px rgba(255,246,194,.45)}.theme-little-star .memorial-hero:after{content:"✦  ·  ✧     ✦   · ✧";position:absolute;left:8%;right:8%;top:16%;font-size:1.5rem;color:#fff9d9;letter-spacing:.8em;opacity:.62}.theme-little-star .memorial-portrait,.theme-little-star .memorial-title{position:relative;z-index:2}.theme-little-star .memorial-portrait img,.theme-little-star .portrait-empty{aspect-ratio:1;border-radius:50%;border:12px solid rgba(255,255,255,.52);box-shadow:0 0 0 12px rgba(255,255,255,.1),0 25px 65px rgba(73,58,132,.18)}.theme-little-star .memorial-title h1{color:#fff;font-size:clamp(3.2rem,7vw,6rem);text-shadow:0 3px 18px rgba(71,58,120,.2)}.theme-little-star .memorial-title .eyebrow{color:#fff4c6}.theme-little-star .life-dates span{color:#fff3bf}.theme-little-star .memorial-nav{background:rgba(251,250,255,.9);border:0;box-shadow:0 10px 34px rgba(103,93,151,.09)}.theme-little-star .memory-section{border:0;margin:25px 0;padding:58px;background:rgba(255,255,255,.62);border-radius:38px}.theme-little-star .memory-section h2{color:#62588f}.theme-little-star .memory-item{border-radius:30px;box-shadow:0 14px 30px rgba(101,90,150,.11)}.theme-little-star .greetings blockquote{border-radius:28px;background:linear-gradient(145deg,#fff,#f4f0ff);border:1px solid #e4defb}.theme-little-star .candle-sanctuary{background:radial-gradient(circle at 50% 42%,#4f4a7e,#28284e 45%,#15162f 100%)}

.theme-rainbow{--m-bg:#fff5ef;--m-paper:#fff;--m-text:#51434d;--m-accent:#c26683;background:linear-gradient(180deg,#fff3eb 0,#fff8f2 26%,#f3f7ff 63%,#f6f2ff 100%)}
.theme-rainbow .memorial-top{max-width:1220px}.theme-rainbow .memorial-hero{position:relative;max-width:1220px;margin:12px auto 45px;min-height:620px;border-radius:48px;background:linear-gradient(135deg,#ffd8cb 0 20%,#ffe6a8 20% 38%,#d9edbf 38% 56%,#c9e8f5 56% 75%,#ddcef4 75% 100%);box-shadow:0 28px 70px rgba(127,99,128,.16)}.theme-rainbow .memorial-hero:before{content:"";position:absolute;inset:14px;border:5px solid rgba(255,255,255,.55);border-radius:38px;pointer-events:none}.theme-rainbow .memorial-portrait img,.theme-rainbow .portrait-empty{aspect-ratio:1;border-radius:42% 58% 49% 51%;border:12px solid rgba(255,255,255,.72);box-shadow:0 20px 50px rgba(105,84,112,.14);transform:rotate(-2deg)}.theme-rainbow .memorial-title h1{color:#61465a;font-weight:500}.theme-rainbow .memorial-title .eyebrow{color:#8d5675}.theme-rainbow .memory-section{border:0;padding:60px;margin:22px 0;border-radius:34px;background:#fff}.theme-rainbow .memory-section:nth-child(4n+1){background:#fff3ea}.theme-rainbow .memory-section:nth-child(4n+2){background:#f2f8eb}.theme-rainbow .memory-section:nth-child(4n+3){background:#eef7fb}.theme-rainbow .memory-section:nth-child(4n){background:#f6f0fb}.theme-rainbow .memory-item{border-radius:26px 10px 26px 10px;box-shadow:0 12px 30px rgba(107,81,105,.08)}.theme-rainbow .greetings blockquote{border:0;border-radius:28px}.theme-rainbow .greetings blockquote:nth-child(odd){background:#fff0e8}.theme-rainbow .greetings blockquote:nth-child(even){background:#eef5ff}.theme-rainbow .btn{background:#a55e83;border-color:#a55e83}

/* Rich swatches and editor preview for the new themes */
.theme-swatch.theme-sunset,.theme-showcase.theme-sunset{--m-bg:#d99169;--m-paper:#fff0df;--m-text:#fff8ee;--m-accent:#ffd18c}.theme-swatch.theme-sunset{background:linear-gradient(135deg,#7a413b,#d47c59 60%,#e7b26f)}.theme-swatch.theme-sunset .theme-swatch-photo,.theme-showcase.theme-sunset .theme-showcase-photo{border-radius:30% 30% 46% 46%}.theme-showcase.theme-sunset .theme-showcase-hero{color:#fff;background:linear-gradient(135deg,#763d39,#ca6d51 62%,#e5a564)}
.theme-swatch.theme-ocean,.theme-showcase.theme-ocean{--m-bg:#dff2f7;--m-paper:#fbfeff;--m-text:#28556a;--m-accent:#3383a1}.theme-swatch.theme-ocean{background:linear-gradient(180deg,#bce2ec,#edf9fb)}.theme-swatch.theme-ocean .theme-swatch-photo,.theme-showcase.theme-ocean .theme-showcase-photo{border-radius:50%}.theme-showcase.theme-ocean .theme-showcase-hero{background:linear-gradient(145deg,#b7dfe9,#e9f6f7)}
.theme-swatch.theme-stars,.theme-showcase.theme-stars{--m-bg:#0a1530;--m-paper:#122244;--m-text:#f2efe5;--m-accent:#e5c77d}.theme-swatch.theme-stars{background:radial-gradient(circle at 28% 20%,#354775,#111e3e 55%,#071126)}.theme-swatch.theme-stars:after{content:"✦";color:#f4d893;font-size:.7rem}.theme-showcase.theme-stars{background:radial-gradient(circle at 20% 8%,#263862,#0b1732 55%,#071126)}.theme-showcase.theme-stars .theme-showcase-hero{grid-template-columns:1fr;text-align:center;justify-items:center}.theme-showcase.theme-stars .theme-showcase-photo{border-radius:50%;width:115px}.theme-showcase.theme-stars .theme-showcase-label{background:#162448;color:#f2efe5}
.theme-swatch.theme-woodland,.theme-showcase.theme-woodland{--m-bg:#dde7d7;--m-paper:#fbf8eb;--m-text:#314337;--m-accent:#657d4d}.theme-swatch.theme-woodland{background:linear-gradient(135deg,#385443,#7b8c65)}.theme-swatch.theme-woodland .theme-swatch-photo,.theme-showcase.theme-woodland .theme-showcase-photo{border-radius:8px 28px 8px 28px}.theme-showcase.theme-woodland .theme-showcase-hero{background:linear-gradient(135deg,#36513f,#7c8e67);color:#fff}
.theme-swatch.theme-spring,.theme-showcase.theme-spring{--m-bg:#fbf5d1;--m-paper:#fffdf2;--m-text:#53613b;--m-accent:#94a84e}.theme-swatch.theme-spring{background:radial-gradient(circle at 15% 18%,#ffd887,transparent 35%),linear-gradient(135deg,#fff4bc,#e9f0cf)}.theme-showcase.theme-spring .theme-showcase-hero{background:radial-gradient(circle at 10% 20%,rgba(255,193,80,.32),transparent 28%),linear-gradient(145deg,#fff5c9,#edf2d9)}
.theme-swatch.theme-little-star,.theme-showcase.theme-little-star{--m-bg:#dcd9fa;--m-paper:#fbfaff;--m-text:#504a7c;--m-accent:#8d78d4}.theme-swatch.theme-little-star{background:linear-gradient(145deg,#8f86d4,#b6a9e6 52%,#b6d8ef);color:#fff}.theme-swatch.theme-little-star:after{content:"☾";color:#fff2b5;font-size:.8rem}.theme-showcase.theme-little-star .theme-showcase-hero{color:#fff;background:linear-gradient(145deg,#9188d7,#bbaee9 55%,#b8d8ef)}.theme-showcase.theme-little-star .theme-showcase-photo{border-radius:50%}.theme-showcase.theme-little-star .theme-showcase-title small{color:#fff4c4}
.theme-swatch.theme-rainbow,.theme-showcase.theme-rainbow{--m-bg:#fff3ed;--m-paper:#fff;--m-text:#624c5d;--m-accent:#b76584}.theme-swatch.theme-rainbow{background:linear-gradient(135deg,#ffd8cb 0 20%,#ffe6a8 20% 40%,#d9edbf 40% 60%,#c9e8f5 60% 80%,#ddcef4 80%)}.theme-showcase.theme-rainbow .theme-showcase-hero{background:linear-gradient(135deg,#ffd8cb 0 20%,#ffe6a8 20% 40%,#d9edbf 40% 60%,#c9e8f5 60% 80%,#ddcef4 80%)}.theme-showcase.theme-rainbow .theme-showcase-photo{border-radius:42% 58% 49% 51%;transform:rotate(-2deg)}

/* =========================================================
   Interactive theme demo
   ========================================================= */
.demo-memorial-body{padding-top:0}.demo-notice{position:sticky;top:0;z-index:120;display:flex;align-items:center;justify-content:center;gap:14px;padding:9px 18px;background:#27382e;color:#fff;font-size:.82rem;box-shadow:0 5px 18px rgba(0,0,0,.14)}.demo-notice strong{color:#f0d8a3}.demo-notice a{color:#fff;text-decoration:underline;font-weight:700}.demo-control-shell{position:relative;z-index:30;padding:38px max(20px,calc((100vw - 1240px)/2));background:#faf6ef;color:#332f2a;border-bottom:1px solid #e8ddcf}.demo-control-head{display:flex;justify-content:space-between;gap:35px;align-items:end}.demo-control-head>div:first-child{max-width:760px}.demo-control-head h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2rem,4vw,3.7rem);line-height:1.05;margin:5px 0 10px}.demo-control-head p{margin:0;color:#70685f;max-width:720px}.demo-kicker{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:850;color:#927452}.demo-profile-toggle{display:flex;padding:4px;background:#ede5da;border-radius:999px;flex:0 0 auto}.demo-profile-toggle button{border:0;background:transparent;padding:9px 13px;border-radius:999px;color:#665d54;cursor:pointer;font-weight:700}.demo-profile-toggle button.active{background:#fff;color:#332f2a;box-shadow:0 4px 14px rgba(77,59,42,.1)}.demo-theme-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,260px);gap:10px;overflow-x:auto;padding:22px 3px 12px;scroll-snap-type:x proximity;scrollbar-width:thin}.demo-theme-card{scroll-snap-align:start;display:grid;grid-template-columns:62px 1fr;gap:10px;align-items:center;text-align:left;border:1px solid #e0d7ca;background:#fff;border-radius:16px;padding:9px;cursor:pointer;min-height:82px;transition:.18s;color:#413b35}.demo-theme-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(75,59,42,.09)}.demo-theme-card.active{border-color:#79664e;box-shadow:0 0 0 2px rgba(121,102,78,.12)}.demo-theme-card>span:last-child{display:grid;gap:2px}.demo-theme-card strong{font-size:.9rem}.demo-theme-card small{font-size:.67rem;line-height:1.25;color:#756d64}.demo-theme-card mark{width:max-content;margin-top:3px;background:#eee7ff;color:#6d58a8;border-radius:999px;padding:2px 6px;font-size:.58rem;font-weight:800}.demo-theme-mini{height:60px;border-radius:11px;display:grid;place-items:center;position:relative;overflow:hidden;background:var(--m-bg,#eee)}.demo-theme-mini i{width:25px;height:34px;background:var(--m-paper,#fff);border-radius:45%;box-shadow:0 3px 8px rgba(0,0,0,.12)}.demo-theme-mini b{position:absolute;width:28px;height:4px;bottom:8px;background:var(--m-accent,#777);border-radius:4px}.demo-theme-mini em{position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);border-radius:inherit}.demo-control-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid #e6ddcf;padding-top:12px;margin-top:2px;color:#776d62;font-size:.82rem}.demo-control-actions>span{margin-right:auto}.demo-tool-btn{border:1px solid #d5c9b9;background:#fff;color:#51483f;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:700}.demo-tool-btn b{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:50%;background:#8d6d54;color:#fff;font-size:.7rem}.demo-page{position:relative}.demo-portrait{position:relative;overflow:hidden}.demo-portrait>span{position:relative;z-index:3;font-family:Georgia,serif;font-size:.55em}.demo-portrait>i,.demo-portrait>b{position:absolute;border-radius:50%;filter:blur(1px);opacity:.28}.demo-portrait>i{width:70%;height:70%;background:var(--m-accent);left:-30%;bottom:-18%}.demo-portrait>b{width:55%;height:55%;background:#d7b46f;right:-20%;top:-14%}.demo-child-profile .demo-portrait>i{background:#8d78d4}.demo-child-profile .demo-portrait>b{background:#e9b2c5}.demo-memory-art>div{min-height:250px;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:4px;color:#fff}.demo-memory-art>div span{font-size:4rem;line-height:1}.demo-memory-art>div strong{font-family:Georgia,serif;font-size:1.55rem}.demo-art-summer>div{background:linear-gradient(160deg,#d5ab65,#b66c48 52%,#6c4d45)}.demo-art-garden>div{background:radial-gradient(circle at 72% 25%,#e9d6a8 0 7%,transparent 8%),linear-gradient(145deg,#78936a,#3e684f)}.demo-art-sea>div{background:linear-gradient(180deg,#8ec7d9,#c7e1e5 48%,#5f8f9e 49%,#315b69)}.demo-art-family>div{background:linear-gradient(145deg,#a98d91,#775d67 50%,#493d47)}.demo-form-hint{color:inherit;opacity:.64}.demo-added{animation:demoAppear .45s ease both}@keyframes demoAppear{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.demo-upload-preview img{width:100%;max-height:440px;object-fit:cover}.demo-toast{position:fixed;z-index:200;right:22px;bottom:22px;max-width:390px;background:#26382e;color:#fff;border-radius:14px;padding:13px 16px;box-shadow:0 18px 45px rgba(0,0,0,.22);font-size:.86rem}.demo-drawer{position:fixed;z-index:190;right:0;top:0;bottom:0;width:min(460px,92vw);background:#fbf8f1;color:#332f2a;box-shadow:-20px 0 60px rgba(0,0,0,.22);padding:28px;overflow:auto}.demo-drawer-backdrop{position:fixed;z-index:180;inset:0;background:rgba(14,18,15,.52);backdrop-filter:blur(3px)}.demo-drawer-head{display:flex;gap:18px;align-items:flex-start;border-bottom:1px solid #e5dbce;padding-bottom:20px}.demo-drawer-head>div{flex:1}.demo-drawer-head h2{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin:4px 0}.demo-drawer-head p{font-size:.84rem;color:#746b62}.demo-drawer-head button{border:0;background:#eee6da;border-radius:50%;width:38px;height:38px;font-size:1.4rem;cursor:pointer}.demo-pending-list{display:grid;gap:11px;padding-top:18px}.demo-empty-pending{padding:24px;border:1px dashed #cfc3b4;border-radius:14px;color:#7b7166;text-align:center}.demo-pending-item{display:grid;gap:7px;padding:15px;background:#fff;border:1px solid #e6dbcd;border-radius:15px}.demo-pending-item p{margin:0;color:#665f57}.demo-pending-item img{max-height:170px;width:100%;object-fit:cover;border-radius:10px}.demo-pending-item>div{display:flex;gap:7px}.demo-pending-type{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:#907051;font-weight:850}.demo-no-scroll{overflow:hidden}.demo-private-overlay{position:fixed;z-index:220;inset:0;display:grid;place-items:center;padding:20px;background:rgba(18,24,20,.82);backdrop-filter:blur(10px)}.demo-private-overlay[hidden],.demo-drawer[hidden],.demo-drawer-backdrop[hidden],.demo-toast[hidden],.demo-lightbox[hidden]{display:none!important}.demo-private-overlay .private-card{background:#f9f5ed}.demo-lightbox{position:fixed;z-index:210;inset:0;background:rgba(8,10,9,.9);display:grid;place-items:center;padding:50px 20px}.demo-lightbox>button{position:absolute;right:25px;top:20px;border:0;background:#fff;width:42px;height:42px;border-radius:50%;font-size:1.6rem;cursor:pointer}.demo-lightbox>[data-demo-lightbox-content]{width:min(700px,90vw);max-height:82vh;overflow:auto}.demo-lightbox .memory-item{margin:0}.demo-lightbox .demo-memory-art>div{min-height:520px}

@media(max-width:900px){.theme-sunset .memorial-hero,.theme-little-star .memorial-hero{margin-left:16px;margin-right:16px}.theme-sunset .memory-section,.theme-little-star .memory-section,.theme-rainbow .memory-section{padding:45px 30px}.theme-woodland .memorial-hero{margin:18px;padding:42px}.theme-woodland .memory-section{padding:45px 30px}.theme-ocean .memorial-hero{padding-bottom:125px}.demo-control-head{align-items:flex-start;flex-direction:column}.demo-profile-toggle{align-self:flex-start}}
@media(max-width:680px){.demo-notice{justify-content:flex-start;overflow:auto;white-space:nowrap}.demo-control-shell{padding:26px 14px}.demo-control-head h1{font-size:2.35rem}.demo-theme-strip{grid-auto-columns:235px}.demo-control-actions>span{flex-basis:100%}.demo-tool-btn{flex:1}.theme-sunset .memorial-hero,.theme-little-star .memorial-hero,.theme-rainbow .memorial-hero,.theme-woodland .memorial-hero{border-radius:28px;margin:10px 12px 35px;padding:42px 20px}.theme-sunset .memory-section,.theme-little-star .memory-section,.theme-rainbow .memory-section,.theme-woodland .memory-section{padding:38px 20px;border-radius:24px}.theme-ocean .memorial-hero{padding:42px 18px 115px}.theme-stars .memorial-hero{padding-top:42px}.demo-memory-art>div{min-height:210px}.demo-toast{left:12px;right:12px;bottom:12px}.demo-lightbox .demo-memory-art>div{min-height:360px}}
.warm-demo-link{align-self:center;margin-left:4px}.theme-teaser-section{background:linear-gradient(180deg,#f7efe4,#fcf9f3)}.theme-teaser-row{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;margin:26px 0 30px}.theme-teaser-row i{display:block;width:92px;height:128px;border-radius:46px 46px 18px 18px;box-shadow:0 12px 28px rgba(60,46,35,.1);transform:rotate(-3deg);border:5px solid rgba(255,255,255,.64)}.theme-teaser-row i:nth-child(even){transform:translateY(12px) rotate(3deg)}.theme-teaser-row .theme-classic{background:linear-gradient(#e7d8c3,#fffaf1)}.theme-teaser-row .theme-sunset{background:linear-gradient(145deg,#7b403c,#df9863)}.theme-teaser-row .theme-ocean{background:linear-gradient(#a9d7e5,#edf9fb)}.theme-teaser-row .theme-stars{background:radial-gradient(circle at 30% 20%,#3b4f84,#09142b 62%)}.theme-teaser-row .theme-spring{background:linear-gradient(#fff0a8,#e7f0c9)}.theme-teaser-row .theme-little-star{background:linear-gradient(145deg,#9188d7,#b8d8ef)}.theme-teaser-row .theme-rainbow{background:linear-gradient(150deg,#ffd8cb 0 20%,#ffe6a8 20% 40%,#d9edbf 40% 60%,#c9e8f5 60% 80%,#ddcef4 80%)}
.theme-picker-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.theme-child-badge{width:max-content;margin-top:4px;padding:2px 7px;border-radius:999px;background:#eee8ff;color:#6d58a7;font-style:normal;font-size:.62rem;font-weight:800}.theme-options{max-height:720px;overflow:auto;padding-right:4px;scrollbar-width:thin}@media(max-width:900px){.theme-options{max-height:none;overflow:visible}.theme-picker-actions{justify-content:flex-start}}
.demo-theme-mini.theme-stars:before{display:none!important}.demo-theme-mini.theme-sunset,.demo-theme-mini.theme-ocean,.demo-theme-mini.theme-stars,.demo-theme-mini.theme-woodland,.demo-theme-mini.theme-spring,.demo-theme-mini.theme-little-star,.demo-theme-mini.theme-rainbow{color:var(--m-text,#333)}


/* === Livelier public look + better button contrast === */
:root{--accent:#47604b;--accent-dark:#2f4535;--accent-soft:#ecf1ea;--warm-gold:#c6a06c;--warm-ink:#332f2c;--btn-ghost-text:#2f3e31}
a,.text-link{transition:color .18s ease}.nav nav>a,.link-btn{color:#433e38}.nav nav>a:hover,.link-btn:hover,.text-link:hover{color:#2d4031;text-decoration:none}.brand small{display:block;font-size:.72rem;font-weight:600;color:#7b756d;letter-spacing:.02em}
.btn,.btn:visited{background:linear-gradient(135deg,#516a55,#39503d);border-color:#39503d;color:#fff!important;box-shadow:0 10px 24px rgba(57,80,61,.18);transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease}
.btn:hover,.btn:focus-visible{background:linear-gradient(135deg,#39503d,#253329);border-color:#253329;color:#fff!important;box-shadow:0 14px 34px rgba(37,51,41,.26);text-decoration:none;transform:translateY(-2px)}
.btn-ghost,.btn-ghost:visited{background:rgba(255,250,244,.92);color:#2f3e31!important;border-color:#cdb8a0;box-shadow:0 10px 24px rgba(101,77,51,.08)}
.btn-ghost:hover,.btn-ghost:focus-visible{background:#f2e7d7;color:#263229!important;border-color:#b89d7b}
.link-btn{transition:color .18s ease, opacity .18s ease}.link-btn:hover{opacity:1}
.warm-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 0,rgba(255,255,255,.92),transparent 28%),radial-gradient(circle at 85% 15%,rgba(214,226,205,.6),transparent 22%),linear-gradient(135deg,#f7efe4 0%,#efe9de 44%,#f7f1ea 100%)}
.warm-hero:before,.warm-hero:after{content:'';position:absolute;border-radius:50%;pointer-events:none;filter:blur(10px)}
.warm-hero:before{width:380px;height:380px;left:-120px;top:-110px;background:radial-gradient(circle,rgba(255,255,255,.62),rgba(255,255,255,0))}
.warm-hero:after{width:420px;height:420px;right:-140px;bottom:-180px;background:radial-gradient(circle,rgba(197,214,187,.34),rgba(197,214,187,0))}
.warm-hero-grid{position:relative;z-index:1}.warm-hero-copy h1{font-size:clamp(3.2rem,6vw,5.7rem);line-height:.97}.warm-lead{font-size:1.18rem;max-width:710px;color:#60584f}.warm-trust-row span{background:rgba(255,252,248,.8);border:1px solid #eadfce;box-shadow:0 8px 18px rgba(88,66,42,.06)}
.stone-photo-card,.floating-memory-card,.warm-steps article,.warm-feature-grid article,.warm-plan,.pricing-stone-note,.promo-explainer,.how-stone-step,.warm-faq details,.auth-card,.registration-plan,.registration-summary{transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
.stone-photo-card:hover,.floating-memory-card:hover,.warm-steps article:hover,.warm-feature-grid article:hover,.warm-plan:hover,.pricing-stone-note:hover,.warm-faq details:hover,.registration-plan:hover,.registration-summary:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(78,60,42,.12)}
.stone-photo-card{background:#fffaf4;border:1px solid #e7dbc9;padding:16px;border-radius:30px;box-shadow:0 18px 50px rgba(77,59,40,.12)}
.stone-photo-card img,.stone-story-image img,.pricing-stone-note img,.warm-auth-stone img,.summary-stone img,.how-stone-step img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:24px;box-shadow:0 18px 42px rgba(62,46,33,.16)}
.floating-memory-card{backdrop-filter:blur(10px);background:rgba(255,251,246,.82);border:1px solid rgba(239,228,214,.95)}
.warm-intro-band{background:linear-gradient(90deg,#f0e8db,#f7f1e9,#eef3eb)}.warm-intro-band p{font-size:1.06rem;letter-spacing:.01em}
.warm-section{position:relative}.warm-section:before{content:'';position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(173,152,127,.35),transparent)}
.warm-steps article{background:linear-gradient(180deg,rgba(255,253,249,.98),rgba(250,244,236,.92));border:1px solid #eadfce;box-shadow:0 14px 32px rgba(85,64,39,.06)}
.warm-steps article span:first-child{background:linear-gradient(135deg,#7d6d57,#bda07a);color:#fff;box-shadow:0 8px 20px rgba(125,109,87,.18)}
.step-icon{background:linear-gradient(135deg,#eef2e8,#f8f0e6);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.stone-story-section{background:linear-gradient(180deg,#fbf7f1,#f7f0e5)}.stone-story-grid{align-items:center}.stone-story-image{position:relative}.stone-story-image:after{content:'';position:absolute;right:-28px;bottom:-24px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(205,216,194,.45),transparent 70%);z-index:0}.stone-story-image>*{position:relative;z-index:1}
.warm-feature-grid article{background:linear-gradient(180deg,#fffdfa,#fcf8f2);box-shadow:0 14px 32px rgba(78,60,42,.06)}
.feature-symbol{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#edf1ea,#f7eee3);box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 8px 18px rgba(79,64,47,.08)}
.theme-teaser-row i{transition:transform .25s ease, box-shadow .25s ease}.theme-teaser-row i:hover{transform:translateY(-8px) scale(1.03)!important;box-shadow:0 20px 34px rgba(60,46,35,.16)}
.warm-plan{overflow:hidden}.warm-plan:before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:5px;background:linear-gradient(90deg,#d7b57f,#9eb29b,#97b7d0,#d7b0d6);opacity:.75}.warm-plan h3 strong,.warm-plan h2 strong{letter-spacing:-.04em}.warm-plan .btn{margin-top:auto}.warm-plan.featured{transform:translateY(-10px) scale(1.01)}.warm-plan.featured:hover{transform:translateY(-14px) scale(1.015)}
.pricing-stone-note{box-shadow:0 20px 44px rgba(71,59,42,.08)}
.how-flow article{position:relative}.how-flow article:not(.how-stone-step):before{content:'';position:absolute;left:38px;top:76px;bottom:-14px;width:1px;background:linear-gradient(180deg,rgba(185,166,142,.6),transparent)}.how-flow article:last-child:before{display:none}
.how-stone-step{box-shadow:0 18px 42px rgba(77,63,43,.09)}
.warm-footer{background:linear-gradient(135deg,#414c42,#324034)}
/* Better readability on forms */
.modern-field input,.modern-field select,.promo-entry input,.register-section input,.register-section select{background:#fffdf9;border-color:#d7c8b8;color:#2d2a27}.modern-field input::placeholder,.promo-entry input::placeholder{color:#8b8277}.modern-field input:focus,.modern-field select:focus,.promo-entry input:focus{border-color:#56715a;box-shadow:0 0 0 4px rgba(86,113,90,.12)}
.register-section{background:rgba(255,252,247,.72);border:1px solid #e8dccd;backdrop-filter:blur(8px)}.registration-summary{box-shadow:0 18px 42px rgba(71,59,42,.1)}.summary-badge{background:linear-gradient(135deg,#688068,#48614c);color:#fff}.register-submit-card{background:linear-gradient(135deg,#fffdf9,#f5efe6);border:1px solid #e8ddcf}
.warm-auth-shell,.registration-shell{position:relative}.warm-auth-shell:before,.registration-shell:before{content:'';position:absolute;inset:-30px -20px auto auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(208,223,199,.45),transparent 70%);pointer-events:none}.warm-auth-stone{background:linear-gradient(135deg,#fffefb,#f5eee6);border-color:#e7dccd}
/* Scroll reveal */
@media (prefers-reduced-motion:no-preference){[data-reveal]{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .7s cubic-bezier(.22,1,.36,1), transform .85s cubic-bezier(.22,1,.36,1)}[data-reveal="zoom"]{transform:translateY(26px) scale(.93)}[data-reveal].is-visible{opacity:1;transform:none}.stone-photo-card,.floating-memory-card{animation:softFloat 7s ease-in-out infinite}.floating-memory-card{animation-delay:1.2s}.warm-trust-row span,.feature-symbol,.step-icon{animation:softPulse 6s ease-in-out infinite}} 
@keyframes softFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes softPulse{0%,100%{transform:none}50%{transform:translateY(-2px)}}
@media(max-width:1000px){.warm-hero-copy h1{font-size:clamp(2.8rem,9vw,4.2rem)}.stone-photo-card img,.stone-story-image img,.pricing-stone-note img,.summary-stone img,.how-stone-step img{aspect-ratio:4/3}.warm-steps article:hover,.warm-plan:hover,.pricing-stone-note:hover,.registration-plan:hover,.registration-summary:hover{transform:none}}
@media(max-width:680px){.brand small{display:none}.warm-hero{padding-top:52px}.warm-lead{font-size:1.05rem}.btn,.btn-small{line-height:1.25}.warm-trust-row span{font-size:.76rem}.stone-photo-card,.floating-memory-card{animation:none}}


/* ============================================================
   QRminne editorial warmth refresh
   Inspired by warm, tactile editorial/product storytelling:
   large color fields, organic rhythm, readable contrast.
   ============================================================ */
.site-body{--qr-cream:#f0e2cb;--qr-paper:#f6ead8;--qr-sand:#dbc3a0;--qr-forest:#30483a;--qr-rust:#7c4435;--qr-blue:#405a67;--qr-rose:#9a6963;--qr-ink:#263129;--qr-gold:#bd9157;background:#eadbc4;color:var(--qr-ink)}
.site-body .site-header{background:rgba(237,220,194,.93);border-bottom:1px solid rgba(88,69,48,.12);box-shadow:0 8px 30px rgba(74,52,31,.06)}
.site-body .brand,.site-body .nav nav>a,.site-body .link-btn{color:#26352b}.site-body .brand-mark{color:#7c4435}.site-body .brand small{color:#6c604f}.site-body .nav nav>a:hover,.site-body .link-btn:hover{color:#7c4435}
.site-body .btn,.site-body .btn:visited{background:#2f4938!important;border:2px solid #2f4938!important;color:#fff!important;text-shadow:none!important;box-shadow:0 9px 0 rgba(39,58,45,.12),0 14px 30px rgba(39,58,45,.14)!important}
.site-body .btn:hover,.site-body .btn:focus-visible{background:#213328!important;border-color:#213328!important;color:#fff!important;box-shadow:0 5px 0 rgba(33,51,40,.15),0 18px 34px rgba(33,51,40,.22)!important;transform:translateY(-3px)}
.site-body .btn-ghost,.site-body .btn-ghost:visited{background:#f3dfc4!important;border-color:#8a704f!important;color:#233329!important;box-shadow:none!important}
.site-body .btn-ghost:hover,.site-body .btn-ghost:focus-visible{background:#e5c89f!important;border-color:#5f4b35!important;color:#1c2b22!important}
.site-body .danger,.site-body .danger:visited{background:#813d36!important;border-color:#813d36!important;color:#fff!important}.site-body .danger:hover{background:#632f2a!important;border-color:#632f2a!important;color:#fff!important}
.site-body .text-link,.site-body .text-link:visited{color:#344f3d;font-weight:800}.site-body .text-link:hover{color:#7c4435}
.site-body .warm-hero{padding:105px 0 92px;background:radial-gradient(circle at 8% 10%,rgba(251,231,190,.7),transparent 25%),radial-gradient(circle at 92% 4%,rgba(153,182,158,.52),transparent 24%),linear-gradient(125deg,#e4caa5 0 44%,#b7c5ad 44% 68%,#d89c7d 68% 100%)}
.site-body .warm-hero:before{width:500px;height:500px;background:radial-gradient(circle,rgba(255,245,225,.42),transparent 70%)}.site-body .warm-hero:after{background:radial-gradient(circle,rgba(87,113,93,.22),transparent 68%)}
.site-body .warm-hero-copy{background:rgba(250,238,218,.66);border:1px solid rgba(90,70,50,.12);padding:44px;border-radius:42px 18px 42px 18px;backdrop-filter:blur(5px);box-shadow:0 26px 70px rgba(73,52,33,.11)}
.site-body .warm-hero-copy h1{color:#27352b;font-size:clamp(3.4rem,6.4vw,6.2rem);max-width:850px}.site-body .warm-kicker{color:#7a493a}.site-body .warm-lead{color:#514a40}.site-body .warm-trust-row span{background:#f5e6cf;border-color:#cdb593;color:#4d493f}
.site-body .warm-hero-visual{transform:rotate(1deg)}.site-body .stone-photo-card{background:#d9b58c;border:0;padding:14px;border-radius:22px 48px 22px 48px;box-shadow:16px 18px 0 rgba(91,68,44,.11),0 28px 65px rgba(70,50,31,.15)}.site-body .stone-photo-card img{border-radius:16px 40px 16px 40px}.site-body .stone-photo-card p{color:#342d25}.site-body .floating-memory-card{background:#30483a;color:#f8ead3;border:0;box-shadow:0 25px 55px rgba(43,61,49,.2)}.site-body .floating-memory-card span,.site-body .floating-memory-card small{color:#d5c6ab}.site-body .floating-memory-card i{color:#f2d0a2}
.memory-ribbon{overflow:hidden;background:#283e32;color:#f5e2c5;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(0,0,0,.12)}.memory-ribbon-track{width:max-content;display:flex;align-items:center;white-space:nowrap;will-change:transform;animation:memoryTicker 30s linear infinite}.memory-ribbon-group{display:flex;flex:0 0 auto;align-items:center;gap:28px;padding:15px 28px 15px 0;font-family:Georgia,serif;font-size:.82rem;letter-spacing:.18em;white-space:nowrap}.memory-ribbon i{font-style:normal;color:#d6a45f;flex:0 0 auto}@keyframes memoryTicker{from{transform:translate3d(0,0,0)}to{transform:translate3d(-20%,0,0)}}
.site-body .warm-intro-band{background:#9a6963;color:#fff5e8;border:0}.site-body .warm-intro-band p{color:#fff5e8;font-family:Georgia,serif;font-size:clamp(1.2rem,2.2vw,1.75rem);max-width:900px}
.site-body .warm-section{padding:100px 0;border:0}.site-body .warm-section:before{display:none}.site-body .warm-section-head h2{font-size:clamp(2.7rem,5vw,4.7rem);line-height:.98}.site-body .warm-section-head p{font-size:1.06rem}
.site-body .warm-journey-section{background:#7c4435;color:#fff3e3}.site-body .warm-journey-section .warm-kicker{color:#f4c98d}.site-body .warm-journey-section .warm-section-head h2,.site-body .warm-journey-section .warm-section-head p{color:#fff3e3}.site-body .warm-journey-section .warm-steps article{background:#efd7b6;border:0;color:#29352c;box-shadow:10px 12px 0 rgba(53,31,25,.12);border-radius:18px 42px 18px 42px}.site-body .warm-journey-section .warm-steps article:nth-child(2){background:#b9c9ae}.site-body .warm-journey-section .warm-steps article:nth-child(3){background:#d9afa5}.site-body .warm-journey-section .warm-steps article:nth-child(4){background:#a9c1cc}.site-body .warm-journey-section .warm-steps article p{color:#3f493f}.site-body .warm-journey-section .warm-steps article>span{background:#2f4938;color:#fff}
.site-body .stone-story-section{background:#d8c09b;color:#2b332d}.site-body .stone-story-copy>p,.site-body .stone-story-copy li{color:#4a4a40}.site-body .stone-story-image img{border:10px solid #f0dfc3;border-radius:12px 48px 12px 48px;box-shadow:18px 20px 0 #a98960}.site-body .stone-story-image small{color:#5c5144}.site-body .warm-checks li:before{background:#30483a}
.site-body .warm-memory-features{background:#405a67;color:#f8eddb}.site-body .warm-memory-features .warm-kicker{color:#efc17f}.site-body .warm-memory-features .warm-section-head h2{color:#fff4e6}.site-body .warm-feature-grid article{background:#ecd9b8;border:0;color:#2b332d;box-shadow:9px 11px 0 rgba(30,48,57,.16);border-radius:40px 16px 40px 16px}.site-body .warm-feature-grid article:nth-child(2){background:#b9c9ae}.site-body .warm-feature-grid article:nth-child(3){background:#d9afa5}.site-body .warm-feature-grid article:nth-child(4){background:#c9b7d3}.site-body .warm-feature-grid p{color:#485047}.site-body .feature-symbol{background:#30483a;color:#f5dfbc;border-radius:50%}
.site-body .theme-teaser-section{background:#d9afa5}.site-body .theme-teaser-section .warm-kicker{color:#6f3e36}.site-body .theme-teaser-section .warm-section-head h2{color:#3d302f}.site-body .theme-teaser-section .warm-section-head p{color:#5a4745}.site-body .theme-teaser-row i{border-width:8px;border-color:#f5e4ce;box-shadow:10px 13px 0 rgba(103,65,60,.12)}
.site-body .warm-pricing-section{background:#60755e;color:#fff5e8}.site-body .warm-pricing-section .warm-kicker{color:#f0c883}.site-body .warm-pricing-section .warm-section-head h2,.site-body .warm-pricing-section .warm-section-head p,.site-body .pricing-footnote{color:#fff5e8}.site-body .warm-plan{background:#f1ddbd;border:0;color:#29342b;box-shadow:10px 12px 0 rgba(34,50,39,.15);border-radius:22px 44px 22px 44px}.site-body .warm-plan:nth-child(2){background:#d8b2a8}.site-body .warm-plan:nth-child(3){background:#bdd0d6}.site-body .warm-plan .plan-name,.site-body .warm-plan .annual-bill,.site-body .warm-plan>p,.site-body .warm-plan li{color:#42483f}.site-body .warm-plan.featured{border:4px solid #f0c883;transform:translateY(-12px) rotate(-.4deg)}.site-body .warm-plan:before{height:8px}.site-body .plan-ribbon{background:#2f4938;color:#fff}
.site-body .warm-cta{background:radial-gradient(circle at 20% 10%,rgba(248,212,158,.18),transparent 25%),linear-gradient(125deg,#2f4938,#7c4435);color:#fff4e4}.site-body .warm-cta h2,.site-body .warm-cta p{color:#fff4e4}.site-body .warm-cta .btn,.site-body .warm-cta .btn:visited{background:#f3dfc4!important;border-color:#f3dfc4!important;color:#233329!important}.site-body .warm-cta .btn:hover{background:#e5c89f!important;border-color:#e5c89f!important;color:#1c2b22!important}
.site-body .warm-footer{background:#263a30;color:#eee0ca}.site-body .warm-footer a{color:#f4e6d2}.site-body .footer-brand p,.site-body .footer-brand>small{color:#d2c3ad}
/* Interior public pages: no white corridor */
.site-body .warm-page-head{padding:100px 0 70px;background:#30483a;color:#fff1dd}.site-body .warm-page-head h1,.site-body .warm-page-head p{color:#fff1dd}.site-body .warm-page-head .warm-kicker{color:#f0c47f}.site-body .warm-page-head-rust{background:linear-gradient(125deg,#7c4435,#9a6963)}.site-body .warm-page-head-blue{background:linear-gradient(125deg,#405a67,#567683)}.site-body .warm-page-head-rose{background:linear-gradient(125deg,#8c5d58,#ad7d72)}.site-body .warm-page-head-forest{background:linear-gradient(125deg,#30483a,#526a55)}
.site-body .pricing-page-section{background:#d8c09b}.site-body .pricing-page-section .warm-plan-grid .warm-plan{box-shadow:10px 12px 0 rgba(78,58,37,.11)}.site-body .pricing-stone-note{background:#b9c9ae;border:0;box-shadow:12px 14px 0 rgba(62,77,58,.12);color:#29342b}.site-body .pricing-stone-note p,.site-body .pricing-stone-note small{color:#485047}.site-body .promo-explainer{background:#d9afa5;border:0;color:#453432;box-shadow:8px 9px 0 rgba(95,61,56,.1)}.site-body .promo-explainer p{color:#5e4744}
.site-body .how-flow{max-width:1040px}.site-body .how-flow article{margin:22px 0;padding:34px 38px;border:0;border-radius:14px 42px 14px 42px;background:#ead7b8;box-shadow:9px 11px 0 rgba(82,62,40,.09)}.site-body .how-flow article:nth-child(even){background:#b9c9ae}.site-body .how-flow article:nth-child(3){background:#d9afa5}.site-body .how-flow article:nth-child(4){background:#bdd0d6}.site-body .how-flow article:before{display:none!important}.site-body .how-flow p{color:#454a42}.site-body .how-flow article>span{color:#7c4435}.site-body .how-stone-step img{border:8px solid #f2dec2;box-shadow:14px 16px 0 rgba(106,73,61,.12)}
.site-body .warm-faq details{background:#efd9b8;border:0;box-shadow:7px 8px 0 rgba(93,68,40,.07)}.site-body .warm-faq details:nth-child(even){background:#b9c9ae}.site-body .warm-faq details:nth-child(3n){background:#d9afa5}.site-body .warm-faq summary{color:#2e352e}.site-body .warm-faq p{color:#48483f}
.site-body .contact-section{background:#d8c09b}.site-body .contact-note{background:#30483a;color:#fff0db;border-radius:14px 44px 14px 44px;box-shadow:12px 14px 0 rgba(52,67,54,.12)}.site-body .contact-note p{color:#ddcfba}.site-body .warm-form-card{background:#b9c9ae;border:0;box-shadow:10px 12px 0 rgba(67,80,64,.1)}
.site-body .warm-legal-shell .warm-legal-copy{background:#ead7b8;border:0;box-shadow:9px 11px 0 rgba(90,67,42,.08);color:#343831}.site-body .warm-cookie-settings{background:#b9c9ae;border:0}.site-body .legal-review-note{color:#5a5044}
/* Login / registration */
.site-body .warm-auth-page{background:linear-gradient(120deg,#d8c09b 0 52%,#b9c9ae 52% 100%)}.site-body .warm-auth-story{background:#30483a;border-radius:14px 50px 14px 50px;box-shadow:14px 16px 0 rgba(47,72,58,.14)}.site-body .warm-auth-card{background:#f0dfc4;border:0;border-radius:42px 14px 42px 14px;box-shadow:12px 14px 0 rgba(98,70,41,.1)}.site-body .warm-auth-card input{background:#f8ecd9;border-color:#9f8a6e;color:#263129}.site-body .warm-auth-card .check{color:#393d36}.site-body .warm-auth-stone{background:#d8b2a8;border:0}.site-body .warm-auth-link a,.site-body .auth-register-link a{color:#344f3d;font-weight:800}
.site-body .warm-registration{background:linear-gradient(130deg,#d8c09b,#eddcc4 43%,#b9c9ae 43% 70%,#d9afa5 70%)}.site-body .registration-hero{background:rgba(244,226,200,.75);padding:38px;border-radius:14px 44px 14px 44px;backdrop-filter:blur(7px)}.site-body .register-section{background:#eddbbd;border:0;box-shadow:9px 11px 0 rgba(91,68,40,.08);border-radius:14px 38px 14px 38px}.site-body .register-section:nth-child(2){background:#b9c9ae}.site-body .register-section:nth-child(3){background:#d9afa5}.site-body .registration-plan{background:#f4e5cf;border-color:#8d785e;color:#29342b}.site-body .registration-plan.recommended{background:#b9c9ae;border-color:#536c57}.site-body .registration-plan .plan-copy small,.site-body .registration-plan .plan-prices small{color:#565b51}.site-body .promo-box{background:#d8b2a8;border:0}.site-body .registration-summary{background:#30483a;color:#fff0dc;border:0;box-shadow:12px 14px 0 rgba(47,72,58,.13)}.site-body .registration-summary h3,.site-body .registration-summary .summary-monthly strong,.site-body .registration-summary .summary-total strong{color:#fff1dc}.site-body .registration-summary .eyebrow,.site-body .registration-summary .summary-price-row,.site-body .registration-summary .summary-monthly span,.site-body .registration-summary .summary-help,.site-body .registration-summary li{color:#e0d2bd}.site-body .registration-summary a{color:#ffe0a9}.site-body .summary-stone img{border-radius:12px 36px 12px 36px}.site-body .summary-badge{background:#f0c47f;color:#26352b}.site-body .register-submit-card{background:#405a67;color:#fff3df;border:0}.site-body .register-submit-card span{color:#dfd9cf}
/* Universal readable form controls */
.site-body input,.site-body textarea,.site-body select{background:#f8ead5;color:#263129;border:1px solid #8e7b63}.site-body input::placeholder,.site-body textarea::placeholder{color:#756b5e}.site-body input:focus,.site-body textarea:focus,.site-body select:focus{border-color:#30483a;box-shadow:0 0 0 4px rgba(48,72,58,.18)}
.site-body label,.site-body .form label{color:#30362f}.site-body .muted{color:#655c50}.site-body .registration-summary .muted,.site-body .warm-journey-section .muted,.site-body .warm-pricing-section .muted{color:inherit}
/* Demo controls also stay legible */
.demo-tool-btn{background:#f2dfc4!important;color:#24342a!important;border-color:#806b4f!important}.demo-tool-btn:hover{background:#dfc49e!important;color:#1f2d25!important}.demo-notice a{color:#fff!important;background:#30483a!important;padding:7px 12px;border-radius:999px}.demo-theme-card{color:#2c332d;background:#f1dfc4;border-color:#a28b6f}.demo-theme-card:hover{background:#e7cfac;color:#253128}
@media(prefers-reduced-motion:no-preference){.site-body [data-reveal]{opacity:0;transform:translateY(45px) scale(.91) rotate(.3deg);transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .92s cubic-bezier(.22,1,.36,1)}.site-body [data-reveal="fade"]{transform:translateY(34px)}.site-body [data-reveal].is-visible{opacity:1;transform:none}.site-body .stone-photo-card{animation:editorialFloat 7.5s ease-in-out infinite}.site-body .floating-memory-card{animation:editorialFloat 8.4s ease-in-out 1.1s infinite}.site-body .theme-teaser-row i:nth-child(odd){animation:tinySway 8s ease-in-out infinite}.site-body .theme-teaser-row i:nth-child(even){animation:tinySway 8s ease-in-out 1.4s infinite}}@keyframes editorialFloat{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -10px;rotate:.6deg}}@keyframes tinySway{0%,100%{translate:0 0}50%{translate:0 -5px}}
@media(max-width:1000px){.site-body .warm-hero-copy{padding:30px}.site-body .warm-journey-section .warm-steps article,.site-body .warm-feature-grid article,.site-body .warm-plan{box-shadow:6px 7px 0 rgba(50,45,38,.08)}.site-body .warm-plan.featured{transform:none}.site-body .warm-plan.featured:hover{transform:none}}
@media(max-width:680px){.site-body .warm-section{padding:72px 0}.site-body .warm-hero{padding:58px 0 66px}.site-body .warm-hero-copy{padding:24px;border-radius:28px 12px}.site-body .warm-hero-copy h1{font-size:clamp(2.65rem,13vw,4rem)}.site-body .warm-auth-page{background:linear-gradient(180deg,#d8c09b,#b9c9ae)}.site-body .warm-registration{background:linear-gradient(180deg,#d8c09b,#eddcc4 48%,#b9c9ae 72%,#d9afa5)}.memory-ribbon-track{animation-duration:24s}.site-body .how-flow article{padding:26px 22px}.site-body .warm-page-head{padding:72px 0 52px}}
@media(prefers-reduced-motion:reduce){.memory-ribbon-track{animation:none}.site-body .stone-photo-card,.site-body .floating-memory-card,.site-body .theme-teaser-row i{animation:none!important}}


/* Step card cleanup: consistent hearts + clean number badges */
.site-body .warm-journey-section .warm-steps article{padding-top:34px!important;overflow:hidden}
.site-body .warm-journey-section .warm-steps article>span:first-child{
  position:absolute!important;top:18px!important;right:18px!important;left:auto!important;
  width:34px!important;height:34px!important;display:grid!important;place-items:center!important;
  padding:0!important;margin:0!important;border-radius:50%!important;
  background:#2f4938!important;color:#fff!important;border:2px solid rgba(255,255,255,.55)!important;
  box-shadow:0 5px 14px rgba(39,59,47,.18)!important;
  font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:.82rem!important;font-weight:800!important;line-height:1!important;
}
.site-body .warm-journey-section .step-icon{
  width:58px!important;height:58px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;margin:0 0 22px!important;
  background:#fff0df!important;color:#8b4d49!important;
  border:1px solid rgba(112,69,57,.13)!important;
  box-shadow:0 8px 20px rgba(85,55,43,.1)!important;
  font-family:Georgia,"Times New Roman",serif!important;font-size:2rem!important;line-height:1!important;
}
.site-body .warm-journey-section .warm-steps article:nth-child(2) .step-icon{background:#f5ead9!important;color:#7d5360!important}
.site-body .warm-journey-section .warm-steps article:nth-child(3) .step-icon{background:#f9e9e5!important;color:#8a4d50!important}
.site-body .warm-journey-section .warm-steps article:nth-child(4) .step-icon{background:#eef3ee!important;color:#4f6b5a!important}
.site-body .warm-cta .warm-kicker{color:#ffe0aa!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important}
.site-body .warm-cta .warm-kicker:before{color:#ffe0aa!important}
@media(max-width:620px){.site-body .warm-journey-section .warm-steps article>span:first-child{top:14px!important;right:14px!important;width:32px!important;height:32px!important}.site-body .warm-journey-section .step-icon{width:54px!important;height:54px!important}}


/* Security/legal UI */
.bot-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.warm-legal-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.warm-legal-copy{max-width:900px;margin:auto}.legal-rich h2{font-family:Georgia,serif;font-size:1.75rem;font-weight:400;margin:42px 0 12px;color:#3d433a}.legal-rich p,.legal-rich li{color:#554f47;line-height:1.8}.legal-rich ul{padding-left:22px}.legal-rich code{background:#efe7da;padding:2px 6px;border-radius:6px}.warm-cookie-settings{max-width:900px;margin:0 auto;padding:26px;border-radius:24px;background:#e8eee4;border:1px solid #d5dfcf}.warm-cookie-settings h2{font-family:Georgia,serif;font-weight:400}.legal-head{background:linear-gradient(135deg,#e9dfcf,#d9e2d2)}

/* ============================================================
   Memorial feature controls, "Jag minns" and Life Timeline
   Works with every memorial theme through --m-* theme variables.
   ============================================================ */
.feature-toggle-panel{scroll-margin-top:95px;margin:18px 0 24px;padding:24px;border-radius:22px;background:linear-gradient(135deg,#f7f0e6,#eef2eb);border:1px solid #ded7cb}.feature-toggle-head h3{font-family:Georgia,serif;font-size:1.7rem;font-weight:400;margin:5px 0}.feature-toggle-head p,.feature-toggle-panel>p{color:#68645d;margin:5px 0 18px}.feature-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feature-switch{position:relative;display:grid!important;grid-template-columns:auto 1fr;grid-template-areas:"check icon" "check title" "check copy";column-gap:13px;align-items:center;padding:17px 18px;border:1px solid #ddd3c6;border-radius:17px;background:#fffdf9;cursor:pointer;transition:.18s ease;font-weight:400!important}.feature-switch:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(69,55,39,.07);border-color:#b7aa99}.feature-switch input{grid-area:check;width:22px;height:22px;accent-color:#4d6752;margin:0}.feature-switch>span{grid-area:icon;font-size:1.2rem;color:#6c806d}.feature-switch>b{grid-area:title;font-size:.98rem;color:#343a34}.feature-switch>small{grid-area:copy;color:#777168;font-size:.78rem;line-height:1.35}.feature-switch:has(input:checked){background:#edf2e9;border-color:#aab9a7}.feature-switch:has(input:disabled){opacity:.5;cursor:not-allowed}.feature-mode{margin-top:14px;max-width:390px}.timeline-admin-card{scroll-margin-top:95px}.timeline-admin-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}.timeline-admin-head h2{margin:4px 0}.timeline-admin-head p{max-width:700px;color:var(--muted)}.timeline-add-form{margin-bottom:20px}.timeline-admin-list{display:grid;gap:13px}.timeline-admin-event{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.timeline-admin-event>.form{margin-bottom:8px}

/* Public Life Timeline */
.life-timeline-section{position:relative}.life-timeline{position:relative;max-width:900px;margin:35px auto 0}.life-timeline:before{content:"";position:absolute;left:118px;top:12px;bottom:12px;width:2px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--m-accent) 55%,transparent) 7%,color-mix(in srgb,var(--m-accent) 55%,transparent) 93%,transparent)}.life-timeline-event{position:relative;display:grid;grid-template-columns:90px 34px 1fr;gap:11px;align-items:start;margin:0 0 28px}.timeline-date{text-align:right;padding-top:14px;font-family:Georgia,serif;font-size:1.05rem;font-weight:600;color:var(--m-accent)}.timeline-marker{position:relative;height:48px;display:grid;place-items:center}.timeline-marker i{display:block;width:16px;height:16px;border-radius:50%;background:var(--m-accent);border:4px solid var(--m-bg);box-shadow:0 0 0 2px color-mix(in srgb,var(--m-accent) 55%,transparent)}.timeline-card{padding:20px 22px;border-radius:20px;background:color-mix(in srgb,var(--m-paper) 94%,var(--m-accent) 6%);border:1px solid color-mix(in srgb,var(--m-accent) 18%,transparent);box-shadow:0 10px 30px rgba(31,35,31,.05)}.timeline-card h3{font-family:Georgia,serif;font-size:1.35rem;font-weight:500;margin:0 0 4px}.timeline-place{display:inline-block;margin-bottom:8px;color:var(--m-accent);font-size:.82rem;font-weight:700}.timeline-card p{margin:5px 0 0;opacity:.84}

/* "Jag minns" ticker */
.remember-section{position:relative;overflow:hidden;padding-left:0!important;padding-right:0!important;max-width:none!important}.remember-heading{width:min(900px,calc(100% - 36px));margin:0 auto 28px;text-align:center}.remember-heading p{opacity:.75}.remember-ticker{position:relative;width:100%;overflow:hidden;padding:14px 0;border-top:1px solid color-mix(in srgb,var(--m-accent) 22%,transparent);border-bottom:1px solid color-mix(in srgb,var(--m-accent) 22%,transparent);background:color-mix(in srgb,var(--m-accent) 10%,var(--m-bg));mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.remember-ticker-track{display:flex;width:max-content;will-change:transform;animation:rememberLoop 52s linear infinite}.remember-ticker-group{display:flex;align-items:center;gap:18px;padding-right:18px;flex-shrink:0}.remember-item{display:inline-flex;align-items:baseline;gap:5px;white-space:nowrap;padding:11px 17px;border-radius:999px;background:color-mix(in srgb,var(--m-paper) 88%,transparent);border:1px solid color-mix(in srgb,var(--m-accent) 18%,transparent);box-shadow:0 7px 20px rgba(20,24,20,.045);font-family:Georgia,serif;font-size:1.02rem}.remember-item b{color:var(--m-accent);font-size:.77rem;text-transform:uppercase;letter-spacing:.08em;font-family:ui-sans-serif,-apple-system,"Segoe UI",sans-serif}.remember-item em{font-style:normal;font-size:.85rem;opacity:.68}.remember-form-box{width:min(680px,calc(100% - 36px));margin:24px auto 0}.remember-input-wrap{display:flex;align-items:center;border:1px solid color-mix(in srgb,var(--m-accent) 25%,#ccc);border-radius:11px;background:var(--m-paper);overflow:hidden}.remember-input-wrap>span{padding:10px 0 10px 12px;white-space:nowrap;color:var(--m-accent);font-family:Georgia,serif}.remember-input-wrap input{border:0!important;box-shadow:none!important;padding-left:7px!important;background:transparent!important}.char-note{font-size:.75rem;opacity:.62;line-height:1.45}.remember-empty{text-align:center}.theme-dark .remember-ticker,.theme-stars .remember-ticker{background:rgba(255,255,255,.045)}.theme-dark .remember-item,.theme-stars .remember-item{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.1)}.theme-little-star .remember-ticker{background:linear-gradient(90deg,rgba(155,136,218,.12),rgba(184,216,239,.2),rgba(233,178,197,.15))}.theme-rainbow .remember-ticker{background:linear-gradient(90deg,rgba(255,216,203,.36),rgba(255,230,168,.36),rgba(217,237,191,.36),rgba(201,232,245,.36),rgba(221,206,244,.36))}.theme-ocean .remember-ticker{background:linear-gradient(90deg,rgba(128,193,211,.13),rgba(215,239,244,.35),rgba(128,193,211,.13))}.theme-sunset .remember-ticker{background:linear-gradient(90deg,rgba(218,143,91,.12),rgba(249,210,160,.34),rgba(183,92,69,.13))}.theme-minimal .remember-item,.theme-minimal .timeline-card{border-radius:0;box-shadow:none;border-color:#111}.theme-minimal .remember-ticker{border-color:#111;background:#f7f7f7}.theme-floral .timeline-marker i,.theme-little-star .timeline-marker i{box-shadow:0 0 0 2px color-mix(in srgb,var(--m-accent) 45%,transparent),0 0 22px color-mix(in srgb,var(--m-accent) 25%,transparent)}
@keyframes rememberLoop{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.remember-ticker-track{animation:none}.remember-ticker{overflow:auto;mask-image:none;-webkit-mask-image:none}}
@media(max-width:760px){.feature-toggle-grid{grid-template-columns:1fr}.timeline-admin-head{flex-direction:column}.life-timeline:before{left:16px}.life-timeline-event{grid-template-columns:32px 1fr;gap:8px}.timeline-date{grid-column:2;text-align:left;padding:0;font-size:.88rem}.timeline-marker{grid-column:1;grid-row:1/3}.timeline-card{grid-column:2;padding:17px}.remember-heading{margin-bottom:20px}.remember-item{font-size:.9rem}.remember-ticker-track{animation-duration:42s}.remember-input-wrap{display:block}.remember-input-wrap>span{display:block;padding-bottom:0}.remember-input-wrap input{padding-left:12px!important}}
.demo-feature-lab{margin-top:14px;padding:14px 16px;border-radius:16px;background:#efe3d2;border:1px solid #d9c9b5;color:#433d36}.demo-feature-lab>strong{display:block;font-family:Georgia,serif;font-size:1.05rem}.demo-feature-lab>span{display:block;font-size:.75rem;color:#756b60;margin:2px 0 10px}.demo-feature-lab>div{display:flex;gap:8px 14px;flex-wrap:wrap}.demo-feature-lab label{display:flex;align-items:center;gap:5px;font-size:.74rem;font-weight:700;cursor:pointer}.demo-feature-lab input{width:auto;accent-color:#526c57}.demo-page section[hidden]{display:none!important}

/* Candle count clarity in real pages and demo */
.candle-lifecycle-summary{display:block;margin-top:8px;color:#b9ad9d;font-size:.78rem;font-style:normal;letter-spacing:.015em}.candle-lifecycle-summary b{color:#e4d4b7;font-weight:750}.demo-candle-age{font-size:.66rem;font-style:normal;color:#8f8578;margin-top:2px}.demo-memorial-body .recent-candles{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));max-width:980px}.demo-memorial-body .burned-candles{margin-top:32px}.demo-memorial-body .burned-candle-list{max-height:260px;overflow:auto;padding-right:8px;scrollbar-width:thin}.theme-little-star .candle-lifecycle-summary,.theme-rainbow .candle-lifecycle-summary,.theme-ocean .candle-lifecycle-summary{color:#c9c2b6}

/* === Dual mode: memorial + wedding === */
.service-choice-hero{min-height:calc(100vh - 72px);padding:70px 0 86px;background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.76),transparent 28%),linear-gradient(135deg,#eadac0 0 48%,#d9c7d1 48% 100%);position:relative;overflow:hidden}.choice-intro{text-align:center;max-width:900px}.choice-intro h1{font-family:Georgia,serif;font-size:clamp(3rem,6vw,5.7rem);font-weight:400;line-height:.98;letter-spacing:-.045em;margin:12px auto 18px;color:#3f3932}.choice-intro p{font-size:1.15rem;color:#655e56;max-width:720px;margin:auto}.service-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:52px}.service-choice-card{min-height:440px;border-radius:38px;padding:38px;display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden;box-shadow:0 24px 60px rgba(63,48,39,.13);transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s ease;text-decoration:none!important}.service-choice-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 34px 75px rgba(63,48,39,.19)}.memorial-choice{background:linear-gradient(150deg,#425344,#68745d 65%,#85765c);color:#fff7e9}.wedding-choice{background:linear-gradient(150deg,#9f6270,#d49a9b 56%,#e6c29d);color:#fff8ef}.service-choice-card h2{font-family:Georgia,serif;font-size:clamp(2.4rem,4vw,4rem);line-height:1;margin:10px 0 18px;color:inherit;font-weight:400}.service-choice-card p{max-width:560px;color:inherit;opacity:.86;font-size:1.02rem;line-height:1.72}.service-choice-card>b{margin-top:auto;color:inherit;font-size:1rem}.choice-label{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:850;opacity:.78}.choice-art{height:116px;display:flex;align-items:center;gap:18px;font-size:3.2rem}.choice-stone,.choice-card-mini{display:grid;place-items:center;width:80px;height:80px;border-radius:24px;background:rgba(255,255,255,.16);font-size:1.2rem;font-style:normal;box-shadow:inset 0 1px rgba(255,255,255,.22)}.choice-candle,.choice-rings{font-size:4.5rem}.choice-bottom{padding:25px 0;background:#26372d;color:#f2eadf;text-align:center}.choice-bottom p{margin:0}.wedding-landing-hero{padding:90px 0 80px;background:radial-gradient(circle at 80% 0,rgba(255,255,255,.72),transparent 31%),linear-gradient(135deg,#f5dfd7,#e9d5dc 47%,#ddd7be)}.wedding-landing-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.wedding-landing-grid h1{font-family:Georgia,serif;font-size:clamp(3.2rem,6vw,5.8rem);line-height:.96;font-weight:400;color:#4d3740;letter-spacing:-.045em;margin:12px 0 22px}.wedding-landing-grid>div:first-child>p{font-size:1.15rem;line-height:1.75;color:#705b61;max-width:690px}.wedding-perks{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.wedding-perks span{background:rgba(255,250,244,.72);border:1px solid rgba(127,94,98,.2);border-radius:999px;padding:8px 13px;color:#604950;font-size:.84rem;font-weight:750}.btn-wedding{background:linear-gradient(135deg,#a45d70,#754454)!important;border-color:#754454!important}.invitation-fan{height:560px;position:relative;perspective:1000px}.invite-sample{position:absolute;width:285px;height:410px;border-radius:20px;padding:38px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 28px 60px rgba(78,51,56,.18);border:1px solid rgba(255,255,255,.55)}.invite-sample small{letter-spacing:.18em;font-size:.62rem;font-weight:850}.invite-sample b{font-family:Georgia,serif;font-size:2.25rem;line-height:1.08;margin:26px 0}.invite-sample span{font-size:.75rem;letter-spacing:.08em}.invite-sample i{display:grid;place-items:center;width:86px;height:86px;margin-top:34px;background:#fff;color:#222;font-style:normal;font-weight:900;letter-spacing:-.06em}.invite-sample.botanical{left:40px;top:70px;background:#e5ecdc;color:#3b543e;transform:rotate(-9deg)}.invite-sample.romantic{left:190px;top:15px;background:#f1d5d8;color:#713e4c;z-index:2;transform:rotate(3deg)}.invite-sample.midnight{right:10px;top:105px;background:#202b43;color:#f5e7c7;transform:rotate(10deg)}.wedding-band{background:#704454;color:#fff5ea;overflow:hidden}.wedding-band .container{min-height:72px;display:flex;align-items:center;justify-content:space-around;gap:22px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.wedding-band i{font-style:normal;color:#e5baa7}.wedding-how{background:#f3e7df}.wedding-feature-split{padding:90px 0;background:linear-gradient(135deg,#41574c,#263c34);color:#f8efe4}.wedding-feature-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.wedding-feature-grid h2{font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,4.6rem);line-height:1;font-weight:400;margin:12px 0;color:#fff8ee}.wedding-feature-grid .warm-checks li{color:#ebe3d9}.wedding-feature-grid .warm-checks li:before{background:#d6a18e}.wedding-countdown-demo{background:#f1d8d7;color:#6a4350;border-radius:45% 55% 49% 51%/38% 44% 56% 62%;min-height:430px;display:grid;place-items:center;align-content:center;text-align:center;padding:45px;box-shadow:0 25px 60px rgba(0,0,0,.14)}.wedding-countdown-demo>small{letter-spacing:.18em;font-weight:850}.wedding-countdown-demo>div b{font-family:Georgia,serif;font-size:7rem;font-weight:400;display:block;line-height:.9}.wedding-countdown-demo>div span{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem}.invitation-style-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:32px 0}.invitation-style-grid article{min-height:230px;border-radius:22px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 15px 35px rgba(60,45,42,.08)}.invitation-style-grid b{font-family:Georgia,serif;font-size:1.5rem}.invitation-style-grid span{font-size:.78rem}.invitation-style-grid .botanical{background:#dfe8d7;color:#405743}.invitation-style-grid .romantic{background:#efd3d4;color:#713e4c}.invitation-style-grid .modern{background:#ede5d5;color:#273b34;border-left:8px solid #345c4d}.invitation-style-grid .midnight{background:#202c44;color:#f1dfb7}.invitation-style-grid.compact article{min-height:140px}.pricing-wedding-note{margin-top:68px;padding:34px;border-radius:34px;background:linear-gradient(135deg,#f1d9dd,#e4eadc);display:grid;grid-template-columns:1.2fr 1fr;gap:38px;align-items:center}.summary-invitation{display:flex;justify-content:center;align-items:center;gap:0;margin:0 0 24px;height:180px}.mini-invite{width:125px;height:168px;padding:15px 10px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 15px 28px rgba(68,45,50,.15);transform:rotate(-7deg)}.mini-invite+ .mini-invite{margin-left:-18px;transform:rotate(7deg)}.mini-invite.botanical{background:#dce7d5;color:#405344}.mini-invite.romantic{background:#eed2d5;color:#6c3c49}.mini-invite small{font-size:.48rem;letter-spacing:.1em}.mini-invite b{font-family:Georgia,serif;margin:14px 0}.mini-invite i{display:grid;place-items:center;width:46px;height:46px;background:#fff;color:#222;font-style:normal;font-size:.6rem;font-weight:900}.wedding-admin-head{background:linear-gradient(135deg,#f2dcda,#e7e2cf)}.wedding-main-preview{border-radius:26px;width:min(480px,100%);height:auto}.rsvp-admin-list{display:grid;gap:11px}.rsvp-admin-list article{display:flex;justify-content:space-between;gap:20px;padding:16px 18px;border-radius:16px;background:#fffaf5;border:1px solid #e6d8ca}.rsvp-admin-list article p{margin:4px 0}.invitation-admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.invitation-admin-grid article{padding:18px;border:1px solid #e6ddd2;border-radius:20px;background:#fffaf5}.invitation-admin-grid img{width:100%;aspect-ratio:1240/1748;object-fit:cover;border-radius:14px;box-shadow:0 12px 30px rgba(55,44,38,.12)}.invitation-admin-grid h3{margin:14px 0 4px}.invitation-admin-grid p{color:#746b62}.dashboard-create-actions{display:flex;gap:9px;flex-wrap:wrap}
/* Wedding theme picker — actual wedding preview rather than memorial preview */
.wedding-theme-picker{margin-top:14px}.wedding-theme-picker-layout{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(420px,1.18fr);gap:24px;align-items:start}.wedding-theme-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:740px;overflow:auto;padding-right:4px}.wedding-theme-option{position:relative;display:grid;grid-template-columns:92px 1fr;gap:12px;align-items:center;padding:11px;border:1px solid #ded5c8;border-radius:18px;background:#fffdf9;cursor:pointer;transition:.2s}.wedding-theme-option:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(63,49,37,.08)}.wedding-theme-option.selected{border-color:#6e7d69;box-shadow:0 0 0 3px rgba(110,125,105,.13)}.wedding-theme-option>input{position:absolute;opacity:0;pointer-events:none}.wedding-theme-option .theme-check{position:absolute;right:8px;top:8px;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#667561;color:#fff;font-size:.7rem;opacity:0}.wedding-theme-option.selected .theme-check{opacity:1}.wedding-theme-option-copy{display:grid;gap:3px}.wedding-theme-option-copy strong{padding-right:20px}.wedding-theme-option-copy small{font-size:.72rem;line-height:1.3;color:#736a61}.wedding-theme-mood{font-style:normal;text-transform:uppercase;letter-spacing:.08em;font-size:.55rem;font-weight:850;color:#956a54}.wedding-theme-thumb{height:105px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.05)}.wedding-theme-thumb b{font-family:Georgia,serif;font-size:1.12rem;line-height:1;z-index:1}.wedding-theme-thumb em{font-size:.48rem;letter-spacing:.09em;font-style:normal;margin-top:7px;z-index:1}.wedding-theme-thumb>span{margin-top:7px;font-size:.44rem;font-weight:850;border:1px solid currentColor;padding:2px 6px;border-radius:999px;z-index:1}.wedding-theme-thumb .wt-flower{position:absolute;left:7px;top:4px;font-style:normal;opacity:.42}
.wedding-theme-thumb.wedding-theme-garden{background:linear-gradient(145deg,#eef1e3,#fffdf7);color:#33402c}.wedding-theme-thumb.wedding-theme-editorial{background:linear-gradient(90deg,#15130f 0 20%,#f2ede0 20%);color:#15130f}.wedding-theme-thumb.wedding-theme-midnight{background:radial-gradient(circle at 80% 20%,#cda458 0 2px,transparent 3px),#0c1830;color:#f3e6c8}
.wedding-theme-showcase{--w-bg:#f6f3e9;--w-paper:#fffdf7;--w-text:#33402c;--w-accent:#5c7a4f;--w-accent2:#b99a5f;--w-dark:#3a4a30;position:sticky;top:95px;overflow:hidden;border-radius:28px;background:var(--w-bg);color:var(--w-text);box-shadow:0 22px 55px rgba(58,44,35,.11);border:1px solid rgba(70,60,50,.08)}.wedding-preview-hero{display:grid;grid-template-columns:.88fr 1.12fr;min-height:310px;align-items:stretch}.wedding-preview-photo{display:flex;align-items:center;justify-content:center;gap:8px;font-family:Georgia,serif;font-size:2.7rem;background:color-mix(in srgb,var(--w-accent) 14%,var(--w-paper));margin:15px;border-radius:10px;overflow:hidden}.wedding-preview-photo img{width:100%;height:100%;object-fit:cover}.wedding-preview-photo i{font-size:1.1rem;font-style:normal;color:var(--w-accent)}.wedding-preview-copy{display:flex;flex-direction:column;justify-content:center;padding:28px 24px 28px 8px}.wedding-preview-copy>small{letter-spacing:.13em;font-size:.57rem;font-weight:850;color:var(--w-accent)}.wedding-preview-copy strong{font-family:Georgia,serif;font-size:2.5rem;line-height:.95;margin:13px 0}.wedding-preview-copy p{font-size:.7rem;opacity:.72}.wedding-preview-copy button{width:max-content;border:0;border-radius:999px;background:var(--w-dark);color:#fff;padding:7px 13px;font-size:.62rem;font-weight:800}.wedding-theme-showcase .theme-showcase-label{padding:10px 16px;border-top:1px solid rgba(0,0,0,.08);font-size:.65rem}.wedding-theme-showcase-large{position:relative;top:auto;width:min(1040px,90vw);min-height:720px}.wedding-theme-showcase-large .wedding-preview-hero{min-height:470px}.wedding-theme-showcase-large .wedding-preview-copy strong{font-size:4.4rem}.wedding-theme-showcase-large .wedding-preview-photo{font-size:4rem}
.wedding-theme-showcase.wedding-theme-editorial{--w-bg:#f2ede0;--w-paper:#faf6ec;--w-text:#17140f;--w-accent:#c1502f;--w-accent2:#17140f;--w-dark:#15130f;border-radius:6px}.wedding-theme-showcase.wedding-theme-midnight{--w-bg:#0c1830;--w-paper:#122544;--w-text:#f3e6c8;--w-accent:#cda458;--w-accent2:#e8cf94;--w-dark:#081224}

/* Wedding demo chooser */
.wedding-demo-controls{background:linear-gradient(135deg,#fbf2e6,#eef0e5)}.wedding-demo-theme-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px}.wedding-demo-theme-card{display:grid;grid-template-columns:90px 1fr;gap:10px;align-items:center;border:1px solid #ded3c5;background:#fffaf3;border-radius:18px;padding:10px;text-align:left;color:#433c36;cursor:pointer;transition:.2s}.wedding-demo-theme-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(66,49,38,.1)}.wedding-demo-theme-card.active{border-color:#6c7d69;box-shadow:0 0 0 3px rgba(108,125,105,.15)}.wedding-demo-theme-card>span:last-child{display:grid;gap:3px}.wedding-demo-theme-card strong{font-size:.86rem}.wedding-demo-theme-card small{font-size:.65rem;line-height:1.3;color:#746a61}.wedding-demo-theme-card>span:last-child>em{font-style:normal;text-transform:uppercase;letter-spacing:.08em;color:#966d58;font-size:.53rem;font-weight:850}.wedding-demo-gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.2fr;gap:12px}.wedding-demo-gallery i{min-height:220px;border-radius:24px;background:linear-gradient(145deg,#d1a79b,#78917e);box-shadow:0 14px 30px rgba(54,45,38,.09)}.wedding-demo-gallery i:nth-child(2){background:linear-gradient(145deg,#8aa7b6,#e5d5ae)}.wedding-demo-gallery i:nth-child(3){background:linear-gradient(145deg,#e6b9a5,#b87c76)}.wedding-demo-gallery i:nth-child(4){background:linear-gradient(145deg,#667b64,#d4c187)}.wedding-invite-demo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.wedding-invite-demo-grid article{aspect-ratio:3/4;border-radius:16px;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 18px 38px rgba(61,48,38,.12)}.wedding-invite-demo-grid small{font-size:.55rem;letter-spacing:.15em;font-weight:850}.wedding-invite-demo-grid b{font-family:Georgia,serif;font-size:2rem;line-height:1;margin:24px 0}.wedding-invite-demo-grid span{font-size:.65rem;letter-spacing:.08em}.wedding-invite-demo-grid i{margin-top:30px;width:75px;height:75px;display:grid;place-items:center;background:#fff;color:#111;font-style:normal;font-weight:900}.wedding-invite-demo-grid .garden{background:#e6ecd9;color:#38513d}.wedding-invite-demo-grid .editorial{background:linear-gradient(90deg,#171817 0 18%,#eadfcb 18%);color:#171817;border-radius:0}.wedding-invite-demo-grid .midnight{background:#17243b;color:#f2e1bb}.wedding-invite-demo-grid .celebration{background:linear-gradient(145deg,#f5bcb1 0 48%,#f2db99 48% 72%,#a9c5e6 72%);color:#30376e}

/* Invitation cards in admin */
.invitation-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.invitation-admin-grid article{padding:14px 14px 18px;border-radius:22px;background:linear-gradient(180deg,#fffdf9,#f5eee4);box-shadow:0 16px 38px rgba(65,49,37,.08);display:flex;flex-direction:column}.invitation-admin-grid img{aspect-ratio:3/4;border-radius:14px;box-shadow:0 14px 30px rgba(48,38,31,.15)}.invitation-admin-grid h3{font-family:Georgia,serif;font-size:1.35rem;margin:15px 0 4px}.invitation-admin-grid p{font-size:.82rem;line-height:1.45;flex:1}.invitation-admin-grid .btn{width:100%}

/* Multi file uploader */
.multi-upload-box{border:1px dashed #bba98f!important;background:linear-gradient(135deg,#fffdf9,#f5eee5)!important}.multi-upload-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.multi-upload-head>div{display:grid;gap:3px}.multi-upload-head h3{margin:0}.multi-upload-head small{color:#766c61}.multi-upload-head>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#536756;color:#fff;font-size:1.5rem}.multi-file-summary{margin:-8px 0 0;padding:9px 12px;border-radius:10px;background:#eee7dd;color:#756b60;font-size:.8rem}.multi-file-summary.has-files{background:#e3eee1;color:#405a43;font-weight:750}

@media(max-width:1100px){.wedding-theme-picker-layout{grid-template-columns:1fr}.wedding-theme-showcase{position:relative;top:auto}.wedding-demo-theme-strip{grid-template-columns:1fr 1fr}.invitation-admin-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.wedding-theme-options{grid-template-columns:1fr;max-height:none}.wedding-theme-picker-layout{display:block}.wedding-theme-showcase{margin-top:18px}.wedding-preview-hero{grid-template-columns:1fr}.wedding-preview-photo{height:190px}.wedding-preview-copy{padding:24px}.wedding-demo-theme-strip{grid-template-columns:1fr}.wedding-demo-gallery,.wedding-invite-demo-grid{grid-template-columns:1fr 1fr}.wedding-page .wedding-public-copy h1{font-size:clamp(3.5rem,15vw,5.2rem)}.wedding-theme-editorial .wedding-public-hero{grid-template-columns:1fr}.wedding-theme-editorial .wedding-public-photo{min-height:420px}.wedding-theme-champagne .wedding-public-hero{grid-template-columns:1fr;background:#f6f0e4}.wedding-theme-champagne .wedding-public-photo{padding:45px}.invitation-admin-grid{grid-template-columns:1fr}}
.wedding-eight-invites{grid-template-columns:repeat(4,1fr)}.invitation-style-grid .champagne{background:#f1e3c7;color:#735b36}.invitation-style-grid .editorial{background:linear-gradient(90deg,#171817 0 18%,#e9dfcb 18%);color:#171817;border-left:0}.invitation-style-grid .terracotta{background:#efb79a;color:#6a3b3d}.invitation-style-grid .coastal{background:#d3e9ec;color:#275969}.invitation-style-grid .wildflower{background:radial-gradient(circle at 15% 20%,#dd8998 0 12px,transparent 13px),radial-gradient(circle at 88% 75%,#8faa6f 0 14px,transparent 15px),#f7e9d0;color:#4d5942}.invitation-style-grid .celebration{background:linear-gradient(145deg,#f3b5aa 0 45%,#f1da96 45% 72%,#a8c4e5 72%);color:#31366c}.wedding-eight-invites article{min-height:190px}.wedding-eight-invites article:nth-child(odd){transform:translateY(-5px)}
@media(max-width:900px){.wedding-eight-invites{grid-template-columns:1fr 1fr}}@media(max-width:520px){.wedding-eight-invites{grid-template-columns:1fr}}

/* Archive exports + fuller wedding demo */
.archive-export-card{background:linear-gradient(135deg,#f4efe6,#edf1e9);border-color:#ddd4c7}.archive-export-card>p{max-width:780px}.archive-export-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.archive-export-grid article{display:grid;grid-template-columns:62px 1fr;gap:16px;align-items:start;padding:22px;border:1px solid #ded5c8;border-radius:20px;background:rgba(255,253,249,.88)}.archive-export-grid h3{margin:0 0 7px;font-family:Georgia,serif;font-size:1.3rem}.archive-export-grid p{margin:0 0 15px;color:#6e675e}.archive-export-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:17px;background:#475b49;color:#fff;font-size:.78rem;font-weight:900;letter-spacing:.08em}.archive-export-grid article:nth-child(2) .archive-export-icon{background:#8b654d}.wedding-archive-export{background:linear-gradient(135deg,#f7eee5,#edf0e7)}
.demo-wedding-feature-panel{margin:16px 0 4px;padding:15px 17px;border:1px solid #e3d8ca;border-radius:17px;background:rgba(255,253,249,.78)}.demo-wedding-feature-panel>strong{display:block;margin-bottom:10px;font-family:Georgia,serif;font-size:1.08rem}.demo-wedding-feature-panel>div{display:flex;flex-wrap:wrap;gap:7px}.demo-wedding-feature-panel label{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #e2d7c9;color:#554d45;font-size:.76rem;font-weight:700;cursor:pointer}.demo-wedding-feature-panel input{width:auto;margin:0;accent-color:#657765}.wedding-demo-real-gallery .memory-item{cursor:pointer}.wedding-demo-page .memory-section[hidden],.wedding-demo-page .wedding-countdown-section[hidden]{display:none!important}.wedding-invite-demo-grid article .link-btn{margin-top:10px;font-size:.74rem;text-decoration:underline;color:inherit}.wedding-demo-controls .demo-control-actions{gap:8px}
@media(max-width:760px){.archive-export-grid{grid-template-columns:1fr}.archive-export-grid article{grid-template-columns:50px 1fr;padding:18px}.archive-export-icon{width:46px;height:46px}.demo-wedding-feature-panel>div{display:grid;grid-template-columns:1fr 1fr}.wedding-demo-controls .demo-control-actions .demo-tool-btn{flex:1 1 42%}}
.wedding-invite-demo-eight article.champagne{background:linear-gradient(145deg,#faf4e8,#e7d4ad);color:#40382e}.wedding-invite-demo-eight article.terracotta{background:linear-gradient(145deg,#edc1a2,#a95246);color:#4c2927}.wedding-invite-demo-eight article.coastal{background:linear-gradient(160deg,#e3f1f3,#76a9b5);color:#193a43}.wedding-invite-demo-eight article.wildflower{background:radial-gradient(circle at 15% 18%,#e79aae 0 5%,transparent 6%),radial-gradient(circle at 85% 80%,#d7b25a 0 5%,transparent 6%),linear-gradient(145deg,#fbf1d9,#dce7c7);color:#354034}.wedding-invite-demo-eight{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.wedding-invite-demo-eight{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.wedding-invite-demo-eight{grid-template-columns:1fr}}

/* === Modulordning per sida === */
.module-order-stack{display:flex;flex-direction:column}.module-order-stack>.ordered-module{order:var(--module-order,50)}
.module-order-card{overflow:hidden}.module-order-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.module-order-head h2{margin:5px 0 6px}.module-order-head p{margin:0;color:var(--muted);max-width:760px}.module-order-hint{white-space:nowrap;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:750;color:var(--muted)}.module-sort-list{display:grid;gap:9px}.module-sort-item{display:grid;grid-template-columns:42px 34px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(35,38,33,.035);transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.module-sort-item[draggable="true"]{cursor:grab}.module-sort-item.dragging{opacity:.48;transform:scale(.99);border-color:var(--accent);box-shadow:0 12px 30px rgba(40,55,46,.14)}.module-drag-handle,.module-move{border:0;background:var(--soft);color:var(--text);border-radius:9px;cursor:pointer;font-weight:800}.module-drag-handle{width:38px;height:38px;font-size:1.15rem;letter-spacing:-.14em}.module-sort-number{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:.78rem;font-weight:800}.module-sort-copy{display:grid;min-width:0}.module-sort-copy b{font-size:.97rem}.module-sort-copy small{color:var(--muted);font-size:.78rem;white-space:normal}.module-sort-buttons{display:flex;gap:5px}.module-move{width:34px;height:34px;font-size:1rem}.module-drag-handle:hover,.module-move:hover{background:#dfe6df}.module-order-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:18px}.module-order-actions small{color:var(--muted)}
.wedding-content.module-order-stack .wedding-countdown-section{width:100%;padding:0;background:transparent}.wedding-content.module-order-stack .wedding-countdown{margin:32px auto 34px}
@media(max-width:720px){.module-order-head{flex-direction:column}.module-order-hint{display:none}.module-sort-item{grid-template-columns:34px 28px minmax(0,1fr) auto}.module-sort-item>.status{grid-column:3/4;width:max-content}.module-sort-buttons{grid-column:4;grid-row:1/3;flex-direction:column}.module-drag-handle{width:32px;height:36px}.module-sort-copy small{font-size:.72rem}}

/* === Wedding day live mode === */
.wedding-public-phase{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.04em;background:color-mix(in srgb,var(--m-accent,#6c806f) 14%,white);color:var(--m-text,#333)}
.wedding-public-phase.phase-live{background:#e64f75;color:#fff;box-shadow:0 0 0 5px rgba(230,79,117,.12)}.wedding-public-phase.phase-after{background:color-mix(in srgb,var(--m-accent,#6c806f) 26%,white)}
.wedding-phase-live .wedding-public-copy .eyebrow{animation:softPulse 2.2s ease-in-out infinite}.wedding-phase-live{min-height:min(68vh,690px)}
.wedding-live-hub{width:min(1180px,92vw);margin:32px auto 18px;padding:clamp(28px,5vw,54px);border-radius:36px;background:linear-gradient(135deg,color-mix(in srgb,var(--m-accent,#6c806f) 82%,#171717),color-mix(in srgb,var(--m-accent,#6c806f) 52%,#291f2d));color:#fff;box-shadow:0 28px 70px rgba(0,0,0,.16);position:relative;overflow:hidden}.wedding-live-hub:before{content:'';position:absolute;inset:-30% -10% auto auto;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.2),transparent 68%)}.wedding-live-hub-head{max-width:700px;position:relative}.wedding-live-hub .eyebrow{color:#fff8df}.wedding-live-hub h2{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4.4rem);font-weight:400;margin:8px 0}.wedding-live-hub p{color:rgba(255,255,255,.82)}.wedding-live-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:28px;position:relative}.wedding-live-action{display:grid;gap:5px;padding:20px;border-radius:22px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);color:#fff!important;backdrop-filter:blur(8px);transition:.2s}.wedding-live-action:hover{transform:translateY(-5px);background:rgba(255,255,255,.18);text-decoration:none}.wedding-live-action>span{font-size:2rem}.wedding-live-action b{font-size:1.05rem}.wedding-live-action small{color:rgba(255,255,255,.72);line-height:1.35}.live-screen-link{display:inline-flex;margin-top:18px;color:#fff!important;font-weight:800}.wedding-disposable-section,.wedding-mission-section,.wedding-live-greeting-section{border-radius:30px;padding:clamp(30px,5vw,55px)!important;background:color-mix(in srgb,var(--m-paper,#fff) 80%,var(--m-accent,#6c806f) 8%);box-shadow:0 20px 48px rgba(0,0,0,.06)}
.camera-launch-button{position:relative;display:flex;align-items:center;justify-content:center;min-height:86px;border-radius:24px;background:var(--m-accent,#5e715f);color:#fff;font-size:1.12rem;font-weight:850;cursor:pointer;box-shadow:0 14px 32px color-mix(in srgb,var(--m-accent,#5e715f) 25%,transparent);overflow:hidden}.camera-launch-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.camera-launch-button.is-uploading{opacity:.65;pointer-events:none}.camera-status{text-align:center;color:var(--m-muted,#777);font-size:.86rem}.mission-card{padding:26px;border-radius:25px;background:var(--m-paper,#fff);border:1px solid color-mix(in srgb,var(--m-accent,#6c806f) 22%,transparent);display:grid;gap:8px;margin:20px 0}.mission-card small{text-transform:uppercase;letter-spacing:.12em;color:var(--m-accent,#6c806f);font-weight:800}.mission-card strong{font-family:Georgia,serif;font-size:clamp(1.45rem,3vw,2.3rem);font-weight:400}.mission-camera-form{margin-top:17px}.live-greeting-preview{overflow:hidden;margin-top:26px;border-radius:999px;background:#1f2822;color:#fff;padding:12px 0}.live-ticker-track{display:flex;width:max-content;animation:weddingTicker 42s linear infinite}.live-ticker-sequence{display:flex;align-items:center;white-space:nowrap}.live-ticker-sequence span{padding:0 24px;font-weight:700}.live-ticker-sequence span:after{content:'·';margin-left:45px;color:#eabf85}@keyframes weddingTicker{from{transform:translateX(0)}to{transform:translateX(-25%)}}
.wedding-party-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px}.wedding-party-grid article{text-align:center;padding:20px;border-radius:26px;background:var(--m-paper,#fff);border:1px solid color-mix(in srgb,var(--m-accent,#6c806f) 17%,transparent)}.wedding-party-grid img,.party-avatar-empty{width:140px;height:140px;border-radius:50%;object-fit:cover;margin:0 auto 14px}.party-avatar-empty{display:grid;place-items:center;font-size:3rem;background:color-mix(in srgb,var(--m-accent,#6c806f) 16%,white);color:var(--m-accent,#6c806f)}.wedding-party-grid small{color:var(--m-accent,#6c806f);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.wedding-party-grid h3{font-family:Georgia,serif;font-size:1.5rem;margin:6px 0}.wedding-party-grid p{font-size:.9rem;color:var(--m-muted,#777)}
.wedding-seating-public{overflow:visible}.seating-search{max-width:650px;margin:18px 0 22px}.seat-search-result{display:grid;gap:2px;margin-top:9px;padding:12px 15px;border-radius:13px;background:color-mix(in srgb,var(--m-accent,#6c806f) 9%,var(--m-paper,#fff))}.seat-search-result strong{font-size:1.05rem}.public-seating-map{position:relative;min-height:460px;border-radius:28px;background:color-mix(in srgb,var(--m-accent,#6c806f) 6%,var(--m-paper,#fff));border:1px solid color-mix(in srgb,var(--m-accent,#6c806f) 18%,transparent);overflow:hidden;margin-bottom:14px;transition:max-height .35s ease}.public-table{position:absolute;width:180px;min-height:115px;transform:translateZ(0);padding:14px;border-radius:50%;background:var(--m-paper,#fff);border:2px solid color-mix(in srgb,var(--m-accent,#6c806f) 45%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.08);transition:.25s}.public-table.table-rect,.public-table.table-head{border-radius:18px;width:220px}.public-table.table-head{width:300px}.public-table>b{display:block;text-align:center;color:var(--m-accent,#6c806f)}.public-seat-list{display:grid;gap:2px;margin-top:8px;max-height:72px;overflow:auto}.public-seat-list span{font-size:.72rem;padding:2px 5px;border-radius:6px}.public-seat-list span.is-found{background:#ffe494;color:#28241d;font-weight:900}.public-table.is-found-table{box-shadow:0 0 0 7px color-mix(in srgb,var(--m-accent,#6c806f) 22%,transparent),0 18px 40px rgba(0,0,0,.12);transform:scale(1.06);z-index:3}
/* Wedding admin live */
.wedding-phase-card{border:2px solid color-mix(in srgb,var(--accent,#526b5d) 22%,transparent);background:linear-gradient(135deg,#fffaf4,#f1f3ec)}.wedding-phase-card.phase-live{background:linear-gradient(135deg,#fff0f4,#f0ede7);border-color:#e9a4b6}.wedding-phase-badge{padding:8px 13px;border-radius:999px;background:#fff;border:1px solid #ded5c9;font-weight:850}.wedding-phase-card.phase-live .wedding-phase-badge{background:#d94b70;color:#fff;border-color:#d94b70}.wedding-phase-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.live-admin-link{margin-top:16px;padding:13px;border-radius:14px;background:#26392d;color:#fff}.live-admin-link a{color:#fff;text-decoration:underline}.mission-admin-list{display:grid;gap:10px;margin-top:18px}.mission-admin-list article{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;border:1px solid var(--line);padding:13px;border-radius:14px;background:#fff}.seating-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px}.seating-editor{display:grid;grid-template-columns:220px 1fr;gap:16px;margin-top:20px}.seating-guest-bank{padding:14px;border-radius:16px;background:#f4efe8;min-height:420px}.seating-guest-bank h3{margin-top:0}.guest-chip{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 9px;margin:5px 0;border-radius:9px;background:#fff;border:1px solid #ddd2c6;cursor:grab;font-size:.82rem}.guest-chip form{margin:0}.guest-chip button{border:0;background:none;cursor:pointer}.seating-canvas{position:relative;min-height:650px;border-radius:22px;background:linear-gradient(135deg,#f8f6f1,#e9eee6);border:1px solid #dfe0d8;overflow:hidden}.seating-table{position:absolute;width:190px;min-height:155px;border-radius:50%;background:#fff;border:2px solid #869b87;padding:12px;box-shadow:0 12px 30px rgba(0,0,0,.08)}.seating-table.table-rect,.seating-table.table-head{border-radius:18px;width:230px}.seating-table.table-head{width:310px}.seating-table>header{text-align:center;cursor:move;user-select:none}.seating-table>header span{display:block;font-size:.6rem;color:#999}.seat-ring{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:8px}.seat-drop{min-height:42px;border:1px dashed #c7c2b9;border-radius:8px;padding:3px;text-align:center;background:#faf9f6}.seat-drop small{display:block;color:#999;font-size:.6rem}.seat-drop .guest-chip{padding:3px;font-size:.65rem;margin:0;overflow:hidden}.seat-drop.drag-over{background:#dfeada;border-color:#789075}.wedding-party-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:18px}.wedding-party-admin-grid article{padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff}.wedding-party-admin-grid img,.wedding-party-admin-grid .party-avatar-empty{width:100px;height:100px}.live-photo-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.live-photo-admin-grid article{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.live-photo-admin-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.live-photo-admin-grid article>div{padding:9px 12px;display:flex;justify-content:space-between;gap:8px;align-items:center}
/* Projector / TV live screen */
.wedding-live-screen{position:fixed;inset:0;z-index:500;background:radial-gradient(circle at 50% 45%,#2b302b,#111512 70%);color:#fff;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}.wedding-live-screen>header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;position:relative;z-index:3;background:linear-gradient(180deg,rgba(0,0,0,.55),transparent)}.wedding-live-screen>header span{color:#ffd6df;font-weight:900;letter-spacing:.16em}.wedding-live-screen>header h1{font-family:Georgia,serif;font-size:clamp(1.5rem,3vw,3rem);font-weight:400;margin:4px 0}.wedding-live-stage{position:relative;min-height:0;display:grid;place-items:center;overflow:hidden}.wedding-live-stage>img{width:100%;height:100%;object-fit:contain}.live-photo-enter{animation:livePhotoIn 1s cubic-bezier(.22,1,.36,1)}@keyframes livePhotoIn{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}.live-empty{text-align:center;max-width:700px}.live-empty>span{font-size:4rem}.live-empty h2{font-family:Georgia,serif;font-size:4rem;font-weight:400;margin:8px}.live-empty p{color:#bbc4bc}.live-photo-caption{position:absolute;left:25px;bottom:25px;padding:9px 13px;border-radius:999px;background:rgba(0,0,0,.48);backdrop-filter:blur(8px)}.live-current-mission{position:absolute;right:25px;top:20px;max-width:420px;padding:14px 18px;border-radius:17px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px)}.live-current-mission small{display:block;color:#f3cc88;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.live-current-mission strong{display:block;margin-top:4px;font-size:1rem}.live-screen-ticker{overflow:hidden;background:#f1d49b;color:#222;padding:13px 0}.live-screen-ticker .live-ticker-track{animation-duration:48s}.live-screen-ticker .live-ticker-sequence span{font-size:1.05rem;font-weight:900}
@media(max-width:900px){.wedding-live-actions{grid-template-columns:1fr 1fr}.seating-editor{grid-template-columns:1fr}.seating-guest-bank{min-height:auto}.seating-canvas{min-height:520px}.seating-tools{grid-template-columns:1fr}.public-seating-map{min-height:520px;overflow:auto}.public-table{position:relative!important;left:auto!important;top:auto!important;margin:10px;width:auto!important}.wedding-live-stage{min-height:70vh}.live-current-mission{max-width:50vw}}
@media(max-width:600px){.wedding-live-actions{grid-template-columns:1fr}.wedding-live-hub{border-radius:24px}.seat-ring{grid-template-columns:repeat(2,minmax(0,1fr))}.wedding-party-grid{grid-template-columns:1fr 1fr}.wedding-live-screen>header{padding:14px}.live-current-mission{position:absolute;top:auto;bottom:16px;right:12px;max-width:70vw}.live-photo-caption{left:12px;bottom:16px}.live-screen-ticker .live-ticker-sequence span{font-size:.86rem}}

/* === Wedding LIVE demo additions === */
.demo-wedding-phase-panel{margin:18px 0;padding:18px 20px;border-radius:20px;background:linear-gradient(135deg,#f8efe3,#edf2ea);border:1px solid rgba(112,91,69,.14)}.demo-wedding-phase-panel>p{margin:4px 0 13px;color:#746b61}.demo-phase-buttons{display:flex;gap:8px;flex-wrap:wrap}.demo-phase-buttons button{border:1px solid #cdbdaa;background:#fffaf2;color:#433c35;border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer}.demo-phase-buttons button.active{background:#465a49;color:#fff;border-color:#465a49;box-shadow:0 8px 20px rgba(70,90,73,.18)}.demo-live-forms{max-width:760px;margin:18px auto}.demo-live-forms .memory-form-box{padding:20px}.demo-disposable-form{background:rgba(255,255,255,.72);padding:20px;border-radius:20px}.demo-projector-overlay{position:fixed;z-index:260;inset:0;background:rgba(5,8,8,.88);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.demo-projector-overlay[hidden]{display:none!important}.demo-projector-screen{position:relative;width:min(1180px,96vw);height:min(720px,90vh);overflow:hidden;border-radius:24px;background:radial-gradient(circle at 50% 35%,#26362f,#0d1512 68%);color:#fff;box-shadow:0 35px 100px rgba(0,0,0,.45);display:grid;grid-template-rows:auto 1fr auto auto}.demo-projector-screen>button{position:absolute;right:18px;top:18px;z-index:3;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#222;font-size:1.5rem;cursor:pointer}.demo-projector-screen header{text-align:center;padding:22px 70px 12px}.demo-projector-screen header small{letter-spacing:.2em;color:#d9bd88;font-weight:900}.demo-projector-screen header h2{font-family:Georgia,serif;font-size:2.6rem;font-weight:400;margin:4px}.demo-projector-screen header i{font-weight:400}.demo-projector-screen header span{color:#cfc8bc}.demo-projector-photo{margin:0 auto;width:min(760px,82%);min-height:280px;border-radius:22px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12)}.demo-projector-photo>div{text-align:center;color:#cfc8bc}.demo-projector-photo>div span{font-size:3.2rem;display:block}.demo-projector-photo img{width:100%;height:100%;object-fit:cover;max-height:400px}.demo-projector-mission{text-align:center;padding:14px 20px}.demo-projector-mission small{display:block;color:#d8bd89;letter-spacing:.14em;font-size:.65rem}.demo-projector-mission b{display:block;font-family:Georgia,serif;font-size:1.2rem;font-weight:400;margin-top:3px}.projector-ticker{border-radius:0;margin:0;background:#17211c}.featured-guest-admin{background:linear-gradient(135deg,#fbf7f0,#eff3ec)}.featured-guest-list{display:grid;gap:8px;margin-top:14px}.featured-guest-row{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #e7ded1}.featured-guest-row .check{margin:0}.featured-wedding-guest{background:linear-gradient(145deg,var(--w-soft,#f4eee6),rgba(255,255,255,.72))!important}.demo-public-seating-map{min-height:370px}.seat-found{outline:3px solid #d38a6e!important;outline-offset:2px}.table-found{box-shadow:0 0 0 4px rgba(211,138,110,.22),0 18px 35px rgba(0,0,0,.12)!important}.demo-wedding-after-only{background:linear-gradient(135deg,#f5eee4,#e8efe8);border-radius:28px;padding:42px!important}.demo-wedding-live-phase .wedding-public-hero:after{content:'LIVE';position:absolute;right:24px;top:24px;background:#a94f45;color:#fff;padding:7px 12px;border-radius:999px;font-weight:900;letter-spacing:.14em;font-size:.67rem}.demo-wedding-after-phase .wedding-public-copy>.eyebrow:after{content:' · EFTER BRÖLLOPET'}
@media(max-width:680px){.demo-phase-buttons{display:grid}.demo-phase-buttons button{width:100%}.demo-projector-screen{height:92vh;border-radius:16px}.demo-projector-screen header h2{font-size:1.9rem}.demo-projector-photo{width:90%;min-height:240px}.featured-guest-row{align-items:flex-start;flex-direction:column}.demo-public-seating-map{min-height:430px}}

/* Rich theme preview in admin */
.wedding-theme-showcase{overflow:hidden;border-radius:26px;background:var(--w-bg);color:var(--w-text);box-shadow:0 24px 60px rgba(61,48,38,.13)}.wedding-theme-showcase-inner{background:var(--w-bg)}.wedding-preview-nav{height:38px;display:flex;align-items:center;gap:16px;padding:0 16px;background:var(--w-paper);border-bottom:1px solid color-mix(in srgb,var(--w-text) 10%,transparent);font-size:.48rem}.wedding-preview-nav b{margin-right:auto;font-family:Georgia,serif;font-size:.72rem}.wedding-preview-hero-v3{min-height:300px;grid-template-columns:1fr 1.05fr}.wedding-preview-hero-v3 .wedding-preview-copy{order:1;padding:28px 14px 28px 28px}.wedding-preview-hero-v3 .wedding-preview-photo{order:2;margin:16px;border-radius:10px;font-size:2.2rem}.wedding-preview-hero-v3 .wedding-preview-copy strong{font-size:2.6rem;line-height:.8}.wedding-preview-hero-v3 .preview-date{font-family:Georgia,serif;font-size:.82rem;margin:3px 0}.preview-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:10px 0 12px}.preview-countdown i{display:grid;text-align:center;padding:4px;border-right:1px solid color-mix(in srgb,var(--w-text) 14%,transparent);font-style:normal}.preview-countdown i:last-child{border:0}.preview-countdown b{font-family:Georgia,serif;font-size:.82rem}.preview-countdown small{font-size:.36rem;text-transform:uppercase;letter-spacing:.06em}.wedding-preview-editorial-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 14px}.wedding-preview-editorial-row article{min-height:94px;padding:13px;background:var(--w-paper);border:1px solid color-mix(in srgb,var(--w-text) 9%,transparent);border-radius:14px}.wedding-preview-editorial-row small{font-size:.4rem;color:var(--w-accent);font-weight:900;letter-spacing:.08em}.wedding-preview-editorial-row b{display:block;font-family:Georgia,serif;font-size:.72rem;line-height:1.15;margin:5px 0}.wedding-preview-editorial-row p{font-size:.42rem;margin:0;opacity:.7}.preview-timeline{display:flex;align-items:center;gap:4px;margin:9px 0}.preview-timeline i{font-style:normal;font-size:.58rem}.preview-timeline span{height:1px;background:var(--w-accent);flex:1;opacity:.45}.wedding-preview-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:8px 14px 16px}.wedding-preview-feature-grid article{min-height:58px;padding:8px;background:color-mix(in srgb,var(--w-paper) 92%,transparent);border:1px solid color-mix(in srgb,var(--w-text) 8%,transparent);border-radius:11px;display:grid;align-content:center;justify-items:start}.wedding-preview-feature-grid i{font-style:normal;color:var(--w-accent);font-size:.65rem}.wedding-preview-feature-grid b{font-size:.44rem;margin-top:3px}.wedding-theme-showcase-large{width:min(1100px,92vw);max-height:88vh;overflow:auto}.wedding-theme-showcase-large .wedding-preview-nav{height:52px;font-size:.65rem;padding:0 24px}.wedding-theme-showcase-large .wedding-preview-nav b{font-size:1rem}.wedding-theme-showcase-large .wedding-preview-hero-v3{min-height:480px}.wedding-theme-showcase-large .wedding-preview-hero-v3 .wedding-preview-copy{padding:55px}.wedding-theme-showcase-large .wedding-preview-hero-v3 .wedding-preview-copy strong{font-size:5rem}.wedding-theme-showcase-large .wedding-preview-editorial-row article{min-height:150px;padding:24px}.wedding-theme-showcase-large .wedding-preview-editorial-row b{font-size:1.25rem}.wedding-theme-showcase-large .wedding-preview-editorial-row p{font-size:.7rem}.wedding-theme-showcase-large .wedding-preview-feature-grid article{min-height:100px;padding:18px}.wedding-theme-showcase-large .wedding-preview-feature-grid i{font-size:1.1rem}.wedding-theme-showcase-large .wedding-preview-feature-grid b{font-size:.72rem}
.wedding-theme-showcase.wedding-theme-garden .wedding-preview-photo{border-radius:0 0 0 54px}.wedding-theme-showcase.wedding-theme-editorial .wedding-preview-photo{border-radius:2px;background:var(--w-dark);color:var(--w-paper)}.wedding-theme-showcase.wedding-theme-editorial .wedding-preview-copy strong{font-family:'Playfair Display',Georgia,serif;font-weight:800}.wedding-theme-showcase.wedding-theme-editorial .wedding-preview-editorial-row article:first-child{background:var(--w-dark);color:#fff;border-radius:0}.wedding-theme-showcase.wedding-theme-editorial .wedding-preview-feature-grid article{border-radius:0}

@media(max-width:1050px){
  .wedding-page .wedding-content.module-order-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.wedding-page .wedding-content.module-order-stack>.ordered-module{grid-column:1/-1}.wedding-page .wedding-disposable-section,.wedding-page .wedding-mission-section,.wedding-page .wedding-live-greeting-section,.wedding-page .share-section,.wedding-page .wedding-subscribe{grid-column:span 1!important}.wedding-page .wedding-public-hero{grid-template-columns:1fr 1fr}.wedding-page .wedding-live-actions{grid-template-columns:repeat(2,1fr)}.wedding-page .wedding-countdown{grid-template-columns:1fr}.wedding-page .wedding-countdown>.eyebrow,.wedding-page .wedding-countdown>p{text-align:center}.wedding-page .memory-gallery{columns:2}
}
@media(max-width:760px){
  .wedding-page .wedding-top{padding:9px 14px}.wedding-public-phase{display:none}.wedding-page .wedding-nav{justify-content:flex-start;overflow:auto;padding:11px 14px;scrollbar-width:none}.wedding-page .wedding-public-hero{display:flex;flex-direction:column;min-height:auto}.wedding-page .wedding-public-copy{order:1;padding:48px 24px 34px;margin:0;max-width:none}.wedding-page .wedding-public-photo{order:2;min-height:380px;height:380px;padding:0 18px 28px}.wedding-page .wedding-public-photo img,.wedding-page .wedding-monogram{max-height:none;border-radius:30px;width:100%;height:100%}.wedding-page .wedding-public-copy h1{font-size:clamp(4rem,20vw,6.4rem)}.wedding-page .wedding-content.module-order-stack{display:block;width:min(100% - 24px,720px);padding:26px 0 70px}.wedding-page .wedding-content.module-order-stack>.ordered-module{margin-bottom:16px!important}.wedding-page .wedding-content .memory-section{padding:28px 20px;border-radius:24px!important}.wedding-page .wedding-countdown{padding:24px 14px;border-radius:24px}.wedding-page .countdown-grid b{font-size:2.35rem}.wedding-page .countdown-grid div{padding:5px 8px}.wedding-page .wedding-story-section{padding-left:28px!important}.wedding-page .wedding-story-section:before{display:none}.wedding-page .wedding-timeline-section .life-timeline{display:block}.wedding-page .wedding-timeline-section .life-timeline:before{left:13px;right:auto;top:12px;bottom:12px;width:1px;height:auto}.wedding-page .wedding-timeline-section .life-timeline-event{grid-template-columns:28px 1fr;text-align:left;margin-bottom:18px}.wedding-page .wedding-timeline-section .timeline-marker{grid-column:1;grid-row:1/3}.wedding-page .wedding-timeline-section .timeline-date{grid-column:2;text-align:left}.wedding-page .wedding-timeline-section .timeline-card{grid-column:2;text-align:left;padding:0 0 8px}.wedding-page .wedding-party-grid{grid-template-columns:repeat(2,1fr)}.wedding-page .wedding-info-grid{grid-template-columns:1fr}.wedding-page .wedding-info-grid .wide{grid-column:auto}.wedding-page .seating-search{grid-template-columns:1fr}.wedding-page .wedding-rsvp-form{padding:22px 16px}.wedding-page .wedding-guestbook .greetings{grid-template-columns:1fr}.wedding-page .memory-gallery{columns:1}.wedding-page .wedding-live-hub{width:calc(100% - 24px);padding:26px 18px;border-radius:24px}.wedding-page .wedding-live-actions{grid-template-columns:1fr 1fr}.wedding-theme-editorial .wedding-public-photo img,.wedding-theme-editorial .wedding-monogram{border-radius:0}.wedding-theme-celebration .wedding-public-photo img,.wedding-theme-celebration .wedding-monogram{box-shadow:8px 8px 0 #31386d}.wedding-preview-nav span{display:none}.wedding-preview-hero-v3{grid-template-columns:1fr}.wedding-preview-hero-v3 .wedding-preview-copy{padding:24px}.wedding-preview-hero-v3 .wedding-preview-photo{height:210px}.wedding-preview-editorial-row{grid-template-columns:1fr}.wedding-preview-feature-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:480px){.wedding-page .wedding-live-actions{grid-template-columns:1fr}.wedding-page .wedding-party-grid{grid-template-columns:1fr 1fr}.wedding-page .countdown-grid small{font-size:.52rem}.wedding-page .wedding-public-copy h1{font-size:4.2rem}.wedding-preview-feature-grid{grid-template-columns:1fr 1fr}}

/* Demo uses the same editorial wedding layout */
.wedding-page .wedding-demo-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:26px;width:min(1240px,calc(100% - 48px));padding:52px 0 96px}
.wedding-page .wedding-demo-layout>section{grid-column:1/-1;min-width:0;margin:0!important}.wedding-page .wedding-demo-layout>.wedding-countdown-section{padding:0;background:transparent}.wedding-page .wedding-demo-layout>#wedding-demo-upload,.wedding-page .wedding-demo-layout>#wedding-demo-subscribe{grid-column:span 6}.wedding-page .wedding-demo-layout .memory-section{padding:clamp(34px,5vw,66px);border:1px solid var(--w-line)!important;border-radius:var(--w-radius)!important;background:var(--w-paper);box-shadow:0 16px 46px color-mix(in srgb,var(--w-text) 7%,transparent)}
.wedding-page .wedding-demo-layout>#wedding-demo-story{padding-left:clamp(50px,8vw,118px)!important}.wedding-page .wedding-demo-layout>#wedding-demo-story:before{content:"♡";position:absolute;left:32px;top:34px;font-family:Georgia,serif;font-size:clamp(3rem,7vw,7rem);color:color-mix(in srgb,var(--w-accent) 22%,transparent)}
.wedding-page .wedding-demo-layout>#wedding-demo-info{background:var(--w-soft)!important}.wedding-page .wedding-demo-layout>#wedding-demo-party{background:var(--w-dark)!important;color:#fff}.wedding-page .wedding-demo-layout>#wedding-demo-party h2{color:#fff}.wedding-page .wedding-demo-layout>#wedding-demo-party>.eyebrow{color:color-mix(in srgb,var(--w-accent2) 75%,#fff)}.wedding-page .wedding-demo-layout>#wedding-demo-rsvp{background:var(--w-dark)!important;color:#fff}.wedding-page .wedding-demo-layout>#wedding-demo-rsvp h2{color:#fff}.wedding-page .wedding-demo-layout>#wedding-demo-gallery{background:transparent!important;border:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important}
@media(max-width:1050px){.wedding-page .wedding-demo-layout{grid-template-columns:1fr 1fr}.wedding-page .wedding-demo-layout>#wedding-demo-upload,.wedding-page .wedding-demo-layout>#wedding-demo-subscribe{grid-column:span 1}}
@media(max-width:760px){.wedding-page .wedding-demo-layout{display:block;width:min(100% - 24px,720px);padding:26px 0 70px}.wedding-page .wedding-demo-layout>section{margin-bottom:16px!important}.wedding-page .wedding-demo-layout>#wedding-demo-story{padding-left:28px!important}.wedding-page .wedding-demo-layout>#wedding-demo-story:before{display:none}}
