/* Fiber Link article polish — shared by compact keyword guides */
:root{--ar-navy:#051a35;--ar-blue:#0767d7;--ar-blue2:#0b82f5;--ar-gold:#ffc83d;--ar-ink:#10233d;--ar-muted:#5a6f87;--ar-line:#d9e5f2;--ar-page:#f2f7fc;--ar-card:#fff;--ar-shadow:0 18px 48px rgba(5,26,53,.11)}
body.kp-page{background:var(--ar-page);color:var(--ar-ink)}
.kp-page .kp-shell{max-width:1180px}
.kp-page .kp-hero{position:relative;isolation:isolate;overflow:hidden;padding:72px 20px 64px;background:radial-gradient(circle at 85% 15%,rgba(255,200,61,.21),transparent 28%),radial-gradient(circle at 10% 5%,rgba(46,145,255,.28),transparent 32%),linear-gradient(135deg,#04142b 0%,#07376f 58%,#0767d7 100%)}
.kp-page .kp-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.14;background-image:linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent 92%)}
.kp-page .kp-breadcrumb{margin-bottom:24px;color:#bcd8f7;font-size:13px}.kp-page .kp-breadcrumb a{color:#fff;text-decoration-color:rgba(255,255,255,.4);text-underline-offset:4px}
.kp-page .kp-label{display:inline-flex;margin-bottom:15px;padding:7px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.1);color:#fff;font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;backdrop-filter:blur(8px)}
.kp-page .kp-hero h1{max-width:900px;margin:0;color:#fff;font-size:clamp(35px,5.5vw,64px);line-height:1.05;letter-spacing:-.045em;text-wrap:balance;text-shadow:0 4px 24px rgba(0,0,0,.15)}
.kp-page .kp-hero p{max-width:780px;margin:20px 0 0;color:#dbeafe;font-size:clamp(17px,2vw,20px);line-height:1.7;text-wrap:pretty}
.kp-page .kp-hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}.kp-page .kp-hero-actions a{min-height:49px;padding:13px 20px;border:1px solid transparent;border-radius:13px;font-weight:900;box-shadow:0 10px 28px rgba(0,0,0,.15);transition:transform .18s,filter .18s}.kp-page .kp-hero-actions a:first-child{background:#fff;color:var(--ar-blue)}.kp-page .kp-hero-actions a:last-child{background:var(--ar-gold);color:#2a1c00}.kp-page .kp-hero-actions a:hover{transform:translateY(-2px);filter:brightness(1.03)}
.kp-page .kp-main{padding:44px 20px 72px}.kp-page .kp-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start}
.kp-page .kp-article{overflow:hidden;border:1px solid var(--ar-line);border-radius:28px;background:var(--ar-card);box-shadow:var(--ar-shadow)}
.kp-page .kp-feature{margin:0;background:#071d39}.kp-page .kp-feature img{display:block;width:100%;aspect-ratio:16/8.6;object-fit:cover}.kp-page .kp-feature figcaption{padding:12px 20px;border-bottom:1px solid var(--ar-line);background:#f8fbff;color:var(--ar-muted);font-size:12px;line-height:1.5}
.kp-page .kp-content{padding:36px 42px 46px}.kp-page .kp-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.kp-page .kp-meta span{display:inline-flex;padding:6px 10px;border:1px solid #d5e6f8;border-radius:999px;background:#eef6ff;color:#245989;font-size:12px;font-weight:800}
.kp-page .kp-content>p{color:#273b52;font-size:17px;line-height:1.82;text-wrap:pretty}.kp-page .kp-content>p:first-of-type{font-size:18px;color:#172d46}
.kp-page .kp-content h2{margin:40px 0 15px;color:#071b34;font-size:clamp(25px,3vw,34px);line-height:1.22;letter-spacing:-.025em;text-wrap:balance}.kp-page .kp-content h2::after{content:"";display:block;width:58px;height:4px;margin-top:10px;border-radius:99px;background:linear-gradient(90deg,var(--ar-blue),#76baff)}
.kp-page .kp-content h3{color:#123e78}.kp-page .kp-content li{color:#273b52;line-height:1.72}
.kp-page .kp-note{margin:27px 0;padding:19px 21px;border:1px solid #cfe2f7;border-left:5px solid var(--ar-blue);border-radius:0 15px 15px 0;background:#f1f7ff;color:#23405f;box-shadow:0 8px 22px rgba(5,26,53,.05)}.kp-page .kp-warning{border-color:#f0d58a;border-left-color:#f4b400;background:#fffae9;color:#694b00}
.kp-page .kp-table-wrap{margin:25px 0;border:1px solid var(--ar-line);border-radius:17px;box-shadow:0 8px 22px rgba(5,26,53,.05)}.kp-page .kp-table th{background:linear-gradient(135deg,#082b59,#0767d7);color:#fff}.kp-page .kp-table tr:nth-child(even) td{background:#f6f9fd}
.kp-page .kp-faq{margin-top:42px}.kp-page .kp-faq details{margin:10px 0;border:1px solid var(--ar-line);border-radius:15px;background:#fff;box-shadow:0 5px 16px rgba(5,26,53,.045)}.kp-page .kp-faq summary{padding:18px 45px 18px 18px;color:#153c69;font-weight:850;cursor:pointer}.kp-page .kp-faq details p{padding:0 18px 18px;color:#425a74}.kp-page .kp-faq details[open]{border-color:#a9cef5;background:#f8fbff}
.kp-page .kp-related{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:35px;padding-top:25px;border-top:1px solid var(--ar-line)}.kp-page .kp-related a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:12px 14px;border:1px solid #cee1f5;border-radius:13px;background:#f6faff;color:#0759b5;font-size:13px;font-weight:850;text-decoration:none;transition:transform .18s,border-color .18s}.kp-page .kp-related a:hover{transform:translateY(-2px);border-color:#71aef0}
.kp-page .kp-side{position:sticky;top:92px;display:grid;gap:18px}.kp-page .kp-side-card{padding:22px;border:1px solid var(--ar-line);border-radius:21px;background:#fff;box-shadow:0 10px 28px rgba(5,26,53,.075)}.kp-page .kp-side-card:first-child{overflow:hidden;border:0;background:radial-gradient(circle at 100% 0,rgba(255,255,255,.18),transparent 32%),linear-gradient(145deg,#07894c,#15ad65);color:#fff}.kp-page .kp-side-card h2{margin:0 0 10px;color:#0b3971;font-size:20px}.kp-page .kp-side-card:first-child h2,.kp-page .kp-side-card:first-child p{color:#fff}.kp-page .kp-side-card p{color:var(--ar-muted);line-height:1.6}.kp-page .kp-side-card>a{display:flex;justify-content:center;margin-top:10px;padding:11px 12px;border:1px solid #cfe0f3;border-radius:11px;background:#f6faff;color:#075fc9;font-weight:850;text-decoration:none}.kp-page .kp-side-card:first-child>a{border-color:rgba(255,255,255,.26);background:#fff;color:#08713f}.kp-page .kp-side-card:first-child>a.kp-call{background:rgba(4,70,39,.25);color:#fff}.kp-page .kp-side-list{padding:0;list-style:none}.kp-page .kp-side-list li{padding:10px 0;border-bottom:1px solid #e4edf6;color:#3f5872}
@media(max-width:960px){.kp-page .kp-layout{grid-template-columns:1fr}.kp-page .kp-side{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.kp-page .kp-hero{padding:48px 16px 43px}.kp-page .kp-hero h1{font-size:clamp(32px,10vw,46px)}.kp-page .kp-hero-actions{display:grid;grid-template-columns:1fr}.kp-page .kp-hero-actions a{justify-content:center;text-align:center}.kp-page .kp-main{padding:24px 13px 52px}.kp-page .kp-article{border-radius:20px}.kp-page .kp-content{padding:25px 18px 32px}.kp-page .kp-content>p{font-size:16px}.kp-page .kp-side{grid-template-columns:1fr}.kp-page .kp-related{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.kp-page *{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Typography refinement — pairs display weight with an easy-reading body rhythm. */
body.kp-page{font-family:var(--fl-font-body,Inter,"Aptos","Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif);letter-spacing:-.006em}
.kp-page .kp-hero h1{font-family:var(--fl-font-display,"Aptos Display","Segoe UI Variable Display",Inter,"Segoe UI",sans-serif);font-weight:850;letter-spacing:-.049em}
.kp-page .kp-hero p{letter-spacing:-.01em}
.kp-page .kp-content{font-size:16px}
.kp-page .kp-content>p{max-width:70ch;color:#2f435c;font-size:clamp(16px,.2vw + 15px,17.5px);line-height:1.8}
.kp-page .kp-content>p:first-of-type{max-width:64ch;color:#152b45;font-size:clamp(18px,.32vw + 16px,20px);line-height:1.72;letter-spacing:-.014em}
.kp-page .kp-content h2{font-family:var(--fl-font-display,"Aptos Display","Segoe UI Variable Display",Inter,"Segoe UI",sans-serif);font-weight:820;letter-spacing:-.038em}
.kp-page .kp-content h3{font-family:var(--fl-font-display,"Aptos Display","Segoe UI Variable Display",Inter,"Segoe UI",sans-serif);font-weight:780;letter-spacing:-.022em;line-height:1.28}
.kp-page :where(.kp-label,.kp-meta span,.kp-breadcrumb){font-weight:780;letter-spacing:.075em}
.kp-page :where(.kp-table,.kp-meta){font-variant-numeric:tabular-nums lining-nums}
@media(max-width:720px){.kp-page .kp-content>p{font-size:16px;line-height:1.76}.kp-page .kp-content>p:first-of-type{font-size:17.5px}}
