/**
 * ==================================================
 * CUSTOM CSS
 * ==================================================
 * Author: endit ab
 * Version: 1.0
 *
 * KumlaGK Colors
 * #004990  logo-blue
 * #B3CC94  logo-green
 * #A5B1D4  logo-lightblue
 * #008000  darkgreen
 *
 * Site Colors
 * #111111  primary
 * #54595F  secondary
 * #2d2d2d  text
 * #5D9926  accent
 */


/**
 * ==================================================
 * GLOBAL FIXES
 * ==================================================
 */

#golf-weather abbr[title]{
    text-decoration:none;
}

/* Hide header until ready */
.custom-site-header {
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity .2s ease, transform .2s ease;
}

/* Show when ready */
body.header-ready .custom-site-header {
    opacity: 1;
    transform: translateY(0);
}

/**
 * ==================================================
 * ELEMENTOR OVERRIDES
 * ==================================================
 */

.elementor-widget-text-editor a{
    color:#008000;
}

.elementor-widget-text-editor a:hover{
    color:#5D9926;
}

/**
 * ==================================================
 * MOBILE NAVIGATION
 * ==================================================
 */

/* -----------------------------------------------
   Admin bar offset
----------------------------------------------- */

@media (max-width:782px){

body.admin-bar .kumlagk-menu-toggle{
    top:calc(15px + 46px);
}

}


/* -----------------------------------------------
   Menu Toggle Button
----------------------------------------------- */

.kumlagk-menu-toggle{
    position:absolute;
    top:15px;
    right:15px;

    width:48px;
    height:48px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:transparent !important;
    border:2px solid #111;
    padding:8px;

    cursor:pointer;
    z-index:10001;

    transition:border-color .3s ease;
}

.kumlagk-menu-toggle svg{
    width:30px;
    height:30px;
    fill:#111;
    transition:fill .3s ease;
}

.kumlagk-menu-toggle.is-transparent{
    border-color:#fff;
}

.kumlagk-menu-toggle.is-transparent svg{
    fill:#fff;
}

body.menu-open .kumlagk-menu-toggle{
    border-color:#111 !important;
}

body.menu-open .kumlagk-menu-toggle svg{
    fill:#111 !important;
}

.kumlagk-menu-toggle:focus,
.kumlagk-menu-toggle:active{
    outline:none;
    box-shadow:none;
}


/* -----------------------------------------------
   Mobile Menu Panel
----------------------------------------------- */

.kumlagk-mobile-menu{
    position:fixed;
    inset:0;

    background:#fff;
    z-index:10000;

    transform:translateX(100%);
    transition:transform .35s ease;

    padding:100px 30px 40px;
    overflow-y:auto;
}

.kumlagk-mobile-menu.is-open{
    transform:translateX(0);
}


/* -----------------------------------------------
   Mobile Logo
----------------------------------------------- */

.kumlagk-mobile-logo{
    text-align:center;
    margin-bottom:40px;
}

.kumlagk-mobile-logo img{
    width:150px;
    height:auto;
}


/* -----------------------------------------------
   Mobile Menu List
----------------------------------------------- */

.kumlagk-mobile-menu .kumlagk-menu{
    list-style:none;
    margin:0;
    padding:0;
}

.kumlagk-mobile-menu .kumlagk-menu li{
    list-style:none;
}

.kumlagk-mobile-menu .kumlagk-menu > li{
    text-align:left;
}

.kumlagk-mobile-menu .kumlagk-menu li ul{
    padding-left:20px;
}


/* -----------------------------------------------
   Hide mobile nav on desktop
----------------------------------------------- */

@media (min-width:1025px){

.kumlagk-menu-toggle,
.kumlagk-mobile-menu{
    display:none !important;
}

}


/**
 * ==================================================
 * SITE LOGO
 * ==================================================
 */

.kumlagk-site-logo{
    width:150px;
    height:auto;
    display:block;
}

.kumlagk-logo-link{
    display:inline-block;
}

.site-logo-img {
    width:117px;
    height:117px;
    object-fit:contain;
}


