.pet-portrait-gallery{max-width:1200px;margin:3rem auto;padding:2rem 1.25rem;color:inherit}.pet-portrait-gallery h2{font-size:clamp(1.8rem,4vw,2.8rem);margin:0 0 1rem}.pet-portrait-gallery p{font-size:1rem;line-height:1.65;max-width:700px}.pet-portrait-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem}.pet-portrait-grid figure{margin:0;min-width:0}.pet-portrait-grid img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;background:#f5f5f5;border-radius:8px}.pet-portrait-grid figcaption{font-size:1rem;padding:.85rem 0;line-height:1.5}.pet-portrait-gallery a:focus-visible{outline:3px solid #b98831;outline-offset:5px}.pet-portrait-gallery .portrait-inquiry{display:inline-block;margin-top:1rem;font-size:1rem;text-decoration:underline}@media(max-width:650px){.pet-portrait-grid{grid-template-columns:1fr}.pet-portrait-gallery{margin:1.5rem auto}}
.enhanced-portraits{margin-top:3rem;padding-top:2rem;border-top:1px solid #b9883155}.pet-portrait-gallery h3{font-size:clamp(1.35rem,3vw,1.8rem);margin:1.7rem 0 .75rem}.pet-portrait-gallery .portrait-eyebrow{font-size:.75rem;letter-spacing:.16em;font-weight:700}.pet-portrait-gallery .portrait-process{max-width:850px}.pet-portrait-grid figcaption span{display:block;font-size:.85rem;opacity:.8;margin-top:.2rem}.portrait-framed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portrait-framed-grid img{aspect-ratio:auto;background:transparent}.pet-portrait-grid a{display:block}.pet-portrait-grid a:hover img{box-shadow:0 5px 20px #0002}@media(max-width:650px){.portrait-framed-grid{grid-template-columns:1fr}}

.lovey-story{margin:2rem 0 3rem;padding:2rem clamp(1rem,3vw,2rem);background:#fbf7f0;color:#302b29;border:1px solid #d9c9af;border-radius:14px;scroll-margin-top:100px}.lovey-story .portrait-framed-grid img{aspect-ratio:3/4;object-fit:contain;background:#eee8df}.portrait-story-card{margin-top:2rem;padding-top:1rem;border-top:1px solid #d9c9af}.portrait-story-card form{max-width:720px}.portrait-story-card label{display:block;margin:1rem 0 .4rem;font-weight:600}.portrait-story-card input:not([type=checkbox]),.portrait-story-card textarea{display:block;box-sizing:border-box;width:100%;border:1px solid #8b8076;border-radius:6px;background:#fff;color:#302b29;padding:.8rem;font:inherit}.portrait-story-card textarea{resize:vertical}.portrait-story-card .story-consent{display:flex;align-items:flex-start;gap:.65rem;font-weight:400;line-height:1.5}.story-consent input{margin-top:.3rem;flex-shrink:0;width:20px;height:20px}.portrait-story-card .story-help{font-size:.9rem;overflow-wrap:anywhere}.portrait-story-card button{padding:.85rem 1.1rem;margin:.5rem .6rem .5rem 0;border:1px solid #594236;border-radius:6px;background:#594236;color:white;font:inherit;cursor:pointer;min-height:44px}.portrait-story-card button[type=button]{background:white;color:#594236}.portrait-story-card :focus-visible{outline:3px solid #986921;outline-offset:3px}#portrait-story-status{font-weight:600}.portrait-story-card a{text-decoration:underline}

.lovey-testimonial{margin:2rem 0;padding:1.5rem clamp(1rem,3vw,2rem);border-left:4px solid #986921;background:#fffdf8;border-radius:0 10px 10px 0}.lovey-testimonial blockquote{margin:0}.lovey-testimonial blockquote p{font-size:1.1rem;line-height:1.8;max-width:760px}.lovey-testimonial figcaption{margin-top:1rem;font-weight:600;color:#594236}

/* Lovey memorial presentation */
.lovey-story{background:linear-gradient(135deg,#fbf7ef,#eee3d2);border:1px solid #bca079;box-shadow:0 12px 35px #45332118}
.lovey-story>h3#lovey-title{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3.2rem);color:#523d2a}
.lovey-story>.portrait-framed-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);align-items:center;gap:clamp(1.5rem,4vw,3rem)}
.lovey-story .lovey-framed-portrait>a{padding:clamp(12px,2.5vw,28px);border:clamp(9px,1.4vw,16px) ridge #b99452;border-radius:3px;background:#fffaf0;box-shadow:0 15px 30px #3e2d2933,inset 0 0 0 2px #d4bd91;box-sizing:border-box}
.lovey-story .lovey-framed-portrait>a img{aspect-ratio:auto;height:auto;border-radius:0;background:#f7f1e7;box-shadow:0 0 0 1px #cbb99b}
.lovey-story .lovey-framed-portrait figcaption{text-align:center;padding-top:1.25rem}
.lovey-story .lovey-framed-portrait figcaption strong{font-family:Georgia,serif;font-size:1.5rem;color:#523d2a}
.lovey-story .lovey-testimonial{border:1px solid #cdb58f;border-top:3px solid #a58246;border-radius:8px;background:#fffaf2;padding:clamp(1.25rem,4vw,2.5rem)}
.lovey-story .lovey-testimonial blockquote p{font-family:Georgia,serif;font-size:clamp(1.1rem,2.5vw,1.35rem);line-height:1.8}
@media(max-width:650px){.lovey-story>.portrait-framed-grid{grid-template-columns:1fr}.lovey-story .lovey-framed-portrait>a{padding:15px;border-width:10px}}
