/* Canada Create static-site fixes */
img[data-lazyloaded],img.lazyloaded{opacity:1!important}
.elementor-section.elementor-section-stretched{width:100vw!important;max-width:100vw!important;left:50%!important;margin-left:-50vw!important;position:relative}

/* ---- 2026-10-22 content recovery: widgets rebuilt as plain HTML ---- */
html,body{overflow-x:clip}
img{max-width:100%;height:auto}
.elementor-invisible{visibility:visible!important;opacity:1!important}
.ccx-widget{width:100%}
.ccx-widget .elementor-widget-container{margin:0}

/* titles */
.ccx-title{margin:0 0 .5em}
.ccx-title.ccx-center{text-align:center}
.ccx-subtitle{margin:0 0 .6em;font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--theme-color-text_link2,#835C40)}
.ccx-subtitle a{color:inherit}
.ccx-heading{margin:0;line-height:1.15;color:var(--theme-color-text_dark,#181818)}
.ccx-heading.ccx-h1{font-size:clamp(2rem,4.2vw,3.4rem)}
.ccx-heading.ccx-h2{font-size:clamp(1.7rem,3.4vw,2.6rem)}
.ccx-heading.ccx-h3{font-size:clamp(1.35rem,2.4vw,1.9rem)}
.ccx-heading.ccx-h6{font-size:1rem;letter-spacing:.06em;text-transform:uppercase}
.ccx-title2{color:var(--theme-color-text_link,#EDC701)}
.ccx-desc{margin-top:1.1em}
.ccx-desc p{margin:0 0 1em}
.ccx-list{margin:0 0 1em;padding-left:1.2em}
.ccx-list li{margin:.2em 0}

/* buttons */
.ccx-buttons{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin:.4em 0}
.ccx-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;border:2px solid var(--theme-color-text_link,#EDC701);background:var(--theme-color-text_link,#EDC701);color:#181818!important;font-weight:700;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;line-height:1.2;transition:background .2s,border-color .2s,color .2s}
.ccx-btn:hover,.ccx-btn:focus{background:var(--theme-color-text_hover,#D7B400);border-color:var(--theme-color-text_hover,#D7B400)}
.ccx-btn--bordered{background:transparent;color:var(--theme-color-text_dark,#181818)!important}
.ccx-btn--bordered:hover,.ccx-btn--bordered:focus{background:var(--theme-color-text_link,#EDC701);color:#181818!important}
.ccx-btn--simple{background:transparent;border-color:transparent;padding-left:0;padding-right:0;color:var(--theme-color-text_dark,#181818)!important;font-size:1.1rem}
.ccx-btn--simple:hover,.ccx-btn--simple:focus{background:transparent;border-color:transparent;color:var(--theme-color-text_link2,#835C40)!important}
.ccx-btn .ccx-ico{width:34px;height:34px;flex:0 0 34px}
.scheme_dark .ccx-btn--bordered,.scheme_dark .ccx-btn--simple{color:#fff!important}

/* icons */
.ccx-ico{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;flex:0 0 52px;border-radius:50%;background:var(--theme-color-text_link,#EDC701);color:#181818}
.ccx-ico svg{width:50%;height:50%;fill:currentColor}
.ccx-icons{list-style:none;margin:0;padding:0;display:grid;gap:24px}
.ccx-icons--boxed{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.ccx-icons--boxed .ccx-icons__item{background:var(--theme-color-alter_bg_color,#fff);padding:30px 26px;border:1px solid var(--theme-color-bd_color,#D1D0C8)}
.ccx-icons--boxed .ccx-ico{margin-bottom:16px}
.ccx-icons--simple .ccx-icons__item{display:flex;gap:16px;align-items:flex-start}
.ccx-icons__item{margin:0}
.ccx-icons__title{margin:0 0 .35em;font-size:1.15rem;line-height:1.3}
.ccx-icons__text p{margin:0 0 .3em;overflow-wrap:anywhere}
.ccx-more{font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* cards (services, articles) */
.ccx-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:28px}
.ccx-card{display:flex;flex-direction:column;background:var(--theme-color-alter_bg_color,#fff);border:1px solid var(--theme-color-bd_color,#D1D0C8);overflow:hidden;margin:0}
.ccx-card__img{display:block;aspect-ratio:4/3;overflow:hidden;background:#e9e8e1}
.ccx-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.ccx-card:hover .ccx-card__img img{transform:scale(1.04)}
.ccx-card__body{padding:22px 22px 26px}
.ccx-card__body p{margin:0 0 .6em}
.ccx-card__cat{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--theme-color-text_link2,#835C40)}
.ccx-card__cat a{color:inherit}
.ccx-card__title{margin:0 0 .5em;font-size:1.25rem;line-height:1.3}
.ccx-card__title a{color:var(--theme-color-text_dark,#181818);text-decoration:none}
.ccx-card__title a:hover{color:var(--theme-color-text_link2,#835C40)}
.ccx-card__date{font-size:.9rem;color:var(--theme-color-text_light,#A7A7A7)}

/* contact card (replaces the old forms) */
.ccx-contact{background:var(--theme-color-alter_bg_color,#fff);border:1px solid var(--theme-color-bd_color,#D1D0C8);padding:30px}
.ccx-contact__lead{margin:0 0 1.2em;font-size:1.1rem;color:var(--theme-color-text_dark,#181818)}
.ccx-contact .ccx-icons{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.ccx-contact__hours{display:flex;align-items:center;gap:12px;margin:1.2em 0 0}
.ccx-contact__hours .ccx-ico{width:38px;height:38px;flex-basis:38px}
.ccx-contact a{overflow-wrap:anywhere}

/* FAQ */
.ccx-faq{border-bottom:1px solid var(--theme-color-bd_color,#D1D0C8)}
.ccx-faq summary{cursor:pointer;list-style:none;position:relative;padding:20px 44px 20px 0;font-size:1.15rem;font-weight:700;line-height:1.35;color:var(--theme-color-text_dark,#181818)}
.ccx-faq summary::-webkit-details-marker{display:none}
.ccx-faq summary::after{content:"+";position:absolute;right:6px;top:14px;font-size:1.7rem;font-weight:400;line-height:1}
.ccx-faq[open] summary::after{content:"\2212"}
.ccx-faq__body{padding:0 0 20px}

/* footer columns */
.ccx-footer{background:var(--theme-color-alter_bg_color,#fff);border-top:1px solid var(--theme-color-bd_color,#D1D0C8);color:var(--theme-color-text,#83827F)}
.ccx-footer__inner{max-width:1290px;margin:0 auto;padding:56px 16px 40px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px}
.ccx-footer__title{font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;margin:0 0 1em;color:var(--theme-color-text_dark,#181818)}
.ccx-footer p{margin:0 0 .6em}
.ccx-footer ul{list-style:none;margin:0;padding:0}
.ccx-footer li{margin:0 0 .5em}
.ccx-footer a{color:var(--theme-color-text_dark,#181818);text-decoration:none}
.ccx-footer a:hover{color:var(--theme-color-text_link2,#835C40)}
.ccx-footer__brand img{width:144px;height:auto}

/* service pages */
.ccx-service{max-width:900px;margin:0 auto;padding:40px 0 70px}
.ccx-service__head{margin-bottom:24px}
.ccx-service__title{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.15}
.ccx-service__hero{margin:0 0 30px}
.ccx-service__hero img{width:100%;display:block}
.ccx-service__body h2,.ccx-service__body h3{margin:1.4em 0 .5em}
.ccx-service__body figure{margin:0}
.ccx-service__body .wp-block-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:10px 0 24px}
.ccx-service__body .wp-block-gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10;display:block}
.ccx-service__body .wp-block-spacer{height:16px!important}
.ccx-service__aside{margin-top:50px}
.ccx-service__aside .ccx-heading{margin-bottom:18px}
.ccx-service__aside .ccx-buttons{margin-top:20px}
.ccx-beforeafter{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0 28px}
.ccx-beforeafter figure{margin:0;position:relative}
.ccx-beforeafter img{width:100%;display:block}
.ccx-beforeafter figcaption{position:absolute;left:12px;top:12px;background:rgba(24,24,24,.8);color:#fff;padding:4px 12px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}

@media (max-width:767px){
  .ccx-footer__inner{grid-template-columns:1fr;padding-top:40px}
  .ccx-contact{padding:22px 18px}
  .ccx-beforeafter{grid-template-columns:1fr}
  .ccx-btn{padding:13px 20px}
  .ccx-service{padding:24px 0 50px}
  .ccx-cards{grid-template-columns:1fr}
}
