/*
Theme Name: Forge Informatique Sarthoise
Theme URI: https://forge72.it/
Author: Forge Informatique Sarthoise
Description: Thème WordPress léger, local et orienté services IT pour Forge Informatique Sarthoise.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: forge-informatique-sarthoise
*/
:root{--ink:#152b3f;--blue:#124ee8;--orange:#ef641e;--paper:#f5f7fa;--line:#d8e0e8;--muted:#536475}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:white;font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus,textarea:focus,select:focus{outline:3px solid var(--orange);outline-offset:4px}button{cursor:pointer}p{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.5vw,5.1rem);font-weight:800;margin-bottom:26px}h2{font-size:clamp(2rem,3.7vw,3.3rem);margin-bottom:24px}h3{font-size:1.55rem}small,.small{font-size:.875rem;line-height:1.55}.wrap{max-width:1260px;margin:auto;padding:0 38px}.notice{background:#eaf0ff;text-align:center;font-size:.875rem;padding:7px 15px;color:#233f77}.top{background:var(--ink);color:#fff;font-size:.875rem}.top .wrap{display:flex;justify-content:space-between;padding-top:7px;padding-bottom:7px}.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:28px;min-height:91px}.brand{display:flex;align-items:center;gap:12px;min-width:205px}.monogram{font-size:35px;line-height:1;background:var(--blue);color:#fff;padding:10px 15px;font-weight:900;box-shadow:5px 5px 0 var(--orange)}.brand strong{display:block;font-size:23px;line-height:1.05;letter-spacing:-1px}.brand small{font-size:12px;letter-spacing:1px}.links{display:flex;align-items:center;gap:23px;margin-left:auto;font-size:.875rem;font-weight:700}.links a:hover,.links a[aria-current=page]{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--blue);color:#fff;padding:14px 22px;border:1px solid transparent;font-weight:700;border-radius:3px;line-height:1.4}.btn:hover{background:#0c36a6;color:#fff}.btn.orange{background:#c74909;color:#fff}.btn.ghost{background:transparent;color:var(--ink);border-color:#9caaba}.menu{display:none;background:white;border:1px solid var(--line);padding:9px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:64px;padding-top:65px;padding-bottom:65px;align-items:center}.eyebrow{text-transform:uppercase;color:var(--blue);font-weight:700;letter-spacing:1.8px;font-size:.8rem;margin-bottom:23px}.hero h1 span{color:var(--blue)}.hero p{max-width:520px;font-size:1.12rem}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.hero .small{font-size:.875rem}.hero figure{margin:0;position:relative}.hero img{width:100%;height:530px;object-fit:cover;object-position:center 64%;display:block;border-radius:2px}.photo-label{position:absolute;left:-25px;bottom:30px;background:white;padding:18px 25px;box-shadow:0 10px 30px #0002;border-left:4px solid var(--orange)}.photo-label strong{display:block;font-size:1.12rem}.photo-label small{color:var(--muted)}.proof{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.proof .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:23px;padding-bottom:23px;font-size:.925rem}.tick{color:var(--blue);font-weight:bold;margin-right:10px}.section{padding:78px 0}.soft{background:var(--paper)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.section-head h2{margin-bottom:0;max-width:630px}.text-link{border-bottom:1px solid currentColor;color:var(--blue);font-weight:700;white-space:nowrap}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;background:white;border-radius:4px}.card .number{font-family:monospace;color:var(--blue);margin-bottom:28px;font-size:.9rem}.card p{margin-bottom:22px}.card .price{font-weight:800;font-size:2rem;letter-spacing:-1px;line-height:1.4;margin-top:auto}.card .price small{font-size:.875rem;font-weight:400;letter-spacing:0}.card .btn{margin-top:22px}.card.featured{border-top:4px solid var(--orange);padding-top:27px}.tag{display:inline-block;background:#eef3ff;color:#2149a9;padding:4px 9px;font-size:.8rem;font-weight:bold;align-self:start;margin-bottom:18px}.business{background:#132d45;color:white}.business p{color:#c1cedb}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.business .eyebrow{color:#ff955d}.business h2{font-size:3.2rem}.list-row{padding:22px 0;border-bottom:1px solid #ffffff30}.list-row h3{margin:0 0 10px;font-size:1.5rem}.list-row p{margin:0}.business .btn.ghost{color:white;border-color:#718296}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.step{padding-top:25px;border-top:2px solid var(--line)}.step b{display:block;color:var(--orange);font-size:1.1rem;margin-bottom:20px}.town-panel{border:1px solid var(--line);padding:28px;background:white}.field{display:block;margin:0 0 19px;font-size:.9rem;font-weight:700}.field input,.field select,.field textarea,.search{width:100%;padding:13px 14px;border:1px solid #a8b4c1;border-radius:3px;background:white;margin-top:7px;color:var(--ink);font-weight:400}.towns{max-height:460px;overflow:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:0 20px;margin-top:24px}.town{padding:12px 0;border-bottom:1px solid var(--line);font-size:.875rem}.town span{display:block;color:var(--muted);font-size:.8rem}.towns.compact{grid-template-columns:1fr 1fr;max-height:240px}.filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:27px}.filter button{padding:10px 18px;background:white;border:1px solid var(--line);border-radius:30px;color:var(--ink)}.filter button.active{color:white;background:var(--ink);border-color:var(--ink)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';color:var(--blue);font-size:1.25rem}details[open] summary:after{content:'−'}details p{margin:16px 0 0;max-width:800px}.cta{background:var(--blue);color:white;padding:46px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:2.5rem;margin:0}.cta p{color:#d9e5ff;margin:12px 0 0}.cta .btn{background:white;color:var(--blue)}footer{background:#0d2336;color:white;padding:50px 0 25px}footer p,footer small{color:#bac7d3}footer .columns{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}footer a{display:block;margin-bottom:10px;font-size:.9rem}footer .bottom{margin-top:35px;padding-top:20px;border-top:1px solid #ffffff25;font-size:.8rem;color:#bac7d3}.page-head{padding:55px 0 30px;background:var(--paper)}.page-head h1{font-size:3.6rem;max-width:930px}.page-head p{max-width:790px;font-size:1.1rem}.breadcrumb{font-size:.875rem;color:var(--muted);margin-bottom:25px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}td,th{padding:19px;border-bottom:1px solid var(--line)}th{background:var(--paper)}td:last-child{font-weight:bold;white-space:nowrap}.note{padding:19px 23px;border-left:3px solid var(--orange);background:#fff4ec;margin:25px 0;color:#784120}.contact-box{background:var(--paper);padding:30px}.contact-box a.phone{font-size:2rem;font-weight:800;color:var(--blue)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.full{grid-column:1/-1}.output{white-space:pre-wrap;background:var(--paper);padding:24px;border:1px solid var(--line);margin-top:25px}.mobile-call{display:none}[hidden]{display:none!important}.skip{position:absolute;left:-10000px}.skip:focus{left:10px;top:10px;background:white;padding:10px;z-index:100}
@media(max-width:1050px){.links{gap:13px}.nav{gap:15px}.nav>.btn{display:none}.hero{gap:32px}.hero img{height:510px}.wrap{padding-left:26px;padding-right:26px}}
@media(max-width:760px){.wrap{padding-left:21px;padding-right:21px}.top .wrap span:last-child{display:none}.notice{font-size:.8rem}.nav{min-height:78px;justify-content:space-between}.menu{display:block}.links{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:25px;box-shadow:0 10px 15px #0001}.links.open{display:flex;flex-direction:column;align-items:start}.hero{grid-template-columns:1fr;padding-top:37px;gap:25px;padding-bottom:35px}h1{font-size:3.2rem}.hero img{height:350px;object-position:center 66%}.photo-label{left:12px;bottom:16px;padding:13px 19px}.hero p{font-size:1rem}.proof .wrap{grid-template-columns:1fr;gap:7px;padding-top:17px;padding-bottom:17px}.section{padding:48px 0}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:20px}.cards,.steps,.split{grid-template-columns:1fr;gap:22px}.card{padding:25px}.card .number{margin-bottom:18px}.business h2{font-size:2.6rem}.towns,.towns.compact{grid-template-columns:1fr 1fr}.cta .wrap{display:block}.cta .btn{margin-top:25px}.cta h2{font-size:2rem}footer{padding-bottom:90px}footer .columns{grid-template-columns:1fr}.page-head h1{font-size:2.7rem}.form-grid{grid-template-columns:1fr}.mobile-call{position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid var(--line);display:flex;padding:10px 15px;gap:10px;z-index:30}.mobile-call .btn{flex:1;padding:11px 8px;font-size:.875rem}.contact-box a.phone{font-size:1.6rem}.top{font-size:.8rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.original-logo{width:76px;height:76px;object-fit:contain;flex:none}.brand{gap:10px}.brand strong{font-size:21px}.brand small{font-size:11px}@media(max-width:1050px){.brand small{max-width:125px;display:block}.brand{min-width:195px}}@media(max-width:760px){.original-logo{width:65px;height:65px}.brand small{max-width:none}}
.lead{font-size:1.16rem;max-width:820px;color:var(--ink)}.blog-card{padding:0 0 26px;overflow:hidden}.blog-card img{display:block;width:100%;height:180px;object-fit:cover;margin-bottom:23px}.blog-card .tag,.blog-card h3,.blog-card p,.blog-card .text-link{margin-left:26px;margin-right:26px}.blog-card h3{font-size:1.3rem}.article{max-width:1050px}.article-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font-size:.875rem;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:27px}.brief-item{display:grid;grid-template-columns:330px 1fr;gap:40px;padding:45px 0;border-top:1px solid var(--line)}.brief-image img{width:100%;height:210px;object-fit:cover;border-radius:3px}.brief-item h2{font-size:2rem;margin-top:12px;margin-bottom:16px}.brief-item h3{font-size:1.25rem;letter-spacing:-.02em;margin-top:24px}.brief-item .small{margin-top:20px}.article .note{font-size:1.05rem;margin:45px 0}.article .tag{margin-bottom:0}@media(max-width:760px){.article-meta{display:block}.article-meta span{display:block;margin-bottom:10px}.brief-item{grid-template-columns:1fr;gap:20px;padding:32px 0}.brief-image img{height:210px}.blog-card img{height:210px}}

.links ul{display:flex;align-items:center;gap:23px;margin:0;padding:0;list-style:none}
.links li{margin:0;padding:0}
.links a{display:block}
.forge-post-card{height:100%}
.forge-post-card .post-date{display:block;color:var(--muted);font-size:.8rem;margin:0 26px 14px}
.forge-single-head{padding-bottom:20px}
.forge-single-content{padding-top:35px}
.forge-single-content img{max-width:100%;height:auto}
.forge-pagination{display:flex;justify-content:space-between;gap:20px;margin-top:40px}
.forge-pagination a{color:var(--blue);font-weight:700}
.forge-admin-note{border-left:3px solid var(--orange);padding:12px 16px;background:#fff4ec}
/* Navigation mobile */
@media(max-width:760px){
  body.menu-open{overflow:hidden}
  .header{z-index:50}
  .menu{display:inline-flex;align-items:center;justify-content:center;min-width:78px;min-height:44px;font-weight:700;color:var(--ink);border-radius:3px}
  nav.links{display:none;top:78px;max-height:calc(100vh - 78px);overflow:auto;padding:14px 21px 24px}
  nav.links.open{display:block}
  nav.links .menu-list{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;margin:0;padding:0;list-style:none}
  nav.links .menu-list li{border-bottom:1px solid var(--line)}
  nav.links .menu-list a{padding:15px 4px;font-size:1rem}
  nav.links .menu-list a:hover,nav.links .menu-list a[aria-current=page]{background:#f2f5f8;color:var(--blue)}
}