.py-article{background:var(--py-white)}.py-article__hero{background:var(--py-charcoal);width:100%;height:40vh;min-height:300px;max-height:500px;position:relative;overflow:hidden}.py-article__hero-image-wrapper{position:absolute;inset:0}.py-article__hero-image{object-fit:cover;width:100%;height:100%}.py-article__hero-overlay{background:linear-gradient(#0000 0%,#0000004d 100%);position:absolute;inset:0}.py-article__container{max-width:800px;padding:var(--py-space-10)var(--py-container-padding)var(--py-space-20);margin:0 auto}.py-article__breadcrumb{align-items:center;gap:var(--py-space-2);margin-bottom:var(--py-space-8);font-family:var(--font-body);font-size:var(--py-text-sm);flex-wrap:wrap;display:flex}.py-article__breadcrumb-link{color:var(--py-gray-500);transition:color var(--py-duration-fast)var(--py-ease-out);text-decoration:none}.py-article__breadcrumb-link:hover{color:var(--py-burgundy)}.py-article__breadcrumb-separator{color:var(--py-gray-300)}.py-article__breadcrumb-current{color:var(--py-charcoal);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-weight:500;overflow:hidden}.py-article__header{margin-bottom:var(--py-space-10);padding-bottom:var(--py-space-8);border-bottom:1px solid var(--py-gray-200)}.py-article__meta{align-items:center;gap:var(--py-space-6);margin-bottom:var(--py-space-4);display:flex}.py-article__date,.py-article__reading-time{align-items:center;gap:var(--py-space-2);font-family:var(--font-body);font-size:var(--py-text-sm);color:var(--py-gray-500);display:inline-flex}.py-article__date svg,.py-article__reading-time svg{color:var(--py-burgundy)}.py-article__title{font-family:var(--font-heading);font-size:clamp(var(--py-text-3xl),5vw,var(--py-text-5xl));color:var(--py-charcoal);margin-bottom:var(--py-space-4);font-weight:500;line-height:1.2}.py-article__subtitle{font-family:var(--font-body);font-size:var(--py-text-xl);color:var(--py-gray-600);line-height:1.6}.py-article__content{font-family:var(--font-body);font-size:var(--py-text-lg);color:var(--py-gray-700);line-height:1.8}.py-article__content h2{font-family:var(--font-heading);font-size:var(--py-text-2xl);color:var(--py-charcoal);margin-top:var(--py-space-10);margin-bottom:var(--py-space-4);font-weight:500}.py-article__content h3{font-family:var(--font-heading);font-size:var(--py-text-xl);color:var(--py-charcoal);margin-top:var(--py-space-8);margin-bottom:var(--py-space-3);font-weight:500}.py-article__content p{margin-bottom:var(--py-space-6)}.py-article__content a{color:var(--py-burgundy);text-underline-offset:2px;transition:color var(--py-duration-fast)var(--py-ease-out);text-decoration:underline}.py-article__content a:hover{color:var(--py-burgundy-dark)}.py-article__content ul,.py-article__content ol{margin-bottom:var(--py-space-6);padding-left:var(--py-space-6)}.py-article__content li{margin-bottom:var(--py-space-2)}.py-article__content blockquote{margin:var(--py-space-8)0;padding:var(--py-space-6)var(--py-space-8);background:var(--py-gray-50);border-left:4px solid var(--py-burgundy);color:var(--py-gray-600);font-style:italic}.py-article__content img{border-radius:var(--py-radius-lg);max-width:100%;height:auto;margin:var(--py-space-8)0}.py-article__content figure{margin:var(--py-space-8)0}.py-article__content figcaption{margin-top:var(--py-space-2);font-size:var(--py-text-sm);color:var(--py-gray-500);text-align:center}.py-article__back{margin-top:var(--py-space-12);padding-top:var(--py-space-8);border-top:1px solid var(--py-gray-200)}.py-article__back-link{align-items:center;gap:var(--py-space-2);font-family:var(--font-body);font-size:var(--py-text-base);color:var(--py-burgundy);transition:gap var(--py-duration-fast)var(--py-ease-out);font-weight:600;text-decoration:none;display:inline-flex}.py-article__back-link:hover{gap:var(--py-space-3)}.py-article__back-link svg{transition:transform var(--py-duration-fast)var(--py-ease-out)}.py-article__back-link:hover svg{transform:translate(-4px)}@media (min-width:768px){.py-article__hero{height:50vh;max-height:600px}.py-article__container{padding:var(--py-space-16)var(--py-container-padding)var(--py-space-24)}.py-article__breadcrumb-current{max-width:400px}}
