/* Valence Toitures — editorial extension of the native Ligne theme. */
.vtx-main{padding:46px 0 70px}
.vtx-heading{max-width:1000px;margin:0 0 42px}
.vtx-heading .eyebrow{color:var(--muted,#56605a)}
.vtx-heading h1{font-size:clamp(38px,4.5vw,66px);margin:16px 0 22px;overflow-wrap:anywhere}
.vtx-heading .vtx-excerpt{font-size:18px;line-height:1.7;color:var(--muted,#56605a);max-width:790px}
.vtx-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:65px;align-items:start}
.vtx-body{min-width:0}
.vtx-editorial{max-width:830px;font-size:17px;line-height:1.8;overflow-wrap:anywhere}
.vtx-editorial p{margin:0 0 20px}.vtx-editorial p+p{margin-top:0}
.vtx-editorial h2{font-size:clamp(28px,3vw,38px);margin:42px 0 19px;letter-spacing:-.6px;scroll-margin-top:120px}
.vtx-editorial h3{margin:27px 0 15px;scroll-margin-top:120px}
.vtx-editorial ul,.vtx-editorial ol{padding-left:25px;margin:20px 0 26px}
.vtx-editorial li+li{margin-top:10px}.vtx-editorial a{color:#26553f}
.vtx-editorial code{font-size:.88em;overflow-wrap:anywhere}
.vtx-editorial .vtx-photo{margin:32px 0 40px}
.vtx-editorial .vtx-photo img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}
.vtx-editorial .vtx-photo figcaption{font-size:12px;color:var(--muted,#56605a);line-height:1.6;padding:12px 0;border-bottom:1px solid var(--line,#cbd0c7)}
.vtx-editorial table{border-collapse:collapse;width:100%;margin:24px 0 30px;font-size:14px;line-height:1.6}
.vtx-editorial th,.vtx-editorial td{text-align:left;vertical-align:top;padding:15px 13px;border-bottom:1px solid var(--line,#cbd0c7)}
.vtx-editorial th{background:#e7e9df;font-weight:700}
.vtx-table-scroll{max-width:100%;overflow-x:auto;margin:24px 0 30px;overscroll-behavior-x:contain}
.vtx-table-scroll table{margin:0;min-width:480px}.vtx-table-scroll:focus-visible{outline:3px solid #346cbb;outline-offset:4px}
.vtx-aside{align-self:start;position:sticky;top:120px;border-top:4px solid var(--yellow,#e9bd38);padding-top:22px}
.vtx-aside>.eyebrow{margin-bottom:13px;color:var(--muted,#56605a)}
.vtx-aside h2{font-size:29px;margin:0 0 17px}
.vtx-aside p{font-size:14px;line-height:1.6;color:var(--muted,#56605a)}
.vtx-related-list{list-style:none;margin:0;padding:0}
.vtx-related-list li{margin:0}
.vtx-related-list a,.vtx-all-guides{display:flex;align-items:start;justify-content:space-between;gap:12px;font-size:14px;line-height:1.5;padding:13px 0;border-bottom:1px solid var(--line,#cbd0c7);text-decoration:none}
.vtx-related-list a span{flex-shrink:0;color:var(--muted,#56605a)}
.vtx-related-list a:hover,.vtx-all-guides:hover{text-decoration:underline}
.vtx-aside .btn{margin-top:25px;width:100%;font-size:12px}
.vtx-all-guides{font-weight:700;margin-top:8px}
.vtx-local-links{margin-top:40px;padding-top:28px;border-top:1px solid var(--line,#cbd0c7)}
.vtx-local-links .eyebrow{color:var(--muted,#56605a);margin-bottom:13px}
.vtx-local-links h2{font-size:32px;margin-bottom:17px}
.vtx-local-links p{font-size:15px;line-height:1.7;color:var(--muted,#56605a)}
.vtx-local-links ul{list-style:none;margin:20px 0 0;padding:0}
.vtx-local-links li+li{margin-top:12px}.vtx-local-links a{font-size:15px;color:#26553f}
.vtx-project-cta{margin-top:62px;padding:38px 42px;background:var(--dark,#202c28);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:35px;align-items:center;border-top:4px solid var(--yellow,#e9bd38)}
.vtx-project-cta .eyebrow{color:#ced7cc;margin-bottom:16px}
.vtx-project-cta h2{font-size:38px;margin-bottom:18px}
.vtx-project-cta p{max-width:590px;font-size:14px;line-height:1.7;color:#d5ddd5}
.vtx-project-actions{display:flex;flex-direction:column;align-items:stretch;gap:19px}
.vtx-project-phone{font-family:Ligne,Arial,sans-serif;font-size:26px;line-height:1.3;text-align:center;text-decoration:none}
.vtx-expanded-header .vtx-navigation{gap:18px}
.vtx-navigation .nav-group>div{max-height:72vh;overflow:auto;width:290px}
.vtx-navigation .nav-group:not([open])>div{display:none}
.vtx-navigation .nav-group[open]>div{display:block}
.vtx-navigation .nav-group:first-child[open]>div{width:475px;display:grid;grid-template-columns:1fr 1fr}
.vtx-navigation .nav-group:last-of-type>div{left:auto;right:0}
.vtx-navigation a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--yellow,#e9bd38);text-decoration-thickness:2px}
.vtx-navigation summary::-webkit-details-marker{display:none}
.vtx-expanded-footer .vtx-footer-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;padding:40px 0 0;margin-top:35px;border-top:1px solid #4b574d}
.vtx-footer-links h2,.vtx-footer-links h3{font:700 12px/1.5 Arial,sans-serif;letter-spacing:1.5px;text-transform:uppercase;margin:0 0 16px}
.vtx-footer-links ul{list-style:none;padding:0;margin:0}
.vtx-footer-links a{display:block;text-decoration:none;font-size:13px;line-height:1.5;padding:6px 0;overflow-wrap:anywhere}
.vtx-footer-links a:hover{text-decoration:underline}
@media(max-width:1150px){.vtx-expanded-header .header-inner{gap:20px}.vtx-expanded-header .vtx-navigation{gap:15px}.vtx-layout{gap:35px;grid-template-columns:minmax(0,1fr) 235px}}
@media(max-width:980px){
 .vtx-expanded-header .header-inner{min-height:78px;justify-content:space-between}
 .vtx-expanded-header .menu-toggle{display:block;margin-left:auto}
 .vtx-expanded-header .header-cta{display:none}
 .vtx-expanded-header .vtx-navigation{display:none;position:absolute;left:0;right:0;top:100%;margin:0;padding:14px 25px 22px;background:var(--paper,#f4f3ee);border-bottom:1px solid var(--line,#cbd0c7);max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);overflow:auto;box-shadow:0 18px 30px #17251e15;gap:0}
 .vtx-expanded-header .vtx-navigation.is-open{display:block}
 .vtx-navigation>a{display:block;padding:14px 0}
 .vtx-navigation .nav-group summary{padding:14px 0}
 .vtx-navigation .nav-group>div,.vtx-navigation .nav-group:first-child[open]>div{position:static;width:100%;box-shadow:none;border:0;border-left:2px solid var(--yellow,#e9bd38);margin:0 0 10px;max-height:none;grid-template-columns:1fr}
 .vtx-navigation .nav-group a{font-size:13px}
 .vtx-layout{grid-template-columns:1fr;gap:40px}
 .vtx-aside{position:static;max-width:830px}
 .vtx-aside .btn{max-width:340px}
 .vtx-heading{margin-bottom:28px}
 .vtx-project-cta{grid-template-columns:1fr;padding:32px}
 .vtx-project-actions{align-items:flex-start}.vtx-project-phone{text-align:left}
 .vtx-expanded-footer .vtx-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:540px){
 .vtx-expanded-header .header-inner{gap:12px}
 .vtx-expanded-header .brand{gap:8px}
 .vtx-expanded-header .brand svg{width:30px;height:30px}
 .vtx-expanded-header .brand strong{font-size:17px}
 .vtx-expanded-header .brand small{font-size:7px;letter-spacing:1.2px}
 .vtx-expanded-header .menu-toggle{padding:8px 10px;font-size:13px}
 .vtx-main{padding-top:28px;padding-bottom:50px}
 .vtx-heading h1{font-size:38px;line-height:1.08;letter-spacing:-1px}
 .vtx-heading .vtx-excerpt{font-size:16px}
 .vtx-editorial{font-size:16px}.vtx-editorial h2{margin-top:33px}
 .vtx-editorial th,.vtx-editorial td{padding:12px 10px;font-size:13px}
 .vtx-editorial .vtx-photo{margin:25px 0 31px}
 .vtx-project-cta{padding:25px 22px;gap:25px;margin-top:42px}.vtx-project-cta h2{font-size:34px}
 .vtx-expanded-footer .vtx-footer-links{gap:26px 18px}
}
