/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.image{display:block;max-width:100%;height:auto;}
.rich-text-block{padding:1.5rem;margin:1rem 0;border-radius:8px;}.rich-text-block--bg-white{background-color:#ffffff;}.rich-text-block--bg-light-gray{background-color:#f5f5f5;}.rich-text-block--bg-light-blue{background-color:#e3f2fd;}.rich-text-block__title{margin:0 0 1rem 0;font-size:1.5rem;font-weight:600;color:#333;}.rich-text-block__content{line-height:1.6;color:#444;}.rich-text-block__content p{margin:0 0 1rem 0;}.rich-text-block__content p:last-child{margin-bottom:0;}.rich-text-block__content h3,.rich-text-block__content h4,.rich-text-block__content h5{margin:1.5rem 0 0.75rem 0;font-weight:600;}.rich-text-block__content ul,.rich-text-block__content ol{margin:0 0 1rem 1.5rem;padding:0;}.rich-text-block__content li{margin-bottom:0.5rem;}.rich-text-block__content a{color:#1976d2;text-decoration:underline;}.rich-text-block__content a:hover{color:#1565c0;}.rich-text-block__content blockquote{margin:1rem 0;padding:1rem 1.5rem;border-left:4px solid #1976d2;background-color:rgba(25,118,210,0.05);font-style:italic;}.rich-text-block__content img{max-width:100%;height:auto;}.rich-text-block__content table{width:100%;border-collapse:collapse;margin:1rem 0;}.rich-text-block__content th,.rich-text-block__content td{padding:0.75rem;border:1px solid #ddd;text-align:left;}.rich-text-block__content th{background-color:#f5f5f5;font-weight:600;}.rich-text-block__footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e0e0e0;}
.view-memories-page .views-view-responsive-grid__item-inner{height:100%;}.memory-card{display:flex;flex-direction:column;height:100%;background:var(--card,#fff);color:var(--card-foreground,#1f2937);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius,0.5rem);overflow:hidden;box-shadow:var(--shadow-sm,0 1px 3px rgba(0,0,0,.08));transition:box-shadow 0.2s ease,transform 0.2s ease;height:100%;}.memory-card:hover{box-shadow:var(--shadow-md,0 4px 8px rgba(0,0,0,.12));transform:translateY(-2px);}.memory-card__image-link{display:block;overflow:hidden;flex-shrink:0;}.memory-card__image{position:relative;height:200px;overflow:hidden;background:var(--muted,#f3f4f6);}.memory-card__image .field > .field__item + .field__item{display:none;}.memory-card__image img,.memory-card__image article,.memory-card__image .media{width:100%;height:100%;}.memory-card__image img{object-fit:cover;object-position:center;display:block;}.memory-card__image--placeholder{background:linear-gradient(135deg,var(--muted,#f3f4f6) 0%,var(--accent,#e8ecf5) 100%);}.memory-card__image--placeholder::after{content:"✦";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--border,#d1d5db);}.memory-card__body{display:flex;flex-direction:column;flex:1;padding:1.25rem 1.375rem 1.375rem;gap:0.5rem;}.memory-card__title{margin:0;font-family:var(--font-sans,"Outfit",sans-serif);font-size:1.0625rem;font-weight:700;line-height:1.3;color:var(--foreground,#111827);}.memory-card__title-link{color:inherit;text-decoration:none;}.memory-card__title-link:hover{color:var(--primary,#4f46e5);}.memory-card__summary{flex:1;font-family:var(--font-body,"Inter",sans-serif);font-size:0.9rem;line-height:1.65;color:var(--muted-foreground,#6b7280);margin:0;}.memory-card__summary p,.memory-card__summary .field__item{margin:0;}.memory-card__byline{display:flex;align-items:center;flex-wrap:wrap;gap:0.25rem;margin:0;font-family:var(--font-body,"Inter",sans-serif);font-size:0.8125rem;color:var(--muted-foreground,#6b7280);}.memory-card__author{font-weight:600;color:var(--foreground,#1f2937);}.memory-card__byline-sep{opacity:0.5;}.memory-card__relationship{font-style:italic;}.memory-card__footer{padding-top:0.5rem;margin-top:auto;}.memory-card__cta{display:inline-flex;align-items:center;gap:0.375rem;padding:0.45rem 1rem;background:var(--primary,#4f46e5);color:var(--primary-foreground,#fff);border-radius:var(--radius,0.5rem);font-family:var(--font-body,"Inter",sans-serif);font-size:0.8125rem;font-weight:600;text-decoration:none;letter-spacing:0.01em;transition:opacity 0.15s ease,background 0.15s ease;}.memory-card__cta:hover{opacity:0.88;}.memory-card__cta-arrow{font-size:1em;transition:transform 0.15s ease;}.memory-card__cta:hover .memory-card__cta-arrow{transform:translateX(3px);}.memory-full{max-width:52rem;margin:0 auto;padding:1.5rem 1rem 4rem;}.memory-full__back{margin-bottom:1.5rem;}.memory-full__back-link{display:inline-flex;align-items:center;gap:0.375rem;font-family:var(--font-body,"Inter",sans-serif);font-size:0.875rem;font-weight:500;color:var(--primary,#4f46e5);text-decoration:none;}.memory-full__back-link:hover{text-decoration:underline;}.memory-full__image{float:right;clear:right;width:42%;margin:0 0 1.5rem 2rem;border-radius:var(--radius,0.5rem);overflow:hidden;box-shadow:var(--shadow-md,0 4px 8px rgba(0,0,0,.12));}.memory-full__image img{width:100%;height:auto;display:block;object-fit:cover;}.memory-full__image .field{display:flex;flex-direction:column;gap:0.25rem;}.memory-full__image .field > .field__item img{width:100%;height:200px;object-fit:cover;display:block;}.memory-full__header{margin-bottom:1.75rem;}.memory-full__title{font-family:var(--font-sans,"Outfit",sans-serif);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.15;color:var(--foreground,#111827);margin:0 0 0.75rem;}.memory-full__byline{display:flex;align-items:center;flex-wrap:wrap;gap:0.625rem;}.memory-full__author{font-family:var(--font-body,"Inter",sans-serif);font-size:1rem;font-weight:600;color:var(--foreground,#1f2937);}.memory-full__relationship-badge{display:inline-block;padding:0.2rem 0.7rem;background:var(--accent,#eff0ff);color:var(--accent-foreground,var(--foreground));border:1px solid var(--border,#e5e7eb);border-radius:999px;font-family:var(--font-body,"Inter",sans-serif);font-size:0.8rem;font-style:italic;}.memory-full__content{font-family:var(--font-body,"Inter",sans-serif);font-size:1.0625rem;line-height:1.8;color:var(--foreground,#1f2937);border-top:1px solid var(--border,#e5e7eb);padding-top:1.75rem;}.memory-full__content p{margin:0 0 1.25em;}.memory-full__content p:last-child{margin-bottom:0;}.memory-full__content::after{content:'';display:table;clear:both;}@media (max-width:640px){.memory-full{padding:1rem 0.75rem 3rem;}.memory-full__image{float:none;width:100%;margin:0 0 1.25rem;}}
