/* PKG conference refresh: preserve the dark/teal identity, lead with business outcomes. */
html { font-size:100%; scroll-padding-top:1.5rem; }
body { overflow-wrap:break-word; }
.pkg-skip { position:absolute; left:1rem; top:-6rem; z-index:20; padding:0.8rem 1rem; background:var(--accent); color:var(--bg-base); }
.pkg-skip:focus { top:1rem; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
.site-nav { gap:2rem; flex-wrap:wrap; }
.site-nav .logo { flex-shrink:0; }
.site-nav .nav-links { flex-wrap:wrap; gap:0.5rem 1.5rem; }
.site-nav .nav-links a { display:inline-flex; align-items:center; min-height:2.75rem; font-size:0.9375rem; }
.site-nav .nav-links .pkg-nav-contact { color:var(--accent); }
.site-footer { padding-bottom:7rem; }
.site-footer .footer-links { flex-wrap:wrap; gap:1rem 1.5rem; }
.site-footer .footer-links a { font-size:0.875rem; }
.container,.article,.article-layout,.card { min-width:0; }
.article-layout { width:100%; }
.article h1 { font-size:clamp(2rem,4vw,3.25rem); overflow-wrap:anywhere; }
.article h2 { font-size:clamp(1.5rem,3vw,2rem); }
.article p,.article li { font-size:1.0625rem; }
.article table { display:block; max-width:100%; overflow-x:auto; }
.article table td,.article table th { white-space:normal; overflow-wrap:anywhere; }
.card-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr)); }
.btn { white-space:normal; text-align:center; }
.flysheet-links { flex-wrap:wrap; }
.pkg-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:4rem; padding-top:5rem; padding-bottom:5rem; align-items:center; }
.pkg-kicker { color:var(--accent); font:500 0.8125rem/1.5 var(--font-mono); letter-spacing:0.1em; text-transform:uppercase; margin-bottom:1.25rem; }
.pkg-hero h1 { font-size:clamp(2.5rem,4.6vw,4rem); line-height:1.08; letter-spacing:-0.045em; margin:0 0 1.75rem; }
.pkg-hero h1 em { color:var(--accent); font-style:normal; }
.pkg-lede { font-size:1.375rem; line-height:1.55; color:var(--text-primary); margin-bottom:1.25rem; }
.pkg-hero-note { font-size:1.0625rem; color:var(--text-secondary); max-width:36rem; }
.pkg-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1.25rem 1.5rem; margin-top:2rem; }
.pkg-actions .btn,.pkg-contact-panel .btn { font-size:1rem; min-height:3rem; }
.pkg-text-link { display:inline-block; color:var(--accent); text-decoration:underline; text-underline-offset:0.25rem; font-size:1rem; }
.pkg-track-record { font-size:0.875rem; color:var(--text-secondary); margin-top:1.75rem; }
.pkg-delivery-map { padding:2rem; background:#142725; border:1px solid #355b55; border-radius:0.75rem; }
.pkg-delivery-map ol { list-style:none; }
.pkg-delivery-map li { display:grid; grid-template-columns:2rem minmax(0,1fr); gap:0.75rem; padding:1.25rem 0; border-top:1px solid #355b55; }
.pkg-delivery-map li>span { font:500 0.875rem var(--font-mono); color:#6edcc8; padding-top:0.2rem; }
.pkg-delivery-map h2 { font-size:1.25rem; margin:0 0 0.5rem; line-height:1.3; }
.pkg-delivery-map p:not(.pkg-kicker) { font-size:0.9375rem; color:#c0d5d0; }
.pkg-delivery-map .pkg-map-foot { margin-top:0.5rem; padding-top:1.25rem; border-top:1px solid #355b55; }
.pkg-section { padding-top:4.75rem; padding-bottom:4.75rem; }
.pkg-soft { background:var(--bg-surface); border-block:1px solid var(--border-subtle); }
.pkg-section h2 { font-size:clamp(2rem,3.5vw,2.75rem); line-height:1.15; letter-spacing:-0.035em; margin-bottom:1.25rem; }
.pkg-section p { color:var(--text-secondary); font-size:1.0625rem; line-height:1.65; }
.pkg-section .pkg-kicker { color:var(--accent); font-size:0.8125rem; }
.pkg-section-intro { max-width:47rem; margin-bottom:2.5rem; }
.pkg-problems,.pkg-phases { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr)); gap:2.25rem; }
.pkg-problems article,.pkg-phases article { border-top:1px solid #355b55; padding-top:1.25rem; }
.pkg-problems article>span,.pkg-phases article>span { color:var(--accent); font:0.875rem var(--font-mono); }
.pkg-problems h3,.pkg-phases h3 { font-size:1.375rem; line-height:1.4; margin:1rem 0 0.75rem; }
.pkg-problems a { display:inline-block; margin-top:1.25rem; font-size:0.9375rem; }
.pkg-product { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:4rem; align-items:center; }
.pkg-product-name { font:500 2rem var(--font-mono); margin-bottom:1.75rem; }
.pkg-product-name span { color:var(--accent); }
.pkg-product p+p { margin-top:1rem; }
.pkg-product-example { background:#142725; border:1px solid #355b55; padding:2rem; border-radius:0.75rem; }
.pkg-product-example h3 { font-size:1.75rem; line-height:1.3; margin-bottom:1rem; }
.pkg-product-example a { display:inline-block; margin-top:1.5rem; font-size:1rem; }
.pkg-product-example small { display:block; color:#b1cac3; font-size:0.8125rem; margin-top:1rem; }
.pkg-proof-heading { max-width:48rem; }
.pkg-before-after { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr)); gap:1.5rem; margin:2rem 0 1.25rem; }
.pkg-before-after>div { padding:1.75rem; border:1px solid #355b55; border-radius:0.5rem; background:#10201f; }
.pkg-before-after>div:first-child { background:var(--bg-base); border-color:var(--border-default); }
.pkg-stage-label { color:var(--accent); font:0.875rem var(--font-mono); text-transform:uppercase; }
.pkg-before-after h3 { font-size:1.25rem; margin:0.75rem 0 1rem; }
.pkg-before-after ul { padding-left:1.25rem; color:var(--text-secondary); }
.pkg-before-after li { margin:0.75rem 0; }
.pkg-section .pkg-proof-note { font-size:0.875rem; margin-bottom:1rem; }
.pkg-phases { margin:2.5rem 0 1.75rem; }
.pkg-fit,.pkg-closing { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:4rem; align-items:center; }
.pkg-fit ul { list-style:none; }
.pkg-fit li { border-bottom:1px solid var(--border-default); padding:1rem 0; color:var(--text-secondary); }
.pkg-closing>div>p { max-width:38rem; margin-bottom:1.5rem; }
.pkg-contact-panel { padding:2rem; border:1px solid #355b55; border-radius:0.75rem; }
.pkg-contact-panel p { margin:1.25rem 0; font-size:0.9375rem; }
.pkg-contact-intro { max-width:48rem; padding-top:4rem; padding-bottom:4rem; }
.pkg-contact-intro h1 { font-size:clamp(2rem,4vw,3.25rem); line-height:1.15; margin-bottom:1.5rem; }
.pkg-contact-intro p { font-size:1.125rem; color:var(--text-secondary); margin-bottom:1.5rem; }
.pkg-contact-intro h2 { font-size:1.5rem; margin:2.25rem 0 1rem; }
.pkg-contact-intro ul,.pkg-contact-intro ol { padding-left:1.25rem; color:var(--text-secondary); }
.pkg-contact-intro li { margin:0.75rem 0; }
@media(max-width:1000px) { .pkg-hero,.pkg-product,.pkg-fit,.pkg-closing { grid-template-columns:minmax(0,1fr); gap:2.5rem; } .pkg-hero-copy { max-width:46rem; } }
@media(max-width:650px) {
 .site-nav { align-items:flex-start; flex-direction:column; padding:1.25rem; gap:1rem; }
 .site-nav .nav-links { gap:0.25rem 1.25rem; }
 .site-nav .logo img { height:2rem; }
 .container { padding-left:1.25rem; padding-right:1.25rem; }
 .pkg-hero { padding-top:2.75rem; padding-bottom:3rem; }
 .pkg-hero h1 { font-size:clamp(2rem,10vw,3rem); }
 .pkg-lede { font-size:1.2rem; }
 .pkg-section { padding-top:3rem; padding-bottom:3rem; }
 .pkg-delivery-map,.pkg-product-example,.pkg-contact-panel { padding:1.5rem; }
 .pkg-actions { align-items:flex-start; flex-direction:column; }
 .pkg-contact-intro { padding-top:2.75rem; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
