:root{--color-bg:#1a1a1a;--color-text:#fafafa;--color-text-muted:#b3b3b3;--color-ipc-red:#ef4444;--color-ipc-blue:#3b82f6;--color-ipc-green:#22c55e;--color-border:#262626;--color-card:#262626;--color-focus:var(--color-ipc-blue);--font-sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,"Cascadia Code","Source Code Pro",Menlo,monospace;--space:1rem;--space-lg:1.5rem;--space-xl:2rem;--radius:0;--card-radius:8px;--card-accent-width:4px;--max-width:70rem;--focus-width:2px}*,::after,::before{box-sizing:border-box}html{font-size:100%;scroll-padding-top:4rem}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}:focus{outline:0}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:2px}a:focus-visible,button:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:2px}.skip-link{position:absolute;top:-4rem;left:var(--space);z-index:100;padding:var(--space) var(--space-lg);background:var(--color-ipc-blue);color:var(--color-text);font-weight:700;text-decoration:none;border:0;border-radius:var(--radius);transition:top .2s ease}.skip-link:focus{top:var(--space);outline:var(--focus-width) solid var(--color-text);outline-offset:2px}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space);font-weight:700;line-height:1.25;color:var(--color-text)}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}p{margin:0 0 var(--space)}a{color:var(--color-ipc-blue);text-decoration:underline;text-underline-offset:2px}a:hover{color:var(--color-ipc-green)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.1rem;border-radius:var(--card-radius);border:2px solid transparent;background:var(--color-card);color:var(--color-text);text-decoration:none;font-weight:700;letter-spacing:.02em;transition:transform 80ms ease,background .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:2px}.btn--ipc-red{border-color:var(--color-ipc-red)}.btn--ipc-blue{border-color:var(--color-ipc-blue)}.btn--ipc-green{border-color:var(--color-ipc-green)}.btn--ipc-red:hover{background:rgba(239,68,68,.22)}.btn--ipc-blue:hover{background:rgba(59,130,246,.22)}.btn--ipc-green:hover{background:rgba(34,197,94,.22)}.wrapper{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-lg)}.site-header{position:sticky;top:0;z-index:50;background:var(--color-bg);border-bottom:3px solid var(--color-ipc-red)}.site-header__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-lg);min-height:4rem;padding:var(--space) 0}.logo{font-weight:700;font-size:1.25rem;color:var(--color-text);text-decoration:none;text-underline-offset:2px}.logo:hover{color:var(--color-ipc-green)}.logo img{display:block;height:2.5rem;width:auto}.nav-toggle{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:2.5rem;height:2.5rem;padding:.5rem;background:0 0;border:2px solid var(--color-text);border-radius:var(--radius);cursor:pointer}.nav-burger:focus-visible,.nav-burger:hover{border-color:var(--color-ipc-green);outline:0}.nav-burger__line{display:block;width:100%;height:2px;background:var(--color-text);transition:transform .2s ease,opacity .2s ease}.nav-toggle:checked~.nav-burger .nav-burger__line:first-child{transform:translateY(7px) rotate(45deg)}.nav-toggle:checked~.nav-burger .nav-burger__line:nth-child(2){opacity:0}.nav-toggle:checked~.nav-burger .nav-burger__line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav{display:flex;flex-wrap:wrap;gap:var(--space);list-style:none;margin:0;padding:0}.nav a{display:inline-block;padding:.5rem 0;color:var(--color-text);text-decoration:none;font-weight:500;border-bottom:2px solid transparent}.nav a:focus-visible,.nav a:hover{color:var(--color-ipc-green);border-bottom-color:var(--color-ipc-green)}@media (max-width:48em){.nav-burger{display:flex;order:2}.site-header__inner{position:relative}.nav-wrap{position:absolute;top:100%;left:0;right:0;max-height:0;overflow:hidden;opacity:0;background:var(--color-bg);border-bottom:3px solid var(--color-ipc-blue);transition:max-height .3s ease,opacity .2s ease;order:3;width:100%;z-index:40}.nav-toggle:checked~.nav-wrap{max-height:80vh;opacity:1;overflow-y:auto}.site-header .nav{flex-direction:column;align-items:stretch;gap:0;padding:var(--space) 0}.site-header .nav a,.site-header .nav span{display:block;padding:var(--space) var(--space-lg);border-bottom:1px solid var(--color-border)}.site-header .nav a:focus-visible,.site-header .nav a:hover{border-bottom-color:var(--color-border);background:var(--color-card)}.site-header .nav li ul{padding-left:var(--space-lg)}}@media (min-width:48.01em){.nav-burger{display:none!important}}main{padding:var(--space-xl) 0;min-height:50vh}.card{background:var(--color-card);color:var(--color-text);border-radius:var(--card-radius);padding:var(--space-lg);border-left:var(--card-accent-width) solid var(--color-ipc-red)}.card--red{border-left-color:var(--color-ipc-red)}.card--blue{border-left-color:var(--color-ipc-blue)}.card--green{border-left-color:var(--color-ipc-green)}.content-blocks{display:grid;gap:var(--space-xl);list-style:none;margin:0 0 var(--space-xl);padding:0}.content-blocks .card{margin:0}.content-blocks .card:nth-child(3n+1){border-left-color:var(--color-ipc-red)}.content-blocks .card:nth-child(3n+2){border-left-color:var(--color-ipc-blue)}.content-blocks .card:nth-child(3n+3){border-left-color:var(--color-ipc-green)}.feed{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-xl)}.feed__item{padding:0;border:0}.feed__item article{background:var(--color-card);color:var(--color-text);border-radius:var(--card-radius);padding:var(--space-lg);border-left:var(--card-accent-width) solid var(--color-ipc-red)}.feed__item:nth-child(3n+1) article{border-left-color:var(--color-ipc-red)}.feed__item:nth-child(3n+2) article{border-left-color:var(--color-ipc-blue)}.feed__item:nth-child(3n+3) article{border-left-color:var(--color-ipc-green)}.feed__item article{margin:0}.feed__title{margin-bottom:.5rem}.feed__title a{color:var(--color-text);text-decoration:none}.feed__title a:hover{color:var(--color-ipc-red)}.feed__meta{font-size:.875rem;color:var(--color-text-muted);margin-bottom:.5rem}.feed__meta a{color:var(--color-text-muted);text-decoration:none}.feed__meta a:hover{color:var(--color-ipc-blue)}.feed__readmore{display:inline-block;margin-top:var(--space);padding:.5rem 1rem;background:var(--color-ipc-red);color:var(--color-text);text-decoration:none;font-weight:600;border:0;border-radius:var(--radius)}.feed__readmore:hover{background:var(--color-ipc-green)}.hero--page{margin-bottom:var(--space-xl);padding:0 var(--space-lg);border-bottom:4px solid var(--color-ipc-blue)}.hero__figure{margin:0;line-height:0}.hero--page .hero__figure{margin:0 auto;max-width:var(--max-width);border-radius:var(--card-radius);overflow:hidden}.hero--page .hero__figure img{width:100%;height:auto;max-height:60vh;min-height:35vh;object-fit:cover;display:block;vertical-align:middle}.hero__caption{padding:var(--space) var(--space-lg);background:var(--color-card);color:var(--color-text-muted);font-size:.875rem;line-height:1.4;margin:0}.post__header{margin-bottom:var(--space-xl);padding-bottom:var(--space-xl);border-bottom:3px solid var(--color-ipc-green)}.post__title{margin-bottom:var(--space)}.post__content{max-width:50rem}.post__content img{max-width:100%;height:auto;vertical-align:middle}.entry ul,.post__content.entry ul,main .entry ul{margin:0 0 var(--space) 1.25rem;padding:0;list-style:disc}.entry ol,.post__content.entry ol,main .entry ol{margin:0 0 var(--space) 1.25rem;padding:0;list-style:decimal}.entry li,.post__content.entry li,main .entry li{margin-bottom:.35rem;color:var(--color-text)}.entry hr,.post__content.entry hr,main .entry hr{margin:var(--space-xl) 0;border:0;border-top:2px solid var(--color-border)}.entry strong,.post__content.entry strong,main .entry strong{font-weight:700;color:var(--color-text)}.entry h2,.post__content.entry h2,main .entry h2{margin-top:var(--space-xl);margin-bottom:var(--space);font-size:1.5rem;color:var(--color-text)}.entry h2:first-child,.post__content.entry h2:first-child,main .entry h2:first-child{margin-top:0}.entry h3,.post__content.entry h3,main .entry h3{margin-top:var(--space-lg);margin-bottom:.5rem;font-size:1.25rem;color:var(--color-text)}.site-footer{margin-top:var(--space-xl);padding:var(--space-xl) 0;border-top:3px solid var(--color-border);color:var(--color-text-muted);font-size:.875rem}.site-footer a{color:var(--color-text-muted)}.site-footer a:hover{color:var(--color-ipc-green)}.pagination{margin-top:var(--space-xl);display:flex;flex-wrap:wrap;gap:var(--space);justify-content:center;list-style:none;padding:0;margin-bottom:0}.pagination a,.pagination span{display:inline-block;padding:.5rem 1rem;background:var(--color-border);color:var(--color-text);text-decoration:none;border-radius:var(--radius)}.pagination a:hover{background:var(--color-ipc-blue);color:var(--color-text)}.pagination .current{background:var(--color-ipc-red);color:var(--color-text)}.feed--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--space-xl)}.feed--grid .feed__item,.feed--grid .feed__item article{background:var(--color-card);color:var(--color-text);border-radius:var(--card-radius);padding:var(--space-lg);border-left:var(--card-accent-width) solid var(--color-ipc-red)}.feed--grid .feed__item:nth-child(3n+1),.feed--grid .feed__item:nth-child(3n+1) article{border-left-color:var(--color-ipc-red)}.feed--grid .feed__item:nth-child(3n+2),.feed--grid .feed__item:nth-child(3n+2) article{border-left-color:var(--color-ipc-blue)}.feed--grid .feed__item:nth-child(3n+3),.feed--grid .feed__item:nth-child(3n+3) article{border-left-color:var(--color-ipc-green)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}