.vintage-letter{position:relative}.letter-paper{position:relative;background:linear-gradient(135deg,#fffef9,#fef8e8,#fdf6e3,#fef8e8,#fffef9);border-radius:.5rem;padding:2rem 1.5rem;box-shadow:0 1px 3px #0000000d,0 4px 12px #8b451314,inset 0 0 60px #fef3e280;border:1px solid #e8dcc8}@media(min-width:768px){.letter-paper{padding:1rem 2.5rem;border-radius:.75rem}}@media(min-width:1024px){.letter-paper{padding:1rem 3.5rem}}.letter-paper:before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none}.letter-paper:after{content:"";position:absolute;inset:1rem;border:1px solid transparent;border-image:linear-gradient(135deg,#d18510 0%,transparent 15%,transparent 85%,#d18510 100%) 1;pointer-events:none;opacity:.3}@media(min-width:768px){.letter-paper:after{inset:1.5rem}}.letter-content{position:relative;z-index:1;color:#1a202c}.letter-content p{color:#374151;line-height:1.8;margin-bottom:1.5rem}.letter-content strong{color:#111827;font-weight:600}.letter-content a{color:#b36f0a;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s ease}.letter-content a:hover{color:#d18510}.letter-content>p:first-of-type:first-letter{float:left;font-family:var(--font-serif, "Playfair Display", Georgia, serif);font-size:4.5rem;line-height:.75;padding-right:.75rem;padding-top:.5rem;color:#d18510;font-weight:700;text-shadow:2px 2px 4px rgba(139,69,19,.15)}.letter-content>p:first-of-type{font-size:1.125rem;line-height:1.9;color:#2d3748}.letter-content p em,.letter-content p strong,.letter-content p code{display:inline!important;float:none!important;position:static!important}@media(min-width:768px){.letter-content>p:first-of-type:first-letter{font-size:5.5rem;padding-right:1rem}.letter-content>p:first-of-type{font-size:1.25rem}}.letter-content h1{font-family:var(--font-serif, "Playfair Display", Georgia, serif);color:#0e0b05;font-weight:700;margin-top:1.5rem;margin-bottom:1.5rem}.letter-content h2{font-family:var(--font-serif, "Playfair Display", Georgia, serif);color:#0e0b05;font-weight:600;margin-top:1.25rem;margin-bottom:1.25rem;padding-bottom:.75rem;position:relative}.letter-content h2:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(to right,#d18510 0%,#f5d98c 30%,#f5d98c 70%,transparent 100%)}.letter-content h3{font-family:var(--font-serif, "Playfair Display", Georgia, serif);color:#0e0b05;font-weight:600;margin-top:1rem;margin-bottom:1rem;padding-left:1rem;border-left:3px solid #d18510}.letter-content h4{color:#1a202c;font-weight:600;margin-top:.75rem;margin-bottom:.75rem}.letter-content ul{list-style-type:none;padding-left:1.5em}.letter-content ul li{position:relative;color:#374151;margin-top:.5em;margin-bottom:.5em;padding-left:.5em}.letter-content ul li:before{content:"❧";position:absolute;left:-1.5em;color:#d18510;font-size:.875em}.letter-content ol{list-style-type:decimal;padding-left:1.5em}.letter-content ol li{color:#374151;margin-top:.5em;margin-bottom:.5em}.letter-content ol li::marker{color:#d18510;font-weight:600}.letter-content blockquote{position:relative;background:linear-gradient(135deg,#fef3e2,#f4f1e7);border:none;border-radius:0 1rem 1rem 0;padding:2rem 2rem 2rem 3.5rem;margin:2.5rem 0;font-style:normal;box-shadow:inset 4px 0 #d18510}.letter-content blockquote:before{content:"“";position:absolute;left:.75rem;top:.25rem;font-family:var(--font-serif, "Playfair Display", Georgia, serif);font-size:5rem;color:#d18510;opacity:.3;line-height:1}.letter-content blockquote p{font-family:var(--font-serif, "Playfair Display", Georgia, serif);font-size:1.125rem;font-style:italic;color:#1a202c;margin:0;line-height:1.7}.letter-content .callout{position:relative;padding:1.5rem 1.5rem 1.5rem 3.5rem;border-radius:.75rem;margin:2rem 0;border-left:4px solid;color:#1a202c}.letter-content .callout:before{position:absolute;left:1rem;top:1.5rem;font-size:1.25rem}.letter-content .callout-title{font-weight:600;margin-bottom:.5rem;font-family:var(--font-sans, "Be Vietnam Pro", sans-serif)}.letter-content .callout p{margin:0}.letter-content .callout-tip{background:linear-gradient(135deg,#fef3e2,#fdf8e8);border-color:#d18510}.letter-content .callout-tip:before{content:"💡"}.letter-content .callout-info{background:linear-gradient(135deg,#eff6ff,#f0f9ff);border-color:#3b82f6}.letter-content .callout-info:before{content:"ℹ️"}.letter-content .callout-warning{background:linear-gradient(135deg,#fff7ed,#fffaf0);border-color:#f97316}.letter-content .callout-warning:before{content:"⚠️"}.letter-content .callout-success{background:linear-gradient(135deg,#f0fdf4,#f5fdf8);border-color:#22c55e}.letter-content .callout-success:before{content:"✅"}.letter-content .pull-quote{font-family:var(--font-serif, "Playfair Display", Georgia, serif);font-size:1.375rem;font-weight:500;font-style:italic;text-align:center;color:#0e0b05;padding:2.5rem 1.5rem;margin:3rem 0;border-top:2px solid #d18510;border-bottom:2px solid #d18510;background:linear-gradient(135deg,#fef3e299,#f4f1e799);position:relative}.letter-content .pull-quote:before,.letter-content .pull-quote:after{content:"❦";position:absolute;color:#d18510;font-size:1.5rem;opacity:.5}.letter-content .pull-quote:before{top:-.75rem;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#fffef9,#fef8e8);padding:0 .75rem}.letter-content .pull-quote:after{bottom:-.75rem;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#fffef9,#fef8e8);padding:0 .75rem}@media(min-width:768px){.letter-content .pull-quote{font-size:1.5rem;padding:3rem 2.5rem;margin:3.5rem -1rem}}.letter-content img{border-radius:.5rem;box-shadow:0 4px 12px #00000014,0 1px 3px #0000000a;border:1px solid #e8dcc8}.letter-content figure{margin:2.5rem 0}.letter-content figure img{border-radius:.5rem}.letter-content figcaption{display:block;text-align:center;font-size:.875rem;color:#6b7280;margin-top:.75rem;font-style:italic;padding:0 1rem}.letter-content img+em,.letter-content p>em:only-child{display:block;text-align:center;font-size:.875rem;color:#6b7280;margin-top:.5rem}.letter-content code{background-color:#f4f1e7;padding:.2em .4em;border-radius:.25rem;font-size:.875em;color:#7a4a1f;border:1px solid #e8dcc8}.letter-content pre{background-color:#0e0b05;border-radius:.5rem;padding:1.5rem;overflow-x:auto;border:1px solid #2d3748}.letter-content pre code{background-color:transparent;padding:0;font-size:.875em;color:#f4f1e7;border:none}.letter-content hr{border:none;height:auto;margin:3rem auto;text-align:center;background:none}.letter-content hr:before{content:"❦❦❦";display:block;color:#d18510;font-size:1rem;letter-spacing:.5rem;opacity:.6}.letter-content table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.9375rem}.letter-content th{background:linear-gradient(135deg,#fef3e2,#f4f1e7);padding:.75rem 1rem;text-align:left;font-weight:600;color:#0e0b05;border-bottom:2px solid #d18510}.letter-content td{padding:.75rem 1rem;border-bottom:1px solid #e8dcc8;color:#374151}.letter-content tr:hover td{background-color:#fef3e24d}
