
/* Joomla 6 compatibility layer for the original Hoeve Motoren design */
html,body{margin:0;padding:0}.dd-nav ul.mod-menu.dd-hmenu{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap}.dd-nav ul.mod-menu.dd-hmenu>li{display:block}.dd-nav ul.mod-menu.dd-hmenu>li>a{display:block}.dd-sidebar1 .mod-menu.dd-vmenu{margin:0;padding:0;list-style:none}.dd-sidebar1 .mod-menu.dd-vmenu li{list-style:none}.dd-sidebar1 .mod-menu.dd-vmenu a{display:block}.dd-block{margin-bottom:10px}.dd-blockheader .t{margin:0}.dd-content .com-content-article,.dd-content .blog,.dd-content .category-list{padding:10px 20px}.dd-content h1,.dd-content h2,.dd-content h3{font-family:Arial,Helvetica,sans-serif}.hm-slider{position:absolute;left:5px;top:5px;width:950px;height:340px;overflow:hidden;z-index:11}.hm-slider img{position:absolute;inset:0;width:950px;height:340px;object-fit:cover;opacity:0;transition:opacity .9s ease}.hm-slider img.active{opacity:1}.hm-social{position:absolute;z-index:30}.dd-page-footer{font-size:11px;text-align:center}.dd-page-footer a{text-decoration:none}@media(max-width:980px){.dd-nav-inner,.dd-sheet,.dd-header{max-width:960px;width:100%}.hm-slider{width:98.9%;height:auto;aspect-ratio:950/340}.hm-slider img{width:100%;height:100%}}

/* Center menu and integrated slideshow */
.dd-nav-inner{width:960px;max-width:100%;margin:0 auto!important;padding-left:0!important;padding-right:0!important}
.dd-nav .mod-menu,.dd-nav ul.mod-menu.dd-hmenu,.dd-nav ul.mod-menu{float:none!important;display:flex!important;justify-content:center!important;align-items:center;width:100%;margin:0 auto!important;padding:0!important;list-style:none}
.dd-nav .mod-menu>li,.dd-nav ul.mod-menu.dd-hmenu>li{float:none!important}
.dd-header{width:960px;max-width:100%;margin-left:auto!important;margin-right:auto!important}
.dd-object1331261996{left:50%!important;margin-left:-480px!important;width:960px!important}
.dd-animacja{position:relative;margin-left:5px!important;margin-top:5px!important;width:950px!important;height:340px!important;overflow:hidden}
.hm-slider{position:absolute;inset:0;left:0!important;top:0!important;width:950px!important;height:340px!important;margin:0!important;overflow:hidden;z-index:11}
.hm-slider img{position:absolute;inset:0;display:block;width:950px!important;height:340px!important;max-width:none;object-fit:cover;object-position:center;opacity:0;transition:opacity .9s ease}
.hm-slider img.active{opacity:1}
@media(max-width:980px){.dd-nav-inner,.dd-header{width:100%;max-width:960px}.dd-object1331261996{left:0!important;margin-left:0!important;width:100%!important}.dd-animacja{width:calc(100% - 10px)!important;height:auto!important;aspect-ratio:950/340}.hm-slider{width:100%!important;height:100%!important}.hm-slider img{width:100%!important;height:100%!important}.dd-nav .mod-menu,.dd-nav ul.mod-menu{flex-wrap:wrap}}


/* =========================================================
   Hoeve Motoren 1.2 – original white header / wider layout
   ========================================================= */
:root{
    --hm-page-width: 1120px;
    --hm-slider-width: 1100px;
    --hm-slider-height: 394px; /* 950:340 aspect ratio */
}
body{background:#23408E;}
#dd-main{background:#23408E;}
.dd-nav{
    width:100%;
}
.dd-nav-inner{
    width:var(--hm-page-width) !important;
    max-width:calc(100% - 24px) !important;
    box-sizing:border-box;
}
.dd-nav .mod-menu,
.dd-nav ul.mod-menu.dd-hmenu,
.dd-nav ul.mod-menu{
    flex-wrap:nowrap !important;
    white-space:nowrap;
    justify-content:center !important;
}
.dd-nav .mod-menu > li,
.dd-nav ul.mod-menu.dd-hmenu > li{
    flex:0 0 auto;
}
.dd-nav .mod-menu > li > a,
.dd-nav ul.mod-menu.dd-hmenu > li > a{
    padding-left:13px !important;
    padding-right:13px !important;
}

.dd-header{
    width:var(--hm-page-width) !important;
    max-width:calc(100% - 24px) !important;
    height:555px !important;
    box-sizing:border-box;
    background:#fff !important;
    overflow:visible !important;
}
.dd-shapes{
    overflow:visible !important;
}

/* Full top logo */
.dd-logo-1279779218{
    top:28px !important;
    left:10px !important;
    margin-left:0 !important;
    width:auto !important;
    height:auto !important;
    display:block;
}
.dd-logo-1279779218 img{
    display:block;
    width:auto !important;
    height:70px !important;
    max-width:370px !important;
    object-fit:contain;
}

/* Facebook + mail at top right */
.hm-header-links{
    position:absolute;
    top:38px;
    right:22px;
    z-index:110;
    display:flex;
    align-items:center;
    gap:18px;
}
.hm-social-link{
    display:flex;
    align-items:center;
    gap:7px;
    color:#253f93;
    text-decoration:none;
    font-size:13px;
    font-family:Arial,Helvetica,sans-serif;
}
.hm-social-link:hover .hm-social-text{text-decoration:underline;}
.hm-social-icon{
    display:inline-flex;
    width:34px;
    height:34px;
    align-items:center;
    justify-content:center;
    border:1px solid #c7c7c7;
    border-radius:50%;
    background:#fff;
    color:#fff;
    font:700 20px/1 Arial,sans-serif;
    position:relative;
}
.hm-social-icon::before{
    content:"";
    position:absolute;
    inset:4px;
    border-radius:50%;
    background:#283f97;
    z-index:-1;
}
.hm-mail-icon{font-size:17px;}
.hm-social-text{color:#253f93;}

/* Old decorative round logo is now entirely visible */
.dd-object1965089872{
    left:auto !important;
    right:-1px !important;
    margin-left:0 !important;
    top:99px !important;
}
.dd-object395012838{
    left:auto !important;
    right:0 !important;
    margin-left:0 !important;
    top:108px !important;
}
.dd-object395012838 img{
    width:190px !important;
    height:190px !important;
    object-fit:contain;
}

/* Slider: white surrounding area, centered and wider */
.dd-object1331261996{
    top:115px !important;
    left:50% !important;
    margin-left:calc(var(--hm-slider-width) / -2 - 5px) !important;
    width:calc(var(--hm-slider-width) + 10px) !important;
    height:calc(var(--hm-slider-height) + 10px) !important;
    background:#fff !important;
    box-sizing:border-box;
}
.dd-animacja{
    margin:5px !important;
    width:var(--hm-slider-width) !important;
    height:var(--hm-slider-height) !important;
    overflow:visible !important;
}
.hm-slider{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    top:auto !important;
    width:var(--hm-slider-width) !important;
    height:var(--hm-slider-height) !important;
    overflow:hidden;
    background:#fff;
}
.hm-slider > img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    opacity:0;
    transition:none !important;
}
.hm-slider > img.active{opacity:1;}
.hm-slider > img.hm-under-transition{opacity:0 !important;}

/* transition canvas */
.hm-transition-layer{
    position:absolute;
    inset:0;
    z-index:10;
    pointer-events:none;
    overflow:hidden;
    background-repeat:no-repeat;
    background-position:center;
    background-size:100% 100%;
}
.hm-transition-layer.hm-effect-fade.run{
    animation:hmFade .55s ease both;
}
.hm-transition-layer.hm-effect-slideLeft.run{
    animation:hmSlideLeft .55s ease both;
}
.hm-transition-layer.hm-effect-slideRight.run{
    animation:hmSlideRight .55s ease both;
}
.hm-effect-tile{
    position:absolute;
    display:block;
    opacity:0;
    background-repeat:no-repeat;
    animation-duration:.5s;
    animation-fill-mode:both;
    animation-timing-function:ease-out;
}
.hm-transition-layer.run .hm-slice-down{animation-name:hmSliceDown;}
.hm-transition-layer.run .hm-slice-up{animation-name:hmSliceUp;}
.hm-transition-layer.run .hm-box-in{animation-name:hmBoxIn;}
@keyframes hmFade{from{opacity:0}to{opacity:1}}
@keyframes hmSlideLeft{from{opacity:1;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}
@keyframes hmSlideRight{from{opacity:1;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}
@keyframes hmSliceDown{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}
@keyframes hmSliceUp{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}
@keyframes hmBoxIn{from{opacity:0;transform:scale(.25)}to{opacity:1;transform:scale(1)}}

/* Nivo-like bullets below slider */
.hm-slider-controls{
    position:absolute;
    left:50%;
    bottom:-35px;
    transform:translateX(-50%);
    z-index:25;
    display:flex;
    gap:5px;
    align-items:center;
}
.hm-slider-dot{
    appearance:none;
    width:17px;
    height:17px;
    padding:0;
    border:0;
    background:transparent;
    position:relative;
    cursor:pointer;
}
.hm-slider-dot::after{
    content:"";
    position:absolute;
    width:7px;
    height:7px;
    left:5px;
    top:5px;
    border-radius:50%;
    background:#a72b2b;
    box-shadow:0 0 0 2px #fff,0 0 4px rgba(0,0,0,.25);
}
.hm-slider-dot.active::after{
    background:#fff;
    box-shadow:0 0 0 2px #a72b2b,0 0 4px rgba(0,0,0,.25);
}

/* Original white drop-shadow strip below slider */
.dd-object1015083262{
    top:499px !important;
    left:50% !important;
    margin-left:-478px !important;
    width:957px !important;
    z-index:7;
}

/* Main content follows the wider page */
.dd-sheet{
    width:var(--hm-page-width) !important;
    max-width:calc(100% - 24px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

@media (max-width:1145px){
    :root{
        --hm-page-width:960px;
        --hm-slider-width:950px;
        --hm-slider-height:340px;
    }
    .dd-nav .mod-menu,
    .dd-nav ul.mod-menu.dd-hmenu,
    .dd-nav ul.mod-menu{flex-wrap:wrap !important;}
    .dd-header{height:500px !important;}
    .dd-object1015083262{top:382px !important;}
    .hm-header-links .hm-social-text{display:none;}
}
@media (max-width:980px){
    .dd-header{
        max-width:100% !important;
        height:auto !important;
        min-height:470px;
    }
    .dd-logo-1279779218{left:12px !important;}
    .hm-header-links{right:12px;}
    .dd-object1331261996{
        left:5px !important;
        right:5px !important;
        margin-left:0 !important;
        width:calc(100% - 10px) !important;
        height:auto !important;
        aspect-ratio:950/340;
    }
    .dd-animacja,
    .hm-slider{
        width:100% !important;
        height:100% !important;
    }
    .dd-object1965089872,.dd-object395012838{display:none !important;}
}

/* v1.3 exact header/slider corrections */
.dd-header{
    background:#fff !important;
}
.dd-header:before{
    content:"";
    position:absolute;
    z-index:-1;
    top:0;
    bottom:0;
    left:50%;
    width:100vw;
    transform:translateX(-50%);
    background:#fff;
}
/* Do not draw empty circular placeholders around social links. */
.hm-social-icon{
    width:34px;height:34px;border:0!important;background:transparent!important;
    border-radius:0!important;color:transparent!important;overflow:hidden;
}
.hm-social-icon::before{display:none!important}
.hm-facebook .hm-social-icon{
    border-radius:50%!important;background:#283f97!important;color:#fff!important;
    font:700 23px/34px Arial,sans-serif;text-align:center;
}
.hm-email .hm-social-icon{
    border-radius:50%!important;background:#283f97!important;color:#fff!important;
    font:700 0/34px Arial,sans-serif;text-align:center;position:relative;
}
.hm-email .hm-social-icon:after{
    content:"✉";font:700 18px/34px Arial,sans-serif;color:#fff;
    position:absolute;inset:0;text-align:center;
}
.hm-social-text{display:none!important}

/* White slider band across the full viewport, as on the original page */
.dd-object1331261996:before{
    content:"";
    position:absolute;
    top:-115px;
    bottom:-105px;
    left:50%;
    width:100vw;
    transform:translateX(-50%);
    background:#fff;
    z-index:-1;
}
.dd-object1331261996{z-index:9!important}

/* Original-style navigation arrows */
.hm-slider-arrow{
    position:absolute;
    z-index:30;
    top:50%;
    transform:translateY(-50%);
    width:44px;height:64px;
    border:0;background:rgba(255,255,255,.12);
    color:#b02d2d;
    text-shadow:
       -2px -2px 0 #fff, 2px -2px 0 #fff,
       -2px  2px 0 #fff, 2px  2px 0 #fff,
       0 0 5px rgba(0,0,0,.35);
    font:700 52px/56px Arial,sans-serif;
    cursor:pointer;opacity:0;
    transition:opacity .2s ease,background .2s ease;
}
.hm-slider:hover .hm-slider-arrow{opacity:.9}
.hm-slider-arrow:hover{opacity:1!important;background:rgba(255,255,255,.3)}
.hm-slider-prev{left:12px}
.hm-slider-next{right:12px}


/* v1.6 Floating "Terug naar boven" button, matching the original site */
#toTop{
    position:fixed !important;
    right:22px !important;
    bottom:18px !important;
    z-index:9999 !important;
    width:66px !important;
    height:66px !important;
    padding:0 !important;
    margin:0 !important;
    border:3px solid #fff !important;
    border-radius:50% !important;
    background:#2f8db6 !important;
    box-shadow:0 0 0 1px #1b5672, 0 2px 7px rgba(0,0,0,.28) !important;
    color:#111 !important;
    cursor:pointer !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    opacity:.96 !important;
    transition:transform .15s ease, opacity .15s ease, box-shadow .15s ease !important;
    font-family:Arial,Helvetica,sans-serif !important;
}
#toTop span{
    display:block !important;
    font-size:11px !important;
    line-height:12px !important;
    font-weight:700 !important;
    color:#111 !important;
}
#toTop:hover,
#toTop:focus{
    transform:scale(1.06) !important;
    opacity:1 !important;
    box-shadow:0 0 0 1px #1b5672, 0 3px 9px rgba(0,0,0,.38) !important;
    outline:none !important;
}
#toTop:active{
    transform:scale(.98) !important;
}
@media (max-width:700px){
    #toTop{
        right:12px !important;
        bottom:12px !important;
        width:58px !important;
        height:58px !important;
    }
    #toTop span{
        font-size:10px !important;
        line-height:11px !important;
    }
}

