/*
Theme Name: DSPS Serrurier Lyon
Theme URI: https://dsps-serrurier.fr/
Author: DSPS
Description: Thème WordPress léger pour DSPS Serrurier à Lyon.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: dsps-lyon
*/
.service-more{margin:24px 0 0;color:#526778;font-size:.98rem}.service-more a{font-weight:700;text-underline-offset:3px}.review-links{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin:30px 0 0}.google-review-badge{display:inline-flex;align-items:center;gap:17px;min-width:310px;padding:16px 20px;border:1px solid #d6e2e9;border-radius:12px;background:#fff;color:#10283d;text-decoration:none;box-shadow:0 12px 32px #102b4318;transition:transform .2s,box-shadow .2s}.google-review-badge:hover{transform:translateY(-2px);box-shadow:0 16px 36px #102b4326;text-decoration:none;color:#10283d}.google-review-badge:focus-visible{outline:3px solid #174c78;outline-offset:3px}.google-g{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#f2f6fb;font-size:2rem;font-weight:800;font-family:Arial,sans-serif;color:#4285f4}.google-badge-copy{display:grid;line-height:1.3}.google-badge-copy strong{font-size:1.07rem}.google-badge-copy small{font-size:.85rem;color:#526778}.google-arrow{font-size:1.3rem;margin-left:auto;color:#174c78}.review-more{font-weight:700}.review-note{font-size:.89rem;color:#526778}@media(max-width:620px){.google-review-badge{width:100%;min-width:0}}:root{--ink:#10283d;--blue:#174c78;--sky:#77c4e9;--pale:#eef6fa;--line:#dbe8ef;--muted:#526778;--white:#fff;--orange:#f5ad60}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;background:#fff}a{color:var(--blue)}a:hover{text-decoration:underline}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.025em}h1{font-size:clamp(2.6rem,5.4vw,5rem);max-width:850px}h2{font-size:clamp(2rem,3.3vw,3.4rem)}h3{font-size:1.26rem}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip-link{position:absolute;left:-10000px;top:0;background:#fff;padding:12px;z-index:99}.skip-link:focus{left:8px}.topline{background:var(--ink);color:#e4f4ff;font-size:.83rem}.topline .wrap{display:flex;justify-content:space-between;gap:16px;padding:7px 0}.topline a{color:#fff}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header-inner{display:flex;align-items:center;gap:26px;min-height:82px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font-weight:850;font-size:1.12rem;line-height:1.15;white-space:nowrap}.brand img{width:160px;height:auto}.nav{display:flex;gap:23px;align-items:center;margin-left:10px}.nav a{text-decoration:none;color:var(--ink);font-weight:650;font-size:.92rem}.nav a:hover,.nav .current-menu-item a{color:var(--blue);text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--blue);color:#fff;text-decoration:none;border:2px solid var(--blue);border-radius:7px;padding:12px 20px;font-weight:760;min-height:48px}.button:hover{color:#fff;background:#103b60;text-decoration:none}.button.light{background:#fff;border-color:#fff;color:var(--ink)}.button.outline{background:transparent;color:var(--blue)}.header-call{white-space:nowrap;margin-left:auto}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:9px 12px;border-radius:6px;font:inherit;font-weight:700}.hero{background:linear-gradient(115deg,#102b43 0%,#17527d 70%,#20638e 100%);color:#fff;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:50px;padding:94px 0 104px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.78rem;font-weight:800;color:#17618b;margin-bottom:17px}.hero .eyebrow{color:#a7e4ff}.hero p{font-size:1.12rem;max-width:650px;color:#e4f2fb}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.hero-note{font-size:.85rem!important;color:#c7e4f5!important}.hero-panel{background:#fff;color:var(--ink);padding:34px;border-radius:12px;box-shadow:0 24px 65px #061d3266;position:relative}.hero-panel:before{content:"";position:absolute;inset:10px -14px -14px 14px;border:1px solid #a5d8f1;border-radius:12px;z-index:-1}.hero-panel h2{font-size:1.55rem}.hero-panel ul{padding-left:21px;margin-bottom:0}.hero-panel li{margin:10px 0}.trust-strip{background:#eaf5fb;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:21px 0;font-weight:700;font-size:.93rem}.trust-grid span:before{content:"✓";display:inline-grid;place-items:center;background:var(--blue);color:#fff;border-radius:50%;width:22px;height:22px;margin-right:10px;font-size:.75rem}.section{padding:82px 0}.section.alt{background:#f5f9fb}.intro{max-width:780px;color:var(--muted);font-size:1.06rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:19px;margin-top:33px}.card{background:#fff;padding:28px;border:1px solid var(--line);border-radius:10px;box-shadow:0 9px 24px #143f6110}.card-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:8px;background:#d9effb;color:var(--blue);font-size:1.35rem;margin-bottom:24px}.card p{color:var(--muted)}.card a{font-weight:750;text-underline-offset:4px}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.check-list{padding:0;list-style:none}.check-list li{padding:12px 0;border-bottom:1px solid var(--line)}.check-list li:before{content:"✓";font-weight:900;color:var(--blue);margin-right:12px}.service-area{background:var(--ink);color:#fff}.service-area .eyebrow,.service-area .intro{color:#b8ddf2}.locations{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.locations span,.locations a{border:1px solid #76a5c4;border-radius:100px;padding:7px 14px;color:#fff;text-decoration:none;font-weight:650;font-size:.92rem}.notice{font-size:.87rem;color:var(--muted)}.service-area .notice{color:#b8ddf2}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:30px}.step b{display:grid;place-items:center;border:2px solid var(--sky);border-radius:50%;width:44px;height:44px;color:var(--blue);margin-bottom:15px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{font-weight:760;cursor:pointer;list-style:none}.faq summary:after{content:"+";float:right;color:var(--blue);font-size:1.5rem;line-height:1}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--muted);margin:15px 35px 0 0}.cta-band{background:var(--blue);color:#fff;padding:48px 0}.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band h2{font-size:2rem;margin-bottom:7px}.cta-band p{margin:0}.site-footer{background:#0b2235;color:#d8e7ef;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.site-footer h3{color:#fff}.site-footer a{color:#d8e7ef}.site-footer ul{list-style:none;padding:0}.site-footer li{margin:8px 0}.footer-bottom{border-top:1px solid #395066;margin-top:45px;padding-top:20px;font-size:.85rem}.content{padding:70px 0;max-width:850px}.content h1{font-size:clamp(2.3rem,4.5vw,4rem)}.content h2{margin-top:45px}.content p,.content li{font-size:1.05rem}.content .lead{font-size:1.22rem;color:var(--muted)}.article-cta{background:var(--pale);border-left:4px solid var(--blue);padding:24px;margin:35px 0}.breadcrumbs{font-size:.85rem;color:var(--muted);margin-bottom:30px}.breadcrumbs a{color:var(--muted)}.mobile-call{display:none}
@media(max-width:900px){.header-inner{flex-wrap:wrap;min-height:70px}.menu-toggle{display:block;margin-left:auto}.nav{display:none;order:3;width:100%;margin:0;flex-direction:column;align-items:stretch;padding:0 0 18px;gap:0}.nav.open{display:flex}.nav a{display:block;padding:11px 0}.header-call{display:none}.hero-inner{grid-template-columns:1fr;gap:15px;padding:62px 0}.hero-panel{max-width:520px}.cards{grid-template-columns:repeat(2,1fr)}.split{gap:28px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;background:#fff;padding:9px 20px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -6px 20px #102b4330;z-index:11}.mobile-call .button{display:flex}.site-footer{padding-bottom:100px}}
@media(max-width:620px){.topline .wrap span:nth-child(2){display:none}.brand img{width:132px}.brand{font-size:.94rem}.hero h1{font-size:2.7rem}.hero-panel{padding:23px}.trust-grid{grid-template-columns:1fr;gap:8px}.section{padding:58px 0}.cards,.split,.steps,.footer-grid{grid-template-columns:1fr}.cta-band .wrap{display:block}.cta-band .button{margin-top:20px}.content{padding:45px 0}.actions .button{width:100%}}

.diagnostic fieldset{border:1px solid var(--line);border-radius:10px;padding:22px;margin:0 0 22px}.diagnostic legend{font-size:1.25rem;font-weight:800;padding:0 8px}.diagnostic label{display:block;margin:12px 0;font-size:1rem}.diagnostic label:has(input[type=radio]){padding:12px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.diagnostic label:has(input[type=radio]:checked){border-color:var(--blue);background:var(--pale)}.diagnostic input[type=radio]{margin-right:9px;accent-color:var(--blue)}.diagnostic input[type=text]{display:block;width:100%;max-width:420px;padding:12px;border:1px solid var(--muted);border-radius:7px;font:inherit}.diagnostic-result{background:var(--pale);border-left:4px solid var(--blue);padding:24px;margin:30px 0;scroll-margin-top:110px}.diagnostic-result h2{font-size:1.7rem;margin-top:0}.diagnostic-note{font-size:.9rem!important;color:var(--muted);margin-top:20px}.hero-panel a{color:var(--blue);font-weight:750}@media(max-width:620px){.diagnostic fieldset{padding:15px}.diagnostic-result{padding:18px}}


.contact-layout{padding:65px 0 85px}.contact-intro{max-width:820px;margin-bottom:32px}.contact-intro h1{font-size:clamp(2.3rem,4.5vw,4rem)}.contact-intro .lead{font-size:1.18rem;color:var(--muted)}.contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.contact-option{padding:32px;border:1px solid var(--line);border-radius:12px;background:#f5f9fb}.contact-option h2{font-size:1.8rem}.contact-option .button{margin:12px 0}.contact-urgent{background:var(--ink);color:#fff;border-color:var(--ink)}.contact-urgent .eyebrow,.contact-urgent .contact-fine{color:#c9e6f5}.contact-urgent a:not(.button){color:#fff}.contact-fine{font-size:.9rem;color:var(--muted);margin:8px 0 0}.contact-prep{margin-top:48px;max-width:780px}.contact-prep h2{font-size:1.8rem}.dsps-request-form{margin:28px 0 45px;padding:30px;background:#f5f9fb;border:1px solid var(--line);border-radius:12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dsps-request-form label{display:block;font-weight:720;margin:0 0 7px}.dsps-request-form input,.dsps-request-form select,.dsps-request-form textarea{display:block;width:100%;min-height:48px;padding:10px 12px;border:1px solid #849aaa;border-radius:7px;background:#fff;color:var(--ink);font:inherit}.dsps-request-form textarea{min-height:130px;resize:vertical}.dsps-request-form .form-grid+label{margin-top:20px}.dsps-request-form :is(input,select,textarea,button):focus-visible{outline:3px solid var(--sky);outline-offset:2px}.form-note{font-size:.9rem!important;color:var(--muted)}.form-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-feedback{padding:18px 22px;border-radius:7px;margin:22px 0;font-weight:700}.form-feedback.success{background:#e5f5ea;border:1px solid #36754b}.form-feedback.error{background:#fff0ef;border:1px solid #a13c35}@media(max-width:680px){.contact-layout{padding:38px 0 65px}.contact-options,.form-grid{grid-template-columns:1fr}.contact-option,.dsps-request-form{padding:22px}}
.content table{border-collapse:collapse;width:100%;margin:24px 0 16px;font-size:.98rem}.content caption{text-align:left;font-weight:750;margin-bottom:10px}.content th,.content td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.content thead{background:var(--pale)}@media(max-width:620px){.content table{font-size:.86rem}.content th,.content td{padding:8px 5px}}
