/**
* Theme Name: Dento Child
* Description: This is a child theme of Dento, generated by Merlin WP.
* Author: <a href="http://themeforest.net/user/theme-kalia">Theme Kalia</a>
* Template: dento
* Version: 1.8
*/

/* ===== Sourire Saint-Laurent : ajustements ===== */
:root{--sl-gold:#9A7B4F;--sl-gold-dark:#7F643D;--sl-ink:#1F2A37}
html{scroll-behavior:smooth}
#accueil,#infos,#a-propos,#services,#dentiste,#rendez-vous,#contact{scroll-margin-top:90px}

/* Header */
.header-style4-logo img,.main-logo img{height:60px!important;width:auto!important;max-width:280px}
.appointment_button{background:var(--sl-gold)!important;border-color:var(--sl-gold)!important;color:#fff!important}
.appointment_button:hover{background:var(--sl-gold-dark)!important}
@media (max-width:991px){
	.header-style4-logo img,.main-logo img{height:46px!important;max-width:210px}
	.right_side_content{display:none}
}

/* Footer */
.footer-logo img{max-width:260px;height:auto}
.widget_dento_about_us .button{display:none}
.footer-area .text-box p{color:#cfd3da;line-height:1.7}

/* Appointment form */
.wpcf7 .input-box p{margin:0}
.wpcf7 .row>div{margin-bottom:14px}
.wpcf7 select,.wpcf7 input[type=date]{width:100%;height:56px;padding:0 18px;border:1px solid #E3DDD2;background:#fff;color:var(--sl-ink);font-size:15px;border-radius:4px}
.wpcf7 input[type=text],.wpcf7 input[type=tel],.wpcf7 input[type=email],.wpcf7 textarea{width:100%;border-radius:4px}
.wpcf7 textarea{min-height:120px}
.sl-consent{font-size:14px;line-height:1.55;color:#4A5563}
.sl-consent .wpcf7-list-item{margin:0 8px 0 0}
.sl-consent a{color:var(--sl-gold);text-decoration:underline}
.wpcf7 .btn-one{background:var(--sl-gold)!important;border:0;color:#fff!important;padding:16px 34px;font-weight:700;border-radius:4px;cursor:pointer}
.wpcf7 .btn-one:hover{background:var(--sl-gold-dark)!important}
.wpcf7-response-output{border-radius:4px}

/* ===== Hero slider ===== */
.sl-hero{position:relative;height:88vh;min-height:580px;max-height:900px;overflow:hidden;background:#0F1C2B;color:#fff}
.sl-hero__track,.sl-hero__slide{position:absolute;inset:0}
.sl-hero__slide{opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 0s linear 1.1s}
.sl-hero__slide.is-active{opacity:1;visibility:visible;transition:opacity 1.1s ease,visibility 0s}
.sl-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 7.5s ease-out}
.sl-hero__slide.is-active .sl-hero__img{transform:scale(1)}
.sl-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,22,34,.86) 0%,rgba(12,22,34,.62) 42%,rgba(12,22,34,.12) 100%)}
.sl-hero__content{position:relative;z-index:2;height:100%;max-width:1200px;margin:0 auto;padding:0 40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.sl-hero__content>*{max-width:660px;opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.sl-hero__slide.is-active .sl-hero__content>*{opacity:1;transform:none}
.sl-hero__slide.is-active .sl-hero__kicker{transition-delay:.35s}
.sl-hero__slide.is-active .sl-hero__title{transition-delay:.5s}
.sl-hero__slide.is-active .sl-hero__text{transition-delay:.65s}
.sl-hero__slide.is-active .sl-hero__btns{transition-delay:.8s}
.sl-hero__kicker{display:flex;align-items:center;gap:14px;margin:0 0 18px;color:#D8B98A;font-size:15px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.sl-hero__kicker::before{content:"";width:44px;height:2px;background:#D8B98A}
.sl-hero__title{margin:0 0 20px;color:#fff!important;font-size:clamp(34px,5.2vw,66px);line-height:1.06;font-weight:700;letter-spacing:-.01em}
.sl-hero__text{margin:0 0 32px;color:rgba(255,255,255,.88);font-size:clamp(16px,1.5vw,19px);line-height:1.6}
.sl-hero__btns{display:flex;flex-wrap:wrap;gap:14px}
.sl-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 30px;border-radius:4px;font-weight:700;font-size:15px;letter-spacing:.04em;text-decoration:none!important;transition:background .25s,color .25s,transform .25s,box-shadow .25s}
.sl-btn--gold{background:#9A7B4F;color:#fff!important;box-shadow:0 12px 30px rgba(154,123,79,.35)}
.sl-btn--gold:hover{background:#7F643D;transform:translateY(-2px)}
.sl-btn--ghost{border:2px solid rgba(255,255,255,.85);color:#fff!important}
.sl-btn--ghost:hover{background:#fff;color:#1F2A37!important}
.sl-hero__arrow{position:absolute;top:50%;z-index:3;width:56px;height:56px;margin-top:-28px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:34px;line-height:1;cursor:pointer;backdrop-filter:blur(4px);transition:background .25s,border-color .25s}
.sl-hero__arrow:hover{background:#9A7B4F;border-color:#9A7B4F}
.sl-hero__arrow--prev{left:22px}
.sl-hero__arrow--next{right:22px}
.sl-hero__nav{position:absolute;left:0;right:0;bottom:44px;z-index:3;max-width:1200px;margin:0 auto;padding:0 40px;display:flex;gap:22px}
.sl-hero__dot{padding:0 0 8px;border:0;border-bottom:2px solid rgba(255,255,255,.35);background:none;color:rgba(255,255,255,.6);font-size:14px;font-weight:700;letter-spacing:.1em;cursor:pointer;transition:color .25s,border-color .25s}
.sl-hero__dot.is-active,.sl-hero__dot:hover{color:#fff;border-color:#D8B98A}
.sl-hero__progress{position:absolute;left:0;right:0;bottom:0;z-index:3;height:4px;background:rgba(255,255,255,.15)}
.sl-hero__progress span{display:block;width:0;height:100%;background:#D8B98A}
.sl-hero :focus-visible{outline:2px solid #D8B98A;outline-offset:3px}
@media (max-width:767px){
	.sl-hero{height:82vh;min-height:540px}
	.sl-hero__shade{background:linear-gradient(180deg,rgba(12,22,34,.45) 0%,rgba(12,22,34,.85) 70%)}
	.sl-hero__content{padding:0 22px;justify-content:flex-end;padding-bottom:110px}
	.sl-hero__arrow{display:none}
	.sl-hero__nav{padding:0 22px;bottom:34px}
	.sl-hero__btns{width:100%}
	.sl-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
	.sl-hero__img,.sl-hero__slide,.sl-hero__content>*{transition:none!important;transform:none!important}
}

/* ===== Grand menu : barre d'infos + en-tête ===== */
.sl-topbar{background:#fff;border-bottom:1px solid #ECE6DC;font-size:14px;color:#4A5563;position:relative;z-index:100}
.sl-topbar__in{max-width:1200px;margin:0 auto;padding:0 20px;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.sl-topbar__info{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 26px}
.sl-topbar__info li,.sl-topbar__info a{display:inline-flex;align-items:center;gap:8px;color:#4A5563!important;text-decoration:none!important;white-space:nowrap}
.sl-topbar__info a:hover{color:#9A7B4F!important}
.sl-topbar svg{width:16px;height:16px;fill:#9A7B4F;flex:none}
.sl-topbar__urgent{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:30px;background:#B3261E;color:#fff!important;font-weight:600;text-decoration:none!important;white-space:nowrap;box-shadow:0 6px 18px rgba(179,38,30,.28);transition:background .2s,transform .2s}
.sl-topbar__urgent svg{fill:#fff}
.sl-topbar__urgent strong{font-weight:800;letter-spacing:.02em}
.sl-topbar__urgent:hover{background:#8F1D17;transform:translateY(-1px)}

.header_version_v4{background:#fff!important;box-shadow:0 6px 24px rgba(31,42,55,.07)}
.header_version_v4 .inner-content{min-height:96px;display:flex;align-items:center;justify-content:space-between}
.header_version_v4 .header-middle{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:28px}
.header_version_v4 .main-menu .navigation>li{margin:0 4px}
.header_version_v4 .main-menu .navigation>li>a{padding:36px 12px!important;color:#1F2A37!important;font-size:15px!important;font-weight:600!important;letter-spacing:.03em;text-transform:none}
.header_version_v4 .main-menu .navigation>li>a:hover{color:#9A7B4F!important}
.header_version_v4 .appointment_button{display:inline-flex;align-items:center;gap:8px;padding:14px 24px!important;border-radius:4px;font-weight:700}
.header_version_v4.fixed-header .inner-content{min-height:76px}
.header_version_v4.fixed-header .main-menu .navigation>li>a{padding:26px 12px!important}

@media (max-width:1199px){.sl-tb-hours{display:none!important}}
@media (max-width:991px){
	.sl-tb-addr,.sl-tb-mail{display:none!important}
	.sl-topbar__in{min-height:48px}
	.header_version_v4 .inner-content{min-height:72px}
}
@media (max-width:575px){
	.sl-topbar__in{padding:6px 12px;gap:10px}
	.sl-topbar__urgent span{display:none}
	.sl-topbar__urgent{padding:9px 14px}
	.sl-topbar{font-size:13px}
}

/* ===== Slider sans ombrage : photo nette + carte blanche ===== */
.sl-hero{background:#fff}
.sl-hero__shade{display:none!important}
.sl-hero__content>*{max-width:none;opacity:1;transform:none}
.sl-hero__card{max-width:600px;padding:46px 48px;background:#fff;border-radius:10px;box-shadow:0 24px 60px rgba(31,42,55,.18)}
.sl-hero__card>*{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.sl-hero__slide.is-active .sl-hero__card>*{opacity:1;transform:none}
.sl-hero__slide.is-active .sl-hero__card .sl-hero__kicker{transition-delay:.35s}
.sl-hero__slide.is-active .sl-hero__card .sl-hero__title{transition-delay:.5s}
.sl-hero__slide.is-active .sl-hero__card .sl-hero__text{transition-delay:.65s}
.sl-hero__slide.is-active .sl-hero__card .sl-hero__btns{transition-delay:.8s}
.sl-hero__kicker{color:#9A7B4F}
.sl-hero__kicker::before{background:#9A7B4F}
.sl-hero__title{color:#1F2A37!important;font-size:clamp(30px,3.6vw,50px)}
.sl-hero__text{color:#4A5563;margin-bottom:28px}
.sl-btn--ghost{border-color:#1F2A37;color:#1F2A37!important}
.sl-btn--ghost:hover{background:#1F2A37;color:#fff!important}
.sl-hero__arrow{background:#fff;border-color:#fff;color:#1F2A37;box-shadow:0 8px 24px rgba(0,0,0,.15)}
.sl-hero__arrow:hover{color:#fff}
.sl-hero__nav{width:auto;left:50%;right:auto;transform:translateX(-50%);padding:10px 20px;background:#fff;border-radius:40px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.sl-hero__dot{color:#9AA3AE;border-bottom-color:#E5E7EB}
.sl-hero__dot.is-active,.sl-hero__dot:hover{color:#1F2A37;border-color:#9A7B4F}
.sl-hero__progress{background:rgba(255,255,255,.6)}
.sl-hero__progress span{background:#9A7B4F}
@media (max-width:767px){
	.sl-hero{height:auto;min-height:0;max-height:none}
	.sl-hero__track{position:relative}
	.sl-hero__slide{position:absolute;inset:0}
	.sl-hero__slide.is-active{position:relative}
	.sl-hero__img{position:relative;height:300px}
	.sl-hero__content{height:auto;padding:0 16px 80px;margin-top:-60px}
	.sl-hero__card{padding:28px 22px}
	.sl-hero__nav{bottom:24px}
}

/* Formulaire de rendez-vous : photo nette, formulaire sur carte blanche */
.online_appointment_v4::before,.online_appointment_v4::after{display:none!important;background:none!important}
.online_appointment_v4 .appontment_form_outer{background:#fff;padding:44px 40px;border-radius:10px;box-shadow:0 24px 60px rgba(31,42,55,.18)}
.online_appointment_v4 .section_title_v3 h6{color:#9A7B4F!important}
.online_appointment_v4 .section_title_v3 h1{color:#1F2A37!important}
@media (max-width:767px){.online_appointment_v4 .appontment_form_outer{padding:28px 20px}}

/* ===== Fonds blancs ===== */
body,.boxed_wrapper{background:#fff!important}
.elementor-element-5a1e0040,.elementor-element-5a1e0061,.elementor-element-5a1e0065,.elementor-element-5a1e0070{background:#fff!important;background-color:#fff!important}
.elementor-element-5a1e0040{border-top:1px solid #ECE6DC;border-bottom:1px solid #ECE6DC}
.elementor-element-5a1e0061,.elementor-element-5a1e0065{border:1px solid #ECE6DC;border-radius:6px;box-shadow:0 10px 30px rgba(31,42,55,.06)}
.elementor-element-5a1e0066 .elementor-heading-title{color:#9A7B4F!important}
.elementor-element-5a1e0067,.elementor-element-5a1e0067 p{color:#4A5563!important}
.elementor-element-5a1e0068 .elementor-button{background:#9A7B4F!important;color:#fff!important}
.elementor-element-5a1e0070{border-top:1px solid #ECE6DC}
.elementor-element-5a1e0072 .elementor-heading-title{color:#9A7B4F!important}
.elementor-element-5a1e0073 .elementor-heading-title,.elementor-element-5a1e0075 .elementor-heading-title{color:#1F2A37!important}
.elementor-element-5a1e0074 .elementor-icon-list-text,.elementor-element-5a1e0076 .elementor-icon-list-text{color:#4A5563!important}
.elementor-element-5a1e0074 .elementor-icon-list-icon i,.elementor-element-5a1e0076 .elementor-icon-list-icon i{color:#9A7B4F!important}

/* Footer blanc */
.footer-area,.footer-bottom-area{background:#fff!important;background-image:none!important}
.footer-area{border-top:1px solid #ECE6DC}
.footer-bottom-area{border-top:1px solid #ECE6DC}
.footer-area h3,.footer-area .title h3{color:#1F2A37!important}
.footer-area p,.footer-area li,.footer-area span,.footer-area .text-box p{color:#4A5563!important}
.footer-area .opening-hours li{border-color:#ECE6DC!important}
.footer-area .clr-green{color:#9A7B4F!important}
.footer-bottom-area .copyright-text p,.footer-bottom-area .footer-menu a{color:#4A5563!important}
.footer-bottom-area .footer-menu a:hover{color:#9A7B4F!important}
.footer-bottom-area .footer-social-links{display:none}
.footer-bottom-area .copyright-text{float:none;text-align:left}

/* Services: 4 cards on one row, no empty "Read More" links */
.service_version_v4 .read_more{display:none}
.service_version_v4 .icon_box_inner{height:100%}
@media (min-width:992px){.service_version_v4 .row>.col-lg-4{flex:0 0 25%;max-width:25%}}
@media (min-width:576px) and (max-width:991px){.service_version_v4 .row>.col-lg-4{flex:0 0 50%;max-width:50%}}
.service_version_v4 .content_box h3 a{pointer-events:none}

/* Responsive layout (Elementor sections of the home page) */
@media (max-width:1024px){
	.elementor-element-5a1e0011,.elementor-element-5a1e0012,.elementor-element-5a1e0013,.elementor-element-5a1e0014{--width:47%!important;width:47%!important}
	.elementor-element-5a1e0041,.elementor-element-5a1e0046,.elementor-element-5a1e0071,.elementor-element-5a1e0077{--width:100%!important;width:100%!important}
}
@media (max-width:767px){
	.elementor-element-5a1e0011,.elementor-element-5a1e0012,.elementor-element-5a1e0013,.elementor-element-5a1e0014{--width:100%!important;width:100%!important}
	.elementor-element-5a1e0071{padding:50px 22px!important}
	.elementor-element-5a1e0061,.elementor-element-5a1e0065{padding:36px 24px!important}
	.elementor-element-5a1e0005 .elementor-widget-button,.elementor-element-5a1e0005 .elementor-button{width:100%;justify-content:center}
	.elementor-element-5a1e0040{padding:60px 20px!important}
}
