/* TNS Corporate — visual system */
:root{--navy:#061b36;--navy-2:#09294b;--blue:#0877e8;--blue-2:#0056c9;--cyan:#12b9e9;--ink:#0b1e3d;--muted:#50647e;--pale:#edf5ff;--line:#d7e6f7;--white:#fff;--shadow:0 14px 38px rgba(8,39,77,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55;background:#fff}a{color:var(--blue-2);text-decoration:none}a:hover{color:#003f9b}img{max-width:100%;height:auto}.container{width:min(1380px,calc(100% - 64px));margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;background:#fff;padding:12px;z-index:999}.skip-link:focus{left:12px;top:12px}
.topbar{background:#03172e;color:#fff;font-size:14px}.topbar-inner,.topbar-left,.topbar-right{display:flex;align-items:center}.topbar-inner{min-height:40px;justify-content:space-between;gap:20px}.topbar-left,.topbar-right{gap:22px}.topbar a{color:#fff}.top-icon{font-size:17px;margin-right:8px;color:#fff}.top-separator{color:#67809d}
.site-header{background:#fff;position:relative;z-index:20;box-shadow:0 2px 12px rgba(2,22,48,.08)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:20px;min-width:350px}.tns-mark{font-size:46px;line-height:1;font-weight:900;font-style:italic;letter-spacing:-4px;color:#0870ce;position:relative}.tns-mark:after{content:"";position:absolute;width:70px;height:22px;border-top:5px solid #12a9ef;border-radius:50%;top:-5px;right:-7px;transform:rotate(-10deg)}.custom-logo{max-height:66px;width:auto}.brand-divider{height:54px;width:2px;background:#0d315a}.brand-copy{display:flex;flex-direction:column}.brand-name{font-size:25px;line-height:1.15;font-weight:800;color:var(--ink);letter-spacing:-.8px}.brand-tagline{font-size:15px;color:#244465}.primary-navigation .menu{list-style:none;display:flex;align-items:center;gap:28px;margin:0;padding:0}.primary-navigation .menu li{position:relative}.primary-navigation .menu a{display:block;color:#071a35;font-weight:700;padding:13px 0}.primary-navigation .menu a:hover,.primary-navigation .current-menu-item>a{color:var(--blue)}.primary-navigation .menu>li:last-child>a{background:var(--blue-2);color:#fff;padding:12px 22px;border-radius:9px}.primary-navigation .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:230px;padding:8px;background:#fff;box-shadow:var(--shadow);border:1px solid var(--line);border-radius:8px;list-style:none}.primary-navigation li:hover>.sub-menu,.primary-navigation li:focus-within>.sub-menu{display:block}.primary-navigation .sub-menu a{padding:9px 12px}.menu-toggle{display:none}
.hero{position:relative;overflow:hidden;min-height:294px;background:linear-gradient(90deg,rgba(3,22,43,.96) 0%,rgba(5,35,63,.88) 48%,rgba(3,22,43,.35) 100%),url('../images/hero-network.jpg') center 48%/cover no-repeat;color:#fff}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,43,.16),transparent 60%),repeating-linear-gradient(90deg,transparent 0 78px,rgba(31,147,227,.055) 79px 80px)}.hero-grid{position:absolute;right:0;top:0;width:54%;height:100%;opacity:.75;background:linear-gradient(90deg,transparent,rgba(0,144,235,.12)),repeating-linear-gradient(90deg,rgba(2,13,28,.1) 0 7px,rgba(13,89,146,.25) 8px 10px,rgba(2,13,28,.45) 11px 20px)}.hero-inner{position:relative;display:flex;align-items:center;min-height:294px}.hero-content{position:relative;z-index:2;width:64%;padding:24px 0 30px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#46c4ff;margin:0 0 8px}.hero h1{font-size:clamp(29px,3vw,43px);line-height:1.12;letter-spacing:-1.2px;margin:0 0 16px;color:#fff;font-weight:800}.hero-lead{font-size:19px;line-height:1.5;margin:0 0 22px;color:#f0f6ff}.hero-actions{display:flex;gap:18px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:12px 24px;border-radius:9px;font-weight:700;font-size:16px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(110deg,#0c8af4,#0058cb);color:#fff}.button-primary:hover{color:#fff;background:#0874e2}.button-outline{border:2px solid #fff;color:#fff;background:rgba(2,20,42,.24)}.button-outline:hover{background:#fff;color:var(--navy)}
.hero-visual{position:absolute;right:0;top:0;width:47%;height:100%;overflow:hidden}.server-wall{position:absolute;right:8%;top:10%;height:95%;width:43%;display:flex;gap:10px;transform:perspective(600px) rotateY(-9deg)}.server-wall i{flex:1;border:1px solid rgba(64,177,255,.55);border-radius:5px;background:repeating-linear-gradient(180deg,#07182b 0 11px,#0b3459 12px 16px,#06172b 17px 24px);box-shadow:inset 0 0 16px #007bce,0 0 18px rgba(0,133,255,.22);position:relative}.server-wall i:after{content:"";position:absolute;left:25%;right:25%;top:16%;height:4px;background:#0ba8ff;box-shadow:0 20px #0576d4,0 40px #13c6ff,0 60px #0576d4,0 80px #13c6ff}.server-glow{position:absolute;right:0;bottom:0;width:100%;height:20%;background:linear-gradient(0deg,rgba(0,160,255,.35),transparent)}.laptop{position:absolute;right:0;bottom:7%;width:43%;height:35%;transform:skewY(-7deg)}.laptop-screen{position:absolute;right:8%;top:0;width:78%;height:82%;border:5px solid #8abce0;border-bottom-width:8px;border-radius:9px;background:linear-gradient(140deg,#041327,#0b3154 65%,#06182d);box-shadow:0 0 22px rgba(0,155,255,.5)}.laptop-base{position:absolute;bottom:0;right:0;width:100%;height:12%;background:linear-gradient(#b9d4e7,#27435d);clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);border-radius:2px}
.section-space{padding:26px 0 20px}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.audience-card{display:grid;grid-template-columns:40% 60%;min-height:282px;border-radius:15px;overflow:hidden;background:#edf5ff;border:1px solid #d8e8fa;box-shadow:0 8px 22px rgba(6,44,89,.06)}.home-card{border-left:7px solid #1598f2}.business-card{border-left:7px solid #12b9c7}.card-visual{position:relative;overflow:hidden;min-height:280px;background:linear-gradient(145deg,#041b38,#0b75bf)}.visual-home{background:linear-gradient(0deg,rgba(3,20,42,.15),rgba(3,20,42,.15)),url('../images/particuliers.jpg') center/cover no-repeat}.laptop-mini{position:absolute;left:8%;top:17%;width:84%;height:55%;border:8px solid #263e56;border-radius:10px;background:linear-gradient(135deg,#0869e5,#031c42 75%);transform:rotate(-8deg);box-shadow:0 20px 35px rgba(0,0,0,.35)}.laptop-mini:after{content:"";position:absolute;bottom:-16px;left:-8%;width:116%;height:13px;background:#b5c7d8;clip-path:polygon(5% 0,95% 0,100% 100%,0 100%)}.stethoscope{position:absolute;right:12%;bottom:9%;font-size:65px;color:#d9efff;text-shadow:0 4px 8px #00152c;transform:rotate(30deg)}.visual-business{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(0deg,rgba(3,20,42,.18),rgba(3,20,42,.18)),url('../images/entreprises.jpg') center/cover no-repeat}.rack-row{height:76%;width:25%;border:2px solid #168bd0;border-radius:5px;background:repeating-linear-gradient(180deg,#06172a 0 13px,#0a3d68 14px 20px);box-shadow:inset 0 0 18px #0085d9,0 0 14px #007cc4}.rack-row i{display:block;height:4px;margin:10px 4px;background:#13baff;box-shadow:0 0 7px #12baff}.audience-content{padding:16px 24px 14px 28px;display:flex;flex-direction:column;justify-content:center}.card-heading{display:flex;align-items:center;gap:15px}.card-heading h2{font-size:27px;line-height:1.15;margin:0;font-weight:800;letter-spacing:-.5px}.line-icon{font-size:35px;color:#0784e8;font-weight:700}.audience-content h3{font-size:16px;margin:2px 0 10px}.check-list{list-style:none;padding:0;margin:0 0 16px}.check-list li{position:relative;padding-left:25px;margin:4px 0;font-size:15px}.check-list li:before{content:"✓";position:absolute;left:0;color:#0064c9;font-weight:900;font-size:19px;top:-3px}.text-button{align-self:flex-start;background:linear-gradient(110deg,#0879e6,#0054bd);color:#fff;padding:9px 18px;border-radius:8px;font-weight:700}.text-button:hover{color:#fff;background:#004ba9}.text-button span{font-size:20px;margin-left:8px;line-height:0}
.benefits{padding:15px 0 36px}.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.benefit{display:flex;align-items:center;gap:16px}.benefit-icon{font-size:43px;line-height:1;color:#0785e9;min-width:48px;text-align:center}.benefit h3{font-size:17px;margin:0 0 1px;font-weight:800}.benefit p{margin:0;color:#193d62;font-size:15px;line-height:1.45}
.references-band{background:radial-gradient(ellipse at 25% 50%,rgba(0,112,194,.28),transparent 45%),linear-gradient(110deg,#061a34,#032345 60%,#04172d);color:#fff;position:relative;overflow:hidden}.references-band:after{content:"";position:absolute;right:0;top:0;width:35%;height:100%;background:repeating-linear-gradient(120deg,transparent 0 30px,rgba(0,137,219,.07) 31px 33px)}.references-inner{min-height:135px;display:flex;align-items:center;gap:25px;position:relative;z-index:1}.references-symbol{font-size:45px;color:#fff}.references-copy{flex:1}.references-copy h2{font-size:27px;margin:0 0 0;font-weight:800}.references-copy p{margin:0;font-size:16px;line-height:1.45}.references-inner .button{min-width:220px}
.site-footer{background:#04152a;color:#dce9f8}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-top:42px;padding-bottom:36px}.footer-main h2,.footer-main h3{color:#fff;margin:0 0 12px}.footer-main h2{font-size:20px}.footer-main h3{font-size:16px}.footer-main p{margin:5px 0;color:#c4d5e8}.footer-main ul{list-style:none;margin:0;padding:0}.footer-main li{margin:7px 0}.footer-main a{color:#c4d5e8}.footer-main a:hover{color:#fff}.footer-logo{font-size:30px;font-weight:900;font-style:italic;color:#4eb7ff}.footer-logo span{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#9eb4cb}.footer-bottom-inner{min-height:48px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.page-hero{background:linear-gradient(110deg,#061b36,#0a4777);color:#fff;padding:38px 0}.page-hero h1{font-size:36px;margin:0}.page-content{padding-top:38px;padding-bottom:60px;max-width:1120px}.entry-content{font-size:17px;line-height:1.75}.entry-content h2,.entry-content h3{color:var(--ink);line-height:1.25}.entry-content a{text-decoration:underline}.featured-image{margin-bottom:25px}.featured-image img{border-radius:12px}.posts-list{display:grid;gap:22px}.post-card{padding:24px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.post-card h2{margin:0 0 5px}.entry-meta{color:var(--muted);font-size:14px}
@media(max-width:1100px){.brand{min-width:0}.brand-name{font-size:21px}.primary-navigation .menu{gap:16px}.audience-card{grid-template-columns:34% 66%}.audience-content{padding:16px}.card-heading h2{font-size:23px}.benefits-grid{gap:14px}.benefit{gap:10px}}
@media(max-width:820px){.container{width:min(100% - 36px,680px)}.topbar-inner{padding:8px 0;align-items:flex-start}.topbar-left,.topbar-right{gap:8px;flex-wrap:wrap}.topbar-right{justify-content:flex-end}.top-separator{display:none}.header-inner{min-height:76px}.brand{gap:12px}.tns-mark{font-size:38px}.brand-divider{height:44px}.brand-name{font-size:18px}.brand-tagline{font-size:12px}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:#eef6ff;padding:11px;border-radius:7px}.menu-toggle span:not(.screen-reader-text){width:22px;height:2px;background:#09294b}.primary-navigation{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:12px 24px 20px;box-shadow:var(--shadow)}.primary-navigation.is-open{display:block}.primary-navigation .menu{display:flex;flex-direction:column;align-items:stretch;gap:0}.primary-navigation .menu a{padding:11px 4px;border-bottom:1px solid #e5edf6}.primary-navigation .menu>li:last-child>a{display:inline-block;margin-top:8px;padding:10px 18px}.primary-navigation .sub-menu{display:block;position:static;box-shadow:none;border:0;padding-left:18px}.hero-inner{min-height:330px}.hero-content{width:100%;padding:35px 0}.hero-visual{width:60%;opacity:.12}.hero-content h1{font-size:32px}.hero-lead{font-size:17px}.audience-grid{grid-template-columns:1fr}.audience-card{grid-template-columns:36% 64%;min-height:260px}.card-visual{min-height:260px}.benefits-grid{grid-template-columns:repeat(2,1fr);row-gap:22px}.references-inner{padding-top:25px;padding-bottom:25px;flex-wrap:wrap}.references-copy{min-width:70%}.references-inner .button{margin-left:68px}.footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-brand{grid-column:1/-1}}
@media(max-width:540px){.container{width:calc(100% - 30px)}.topbar-inner{display:block;font-size:12px}.topbar-left,.topbar-right{justify-content:space-between}.topbar-right{margin-top:3px}.header-inner{gap:10px}.brand{gap:9px}.tns-mark{font-size:32px}.brand-divider{height:38px}.brand-name{font-size:15px;letter-spacing:-.3px}.brand-tagline{font-size:10px}.hero-inner{min-height:370px}.hero-content{padding:30px 0}.hero h1{font-size:29px}.hero-lead{font-size:16px}.hero-lead br{display:none}.hero-actions{gap:10px}.button{width:100%;font-size:15px;padding:12px 14px}.hero-visual{width:100%;opacity:.08}.section-space{padding-top:18px}.audience-card{grid-template-columns:1fr}.card-visual{min-height:150px}.visual-home .laptop-mini{width:55%;left:20%;top:12%;height:72%}.stethoscope{font-size:42px}.visual-business{min-height:150px}.rack-row{height:80%;width:16%}.audience-content{padding:18px}.card-heading h2{font-size:23px}.check-list li{font-size:14px}.benefits-grid{grid-template-columns:1fr;gap:18px}.benefit-icon{font-size:36px}.references-inner{gap:12px}.references-symbol{font-size:34px}.references-copy{min-width:0;flex:1}.references-copy h2{font-size:23px}.references-copy p{font-size:14px}.references-copy p br{display:none}.references-inner .button{margin-left:46px;width:auto;min-width:0}.footer-main{grid-template-columns:1fr;gap:24px}.footer-brand{grid-column:auto}.footer-bottom-inner{padding:12px 0;display:block}.footer-bottom-inner span{display:block;margin:4px 0}.page-hero h1{font-size:29px}}


/* Footer links placed in the bottom strip, as requested */
.footer-bottom-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}
.footer-copyright{justify-self:start}
.footer-legal-nav{display:flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap}
.footer-legal-nav a{color:#c4d5e8;text-decoration:none;transition:color .2s}
.footer-legal-nav a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.footer-legal-nav span{color:#607b98}
.footer-tagline{justify-self:end;text-align:right}
@media(max-width:700px){
 .footer-bottom-inner{display:flex;flex-wrap:wrap;justify-content:center;gap:7px 16px;padding:12px 0;text-align:center}
 .footer-copyright,.footer-tagline{justify-self:auto;text-align:center}
 .footer-legal-nav{order:3;width:100%;justify-content:center}
}


/* Blog content + classic Genesis-compatible widget sidebar */
.content-with-sidebar{max-width:1380px;display:grid;grid-template-columns:minmax(0, 2.15fr) minmax(250px, .85fr);gap:42px;align-items:start}
.main-column{min-width:0}
.content-sidebar{min-width:0;background:#f4f7fb;border:1px solid #e3ebf4;border-radius:10px;padding:22px 24px}
.content-sidebar .widget{margin:0 0 30px;padding:0 0 24px;border-bottom:1px solid #dce6f0}
.content-sidebar .widget:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.content-sidebar .widget-title{font-size:17px;line-height:1.3;text-transform:uppercase;letter-spacing:.3px;color:#0b1e3d;margin:0 0 15px;font-weight:800}
.content-sidebar ul{list-style:none;margin:0;padding:0}
.content-sidebar li{margin:0 0 9px;padding-left:14px;position:relative;font-size:14px}
.content-sidebar li:before{content:"›";position:absolute;left:0;color:#0b74d5;font-weight:800}
.content-sidebar a{color:#1688d5}
.content-sidebar a:hover{color:#004fae;text-decoration:underline}
.content-sidebar .tagcloud{line-height:2.15}
.content-sidebar .tagcloud a{display:inline-block;margin:0 5px 3px 0}
.content-sidebar select{max-width:100%;width:100%;padding:10px;border:1px solid #d2dce8;border-radius:4px;background:#fff;color:#26384d}
.content-sidebar img{max-width:100%;height:auto}
.content-sidebar iframe{max-width:100%}
@media(max-width:850px){
 .content-with-sidebar{grid-template-columns:1fr;gap:30px}
 .content-sidebar{padding:20px}
}
