/* Product-line distributor routes. Kept separate from the general partner
   page so each commercial landing page can share one responsive system. */
.line-page{background:#f5f8fb;color:#183b56}
.line-hero{position:relative;overflow:hidden;padding:clamp(4.8rem,8vw,7rem) 0 5.2rem;color:#fff;background:
  linear-gradient(rgba(113,203,240,.035) 1px,transparent 1px),
  linear-gradient(90deg,rgba(113,203,240,.035) 1px,transparent 1px),
  radial-gradient(circle at 86% 12%,rgba(52,166,220,.27),transparent 29%),
  linear-gradient(118deg,#061727 0%,#0a2b45 57%,#104462 100%);background-size:46px 46px,46px 46px,auto,auto}
.line-hero:after{position:absolute;right:-170px;top:-260px;width:610px;height:610px;border:1px solid rgba(132,214,246,.17);border-radius:50%;box-shadow:0 0 0 54px rgba(75,174,222,.05),0 0 0 110px rgba(75,174,222,.025);content:"";pointer-events:none}
.line-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.65fr);gap:clamp(2.5rem,6vw,5.5rem);align-items:center}
.line-kicker{display:inline-flex;align-items:center;gap:.55rem;color:#83d5f6;font-size:.69rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.line-kicker:before{width:28px;height:2px;background:#69c8ed;content:""}
.line-hero h1{max-width:760px;margin:1.1rem 0 1.25rem;color:#fff;font-size:clamp(2.7rem,5.1vw,4.9rem);line-height:1.02;letter-spacing:-.06em;text-wrap:balance}
.line-hero-copy{max-width:690px;margin:0;color:#c4d9e5;font-size:1.04rem;line-height:1.78}
.line-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.9rem}
.line-actions .btn{min-height:48px}
.line-brief{position:relative;overflow:hidden;padding:1.35rem 1.4rem;border:1px solid rgba(151,219,243,.35);background:linear-gradient(145deg,rgba(7,34,54,.92),rgba(11,58,84,.76));box-shadow:0 26px 54px rgba(0,11,23,.32),inset 0 1px rgba(255,255,255,.08)}
.line-brief:before{position:absolute;top:0;left:0;width:48%;height:3px;background:linear-gradient(90deg,#71d2f3,transparent);content:""}
.line-brief h2{margin:0;padding-bottom:.85rem;border-bottom:1px solid rgba(184,224,240,.18);color:#fff;font-size:.8rem;letter-spacing:.13em;text-transform:uppercase}
.line-brief dl{margin:0}
.line-brief-row{display:grid;grid-template-columns:102px 1fr;gap:.8rem;padding:.9rem .1rem;border-bottom:1px solid rgba(184,224,240,.15)}
.line-brief-row:last-child{border-bottom:0;padding-bottom:.1rem}
.line-brief dt{color:#f4fbff;font-size:.77rem;font-weight:800;letter-spacing:.04em}
.line-brief dd{margin:0;color:#b6cedb;font-size:.78rem;line-height:1.56}
.line-section{padding:clamp(4.4rem,7vw,6.5rem) 0;border-top:1px solid #d6e5ed}
.line-section--paper{background:linear-gradient(rgba(42,125,164,.025) 1px,transparent 1px),#edf4f8;background-size:100% 52px}
.line-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:2.7rem;align-items:end;margin-bottom:2.2rem}
.line-head h2{max-width:760px;margin:.7rem 0 0;color:#143751;font-size:clamp(2rem,3.6vw,3.3rem);line-height:1.08;letter-spacing:-.05em;text-wrap:balance}
.line-head p{margin:0;padding-left:1.1rem;border-left:2px solid #8fcce4;color:#587187;font-size:.92rem;line-height:1.75}
.line-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.line-card{position:relative;display:flex;min-height:235px;flex-direction:column;padding:1.45rem;border:1px solid #cbdde7;border-top:4px solid #58afd4;background:#fff;box-shadow:0 15px 30px rgba(19,61,86,.075);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.line-card:hover{border-color:#9dc6da;box-shadow:0 21px 38px rgba(19,61,86,.13);transform:translateY(-3px)}
.line-card b{color:#3982aa;font-size:.65rem;letter-spacing:.13em}
.line-card h3{margin:.75rem 0 .55rem;color:#173c57;font-size:1.15rem}
.line-card p{margin:0;color:#597187;font-size:.86rem;line-height:1.68}
.line-card ul{margin:1rem 0 0;padding-left:1.1rem;color:#557086;font-size:.79rem;line-height:1.65;list-style:disc}
.line-card a{margin-top:auto;padding-top:1rem;color:#1766a3;font-size:.8rem;font-weight:800}
.line-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}
.line-product{display:flex;min-height:170px;flex-direction:column;padding:1.15rem;border:1px solid #cbdde7;background:#fff;box-shadow:0 9px 20px rgba(20,60,85,.06)}
.line-product span{color:#3d83a8;font-size:.64rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.line-product h3{margin:.6rem 0 .45rem;color:#183c57;font-size:1rem}
.line-product p{margin:0;color:#60778a;font-size:.77rem;line-height:1.6}
.line-product a{margin-top:auto;padding-top:.85rem;color:#1766a3;font-size:.74rem;font-weight:800}
.line-checklist{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:1.1rem;align-items:stretch}
.line-checklist-main{padding:1.65rem;border:1px solid #c8dce8;background:#fff;box-shadow:0 14px 28px rgba(20,60,85,.065)}
.line-checklist-main h3{margin:0 0 .8rem;color:#173c57;font-size:1.2rem}
.line-checklist-main p{margin:0;color:#5a7185;font-size:.88rem;line-height:1.72}
.line-checklist-main ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:1.25rem 0 0}
.line-checklist-main li{position:relative;padding-left:1.1rem;color:#4e687e;font-size:.8rem;line-height:1.55}
.line-checklist-main li:before{position:absolute;left:0;top:.55rem;width:6px;height:6px;border-radius:50%;background:#3da2cd;content:""}
.line-boundary{padding:1.65rem;border:1px solid #b9d7e5;background:linear-gradient(145deg,#e8f5fa,#fff 75%);box-shadow:0 14px 28px rgba(20,60,85,.055)}
.line-boundary b{display:block;color:#287a9f;font-size:.65rem;letter-spacing:.13em;text-transform:uppercase}
.line-boundary h3{margin:.7rem 0 .55rem;color:#173c57;font-size:1.15rem}
.line-boundary p{margin:0;color:#4f6c80;font-size:.84rem;line-height:1.72}
.line-faq{max-width:920px;margin:0 auto;border-top:1px solid #bfd6e2}
.line-faq details{border-bottom:1px solid #bfd6e2;background:#fff}
.line-faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.25rem;color:#173c57;font-size:.92rem;font-weight:800;cursor:pointer;list-style:none}
.line-faq summary::-webkit-details-marker{display:none}
.line-faq summary:after{display:grid;flex:0 0 auto;width:26px;height:26px;place-items:center;border:1px solid #9bcfe4;background:#f0f8fc;color:#2b86ae;font-size:1rem;content:"+"}
.line-faq details[open] summary:after{content:"−"}
.line-faq p{margin:0;padding:0 3.8rem 1.25rem 1.25rem;color:#5a7185;font-size:.86rem;line-height:1.75}
.line-cta{padding:4.5rem 0 5.4rem;background:#f7fafc}
.line-cta-box{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding:2.35rem 2.5rem;border:1px solid #225677;border-top:4px solid #67c7eb;background:radial-gradient(circle at 86% 0,rgba(58,165,216,.27),transparent 36%),linear-gradient(118deg,#06192c,#0d3d5b);box-shadow:0 24px 52px rgba(10,42,64,.18)}
.line-cta-box:after{position:absolute;right:-92px;bottom:-125px;width:300px;height:300px;border:1px solid rgba(117,210,243,.18);border-radius:50%;box-shadow:0 0 0 38px rgba(117,210,243,.035);content:"";pointer-events:none}
.line-cta-box>*{position:relative;z-index:1}
.line-cta-box h2{margin:0;color:#fff;font-size:clamp(1.75rem,3vw,2.7rem);line-height:1.08;letter-spacing:-.045em}
.line-cta-box p{max-width:700px;margin:.55rem 0 0;color:#c0d8e5;font-size:.9rem;line-height:1.7}
.line-cta-actions{display:flex;flex-direction:column;gap:.6rem;min-width:205px}
.line-cta-actions .btn{justify-content:center;min-height:45px}
@media(max-width:900px){.line-hero-grid,.line-checklist{grid-template-columns:1fr}.line-brief{max-width:680px}.line-head{grid-template-columns:1fr;gap:1rem}.line-head p{max-width:700px}.line-products{grid-template-columns:repeat(2,minmax(0,1fr))}.line-cta-box{grid-template-columns:1fr}.line-cta-actions{flex-direction:row;flex-wrap:wrap;min-width:0}.line-cta-actions .btn{flex:1 1 190px}}
@media(max-width:620px){.line-hero{padding:4.3rem 0 4.4rem}.line-hero h1{font-size:clamp(2.35rem,11vw,3.2rem)}.line-actions{flex-direction:column}.line-actions .btn{justify-content:center}.line-brief-row{grid-template-columns:88px 1fr}.line-section{padding:4.2rem 0}.line-grid,.line-products{grid-template-columns:1fr}.line-card,.line-product{min-height:0}.line-checklist-main ul{grid-template-columns:1fr}.line-faq summary{padding:1rem}.line-faq p{padding:0 1rem 1.1rem}.line-cta{padding:3.5rem 0 4.2rem}.line-cta-box{padding:1.75rem 1.25rem}.line-cta-actions{flex-direction:column}.line-cta-actions .btn{width:100%;flex:auto}}
@media(prefers-reduced-motion:reduce){.line-card{transition:none}.line-card:hover{transform:none}}
