/*
Theme Name: Europe Haguenau
Version: 1.0.0
Description: Hôtel, restaurant et spa. Site Europe avec réservation reliée au PMS.
Author: Dtouch
*/
:root{--ink:#173b3a;--teal:#287572;--aqua:#71c4c3;--lime:#cad518;--paper:#f2f7f6;--line:#dce7e4;--muted:#516864}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.7 'Avenir Next','Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}img{max-width:100%;height:auto;display:block}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 22px}h1{font-size:clamp(44px,5.8vw,88px)}h2{font-size:clamp(34px,3.6vw,54px)}h3{font-size:28px}p{margin:0 0 18px}button,input,select{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.button,.elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 25px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:0;text-decoration:none;line-height:1.45;font-size:14px;font-family:inherit}.button:hover,.elementor-button:hover{background:var(--teal);color:white}.eyebrow,.eyebrow p{font:600 11px/1.5 'Avenir Next',Arial,sans-serif;letter-spacing:.19em;text-transform:uppercase;color:var(--teal);margin-bottom:20px}.skip{position:absolute;left:10px;top:-100px;background:#fff;z-index:100;padding:10px}.skip:focus{top:10px}.topline{display:flex;justify-content:space-between;background:var(--ink);color:#fff;padding:6px 5vw;font-size:11px;letter-spacing:.08em}.topline a{text-decoration:none}.site-header{display:flex;align-items:center;justify-content:space-between;padding:18px 5vw;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:50;gap:24px}.site-logo{width:187px;flex-shrink:0}.site-header nav{display:flex;align-items:center;gap:26px}.site-header nav a{text-decoration:none;font-size:13px}.site-header nav a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:8px}.site-header .button{color:#fff;padding:12px 20px}.nav-toggle{display:none;border:1px solid var(--line);background:white;padding:10px 15px;color:var(--ink)}.site-main{min-height:55vh}.elementor .e-con{--container-max-width:1320px}.elementor .hero-section{display:grid!important;grid-template-columns:44% 56%;padding:0!important;gap:0!important;max-width:none!important;width:100%!important;min-height:640px}.elementor .hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:65px 5vw!important;gap:0!important;width:auto!important}.hero-copy h1{margin-bottom:26px}.hero-copy .elementor-widget-text-editor:not(.eyebrow){max-width:430px;color:var(--muted);font-size:16px}.hero-copy .elementor-widget-button{margin-top:15px}.elementor .hero-photo{padding:0!important;width:auto!important;min-height:600px;position:relative}.hero-photo .elementor-widget-image,.hero-photo .elementor-widget-container,.hero-photo img{height:100%!important;width:100%!important}.hero-photo img{object-fit:cover;object-position:center}.facts-strip{background:var(--ink);color:#fff;display:flex;gap:40px;justify-content:space-evenly;padding:25px 5vw;font-size:13px;letter-spacing:.03em}.elementor .section{padding:75px 5vw!important;max-width:1440px!important;margin:auto!important;display:flex;flex-direction:column;gap:0!important}.elementor .section .elementor-widget-heading{max-width:770px}.elementor .section>.elementor-widget-text-editor{max-width:720px;color:var(--muted)}.elementor .room-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px!important;padding:25px 0 0!important;width:100%!important}.elementor .room-card{padding:0!important;width:100%!important;gap:0!important;align-items:stretch}.room-card .elementor-widget-image{margin-bottom:22px}.room-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.room-card h3{font-size:29px;margin:0 0 12px}.room-card p{font-size:14px;color:var(--muted)}.room-card .elementor-button{background:none;color:var(--ink);border:0;border-bottom:1px solid var(--ink);padding:5px 0;min-height:36px}.elementor .split-section{display:grid!important;grid-template-columns:1fr 1fr;gap:0!important;background:var(--paper);padding:0!important;max-width:none!important;width:100%!important}.elementor .split-photo{padding:0!important;width:auto!important;min-height:450px}.split-photo .elementor-widget-image,.split-photo .elementor-widget-container,.split-photo img{width:100%!important;height:100%!important}.split-photo img{object-fit:cover}.elementor .split-copy{padding:70px 6vw!important;width:auto!important;gap:0!important;justify-content:center}.split-copy .elementor-widget-text-editor{color:var(--muted);max-width:540px}.split-copy .elementor-widget-button{margin-top:15px}.elementor .intro{padding:60px 5vw 30px!important;max-width:1320px!important;margin:auto!important;gap:0!important}.elementor .booking-wrap{padding:45px 5vw 80px!important;width:100%!important;max-width:none!important;background:var(--paper)}.booking-wrap .elementor-widget-shortcode{width:100%}.elementor .page-photo{padding:0 5vw 60px!important;max-width:1440px!important;margin:auto!important}.page-photo img{width:100%;max-height:650px;object-fit:cover}.elementor .simple-copy{padding:60px 5vw!important;max-width:1000px!important;margin:auto!important;gap:0!important}.elementor .simple-copy p{max-width:760px}.site-footer{background:var(--ink);color:#fff;padding:60px 5vw 25px}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;max-width:1320px;margin:auto}.footer-logo{width:200px;margin-bottom:25px}.footer-main h2{font-size:29px}.footer-main p,.footer-main a{font-size:14px;line-height:1.9}.footer-main a{text-decoration:none}.footer-main a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;padding-top:25px;margin:40px auto 0;max-width:1320px;font-size:11px;color:#cee1de}.footer-bottom a{color:inherit}.plain-content{max-width:1100px;margin:auto;padding:60px 5vw}.notice{font-size:13px;color:var(--muted)}@media(max-width:1100px){.site-header nav{gap:15px}.site-header nav a{font-size:12px}.site-logo{width:155px}.elementor .hero-section{grid-template-columns:48% 52%;min-height:580px}.elementor .room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px!important}.facts-strip{gap:16px;flex-wrap:wrap}.elementor .hero-copy{padding:45px 5vw!important}}@media(max-width:800px){.topline span{display:none}.topline{justify-content:center}.site-header{padding:15px 5vw;flex-wrap:wrap;gap:15px}.site-logo{width:152px}.nav-toggle{display:block}.site-header nav{display:none;flex-direction:column;align-items:stretch;width:100%;gap:0}.site-header nav.is-open{display:flex}.site-header nav a{padding:12px 0;font-size:14px}.site-header nav .button{margin-top:10px;padding:13px}.elementor .hero-section,.elementor .split-section{grid-template-columns:1fr}.elementor .hero-copy{padding:48px 6vw!important}.elementor .hero-photo{min-height:330px;height:330px}.elementor .split-photo{min-height:320px;height:320px}.elementor .split-copy{padding:42px 6vw!important}.elementor .section{padding:50px 6vw!important}.elementor .room-grid{gap:24px 18px!important}.facts-strip{justify-content:start;font-size:12px;padding:22px 6vw;gap:12px 24px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/-1}.elementor .booking-wrap{padding:35px 4vw 45px!important}.footer-bottom{flex-direction:column;gap:8px}}@media(max-width:480px){.elementor .room-grid{grid-template-columns:1fr}.room-card img{aspect-ratio:3/2}.footer-main{grid-template-columns:1fr}.footer-main>div:first-child{grid-column:auto}h1{font-size:46px}.hero-copy .elementor-widget-text-editor:not(.eyebrow){font-size:15px}.elementor .intro{padding:42px 6vw 15px!important}.elementor .page-photo{padding:0 6vw 40px!important}}

/* Hotel typography and container layout, independent of Elementor starter kit. */
.elementor .elementor-widget-heading .elementor-heading-title{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--ink);line-height:1.12;letter-spacing:-.035em}.elementor .elementor-widget-heading h1.elementor-heading-title{font-size:clamp(44px,5.8vw,88px)}.elementor .elementor-widget-heading h2.elementor-heading-title{font-size:clamp(34px,3.6vw,54px)}.elementor .elementor-widget-heading h3.elementor-heading-title{font-size:29px}.elementor .elementor-button,.elementor .button{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:0;font-family:inherit;font-weight:500}.elementor .elementor-button:hover,.elementor .button:hover{background:var(--teal);color:#fff}.site-header{background:var(--ink);color:#fff}.site-header nav a[aria-current=page]{color:var(--aqua)}.site-header .button{background:var(--lime);border-color:var(--lime);color:var(--ink)}.nav-toggle{background:transparent;color:#fff;border-color:#ffffff50}.topline{background:#edf5f2;color:var(--ink)}.room-card .elementor-button{background:none!important;color:var(--ink)!important;border:0!important;border-bottom:1px solid var(--ink)!important}.site-footer h2{color:#fff;font-family:Georgia,serif;font-weight:400;font-size:29px}.site-main .elementor-widget-text-editor{font-family:'Avenir Next','Segoe UI',Arial,sans-serif}.elementor .hero-copy .eyebrow p{color:var(--teal)}@media(max-width:480px){.elementor .elementor-widget-heading h1.elementor-heading-title{font-size:46px}}

.elementor .hero-copy .elementor-widget-heading h1.elementor-heading-title{font-size:clamp(44px,5vw,78px)}.elementor .hero-copy .elementor-widget-button{margin:10px 0 24px}@media(max-width:480px){.elementor .hero-copy .elementor-widget-heading h1.elementor-heading-title{font-size:46px}}