/**
 * ==================================================
 * DESKTOP NAVIGATION
 * ==================================================
 */

.kumlagk-header--transparent{
    transition:all .4s ease-in-out, top 0s;
    width:100%;
    background-color:rgba(0,0,0,0) !important;
    position:absolute !important;
    z-index:99;
}


/* -----------------------------------------------
   Navigation container
----------------------------------------------- */

.kumlagk-nav-menu{
    display:flex;
    align-items:center;
    width:100%;
}


/* -----------------------------------------------
   Menu layout
----------------------------------------------- */

.kumlagk-nav-menu .kumlagk-menu{
    list-style:none;
    margin:0;
    padding:0;

    display:flex;
    width:100%;
    justify-content:space-between;
}


/* -----------------------------------------------
   Top level items
----------------------------------------------- */

.kumlagk-menu > li{
    position:relative;
    flex:1 1 0;
    text-align:center;
}

.kumlagk-menu > li > a{
    display:block;
    padding:10px 12px;

    text-decoration:none;
    font-weight:500;

    color:#111;
    transition:color .2s ease;

    white-space:nowrap;
}

.kumlagk-menu > li > a:hover{
    color:#5d9926;
}

.kumlagk-menu > li.current-menu-item > a,
.kumlagk-menu > li.current-menu-ancestor > a{
    color:#5d9926;
    font-weight:600;
}


/* -----------------------------------------------
   Dropdown
----------------------------------------------- */

.kumlagk-menu li ul{
    position:absolute;
    top:100%;
    left:50%;

    transform:translateX(-50%) translateY(10px);

    min-width:200px;

    background:#fff;
    padding:8px 0;

    margin:0;
    list-style:none;

    box-shadow:0 10px 30px rgba(0,0,0,.1);

    opacity:0;
    visibility:hidden;

    transition:all .2s ease;

    z-index:999;
}

.kumlagk-menu li:hover > ul{
    opacity:1;
    visibility:visible;
    transform:translateX(-50%) translateY(0);
}

.kumlagk-menu li ul li{
    flex:none;
    text-align:left;
}

.kumlagk-menu li ul li a{
    display:block;
    padding:8px 16px;
    text-decoration:none;
    color:#111;
}

.kumlagk-menu li ul li a:hover{
    background:#f5f5f5;
    color:#0073aa;
}


/* -----------------------------------------------
   Right aligned menu
----------------------------------------------- */

.kumlagk-nav-menu.right-menu{
    justify-content:flex-end;
}


/* -----------------------------------------------
   Transparent header variant
----------------------------------------------- */

.kumlagk-header--transparent .kumlagk-menu > li > a{
    color:#fff;
}

.kumlagk-header--transparent .kumlagk-menu > li > a:hover{
    color:#5d9926;
}


/**
 * ==================================================
 * STATUS BLOCKS
 * ==================================================
 */

.kumlagk-status-block{
    display:flex;
    align-items:flex-start;
    gap:12px;

    padding:14px 16px;

    border-radius:10px;
    margin-bottom:12px;
}


/* -----------------------------------------------
   Status variants
----------------------------------------------- */

.kumlagk-status-block.status-open{
    background:#eaf8f0;
}

.kumlagk-status-block.status-closed{
    background:#fdecea;
}

.kumlagk-status-block.status-limited,
.kumlagk-status-block.status-winter{
    background:#fff8e1;
}


/* -----------------------------------------------
   Status indicator
----------------------------------------------- */

.kumlagk-status-indicator{
    width:12px;
    height:12px;

    border-radius:50%;
    margin-top:6px;

    flex-shrink:0;
}

