
:root{--ink:#142e47;--navy:#0d2238;--muted:#587086;--blue:#12659d;--cyan:#21a8cf;--bg:#f3f7fa;--border:#d9e4ea}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;background:white;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:#087fa9}.container{width:min(1170px,calc(100% - 44px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;padding:8px}.header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border)}.header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:66px;max-height:58px;object-fit:contain}.brand strong{display:block;letter-spacing:.05em;font-size:20px;color:#092e49;line-height:1.2}.brand small{display:block;font-size:10px;letter-spacing:.15em;color:#607385}.header-right{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.site-nav,.lang-nav{display:flex;gap:17px;align-items:center;flex-wrap:wrap}.site-nav a{font-weight:650;font-size:13px}.lang-nav{gap:7px}.lang-nav a{padding:3px 6px;font-size:12px;border-radius:6px}.lang-nav .current{background:#e2eef6;color:#095b88;font-weight:800}.selection{background:#edf5f8;border-bottom:1px solid #d7e7ed}.selection-inner{display:flex;align-items:center;gap:14px;min-height:67px;flex-wrap:wrap;padding:10px 0}.selection label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#48677a}.selection select{min-width:215px;padding:10px 12px;border:1px solid #c7dce7;background:white;border-radius:9px;color:#183c55}.selection select:disabled{opacity:.7}.selection .help{font-size:11px;color:#617e90}.hero{background:linear-gradient(116deg,#0b263e 0%,#164d70 58%,#127695 100%);color:white;padding:92px 0 83px}.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:56px;align-items:center}.eyebrow,.overline{color:#47c4e8;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:12px}.hero h1{font-size:clamp(37px,5vw,61px);letter-spacing:-.045em;line-height:1.1;margin:14px 0 21px}.lead{font-size:19px;color:#d8eaf3;max-width:680px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{padding:13px 20px;border-radius:12px;font-weight:750;font-size:14px;display:inline-block}.primary{background:#45c6df;color:#07334b}.outline{border:1px solid #a5c9da;color:#fff}.hero-panel{border:1px solid #5888a2;background:#ffffff12;border-radius:22px;padding:28px;box-shadow:0 16px 45px #0519294d}.panel-title{font-size:12px;color:#bbdfeb;letter-spacing:.14em;font-weight:bold}.panel-item{padding:13px 15px;margin-top:9px;background:#ffffff13;border:1px solid #ffffff26;border-radius:12px}.panel-item b{display:block;font-size:16px}.panel-item span{font-size:11px;color:#c7e1eb}.section{padding:80px 0}.section.alt{background:var(--bg)}.section h2{font-size:clamp(28px,3vw,39px);line-height:1.2;letter-spacing:-.03em;margin:10px 0 17px}.section-intro{max-width:870px;color:#546a7d;font-size:17px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:31px}.card{border:1px solid var(--border);border-radius:18px;padding:26px;background:white;box-shadow:0 10px 30px #0b34400b;display:flex;flex-direction:column}.card:before{content:'';display:block;height:4px;width:46px;background:linear-gradient(90deg,#0b77af,#45c6df);border-radius:6px;margin-bottom:21px}.card h3{font-size:22px;margin:0 0 5px}.card p{font-size:14px;color:#5a6d7c;flex:1}.card .tag{font-size:11px;letter-spacing:.045em;color:#36728d;font-weight:700}.more{font-weight:800;color:#0a709e;font-size:13px;margin-top:12px}.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}.chip{background:#e5f1f5;border:1px solid #cfdee6;color:#17445d;padding:8px 14px;border-radius:100px;font-size:13px}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.resource{background:white;padding:26px;border:1px solid var(--border);border-radius:16px}.resource strong{display:block;font-size:19px}.resource p{font-size:14px;color:var(--muted)}.resource a{color:#0c739f;font-weight:700}.cta{padding:55px 0;background:#e6f1f7}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-size:27px;margin:0 0 8px}.cta p{margin:0;color:#577084}.cta .button{background:#0d557f;color:white}.footer{background:#0b2135;color:#dceaf1;padding-top:49px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:19px}.footer-card{border:1px solid #385067;background:#ffffff07;border-radius:16px;padding:23px}.footer h3{font-size:12px;letter-spacing:.10em;color:white}.footer p,.footer li{font-size:13px;color:#b5cad7}.footer ul{padding:0;list-style:none}.footer li{margin:9px 0}.footer-bottom{margin-top:32px;padding:20px 0;border-top:1px solid #344b60;color:#a6bfd0;font-size:12px;display:flex;justify-content:space-between;gap:20px}.detail-band{background:#ecf5f9;border:1px solid #d4e4ed;padding:25px;border-radius:17px;margin-top:28px}.detail-band p{margin-bottom:0;color:var(--muted)}@media(max-width:850px){.header-inner{align-items:flex-start;padding:12px 0;flex-direction:column}.hero-grid{grid-template-columns:1fr}.grid,.resource-grid,.footer-grid{grid-template-columns:repeat(2,1fr)}.hero{padding:55px 0}.cta-inner{align-items:flex-start;flex-direction:column}}@media(max-width:580px){.grid,.resource-grid,.footer-grid{grid-template-columns:1fr}.site-nav{gap:10px}.site-nav a{font-size:12px}.selection select{width:100%}.selection label{width:100%}.footer-bottom{flex-direction:column}.hero-panel{padding:18px}}

/* KingSail V1.1: shared rounded 1160px site frame, LinRT-inspired five-card footer */
html{background:#edf2f6}body{width:min(1160px,calc(100% - 36px));margin:22px auto 35px;border-radius:22px;overflow:hidden;box-shadow:0 18px 55px rgba(10,37,58,.15)}
.container{width:calc(100% - 56px);max-width:1080px}
.footer{padding-top:44px}.footer-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.footer-card{padding:20px 15px;min-width:0;border-radius:17px}.footer-card p,.footer-card li{font-size:12px}.footer-card a{overflow-wrap:anywhere}.footer-card h3{margin:0 0 15px}.footer-card strong{color:white}.footer-card .hours{font-size:11px}.footer-map{max-width:100%;height:auto;display:block;border-radius:8px}.footer-social{padding:26px 0 24px;display:flex;align-items:center;gap:25px;flex-wrap:wrap;border-bottom:1px solid #344b60}.footer-social>strong{font-size:12px;color:white;letter-spacing:.12em}.social-links{display:flex;flex-wrap:wrap;gap:16px}.social-links a{display:inline-flex;gap:7px;align-items:center;color:#dceaf1;font-size:12px}.social-links img{object-fit:contain}.footer-bottom{margin-top:0;padding:19px 0;border:0}.footer-bottom-inner{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:center}.footer-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.text-button{color:inherit;background:transparent;border:0;padding:0;font:inherit;cursor:pointer}.text-button:hover,.footer a:hover{color:#66cde8}.consent-dialog[hidden]{display:none}.consent-dialog{position:fixed;inset:0;z-index:999;background:#051726ae;display:grid;place-items:center;padding:20px}.consent-box{width:min(460px,100%);position:relative;background:white;color:#163248;border-radius:17px;padding:30px;box-shadow:0 15px 55px #06192570}.consent-box h2{margin:0 0 12px;font-size:24px}.consent-box p{font-size:14px}.consent-close{position:absolute;right:16px;top:10px;font-size:26px;border:0;background:none;cursor:pointer}.consent-actions{display:flex;flex-wrap:wrap;gap:10px}.consent-actions button{padding:9px 13px;border:1px solid #bfd4df;background:#e9f4f8;color:#15364d;border-radius:9px;cursor:pointer}.privacy-page{padding:70px 0;min-height:60vh}
@media(max-width:1050px){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){body{width:100%;margin:0;border-radius:0;box-shadow:none}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.container{width:calc(100% - 36px)}}@media(max-width:470px){.footer-grid{grid-template-columns:1fr}.footer-social{align-items:flex-start;flex-direction:column;gap:12px}.social-links{gap:13px}}

/* V1.2 — visual parity with LinRT's unified 1160px frame and five-column footer. */
html {background:#f5f8fa;}
body {width:calc(100% - 32px);max-width:1160px;min-width:0;margin:16px auto 22px;background:#fff;border:1px solid #dbe6ee;border-radius:17px;overflow:visible;box-shadow:0 12px 34px rgba(12,37,58,.08);}
.header {border-radius:16px 16px 0 0;}
.footer {border-radius:0 0 16px 16px;}
.footer .container {width:calc(100% - 40px);max-width:none;}
.footer-grid {display:grid;grid-template-columns:1.20fr 1.28fr .92fr 1fr 1.16fr;gap:10px;align-items:stretch;}
.footer-card {min-width:0;padding:17px 12px;border-radius:16px;overflow-wrap:break-word;}
.footer-card h3 {font-size:11px;letter-spacing:.065em;line-height:1.3;margin:0 0 14px;}
.footer-card p,.footer-card li {font-size:11.5px;line-height:1.58;}
.footer-card a {overflow-wrap:anywhere;}
.footer-social {display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:16px;padding:22px 0 20px;}
.footer-social > strong {white-space:nowrap;flex:0 0 auto;}
.social-links {display:flex;justify-content:flex-end;align-items:center;gap:9px;flex-wrap:nowrap;min-width:0;margin-left:auto;}
.social-links a {display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #385067;background:#ffffff07;border-radius:12px;padding:9px 11px;white-space:nowrap;line-height:1.2;color:#eff9fb;font-size:11.5px;}
.social-links a:hover,.social-links a:focus-visible {border-color:#7bdbd5;background:rgba(100,205,198,.12);text-decoration:none;}
.social-links a img {width:23px;height:23px;display:block;flex:0 0 23px;}
@media(max-width:850px) {
 .footer-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
 .footer-social {flex-wrap:wrap;}
 .social-links {flex-wrap:wrap;}
}
@media(max-width:600px) {
 body {width:calc(100% - 16px);margin:8px auto 14px;border-radius:17px;box-shadow:0 8px 24px rgba(12,37,58,.08);}
 .footer-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .footer .container {width:calc(100% - 30px);}
 .footer-social {flex-direction:column;align-items:stretch;gap:12px;}
 .social-links {margin-left:0;justify-content:flex-start;}
}
@media(max-width:420px) {.footer-grid{grid-template-columns:1fr}.social-links a{flex:1 1 42%;}.social-links{width:100%;}}

/* V1.4 — support plans, LinRT-inspired layout */
.sub-hero{padding:70px 0}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:30px}.plan-card{border:1px solid #d5e5ed;border-radius:18px;background:#fff;padding:27px 23px;display:flex;flex-direction:column;box-shadow:0 10px 25px #102d4010}.plan-card:nth-child(2){border-color:#5dabc9;box-shadow:0 12px 32px #145f831c}.plan-kicker{letter-spacing:.13em;font-size:11px;color:#277ca1;font-weight:800}.plan-card h3{font-size:28px;margin:12px 0 5px}.plan-tag{margin:0 0 18px;color:#4c6579}.plan-card ul{padding-left:20px;margin:0 0 26px;flex:1}.plan-card li{padding:0 0 10px;color:#466074;font-size:14px}.plan-action,.support-learn{background:#0d557f;color:white}.support-caveat{font-size:13px;color:#526d82;margin-top:23px}.detail-band a{color:#08729a;text-decoration:underline}@media(max-width:850px){.plan-grid{grid-template-columns:1fr}}


/* V1.4.1 — Support comparison embedded in the Overview (no standalone subscriptions page). */
#support-plans {scroll-margin-top:110px;}
#support-plans .support-contract {max-width:900px;color:#60798c;font-size:13px;line-height:1.7;margin-top:16px;}
#support-plans .plan-grid {margin-top:28px;}
#support-plans .support-framework-panel {margin-top:32px;background:#fff;border:1px solid #d5e5ed;}
#support-plans .support-framework-panel h3 {font-size:20px;color:#163c54;margin:0 0 10px;}
#support-plans .support-framework-panel p {font-size:14px;line-height:1.7;margin:0 0 8px;}
#support-plans .support-framework-panel p:last-child {margin-bottom:0;}
#support-plans .support-framework-names {font-weight:650;color:#235d7d;}
@media(max-width:700px){#support-plans {scroll-margin-top:160px;}#support-plans .plan-card{padding:23px 20px;}}


/* V1.4.2 — Miami panorama on Overview > Technical resources.
   Intentionally LIGHT and understated, not a dark-theme section.
   The photo is kept visible while the text and links sit on a light scrim. */
#resources {
    background-color:#eaf3f7;
    background-image:
        linear-gradient(90deg,
            rgba(247,251,253,.60) 0%,
            rgba(247,251,253,.45) 53%,
            rgba(247,251,253,.20) 100%),
        url('panorama-miami-florida-water-06aaf8a75fd4121235dcd23a396a8037.jpg');
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat;
    border-top:1px solid #dce9ef;
    border-bottom:1px solid #dce9ef;
}
#resources .overline { color:#135f80; }
#resources h2 { color:#112f48; }
#resources .section-intro {color:#27465c;max-width:850px;}
#resources .resource {
    background:rgba(255,255,255,.90);
    border:1px solid rgba(202,222,233,.95);
    box-shadow:0 10px 28px rgba(12,46,66,.10);
    backdrop-filter:blur(2px);
    -webkit-backdrop-filter:blur(2px);
}
#resources .resource strong {color:#143e59;}
#resources .resource p {color:#4d6477;}
#resources .resource a {color:#08678e;}
#resources .resource a:focus-visible {outline:2px solid #08678e;outline-offset:3px;}
/* Same thin header divider as LinRT's unified frame (desktop only). */
.header .lang-nav {
    border-left:1px solid #d9e6ed;
    padding-left:11px;
    margin-left:1px;
}
@media (max-width:620px) {
    .header .lang-nav {border-left:0;padding-left:0;margin-left:0;}
    #resources {
        background-image:
            linear-gradient(rgba(248,251,253,.65),rgba(248,251,253,.30)),
            url('panorama-miami-florida-water-06aaf8a75fd4121235dcd23a396a8037.jpg');
        background-position:60% center;
    }
}

/* V1.5 — technical feature panels; preserves user's V1.4.2 panorama tuning */
.technical-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.technical-panel{padding:25px;border:1px solid #d4e5ed;border-radius:17px;background:#f8fbfd}.technical-panel h3{margin:0 0 14px;font-size:20px;color:#163c54}.technical-panel p,.feature-list li{font-size:14px;color:#466074;line-height:1.7}.feature-list{padding-left:20px;margin:0}.feature-list li{margin:0 0 10px}.portfolio-callout{border:1px solid #cde2ea;border-radius:15px;background:#edf6fa;padding:18px 22px;margin-top:26px}.portfolio-callout strong{color:#145b7d}.portfolio-callout p{margin:5px 0 0;color:#49697f;font-size:13px}.technical-panel a:focus-visible{outline:2px solid #08678e;outline-offset:4px}@media(max-width:720px){.technical-feature-grid{grid-template-columns:1fr}}


/* V1.5.1 — interactive hero portfolio cards (mouse, keyboard and touch). */
.hero-panel a.panel-item-link {
    display:block;
    color:inherit;
    text-decoration:none;
    cursor:pointer;
    position:relative;
    padding-right:40px;
    transition:background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.hero-panel a.panel-item-link::after {
    content:"↗";
    position:absolute;
    right:15px;
    top:50%;
    transform:translateY(-50%);
    font-size:17px;
    color:#b8eaf6;
    opacity:.65;
    transition:opacity .2s ease, right .2s ease;
}
.hero-panel a.panel-item-link:hover,
.hero-panel a.panel-item-link:focus-visible {
    background:rgba(255,255,255,.22);
    border-color:rgba(127,220,239,.85);
    box-shadow:0 7px 18px rgba(3,20,39,.18);
    transform:translateX(4px);
}
.hero-panel a.panel-item-link:hover::after,
.hero-panel a.panel-item-link:focus-visible::after {opacity:1;right:12px;}
.hero-panel a.panel-item-link:focus-visible {outline:2px solid #7fe4f1;outline-offset:3px;}
@media (prefers-reduced-motion:reduce) {
    .hero-panel a.panel-item-link, .hero-panel a.panel-item-link::after {transition:none;}
    .hero-panel a.panel-item-link:hover, .hero-panel a.panel-item-link:focus-visible {transform:none;}
}


/* KingSail V1.5.3 — compact engineering value proposition. */
.why-section{padding:53px 0 59px;background:#f9fcfe;border-top:1px solid #e2edf3;}
.why-section .overline{color:#1d779c;margin:0 0 9px;}
.why-section h2{margin:0;max-width:800px;font-size:clamp(25px,2.9vw,34px);line-height:1.25;letter-spacing:-.025em;color:#14354d;}
.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:27px;}
.why-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:22px 19px 21px;background:#fff;border:1px solid #d5e5ed;border-radius:16px;box-shadow:0 6px 20px rgba(14,54,83,.045);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
.why-card:hover{transform:translateY(-2px);border-color:#9dcede;box-shadow:0 10px 23px rgba(14,54,83,.09);}
.why-icon{display:grid;place-items:center;width:46px;height:46px;border:1px solid #d1e6f0;border-radius:12px;background:#edf6fa;margin-bottom:15px;}
.why-icon img{width:27px;height:27px;display:block;}
.why-card h3{margin:0 0 10px;color:#163d56;font-size:15px;line-height:1.3;letter-spacing:.01em;}
.why-card p{margin:0;color:#546d7d;font-size:12.5px;line-height:1.65;}
.why-note{font-size:12px;color:#658094;line-height:1.6;margin:15px 0 0;}

/* V1.5.3 — two-action commercial contact band. */
.cta-engineering{padding:48px 0 52px;background:#e8f3f8;border-top:1px solid #daeaf1;}
.cta-engineering .cta-inner{display:flex;gap:32px;align-items:center;justify-content:space-between;}
.cta-engineering .cta-copy{max-width:680px;}
.cta-engineering .cta-eyebrow{margin:0 0 8px;color:#167095;font-size:11px;letter-spacing:.13em;font-weight:800;line-height:1.4;}
.cta-engineering h2{margin:0 0 12px;font-size:clamp(23px,2.6vw,29px);line-height:1.28;color:#14364e;}
.cta-engineering .cta-copy>p:last-child{max-width:640px;color:#4b687b;font-size:14px;line-height:1.7;}
.cta-engineering .cta-actions{display:grid;grid-template-columns:1fr;gap:11px;flex:0 0 224px;}
.cta-engineering .cta-actions .button{display:flex;align-items:center;justify-content:center;text-align:center;min-height:46px;font-size:13px;line-height:1.35;padding:11px 14px;}
.cta-engineering .cta-actions .cta-primary{color:#fff;background:#0d557f;border:1px solid #0d557f;}
.cta-engineering .cta-actions .cta-secondary{color:#124f70;background:#fff;border:1px solid #a8cbdc;}
.cta-engineering .cta-actions .button:hover{filter:brightness(.96);}
.cta-engineering .cta-actions .button:focus-visible{outline:3px solid #298eb8;outline-offset:3px;}
@media(max-width:950px){.why-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:850px){.cta-engineering .cta-inner{align-items:stretch;flex-direction:column;gap:20px;}.cta-engineering .cta-actions{flex:0 1 auto;grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.why-section{padding:43px 0 49px;}.why-grid{grid-template-columns:1fr;gap:12px;margin-top:21px;}.why-card{padding:18px 19px;}.cta-engineering .cta-inner{align-items:stretch;flex-direction:column;gap:20px;}.cta-engineering .cta-actions{flex:0 1 auto;grid-template-columns:1fr;}.cta-engineering .cta-actions .button{width:100%;}}
@media(prefers-reduced-motion:reduce){.why-card{transition:none}.why-card:hover{transform:none}}


/* V1.5.4 — Gateway interoperability / target platforms. Preserve validated Miami photo settings above. */
.hero h1{font-size:clamp(34px,4.4vw,56px);text-wrap:balance;overflow-wrap:normal;}
.chip-link{background:#fff;border-color:#8fc5db;color:#0c628c;font-weight:750;transition:background-color .16s ease,border-color .16s ease;}
.chip-link:hover,.chip-link:focus-visible{background:#d7edf6;border-color:#579cbc;}
.gateway-section{padding:68px 0 61px;background:#fff;border-top:1px solid #e3edf2;}
.gateway-section h2,.target-section h2,.framework-integration h2{max-width:850px;}
.gateway-flow{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:32px;align-items:stretch;margin-top:29px;}
.gateway-stage{position:relative;min-width:0;background:#f7fbfd;border:1px solid #cbdfe9;border-radius:17px;padding:22px 18px 20px;box-shadow:0 5px 18px #0e3c5210;}
.gateway-stage:nth-child(2){background:#e9f5fa;border-color:#9bc9dd;}
.gateway-stage:not(:last-child)::after{content:'→';position:absolute;right:-27px;top:calc(50% - 20px);color:#187aa2;font-size:28px;font-weight:800;}
.gateway-kicker{font-size:10px;letter-spacing:.105em;font-weight:800;color:#176c91;line-height:1.5;display:block;}
.gateway-stage h3{font-size:18px;line-height:1.3;letter-spacing:-.02em;margin:11px 0 10px;color:#143b55;}
.gateway-stage p{font-size:12.5px;line-height:1.65;margin:0;color:#536c80;}
.gateway-usecases{display:flex;flex-wrap:wrap;gap:10px 12px;margin:22px 0 0;padding:0;list-style:none;}
.gateway-usecases li{background:#eef6fa;border:1px solid #d3e6ef;color:#1b4e6b;border-radius:12px;padding:10px 13px;font-size:12px;line-height:1.5;flex:1 1 230px;}
.gateway-note,.target-scope{font-size:12px;line-height:1.7;color:#61788a;margin:19px 0 0;max-width:970px;}
.target-section{padding:68px 0 66px;background:#f2f8fb;}
.target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:27px;}
.target-card{min-width:0;background:#fff;border:1px solid #d4e4eb;border-radius:16px;padding:22px 20px 20px;box-shadow:0 5px 17px rgba(15,55,76,.045);}
.target-card::before{display:block;content:'';height:3px;width:37px;border-radius:5px;background:linear-gradient(90deg,#15749f,#5fbacc);margin-bottom:15px;}
.target-card h3{font-size:16px;line-height:1.32;margin:0 0 10px;color:#143c55;}
.target-card p{font-size:13px;line-height:1.65;color:#4c687c;margin:0;}
.framework-integration{padding:65px 0;background:#f8fbfd;border-top:1px solid #e0edf2;border-bottom:1px solid #e0edf2;}
.framework-target-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:900px){.gateway-flow{gap:22px;}.gateway-stage:not(:last-child)::after{right:-21px;}.gateway-stage h3{font-size:16px;}.target-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:650px){.hero h1{font-size:clamp(32px,8.8vw,47px);}.gateway-section,.target-section,.framework-integration{padding:49px 0;}.gateway-flow{grid-template-columns:1fr;gap:23px;}.gateway-stage:not(:last-child)::after{content:'↓';top:auto;bottom:-26px;left:calc(50% - 8px);right:auto;font-size:22px;}.gateway-usecases{flex-direction:column;}.gateway-usecases li{flex:0 0 auto;}.target-grid,.framework-target-grid{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.chip-link{transition:none;}}


/* KingSail V1.6 — readable, language-aware justification of substantial prose.
   Do not justify titles, navigation, interactive controls or narrow footer columns. */
.hero .lead,
.section .section-intro,
.section .card p,
.section .resource p,
.section .detail-band p,
.section .support-contract,
.section .support-framework-panel p,
.gateway-stage p,
.gateway-note,
.target-card p,
.target-scope,
.why-card p,
.why-note,
.cta-engineering .cta-copy > p:last-child,
.framework-integration p,
.technical-detail p,
.privacy-page p,
.privacy-page li {
    text-align: justify;
    text-align-last: left;
    hyphens: auto;
    -webkit-hyphens: auto;
    overflow-wrap: break-word;
}
/* Keep notes and narrow columns natural on tablets and phones: no 'rivers' of whitespace. */
@media (max-width: 700px) {
    .section .card p,
    .section .resource p,
    .gateway-stage p,
    .target-card p,
    .why-card p,
    .framework-integration p,
    .technical-detail p {
        text-align: left;
    }
}


/* KingSail V1.7 — independent right-aligned language row: never shares menu row. */
.header-inner {align-items:center;}
.header .brand {flex:0 0 auto;}
.header .header-right {
    flex:1 1 auto;
    min-width:0;
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:flex-end;
    justify-content:center;
    gap:8px;
    padding:11px 0;
}
.header .site-nav {
    width:100%;
    gap:10px 16px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    text-align:right;
}
.header .site-nav a {white-space:nowrap;line-height:1.45;}
.header .lang-nav {
    display:flex;
    width:auto;
    align-self:flex-end;
    flex-wrap:nowrap;
    justify-content:flex-end;
    gap:7px;
    margin:0;
    padding:5px 0 0;
    border-left:0;
    border-top:1px solid #d9e6ed;
}
.footer-support-plans {margin-top:15px;}
.footer-support-plans strong {display:block;margin-bottom:3px;line-height:1.5;}
.footer-support-plans span {display:block;line-height:1.55;}
@media (max-width:850px) {
    .header-inner {align-items:stretch;}
    .header .header-right {width:100%;padding:1px 0 8px;}
    .header .site-nav {justify-content:flex-end;}
}
@media (max-width:430px) {
    .header .site-nav {gap:8px 12px;}
    .header .site-nav a {font-size:12px;}
}
