@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-400-normal-6IfK1voy.woff2)format("woff2"),url(/assets/fraunces-latin-400-normal-NUPT2cO8.woff)format("woff")}@font-face{font-family:Fraunces;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-400-italic-ChpO6tcr.woff2)format("woff2"),url(/assets/fraunces-latin-400-italic-B7iDoVhm.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2)format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-ext-400-normal-D8gbi3Gu.woff2)format("woff2"),url(/assets/fraunces-latin-ext-400-normal-UihxqfOe.woff)format("woff")}@font-face{font-family:Fraunces;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-ext-400-italic-jodr80a5.woff2)format("woff2"),url(/assets/fraunces-latin-ext-400-italic-CGHg0U1I.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-ext-600-normal-BtzmzP0X.woff2)format("woff2"),url(/assets/fraunces-latin-ext-600-normal-B0Dy4lqi.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:300;src:url(/assets/source-sans-3-latin-300-normal-KpEPfINB.woff2)format("woff2"),url(/assets/source-sans-3-latin-300-normal-gg1iSIt-.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-normal-DQi5PRDE.woff2)format("woff2"),url(/assets/source-sans-3-latin-400-normal-RR2C27NP.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/source-sans-3-latin-500-normal-DiWS0tcR.woff2)format("woff2"),url(/assets/source-sans-3-latin-500-normal-BHNJO6aI.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-600-normal-DeckBYAU.woff2)format("woff2"),url(/assets/source-sans-3-latin-600-normal-Ck0n4g8U.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:300;src:url(/assets/source-sans-3-latin-ext-300-normal-WvfVEKlz.woff2)format("woff2"),url(/assets/source-sans-3-latin-ext-300-normal-2VzkB6pp.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-ext-400-normal-UNsKFIBq.woff2)format("woff2"),url(/assets/source-sans-3-latin-ext-400-normal-D5P-Ud2J.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/source-sans-3-latin-ext-500-normal-tzH6xoxH.woff2)format("woff2"),url(/assets/source-sans-3-latin-ext-500-normal-CdS-Ceo-.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-ext-600-normal-AEyhgUpm.woff2)format("woff2"),url(/assets/source-sans-3-latin-ext-600-normal-D2VZAM8_.woff)format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-500-normal-B9SDL8cy.woff2)format("woff2"),url(/assets/caveat-latin-500-normal-Do9veZfZ.woff)format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-ext-500-normal-jKqJW7bC.woff2)format("woff2"),url(/assets/caveat-latin-ext-500-normal-wUUXxlbS.woff)format("woff")}:root{--sage-50:#f6f8f5;--sage-100:#e8efe6;--sage-200:#d4e0d0;--sage-300:#b5c9ae;--sage-400:#8fad85;--sage-500:#6d9170;--sage-600:#557558;--sage-700:#445e47;--sage-800:#384c3b;--sage-900:#2f4032;--cream-50:#fdfcfa;--cream-100:#f9f6f1;--cream-200:#f3ede4;--cream-300:#e8dfd0;--blush:#e8c4c4;--lavender:#d4cfe8;--peach:#f0d9c8;--sky:#c8dce8;--arc-rose:#d98e86;--arc-peach:#e7a977;--arc-gold:#e2c070;--arc-sage:#8fb38a;--arc-sky:#86acd0;--arc-lilac:#a596c9;--paper:#fbf7f0;--hand:#9e5850;--night-900:#1c2233;--night-800:#232a3d;--night-700:#2a3249;--night-line:#3a4360;--night-text:#f4efe6;--night-muted:#c9cede;--candle:#f3c46b;--candle-light:#fbf1dc;--candle-light-hover:#f6e6c3;--candle-ink:#7a5a2a;--text-primary:#2f4032;--text-secondary:#5a6b5c;--text-muted:#627264;--shadow-sm:0 1px 3px #2f40320f;--shadow-md:0 4px 16px #2f403214;--shadow-lg:0 8px 32px #2f40321f;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-full:9999px;--font-display:"Fraunces", Georgia, serif;--font-body:"Source Sans 3", system-ui, sans-serif;--font-hand:"Caveat", "Segoe Print", cursive;--header-height:72px;--btn-height:2.5rem;--transition:.25s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-body);color:var(--text-primary);background:var(--paper);min-height:100vh;font-weight:400;line-height:1.6}img{max-width:100%;display:block}a{color:var(--sage-600);transition:color var(--transition);text-decoration:none}a:hover{color:var(--sage-800)}button,input,select,textarea{font-family:inherit;font-size:inherit}.hidden{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:100;height:var(--header-height);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--sage-100);background:#fdfcfaeb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1.25rem;max-width:1200px;height:100%;margin:0 auto;padding:0 1.5rem;display:flex}.logo{color:var(--text-primary);font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;flex:none;align-items:center;gap:.6rem;font-size:1.3rem;font-weight:600;display:flex}.logo:hover{color:var(--sage-700)}.logo-icon{flex:none;width:2.6rem;height:auto}.nav-links{align-items:center;gap:1.25rem;min-width:0;list-style:none;display:flex}.nav-links>li{white-space:nowrap;flex:none}.nav-links>li>a:not(.btn),.nav-links>li>button:not(.btn){color:var(--text-secondary);font-size:.95rem;font-weight:500}.nav-links>li>a:not(.btn):hover,.nav-links>li>a:not(.btn).active{color:var(--sage-700)}.nav-links>li>a:not(.btn).active{box-shadow:inset 0 -2px 0 var(--arc-gold)}.nav-links .btn{white-space:nowrap}.nav-links>li>a.btn-primary,.nav-links>li>a.btn-secondary,.nav-links>li>button.btn-primary,.nav-links>li>button.btn-secondary{color:#fff;border:1px solid #0000}.nav-links>li>button.btn{appearance:none;font-family:inherit}.nav-links>li>.btn-primary:hover,.nav-links>li>.btn-primary.active{color:#fff}.nav-links>li>.btn-secondary:hover{color:var(--sage-800)}.nav-links .btn-secondary{box-shadow:none}.nav-links>li>a.nav-cta{background:var(--sage-600);box-shadow:none;padding:.25rem 1.1rem;font-size:.9rem}.nav-links>li>a.nav-cta:hover,.nav-links>li>a.nav-cta.active{background:var(--sage-700);box-shadow:none;transform:none}.nav-user{border-left:1px solid var(--sage-200);padding-left:1.25rem}.nav-links>li.nav-user{flex:0 auto;min-width:0}.nav-links>li>a.user-chip{border-radius:var(--radius-full);min-width:0;max-width:100%;color:var(--text-primary);transition:background var(--transition);align-items:center;gap:.55rem;padding:.3rem .8rem .3rem .3rem;display:inline-flex}.nav-links>li>a.user-chip:hover{background:var(--sage-50);color:var(--text-primary)}.user-avatar,.user-chip .badge-premium{flex:none}.user-avatar{background:var(--sage-100);border:1px solid var(--sage-200);width:2rem;height:2rem;color:var(--sage-700);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;line-height:1;display:inline-flex}.user-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:10rem;overflow:hidden}.nav-logout{font:inherit;color:var(--text-muted);cursor:pointer;transition:color var(--transition);background:0 0;border:none;padding:.4rem .2rem;font-size:.9rem}.nav-logout:hover{color:var(--sage-700);text-underline-offset:3px;text-decoration:underline}.mobile-menu-btn{cursor:pointer;color:var(--sage-700);background:0 0;border:none;padding:.25rem;font-size:1.5rem;display:none}.btn{box-sizing:border-box;min-height:var(--btn-height);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.25rem 1.5rem;font-size:.95rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--sage-500), var(--sage-600));color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:linear-gradient(135deg, var(--sage-600), var(--sage-700));box-shadow:var(--shadow-md);color:#fff;transform:translateY(-1px)}.btn-secondary{background:var(--cream-100);color:var(--sage-700);border:1px solid var(--sage-200)}.btn-secondary:hover{background:var(--sage-100);color:var(--sage-800)}.btn-ghost{color:var(--sage-600);background:0 0;padding:.25rem 1rem}.btn-ghost:hover{background:var(--sage-50)}.btn-danger-outline{color:#8c5353;background:0 0;border:1px solid #8c5353}.btn-danger-outline:hover{color:#8c5353;background:#8c535314}.btn-danger-outline:disabled{opacity:.6;cursor:not-allowed}.btn-candle{background:var(--candle-light);color:var(--candle-ink);border:1px solid var(--arc-gold)}.btn-candle:hover{background:var(--candle-light-hover);color:var(--candle-ink);transform:translateY(-1px)}.btn-candle:disabled{opacity:.85;cursor:default;transform:none}.candle-wait{color:var(--text-secondary);margin:.5rem 0 0;font-size:.9rem}.btn-sm{padding:.25rem 1rem;font-size:.85rem}.btn-icon{border-radius:var(--radius-sm);border:1px solid var(--sage-200);cursor:pointer;color:var(--sage-700);transition:all var(--transition);background:#ffffffe6;padding:.5rem}.btn-icon:hover{box-shadow:var(--shadow-sm);background:#fff}.page-shell{max-width:720px;padding:calc(var(--header-height) + 2rem) 16px 3rem;text-align:center;color:var(--text-primary);font-family:var(--font-body);margin:0 auto}.page-shell h1{font-family:var(--font-display);font-weight:500}.page-shell p{color:var(--text-secondary)}.page-shell nav{flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem;margin-top:1.5rem;display:flex}.page-shell a{color:var(--sage-700)}.main-content{min-height:calc(100vh - var(--header-height) - 120px)}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.section{padding:4rem 0}.section-title{font-family:var(--font-display);color:var(--sage-800);text-align:center;margin-bottom:.75rem;font-size:2.25rem;font-weight:600}.section-arc{width:4.5rem;height:auto;margin:0 auto .75rem;display:block}.section-subtitle{text-align:center;color:var(--text-secondary);max-width:560px;margin:0 auto 3rem;font-size:1.05rem}.hero{padding:4rem 0 3rem;position:relative;overflow:hidden}.hero .container{grid-template-columns:minmax(0,1fr);align-items:center;gap:3.5rem;display:grid}.hero:not(.hero-with-video) .hero-text{text-align:center;max-width:720px;margin:0 auto}.hero:not(.hero-with-video) h1{max-width:600px;margin-left:auto;margin-right:auto}.hero:not(.hero-with-video) .hero-intro,.hero:not(.hero-with-video) .hero-evening{margin-left:auto;margin-right:auto}.hero:not(.hero-with-video) .hero-cta{justify-content:center}.hand{font-family:var(--font-hand);color:var(--hand);font-weight:500;line-height:1.2}.hero-badge{margin-bottom:.75rem;font-size:1.85rem}.hero h1{font-family:var(--font-display);color:var(--sage-900);letter-spacing:-.02em;margin-bottom:1.25rem;font-size:clamp(2.4rem,5.5vw,4rem);font-weight:400;line-height:1.06}.hero h1 em{color:var(--sage-600);font-style:italic}.hero .hero-intro{color:var(--text-secondary);max-width:540px;margin-bottom:2rem;font-size:1.2rem;line-height:1.6}.hero-cta{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.hero .hero-cta{justify-content:flex-start}.hero .hero-note{color:var(--text-secondary);margin-top:1.25rem;font-size:.95rem}.hero-evening{text-align:left;background:var(--candle-light);max-width:540px;color:var(--text-primary);border:1px solid var(--arc-gold);border-radius:var(--radius-md);align-items:center;gap:.75rem;margin-top:1.75rem;padding:.9rem 1.1rem;line-height:1.4;display:flex}.hero-evening svg{color:var(--candle-ink);flex:none}.hero-evening:hover{color:var(--text-primary);background:var(--candle-light-hover)}.hero-with-video .container{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:3rem}.arch-photo{aspect-ratio:240/260;width:100%;position:relative}.arch-photo-large{max-width:420px}.arch-photo-small{flex:none;max-width:150px}.arch-photo-rainbow{width:100%;height:auto;position:absolute;top:0;left:0}.arch-photo-frame{border-radius:999px 999px var(--radius-md) var(--radius-md);background:var(--sky);box-shadow:var(--shadow-lg);position:absolute;inset:18% 19.5% 0;overflow:hidden}.arch-photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.home-origin{padding:0 0 3rem}.home-origin-card{background:var(--cream-200);border-radius:var(--radius-lg);align-items:center;gap:2rem;max-width:900px;margin:0 auto;padding:1.75rem 2rem;display:flex}.home-origin-text h2{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.home-origin-text p{font-family:var(--font-display);font-size:1.2rem;line-height:1.5}.home-origin-text .home-origin-signature{font-family:var(--font-hand);margin-top:.4rem;font-size:1.7rem}.home-origin-link{color:var(--sage-700);margin-top:.75rem;font-weight:600;display:inline-block}@media (width<=900px){.hero .container,.hero-with-video .container{grid-template-columns:minmax(0,1fr);gap:2rem}.arch-photo-large{max-width:300px}}@media (width<=600px){.home-origin-card{text-align:center;flex-direction:column;padding:1.5rem 1.25rem}}.hero-video .video-frame{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.video-frame video{background:var(--sage-800);width:100%;height:100%;position:absolute;inset:0}.home-example{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;gap:2rem;max-width:1040px;margin:0 auto;display:grid}.home-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.home-feature{border:1px solid var(--sage-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--sage-600);background:#fff;padding:1.5rem}.home-feature h3{color:var(--text-primary);margin:.6rem 0 .35rem;font-size:1.05rem}.home-feature p{color:var(--text-secondary);font-size:.95rem}@media (width<=768px){.home-example,.home-features{grid-template-columns:minmax(0,1fr)}}.home-cta{text-align:center}.memorial-card-label{background:var(--sage-900);color:var(--cream-50);border-radius:var(--radius-full);letter-spacing:.06em;text-transform:uppercase;padding:.25rem .75rem;font-size:.75rem;font-weight:600;position:absolute;bottom:.75rem;left:.75rem}.example-banner{background:var(--sage-100);border-bottom:1px solid var(--sage-200);padding:1rem 0}.example-banner .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.example-banner strong{color:var(--sage-800)}.example-banner p{max-width:46rem;color:var(--text-secondary);margin:.25rem 0 0;font-size:.95rem}.example-note{border-radius:var(--radius-md);background:var(--cream-100);color:var(--text-secondary);margin-bottom:1.5rem;padding:.75rem 1rem}.example-cta{text-align:center;margin-top:2.5rem}.payment-page{max-width:640px}.payment-summary{text-align:center;color:var(--text-primary);margin-bottom:1.5rem;font-size:1.15rem}.payment-embed{border:1px solid var(--sage-100);border-radius:var(--radius-lg);min-height:420px;box-shadow:var(--shadow-sm);background:#fff;padding:1rem}.payment-loading{text-align:center;color:var(--text-secondary);padding:2rem 0}.payment-note,.payment-cancel{text-align:center;color:var(--text-secondary);margin-top:1rem;font-size:.92rem}.search-section{padding:2rem 0 3rem}.search-bar{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--sage-100);background:#fff;flex-wrap:wrap;gap:1rem;padding:1.25rem;display:flex}.search-input-wrap{flex:1;min-width:200px;position:relative}.search-input-wrap svg{color:var(--text-muted);width:18px;height:18px;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-input-wrap input{border:1px solid var(--sage-200);border-radius:var(--radius-md);background:var(--cream-50);width:100%;color:var(--text-primary);transition:border-color var(--transition);padding:.75rem 1rem .75rem 2.75rem}.search-input-wrap input:focus{border-color:var(--sage-400);outline:none;box-shadow:0 0 0 3px #6d917026}.filter-select{border:1px solid var(--sage-200);border-radius:var(--radius-md);background:var(--cream-50);color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23557558' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;min-width:140px;padding:.75rem 2rem .75rem 1rem}.filter-select:focus{border-color:var(--sage-400);outline:none}.memorial-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:1.75rem;display:grid}.memorial-grid>*{min-width:0}.memorial-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--sage-100);transition:all var(--transition);cursor:pointer;color:inherit;background:#fff;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.memorial-card:hover{box-shadow:var(--shadow-lg);color:inherit;transform:translateY(-4px)}.memorial-card-link{color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.memorial-card-link:hover{color:inherit}.memorial-card-image{aspect-ratio:5/4;border-radius:999px 999px var(--radius-md) var(--radius-md);background:var(--sage-100);margin:.9rem .9rem 0;position:relative;overflow:hidden}.memorial-card-image img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .4s;display:block;position:absolute;inset:0}.memorial-card:hover .memorial-card-image img{transform:scale(1.05)}.memorial-card-badge{border-radius:var(--radius-full);color:var(--sage-700);background:#ffffffeb;padding:.25rem .65rem;font-size:.75rem;font-weight:500;position:absolute;bottom:.75rem;right:.75rem;box-shadow:0 2px 8px #2f403229}.memorial-card-body{flex-direction:column;flex:1;padding:1.25rem 1.5rem 1.5rem;display:flex}.memorial-card-name{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.25rem;font-size:1.5rem;font-weight:600}.memorial-card-meta{color:var(--text-muted);margin-bottom:.75rem;font-size:.9rem}.memorial-card-excerpt{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;font-size:.95rem;line-height:1.55;display:-webkit-box;overflow:hidden}.memorial-card-quote{color:var(--sage-700);font-family:var(--font-display);margin-top:.85rem;font-size:1rem;font-style:italic;line-height:1.4}.memorial-card-footer{border-top:1px solid var(--sage-100);color:var(--text-muted);align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;font-size:.85rem;display:flex}.memorial-card-stat{align-items:center;gap:.35rem;display:flex}.empty-state{text-align:center;color:var(--text-secondary);padding:4rem 2rem}.empty-state-icon{opacity:.6;margin-bottom:1rem;font-size:3rem}.how-it-works{background:var(--cream-100)}.steps-grid{grid-template-columns:repeat(3,1fr);gap:2rem;max-width:960px;margin:0 auto;display:grid}.step-card{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--sage-100);box-shadow:var(--shadow-sm);background:#fff;padding:2rem 1.5rem}.step-number{background:linear-gradient(135deg, var(--sage-400), var(--sage-500));color:#fff;width:48px;height:48px;font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.25rem;font-size:1.25rem;font-weight:600;display:flex}.step-card h3{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.5rem;font-size:1.35rem}.step-card p{color:var(--text-secondary);font-size:.95rem}.auth-page{min-height:calc(100vh - var(--header-height));background:linear-gradient(135deg,#b5c9ae2e,#f0d9c840);justify-content:center;align-items:center;padding:3rem 1.25rem;display:flex}.auth-card{border:1px solid var(--sage-100);border-radius:var(--radius-lg);width:min(100%,480px);box-shadow:var(--shadow-lg);background:#fffffff5;padding:2rem}.auth-header{text-align:center;margin-bottom:1.75rem}.auth-logo{background:var(--sage-100);border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 1rem;display:grid}.auth-logo svg{width:44px;height:auto}.auth-header h1{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.35rem;font-size:clamp(2rem,4vw,2.6rem)}.auth-header p{color:var(--text-secondary);font-size:1rem}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-field{flex-direction:column;gap:.5rem;display:flex}.auth-label{color:var(--sage-800);font-size:.92rem;font-weight:600}.auth-input{background:var(--cream-50);border:1px solid var(--sage-200);border-radius:var(--radius-md);width:100%;color:var(--text-primary);padding:.8rem 1rem}.auth-input:focus{border-color:var(--sage-400);outline:none;box-shadow:0 0 0 3px #6d91701f}.auth-submit{width:100%;margin-top:.5rem}.auth-error{border-radius:var(--radius-md);color:#8a3d3d;background:#e8c4c42e;border:1px solid #a85c5c38;margin-bottom:1rem;padding:.8rem 1rem;font-size:.92rem}.auth-error p+p,.auth-success p+p{margin-top:.5rem}.auth-error a{color:#8a3d3d;font-weight:600;text-decoration:underline}.auth-success{border-radius:var(--radius-md);background:var(--sage-50);border:1px solid var(--sage-200);color:var(--sage-800);padding:.9rem 1rem;font-size:.95rem}.auth-hint{color:var(--text-secondary);font-size:.85rem}.auth-forgot-link{color:var(--sage-700);align-self:flex-end;font-size:.88rem;font-weight:600}.auth-forgot-link:hover,.auth-forgot-link:focus-visible{text-decoration:underline}.auth-footer{text-align:center;color:var(--text-secondary);margin-top:1.5rem;font-size:.95rem}.auth-footer a{color:var(--sage-700);font-weight:600}.pricing-page{background:linear-gradient(180deg, var(--cream-50) 0%, var(--sage-50) 100%);padding:4rem 1.25rem}.pricing-wrap{max-width:1100px;margin:0 auto}.pricing-header{text-align:center;margin-bottom:2rem}.pricing-header h1{font-family:var(--font-display);color:var(--sage-900);margin-bottom:.5rem;font-size:clamp(2.4rem,5vw,4rem)}.pricing-header p{color:var(--text-secondary);font-size:1.1rem}.pricing-user-plan,.pricing-error,.pricing-success{border-radius:var(--radius-md);text-align:center;max-width:720px;margin:0 auto 2rem;padding:1rem 1.25rem}.pricing-user-plan{color:var(--sage-800);background:#c8dce838;border:1px solid #7492ae40}.pricing-error{color:#8a3d3d;background:#e8c4c42e;border:1px solid #a85c5c38}.pricing-success{color:#35643d;background:#c4e0ca47;border:1px solid #5b856240}.pricing-grid{grid-template-columns:repeat(2,minmax(260px,1fr));gap:1.5rem;margin-bottom:2.5rem;display:grid}.pricing-card{border:1px solid var(--sage-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#fffffff5;overflow:hidden}.pricing-card--current{box-shadow:0 0 0 2px #6d91701f, var(--shadow-md);background:#f6f8f5e6;border-color:#6d917080}.pricing-card-body{padding:2rem}.badge-premium{border-radius:var(--radius-full);color:#7a6235;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(135deg,#f7ebd3,#ecd9b4);border:1px solid #dcc596;padding:.15rem .55rem;font-size:.68rem;font-weight:700;line-height:1.4}.button-reset{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.plan-badge{border-radius:var(--radius-full);background:var(--sage-600);color:#fff;letter-spacing:.02em;margin-bottom:1rem;padding:.35rem .8rem;font-size:.76rem;font-weight:700;display:inline-block}.pricing-card h2{color:var(--sage-900);font-size:1.8rem;font-family:var(--font-display);margin-bottom:1rem}.plan-price-block{margin-bottom:1.5rem}.plan-price{color:var(--text-primary);font-size:clamp(2.4rem,4vw,3rem);font-weight:700;line-height:1.1}.plan-price-note{color:var(--text-secondary);margin-left:.5rem;font-size:.9rem;display:inline-block}.pricing-feature-list{flex-direction:column;gap:.8rem;margin-bottom:1.75rem;list-style:none;display:flex}.pricing-feature-list li{color:var(--text-secondary);align-items:flex-start;gap:.65rem;display:flex}.pricing-check{color:var(--sage-600);flex-shrink:0;font-weight:700}.pricing-action{width:100%}.pricing-action.disabled{opacity:.7;cursor:not-allowed}.pricing-info{border:1px solid var(--sage-100);border-radius:var(--radius-lg);max-width:820px;box-shadow:var(--shadow-md);background:#fffffff5;margin:0 auto;padding:2rem}.pricing-info+.pricing-info{margin-top:1.5rem}.pricing-info h3{font-family:var(--font-display);color:var(--sage-800);margin-bottom:1.25rem;font-size:2rem}.pricing-faq{gap:1.1rem;display:grid}.pricing-faq h4{color:var(--sage-900);margin-bottom:.4rem;font-size:1.05rem}.pricing-faq p{color:var(--text-secondary);line-height:1.65}.page-header{text-align:center;padding:3rem 0 2rem}.page-header h1{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.5rem;font-size:2.5rem}.page-header p{color:var(--text-secondary);max-width:500px;margin:0 auto}.form-container{max-width:720px;margin:0 auto 4rem}.memorial-form{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--sage-100);background:#fff;padding:2rem}.form-group{margin-bottom:1.5rem}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.form-label{color:var(--sage-800);margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.form-label .required{color:var(--blush)}.form-input,.form-select,.form-textarea{border:1px solid var(--sage-200);border-radius:var(--radius-md);background:var(--cream-50);width:100%;color:var(--text-primary);transition:border-color var(--transition);padding:.75rem 1rem}.form-input[type=date]{box-sizing:border-box;appearance:none;text-align:left;min-width:0;max-width:100%;min-height:3rem}.form-input[type=date]::-webkit-date-and-time-value{text-align:left}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--sage-400);outline:none;box-shadow:0 0 0 3px #6d91701f}.form-textarea{resize:vertical;min-height:140px}.form-hint{color:var(--text-muted);margin-top:.35rem;font-size:.8rem}.upload-zone{border:2px dashed var(--sage-300);border-radius:var(--radius-lg);text-align:center;background:var(--sage-50);cursor:pointer;transition:all var(--transition);padding:2.5rem 1.5rem}.upload-zone:hover,.upload-zone.dragover{border-color:var(--sage-500);background:var(--sage-100)}.upload-zone-icon{margin-bottom:.75rem;font-size:2.5rem}.upload-zone p{color:var(--text-secondary);margin-bottom:.5rem}.upload-zone span{color:var(--text-muted);font-size:.85rem}.upload-zone input{display:none}.image-gallery-preview{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;margin-top:1.25rem;display:grid}.preview-item{aspect-ratio:1;border-radius:var(--radius-md);background:var(--sage-100);border:2px solid #0000;position:relative;overflow:hidden}.preview-item.cover{border-color:var(--sage-500)}.preview-item img{object-fit:cover;width:100%;height:100%}.preview-actions{opacity:0;transition:opacity var(--transition);background:#2f40328c;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.5rem;display:flex;position:absolute;inset:0}.preview-item:hover .preview-actions{opacity:1}.preview-actions button{border-radius:var(--radius-sm);cursor:pointer;color:var(--sage-800);white-space:nowrap;background:#fff;border:none;padding:.3rem .6rem;font-size:.7rem}.preview-cover-badge{background:var(--sage-500);color:#fff;border-radius:var(--radius-full);padding:.15rem .45rem;font-size:.65rem;font-weight:500;position:absolute;top:.35rem;left:.35rem}.privacy-options{gap:1rem;display:flex}.privacy-option{border:2px solid var(--sage-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);text-align:center;flex:1;padding:1rem}.privacy-option:hover{border-color:var(--sage-400)}.privacy-option.selected{border-color:var(--sage-500);background:var(--sage-50)}.privacy-option input{display:none}.privacy-option-icon{margin-bottom:.35rem;font-size:1.5rem}.privacy-option-label{color:var(--sage-800);font-size:.95rem;font-weight:500}.privacy-option-desc{color:var(--text-muted);margin-top:.25rem;font-size:.8rem}.form-actions{border-top:1px solid var(--sage-100);justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;display:flex}.detail-header{padding:3rem 0 2.5rem}.detail-header-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:3.5rem;display:flex}.detail-cover{cursor:zoom-in;flex:0 320px;min-width:220px}.detail-cover .arch-photo-large{max-width:320px}.detail-cover:focus-visible{outline:3px solid var(--sage-500);outline-offset:6px;border-radius:var(--radius-md)}.detail-profile{flex:380px;max-width:600px}.detail-header-no-photo .detail-profile{text-align:center}.detail-profile h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--sage-900);margin-bottom:.5rem;font-size:clamp(2.4rem,6vw,4.25rem);font-weight:400;line-height:1.05}.detail-thumbs{flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;display:flex}.detail-header-no-photo .detail-thumbs{justify-content:center}.detail-thumb{border-radius:var(--radius-sm);width:64px;height:64px;box-shadow:var(--shadow-sm);cursor:zoom-in;overflow:hidden}.detail-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.detail-thumb:hover img{transform:scale(1.06)}@media (width<=768px){.detail-header{padding:2rem 0 1.5rem}.detail-header-inner{gap:1.5rem}.detail-cover .arch-photo-large{max-width:240px;margin:0 auto}.detail-profile{text-align:center}.detail-thumbs{justify-content:center}}.detail-dates{color:var(--text-muted);margin-bottom:.75rem;font-size:1.05rem}.detail-species{background:var(--sage-100);color:var(--sage-700);border-radius:var(--radius-full);margin-bottom:1.5rem;padding:.3rem .85rem;font-size:.9rem;font-weight:500;display:inline-block}.detail-quote{font-family:var(--font-display);color:var(--sage-700);max-width:600px;font-size:1.35rem;font-style:italic;line-height:1.5}.memorial-sharing{background:0 0;padding:.75rem 1rem 0}.profile-memorial-tools{border-top:1px solid var(--sage-100);background:var(--cream-50);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;margin-top:0;padding:1rem 1.25rem 1.25rem;display:flex}.profile-visibility-label{color:var(--text-muted);flex:none;align-items:center;gap:.3rem;padding-top:.4rem;font-size:.85rem;display:inline-flex}.profile-actions-label{color:var(--sage-700);font-family:var(--font-display);margin-right:.55rem;font-size:1.05rem;font-style:italic;display:inline-block}.profile-share-inline{align-items:center;gap:.25rem;display:flex}.profile-pdf-icon{display:inline-flex;position:relative}.profile-pdf-lock{background:var(--cream-50);color:var(--sage-800);border-radius:50%;padding:1px;position:absolute;bottom:-.2rem;right:-.35rem}.profile-memorial-actions{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.profile-action-button{border:1px solid var(--sage-200);border-radius:var(--radius-sm);background:var(--cream-50);width:3.6rem;height:3.6rem;min-height:3.6rem;color:var(--sage-700);cursor:pointer;font:inherit;white-space:nowrap;text-align:center;padding:0;font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none}.profile-action-button:hover{background:var(--sage-100);color:var(--sage-900)}.profile-pdf-action{background:var(--sage-100)}.profile-action-button:disabled{cursor:wait;opacity:.6}.profile-pdf-error{color:#8a3d3d;text-align:right;margin-top:.4rem;font-size:.8rem}.sharing-panel{justify-content:center;align-items:center;gap:.7rem;max-width:760px;margin:0 auto;padding:.35rem 0;display:flex}.sharing-label{color:var(--sage-700);font-family:var(--font-display);font-size:1.05rem;font-style:italic}.sharing-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.share-button{border:1px solid var(--sage-200);cursor:pointer;width:2.4rem;height:2.4rem;transition:transform var(--transition), background var(--transition), border-color var(--transition);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:1.15rem;font-weight:600;text-decoration:none;display:inline-flex}.share-button:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.share-whatsapp{color:#176b2d;background:#dff3e5;border-color:#b9dfc3}.share-facebook{color:#28549a;background:#e5ecfa;border-color:#c7d5f0}.share-copy,.share-qr,.share-pdf{background:var(--sage-100);border-color:var(--sage-200);color:var(--sage-800)}.share-pdf:disabled{cursor:wait;opacity:.65}.pdf-download-error{color:#8a3d3d;text-align:right;flex-basis:100%;font-size:.9rem}.qr-modal-backdrop{z-index:1100;background:#141c16ad;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.qr-modal{border-radius:var(--radius-lg);background:var(--cream-50);width:min(100%,390px);max-height:calc(100dvh - 2rem);box-shadow:var(--shadow-lg);text-align:center;padding:2rem 1.5rem 1.5rem;position:relative;overflow-y:auto}.qr-modal h2{color:var(--sage-800);font-family:var(--font-display);font-size:1.65rem;line-height:1.2}.qr-modal p{color:var(--text-secondary);margin:.5rem 0 1.25rem}.qr-modal-close{width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:1.75rem;line-height:1;position:absolute;top:.65rem;right:.75rem}.qr-code-frame{border-radius:var(--radius-md);width:min(100%,270px,32dvh);box-shadow:var(--shadow-sm);background:#fff;margin:0 auto 1.25rem;padding:.85rem}.qr-code-frame svg{width:100%;height:auto}.premium-modal-backdrop{z-index:1100;background:#141c16ad;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.premium-modal{border-radius:var(--radius-lg);background:var(--cream-50);width:min(100%,480px);max-height:90vh;box-shadow:var(--shadow-lg);text-align:center;padding:2rem 1.5rem 1.5rem;position:relative;overflow-y:auto}.premium-modal-icon{background:var(--peach);border-radius:50%;place-items:center;width:3rem;height:3rem;margin:0 auto .75rem;font-size:1.35rem;display:grid}.premium-modal-eyebrow{color:var(--sage-600);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700}.premium-modal h2{color:var(--sage-800);font-family:var(--font-display);margin:.5rem 0 .75rem;font-size:1.8rem;line-height:1.2}.premium-modal>p:not(.premium-modal-eyebrow){color:var(--text-secondary)}.premium-modal-close{width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:1.75rem;line-height:1;position:absolute;top:.65rem;right:.75rem}.premium-modal-actions{flex-direction:column;gap:.65rem;margin-top:1.5rem;display:flex}.premium-modal-actions .btn{width:100%}.danger-zone{border-top:1px solid var(--sage-100)}.delete-account-modal{text-align:left}.delete-account-modal h2{text-align:center}.delete-account-icon{background:#8c53531f}.delete-account-warning{color:var(--text-secondary)}.delete-account-checkbox{border-radius:var(--radius-md);background:var(--cream-100);color:var(--text-secondary);cursor:pointer;align-items:flex-start;gap:.65rem;margin:1rem 0;padding:.85rem;font-size:.9rem;display:flex}.delete-account-checkbox input{accent-color:var(--sage-500);margin-top:.2rem}.delete-account-note{color:var(--text-muted);font-size:.85rem;font-style:italic}.delete-account-error{color:#8c5353;margin-top:.5rem;font-size:.9rem}.pdf-upsell-backdrop{z-index:1100;background:#141c16ad;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.pdf-upsell-modal{border-radius:var(--radius-lg);background:var(--cream-50);border:1px solid var(--cream-300);width:min(100%,480px);box-shadow:var(--shadow-lg);text-align:center;padding:2rem 1.75rem 1.5rem;position:relative}.pdf-upsell-icon{background:var(--cream-200);border-radius:50%;place-items:center;width:3rem;height:3rem;margin:0 auto .75rem;font-size:1.5rem;display:grid}.pdf-upsell-modal h2{color:#4a6b53;font-family:var(--font-display);margin:.25rem 0 .75rem;font-size:1.7rem;line-height:1.25}.pdf-upsell-modal p{color:var(--text-secondary);font-size:.98rem;line-height:1.55}.pdf-upsell-close{width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:1.75rem;line-height:1;position:absolute;top:.65rem;right:.75rem}.pdf-upsell-actions{flex-direction:column;gap:.65rem;margin-top:1.5rem;display:flex}.pdf-upsell-actions .btn-primary{background:linear-gradient(135deg,#4a6b53,#3a5442)}.pdf-upsell-actions .btn{width:100%}.pdf-options-backdrop{z-index:1100;background:#141c16ad;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.pdf-options-modal{border-radius:var(--radius-lg);background:var(--cream-50);width:min(100%,540px);max-height:90vh;box-shadow:var(--shadow-lg);text-align:center;flex-direction:column;padding:2rem 1.5rem 1.5rem;display:flex;position:relative;overflow-y:auto}.pdf-option-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem;margin:1rem 0 0;display:grid}.pdf-tribute-selector-backdrop{z-index:1200;background:#141c16b8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.pdf-tribute-selector-modal{border-radius:var(--radius-lg);background:var(--cream-50);width:min(100%,430px);max-height:85vh;box-shadow:var(--shadow-lg);text-align:center;flex-direction:column;padding:2rem 1.5rem 1.5rem;display:flex;position:relative}.pdf-tribute-selector-list{text-align:left;flex-direction:column;gap:.65rem;max-height:min(35vh,260px);margin-top:1rem;display:flex;overflow-y:auto}.pdf-tribute-selector-item{border:1px solid var(--sage-200);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:#fff;align-items:flex-start;gap:.7rem;padding:.7rem .8rem;display:flex}.pdf-tribute-selector-item input{width:1rem;height:1rem;accent-color:var(--sage-700);margin-top:.25rem}.pdf-tribute-selector-item strong{color:var(--sage-800);display:block}.pdf-tribute-selector-item p,.pdf-tribute-empty{color:var(--text-secondary);margin:.25rem 0 0;font-size:.85rem;line-height:1.5}.pdf-tribute-selector-actions{justify-content:flex-end;margin-top:1rem;display:flex}.pdf-option-item{border:1px solid var(--sage-200);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:#fff;align-items:center;gap:.6rem;padding:.75rem .85rem;font-size:.96rem;display:flex}.pdf-option-item input{width:1rem;height:1rem;accent-color:var(--sage-700)}.pdf-option-actions{background:var(--cream-50);justify-content:flex-end;gap:.75rem;margin-top:1rem;padding-top:.5rem;display:flex;position:sticky;bottom:0}.pdf-option-actions .btn{min-width:150px}.pdf-tribute-panel{border-top:1px solid var(--sage-200);text-align:left;margin-top:1rem;padding-top:1rem}.pdf-tribute-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.pdf-tribute-header h3{color:var(--sage-800);margin:0;font-size:1rem}.pdf-tribute-list{flex-direction:column;gap:.65rem;max-height:min(30vh,220px);display:flex;overflow-y:auto}.pdf-tribute-item{border:1px solid var(--sage-200);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:#fff;align-items:flex-start;gap:.7rem;padding:.7rem .8rem;display:flex}.pdf-tribute-item input{width:1rem;height:1rem;accent-color:var(--sage-700);margin-top:.25rem}.pdf-tribute-item strong{color:var(--sage-800);display:block}.pdf-tribute-item p{margin:.25rem 0 0;font-size:.85rem;line-height:1.5}.detail-content{max-width:760px;margin:0 auto;padding:3rem 1.5rem}.detail-section{margin-bottom:3rem}.detail-section h2{font-family:var(--font-display);color:var(--sage-800);border-bottom:2px solid var(--sage-100);margin-bottom:1.25rem;padding-bottom:.75rem;font-size:1.75rem}.detail-bio{color:var(--text-secondary);white-space:pre-line;font-size:1.05rem;line-height:1.8}.detail-traits{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.trait-tag{background:var(--peach);color:#6b5a4a;border-radius:var(--radius-full);padding:.4rem .85rem;font-size:.85rem}.video-list{gap:1.5rem;display:grid}.video-player{margin:0}.video-frame{aspect-ratio:16/9;border-radius:var(--radius-md);background:var(--sage-800);position:relative;overflow:hidden}.video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.video-poster{cursor:pointer;width:100%;color:var(--cream-50);background:linear-gradient(135deg, var(--sage-700), var(--sage-900));font:inherit;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:absolute;inset:0}.video-play-icon{border-radius:var(--radius-full);background:var(--cream-50);width:64px;height:64px;color:var(--sage-800);box-shadow:var(--shadow-md);transition:transform var(--transition);justify-content:center;align-items:center;display:inline-flex}.video-poster:hover .video-play-icon,.video-poster:focus-visible .video-play-icon{transform:scale(1.08)}.video-poster-note{opacity:.9;font-size:.88rem}.video-player figcaption{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:.5rem;display:flex}.video-player figcaption a{color:var(--sage-700);font-size:.9rem}.video-pending-note{border-radius:var(--radius-md);background:var(--cream-100);color:var(--text-secondary);padding:.75rem 1rem}.video-manager h2.form-label{font-family:var(--font-body)}.video-manager .form-hint{margin-bottom:1rem;display:block}.video-manager-list{gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:grid}.video-manager-list li{border:1px solid var(--sage-100);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.video-manager-list li>div{overflow-wrap:anywhere;flex-direction:column;gap:.2rem;min-width:0;display:flex}.video-status{color:var(--text-muted);font-size:.82rem}.video-status.approved{color:var(--sage-700)}.video-status.rejected{color:#8a3d3d}.admin-video-list{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;padding:0;list-style:none;display:grid}.admin-video-meta{color:var(--text-secondary);font-size:.9rem}.admin-video-actions{gap:.5rem;margin-top:.75rem;display:flex}.candle-evening{text-align:center;background:var(--candle-light);border:1px solid var(--arc-gold);border-radius:var(--radius-lg);max-width:980px;color:var(--text-secondary);margin:0 auto 2rem;padding:1.25rem 1.5rem}.candle-evening h2{font-family:var(--font-display);color:var(--sage-800);margin:0 0 .4rem;font-size:1.6rem;font-weight:400}.candle-evening-count{color:var(--candle-ink)}.candle-evening.active{background:var(--night-700);border-color:var(--night-line);color:var(--night-text)}.candle-evening.active h2{color:var(--night-text)}.candle-evening.active .candle-evening-count{color:var(--candle)}.candle-evening p{margin:.25rem 0}.candle-evening-count{font-weight:600}.candle-evening-last{border-top:1px solid var(--arc-gold);margin-top:1rem;padding-top:.75rem}.candle-evening-last h3{font-family:var(--font-body);color:var(--candle-ink);margin:0;font-size:.95rem;font-weight:600}.candle-evening.active .candle-evening-last h3{color:var(--night-muted)}.site-counters{color:var(--text-secondary);font-size:.95rem}.hero-counters{margin-top:1rem}.ponte-counters{text-align:center;margin:-1.5rem auto 1.75rem}.ponte-night .ponte-counters{color:var(--night-muted)}.minimal-note{text-align:center;background:var(--cream-200);border-radius:var(--radius-lg);max-width:640px;color:var(--text-secondary);margin:0 auto 3rem;padding:1.5rem 1.75rem}.minimal-note p+p,.minimal-note p+.btn{margin-top:.75rem}.minimal-note-badge{font-size:1.6rem}.ponte-empty{text-align:center;max-width:560px;margin:0 auto;padding:1rem 0 2rem}.ponte-empty h2{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.5rem;font-size:1.5rem;font-weight:400}.ponte-empty p{color:var(--text-secondary);margin-bottom:1.5rem}.ponte-page{transition:background var(--transition), color var(--transition)}.ponte-night{background:var(--night-900);color:var(--night-text)}.ponte-night .section-title,.ponte-night .ponte-heading{color:var(--night-text)}.ponte-night .section-subtitle{color:var(--night-muted)}.ponte-night .ponte-row{background:var(--night-800);box-shadow:none}.ponte-night .ponte-row-name{color:var(--night-text)}.ponte-night .ponte-row-count{background:var(--night-700);color:var(--candle)}.ponte-night .ponte-row-perennials{color:var(--candle)}.ponte-night .ponte-row-out{color:var(--night-muted)}.ponte-night .ponte-row-tribute{border-left-color:var(--candle)}.ponte-night .ponte-row-tribute p,.ponte-night .ponte-row-empty,.ponte-night .ponte-row-meta{color:var(--night-muted)}.ponte-night .ponte-row-tribute footer{color:var(--night-text)}.ponte-night .ponte-row-empty a{color:var(--candle)}.ponte-night .ponte-empty h2{color:var(--night-text)}.ponte-night .ponte-empty p{color:var(--night-muted)}.ponte-night .ponte-empty .btn-secondary{color:var(--night-text);border-color:var(--night-line);background:0 0}.ponte-night .ponte-row-placeholder{background:var(--night-700)}.ponte-heading{max-width:980px;font-family:var(--font-display);color:var(--sage-800);margin:2rem auto 1rem;font-size:1.5rem}.candle-evening-note{color:#6b5a4a;max-width:460px;margin:0 auto 1rem;font-size:.95rem}.candle-section{text-align:center;border-radius:var(--radius-lg);background:linear-gradient(135deg,#fdf8ee,#f5ecd8);border:1px solid #e8d9b8;margin-bottom:3rem;padding:2rem}.candle-count{font-family:var(--font-display);color:#8b7355;margin-bottom:.25rem;font-size:2.5rem}.candle-label{color:#6b5a3e;margin-bottom:1.25rem;font-size:.95rem}.follow-box{flex-direction:column;align-items:center;gap:.5rem;margin-top:1.25rem;display:flex}.follow-box .btn{align-items:center;gap:.4rem;display:inline-flex}.follow-hint{color:var(--text-secondary);margin-top:1rem;font-size:.9rem}.follow-box .follow-hint{margin-top:0}.followers-details{color:var(--text-secondary);margin-top:1.25rem;font-size:.9rem}.followers-details summary{cursor:pointer;align-items:center;gap:.4rem;display:inline-flex}.followers-list{flex-wrap:wrap;justify-content:center;gap:.25rem 1rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.followers-since{color:var(--text-muted)}.comment-list{flex-direction:column;gap:1.25rem;margin-bottom:2.5rem;display:flex}.comment-card{border-radius:var(--radius-md);border:1px solid var(--sage-100);box-shadow:var(--shadow-sm);background:#fff;padding:1.25rem 1.5rem}.comment-header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.comment-icon{background:var(--cream-100);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;display:flex}.comment-author{color:var(--sage-800);font-weight:600}.comment-date{color:var(--text-muted);font-size:.8rem}.comment-message{color:var(--text-secondary);line-height:1.6}.tribute-chips{flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem;display:flex}.tribute-chip{border:1.5px solid var(--sage-200);border-radius:var(--radius-full);color:var(--text-secondary);font:inherit;cursor:pointer;transition:border-color var(--transition), background var(--transition);background:#fff;align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.9rem;display:inline-flex}.tribute-chip:hover{border-color:var(--sage-400)}.tribute-chip.selected{border-color:var(--sage-500);background:var(--sage-50);color:var(--sage-800);font-weight:600}.tribute-signature{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:1rem;margin:0 0 .75rem;font-size:.95rem;display:flex}.tribute-preview{border-radius:var(--radius-md);background:var(--cream-100);margin-bottom:1rem;padding:.85rem 1rem}.tribute-preview .comment-header{margin-bottom:.4rem}.tribute-preview .comment-message{white-space:pre-wrap;overflow-wrap:anywhere}.tribute-preview-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .4rem;font-size:.72rem}.tribute-submit{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem 1rem;display:flex}.tribute-submit .form-hint{flex:12rem;margin:0}.tribute-list-title{margin-top:2rem}.comment-form{border-radius:var(--radius-lg);border:1px solid var(--sage-100);box-shadow:var(--shadow-sm);background:#fff;padding:1.75rem}.comment-form h3{font-family:var(--font-display);color:var(--sage-800);margin-bottom:1rem;font-size:1.6rem}.lightbox{z-index:1000;background:#141c16eb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-img{object-fit:contain;border-radius:var(--radius-sm);max-width:90vw;max-height:85vh}.lightbox-close{color:#fff;cursor:pointer;opacity:.8;transition:opacity var(--transition);background:0 0;border:none;font-size:2.5rem;line-height:1;position:absolute;top:1.5rem;right:1.5rem}.lightbox-close:hover{opacity:1}.lightbox-prev,.lightbox-next{color:#fff;cursor:pointer;width:48px;height:48px;transition:background var(--transition);background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:2.5rem;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:1.5rem}.lightbox-next{right:1.5rem}.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff4d}.lightbox-counter{color:#fffc;font-size:.9rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.site-footer{background:var(--sage-900);color:var(--sage-200);margin-top:2rem;padding:3rem 0 2rem}.footer-inner{text-align:center;max-width:1200px;margin:0 auto;padding:0 1.5rem}.footer-logo{font-family:var(--font-display);color:var(--cream-100);justify-content:center;align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:1.35rem;display:flex}.footer-logo-icon{width:2.4rem;height:auto}.footer-text{color:var(--sage-300);max-width:480px;margin:0 auto 1.5rem;font-size:.9rem;line-height:1.6}.footer-copy{color:var(--sage-300);border-top:1px solid var(--sage-700);padding-top:1.5rem;font-size:.8rem}.toast{background:var(--sage-800);color:#fff;border-radius:var(--radius-full);box-shadow:var(--shadow-lg);z-index:2000;opacity:0;pointer-events:none;padding:.85rem 1.5rem;font-size:.9rem;transition:all .4s;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)translateY(100px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}@media (width<=1040px){.nav-links{top:var(--header-height);border-bottom:1px solid var(--sage-100);box-shadow:var(--shadow-md);background:#fff;flex-direction:column;padding:1rem 1.5rem 1.5rem;display:none;position:absolute;left:0;right:0}.nav-links.open{display:flex}.nav-user{border-left:none;border-top:1px solid var(--sage-100);padding-top:1rem;padding-left:0}.mobile-menu-btn{display:block}}@media (width>=1041px) and (width<=1479px){.nav-links .user-chip .badge-premium{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.user-chip.is-premium .user-avatar{border:2px solid #dcc596}}@media (width>=1041px) and (width<=1139px){.nav-links{gap:1rem}.nav-links>li.nav-user{flex:none;padding-left:1rem}.nav-links .user-name{display:none}.nav-links>li>a.user-chip{padding:.3rem}}@media (width>=1480px){.header-inner{max-width:1400px}}@media (width<=768px){:root{--btn-height:2.75rem}.pricing-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:1fr;gap:1.25rem}.form-row{grid-template-columns:minmax(0,1fr)}.memorial-sharing{padding:0 1rem}.profile-memorial-tools{flex-wrap:wrap;justify-content:center;gap:.5rem .75rem}.profile-share-inline{flex-wrap:wrap;justify-content:center}.profile-memorial-actions{flex-wrap:wrap;justify-content:center;display:flex}.profile-action-button{text-align:center;width:2.75rem;height:2.75rem;min-height:2.75rem}.profile-pdf-error{text-align:left}.sharing-panel{gap:.5rem}.sharing-actions{gap:.4rem}.share-button{width:2.25rem;height:2.25rem}.pdf-download-error{text-align:left}.privacy-options,.form-actions{flex-direction:column}.form-actions .btn{width:100%}.memorial-grid{grid-template-columns:minmax(0,1fr)}.hero{padding:3rem 0 2.5rem}.section{padding:2.5rem 0}}.inline-error{color:#8a3d3d;margin:.75rem 0;font-size:.9rem}.moderation-panel{background:var(--cream-50);border:1px solid var(--sage-200);border-radius:var(--radius-lg);margin-bottom:1.75rem;padding:1.25rem 1.5rem}.moderation-panel h3{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.75rem;font-size:1.25rem}.moderation-toggle{cursor:pointer;color:var(--sage-800);align-items:flex-start;gap:.75rem;display:flex}.moderation-toggle input{width:18px;height:18px;accent-color:var(--sage-600);cursor:pointer;flex:none;margin-top:.15rem}.moderation-toggle strong{font-weight:600;display:block}.moderation-pending{border-top:1px solid var(--sage-100);margin-top:1.25rem;padding-top:1.25rem}.moderation-pending h4{color:var(--sage-700);margin-bottom:.75rem;font-size:.95rem;font-weight:600}.moderation-pending .comment-list{margin-bottom:0}.moderation-panel>.form-hint{margin-top:1rem}.comment-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.comment-card-hidden{background:var(--cream-100);box-shadow:none;border-style:dashed}.comment-card-hidden .comment-message{color:var(--text-muted)}.comment-status.comment-status-reported{background:var(--peach);color:var(--text-primary)}.comment-report{color:var(--text-muted);margin-top:.5rem;font-size:.85rem}.comment-report-link{color:var(--text-muted);font-size:.85rem}.comment-report-done{color:var(--sage-700);margin:.5rem 0 0;font-size:.85rem}.comment-status{border-radius:var(--radius-full);background:var(--sage-100);color:var(--sage-700);white-space:nowrap;margin-left:auto;padding:.2rem .65rem;font-size:.75rem}.comment-char-count{text-align:right}.comment-notice{border-radius:var(--radius-md);color:#35643d;background:#c4e0ca47;border:1px solid #5b856240;margin:.75rem 0;padding:.75rem 1rem;font-size:.9rem}.form-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.profile-pending-label{color:#8a6a2f;font-weight:600;text-decoration:none}.profile-pending-label:hover{text-decoration:underline}.verify-banner{background:var(--cream-100);border-bottom:1px solid var(--sage-200);color:var(--sage-800);font-size:.92rem}.verify-banner-inner{align-items:center;gap:.75rem 1rem;max-width:1200px;margin:0 auto;padding:.6rem 1.5rem;display:flex}.verify-banner-text{overflow-wrap:anywhere;flex:1;min-width:0}.verify-banner-actions{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.verify-banner-close{border-radius:var(--radius-full);width:2rem;height:2rem;color:var(--sage-700);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:1.3rem;line-height:1}.verify-banner-close:hover,.verify-banner-close:focus-visible{background:var(--sage-100)}.verify-banner .btn:focus-visible,.verify-banner-close:focus-visible,.verify-actions .btn:focus-visible{outline:2px solid var(--sage-600);outline-offset:2px}.verify-feedback{color:var(--sage-700);font-size:.88rem}.verify-feedback:empty{display:none}.verify-feedback.is-error{color:#8a3d3d}.verify-loading{text-align:center}.verify-actions{text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin-top:1.25rem;display:flex}@media (width<=768px){.verify-banner-inner{flex-wrap:wrap;padding:.6rem 1rem}.verify-banner-text{flex-basis:calc(100% - 3rem)}.verify-banner-close{order:1}.verify-banner-actions{order:2;width:100%}}.ponte-wall{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:1rem;max-width:980px;margin:0 auto;padding:0;list-style:none;display:grid}.ponte-row{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:1rem;padding:1rem;display:grid}.ponte-row-photo img,.ponte-row-placeholder{object-fit:cover;background:var(--sage-100);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:2rem;display:flex}.ponte-row-top{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.ponte-row-name{font-family:var(--font-display);color:var(--sage-800);overflow-wrap:anywhere;font-size:1.4rem;font-weight:600;text-decoration:none}.ponte-row-name:hover{text-decoration:underline}.ponte-row-count{border-radius:var(--radius-full);background:var(--sage-100);color:var(--sage-800);flex-shrink:0;padding:.1rem .6rem;font-size:.85rem;font-weight:600}.ponte-row-tribute{border-left:3px solid var(--peach);margin:.4rem 0 0;padding-left:.6rem}.ponte-row-tribute p{color:var(--text-secondary);overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-style:italic;line-height:1.45;display:-webkit-box;overflow:hidden}.ponte-row-tribute footer{color:var(--text-primary);margin-top:.2rem;font-size:.85rem;font-weight:600}.ponte-row-empty,.ponte-row-meta{color:var(--text-muted);margin:.4rem 0 0;font-size:.85rem}.ponte-row-empty a{color:var(--sage-600)}.detail-tabs{box-shadow:inset 0 -2px 0 var(--sage-100);gap:.5rem;margin-bottom:2rem;display:flex;overflow:auto hidden}.detail-tab{font:inherit;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;flex:none;padding:.75rem 1.25rem;font-weight:600}.detail-tab[aria-selected=true]{color:var(--sage-800);border-bottom-color:var(--arc-gold)}.diary-form{background:var(--white,#fff);border-radius:12px;margin-bottom:2rem;padding:1.25rem;box-shadow:0 1px 6px #00000014}.diary-form-actions,.diary-actions{flex-wrap:wrap;gap:.5rem;display:flex}.diary-form-image{align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.diary-form-image img{object-fit:cover;border-radius:8px;width:96px;height:96px}.diary-list{border-left:2px solid var(--sage-100);margin:0;padding:0 0 0 1.25rem;list-style:none}.diary-entry{margin-bottom:2rem;position:relative}.diary-entry:before{content:"";background:var(--sage-800);border-radius:50%;width:10px;height:10px;position:absolute;top:.35rem;left:calc(-1.25rem - 6px)}.diary-date{color:var(--text-secondary);font-size:.85rem;display:block}.diary-title{font-family:var(--font-display);color:var(--sage-800);margin:.25rem 0}.diary-body{white-space:pre-wrap;margin:.5rem 0;line-height:1.7}.diary-image{cursor:zoom-in;background:0 0;border:none;margin:.75rem 0;padding:0;display:block}.diary-image img{border-radius:12px;max-width:100%;max-height:320px}.gift-list{flex-direction:column;gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.draft-notice,.draft-panel,.draft-card{border:1.5px solid var(--arc-gold);border-radius:var(--radius-md);background:var(--candle-light);color:var(--candle-ink);padding:1rem 1.25rem;line-height:1.5}.draft-notice{margin-bottom:1.25rem}.draft-notice p,.draft-panel p,.draft-card p{margin:0 0 .6rem}.draft-notice-title{font-weight:600}.draft-panel{max-width:640px;margin:1.5rem auto}.draft-panel .draft-notice{background:0 0;border:0;margin-bottom:0;padding:0}.draft-badge{font-size:1.6rem}.draft-card{text-align:left;margin:1.5rem 0}.draft-card h2{margin:0 0 .5rem;font-size:1.15rem}.draft-actions,.draft-confirm{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.draft-confirm{margin-top:.75rem}.draft-confirm p{flex-basis:100%;margin:0}.draft-story{white-space:pre-wrap;max-width:640px;color:var(--text-primary);margin:0 auto}.auth-success .draft-notice{text-align:left}.qr-plaque-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:1.25rem 0 .6rem;font-size:.75rem}.qr-plaque-buttons{justify-content:center;gap:.6rem;display:flex}.qr-plaque-btn{gap:.45rem;min-width:6.5rem;padding:.5rem 1rem}.qr-plaque-hint{color:var(--text-muted);margin:.6rem 0 0;font-size:.8rem}.expiry-notice{border:1.5px solid var(--peach);border-radius:var(--radius-md);background:var(--cream-100);padding:1rem 1.25rem}.expiry-notice p{color:var(--text-secondary);margin:0 0 .75rem;line-height:1.5}.expiry-notice .expiry-notice-title{color:var(--text-primary);margin-bottom:.25rem;font-weight:600}.profile-expiry-label{color:var(--text-primary)}.profile-expiry-label a{color:var(--sage-700);font-weight:600}.gift-invite{border:1px solid var(--lavender);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--cream-50), var(--cream-100));text-align:left;max-width:460px;margin:1rem auto 0;padding:1rem 2.25rem 1rem 1.25rem;position:relative}.gift-invite p{color:var(--text-secondary);margin:0 0 .6rem;font-size:.92rem;line-height:1.45}.gift-invite .gift-invite-title{color:var(--text-primary);margin-bottom:.25rem;font-weight:600}.gift-invite-link{color:var(--sage-700);font-weight:600;text-decoration:none}.gift-invite-link:hover{text-decoration:underline}.gift-invite-close{color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:1.25rem;line-height:1;position:absolute;top:.4rem;right:.6rem}.contribution{text-align:left;margin:.25rem 0 1rem}.contribution-question{color:var(--text-primary);margin:0 0 .5rem;font-weight:600}.contribution-options{flex-wrap:wrap;gap:.4rem;display:flex}.contribution .form-hint{margin:.4rem 0 0}.contribution-summary{margin:.75rem 0 0}.contribution-summary div{color:var(--text-secondary);justify-content:space-between;padding:.2rem 0;display:flex}.contribution-summary dd{color:var(--text-primary);margin:0;font-weight:600}.contribution-summary .contribution-total{border-top:1px solid var(--sage-100);color:var(--sage-800);margin-top:.35rem;padding-top:.5rem;font-weight:700}.support-page{max-width:560px}.support-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;margin-bottom:1rem;padding:1.25rem 1.5rem}.support-card h2{font-family:var(--font-display);color:var(--sage-800);margin:0 0 .6rem;font-size:1.4rem}.support-card ul{color:var(--text-secondary);margin:0;padding-left:1.2rem;line-height:1.7}.support-amounts{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-bottom:.9rem;display:grid}.support-amount{border:1.5px solid var(--sage-200);border-radius:var(--radius-md);color:var(--sage-800);font:inherit;cursor:pointer;background:#fff;padding:.65rem 0;font-weight:600}.support-amount.selected{border-color:var(--sage-500);background:var(--sage-50)}.support-donate{text-align:center;width:100%;display:block}.support-custom{margin:0 0 1rem}.support-thanks{text-align:center}.support-note{text-align:center;color:var(--text-muted);margin:.75rem 0 0;font-size:.85rem;line-height:1.5}.support-note a{color:var(--sage-700)}.support-note a,.form-hint a,.section-subtitle a,.ponte-row-empty a,.empty-state p a{text-underline-offset:3px;text-decoration:underline}.legal-page{max-width:860px;color:var(--text-secondary);line-height:1.7}.legal-page h2{font-family:var(--font-display);color:var(--sage-800);margin:2rem 0 .75rem;font-size:1.5rem}.legal-page ul{margin:.5rem 0;padding-left:1.25rem}.legal-page a{color:var(--sage-700);text-decoration:underline}.guide-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:1.25rem;max-width:980px;display:grid}.guide-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition);background:#fff;padding:1.5rem;text-decoration:none;display:block}.guide-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.guide-card h2{font-family:var(--font-display);color:var(--sage-800);margin:0 0 .5rem;font-size:1.45rem}.guide-card p{color:var(--text-secondary);margin:0 0 .75rem;line-height:1.55}.guide-card-more{color:var(--sage-600);font-weight:600}.guide-breadcrumb{margin:0 0 .5rem;font-size:.9rem}.guide-breadcrumb a{color:var(--sage-600)}.guide-article{max-width:720px;font-size:1.05rem}.guide-article p{margin:0 0 1rem}.guide-intro{color:var(--text-primary);font-size:1.15rem}.guide-poem{border-radius:var(--radius-md);background:var(--cream-50);border:1px solid var(--cream-300);gap:1rem;margin:1.5rem 0;padding:1.25rem 1.5rem;display:grid}.guide-article .guide-poem p{font-family:var(--font-display);color:var(--text-primary);margin:0;font-size:1.1rem;font-style:italic;line-height:1.6}.guide-poem-line{text-indent:-1.25em;padding-left:1.25em;display:block}@media (width<=600px){.guide-poem{padding:1rem 1.1rem}.guide-article .guide-poem p{font-size:1rem}}.guide-cta{border-radius:var(--radius-lg);background:var(--sage-50);border:1px solid var(--sage-100);text-align:center;margin:2.5rem 0;padding:1.5rem}.guide-cta p{margin:0 0 1rem}.guide-cta .guide-cta-title{font-family:var(--font-display);color:var(--sage-800);margin-bottom:.4rem;font-size:1.5rem}.guide-cta .btn{color:#fff;text-decoration:none}.guide-others ul{padding:0;list-style:none}.guide-others li{margin:.4rem 0}.footer-guides{margin-bottom:.5rem}.legal-table-wrap{margin:1rem 0;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;font-size:.9rem}.legal-table th,.legal-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--cream-300);padding:.6rem .75rem}.legal-table th{background:var(--cream-100);color:var(--text-primary)}.footer-support{margin:0 0 .75rem;font-size:.95rem}.footer-support a{color:var(--sage-200);font-weight:600}.footer-links{justify-content:center;gap:1.5rem;margin-bottom:1.25rem;font-size:.9rem;display:flex}.footer-links a{color:var(--sage-300);text-decoration:underline}.footer-links a:hover{color:var(--cream-50)}.auth-privacy-note{text-align:center;color:var(--text-muted);margin-top:1rem;font-size:.85rem}.auth-privacy-note a{color:var(--sage-700);text-decoration:underline}.guide-list-home{text-align:left;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));max-width:1080px;margin:0 auto}.guide-card h3{font-family:var(--font-display);color:var(--sage-800);margin:0 0 .5rem;font-size:1.3rem}.guide-hint{text-align:center;max-width:640px;color:var(--text-secondary);margin:1.5rem auto 0}.guide-hint a{color:var(--sage-700);font-weight:600}.form-group .guide-hint{text-align:left;max-width:none;margin:.4rem 0 0;font-size:.92rem}.ponte-night .guide-hint{color:var(--night-muted)}.ponte-night .guide-hint a{color:var(--night-text)}.memorial-results{margin-top:2rem}.memorial-results-status{text-align:center;color:var(--text-muted);margin-bottom:1.25rem}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:2.5rem;display:flex}.pagination-info{color:var(--text-secondary)}.section-more{text-align:center;margin-top:2rem}.pricing-gift-action{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.gift-choices{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:900px;margin:2rem auto 0;display:grid}.gift-choices .pricing-info{max-width:none;margin:0}.verify-gate-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin:1.5rem 0;display:flex}.verify-gate-actions .verify-feedback{text-align:center;flex-basis:100%}.link-button{color:var(--sage-700);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.link-button:hover{color:var(--sage-900)}.social-login{margin-bottom:1.25rem}.social-buttons{flex-direction:column;gap:.6rem;display:flex}.social-btn{border-radius:var(--radius-full);border:1px solid var(--sage-200);min-height:46px;color:var(--text-primary);transition:var(--transition);background:#fff;justify-content:center;align-items:center;gap:.7rem;padding:.65rem 1rem;font-size:.95rem;font-weight:600;text-decoration:none;display:flex}.social-btn:hover,.social-btn:focus-visible{border-color:var(--sage-400);box-shadow:var(--shadow-sm)}.social-btn-google svg{color:#4285f4}.social-btn-facebook{color:#fff;background:#1565d8;border-color:#1565d8}.social-btn-facebook:hover,.social-btn-facebook:focus-visible{background:#1257b8;border-color:#1257b8}.social-divider{color:var(--text-muted);align-items:center;gap:.75rem;margin:1.25rem 0 0;font-size:.85rem;display:flex}.social-divider:before,.social-divider:after{content:"";background:var(--cream-300);flex:1;height:1px}.profile-summary{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem 2rem;margin:1.25rem 0 .5rem;display:grid}.profile-summary dt{color:var(--text-muted);margin-bottom:.2rem;font-size:.8rem}.profile-summary dd{color:var(--text-primary);overflow-wrap:anywhere;margin:0}.profile-unlink{flex-wrap:wrap;gap:.5rem 1rem;margin-top:.75rem;display:flex}.profile-badge{border-radius:var(--radius-full);background:var(--peach);color:var(--text-primary);padding:.1rem .6rem;font-size:.8rem;display:inline-block}.profile-badge.is-ok{background:var(--sage-100);color:var(--sage-800)}.profile-external-note{border-radius:var(--radius-md);background:var(--sky);color:var(--text-primary);margin-top:1.25rem;padding:.9rem 1rem;font-size:.95rem}.profile-forms{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:1.5rem;display:grid}.profile-form-title{margin-bottom:1rem;font-size:1.25rem}.profile-feedback{margin-top:1rem;margin-bottom:0}.memorial-gift{border:1px solid var(--lavender);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--cream-50), var(--cream-100));text-align:left;max-width:460px;margin:1rem auto 0;padding:1rem 1.25rem}.memorial-gift p{color:var(--text-secondary);margin:0 0 .75rem;font-size:.92rem;line-height:1.45}.memorial-gift .memorial-gift-title{color:var(--text-primary);margin-bottom:.25rem;font-weight:600}.memorial-gift-who{border:1px solid var(--sage-100);border-radius:var(--radius-md);background:var(--cream-50);align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem;display:flex}.memorial-gift-who strong{color:var(--text-primary);display:block}.memorial-gift-who span{color:var(--text-muted);font-size:.88rem}.memorial-gift-photo{border-radius:var(--radius-full);object-fit:cover;background:var(--peach);flex:none;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.5rem;display:flex}.memorial-gift-explain{color:var(--text-secondary);margin:0 0 1rem;font-size:.92rem;line-height:1.5}.memorial-gift-total{border-top:1px solid var(--sage-100);color:var(--text-primary);justify-content:space-between;margin:.5rem 0 0;padding-top:.75rem;display:flex}.admin-stats h1{font-family:var(--font-display);color:var(--text-primary);margin:0;font-size:2.2rem}.admin-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-muted{color:var(--text-muted);margin:.15rem 0 .75rem;font-size:.88rem}.admin-note{margin:.75rem 0 0}.admin-periods{border:1.5px solid var(--sage-200);border-radius:var(--radius-full);display:flex;overflow:hidden}.admin-periods button{font:inherit;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;padding:.45rem .9rem;font-size:.9rem}.admin-periods button.active{background:var(--sage-600);color:#fff;font-weight:600}.admin-tiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.admin-tile,.admin-card{border:1px solid var(--sage-100);border-radius:var(--radius-md);background:#fff;padding:1rem 1.1rem}.admin-tile-label{color:var(--text-secondary);font-size:.88rem;display:block}.admin-tile strong{font-family:var(--font-display);color:var(--text-primary);margin:.1rem 0;font-size:2rem;display:block}.admin-delta{color:var(--text-muted);font-size:.82rem}.admin-delta.up{color:var(--sage-700);font-weight:600}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;display:grid}.admin-card h2{color:var(--text-primary);margin:0;font-size:1.05rem}.admin-bars{align-items:stretch;gap:.5rem;height:180px;padding-top:.5rem;display:flex}.admin-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:0;display:flex}.admin-bar{background:var(--sage-500);border-radius:4px 4px 0 0;width:100%;min-height:2px}.admin-bar.current{background:var(--sage-700)}.admin-bar-col:hover .admin-bar{background:var(--sage-600)}.admin-bar-value{color:var(--text-secondary);margin-bottom:.2rem;font-size:.78rem}.admin-bar-label{border-top:1px solid var(--sage-200);text-align:center;width:100%;color:var(--text-muted);white-space:nowrap;margin-top:.3rem;padding-top:.3rem;font-size:.72rem}.admin-funnel{margin:0}.admin-funnel-row{grid-template-columns:9rem 1fr 5.5rem;align-items:center;gap:.6rem;margin:.55rem 0;font-size:.9rem;display:grid}.admin-funnel-row dt{color:var(--text-secondary)}.admin-funnel-row dd{margin:0}.admin-track{background:var(--sage-50);border-radius:6px;height:12px}.admin-fill{background:var(--sage-500);border-radius:6px;min-width:4px;height:12px;display:block}.admin-funnel-value{text-align:right;color:var(--text-primary);font-weight:600}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table th,.admin-table td{border-bottom:1px solid var(--sage-50);text-align:left;color:var(--text-secondary);padding:.5rem .25rem;font-weight:400}.admin-table thead th{color:var(--text-muted);border-bottom-color:var(--sage-100);font-size:.8rem;font-weight:600}.admin-table tbody th{color:var(--text-primary);font-weight:600}.admin-table .num{text-align:right;font-variant-numeric:tabular-nums}.admin-table .admin-total th,.admin-table .admin-total td{color:var(--text-primary);font-weight:700}.admin-mini{background:var(--sage-400);vertical-align:middle;border-radius:4px;height:8px;margin-right:.4rem;display:inline-block}@media (width<=480px){.admin-funnel-row{grid-template-columns:7rem 1fr 4.5rem}}.invite-friends{border:1px solid var(--sage-200);border-radius:var(--radius-md);background:var(--sage-50);margin-top:1rem;padding:1.25rem;position:relative}.invite-friends h2{font-family:var(--font-display);color:var(--text-primary);margin:0 2rem .35rem 0;font-size:1.6rem;line-height:1.2}.invite-friends-hint{color:var(--text-secondary);margin:0 0 .75rem;font-size:.92rem;line-height:1.45}.invite-friends textarea{width:100%;min-height:120px}.invite-friends-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.invite-friends-actions .btn{align-items:center;gap:.4rem;display:inline-flex}.invite-friends-close{color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:1.4rem;line-height:1;position:absolute;top:.5rem;right:.75rem}.invite-friends-closed{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1.25rem;display:flex}.invite-friends-closed p{color:var(--text-secondary);margin:0}.support-public{margin:0 0 .75rem;font-size:.92rem}.support-donors ul{flex-wrap:wrap;gap:.4rem 1rem;padding:0;list-style:none;display:flex}.profile-donations{margin:0;padding:0;list-style:none}.profile-donations li{border-bottom:1px solid var(--sage-100);color:var(--text-secondary);flex-wrap:wrap;gap:.25rem .75rem;padding:.6rem 0;display:flex}.profile-donations strong{color:var(--text-primary)}.profile-donations-public{color:var(--text-muted);font-size:.88rem}.admin-donations{margin-top:1rem}.admin-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.admin-card-head .btn{align-items:center;gap:.35rem;display:inline-flex}.admin-donor-email{color:var(--text-muted);font-size:.8rem;font-weight:400;display:block}.candle-total{color:var(--text-muted);margin:-.75rem 0 1rem;font-size:.85rem}.burning-candle{flex-direction:column;justify-content:flex-end;align-items:center;width:22px;height:64px;margin:0 auto 1rem;display:flex;position:relative}.burning-candle-wax{background:linear-gradient(90deg, var(--cream-200), var(--cream-50), var(--cream-200));border:1px solid #d4c49a;border-radius:3px 3px 2px 2px;width:100%;transition:height 1s}.burning-candle-flame{transform-origin:50% 100%;background:radial-gradient(at 50% 70%,#fff3c4 0%,#f5c46b 55%,#f0a03c00 100%);border-radius:50%/65% 65% 35% 35%;width:10px;height:16px;margin-bottom:2px;animation:1.8s ease-in-out infinite candle-flicker}@keyframes candle-flicker{0%,to{opacity:.95;transform:scale(1)rotate(-2deg)}50%{opacity:1;transform:scale(.92,1.08)rotate(2deg)}}@media (prefers-reduced-motion:reduce){.burning-candle-flame{animation:none}}.ponte-row-out{color:var(--text-secondary);font-weight:400}.candle-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.candle-hint{color:#8b7355;margin:.6rem 0 0;font-size:.8rem}.btn-gold{color:#5a4416;background:linear-gradient(135deg,#f3dba0,#e2b95a);border-color:#d1a63f}.btn-gold:hover:not(:disabled){filter:brightness(1.04)}.gift-notice{border-radius:var(--radius-md);background:var(--sage-100);color:var(--sage-800);text-align:center;margin:0 0 1.5rem;padding:.75rem 1rem}.gift-notice-warn{background:var(--peach)}.gift-shelf{margin:0 0 3rem}.gift-shelf-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.75rem;display:flex}.gift-shelf-head h2{margin:0;font-size:1.5rem}.gift-shelf-head small{color:var(--text-muted);font-family:var(--font-body);font-size:.9rem;font-weight:400}.gift-shelf-more{cursor:pointer;color:var(--sage-600);font:600 .9rem var(--font-body);background:0 0;border:0;padding:0}.gift-shelf-more:hover{text-decoration:underline}.gift-shelf-empty,.gift-shelf-owner-note{color:var(--text-secondary);margin:0 0 .75rem;font-size:.92rem}.gift-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:.6rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.gift-card{background:var(--cream-50);border:1px solid var(--cream-300);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-sm);overflow-wrap:anywhere;flex-direction:column;align-items:center;padding:.75rem .5rem;display:flex}.gift-emoji{font-size:2rem;line-height:1.1}.gift-by{color:var(--text-secondary);margin-top:.3rem;font-size:.8rem}.gift-message{color:var(--text-muted);margin-top:.15rem;font-size:.74rem;font-style:italic}.gift-card.perennial{background:linear-gradient(#fffaf0,#fbf0d4);border-color:#e6cf93}.gift-card.perennial .gift-emoji{filter:drop-shadow(0 0 6px #f0b43c8c)}.gift-card.is-hidden{opacity:.55}.gift-badge{letter-spacing:.02em;color:#7a5d17;border-radius:var(--radius-full);background:#f7e6b3;margin-top:.3rem;padding:.05rem .5rem;font-size:.68rem;font-weight:600}.gift-hidden-note{color:var(--text-muted);margin-top:.3rem;font-size:.72rem}.gift-actions{flex-direction:column;gap:.2rem;margin-top:.4rem;display:flex}.gift-actions button{cursor:pointer;color:var(--sage-700);font:600 .74rem var(--font-body);background:0 0;border:0;padding:0;text-decoration:underline}.gift-modal-backdrop{z-index:1000;background:#2f403273;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.gift-modal{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:#fff;width:100%;max-width:640px;max-height:calc(100vh - 2rem);padding:1.4rem 1.4rem 1.2rem;overflow-y:auto}.gift-modal-grab{display:none}.gift-modal-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.gift-modal-head h2{margin:0;font-size:1.6rem}.gift-modal-head p{color:var(--text-secondary);margin:.2rem 0 0;font-size:.92rem}.gift-modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:0;font-size:1.6rem;line-height:1}.gift-cats{flex-wrap:wrap;gap:.4rem;margin:.9rem 0 .75rem;display:flex}.gift-cat{border-radius:var(--radius-full);border:1px solid var(--sage-200);background:var(--sage-50);color:var(--text-secondary);font:600 .9rem var(--font-body);cursor:pointer;padding:.4rem 1rem}.gift-cat.on{background:var(--sage-600);border-color:var(--sage-600);color:#fff}.gift-catalog{grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:.6rem;display:grid}.gift-item{border:1px solid var(--cream-300);border-radius:var(--radius-md);background:var(--cream-50);color:var(--text-primary);font-family:var(--font-body);cursor:pointer;flex-direction:column;align-items:center;padding:.7rem .4rem;display:flex}.gift-item-emoji{font-size:2.1rem;line-height:1.15}.gift-item b{margin-top:.2rem;font-size:.9rem}.gift-item-price{color:var(--sage-700);font-size:.92rem;font-weight:700}.gift-item small{color:var(--text-muted);margin-top:.1rem;font-size:.72rem;line-height:1.25}.gift-item.sel{border:2px solid var(--sage-500);background:var(--sage-50);box-shadow:var(--shadow-md)}.gift-fields{gap:.6rem;margin-top:1rem;display:grid}.gift-check{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.gift-count{text-align:right;color:var(--text-muted);font-size:.75rem;display:block}.gift-expiry{background:var(--peach);border-radius:var(--radius-sm);margin:.9rem 0 0;padding:.55rem .75rem;font-size:.86rem}.gift-expiry a{color:var(--sage-700);font-weight:600}.gift-summary{border-top:1px solid var(--cream-200);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;padding-top:.9rem;display:flex}.gift-total{font-family:var(--font-display);color:var(--sage-800);font-size:1.6rem}.gift-fine{color:var(--text-muted);margin:.7rem 0 0;font-size:.78rem}@media (width<=600px){.gift-modal-backdrop{align-items:flex-end;padding:0}.gift-modal{border-radius:20px 20px 0 0;max-width:none;max-height:90vh;padding:.75rem 1rem 1rem}.gift-modal-grab{background:var(--cream-300);border-radius:2px;width:42px;height:4px;margin:0 auto .6rem;display:block}.gift-modal-head h2{font-size:1.3rem}.gift-catalog{grid-template-columns:repeat(3,1fr);gap:.45rem}.gift-item-emoji{font-size:1.6rem}}.ponte-row-perennials{color:var(--candle-ink);margin-left:.5rem;font-size:.8rem;font-weight:600}.admin-links{flex-wrap:wrap;gap:.5rem;display:flex}.admin-gift-list{gap:.6rem;margin:1rem 0 1.5rem;padding:0;list-style:none;display:grid}.admin-gift-row{flex-wrap:wrap;align-items:flex-end;gap:.6rem;display:flex}.admin-gift-row.is-inactive{opacity:.6}.admin-gift-field{color:var(--text-muted);flex-direction:column;gap:.2rem;font-size:.78rem;display:flex}.admin-gift-emoji{width:4.5rem}.admin-gift-name{flex:10rem}.admin-gift-price{width:6rem}.admin-gift-order{width:4.5rem}.admin-gift-check{align-items:center;gap:.4rem;padding-bottom:.5rem;font-size:.88rem;display:flex}.admin-gift-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-gift-add-title{flex-basis:100%;margin:0;font-size:1.2rem}.admin-gift-hint{flex-basis:100%;margin:0}.gift-fields .form-group{margin:0}.gift-fields .form-textarea{min-height:4.5rem}@media (width<=600px){.gift-item small{display:none}.gift-summary{background:#fff;padding-bottom:.5rem;position:sticky;bottom:-1rem}}.admin-delete{flex-wrap:wrap;align-items:center;gap:.5rem;display:inline-flex}.admin-delete-bar{text-align:right;margin-top:1rem}.admin-deleted-list{gap:1rem;padding:0;list-style:none;display:grid}.admin-deleted-label{font-family:var(--font-display);overflow-wrap:anywhere;margin:.25rem 0}.admin-photo-list{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.admin-photo-list li{flex-direction:column;align-items:center;gap:.4rem;display:flex}.admin-photo-list img{object-fit:cover;border-radius:var(--radius-sm);width:5rem;height:5rem}.route-loading{text-align:center;color:var(--text-secondary);padding:4rem 1rem}