.status-open .kumlagk-status-indicator{ background:#2ecc71; }
.status-closed .kumlagk-status-indicator{ background:#e74c3c; }
.status-limited .kumlagk-status-indicator,
.status-winter .kumlagk-status-indicator{ background:#f1c40f; }


/* -----------------------------------------------
   Status content
----------------------------------------------- */

.kumlagk-status-content p{
    margin:4px 0 0;
    font-size:14px;
    opacity:.85;
}


/**
 * ==================================================
 * WEATHER STATUS
 * ==================================================
 */

.kumlagk-status-weather{
    margin-top:10px;
    padding:14px 16px;

    border-radius:12px;
    background:rgba(255,255,255,.85);

    display:flex;
    align-items:center;
    gap:10px;

    font-size:.95rem;
    line-height:1.4;

    border-top:1px solid rgba(0,0,0,.05);
}

.kumlagk-status-weather #golf-weather{
    display:flex;
    align-items:center;
    gap:10px;
}

.kumlagk-status-weather i.fas,
.kumlagk-status-weather svg{
    font-size:1.1em;
    opacity:.85;
}


/**
 * ==================================================
 * QUICK CARDS
 * ==================================================
 */

.quick-grid{
    gap:24px;
}

.quick-card{
    padding:28px 24px;
    border-radius:14px;

    text-align:center;
    cursor:pointer;

    transition:transform .2s ease;
}

.quick-card:hover{
    transform:translateY(-4px);
}

.quick-card .elementor-icon-box-icon{
    width:56px;
    height:56px;

    border-radius:50%;
    background:#1f7a3a;

    display:flex !important;
    align-items:center;
    justify-content:center;

    margin:0 auto 0px;

    line-height:1 !important;
}

.quick-card .elementor-icon-box-icon svg,
.quick-card .elementor-icon-box-icon i{
    width:28px;
    height:28px;
}


/**
 * ==================================================
 * NEWS BLOCK
 * ==================================================
 */

.kumlagk-news-block{
    padding:24px;
    color:#fff;
}

.kumlagk-news-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.kumlagk-news-item{
    display:block;
    padding:12px 14px;
    border-radius:10px;
    background:rgba(255,255,255,.08);
    text-decoration:none;
    color:#fff;
    transition:background .2s ease;
}

.kumlagk-news-item:hover{
    background:rgba(255,255,255,.15);
}

.kumlagk-news-title{
    display:block;
    margin-bottom:4px;
}

.kumlagk-news-excerpt{
    font-size:.9em;
    opacity:.85;
}

.kumlagk-news-footer{
    margin-top:16px;
    text-align:right;
}

.kumlagk-news-footer a {
    color: #ffffff;
}


/**
 * ==================================================
 * NEWS ARCHIVE + SINGLE
 * ==================================================
 */

.kumlagk-container{
    max-width:1000px;
    margin:0 auto;
    padding:40px 20px;
}

.kumlagk-news-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.kumlagk-news-card{
    background:rgba(255,255,255,.9);

    border-radius:14px;
    overflow:hidden;

    box-shadow:0 6px 20px rgba(0,0,0,.06);

    transition:transform .2s ease, box-shadow .2s ease;
}

.kumlagk-news-card:hover{
    transform:translateY(-4px);
    box-shadow:0 12px 30px rgba(0,0,0,.1);
}

/**
 * --------------------------------------------------
 * News Card Image
-------------------------------------------------- */

.kumlagk-news-card-image {
    width:100%;
    aspect-ratio:16/10;
    overflow:hidden;
}

.kumlagk-news-card-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;

    transition:transform .4s ease;
}

.kumlagk-news-card:hover .kumlagk-news-card-image img {
    transform:scale(1.05);
}


/**
 * --------------------------------------------------
 * News Card Content
-------------------------------------------------- */

.kumlagk-news-card-content {
    padding:18px 18px 20px;
    display:flex;
    flex-direction:column;
    gap:10px;
}


/**
 * --------------------------------------------------
 * Title
-------------------------------------------------- */

.kumlagk-news-card-title {
    font-size:1.1rem;
    font-weight:600;
    line-height:1.3;
    margin:0;
    color: #111;
}

.kumlagk-news-card-title a {
    text-decoration:none;
    color:#111;
    transition:color .2s ease;
}

.kumlagk-news-card-title a:hover {
    color:#5D9926;
}


/**
 * --------------------------------------------------
 * Meta (date / category)
-------------------------------------------------- */

.kumlagk-news-card-meta {
    font-size:.8rem;
    color:#777;
    display:flex;
    gap:8px;
    align-items:center;
}


/**
 * --------------------------------------------------
 * Excerpt
-------------------------------------------------- */

.kumlagk-news-card-excerpt {
    font-size:.9rem;
    line-height:1.5;
    color:#444;

    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

/**
 * ==================================================
 * SINGLE NEWS
 * ==================================================
 */

.kumlagk-single {
    max-width:800px;
    margin:0 auto;
    padding:40px 20px;
}

.kumlagk-single-title {
    font-size:2rem;
    margin-bottom:10px;
}

.kumlagk-single-meta {
    font-size:.9rem;
    color:#777;
    margin-bottom:20px;
}

.kumlagk-single-image {
    margin-bottom:20px;
}

.kumlagk-single-image img {
    width:100%;
    height:auto;
    border-radius:12px;
}

.kumlagk-single-content {
    line-height:1.7;
}

.kumlagk-single-content p {
    margin-bottom:16px;
}

/**
 * ==================================================
 * NEWS RESPONSIVE
 * ==================================================
 */

@media (hover:none){

    .kumlagk-news-card:hover{
        transform:none;
        box-shadow:0 6px 20px rgba(0,0,0,.06);
    }

} 

/* Tablet */
@media (max-width:1024px){

    .kumlagk-news-grid{
        grid-template-columns:repeat(2,1fr);
        gap:20px;
    }
    
    .kumlagk-single{
        padding:30px 20px;
    }

    .kumlagk-single-title{
        font-size:1.7rem;
    }

}

/* Mobile */
@media (max-width:640px){

    .kumlagk-news-grid{
        grid-template-columns:1fr;
        gap:16px;
    }
    .kumlagk-news-card-content{
        padding:16px;
        gap:8px;
    }

    .kumlagk-news-card-title{
        font-size:1rem;
    }

    .kumlagk-news-card-excerpt{
        font-size:.85rem;
        -webkit-line-clamp:2; /* shorter on mobile */
    }

    .kumlagk-single{
        padding:24px 16px;
    }

    .kumlagk-single-title{
        font-size:1.4rem;
        line-height:1.3;
    }

    .kumlagk-single-meta{
        font-size:.8rem;
    }

    .kumlagk-single-content{
        font-size:.95rem;
    }

    h1.wp-block-heading{
        font-size:1.6rem !important;
    }

    h2.wp-block-heading{
        font-size:1.4rem !important;
    }

    h3.wp-block-heading{
        font-size:1.2rem !important;
    }     
}



/**
 * ==================================================
 * PRICES & TABLES
 * ==================================================
 */

.kumlagk-price-table{
    width:100%;
    border-collapse:collapse;
}

.kumlagk-price{
    display:flex;
    justify-content:space-between;

    padding:12px 0;

    border-bottom:1px solid rgba(0,0,0,.1);
}

.kumlagk-price-info{
    position:relative;
    display:inline-flex;
    align-items:center;
    margin-left:8px;
}

.kumlagk-price-info-icon{
    width:18px;
    height:18px;
    border-radius:50%;
    background:#2563eb;
    color:#fff;
    font-size:12px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    line-height:1;
}

.kumlagk-price-tooltip{
    position:absolute;
    left:50%;
    bottom:130%;
    transform:translateX(-50%);
    width:240px;
    background:#111;
    color:#fff;
    padding:10px 12px;
    border-radius:8px;
    font-size:13px;
    line-height:1.5;
    opacity:0;
    visibility:hidden;
    transition:all .2s ease;
    z-index:999;
    pointer-events:none;
}

.kumlagk-price-info:hover .kumlagk-price-tooltip{
    opacity:1;
    visibility:visible;
}


/**
 * ==================================================
 * MEETINGS
 * ==================================================
 */

.kumlagk-meetings{
    display:flex;
    flex-direction:column;
}

.kumlagk-meeting{
    display:grid;
    grid-template-columns:140px minmax(0,1fr);

    gap:16px;
    padding:16px 0;

    border-bottom:1px solid rgba(0,0,0,.08);
}

.kumlagk-meeting-title {
    font-size: 1.25rem;
    line-height: 1.3;
}

.kumlagk-meetings > .kumlagk-meeting:last-of-type{
    border-bottom:none;
}

.kumlagk-meeting-date{
    display:flex;
    flex-direction:column;
    gap:2px;
    line-height:1.2;
}

.kumlagk-meeting-date p {
    margin:0;
}

/**
 * ==================================================
 * MEETINGS RESPONSIVE
 * ==================================================
 */

 @media (max-width:1024px){

    .kumlagk-meeting{
        grid-template-columns:120px minmax(0,1fr);
        gap:2px;
    }

    .kumlagk-meeting-title{
        font-size:1.15rem;
        margin-top: 2px;
    }

}

@media (max-width:640px){

    .kumlagk-meeting{
        grid-template-columns:1fr;
        gap:4px;
        padding:12px 0;
    }

    .kumlagk-meeting-title{
        font-size:1.05rem;
        line-height:1.3;
    }

    .kumlagk-meeting-date{
        font-size:.85rem;
    }    

}

/**
 * ==================================================
 * GENERIC CONTENT
 * ==================================================
 */

.kumlagk-feature-list{
    margin:20px 0;
    padding-left:22px;
}

.kumlagk-feature-list li{
    margin-bottom:8px;
    line-height:1.55;
}

.kumlagk-feature-list li:last-child{
    margin-bottom:0;
}

/**
 * ==================================================
 * INSTAGRAM GRID
 * ==================================================
 */


/* --------------------------------------------------
   Grid container
-------------------------------------------------- */

.kumlagk-instagram-feed{

    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:18px;

}


/* --------------------------------------------------
   Post container
-------------------------------------------------- */

.kumlagk-instagram-post{

    position:relative;

    aspect-ratio:1/1;

    overflow:hidden;

    border-radius:20px;

    display:block;

    transform: translateZ(0);

    transition:
        transform .25s ease,
        box-shadow .25s ease;

}


/* lift effect */

.kumlagk-instagram-post:hover{

    transform:translateY(-4px);

    box-shadow:
        0 12px 24px rgba(0,0,0,0.18);

}


/* --------------------------------------------------
   Image
-------------------------------------------------- */

.kumlagk-instagram-post > img{

    width:100%;
    height:100% !important;

    object-fit:cover;

    display:block;

    backface-visibility: hidden;

    transition:
        transform .45s ease,
        filter .45s ease;

    will-change:transform,filter;

}


/* hover image effect */

.kumlagk-instagram-post:hover > img{

    transform:scale(1.06);

    filter:
        blur(2px)
        brightness(.65);

}


/* --------------------------------------------------
   Overlay
-------------------------------------------------- */

.kumlagk-instagram-overlay{

    position:absolute;

    inset:0;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    padding:24px;

    text-align:center;

    opacity:0;

    transition:
        opacity .35s ease,
        background-color .45s ease;

    color:#fff;

}


/* gradient layer */

.kumlagk-instagram-overlay::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,0.05) 0%,
            rgba(0,0,0,0.35) 55%,
            rgba(0,0,0,0.85) 100%
        );

    mix-blend-mode:multiply;

    z-index:0;

}


