/* Scoped to the service page. Values measured on the existing theme. */
.etvi-page{--etvi-red:#d90000;--etvi-charcoal:#363836;font-family:"PT Sans",sans-serif;font-size:18px;line-height:1.65;color:#666;background:#fff}.etvi-page *{box-sizing:border-box}.etvi-container{max-width:1170px;padding:0 15px;margin:0 auto}.etvi-page h1,.etvi-page h2,.etvi-page h3{font-family:inherit;font-weight:700;line-height:1.18;letter-spacing:0;color:#121212;margin:0 0 24px}.etvi-page h1{font-size:48px}.etvi-page h2{font-size:40px}.etvi-page h3{font-size:24px;margin-bottom:14px}.etvi-page p{margin:0 0 22px}.etvi-hero{background:linear-gradient(90deg,rgba(0,0,0,.74),rgba(0,0,0,.45)),url('https://couvreurelastotoit.ca/wp-content/uploads/2024/02/reparation-de-toiture-couvreur-elastotoit-photo-1.jpg') center/cover;padding:72px 0;color:white}.etvi-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.etvi-page .etvi-hero h1,.etvi-page .etvi-form h2,.etvi-page .etvi-dark h2,.etvi-page .etvi-dark h3,.etvi-page .etvi-final h2{color:white}.etvi-page .etvi-eyebrow,.etvi-page .etvi-kicker{font-size:14px;font-weight:700;letter-spacing:1.6px;margin-bottom:20px}.etvi-kicker{color:#b40000}.etvi-page .etvi-lead{font-size:30px;line-height:1.3;font-weight:700}.etvi-page .etvi-button,.etvi-page input[type=submit]{display:inline-block;background:var(--etvi-red);color:white;padding:15px 23px;border:0;border-radius:0;text-decoration:none;font-family:inherit;font-size:18px;font-weight:700;cursor:pointer;line-height:1.4;white-space:normal}.etvi-page .etvi-button:hover,.etvi-page input[type=submit]:hover{background:#b40000}.etvi-page a:focus-visible,.etvi-page summary:focus-visible,.etvi-page input:focus-visible,.etvi-page textarea:focus-visible{outline:3px solid #ecaa32;outline-offset:4px}.etvi-page .etvi-phone{display:block;color:white;font-size:30px;font-weight:700;text-decoration:none;margin-top:18px}.etvi-form{background:var(--etvi-charcoal);border-radius:10px;padding:32px;scroll-margin-top:30px}.etvi-page .etvi-form h2{font-size:27px}.etvi-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),.etvi-form textarea,.etvi-form select{width:100%;max-width:100%;padding:13px 16px;border:1px solid #ddd;border-radius:0;background:#fff;color:#333;font:inherit}.etvi-form textarea{height:105px}.etvi-form label{display:block;color:white;font-size:16px}.etvi-form p{margin-bottom:16px}.etvi-form .wpcf7-not-valid-tip{color:#ffbcbc}.etvi-form .wpcf7-response-output{color:white;margin:16px 0!important}.etvi-strip{padding:19px 0;background:#f5f5f5;color:#363836;text-align:center;font-size:16px}.etvi-strip span{padding:0 28px;color:#d90000}.etvi-section{padding:80px 0}.etvi-split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.etvi-page figure{margin:0}.etvi-page figure img{display:block;width:100%;max-height:410px;object-fit:cover}.etvi-page figcaption{font-size:14px;padding-top:12px}.etvi-note{border-left:4px solid var(--etvi-red);padding:18px 22px;background:#f5f5f5;margin-top:28px}.etvi-note strong{color:#121212;font-size:22px}.etvi-note p{margin:8px 0 0}.etvi-tint{background:#f5f5f5}.etvi-heading{max-width:780px;margin:0 auto 40px;text-align:center}.etvi-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.etvi-cards article{background:white;padding:30px;border-bottom:3px solid #d90000}.etvi-number{display:block;color:#b40000;font-size:30px;font-weight:700;margin-bottom:18px}.etvi-page .etvi-textlink{color:#b40000;font-weight:700}.etvi-steps{list-style:none;counter-reset:steps;margin:0;padding:0}.etvi-steps li{counter-increment:steps;padding:0 0 14px 58px;position:relative}.etvi-steps li:before{content:counter(steps);position:absolute;left:0;top:0;border:1px solid #d90000;color:#b40000;width:36px;height:36px;text-align:center;line-height:34px;font-weight:700}.etvi-dark{background:var(--etvi-charcoal);color:#eee}.etvi-page .etvi-lightlink{color:white;text-decoration:underline}.etvi-faq{max-width:970px}.etvi-page details{border-bottom:1px solid #ddd;padding:22px 0}.etvi-page summary{font-size:22px;font-weight:700;color:#121212;cursor:pointer;padding-right:20px}.etvi-page details p{margin:18px 0 0}.etvi-final{background:linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)),url('https://couvreurelastotoit.ca/wp-content/uploads/2024/02/reparation-de-toiture-couvreur-elastotoit-photo-1.jpg') center/cover;padding:65px 0;text-align:center;color:white}.etvi-preview-note{font-size:14px;color:#ddd}.etvi-preview-header{padding:24px 0;background:white}.etvi-preview-header .etvi-container{display:flex;align-items:center;justify-content:space-between;gap:25px}.etvi-preview-header img{width:240px;max-width:45vw}.etvi-preview-header nav{display:flex;gap:26px;flex-wrap:wrap}.etvi-preview-header a{color:#121212;text-decoration:none}.etvi-preview-footer{background:#272727;color:#ccc;text-align:center;padding:25px;font-size:14px}body.etvi-service .site-header{position:relative!important;top:auto!important;margin-top:0!important}body.etvi-service #content{padding:0!important}body.etvi-service #content>.container{width:100%;max-width:none;padding:0}
@media(max-width:1199px){.etvi-container{max-width:970px}.etvi-hero-grid,.etvi-split{gap:40px}.etvi-page h1{font-size:40px}}
@media(max-width:991px){.etvi-container{max-width:750px}.etvi-hero-grid,.etvi-split{grid-template-columns:1fr}.etvi-hero{padding:55px 0}.etvi-form{width:100%;max-width:458px;margin:auto}.etvi-cards{gap:15px}.etvi-cards article{padding:22px}.etvi-preview-header nav{font-size:15px}.etvi-strip span{padding:0 10px}}
@media(max-width:767px){.etvi-container{max-width:100%;padding:0 22px}.etvi-page h1{font-size:36px}.etvi-page h2{font-size:30px}.etvi-page .etvi-lead{font-size:25px}.etvi-section{padding:52px 0}.etvi-cards{grid-template-columns:1fr}.etvi-strip span{display:block;height:5px;font-size:0}.etvi-form{padding:25px 20px}.etvi-preview-header nav{display:none}.etvi-page .etvi-button{width:100%;text-align:center}.etvi-page summary{font-size:20px}}

/* Hide the theme-generated duplicate title band on this service page only. */
body.etvi-service .header-block{display:none!important}

/* 1.0.2: match the reference page's visible desktop banner and CF7 sizing.
   Reference: 855.906px banner minus 167.5px overlapping header = 688.406px.
   Use a content-driven minimum, never clip validation messages or zoomed text. */
.etvi-hero{padding:10.5px 0 87px;min-height:688px}
.etvi-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:95px}
.etvi-hero-grid>*{min-width:0}
.etvi-form{padding:40px 30px 24px;line-height:28px}
.etvi-page .etvi-form h2{line-height:28px;margin:0 0 22.41px}
.etvi-form form{margin:0;padding:0;background:transparent}
.etvi-form form p{margin:0 0 20px}
.etvi-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),.etvi-form textarea,.etvi-form select{display:block;font-size:17px;line-height:28px;padding:9px 21px 12px;border:0;margin:0}
.etvi-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]){height:49px}
.etvi-form textarea{height:102px}
.etvi-page .etvi-form input[type=submit]{display:block;width:100%;min-height:72px;padding:15px 10px;font-size:24px;line-height:42px;text-transform:uppercase}
@media(min-width:992px) and (max-width:1199px){.etvi-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,410px);gap:40px}}
@media(max-width:991px){.etvi-hero{min-height:0;padding:40px 0 60px}.etvi-hero-grid{grid-template-columns:minmax(0,1fr);gap:40px}}
@media(max-width:767px){.etvi-hero{padding:30px 0 40px}.etvi-form{padding:20px}.etvi-page .etvi-form input[type=submit]{font-size:20px}}

.etvi-page h1,.etvi-page h2,.etvi-page h3{line-height:1.25}
