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

/* Hide the theme-generated duplicate title band on this service page only. */
body.etp-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. */
.etp-hero{padding:10.5px 0 87px;min-height:688px}
.etp-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:95px}
.etp-hero-grid>*{min-width:0}
.etp-form{padding:40px 30px 24px;line-height:28px}
.etp-page .etp-form h2{line-height:28px;margin:0 0 22.41px}
.etp-form form{margin:0;padding:0;background:transparent}
.etp-form form p{margin:0 0 20px}
.etp-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),.etp-form textarea,.etp-form select{display:block;font-size:17px;line-height:28px;padding:9px 21px 12px;border:0;margin:0}
.etp-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]){height:49px}
.etp-form textarea{height:102px}
.etp-page .etp-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){.etp-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,410px);gap:40px}}
@media(max-width:991px){.etp-hero{min-height:0;padding:40px 0 60px}.etp-hero-grid{grid-template-columns:minmax(0,1fr);gap:40px}}
@media(max-width:767px){.etp-hero{padding:30px 0 40px}.etp-form{padding:20px}.etp-page .etp-form input[type=submit]{font-size:20px}}