/* content above gradient */

.kumlagk-instagram-overlay > *{

    position:relative;

    z-index:1;

}


/* show overlay */

.kumlagk-instagram-post:hover .kumlagk-instagram-overlay{

    opacity:1;

}


/* --------------------------------------------------
   Icon
-------------------------------------------------- */

.kumlagk-instagram-icon{

    width:34px;

    height:34px;

    margin-bottom:12px;

    transform:translateY(8px);

    opacity:0;

    transition:
        transform .35s ease,
        opacity .35s ease;

    transition-delay:.05s;

}

.kumlagk-instagram-post:hover .kumlagk-instagram-icon{

    transform:translateY(0);

    opacity:1;

}


/* --------------------------------------------------
   Caption
-------------------------------------------------- */

.kumlagk-instagram-caption{

    font-size: 1rem;

    line-height:1.4;

    max-width:90%;

    word-break:break-word;

    display:-webkit-box;

    -webkit-line-clamp:3;

    -webkit-box-orient:vertical;

    overflow:hidden;

    transform:translateY(8px);

    opacity:0;

    text-shadow: 0 2px 8px rgba(0,0,0,0.6);

    transition:
        transform .35s ease,
        opacity .35s ease;

    transition-delay:.05s;

}

.kumlagk-instagram-post:hover .kumlagk-instagram-caption{

    transform:translateY(0);

    opacity:1;

}


