/*
Theme Name: KG Clean Hospitalité
Description: Présentation éditoriale de KG Clean, services et ressources pour les hébergements.
Version: 1.0.1
Text Domain: kgclean-hospitality
*/
:root{--ink:#13287e;--body:#394364;--muted:#58617b;--paper:#ffffff;--cream:#f4f6fc;--line:#dce1ee;--gold:#f3cd74;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body.kg-site{margin:0;background:var(--paper);color:var(--body);font-family:var(--sans);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:var(--ink);text-underline-offset:5px}a:hover{color:#314da5}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #314da5;outline-offset:5px}button,input{font:inherit}img{max-width:100%;height:auto;display:block}figure{margin:0}h1,h2,h3,p,ul{margin-top:0}h1,h2,h3{color:var(--ink);font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.1}h1{font-size:clamp(42px,4.4vw,68px);margin:0 0 26px}h2{font-size:clamp(32px,3.05vw,46px);max-width:850px;margin-bottom:28px}h3{font-size:22px;line-height:1.3;letter-spacing:-.025em;font-weight:500}p{margin-bottom:22px}ul{padding-left:21px}li{padding-left:4px;margin-bottom:10px}.wrap{width:min(1232px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:11px;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:20px}.small{font-size:13px;line-height:1.65}.section{padding:90px 0}.section .wrap>p{max-width:760px}.section.tint{background:var(--cream)}.prose{max-width:840px}.prose p,.prose li{font-size:17px;line-height:1.85}.prose h2{font-size:37px}.section:has(+.section:not(.tint):not(.cta))+.section:not(.tint):not(.cta){padding-top:16px}.skip-link{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}.topbar{background:var(--ink);color:#ffffff;font-size:11px;letter-spacing:.06em;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between;align-items:center}.topbar a{color:inherit;text-decoration:none}.site-header{background:var(--paper);position:relative;z-index:20;border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;justify-content:space-between;min-height:112px;gap:32px}.brand{text-decoration:none;display:inline-flex;flex-direction:column;flex-shrink:0;color:var(--ink)}.brand-main{font-size:30px;font-weight:700;letter-spacing:-.06em;line-height:1.3}.brand-dot{color:var(--gold);margin-right:7px}.brand-sub{font-size:8px;letter-spacing:.19em;font-weight:700;margin-top:5px}.main-nav{display:flex;gap:30px;align-items:center}.nav-list{display:flex;align-items:center;list-style:none;gap:25px;margin:0;padding:0}.nav-list li{padding:0;margin:0}.nav-list a{text-decoration:none;font-size:13px;line-height:1.4;white-space:nowrap}.nav-list .current-menu-item a{border-bottom:1px solid var(--gold);padding-bottom:8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--gold);color:var(--ink);border:1px solid var(--gold);padding:17px 23px;text-decoration:none;font-weight:600;font-size:13px;line-height:1.4;cursor:pointer;transition:background .2s,color .2s}.button:hover{background:#f8dba0;color:var(--ink)}.button.light{background:var(--gold);border-color:var(--gold);color:var(--ink)}.button.light:hover{background:white;color:var(--ink)}.nav-cta{padding:14px 18px;font-size:12px}.menu-toggle{display:none}.hero{padding:70px 0 80px}.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:76px;align-items:center}.hero em{font-style:normal;color:#314da5}.hero .lead{font-size:17px;line-height:1.85;max-width:610px;margin-bottom:32px}.hero figure{position:relative;padding:0 0 0 26px}.hero figure:before{content:'';position:absolute;left:0;top:28px;bottom:28px;width:1px;background:var(--gold)}.hero figure img{width:100%;height:590px;object-fit:cover;object-position:46% center;border-radius:180px 180px 0 0}.hero figcaption{position:absolute;bottom:20px;left:46px;right:20px;color:white;font-family:var(--serif);font-size:18px;text-shadow:0 2px 8px #000;letter-spacing:.01em}.hero.compact{padding:65px 0 75px}.hero-copy{max-width:920px}.hero-copy h1{font-size:clamp(40px,4vw,60px)}.hero-copy .lead{max-width:810px;font-size:18px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}.text-link{display:inline-block;text-decoration:none;font-size:13px;line-height:1.6;padding-bottom:5px;border-bottom:1px solid var(--gold);font-weight:600}.trust-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0}.trust-line .wrap{display:flex;justify-content:space-between;gap:20px}.trust-line span{font-size:11px;text-transform:uppercase;letter-spacing:.13em}.trust-line span:before{content:'✦';color:var(--gold);margin-right:14px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:38px 0 30px}.card{border:1px solid var(--line);padding:32px 28px 26px;display:flex;flex-direction:column;position:relative;background:var(--paper)}.card .eyebrow{font-size:9px;margin-bottom:28px}.card h3{font-family:var(--serif);font-size:27px;line-height:1.15;min-height:64px}.card h3 a{text-decoration:none}.card p:not(.eyebrow){font-size:14px;line-height:1.8;margin-bottom:24px}.card-link{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);text-decoration:none;font-size:11px;letter-spacing:.03em}.card-link span{font-size:21px;color:var(--gold)}.card:hover{border-color:#9aa8d0}.cards:has(>.card:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}.cards:has(>.card:nth-child(4):last-child) .card{padding:30px 22px}.cards:has(>.card:nth-child(4):last-child) h3{font-size:25px}.cards:has(>.card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.editorial-photo img{width:100%;height:530px;object-fit:cover;object-position:center;border-radius:0 130px 0 0}.split ul{font-size:14px}.cta{background:var(--ink);color:#e4e9fa}.cta h2{color:var(--paper);max-width:800px}.cta .eyebrow{color:var(--gold)}.cta p{max-width:750px}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0}.chips a{border:1px solid var(--line);padding:9px 17px;font-size:13px;text-decoration:none}.chips a:hover{background:var(--cream)}.breadcrumb{padding-top:28px;font-size:11px;line-height:1.7}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.breadcrumb li{padding:0;margin:0}.breadcrumb li+li:before{content:'/';padding-right:8px;color:#7d89b0}.breadcrumb a{text-decoration:none}.breadcrumb span{color:var(--muted)}.focus-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;margin-top:40px}.focus-grid h3{font-family:var(--serif);font-size:30px}.focus-grid p{font-size:16px}.city-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;margin:32px 0}.city-links a{padding:18px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;text-decoration:none;font-size:14px}.city-links span{color:var(--gold)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;margin-top:45px}.steps span{font-family:var(--serif);font-size:40px;color:var(--gold);display:block;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:22px}.steps p{font-size:14px}.steps h3{font-family:var(--serif);font-size:25px}.article-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:95px;padding-top:30px;padding-bottom:80px;align-items:start}.article-nav{border-top:1px solid var(--gold);padding-top:20px;position:sticky;top:30px}.article-nav ul{list-style:none;padding:0;margin:0}.article-nav li{padding:0;margin-bottom:18px;font-size:12px}.article-nav a{text-decoration:none}.article-copy{max-width:780px}.article-copy section{margin-bottom:55px}.article-copy h2{font-size:35px}.article-copy p{font-size:17px;line-height:1.9}.calculator{display:grid;grid-template-columns:1.4fr 1fr;gap:65px;align-items:start}.calculator h2{font-size:37px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:24px 22px;margin:30px 0}.fields label{font-size:12px;font-weight:600;line-height:1.6;color:var(--ink)}.input-unit{display:flex;align-items:center;background:var(--paper);border:1px solid #b9c3df;margin-top:9px;padding-right:12px}.input-unit input{width:100%;min-width:0;border:0;background:transparent;color:var(--ink);font-size:18px;padding:12px}.input-unit>span{font-size:10px;font-weight:400;white-space:nowrap;color:var(--muted)}.budget-result{background:var(--ink);color:#e4e9fa;padding:38px;position:sticky;top:24px}.budget-result .eyebrow{color:var(--gold)}.budget-result .result-number{font-family:var(--serif);font-size:clamp(34px,3.8vw,52px);line-height:1.2;color:#fff;letter-spacing:-.04em;margin-bottom:12px}.budget-result>p:not(.eyebrow):not(.result-number):not(.small){font-size:13px}.budget-result dl{margin:26px 0}.budget-result dl div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #5365a0;padding:14px 0;font-size:12px}.budget-result dd{margin:0;white-space:nowrap}.budget-result .small{font-size:11px}.text-button{border:0;background:transparent;padding:10px 0;color:var(--ink);text-decoration:underline;text-underline-offset:5px;cursor:pointer;font-size:12px}#budget-error:empty{display:none}#budget-error{color:#ffe9bb}.faq{max-width:900px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;color:var(--ink);font-size:17px}.faq details p{margin:18px 0 0;font-size:15px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.contact-card{padding:42px;background:var(--cream)}.contact-card h2{font-size:35px}.contact-big{font-family:var(--serif);font-size:27px;text-decoration:none;overflow-wrap:anywhere}.site-footer{background:#edf1fb;padding:75px 0 0;color:var(--ink);font-size:13px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:48px}.site-footer h2{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.02em;line-height:1.4;margin:8px 0 25px}.site-footer .brand{margin-bottom:23px}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{padding:0;margin-bottom:12px}.site-footer a{text-decoration:none}.site-footer p{font-size:12px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:28px 0;margin-top:52px;border-top:1px solid #c9d2ec;font-size:10px;letter-spacing:.02em}.kg-site .wp-block-image{margin:25px 0}
@media(min-width:1500px){.hero figure img{height:650px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.main-nav{gap:20px}.nav-list{gap:18px}.nav-list a{font-size:12px}.nav-cta{padding:12px}.hero-grid{gap:42px}.hero figure img{height:530px}.hero h1{font-size:52px}.cards:has(>.card:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.split{gap:55px}.footer-grid{gap:30px}.calculator{gap:35px}.budget-result{padding:28px}.article-layout{gap:55px;grid-template-columns:220px 1fr}}
@media(max-width:960px){.header-row{min-height:94px}.brand-main{font-size:27px}.menu-toggle{display:flex;align-items:center;gap:14px;border:1px solid var(--line);padding:10px 14px;background:transparent;font-size:12px;color:var(--ink);cursor:pointer}.menu-icon{font-size:18px}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:22px 32px 30px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 18px 25px #13287e12}.main-nav.is-open{display:block}.nav-list{display:block}.nav-list a{display:block;font-size:15px;padding:13px 0}.nav-list .current-menu-item a{padding-bottom:13px;border:0}.nav-cta{margin-top:20px}.hero-grid{gap:35px}.hero figure{padding-left:16px}.hero figure img{height:500px}.hero h1{font-size:45px}.hero .lead{font-size:15px}.hero .actions{gap:18px}.cards{gap:18px}.card{padding:27px 20px}.card h3{font-size:25px}.trust-line span{font-size:9px}.split{gap:35px}.calculator{grid-template-columns:1fr}.budget-result{position:static;max-width:620px}.footer-grid{grid-template-columns:1fr 1fr;gap:42px}.article-layout{grid-template-columns:190px 1fr;gap:40px}.steps{grid-template-columns:repeat(2,1fr)}.focus-grid{gap:35px}}
@media(max-width:680px){.wrap{width:calc(100% - 40px)}.topbar{font-size:9px;letter-spacing:0}.topbar .wrap{gap:10px}.topbar span{max-width:195px}.header-row{min-height:86px}.brand-main{font-size:26px}.brand-sub{font-size:7px}.section{padding:62px 0}h2{font-size:34px;margin-bottom:24px}.hero{padding:45px 0 50px}.hero-grid{grid-template-columns:1fr;gap:40px}.hero h1{font-size:44px}.hero .lead{font-size:16px}.hero figure{padding-left:18px}.hero figure img{height:390px;border-radius:150px 150px 0 0;object-position:50% 45%}.hero figcaption{font-size:17px;left:36px}.hero.compact{padding:40px 0 50px}.hero-copy h1{font-size:40px}.hero-copy .lead{font-size:16px}.eyebrow{font-size:10px}.actions{gap:18px}.button{padding:16px 20px;font-size:12px}.trust-line .wrap{flex-direction:column;gap:13px}.trust-line span{font-size:10px}.trust-line{padding:20px 0}.cards,.cards:has(>.card:nth-child(4):last-child),.cards:has(>.card:nth-child(2):last-child){grid-template-columns:1fr}.cards{margin-top:30px}.card,.cards:has(>.card:nth-child(4):last-child) .card{padding:28px}.card h3,.cards:has(>.card:nth-child(4):last-child) h3{font-size:28px;min-height:0}.card .eyebrow{margin-bottom:20px}.card p:not(.eyebrow){font-size:15px}.split{grid-template-columns:1fr;gap:35px}.editorial-photo img{height:350px;border-radius:0 110px 0 0}.chips{gap:8px}.chips a{font-size:12px;padding:8px 13px}.prose h2{font-size:32px}.prose p,.prose li{font-size:16px}.breadcrumb{font-size:10px;padding-top:22px}.focus-grid{grid-template-columns:1fr;gap:12px;margin-top:30px}.focus-grid h3{font-size:28px}.city-links{grid-template-columns:1fr;gap:0}.city-links a{padding:15px 0}.steps{gap:25px}.steps h3{font-size:24px}.steps p{font-size:13px}.article-layout{grid-template-columns:1fr;gap:40px;padding-bottom:40px;padding-top:0}.article-nav{position:static}.article-nav ul{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.article-copy h2{font-size:31px}.article-copy p{font-size:16px}.article-copy section{margin-bottom:40px}.calculator h2{font-size:32px}.fields{gap:20px 14px}.fields label{font-size:11px}.input-unit{padding-right:8px}.input-unit input{padding:10px;font-size:17px}.input-unit>span{font-size:9px}.budget-result{padding:28px}.budget-result .result-number{font-size:42px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-card{padding:28px}.contact-big{font-size:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.site-footer{padding-top:55px}.footer-bottom{flex-direction:column;gap:9px;margin-top:36px;padding:24px 0}.main-nav{padding:20px 20px 28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original KG Clean blue and yellow, with readable emphasis on light and dark sections. */
.steps span{color:var(--ink);border-bottom-color:var(--gold)}
.cta .button:focus-visible,.budget-result .button:focus-visible{outline-color:var(--gold)}
