/* Keep OceanWP's logo near the viewport edge on every page and language. */
#site-header #site-header-inner.container {
    width: 100%;
    max-width: none;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
}

@media (max-width: 959px) {
    #site-header #site-header-inner.container {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* Slightly smaller brand mark, preserving its aspect ratio and header alignment. */
#site-header #site-logo #site-logo-inner a img {
    max-width: 142px;
    width: auto;
    height: auto;
}

/* Shared footer: open columns, readable white accents and current navigation. */
#footer-widgets{padding:52px 24px 44px}
#footer-widgets .footer-widgets-inner{display:grid;grid-template-columns:1fr 1.5fr .85fr;gap:64px;max-width:1140px;width:100%;padding:0}
#footer-widgets .footer-widgets-inner::after{display:none}
#footer-widgets .footer-box{float:none;width:auto;padding:0;margin:0;min-width:0}
#footer-widgets .footer-widget{margin:0}
#footer-widgets .widget-title{border:0;padding:0;margin:0 0 22px;color:#fff;font-size:16px;font-weight:500;letter-spacing:.02em;line-height:1.4;text-transform:none}
#footer-widgets .widget-title::before,#footer-widgets .widget-title::after{display:none}
#footer-widgets,#footer-widgets p,#footer-widgets .textwidget{color:#fff;font-size:15px;line-height:1.65}
#footer-widgets a,#footer-widgets a:hover,#footer-widgets a:focus{color:#fff}
#footer-widgets a:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:2px}
#footer-widgets .widget_nav_menu ul,#footer-widgets .widget_nav_menu li{border:0;padding:0;margin:0;list-style:none}
#footer-widgets .widget_nav_menu li{margin-bottom:6px}
#footer-widgets .widget_nav_menu li a{display:inline-block;padding:3px 0;border:0;font-size:15px;line-height:1.5;text-decoration:none}
#footer-widgets .widget_nav_menu li a:hover{text-decoration:underline}
#footer-widgets .widget_nav_menu .sub-menu{margin:6px 0 12px 14px}
#footer-widgets .widget_nav_menu .sub-menu a{font-size:14px}
#footer-widgets .contact-info-widget li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:14px;align-items:start;padding:0;margin:0 0 20px;border:0}
#footer-widgets .contact-info-widget li:last-child{margin-bottom:0}
#footer-widgets .contact-info-widget li>i,#footer-widgets .contact-info-widget li>svg{float:none;border:0;border-radius:0;width:22px;height:24px;line-height:24px;margin:2px 0 0;padding:0;font-size:20px;color:#fff;fill:currentColor}
#footer-widgets .contact-info-widget .oceanwp-info-wrap{margin:0;padding:0}
#footer-widgets .oceanwp-contact-title{display:block;font-size:13px;font-weight:400;line-height:1.5;color:#fff;opacity:.7;margin:0 0 3px}
#footer-widgets .oceanwp-contact-text{font-size:15px;line-height:1.6;color:#fff;overflow-wrap:anywhere}
#footer-widgets .sendeko-youtube-icon::before{content:'';display:block;width:22px;height:20px;background:currentColor;mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M5 4h14a4 4 0 0 1 4 4v8a4 4 0 0 1-4 4H5a4 4 0 0 1-4-4V8a4 4 0 0 1 4-4Zm5 4v8l7-4Z'/%3E%3C/svg%3E")}
#footer-bottom,#footer-bottom a,#footer-bottom a:hover{color:#fff}
@media(max-width:900px){#footer-widgets .footer-widgets-inner{grid-template-columns:1fr 1.5fr;gap:40px}#footer-widgets .footer-box:last-child{grid-column:1/-1}}
@media(max-width:600px){#footer-widgets{padding:36px 24px}#footer-widgets .footer-widgets-inner{grid-template-columns:minmax(0,1fr);gap:32px}#footer-widgets .footer-box:last-child{grid-column:auto}#footer-widgets .widget-title{margin-bottom:16px}}

/* Consistent footer hierarchy and evenly spaced navigation, including contact sublinks. */
#footer-widgets .footer-box .footer-widget>.widget-title{font-size:18px;font-weight:500;line-height:1.4;letter-spacing:.015em}
#footer-widgets .footer-box .widget_nav_menu ul.menu{display:grid;grid-template-columns:minmax(0,1fr);row-gap:6px}
#footer-widgets .footer-box .widget_nav_menu li,#footer-widgets .footer-box .widget_nav_menu ul.sub-menu{display:contents;margin:0;padding:0}
#footer-widgets .footer-box .widget_nav_menu li a{display:block;justify-self:start;font-size:15px;line-height:24px;padding:3px 0;margin:0}
#footer-widgets .sendeko-youtube-icon::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.6' stroke-linejoin='round'%3E%3Crect x='1.5' y='4' width='21' height='16' rx='4'/%3E%3Cpath d='m10 8 7 4-7 4Z'/%3E%3C/svg%3E")}

/* Match the homepage's 1140px shell and its inset content edges. */
#site-header #site-header-inner.container{max-width:1140px;width:100%;margin-inline:auto;padding-inline:24px}
#footer-widgets{padding-inline:0}
#footer-widgets .footer-widgets-inner{max-width:1140px;width:100%;margin-inline:auto;padding-inline:24px;box-sizing:border-box}
#footer-widgets .footer-box .footer-widget>.widget-title::after{content:'';display:block;position:static;width:48px;height:var(--sendeko-divider-thickness,1px);margin:12px 0 0;background:var(--wp--preset--color--sendeko-burgundy,#8b104d);border:0}
@media(max-width:600px){#site-header #site-header-inner.container,#footer-widgets .footer-widgets-inner{padding-inline:20px}}

/* Footer dividers follow the title text; navigation hover remains undecorated. */
#footer-widgets .footer-box .footer-widget>.widget-title{width:fit-content;max-width:100%}
#footer-widgets .footer-box .footer-widget>.widget-title::after{width:100%}
#footer-widgets .footer-box .widget_nav_menu li a:hover,#footer-widgets .footer-box .widget_nav_menu li a:focus{text-decoration:none}

/* One site-wide content maximum, matching the original Mattresses sections. */
:root{--sendeko-content-max:1140px;--sendeko-page-gutter:24px}
body.page #site-header #site-header-inner.container,
body.page #footer-widgets .footer-widgets-inner,
body.page #main #content-wrap.container,
body.page #main>.page-header .page-header-inner.container{width:calc(100% - 2 * var(--sendeko-page-gutter));max-width:var(--sendeko-content-max)!important;padding-inline:0!important;margin-inline:auto;box-sizing:border-box}
body.page .elementor .elementor-top-section>.elementor-container{width:100%;max-width:min(var(--sendeko-content-max),calc(100vw - 2 * var(--sendeko-page-gutter)))!important;margin-inline:auto}
body.page.sendeko-native-business #main .entry>.elementor{width:100%;max-width:var(--sendeko-content-max)!important;padding-inline:0!important;margin-inline:auto}
body.page.page-id-8 .elementor[data-elementor-type="wp-page"] :is(.sendeko-business-grid,.sendeko-home-slideshow,.sendeko-home-intro){width:calc(100% - 2 * var(--sendeko-page-gutter));max-width:var(--sendeko-content-max)!important;padding-inline:0!important;margin-inline:auto}
@media(max-width:600px){:root{--sendeko-page-gutter:20px}}

/* Card navigation stays undecorated, including literal and generated arrows. */
body #main :is(.sendeko-business-card,.sendeko-section-card,.sendeko-link-card,.sendeko-card,.sendeko-home-slide) :is(a,a:hover,a:focus,a:active),
body #main :is(.sendeko-business-card,.sendeko-section-card,.sendeko-link-card,.sendeko-card,.sendeko-home-slide) a *,
body #main :is(.sendeko-business-card,.sendeko-section-card,.sendeko-link-card,.sendeko-card,.sendeko-home-slide) a::after{ text-decoration:none!important }

/* Business-card arrows are separate pseudo-elements; underline only the label. */
body #main .sendeko-overview-cards .sendeko-section-card a:is(:hover,:focus-visible) .elementor-button-text{text-decoration:underline!important}

/* Homepage cards use the same text-only hover underline as business cards. */
body #main .elementor[data-elementor-type="wp-page"] :is(.sendeko-card-cta,.sendeko-home-caption-link) a:is(:hover,:focus-visible) .sendeko-card-link-label{text-decoration:underline!important}
body #main .elementor[data-elementor-type="wp-page"] .sendeko-card-link-arrow{display:inline-block;text-decoration:none!important}
/* One arrow treatment for overview, home cards and home slideshow links. */
body #main .sendeko-overview-cards .sendeko-section-card .elementor-button{gap:8px;align-items:center}
body #main .sendeko-overview-cards .sendeko-section-card .elementor-button::after{margin-left:0;font-family:Roboto,sans-serif;font-size:21px;font-weight:600;line-height:1;flex-shrink:0}
body #main .elementor[data-elementor-type="wp-page"] :is(.sendeko-card-cta,.sendeko-home-caption-link) .elementor-button-text{display:inline-flex;align-items:center;gap:8px}
body #main .elementor[data-elementor-type="wp-page"] :is(.sendeko-card-cta,.sendeko-home-caption-link) .sendeko-card-link-arrow{display:inline-flex;align-items:center;font-size:0;margin:0;padding:0;line-height:1}
body #main .elementor[data-elementor-type="wp-page"] :is(.sendeko-card-cta,.sendeko-home-caption-link) .sendeko-card-link-arrow::before{content:'→';font-family:Roboto,sans-serif;font-size:21px;font-weight:600;line-height:1}
/* Contact children are revealed by the footer disclosure button. */
#footer-widgets .footer-box .widget_nav_menu .sendeko-footer-contact{display:block}
#footer-widgets .footer-box .widget_nav_menu .sendeko-footer-contact>ul.sub-menu{display:grid;gap:6px;margin:6px 0 0 14px;padding:0}
#footer-widgets .footer-box .widget_nav_menu .sendeko-footer-contact>ul.sub-menu[hidden]{display:none!important}
#footer-widgets .sendeko-footer-contact-toggle{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:3px 0;margin:0;color:#fff;font:inherit;font-size:15px;font-weight:400;line-height:24px;letter-spacing:normal;text-transform:none;cursor:pointer}
#footer-widgets .sendeko-footer-contact-toggle::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-3px}
#footer-widgets .sendeko-footer-contact-toggle[aria-expanded=true]::after{transform:rotate(225deg);margin-top:3px}
#footer-widgets .sendeko-footer-contact-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
/* The original mattress hero uses a stretched Elementor section. */
body.page-id-16 #main .elementor[data-elementor-type="wp-page"]>.elementor-element-66f8cedf{width:min(1140px,calc(100vw - 2 * var(--sendeko-page-gutter,24px)))!important;left:0!important;margin-inline:auto!important;overflow:hidden;border-radius:13px;box-sizing:border-box}
@media(max-width:1024px){body.page-id-16 .elementor-element-42e592b3 .elementor-heading-title{font-size:clamp(36px,5vw,60px)!important;line-height:1.2!important}}
/* Footer navigation is redundant with the sticky header. */
#footer-widgets .footer-box:first-child{display:none}
#footer-widgets .footer-widgets-inner{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
#footer-widgets .footer-box:last-child{grid-column:auto}
@media(max-width:600px){#footer-widgets .footer-widgets-inner{grid-template-columns:minmax(0,1fr)}}
/* Mattress overview banners extend edge to edge in every language. */
body.page-id-16 #main .elementor[data-elementor-type="wp-page"]>.elementor-element-66f8cedf{width:100%!important;max-width:none!important;margin-inline:0!important;left:0!important;border-radius:0}
body:is(.page-id-598,.page-id-602,.page-id-605,.page-id-1518) #main>.page-header{width:100%;max-width:none;margin-inline:0;border-radius:0}
/* Match the Russian mattress overview's 620px desktop photograph in all languages. */
body:is(.page-id-16,.page-id-1553) #main :is(.elementor[data-elementor-type="wp-page"],.elementor-123,.elementor-125,.elementor-127,.elementor-1553)>.elementor-top-section:first-child{height:620px;min-height:620px;padding-block:40px;display:flex;align-items:center;box-sizing:border-box}
@media(max-width:767px){body:is(.page-id-16,.page-id-1553) #main :is(.elementor[data-elementor-type="wp-page"],.elementor-123,.elementor-125,.elementor-127,.elementor-1553)>.elementor-top-section:first-child{height:auto;min-height:440px;padding-block:50px}}
/* Contact, social links and company information share the footer shell. */
#footer-widgets .footer-widgets-inner{grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr) minmax(0,1fr);gap:48px}
#footer-widgets .sendeko-social-links{list-style:none;margin:0;padding:0;display:grid;gap:18px}
#footer-widgets .sendeko-social-links a{display:inline-flex;align-items:center;gap:14px;font-size:15px;line-height:24px;text-decoration:none}
#footer-widgets .sendeko-social-links svg{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
@media(max-width:900px){#footer-widgets .footer-widgets-inner{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px}#footer-widgets .footer-box:last-child{grid-column:1/-1}}
@media(max-width:600px){#footer-widgets .footer-widgets-inner{grid-template-columns:minmax(0,1fr)}#footer-widgets .footer-box:last-child{grid-column:auto}}
/* Business enquiry selectors match the shared catalogue navigation. */
body:is(.page-id-1696,.page-id-1711,.page-id-1723,.page-id-1732,.page-id-1742) #main .wpcf7 select{
 appearance:none;-webkit-appearance:none;background-color:var(--wp--preset--color--sendeko-burgundy,#8b104d)!important;color:#fff!important;border:1px solid var(--wp--preset--color--sendeko-burgundy,#8b104d);border-radius:7px;min-height:46px;padding:11px 42px 11px 14px;font-family:Roboto,sans-serif;font-size:15px;font-weight:500;line-height:1.4;box-shadow:none;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='white' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:16px!important;
}
body:is(.page-id-1696,.page-id-1711,.page-id-1723,.page-id-1732,.page-id-1742) #main .wpcf7 select option{background:var(--sendeko-brand-soft,#fcf7f9);color:var(--wp--preset--color--sendeko-burgundy,#8b104d)}
body:is(.page-id-1696,.page-id-1711,.page-id-1723,.page-id-1732,.page-id-1742) #main .wpcf7 select:focus-visible{outline:2px solid var(--wp--preset--color--sendeko-burgundy,#8b104d);outline-offset:3px}
.sendeko-business-extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}
.sendeko-business-extra[hidden]{display:none!important}
.sendeko-business-extra label{display:block;min-width:0;font-size:14px;line-height:1.5}
.sendeko-business-extra input{width:100%;min-width:0;box-sizing:border-box}
@media(max-width:600px){.sendeko-business-extra{grid-template-columns:1fr}}
/* Business enquiry fields follow their visual order in the DOM and keyboard flow. */
.sendeko-enquiry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px;margin-bottom:22px}
.sendeko-enquiry-grid .sendeko-enquiry-field{min-width:0}
.sendeko-enquiry-grid .sendeko-enquiry-field[hidden]{display:none!important}
.sendeko-enquiry-grid label{display:block;font-size:14px;font-weight:500;line-height:1.5;margin:0}
.sendeko-enquiry-grid .wpcf7-form-control-wrap{display:block;margin-top:7px}
.sendeko-enquiry-grid :is(input,select,textarea){width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.sendeko-enquiry-grid [data-field="your-message"],.sendeko-enquiry-grid [data-field="tel-no"],.sendeko-enquiry-grid:not(.has-business-fields) [data-field="your-name"]{grid-column:1/-1}
.sendeko-enquiry-grid textarea{min-height:170px;resize:vertical}
@media(max-width:600px){.sendeko-enquiry-grid{grid-template-columns:minmax(0,1fr);gap:18px}}
/* Clear, readable validation feedback for business enquiries. */
body:is(.page-id-1696,.page-id-1711,.page-id-1723,.page-id-1732,.page-id-1742) .wpcf7 form.invalid .wpcf7-response-output{margin:22px 0 0;padding:16px 18px;border:1px solid var(--sendeko-brand-border,#eadfe4);border-left:3px solid var(--wp--preset--color--sendeko-burgundy,#8b104d);border-radius:8px;background:var(--sendeko-brand-soft,#fcf7f9);color:var(--sendeko-text-body,#4a4a4a);font-size:15px;line-height:1.6}
body:is(.page-id-1696,.page-id-1711,.page-id-1723,.page-id-1732,.page-id-1742) .wpcf7-not-valid-tip{color:var(--wp--preset--color--sendeko-burgundy,#8b104d);font-size:13px;line-height:1.5;margin-top:6px}
body:is(.page-id-1696,.page-id-1711,.page-id-1723,.page-id-1732,.page-id-1742) .wpcf7 [aria-invalid=true]{border-color:var(--wp--preset--color--sendeko-burgundy,#8b104d);background-color:var(--sendeko-brand-soft,#fcf7f9)}
/* Telephone inputs use the same treatment as the other contact fields. */
body #main .wpcf7 input[type=tel]{appearance:none;-webkit-appearance:none;width:100%;max-width:100%;box-sizing:border-box;min-height:48px;padding:11px 12px;border:1px solid var(--sendeko-brand-border,#eadfe4);border-radius:9px;background:var(--sendeko-brand-soft,#fcf7f9);color:var(--sendeko-text-heading);font-family:Roboto,sans-serif;font-size:15px;font-weight:400;line-height:27px;box-shadow:none}
body #main .wpcf7 input[type=tel]:focus{border-color:var(--wp--preset--color--sendeko-burgundy,#8b104d);outline:2px solid var(--wp--preset--color--sendeko-burgundy,#8b104d);outline-offset:2px}
body #main .wpcf7 input[type=tel][aria-invalid=true]{border-color:var(--wp--preset--color--sendeko-burgundy,#8b104d);background:var(--sendeko-brand-soft,#fcf7f9)}

/* Agreed neutral surface for legacy disabled enquiry selectors. */
#main form #fixed-select[disabled]{background-color:#f9f9f9}

/* Keep German words intact while retaining the original layouts and typography. */
/* German dictionary hyphenation keeps long compounds within their columns. */
html[lang|="de"] :is(#main,#footer) *{word-break:normal!important;overflow-wrap:normal!important;-webkit-hyphens:auto!important;hyphens:auto!important;hyphenate-limit-chars:9 3 3;}