/* --------------------------------------------------
   Mobile / Touch devices
-------------------------------------------------- */

@media (hover:none){

/* stronger gradient for mobile readability */

.kumlagk-instagram-overlay::before{

    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,0.25) 0%,
            rgba(0,0,0,0.55) 60%,
            rgba(0,0,0,0.90) 100%
        );

}
    
.kumlagk-instagram-overlay{

    opacity:.95;

}

.kumlagk-instagram-icon,
.kumlagk-instagram-caption{

    transform:none;

    opacity:1;

}

}


/* --------------------------------------------------
   Responsive
-------------------------------------------------- */

@media (max-width:1024px){

.kumlagk-instagram-feed{

grid-template-columns:repeat(2,minmax(0,1fr));

}

}

@media (max-width:640px){

.kumlagk-instagram-feed{

grid-template-columns:1fr;

}

}

/**
 * ==================================================
 * Kommitté
 * ==================================================
 */

 .kumlagk-kommitte a {
    color: #008000;
 }

 .kumlagk-kommitte h2 {
    font-family: var(--e-global-typography-primary-font-family);
    font-weight: var(--e-global-typography-primary-font-weight);
    line-height: var(--e-global-typography-primary-line-height);
}

.kumlagk-kommitte h3 {
    font-family: var(--e-global-typography-secondary-font-family);
    font-weight: var(--e-global-typography-secondary-font-weight);
    line-height: var(--e-global-typography-secondary-line-height);
}

