*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;box-sizing:border-box}@font-face{font-display:swap}html{overflow-x:hidden;overflow-y:auto;width:100%;position:relative;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;line-height:1.6;color:#333;letter-spacing:.3px;margin:0;padding:0;overflow-x:hidden;overflow-y:auto;width:100%;max-width:100vw;position:relative;min-height:100vh;display:flex;flex-direction:column}app-root{display:flex;flex-direction:column;min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;overflow-y:visible;position:relative}main{flex:1 0 auto;width:100%}app-footer{display:block;width:100%;flex-shrink:0;min-height:380px}@media (max-width: 992px){app-footer{min-height:450px}}@media (max-width: 768px){app-footer{min-height:580px}}app-header{display:block;width:100%}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.4;letter-spacing:.2px;margin-top:1.5em;margin-bottom:.75em}h1{font-size:2.5rem;font-weight:700}@media (max-width: 768px){h1{font-size:2rem}}h2{font-size:2rem}@media (max-width: 768px){h2{font-size:1.75rem}}h3{font-size:1.75rem}@media (max-width: 768px){h3{font-size:1.5rem}}h4{font-size:1.5rem}@media (max-width: 768px){h4{font-size:1.25rem}}h5{font-size:1.25rem}h6{font-size:1.1rem}p{font-size:1.05rem;line-height:1.75;margin-bottom:1em}@media (max-width: 768px){p{font-size:1rem;line-height:1.65}}li{font-size:1.05rem;line-height:1.75;margin-bottom:.5em}@media (max-width: 768px){li{font-size:1rem;line-height:1.65}}a{color:#667eea;text-decoration:none;transition:color .2s ease}a:hover{color:#764ba2;text-decoration:underline}button{font-family:inherit;font-size:1rem;letter-spacing:.3px}.content-section p,.content-section li,.section-content p,.section-content li{max-width:75ch}@media (max-width: 768px){*{max-width:100%}img,svg,video,canvas,iframe{max-width:100%!important;height:auto!important}pre,code{max-width:100%;overflow-x:auto;word-wrap:break-word;white-space:pre-wrap}table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}p,h1,h2,h3,h4,h5,h6,li,span,div{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.blog-container,.blog-post,.blog-content{max-width:100vw!important;overflow-x:hidden}}@media print{app-header,header,nav,footer{display:none!important}@page{margin:.5cm;size:landscape}*{overflow:visible!important}html,body{margin:0;padding:0;width:100%;height:auto;overflow:hidden!important}}