/* v1.7 Nieuws category-list override – match original Hoeve Motoren */
.hm-news-list-page{
    border:1px solid #c9c9c9;
    padding:10px 12px 12px;
    margin:0;
    background:rgba(255,255,255,.10);
    box-sizing:border-box;
}
.hm-news-list-form{margin:0!important;padding:0!important;}
.hm-news-list-toolbar{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 0 7px 0;
    min-height:26px;
    font-size:13px;
    color:#111;
}
.hm-news-list-toolbar label{margin:0;white-space:nowrap;}
.hm-news-list-toolbar select{
    width:auto!important;
    min-width:44px;
    height:24px;
    padding:1px 4px;
    font-size:13px;
    border:1px solid #aaa;
    border-radius:2px;
    background:#fff;
    color:#111;
}
.hm-news-list-table{width:100%;font-size:13px;line-height:18px;}
.hm-news-list-head,.hm-news-list-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 190px;
    column-gap:20px;
}
.hm-news-list-head{
    color:#123c9a;
    font-weight:normal;
    margin-bottom:1px;
}
.hm-news-list-row{min-height:18px;align-items:start;}
.hm-news-title-col,.hm-news-date-col{min-width:0;}
.hm-news-title-col a{
    color:#123c9a!important;
    text-decoration:none!important;
    font-weight:normal!important;
}
.hm-news-title-col a:hover{text-decoration:underline!important;}
.hm-news-date-col{color:#111;white-space:nowrap;}
.hm-news-pagination{margin-top:10px;}
.hm-news-pagination .pagination{margin:0;}
@media(max-width:640px){
    .hm-news-list-head,.hm-news-list-row{grid-template-columns:minmax(0,1fr) 125px;column-gap:10px;}
    .hm-news-date-col{font-size:11px;}
}


/* =========================================================
   v1.8 Nieuws overview – legacy Hoeve Motoren layout
   ========================================================= */
.hm-news-list{
    width:100%;
    box-sizing:border-box;
    font-family:Arial,Helvetica,sans-serif;
    font-size:13px;
    color:#000;
    padding:8px 10px 14px;
}
.hm-news-list form{
    margin:0 !important;
    padding:0 !important;
}
.hm-news-limit{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0 0 8px 0;
    height:24px;
    line-height:24px;
}
.hm-news-limit label{
    margin:0;
    padding:0;
    font-weight:normal;
    white-space:nowrap;
}
.hm-news-limit select{
    width:auto;
    min-width:44px;
    height:22px;
    padding:0 18px 0 4px;
    margin:0;
    font:13px Arial,Helvetica,sans-serif;
}
.hm-news-table{
    width:100%;
    display:block;
}
.hm-news-row{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 180px;
    column-gap:24px;
    align-items:start;
    min-height:20px;
    line-height:20px;
}
.hm-news-head{
    font-weight:normal;
    color:#20418d;
}
.hm-news-title,
.hm-news-date{
    min-width:0;
    padding:0;
    margin:0;
}
.hm-news-title a{
    color:#003399 !important;
    text-decoration:none !important;
    font-weight:normal !important;
}
.hm-news-title a:hover{
    text-decoration:underline !important;
}
.hm-news-date{
    color:#000;
    white-space:nowrap;
    text-align:left;
}
.hm-news-pagination{
    margin-top:12px;
}

/* On the Nieuws page the content pane must keep its full width beside sidebar */
.dd-content .hm-news-list{
    max-width:none !important;
}
.dd-content .hm-news-list .hm-news-table{
    max-width:none !important;
}

/* Keep the legacy two-column list usable on smaller displays */
@media(max-width:720px){
    .hm-news-row{
        grid-template-columns:1fr 130px;
        column-gap:12px;
    }
}
@media(max-width:520px){
    .hm-news-row{
        grid-template-columns:1fr;
    }
    .hm-news-date{
        font-size:11px;
        color:#555;
        margin-bottom:4px;
    }
}


/* =========================================================
   v1.9 Sidebar menu – Hoeve Motoren colours
   ========================================================= */
.dd-sidebar1{
    padding:0 !important;
}

.dd-sidebar1 .dd-block,
.dd-sidebar1 .moduletable,
.dd-sidebar1 nav{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    margin:0 0 14px 0 !important;
    padding:0 !important;
}

.dd-sidebar1 .dd-blockcontent{
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
}

/* Vertical menu container */
.dd-sidebar1 ul.mod-menu,
.dd-sidebar1 ul.dd-vmenu{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    width:100%;
    background:#23408E !important;
    border:1px solid #1d3475;
    box-sizing:border-box;
}

/* Remove old grey/black Artisteer backgrounds */
.dd-sidebar1 ul.mod-menu li,
.dd-sidebar1 ul.dd-vmenu li{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    background:none !important;
    border:0 !important;
}

/* Menu links */
.dd-sidebar1 ul.mod-menu li > a,
.dd-sidebar1 ul.dd-vmenu li > a{
    display:block !important;
    position:relative;
    padding:8px 12px 8px 24px !important;
    margin:0 !important;
    min-height:16px;
    box-sizing:border-box;
    border-bottom:1px solid rgba(255,255,255,.28) !important;
    background:#23408E !important;
    color:#FFFFFF !important;
    font:normal 13px/18px Arial,Helvetica,sans-serif !important;
    text-decoration:none !important;
    transition:background .15s ease,color .15s ease,padding-left .15s ease;
}

/* Small arrow, matching the site's understated style */
.dd-sidebar1 ul.mod-menu li > a::before,
.dd-sidebar1 ul.dd-vmenu li > a::before{
    content:"›";
    position:absolute;
    left:10px;
    top:7px;
    color:#cbbd9d;
    font-size:16px;
    line-height:18px;
}

/* Hover */
.dd-sidebar1 ul.mod-menu li > a:hover,
.dd-sidebar1 ul.dd-vmenu li > a:hover{
    background:#3f5ca3 !important;
    color:#FFFFFF !important;
    padding-left:27px !important;
}

/* Active/current page */
.dd-sidebar1 ul.mod-menu li.active > a,
.dd-sidebar1 ul.mod-menu li.current > a,
.dd-sidebar1 ul.dd-vmenu li.active > a,
.dd-sidebar1 ul.dd-vmenu li.current > a{
    background:#c8b993 !important;
    color:#233f8f !important;
    font-weight:bold !important;
}

.dd-sidebar1 ul.mod-menu li.active > a::before,
.dd-sidebar1 ul.mod-menu li.current > a::before,
.dd-sidebar1 ul.dd-vmenu li.active > a::before,
.dd-sidebar1 ul.dd-vmenu li.current > a::before{
    color:#233f8f !important;
}

/* Last row no doubled bottom edge */
.dd-sidebar1 ul.mod-menu > li:last-child > a,
.dd-sidebar1 ul.dd-vmenu > li:last-child > a{
    border-bottom:0 !important;
}

/* Optional module title above vertical menu */
.dd-sidebar1 .dd-blockheader,
.dd-sidebar1 .moduletable > h3,
.dd-sidebar1 .dd-blockheader .t{
    background:#1f387f !important;
    color:#fff !important;
    border:0 !important;
    margin:0 !important;
    padding:7px 10px !important;
    font:bold 13px/18px Arial,Helvetica,sans-serif !important;
}

/* Slightly soften the sidebar block against the light content background */
.dd-sidebar1{
    background:rgba(255,255,255,.16);
}


/* =========================================================
   v2.0 Contact page – FoxContact-style replacement
   ========================================================= */
.hm-contact-page{
    box-sizing:border-box;
    width:100%;
    min-height:560px;
    padding:16px 18px 24px;
    color:#000;
    font:13px/1.25 Arial,Helvetica,sans-serif;
}
.hm-contact-page p{
    margin:0 0 20px 0;
    max-width:670px;
}
.hm-contact-form{
    margin-top:28px !important;
    padding:0 !important;
    max-width:610px;
}
.hm-contact-row{
    display:grid;
    grid-template-columns:230px 230px;
    align-items:center;
    min-height:48px;
}
.hm-contact-row label{
    color:#000;
    font-weight:normal;
    line-height:18px;
}
.hm-contact-row label span{
    color:#e32626;
}
.hm-contact-row input,
.hm-contact-row textarea{
    box-sizing:border-box;
    width:230px;
    border:1px solid #b9b9b9;
    border-radius:4px;
    background:#fff;
    color:#000;
    padding:6px 8px;
    font:13px Arial,Helvetica,sans-serif;
    box-shadow:inset 0 1px 1px rgba(0,0,0,.04);
}
.hm-contact-row input{
    height:29px;
}
.hm-contact-message-row{
    align-items:start;
    min-height:190px;
    padding-top:6px;
}
.hm-contact-message-row label{
    padding-top:3px;
}
.hm-contact-row textarea{
    height:172px;
    min-height:172px;
    resize:vertical;
}
.hm-contact-human{
    margin:16px 0 28px 230px;
    width:300px;
    height:72px;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px;
    border:1px solid #d8d8d8;
    border-radius:3px;
    background:#f7f7f7;
    box-shadow:0 1px 3px rgba(0,0,0,.12);
    color:#333;
}
.hm-human-box{
    width:28px;
    height:28px;
    box-sizing:border-box;
    border:2px solid #555;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#2e8b57;
    font-size:20px;
    font-weight:bold;
    background:#fff;
}
.hm-contact-submit{
    margin-left:230px;
}
.hm-contact-submit button{
    border:1px solid #c8c8c8;
    border-radius:4px;
    padding:7px 12px;
    background:linear-gradient(#fff,#e7e7e7);
    color:#444;
    cursor:pointer;
    font:13px Arial,Helvetica,sans-serif;
}
.hm-contact-submit button:hover{
    background:linear-gradient(#fff,#ddd);
}
.hm-contact-success,
.hm-contact-error{
    max-width:610px;
    box-sizing:border-box;
    margin:10px 0 18px;
    padding:10px 12px;
    border-radius:3px;
}
.hm-contact-success{
    border:1px solid #85b781;
    background:#e9f6e7;
    color:#235a20;
}
.hm-contact-error{
    border:1px solid #c77;
    background:#fbeaea;
    color:#8b2020;
}
.hm-contact-honeypot{
    position:absolute !important;
    left:-99999px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
}
@media(max-width:700px){
    .hm-contact-row{
        grid-template-columns:1fr;
        gap:4px;
        margin-bottom:10px;
    }
    .hm-contact-row input,
    .hm-contact-row textarea{
        width:100%;
        max-width:360px;
    }
    .hm-contact-human,
    .hm-contact-submit{
        margin-left:0;
    }
}


/* =========================================================
   v2.3 Cookie consent popup
   ========================================================= */
.hm-cookie-banner[hidden]{
    display:none !important;
}
.hm-cookie-banner{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:10050;
    padding:16px;
    opacity:0;
    transform:translateY(16px);
    transition:opacity .22s ease, transform .22s ease;
    pointer-events:none;
}
.hm-cookie-banner.visible{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}
.hm-cookie-inner{
    width:min(760px, calc(100vw - 32px));
    margin:0 auto;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:16px 18px;
    background:#fff;
    border:1px solid #cfcfcf;
    border-top:4px solid #23408E;
    box-shadow:0 8px 28px rgba(0,0,0,.26);
    font:13px/1.4 Arial,Helvetica,sans-serif;
}
.hm-cookie-text{
    display:flex;
    flex-direction:column;
    gap:4px;
    color:#222;
}
.hm-cookie-text strong{
    color:#23408E;
    font-size:15px;
}
.hm-cookie-actions{
    display:flex;
    gap:8px;
    flex:0 0 auto;
}
.hm-cookie-btn{
    border-radius:3px;
    padding:8px 14px;
    cursor:pointer;
    font:13px Arial,Helvetica,sans-serif;
}
.hm-cookie-reject{
    border:1px solid #b8b8b8;
    background:#f2f2f2;
    color:#333;
}
.hm-cookie-accept{
    border:1px solid #1d3475;
    background:#23408E;
    color:#fff;
}
.hm-cookie-accept:hover{
    background:#3f5ca3;
}
.hm-cookie-reject:hover{
    background:#e8e8e8;
}
@media(max-width:700px){
    .hm-cookie-inner{
        flex-direction:column;
        align-items:stretch;
    }
    .hm-cookie-actions{
        justify-content:flex-end;
    }
}


/* =========================================================
   v2.4 Consent-controlled external content
   ========================================================= */
.hm-cookie-embed{
    position:relative;
    min-height:180px;
    background:#f3f3f3;
    border:1px solid #d0d0d0;
    box-sizing:border-box;
}
.hm-cookie-embed iframe{
    width:100%;
    border:0;
}
.hm-cookie-embed-notice{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:20px;
    text-align:center;
    background:#f3f3f3;
    color:#333;
    font:13px/1.4 Arial,Helvetica,sans-serif;
    z-index:2;
}
.hm-cookie-embed-notice strong{
    color:#23408E;
}
.hm-cookie-embed-notice button{
    border:1px solid #1d3475;
    border-radius:3px;
    background:#23408E;
    color:#fff;
    padding:7px 12px;
    cursor:pointer;
    font:13px Arial,Helvetica,sans-serif;
}
.hm-cookie-embed-notice button:hover{
    background:#3f5ca3;
}


/* =========================================================
   v2.6 Fully responsive layout
   One slideshow source for desktop, tablet and phone
   ========================================================= */

/* Never swap the slideshow for legacy Artisteer objects on responsive screens */
.default-responsive .dd-object1331261996,
.custom-responsive .dd-object1331261996,
.responsive .dd-object1331261996{
    display:block !important;
}
.default-responsive .hm-slider,
.custom-responsive .hm-slider,
.responsive .hm-slider{
    display:block !important;
}
.default-responsive .dd-header,
.custom-responsive .dd-header,
.responsive .dd-header{
    background:#fff !important;
    background-image:none !important;
}

/* Main widths are fluid with a desktop max-width */
.dd-nav-inner,
.dd-header,
.dd-sheet{
    width:min(1120px, calc(100% - 24px)) !important;
    max-width:none !important;
    box-sizing:border-box !important;
}

/* Menu */
.dd-nav{
    overflow:visible !important;
}
.dd-nav-inner{
    padding-left:0 !important;
    padding-right:0 !important;
}
.dd-nav .mod-menu,
.dd-nav ul.mod-menu,
.dd-nav ul.mod-menu.dd-hmenu{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    margin:0 auto !important;
    padding:0 !important;
}
.dd-nav .mod-menu > li,
.dd-nav ul.mod-menu > li{
    flex:0 0 auto !important;
}

/* Header structure */
.dd-header{
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    padding-top:112px !important;
    padding-bottom:48px !important;
    overflow:visible !important;
}
.dd-shapes{
    position:relative !important;
    inset:auto !important;
    overflow:visible !important;
    height:auto !important;
}

/* Logo and contact icons */
.dd-logo-1279779218{
    position:absolute !important;
    top:24px !important;
    left:10px !important;
    margin:0 !important;
    z-index:50 !important;
}
.dd-logo-1279779218 img{
    width:auto !important;
    max-width:min(360px, 52vw) !important;
    height:auto !important;
    max-height:72px !important;
}
.hm-header-links{
    top:28px !important;
    right:16px !important;
}

/* Responsive slider frame */
.dd-object1331261996{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    margin:0 auto !important;
    width:100% !important;
    height:auto !important;
    background:#fff !important;
    padding:5px !important;
    box-sizing:border-box !important;
    z-index:9 !important;
}
.dd-object1331261996:before{
    top:-112px !important;
    bottom:-48px !important;
}
.dd-animacja{
    position:relative !important;
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    aspect-ratio:950 / 340 !important;
    overflow:visible !important;
}
.hm-slider{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    aspect-ratio:auto !important;
    overflow:hidden !important;
}
.hm-slider > img{
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    object-fit:cover !important;
    object-position:center center !important;
}

/* Never show the old decorative slideshow image/background as an extra mobile slide */
.dd-object736751651{
    display:none !important;
}

/* Round logo overlay scales on desktop/tablet */
.dd-object1965089872,
.dd-object395012838{
    top:8px !important;
    right:6px !important;
    left:auto !important;
    margin:0 !important;
}
.dd-object395012838{
    z-index:15 !important;
}
.dd-object1965089872{
    z-index:14 !important;
}

/* old shadow object should not affect layout */
.dd-object1015083262{
    display:none !important;
}

/* Content layout */
.dd-layout-wrapper,
.dd-content-layout,
.dd-content-layout-row{
    width:100% !important;
    box-sizing:border-box !important;
}
.dd-content-layout-row{
    display:flex !important;
    align-items:flex-start !important;
}
.dd-sidebar1{
    flex:0 0 220px !important;
    width:220px !important;
    min-width:220px !important;
}
.dd-content{
    flex:1 1 auto !important;
    width:auto !important;
    min-width:0 !important;
}

/* Images/content must not overflow */
.dd-content img,
.dd-postcontent img,
.dd-blockcontent img{
    max-width:100% !important;
    height:auto !important;
}
.dd-content iframe,
.dd-content video{
    max-width:100% !important;
}

/* Slider controls stay attached to slider */
.hm-slider-controls{
    bottom:-31px !important;
}
.hm-slider-arrow{
    width:40px !important;
    height:58px !important;
    font-size:46px !important;
}

/* Tablet */
@media (max-width:900px){
    .dd-nav-inner,
    .dd-header,
    .dd-sheet{
        width:calc(100% - 16px) !important;
    }

    .dd-nav .mod-menu > li > a,
    .dd-nav ul.mod-menu > li > a{
        padding-left:9px !important;
        padding-right:9px !important;
        font-size:12px !important;
    }

    .dd-header{
        padding-top:98px !important;
    }

    .dd-object395012838,
    .dd-object1965089872{
        display:none !important;
    }

    .dd-content-layout-row{
        gap:10px;
    }
    .dd-sidebar1{
        flex-basis:190px !important;
        width:190px !important;
        min-width:190px !important;
    }
}

/* Phone: stack sidebar/content, full-width slider, compact header */
@media (max-width:680px){
    #dd-main{
        overflow-x:hidden !important;
    }

    .dd-nav-inner,
    .dd-header,
    .dd-sheet{
        width:100% !important;
    }

    .dd-nav .mod-menu,
    .dd-nav ul.mod-menu,
    .dd-nav ul.mod-menu.dd-hmenu{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:0 !important;
    }
    .dd-nav .mod-menu > li,
    .dd-nav ul.mod-menu > li{
        width:100% !important;
        margin:0 !important;
    }
    .dd-nav .mod-menu > li > a,
    .dd-nav ul.mod-menu > li > a{
        width:100% !important;
        box-sizing:border-box !important;
        border-radius:0 !important;
        text-align:center !important;
        padding:8px 6px !important;
        height:auto !important;
        line-height:18px !important;
    }

    .dd-header{
        padding-top:82px !important;
        padding-bottom:38px !important;
    }
    .dd-logo-1279779218{
        top:12px !important;
        left:10px !important;
    }
    .dd-logo-1279779218 img{
        max-width:210px !important;
        max-height:56px !important;
    }
    .hm-header-links{
        top:17px !important;
        right:8px !important;
        gap:6px !important;
    }
    .hm-social-icon{
        width:30px !important;
        height:30px !important;
    }

    .dd-object1331261996{
        padding:0 !important;
    }
    .dd-object1331261996:before{
        top:-82px !important;
        bottom:-38px !important;
    }
    .dd-animacja{
        aspect-ratio:950 / 340 !important;
    }

    .hm-slider-arrow{
        opacity:.85 !important;
        width:32px !important;
        height:48px !important;
        font-size:36px !important;
        line-height:44px !important;
    }
    .hm-slider-prev{left:4px !important}
    .hm-slider-next{right:4px !important}
    .hm-slider-controls{
        bottom:-27px !important;
    }

    .dd-content-layout-row{
        display:block !important;
    }
    .dd-sidebar1,
    .dd-content{
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        flex:none !important;
    }
    .dd-sidebar1{
        margin-bottom:12px !important;
    }
    .dd-sidebar1 ul.mod-menu,
    .dd-sidebar1 ul.dd-vmenu{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .dd-sidebar1 ul.mod-menu li > a,
    .dd-sidebar1 ul.dd-vmenu li > a{
        height:100% !important;
    }

    .dd-content .com-content-article,
    .dd-content .blog,
    .dd-content .category-list,
    .hm-contact-page,
    .hm-news-list{
        padding-left:12px !important;
        padding-right:12px !important;
    }

    .hm-news-row{
        grid-template-columns:1fr !important;
    }
    .hm-news-date{
        margin-bottom:5px !important;
    }

    .hm-contact-form{
        max-width:none !important;
    }
    .hm-contact-row{
        grid-template-columns:1fr !important;
    }
    .hm-contact-row input,
    .hm-contact-row textarea{
        width:100% !important;
        max-width:none !important;
    }
    .hm-contact-human,
    .hm-contact-submit{
        margin-left:0 !important;
    }
}

/* Very small phones */
@media (max-width:420px){
    .dd-nav .mod-menu,
    .dd-nav ul.mod-menu,
    .dd-nav ul.mod-menu.dd-hmenu,
    .dd-sidebar1 ul.mod-menu,
    .dd-sidebar1 ul.dd-vmenu{
        grid-template-columns:1fr !important;
    }
    .dd-logo-1279779218 img{
        max-width:180px !important;
    }
}


/* =========================================================
   v2.7 Mobile layout correction
   ========================================================= */
@media (max-width:680px){

    html, body{
        width:100% !important;
        min-width:0 !important;
        overflow-x:hidden !important;
    }

    #dd-main,
    .dd-sheet,
    .dd-sheet-body,
    .dd-layout-wrapper,
    .dd-content-layout,
    .dd-content-layout-row{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    /* Header / slider */
    .dd-header{
        width:100% !important;
        margin:0 !important;
    }

    .dd-object1331261996,
    .dd-animacja,
    .hm-slider{
        width:100% !important;
        max-width:100% !important;
    }

    /* Main content MUST stack vertically.
       Artisteer uses display:table/table-cell rules, so override all of them. */
    .dd-layout-wrapper{
        display:block !important;
    }
    .dd-content-layout{
        display:block !important;
        table-layout:auto !important;
    }
    .dd-content-layout-row{
        display:flex !important;
        flex-direction:column !important;
        table-layout:auto !important;
    }

    .dd-layout-cell,
    .dd-sidebar1,
    .dd-content{
        display:block !important;
        float:none !important;
        position:relative !important;
        left:auto !important;
        right:auto !important;
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        flex:0 0 auto !important;
        box-sizing:border-box !important;
    }

    .dd-sidebar1{
        order:1 !important;
        padding:8px !important;
        margin:0 !important;
    }
    .dd-content{
        order:2 !important;
        padding:10px 12px 20px !important;
        margin:0 !important;
    }

    /* Sidebar: compact two-column navigation, then content below */
    .dd-sidebar1 .dd-block,
    .dd-sidebar1 .dd-block-body,
    .dd-sidebar1 .dd-blockcontent,
    .dd-sidebar1 .moduletable{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        margin:0 !important;
        box-sizing:border-box !important;
    }
    .dd-sidebar1 ul.mod-menu,
    .dd-sidebar1 ul.dd-vmenu{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        width:100% !important;
        margin:0 !important;
        padding:0 !important;
    }
    .dd-sidebar1 ul.mod-menu li,
    .dd-sidebar1 ul.dd-vmenu li{
        width:auto !important;
        min-width:0 !important;
    }
    .dd-sidebar1 ul.mod-menu li > a,
    .dd-sidebar1 ul.dd-vmenu li > a{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
        padding:8px 8px 8px 20px !important;
        font-size:12px !important;
        line-height:16px !important;
        white-space:normal !important;
    }

    /* Content should read like a normal mobile page, never a narrow right column */
    .dd-post,
    .dd-post-body,
    .dd-postcontent,
    .item-page,
    .com-content-article,
    .blog,
    .category-list,
    .hm-news-list,
    .hm-contact-page{
        display:block !important;
        float:none !important;
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        margin:0 !important;
        box-sizing:border-box !important;
    }

    .dd-postcontent,
    .dd-content{
        font-size:14px !important;
        line-height:1.4 !important;
    }
    .dd-content h1,
    .dd-content h2,
    .dd-content h3{
        max-width:100% !important;
        word-break:normal !important;
    }

    /* Footer also full width */
    .dd-footer,
    .dd-footer-inner{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }
}

@media (max-width:430px){
    .dd-sidebar1 ul.mod-menu,
    .dd-sidebar1 ul.dd-vmenu{
        grid-template-columns:1fr !important;
    }
}


/* v2.8 - hoofdmenu verbergen op responsive schermen */
@media (max-width: 768px) {
    .dd-nav {
        display: none !important;
    }
}


/* v2.9 - responsive fix voor floating terug-naar-boven knop */
#toTop{
    position:fixed !important;
    z-index:2147483000 !important;
    pointer-events:auto !important;
    touch-action:manipulation !important;
    -webkit-tap-highlight-color:transparent;
}

@media (max-width: 768px){
    #toTop{
        display:flex !important;
        visibility:visible !important;
        opacity:.98 !important;
        right:14px !important;
        bottom:calc(14px + env(safe-area-inset-bottom, 0px)) !important;
        width:64px !important;
        height:64px !important;
        min-width:64px !important;
        min-height:64px !important;
        transform:none !important;
    }

    /* voorkom dat responsive wrappers de fixed knop afknippen */
    html,
    body,
    #dd-main{
        overflow-x:hidden !important;
    }
}


/* =========================================================
   v3.2 Artikelopmaak – dichter bij de originele Hoeve-site
   ========================================================= */

/* Artikel als rustig paneel binnen de contentkolom */
.dd-content .com-content-article,
.dd-content .item-page,
.dd-content article.item-page{
    box-sizing:border-box;
    width:100%;
    margin:0 !important;
    padding:14px 16px 18px !important;
    border:1px solid rgba(120,120,120,.22);
    background:rgba(255,255,255,.10);
    color:#000;
    font-family:Arial,Helvetica,sans-serif;
    font-size:13px;
    line-height:1.28;
}

/* Hoofdtitel – kleiner, blauw en minder dominant */
.dd-content .com-content-article h1,
.dd-content .com-content-article h2,
.dd-content .item-page h1,
.dd-content .item-page h2,
.dd-content article.item-page h1,
.dd-content article.item-page h2{
    margin:0 0 10px !important;
    padding:0 !important;
    color:#23408E !important;
    font-family:Arial,Helvetica,sans-serif !important;
    font-size:16px !important;
    line-height:1.2 !important;
    font-weight:bold !important;
    text-shadow:none !important;
}

/* Joomla zet de artikeltitel soms in .page-header */
.dd-content .page-header{
    margin:0 0 10px !important;
    padding:0 !important;
    border:0 !important;
}
.dd-content .page-header h1,
.dd-content .page-header h2{
    margin:0 !important;
    color:#23408E !important;
    font-size:16px !important;
    line-height:1.2 !important;
    font-weight:bold !important;
}

/* Tekst compacter en vergelijkbaar met de oude site */
.dd-content .com-content-article p,
.dd-content .item-page p{
    margin:0 0 10px !important;
    padding:0 !important;
    font-size:13px !important;
    line-height:1.28 !important;
}

/* Eerste inleidende regel / nadruk zoals op de oude site */
.dd-content .com-content-article p:first-of-type strong,
.dd-content .com-content-article p:first-of-type em,
.dd-content .item-page p:first-of-type strong,
.dd-content .item-page p:first-of-type em{
    font-weight:bold;
    font-style:italic;
}

/* Links in de klassieke Hoeve-opmaak */
.dd-content .com-content-article a,
.dd-content .item-page a{
    color:#003399 !important;
    text-decoration:underline;
}
.dd-content .com-content-article a:hover,
.dd-content .item-page a:hover{
    color:#23408E !important;
}

/* Geen overdreven Joomla metadata-/iconenruimte */
.dd-content .article-info{
    margin:0 0 8px !important;
    padding:0 !important;
    font-size:11px !important;
}
.dd-content .icons,
.dd-content .btn-group.float-end{
    margin:0 !important;
}

/* Lijsten en tussenkoppen iets rustiger */
.dd-content .com-content-article h3,
.dd-content .com-content-article h4,
.dd-content .item-page h3,
.dd-content .item-page h4{
    margin:14px 0 6px !important;
    color:#000 !important;
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:bold !important;
}
.dd-content .com-content-article ul,
.dd-content .com-content-article ol,
.dd-content .item-page ul,
.dd-content .item-page ol{
    margin:6px 0 10px 20px !important;
    padding:0 !important;
}

/* De contentkolom niet tegen de rand laten plakken */
.dd-layout-cell.dd-content{
    padding:8px 10px 14px !important;
    box-sizing:border-box;
}

/* Op mobiel wat extra ademruimte */
@media (max-width:768px){
    .dd-layout-cell.dd-content{
        padding:8px !important;
    }
    .dd-content .com-content-article,
    .dd-content .item-page,
    .dd-content article.item-page{
        padding:12px !important;
    }
}


/* v3.3 - grotere artikeltitel en slider controls herstellen */
.dd-content .com-content-article h1,
.dd-content .com-content-article h2,
.dd-content .item-page h1,
.dd-content .item-page h2,
.dd-content article.item-page h1,
.dd-content article.item-page h2,
.dd-content .page-header h1,
.dd-content .page-header h2{
    font-size:20px !important;
    line-height:1.2 !important;
}

.hm-slider-controls{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    z-index:100 !important;
}
.hm-slider-dot{
    display:block !important;
    visibility:visible !important;
}
.hm-slider-arrow{
    z-index:101 !important;
}

/* v3.4 - Welkom artikel */
.hoeve-welkom{font-family:Arial,Helvetica,sans-serif;color:#292929;font-size:14px;line-height:1.58}
.hoeve-welkom *{box-sizing:border-box}.hoeve-welkom a{color:#23408e}
.hoeve-welkom .hw-intro{padding:25px 28px;margin:0 0 22px;background:#fff;border-left:5px solid #23408e;box-shadow:0 2px 12px rgba(0,0,0,.08)}
.hoeve-welkom .hw-intro h2{margin:0 0 7px!important;color:#23408e!important;font-size:25px!important}.hoeve-welkom .hw-lead{font-size:16px!important;font-weight:bold;color:#555}
.hoeve-welkom .hw-hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:25px}
.hoeve-welkom .hw-hours{overflow:hidden;background:#fff;border:1px solid #ddd;border-radius:5px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.hoeve-welkom .hw-hours-head{padding:13px 17px;background:#23408e;color:#fff}.hoeve-welkom .hw-hours-vacation .hw-hours-head{background:#a89461}
.hoeve-welkom .hw-eyebrow{display:block;font-size:10px;font-weight:bold;letter-spacing:1.1px;text-transform:uppercase}
.hoeve-welkom .hw-hours-head h3{margin:0!important;color:#fff!important;font-size:17px!important}.hoeve-welkom .hw-hours-body{padding:7px 17px 11px}
.hoeve-welkom .hw-time{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid #ececec}.hoeve-welkom .hw-time:last-child{border:0}
.hoeve-welkom .hw-time strong{color:#23408e;white-space:nowrap}.hoeve-welkom .hw-time .hw-closed{color:#a23333!important}.hoeve-welkom .hw-hours-note{font-size:11px;color:#777}
.hoeve-welkom .hw-section{margin-bottom:25px}.hoeve-welkom .hw-section-title{margin-bottom:13px;padding-bottom:7px;border-bottom:2px solid #e5e5e5}
.hoeve-welkom .hw-section-title span{display:block;color:#a89461;font-size:10px;font-weight:bold;letter-spacing:1.1px;text-transform:uppercase}
.hoeve-welkom .hw-section-title h2{margin:0!important;color:#23408e!important;font-size:20px!important}
.hoeve-welkom .hw-about{padding:21px 23px;background:rgba(255,255,255,.62);border:1px solid #ddd;border-radius:5px}
.hoeve-welkom .hw-location{margin-top:17px;padding:14px 17px;background:#f4f1e8;border-left:4px solid #a89461}.hoeve-welkom .hw-location strong,.hoeve-welkom .hw-location span{display:block}
.hoeve-welkom .hw-services{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.hoeve-welkom .hw-service{padding:16px;background:#fff;border:1px solid #ddd;border-top:3px solid #23408e;border-radius:4px}
.hoeve-welkom .hw-service h3{margin:0 0 6px!important;color:#23408e!important;font-size:15px!important}.hoeve-welkom .hw-service p{margin:0!important;color:#555;font-size:13px!important}
.hoeve-welkom .hw-promo{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;margin:27px 0;padding:21px 25px;background:#23408e;color:#fff;border-radius:5px}
.hoeve-welkom .hw-promo-label{display:inline-block;padding:3px 8px;background:#a89461;font-size:10px;font-weight:bold;text-transform:uppercase}.hoeve-welkom .hw-promo h2{color:#fff!important;font-size:21px!important}
.hoeve-welkom .hw-promo p{color:#fff}.hoeve-welkom .hw-price{text-align:center;min-width:140px}.hoeve-welkom .hw-price strong{display:block;color:#fff;font-size:28px}
.hoeve-welkom .hw-price a{display:inline-block;padding:7px 12px;background:#fff;color:#23408e!important;border-radius:3px;font-weight:bold;text-decoration:none!important}
.hoeve-welkom .hw-showroom,.hoeve-welkom .hw-specials{display:grid;grid-template-columns:1fr 1fr;gap:18px}.hoeve-welkom .hw-info-box{padding:19px;background:#fff;border:1px solid #ddd;border-radius:5px}
.hoeve-welkom .hw-info-box h3{color:#23408e!important;font-size:16px!important}.hoeve-welkom .hw-list{margin:0!important;padding:0!important;list-style:none!important}
.hoeve-welkom .hw-list li{position:relative;padding:7px 0 7px 19px!important;border-bottom:1px solid #ececec}.hoeve-welkom .hw-list li:before{content:"›";position:absolute;left:4px;color:#a89461;font-size:18px}
.hoeve-welkom .hw-brands{display:flex;flex-wrap:wrap;gap:7px}.hoeve-welkom .hw-brand{padding:5px 9px;background:#f4f1e8;border:1px solid #ded7c4;border-radius:3px;font-size:12px;font-weight:bold}
.hoeve-welkom .hw-visit{padding:23px;text-align:center;background:#f5f5f5;border-top:4px solid #23408e}.hoeve-welkom .hw-visit h2{color:#23408e!important;font-size:21px!important}
.hoeve-welkom .hw-button{display:inline-block;margin:3px;padding:8px 15px;background:#23408e;color:#fff!important;border-radius:3px;font-weight:bold;text-decoration:none!important}.hoeve-welkom .hw-button-alt{background:#a89461}
@media(max-width:800px){.hoeve-welkom .hw-services{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.hoeve-welkom .hw-hours-grid,.hoeve-welkom .hw-showroom,.hoeve-welkom .hw-specials,.hoeve-welkom .hw-promo{grid-template-columns:1fr}.hoeve-welkom .hw-price{text-align:left}}
@media(max-width:480px){.hoeve-welkom .hw-services{grid-template-columns:1fr}.hoeve-welkom .hw-intro,.hoeve-welkom .hw-about,.hoeve-welkom .hw-promo{padding:16px}}


/* v3.5 - betere leesbaarheid knoppen op Welkom-pagina */
.hoeve-welkom .hw-visit a.hw-button,
.hoeve-welkom .hw-visit a.hw-button:link,
.hoeve-welkom .hw-visit a.hw-button:visited {
    display:inline-block;
    margin:3px;
    padding:10px 18px;
    background:#23408e !important;
    color:#ffffff !important;
    border:1px solid #1b3270;
    border-radius:3px;
    font-weight:bold;
    text-decoration:none !important;
}

.hoeve-welkom .hw-visit a.hw-button:hover,
.hoeve-welkom .hw-visit a.hw-button:focus {
    background:#182f70 !important;
    color:#ffffff !important;
}

.hoeve-welkom .hw-visit a.hw-button-alt,
.hoeve-welkom .hw-visit a.hw-button-alt:link,
.hoeve-welkom .hw-visit a.hw-button-alt:visited {
    background:#a89461 !important;
    border-color:#8f7b4e;
    color:#ffffff !important;
}

.hoeve-welkom .hw-visit a.hw-button-alt:hover,
.hoeve-welkom .hw-visit a.hw-button-alt:focus {
    background:#8f7b4e !important;
    color:#ffffff !important;
}


/* =========================================================
   v3.6 - Motoren pagina
   ========================================================= */
.hoeve-motoren{
    font-family:Arial,Helvetica,sans-serif;
    color:#292929;
    font-size:14px;
    line-height:1.55;
}
.hoeve-motoren *{box-sizing:border-box}

.hoeve-motoren .hm-motor-intro{
    margin:0 0 22px;
    padding:23px 26px;
    background:#fff;
    border-left:5px solid #23408e;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.hoeve-motoren .hm-motor-intro h2{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:24px!important;
    line-height:1.2!important;
}
.hoeve-motoren .hm-motor-intro p{
    margin:0!important;
    color:#555;
    font-size:15px!important;
}

.hoeve-motoren .hm-finance-card{
    display:grid;
    grid-template-columns:minmax(220px,340px) 1fr auto;
    align-items:center;
    gap:22px;
    margin:0 0 24px;
    padding:18px 20px;
    background:#f4f1e8;
    border:1px solid #ddd5bf;
    border-radius:5px;
}
.hoeve-motoren .hm-finance-card img{
    display:block;
    width:100%;
    max-width:340px;
    height:auto;
    margin:0!important;
}
.hoeve-motoren .hm-finance-text strong{
    display:block;
    margin-bottom:4px;
    color:#23408e;
    font-size:16px;
}
.hoeve-motoren .hm-finance-text span{
    display:block;
    color:#555;
}
.hoeve-motoren .hm-finance-button{
    display:inline-block;
    padding:9px 14px;
    background:#23408e;
    color:#fff!important;
    border-radius:3px;
    font-weight:bold;
    text-decoration:none!important;
    white-space:nowrap;
}
.hoeve-motoren .hm-finance-button:hover{
    background:#182f70;
    color:#fff!important;
}

.hoeve-motoren .hm-motor-contact{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:0 0 24px;
    padding:15px 18px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}
.hoeve-motoren .hm-motor-contact p{
    margin:0!important;
}
.hoeve-motoren .hm-motor-contact a{
    display:inline-block;
    padding:8px 14px;
    background:#a89461;
    color:#fff!important;
    border-radius:3px;
    font-weight:bold;
    text-decoration:none!important;
    white-space:nowrap;
}

/* Qonnex aanbod */
.hoeve-motoren-aanbod{
    margin:8px 0 20px;
}
.hm-motoren-aanbod-head{
    margin:0 0 14px;
    padding-bottom:8px;
    border-bottom:2px solid #e5e5e5;
}
.hm-motoren-aanbod-head > span{
    display:block;
    color:#a89461;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}
.hm-motoren-aanbod-head h2{
    margin:1px 0 5px!important;
    color:#23408e!important;
    font-size:20px!important;
}
.hm-motoren-aanbod-head p{
    margin:0!important;
    color:#555;
}

.hm-qonnex-target{
    width:100%;
    min-height:180px;
    overflow:hidden;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}
.hm-qonnex-target > iframe,
.hm-qonnex-target iframe{
    max-width:100%!important;
}
.hm-qonnex-cookie-note{
    min-height:180px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:22px;
    text-align:center;
    background:#f7f7f7;
}
.hm-qonnex-cookie-note strong{
    color:#23408e;
    font-size:16px;
}
.hm-qonnex-cookie-note button{
    margin-top:7px;
    padding:8px 14px;
    border:1px solid #1b3270;
    border-radius:3px;
    background:#23408e;
    color:#fff;
    cursor:pointer;
    font-weight:bold;
}

/* Maak door Qonnex toegevoegde inhoud responsive */
.hm-qonnex-target,
.hm-qonnex-target div,
.hm-qonnex-target table{
    max-width:100%!important;
}
.hm-qonnex-target img{
    max-width:100%!important;
    height:auto!important;
}

@media(max-width:760px){
    .hoeve-motoren .hm-finance-card{
        grid-template-columns:1fr;
        gap:12px;
    }
    .hoeve-motoren .hm-finance-card img{
        max-width:100%;
    }
    .hoeve-motoren .hm-finance-button{
        justify-self:start;
    }
    .hoeve-motoren .hm-motor-contact{
        align-items:flex-start;
        flex-direction:column;
    }
}


/* =========================================================
   v3.7 - Motoren knop + Qonnex iframe fix
   ========================================================= */
.hoeve-motoren a.hm-finance-button,
.hoeve-motoren a.hm-finance-button:link,
.hoeve-motoren a.hm-finance-button:visited {
    display:inline-block !important;
    padding:9px 14px !important;
    background:#23408e !important;
    color:#ffffff !important;
    border:1px solid #1b3270 !important;
    border-radius:3px !important;
    font-weight:bold !important;
    text-decoration:none !important;
    white-space:nowrap;
}

.hoeve-motoren a.hm-finance-button:hover,
.hoeve-motoren a.hm-finance-button:focus {
    background:#182f70 !important;
    color:#ffffff !important;
}

.hm-qonnex-frame{
    display:block;
    width:100% !important;
    min-height:600px;
    height:1400px;
    margin:0;
    padding:0;
    border:0;
    background:#fff;
}

.hm-qonnex-frame[hidden]{
    display:none !important;
}

.hm-qonnex-target{
    overflow:visible !important;
}


/* =========================================================
   v3.8 - Scooters / bromfietsen pagina
   ========================================================= */
.hoeve-scooters{
    font-family:Arial,Helvetica,sans-serif;
    color:#292929;
    font-size:14px;
    line-height:1.55;
}

.hoeve-scooters *{
    box-sizing:border-box;
}

.hoeve-scooters .hs-intro{
    margin:0 0 22px;
    padding:23px 26px;
    background:#fff;
    border-left:5px solid #23408e;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}

.hoeve-scooters .hs-intro h2{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:24px!important;
    line-height:1.2!important;
}

.hoeve-scooters .hs-intro p{
    margin:0!important;
    color:#555;
    font-size:15px!important;
}

/* Financiering */
.hoeve-scooters .hs-finance-card{
    display:grid;
    grid-template-columns:minmax(220px,340px) 1fr auto;
    align-items:center;
    gap:22px;
    margin:0 0 20px;
    padding:18px 20px;
    background:#f4f1e8;
    border:1px solid #ddd5bf;
    border-radius:5px;
}

.hoeve-scooters .hs-finance-card img{
    display:block;
    width:100%;
    max-width:340px;
    height:auto;
    margin:0!important;
}

.hoeve-scooters .hs-finance-text strong{
    display:block;
    margin-bottom:4px;
    color:#23408e;
    font-size:16px;
}

.hoeve-scooters .hs-finance-text span{
    display:block;
    color:#555;
}

/* Expliciet witte tekst, zodat algemene Joomla/link-CSS dit niet overschrijft */
.hoeve-scooters a.hs-finance-button,
.hoeve-scooters a.hs-finance-button:link,
.hoeve-scooters a.hs-finance-button:visited{
    display:inline-block!important;
    padding:9px 14px!important;
    background:#23408e!important;
    color:#fff!important;
    border:1px solid #1b3270!important;
    border-radius:3px!important;
    font-weight:bold!important;
    text-decoration:none!important;
    white-space:nowrap;
}

.hoeve-scooters a.hs-finance-button:hover,
.hoeve-scooters a.hs-finance-button:focus{
    background:#182f70!important;
    color:#fff!important;
}

/* SYM blok */
.hoeve-scooters .hs-sym-card{
    display:grid;
    grid-template-columns:100px 1fr auto;
    align-items:center;
    gap:20px;
    margin:0 0 20px;
    padding:18px 20px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}

.hoeve-scooters .hs-sym-logo img{
    display:block;
    width:85px;
    height:auto;
    margin:0 auto!important;
}

.hoeve-scooters .hs-sym-text strong{
    display:block;
    margin-bottom:4px;
    color:#23408e;
    font-size:16px;
}

.hoeve-scooters .hs-sym-text p{
    margin:0!important;
    color:#555;
}

.hoeve-scooters a.hs-sym-button,
.hoeve-scooters a.hs-sym-button:link,
.hoeve-scooters a.hs-sym-button:visited{
    display:inline-block!important;
    padding:9px 14px!important;
    background:#a89461!important;
    color:#fff!important;
    border:1px solid #8f7b4e!important;
    border-radius:3px!important;
    font-weight:bold!important;
    text-decoration:none!important;
    white-space:nowrap;
}

.hoeve-scooters a.hs-sym-button:hover,
.hoeve-scooters a.hs-sym-button:focus{
    background:#8f7b4e!important;
    color:#fff!important;
}

/* Contact / zoekopdracht */
.hoeve-scooters .hs-contact{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:0 0 24px;
    padding:15px 18px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}

.hoeve-scooters .hs-contact p{
    margin:0!important;
}

.hoeve-scooters .hs-contact a,
.hoeve-scooters .hs-contact a:link,
.hoeve-scooters .hs-contact a:visited{
    display:inline-block;
    padding:8px 14px;
    background:#23408e!important;
    color:#fff!important;
    border-radius:3px;
    font-weight:bold;
    text-decoration:none!important;
    white-space:nowrap;
}

/* Actueel Qonnex aanbod */
.hoeve-scooters-aanbod{
    margin:8px 0 20px;
}

.hs-scooters-aanbod-head{
    margin:0 0 14px;
    padding-bottom:8px;
    border-bottom:2px solid #e5e5e5;
}

.hs-scooters-aanbod-head > span{
    display:block;
    color:#a89461;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}

.hs-scooters-aanbod-head h2{
    margin:1px 0 5px!important;
    color:#23408e!important;
    font-size:20px!important;
}

.hs-scooters-aanbod-head p{
    margin:0!important;
    color:#555;
}

.hs-qonnex-target{
    width:100%;
    min-height:180px;
    overflow:visible!important;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}

.hs-qonnex-cookie-note{
    min-height:180px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:22px;
    text-align:center;
    background:#f7f7f7;
}

.hs-qonnex-cookie-note strong{
    color:#23408e;
    font-size:16px;
}

.hs-qonnex-cookie-note button{
    margin-top:7px;
    padding:8px 14px;
    border:1px solid #1b3270;
    border-radius:3px;
    background:#23408e;
    color:#fff;
    cursor:pointer;
    font-weight:bold;
}

.hs-qonnex-frame{
    display:block;
    width:100%!important;
    min-height:600px;
    height:1400px;
    margin:0;
    padding:0;
    border:0;
    background:#fff;
}

.hs-qonnex-frame[hidden]{
    display:none!important;
}

@media(max-width:760px){
    .hoeve-scooters .hs-finance-card,
    .hoeve-scooters .hs-sym-card{
        grid-template-columns:1fr;
        gap:12px;
    }

    .hoeve-scooters .hs-finance-card img{
        max-width:100%;
    }

    .hoeve-scooters .hs-sym-logo img{
        margin:0!important;
    }

    .hoeve-scooters .hs-finance-button,
    .hoeve-scooters .hs-sym-button{
        justify-self:start;
    }

    .hoeve-scooters .hs-contact{
        flex-direction:column;
        align-items:flex-start;
    }
}


/* =========================================================
   v4.0 - Banden pagina
   ========================================================= */
.hoeve-banden{
    font-family:Arial,Helvetica,sans-serif;
    color:#292929;
    font-size:14px;
    line-height:1.55;
}
.hoeve-banden *{box-sizing:border-box}
.hoeve-banden a{color:#23408e}

/* Intro */
.hoeve-banden .hb-intro{
    margin:0 0 22px;
    padding:23px 26px;
    background:#fff;
    border-left:5px solid #23408e;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.hoeve-banden .hb-intro h2{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:24px!important;
}
.hoeve-banden .hb-intro p{
    margin:0 0 8px!important;
    color:#555;
    font-size:15px!important;
}
.hoeve-banden .hb-intro p:last-child{margin-bottom:0!important}

/* CTA / dealer block */
.hoeve-banden .hb-dealer{
    display:grid;
    grid-template-columns:1fr auto;
    gap:20px;
    align-items:center;
    margin:0 0 24px;
    padding:19px 21px;
    background:#f4f1e8;
    border:1px solid #ddd5bf;
    border-radius:5px;
}
.hoeve-banden .hb-dealer strong{
    display:block;
    margin-bottom:4px;
    color:#23408e;
    font-size:17px;
}
.hoeve-banden .hb-dealer p{margin:0!important;color:#555}
.hoeve-banden a.hb-button,
.hoeve-banden a.hb-button:link,
.hoeve-banden a.hb-button:visited{
    display:inline-block!important;
    padding:9px 14px!important;
    background:#23408e!important;
    color:#fff!important;
    border:1px solid #1b3270!important;
    border-radius:3px!important;
    font-weight:bold!important;
    text-decoration:none!important;
    white-space:nowrap;
}
.hoeve-banden a.hb-button:hover,
.hoeve-banden a.hb-button:focus{
    background:#182f70!important;
    color:#fff!important;
}

/* Secties */
.hoeve-banden .hb-section{margin:0 0 25px}
.hoeve-banden .hb-section-title{
    margin:0 0 13px;
    padding:0 0 7px;
    border-bottom:2px solid #e5e5e5;
}
.hoeve-banden .hb-section-title span{
    display:block;
    color:#a89461;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}
.hoeve-banden .hb-section-title h2{
    margin:0!important;
    color:#23408e!important;
    font-size:20px!important;
}
.hoeve-banden .hb-section-title p{
    margin:5px 0 0!important;
    color:#555;
}

/* Geschiedenis */
.hoeve-banden .hb-evolution{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin:0 0 23px;
}
.hoeve-banden .hb-evolution-card{
    padding:17px 18px;
    background:#fff;
    border:1px solid #ddd;
    border-top:3px solid #23408e;
    border-radius:4px;
}
.hoeve-banden .hb-evolution-card h3{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:15px!important;
}
.hoeve-banden .hb-evolution-card p{
    margin:0!important;
    color:#555;
}

/* Product cards / tables */
.hoeve-banden .hb-card{
    margin:0 0 16px;
    overflow:hidden;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}
.hoeve-banden .hb-card-head{
    padding:10px 14px;
    background:#23408e;
    color:#fff;
}
.hoeve-banden .hb-card-head h3{
    margin:0!important;
    color:#fff!important;
    font-size:15px!important;
}
.hoeve-banden .hb-card-head small{
    display:block;
    margin-top:2px;
    color:rgba(255,255,255,.82);
}
.hoeve-banden .hb-table{
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
}
.hoeve-banden .hb-table th,
.hoeve-banden .hb-table td{
    padding:8px 11px;
    border-bottom:1px solid #ececec;
    text-align:left;
    vertical-align:top;
}
.hoeve-banden .hb-table tr:last-child td{border-bottom:0}
.hoeve-banden .hb-table th{
    background:#f6f6f6;
    color:#23408e;
    font-size:12px;
}
.hoeve-banden .hb-table td:first-child{width:62%}
.hoeve-banden .hb-price{
    color:#6f603b;
    font-weight:bold;
    white-space:nowrap;
}
.hoeve-banden .hb-muted{
    color:#777;
    font-size:12px;
}

/* Merkblokken */
.hoeve-banden .hb-brand-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}
.hoeve-banden .hb-brand-box{
    padding:18px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}
.hoeve-banden .hb-brand-box h3{
    margin:0 0 9px!important;
    color:#23408e!important;
    font-size:16px!important;
}

/* Aanbieding */
.hoeve-banden .hb-offer{
    margin:22px 0;
    padding:19px 21px;
    background:#23408e;
    color:#fff;
    border-radius:5px;
}
.hoeve-banden .hb-offer h2{
    margin:0 0 7px!important;
    color:#fff!important;
    font-size:20px!important;
}
.hoeve-banden .hb-offer ul{
    margin:0!important;
    padding:0 0 0 18px!important;
}
.hoeve-banden .hb-offer li{margin:4px 0}
.hoeve-banden .hb-offer strong{color:#fff}

/* Montage */
.hoeve-banden .hb-montage{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin:0 0 18px;
}
.hoeve-banden .hb-montage-card{
    padding:18px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
    text-align:center;
}
.hoeve-banden .hb-montage-card span{
    display:block;
    color:#555;
}
.hoeve-banden .hb-montage-card strong{
    display:block;
    margin-top:5px;
    color:#23408e;
    font-size:22px;
}
.hoeve-banden .hb-contact{
    padding:16px 18px;
    background:#f4f1e8;
    border-left:4px solid #a89461;
}
.hoeve-banden .hb-contact strong{
    display:block;
    color:#23408e;
    font-size:15px;
}

@media(max-width:760px){
    .hoeve-banden .hb-dealer,
    .hoeve-banden .hb-evolution,
    .hoeve-banden .hb-brand-grid,
    .hoeve-banden .hb-montage{
        grid-template-columns:1fr;
    }
    .hoeve-banden .hb-table{
        table-layout:auto;
    }
}
@media(max-width:520px){
    .hoeve-banden .hb-table th:nth-child(2),
    .hoeve-banden .hb-table td:nth-child(2){
        text-align:right;
    }
    .hoeve-banden .hb-card{
        overflow-x:auto;
    }
}


/* =========================================================
   v4.1 - Nieuwsbrief pagina
   ========================================================= */
.hoeve-nieuwsbrief{
    font-family:Arial,Helvetica,sans-serif;
    color:#292929;
    font-size:14px;
    line-height:1.55;
}
.hoeve-nieuwsbrief *{box-sizing:border-box}

.hoeve-nieuwsbrief .hn-intro{
    margin:0 0 22px;
    padding:24px 27px;
    background:#fff;
    border-left:5px solid #23408e;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.hoeve-nieuwsbrief .hn-intro h2{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:24px!important;
    line-height:1.2!important;
}
.hoeve-nieuwsbrief .hn-intro p{
    margin:0!important;
    color:#555;
    font-size:15px!important;
}

.hoeve-nieuwsbrief .hn-card{
    display:grid;
    grid-template-columns:1fr auto;
    gap:24px;
    align-items:center;
    padding:24px 26px;
    background:#f4f1e8;
    border:1px solid #ddd5bf;
    border-radius:5px;
}
.hoeve-nieuwsbrief .hn-card-label{
    display:inline-block;
    margin-bottom:6px;
    color:#a89461;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}
.hoeve-nieuwsbrief .hn-card h3{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:18px!important;
}
.hoeve-nieuwsbrief .hn-card p{
    margin:0!important;
    color:#555;
    max-width:560px;
}
.hoeve-nieuwsbrief a.hn-button,
.hoeve-nieuwsbrief a.hn-button:link,
.hoeve-nieuwsbrief a.hn-button:visited{
    display:inline-block!important;
    padding:10px 16px!important;
    background:#23408e!important;
    color:#fff!important;
    border:1px solid #1b3270!important;
    border-radius:3px!important;
    font-weight:bold!important;
    text-decoration:none!important;
    white-space:nowrap;
}
.hoeve-nieuwsbrief a.hn-button:hover,
.hoeve-nieuwsbrief a.hn-button:focus{
    background:#182f70!important;
    color:#fff!important;
}

.hoeve-nieuwsbrief .hn-note{
    margin-top:16px;
    padding:13px 16px;
    background:#fff;
    border:1px solid #ddd;
    border-left:4px solid #a89461;
    color:#555;
}
.hoeve-nieuwsbrief .hn-note strong{
    color:#23408e;
}

@media(max-width:650px){
    .hoeve-nieuwsbrief .hn-card{
        grid-template-columns:1fr;
    }
    .hoeve-nieuwsbrief .hn-card a.hn-button{
        justify-self:start;
    }
}


/* =========================================================
   v4.2 - Route & openingstijden pagina
   ========================================================= */
.hoeve-route{
    font-family:Arial,Helvetica,sans-serif;
    color:#292929;
    font-size:14px;
    line-height:1.55;
}
.hoeve-route *{box-sizing:border-box}
.hoeve-route a{color:#23408e}

/* Bedrijfsgegevens */
.hoeve-route .hr-company{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:18px;
    margin:0 0 22px;
}
.hoeve-route .hr-card{
    padding:21px 23px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
    box-shadow:0 2px 8px rgba(0,0,0,.05);
}
.hoeve-route .hr-card h2{
    margin:0 0 8px!important;
    color:#23408e!important;
    font-size:22px!important;
}
.hoeve-route .hr-card h3{
    margin:0 0 8px!important;
    color:#23408e!important;
    font-size:16px!important;
}
.hoeve-route .hr-address{
    font-size:16px;
    line-height:1.45;
}
.hoeve-route .hr-address strong{
    display:block;
    color:#23408e;
    font-size:18px;
}
.hoeve-route .hr-contact-line{
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding:7px 0;
    border-bottom:1px solid #ececec;
}
.hoeve-route .hr-contact-line:last-child{border-bottom:0}
.hoeve-route .hr-contact-line span:first-child{color:#666}
.hoeve-route .hr-contact-line strong{
    text-align:right;
    color:#292929;
}

/* Openingstijden */
.hoeve-route .hr-hours-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin:0 0 25px;
}
.hoeve-route .hr-hours{
    overflow:hidden;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
    box-shadow:0 2px 8px rgba(0,0,0,.05);
}
.hoeve-route .hr-hours-head{
    padding:13px 17px;
    background:#23408e;
    color:#fff;
}
.hoeve-route .hr-hours-vacation .hr-hours-head{background:#a89461}
.hoeve-route .hr-eyebrow{
    display:block;
    margin-bottom:2px;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}
.hoeve-route .hr-hours-head h3{
    margin:0!important;
    color:#fff!important;
    font-size:17px!important;
}
.hoeve-route .hr-hours-body{padding:7px 17px 11px}
.hoeve-route .hr-time{
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding:8px 0;
    border-bottom:1px solid #ececec;
}
.hoeve-route .hr-time:last-child{border-bottom:0}
.hoeve-route .hr-time strong{
    color:#23408e;
    white-space:nowrap;
}
.hoeve-route .hr-hours-vacation .hr-time strong{color:#6f603b}
.hoeve-route .hr-time .hr-closed{color:#a23333!important}
.hoeve-route .hr-note{font-size:11px;color:#777}

/* Route sectie */
.hoeve-route .hr-section{
    margin:0 0 25px;
}
.hoeve-route .hr-section-title{
    margin:0 0 13px;
    padding-bottom:7px;
    border-bottom:2px solid #e5e5e5;
}
.hoeve-route .hr-section-title span{
    display:block;
    color:#a89461;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}
.hoeve-route .hr-section-title h2{
    margin:0!important;
    color:#23408e!important;
    font-size:20px!important;
}

/* routekaarten */
.hoeve-route .hr-routes{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
}
.hoeve-route .hr-route-card{
    padding:18px 20px;
    background:#fff;
    border:1px solid #ddd;
    border-left:4px solid #23408e;
    border-radius:4px;
}
.hoeve-route .hr-route-card h3{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:16px!important;
}
.hoeve-route .hr-route-card p{
    margin:0!important;
    color:#444;
}
.hoeve-route .hr-route-card .hr-destination{
    margin-top:8px!important;
    padding-top:8px;
    border-top:1px solid #ececec;
    color:#6f603b;
    font-weight:bold;
}

/* Locatieblok */
.hoeve-route .hr-location{
    display:grid;
    grid-template-columns:1fr auto;
    gap:20px;
    align-items:center;
    padding:20px 22px;
    background:#f4f1e8;
    border:1px solid #ddd5bf;
    border-radius:5px;
}
.hoeve-route .hr-location strong{
    display:block;
    margin-bottom:4px;
    color:#23408e;
    font-size:17px;
}
.hoeve-route .hr-location p{
    margin:0!important;
    color:#555;
}
.hoeve-route a.hr-button,
.hoeve-route a.hr-button:link,
.hoeve-route a.hr-button:visited{
    display:inline-block!important;
    padding:9px 14px!important;
    background:#23408e!important;
    color:#fff!important;
    border:1px solid #1b3270!important;
    border-radius:3px!important;
    font-weight:bold!important;
    text-decoration:none!important;
    white-space:nowrap;
}
.hoeve-route a.hr-button:hover,
.hoeve-route a.hr-button:focus{
    background:#182f70!important;
    color:#fff!important;
}

/* Links */
.hoeve-route .hr-links{
    margin-top:18px;
    padding:15px 18px;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
}
.hoeve-route .hr-links strong{
    display:block;
    margin-bottom:4px;
    color:#23408e;
}

/* Responsive */
@media(max-width:760px){
    .hoeve-route .hr-company,
    .hoeve-route .hr-hours-grid,
    .hoeve-route .hr-location{
        grid-template-columns:1fr;
    }
    .hoeve-route .hr-location a.hr-button{
        justify-self:start;
    }
}
@media(max-width:520px){
    .hoeve-route .hr-contact-line,
    .hoeve-route .hr-time{
        display:block;
    }
    .hoeve-route .hr-contact-line strong,
    .hoeve-route .hr-time strong{
        display:block;
        margin-top:2px;
        text-align:left;
    }
}


/* =========================================================
   v4.3 - Contactpagina
   ========================================================= */
.hoeve-contact{
    font-family:Arial,Helvetica,sans-serif;
    color:#292929;
    font-size:14px;
    line-height:1.55;
}
.hoeve-contact *{box-sizing:border-box}

.hoeve-contact .hc-intro{
    margin:0 0 22px;
    padding:23px 26px;
    background:#fff;
    border-left:5px solid #23408e;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.hoeve-contact .hc-eyebrow{
    display:block;
    margin-bottom:3px;
    color:#a89461;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}
.hoeve-contact .hc-intro h2{
    margin:0 0 7px!important;
    color:#23408e!important;
    font-size:24px!important;
    line-height:1.2!important;
}
.hoeve-contact .hc-intro p{
    margin:0!important;
    color:#555;
    font-size:15px!important;
}

.hoeve-contact .hc-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 300px;
    gap:18px;
    align-items:start;
}

.hoeve-contact .hc-form-card,
.hoeve-contact .hc-side-card{
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
    box-shadow:0 2px 8px rgba(0,0,0,.05);
}
.hoeve-contact .hc-form-card{
    padding:22px 24px;
}
.hoeve-contact .hc-side{
    display:grid;
    gap:16px;
}
.hoeve-contact .hc-side-card{
    padding:19px 20px;
}
.hoeve-contact .hc-side-card h3{
    margin:0 0 11px!important;
    color:#23408e!important;
    font-size:17px!important;
}

.hoeve-contact .hc-field{
    margin:0 0 15px;
}
.hoeve-contact .hc-field label{
    display:block;
    margin:0 0 5px;
    color:#333;
    font-weight:bold;
}
.hoeve-contact .hc-field label span{
    color:#a23333;
}
.hoeve-contact .hc-field input,
.hoeve-contact .hc-field textarea{
    display:block;
    width:100%;
    margin:0;
    padding:9px 10px;
    border:1px solid #bbb;
    border-radius:4px;
    background:#fff;
    color:#222;
    font:14px Arial,Helvetica,sans-serif;
    box-shadow:inset 0 1px 2px rgba(0,0,0,.04);
}
.hoeve-contact .hc-field input{
    height:38px;
}
.hoeve-contact .hc-field textarea{
    min-height:180px;
    resize:vertical;
}
.hoeve-contact .hc-field input:focus,
.hoeve-contact .hc-field textarea:focus{
    outline:none;
    border-color:#23408e;
    box-shadow:0 0 0 2px rgba(35,64,142,.12);
}

.hoeve-contact .hc-security{
    display:flex;
    align-items:center;
    gap:11px;
    margin:4px 0 17px;
    padding:11px 13px;
    background:#f4f1e8;
    border:1px solid #ddd5bf;
    border-radius:4px;
}
.hoeve-contact .hc-security-icon{
    width:30px;
    height:30px;
    flex:0 0 30px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#23408e;
    color:#fff;
    font-weight:bold;
}
.hoeve-contact .hc-security strong,
.hoeve-contact .hc-security span{
    display:block;
}
.hoeve-contact .hc-security div > span{
    color:#666;
    font-size:12px;
}

.hoeve-contact .hc-submit button{
    padding:10px 18px;
    border:1px solid #1b3270;
    border-radius:3px;
    background:#23408e;
    color:#fff;
    cursor:pointer;
    font:bold 14px Arial,Helvetica,sans-serif;
}
.hoeve-contact .hc-submit button:hover,
.hoeve-contact .hc-submit button:focus{
    background:#182f70;
    color:#fff;
}

.hoeve-contact .hc-message{
    margin:0 0 16px;
    padding:12px 14px;
    border-radius:4px;
}
.hoeve-contact .hc-message strong,
.hoeve-contact .hc-message span{
    display:block;
}
.hoeve-contact .hc-success{
    background:#edf6eb;
    border:1px solid #9bc493;
    color:#315c2d;
}
.hoeve-contact .hc-error{
    background:#fbeaea;
    border:1px solid #c98585;
    color:#8b2020;
}

.hoeve-contact .hc-contact-line{
    padding:8px 0;
    border-bottom:1px solid #ececec;
}
.hoeve-contact .hc-contact-line:last-child{
    border-bottom:0;
}
.hoeve-contact .hc-contact-line > span{
    display:block;
    margin-bottom:2px;
    color:#777;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.4px;
}
.hoeve-contact .hc-contact-line strong{
    color:#292929;
}
.hoeve-contact .hc-contact-line a{
    color:#23408e!important;
    text-decoration:none!important;
}

.hoeve-contact .hc-visit-card{
    background:#f4f1e8;
    border-color:#ddd5bf;
}
.hoeve-contact .hc-visit-card p{
    margin:0 0 13px!important;
    color:#555;
}
.hoeve-contact a.hc-route-button,
.hoeve-contact a.hc-route-button:link,
.hoeve-contact a.hc-route-button:visited{
    display:inline-block!important;
    padding:9px 14px!important;
    background:#a89461!important;
    color:#fff!important;
    border:1px solid #8f7b4e!important;
    border-radius:3px!important;
    font-weight:bold!important;
    text-decoration:none!important;
}
.hoeve-contact a.hc-route-button:hover,
.hoeve-contact a.hc-route-button:focus{
    background:#8f7b4e!important;
    color:#fff!important;
}

@media(max-width:760px){
    .hoeve-contact .hc-layout{
        grid-template-columns:1fr;
    }
}
@media(max-width:520px){
    .hoeve-contact .hc-intro,
    .hoeve-contact .hc-form-card,
    .hoeve-contact .hc-side-card{
        padding:16px;
    }
}


/* =========================================================
   v4.4 - Nieuwspagina
   ========================================================= */
.hoeve-nieuws{
    font-family:Arial,Helvetica,sans-serif;
    color:#292929;
    font-size:14px;
    line-height:1.5;
}
.hoeve-nieuws *{box-sizing:border-box}

/* Intro */
.hoeve-nieuws .hnieuws-intro{
    margin:0 0 20px;
    padding:23px 26px;
    background:#fff;
    border-left:5px solid #23408e;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.hoeve-nieuws .hnieuws-eyebrow{
    display:block;
    margin-bottom:3px;
    color:#a89461;
    font-size:10px;
    font-weight:bold;
    letter-spacing:1.1px;
    text-transform:uppercase;
}
.hoeve-nieuws .hnieuws-intro h2{
    margin:0 0 6px!important;
    color:#23408e!important;
    font-size:24px!important;
    line-height:1.2!important;
}
.hoeve-nieuws .hnieuws-intro p{
    margin:0!important;
    color:#555;
    font-size:15px!important;
}

/* Main card */
.hoeve-nieuws .hnieuws-card{
    overflow:hidden;
    background:#fff;
    border:1px solid #ddd;
    border-radius:5px;
    box-shadow:0 2px 8px rgba(0,0,0,.05);
}
.hoeve-nieuws .hnieuws-card form{
    margin:0!important;
    padding:0!important;
}

/* Toolbar */
.hoeve-nieuws .hnieuws-toolbar{
    display:flex;
    align-items:center;
    gap:8px;
    padding:12px 14px;
    background:#f4f1e8;
    border-bottom:1px solid #ddd5bf;
}
.hoeve-nieuws .hnieuws-toolbar label{
    margin:0;
    color:#555;
    font-size:12px;
}
.hoeve-nieuws .hnieuws-toolbar select{
    width:auto;
    min-width:52px;
    height:30px;
    padding:3px 22px 3px 7px;
    border:1px solid #bbb;
    border-radius:3px;
    background:#fff;
    font:13px Arial,Helvetica,sans-serif;
}

/* Table */
.hoeve-nieuws .hnieuws-table{
    width:100%;
}
.hoeve-nieuws .hnieuws-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 180px;
    gap:22px;
    align-items:center;
    min-height:42px;
    padding:9px 14px;
    border-bottom:1px solid #ececec;
}
.hoeve-nieuws .hnieuws-row:last-child{
    border-bottom:0;
}
.hoeve-nieuws .hnieuws-head{
    min-height:38px;
    padding-top:8px;
    padding-bottom:8px;
    background:#23408e;
    color:#fff;
    font-weight:bold;
}
.hoeve-nieuws .hnieuws-head .hnieuws-title,
.hoeve-nieuws .hnieuws-head .hnieuws-date{
    color:#fff;
}
.hoeve-nieuws .hnieuws-row:not(.hnieuws-head):hover{
    background:#f7f8fb;
}
.hoeve-nieuws .hnieuws-title a,
.hoeve-nieuws .hnieuws-title a:link,
.hoeve-nieuws .hnieuws-title a:visited{
    color:#23408e!important;
    font-weight:bold!important;
    text-decoration:none!important;
}
.hoeve-nieuws .hnieuws-title a:hover{
    text-decoration:underline!important;
}
.hoeve-nieuws .hnieuws-date{
    color:#666;
    white-space:nowrap;
}

/* Pagination */
.hoeve-nieuws .hnieuws-pagination{
    padding:14px;
    border-top:1px solid #ececec;
    background:#fafafa;
}
.hoeve-nieuws .hnieuws-pagination ul{
    margin:0!important;
}

/* Responsive */
@media(max-width:650px){
    .hoeve-nieuws .hnieuws-row{
        grid-template-columns:1fr;
        gap:1px;
        align-items:start;
    }
    .hoeve-nieuws .hnieuws-head .hnieuws-date{
        display:none;
    }
    .hoeve-nieuws .hnieuws-date{
        font-size:11px;
        color:#777;
    }
}


/* =========================================================
   v5.0 - Hoofdmenu altijd zichtbaar op desktop
   Gebruik position:fixed i.p.v. sticky zodat oude Artisteer
   overflow/layout-regels geen invloed meer hebben.
   ========================================================= */

@media (min-width: 769px) {
    .dd-nav {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        margin: 0 !important;
        z-index: 2147482000 !important;
        box-shadow: 0 2px 7px rgba(0,0,0,.22);
    }

    /* De nav is ongeveer 30px hoog (28px links + padding).
       Geef de header ruimte zodat hij niet onder het vaste menu schuift. */
    .dd-header {
        margin-top: 32px !important;
    }
}

/* Responsive/mobile blijft zoals eerder en gebruikt geen vast hoofdmenu. */
@media (max-width: 768px) {
    .dd-nav {
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: auto !important;
        box-shadow: none !important;
    }

    .dd-header {
        margin-top: 0 !important;
    }
}