.kumlagk-person-name, .kumlagk-person-phone, .kumlagk-person-email {
    margin: 0px;
    padding: 0px;
}

.kumlagk-kommitte ul {
    margin: 20px 0;
    padding-left: 22px;
}

.kumlagk-kommitte li {
    margin-bottom: 8px;
    line-height: 1.55;
}
/**
 * ==================================================
 * Regler
 * ==================================================
 */

 .kumlagk-regel{
    margin-bottom:40px;
}

/**
 * ==================================================
 * Golfamore
 * ==================================================
 */

#golfamore-modal{
    position:fixed;
    inset:0;
    z-index:99999;
    display:none;
}

#golfamore-modal.active{
    display:block;
}

.golfamore-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.75);
    backdrop-filter:blur(4px);
}

.golfamore-modal-content{
    position:relative;
    width:min(680px, 95vw);
    height:90vh;
    margin:5vh auto;
    background:#fff;
    border-radius:16px;
    overflow:auto;
    z-index:2;
    padding:32px;
    box-shadow:0 25px 60px rgba(0,0,0,.3);
}

#close-golfamore{
    position:absolute;
    top:16px;
    right:16px;
    width:40px;
    height:40px;
    border:none;
    border-radius:50%;
    background:#f3f4f6;
    color:#111;
    font-size:28px;
    line-height:1;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
}

#close-golfamore:hover{
    background:#e5e7eb;
}

#golfhaftet{
    width:100%;
}

#golfhaftet iframe{
    width:100% !important;
    min-height:1000px;
    border:none !important;
}

body.golfamore-open{
    overflow:hidden;
}

.kumlagk-button{
    background:#0f172a;
    border:none;
    color:#fff;
    padding:14px 22px;
    border-radius:8px;
    cursor:pointer;
    transition:all .2s ease;
    margin-bottom: 10px;
}

.kumlagk-button:hover{
    opacity:.9;
}

.kumlagk-button:focus{
    outline:none;
    box-shadow:none;
}

/**
 * ==================================================
 * Sponsorer
 * ==================================================
 */

.kumlagk-sponsors{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
    gap:20px;
    align-items:center;
}

.kumlagk-sponsor-logo img{
    width:100%;
    height:auto;
    object-fit:contain;
}

/**
 * ==========================================
 * Resor
 * ==========================================
 */

.kumlagk-resor{
    display:flex;
    flex-direction:column;
    gap:24px;
}


/* --------------------------------------------------
   Card
-------------------------------------------------- */

.kumlagk-resa-card{
    display:grid;
    grid-template-columns:66% 34%;

    background:#fff;

    border-radius:18px;
    overflow:hidden;

    box-shadow:
        0 6px 22px rgba(0,0,0,.05);

    min-height:280px;
}


/* --------------------------------------------------
   Image
-------------------------------------------------- */

.kumlagk-resa-image{
    position:relative;
    height:100%;
}

.kumlagk-resa-image img{
    width:100%;
    height:100%;

    display:block;
    object-fit:cover;
}


/* --------------------------------------------------
   Content
-------------------------------------------------- */

.kumlagk-resa-content{
    padding:28px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;
}


/* --------------------------------------------------
   Title
-------------------------------------------------- */

.kumlagk-resa-content h2{
    margin:0 0 12px;

    font-size:28px;
    line-height:1.2;
    font-weight:700;
}

.kumlagk-resa-content h2 a{
    color:#1f1f1f;
    text-decoration:none;
}


/* --------------------------------------------------
   Dates
-------------------------------------------------- */

.kumlagk-resa-dates{
    font-size:14px;
    font-weight:600;

    color:#777;

    margin-bottom:18px;
}


/* --------------------------------------------------
   Excerpt
-------------------------------------------------- */

.kumlagk-resa-excerpt{
    font-size:15px;
    line-height:1.6;

    color:#4f4f4f;

    margin-bottom:22px;
}

.kumlagk-resa-excerpt p:last-child{
    margin-bottom:0;
}


/* --------------------------------------------------
   Bottom
-------------------------------------------------- */

.kumlagk-resa-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}


/* --------------------------------------------------
   Price
-------------------------------------------------- */

.kumlagk-resa-price{
    font-size:22px;
    font-weight:700;

    color:#5f9f1c;
}


/* --------------------------------------------------
   Button
-------------------------------------------------- */

.kumlagk-resa-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:12px 22px;

    border-radius:10px;

    background:#5f9f1c;
    color:#fff !important;

    text-decoration:none;
    font-size:15px;
    font-weight:600;

    transition:background .2s ease;
}

.kumlagk-resa-button:hover{
    background:#4f8617;
}


/* --------------------------------------------------
   Mobile
-------------------------------------------------- */

@media(max-width:900px){

    .kumlagk-resa-card{
        grid-template-columns:1fr;
    }

    .kumlagk-resa-image{
        height:auto;
    }

    .kumlagk-resa-content{
        padding:24px;
    }

    .kumlagk-resa-content h2{
        font-size:24px;
    }

    .kumlagk-resa-image img{
        object-fit: fill;
    }

}

/**
 * ==========================================
 * Single Resa
 * ==========================================
 */

.kumlagk-resa-single{
    padding:80px 0;
}


/* --------------------------------------------------
   Article
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-article{
    max-width:1000px;
    margin:0 auto;
}


/* --------------------------------------------------
   Hero Image
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-hero{
    margin-bottom:40px;

    border-radius:24px;
    overflow:hidden;

    box-shadow:
        0 10px 30px rgba(0,0,0,.08);
}

.kumlagk-resa-single .kumlagk-resa-hero img{
    width:100%;
    height:420px;

    object-fit:cover;
    display:block;
}


/* --------------------------------------------------
   Header
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-header{
    margin-bottom:50px;
}

.kumlagk-resa-single .kumlagk-resa-title{
    margin:0 0 14px;

    font-size:34px;
    line-height:1.1;

    color:#1f1f1f;
}

.kumlagk-resa-single .kumlagk-resa-destination{
    font-size:20px;
    font-weight:600;

    color:#5f9f1c;

    margin-bottom:12px;
}

.kumlagk-resa-single .kumlagk-resa-dates{
    font-size:16px;
    font-weight:600;

    color:#777;
}


/* --------------------------------------------------
   Layout
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    gap:50px;

    align-items:start;
}


/* --------------------------------------------------
   Sidebar
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-sidebar{
    position:sticky;
    top:120px;

    display:flex;
    flex-direction:column;
    gap:24px;
}


/* --------------------------------------------------
   Sidebar Box
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-box{
    background:#fff;

    border-radius:18px;

    padding:28px;

    box-shadow:
        0 6px 24px rgba(0,0,0,.06);
}

.kumlagk-resa-single .kumlagk-resa-box h3{
    margin:0 0 18px;

    font-size:24px;
    color:#1f1f1f;
}


/* --------------------------------------------------
   Price
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-price{
    font-size:38px;
    font-weight:700;

    color:#5f9f1c;

    margin-bottom:10px;
}

.kumlagk-resa-single .kumlagk-resa-single-room{
    font-size:15px;
    color:#666;
}


/* --------------------------------------------------
   Included List
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-included{
    margin:0;
    padding-left:18px;
}

.kumlagk-resa-single .kumlagk-resa-included li{
    margin-bottom:10px;
    line-height:1.5;
}


/* --------------------------------------------------
   Contact
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-contact-name{
    font-weight:600;
    margin-bottom:8px;
}

.kumlagk-resa-single .kumlagk-resa-contact-email a{
    color:#5f9f1c;
    text-decoration:none;
}


/* --------------------------------------------------
   Booking Button
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-book-button{
    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    min-height:58px;

    background:#5f9f1c;
    color:#fff !important;

    border-radius:14px;

    text-decoration:none;
    font-size:17px;
    font-weight:600;

    transition:
        background .2s ease,
        transform .2s ease;
}

.kumlagk-resa-single .kumlagk-resa-book-button:hover{
    background:#4d8517;
    transform:translateY(-1px);
}


/* --------------------------------------------------
   PDF Button
-------------------------------------------------- */

.kumlagk-resa-single .kumlagk-resa-pdf{
    margin-top:14px;
}

.kumlagk-resa-single .kumlagk-resa-pdf a{
    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    min-height:54px;

    padding:0 20px;

    border:2px solid #5f9f1c;
    border-radius:14px;

    background:#fff;

    color:#5f9f1c;
    text-decoration:none;

    font-size:15px;
    font-weight:600;

    transition:
        background .2s ease,
        color .2s ease,
        transform .2s ease;
}

.kumlagk-resa-single .kumlagk-resa-pdf a:hover{
    background:#5f9f1c;
    color:#fff !important;

    transform:translateY(-1px);
}


/* --------------------------------------------------
   Mobile
-------------------------------------------------- */

@media(max-width:1024px){

    .kumlagk-resa-single .kumlagk-resa-layout{
        grid-template-columns:1fr;
        gap:20px;
    }

    .kumlagk-resa-single .kumlagk-resa-sidebar{
        position:relative;
        top:auto;
    }

}

@media(max-width:768px){

    .kumlagk-resa-single{
        padding:50px 0;
    }

    .kumlagk-resa-single .kumlagk-resa-title{
        font-size:38px;
    }

    .kumlagk-resa-single .kumlagk-resa-header{
        margin-bottom:20px;
    }

    .kumlagk-resa-single .kumlagk-resa-hero img{
        height:300px;
    }

}

/**
 * ==================================================
 * Copyright
 * ==================================================
 */

.kumlagk-copyright{
    color:#fafafa;
    font-size:0.85rem;
    display:block; /* optional, makes layout easier */
}