@font-face {font-family:'Triwas Magazine Montserrat';src:url('fonts/Montserrat.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap;}
@font-face {font-family:'Triwas Magazine Montserrat';src:url('fonts/Montserrat-Italic.ttf') format('truetype');font-style:italic;font-weight:100 900;font-display:swap;}
@font-face {font-family:'Triwas Magazine Josefin';src:url('fonts/JosefinSans.ttf') format('truetype');font-style:normal;font-weight:100 700;font-display:swap;}
#top #wrap_all .tw-deal [data-tw-magazine] {
 --tw-page-background:#F0E9E1; --tw-editorial-background:#FAF7F1; --tw-text:#45463F; --tw-heading:#77695D; --tw-accent:#786655;
 --magazine-gap:10px; --magazine-horizontal-padding-desktop:clamp(24px,3vw,44px); --magazine-horizontal-padding-mobile:3px; --magazine-horizontal-padding:var(--magazine-horizontal-padding-desktop); --magazine-remaining-gap:var(--magazine-gap);
 font:400 14px/1.65 'Triwas Magazine Montserrat',Helvetica,Arial,sans-serif;color:var(--tw-text);text-align:left;letter-spacing:normal;
}
#top #wrap_all .tw-deal [data-tw-magazine] * {box-sizing:border-box;}
#top #wrap_all .tw-deal [data-tw-magazine] :is(p,ul,ol,li) {font:inherit;color:inherit;letter-spacing:normal;}
#top #wrap_all .tw-deal [data-tw-magazine] p {margin:5px 0;line-height:20px;}
#top #wrap_all .tw-deal [data-tw-magazine] :is(h2,h3,h4) {font-family:'Triwas Magazine Josefin',sans-serif;font-weight:700;text-transform:none;letter-spacing:normal;color:var(--tw-heading);padding:0;}
#top #wrap_all .tw-deal [data-tw-magazine] h2 {font-size:28px;line-height:1.25;margin:0 0 18px;}
#top #wrap_all .tw-deal [data-tw-magazine] h3 {font-size:20px;line-height:1.3;margin:16px 0 10px;}
#top #wrap_all .tw-deal [data-tw-magazine] h4 {font-size:18px;line-height:1.3;margin:14px 0 8px;}
#top #wrap_all .tw-deal [data-tw-magazine] :is(b,strong) {font-weight:700;color:#4b4b4b;}
#top #wrap_all .tw-deal [data-tw-magazine] :is(i,em) {font-style:italic;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-rich-text {overflow-wrap:anywhere;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-rich-text ul {padding:0 0 0 1.4em;margin:0 0 20px;list-style:disc outside;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-rich-text ol {padding:0 0 0 1.4em;margin:0 0 20px;list-style:decimal outside;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-rich-text li {display:list-item;margin:0 0 4px;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-rich-text a {color:var(--tw-accent);text-decoration:underline;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-rich-text blockquote {margin:16px 0;padding:0 0 0 20px;border-left:2px solid var(--tw-accent);font:inherit;}
#top #wrap_all .tw-deal [data-tw-magazine] img {max-width:100%;padding:0;border:0;border-radius:0;box-shadow:none;vertical-align:baseline;}
#top #wrap_all .tw-deal [data-tw-magazine] {
    clear: both;
    margin-top: 40px;
    padding: 0;
    background: var(--tw-page-background);
    scroll-margin-top: 110px;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-room {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--magazine-gap);
    margin: 0 0 72px;
    align-items: start;
}

/* Shared magazine surface; plans retain their own page/grid layout. */
#top #wrap_all .tw-deal [data-tw-magazine] :is(.tw-magazine-room, .tw-magazine-plans) {
    padding: clamp(28px, 4vw, 56px) var(--magazine-horizontal-padding);
    background: var(--tw-editorial-background);
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy {
    grid-column: 1 / -1;
    min-width: 0;
    width: 80%;
    max-width: none;
    padding: 0 0 12px;
    overflow-wrap: anywhere;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy h2 {
    margin: 0 0 18px;
    color: var(--tw-heading);
    font-family: 'Triwas Magazine Josefin', sans-serif;
    font-size: 28px;
    line-height: 1.25;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy p {
    margin-top: 0;
    margin-bottom: 14px;
    line-height: 1.8;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy p:last-child {
    margin-bottom: 0;
}

/* Safe single-column fallback before JS/fonts load. JS assigns ordered, balanced slots. */
#top #wrap_all .tw-deal [data-tw-magazine] :is(.tw-magazine-room,.tw-magazine-remaining) > .tw-magazine-photo {grid-column:1 / -1;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy:empty {display:none;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy {width:100%;align-self:start;}
@media only screen and (min-width:768px){
 #top #wrap_all .tw-deal [data-tw-magazine] [data-layout-active] > .tw-magazine-photo {height:100%;align-self:stretch;}
 #top #wrap_all .tw-deal [data-tw-magazine] [data-layout-active] > .tw-magazine-photo :is(a,img) {height:100%;width:100%;object-fit:contain;}
 #top #wrap_all .tw-deal [data-tw-magazine] [data-layout-active] > .tw-magazine-photo--full {height:auto;}
 #top #wrap_all .tw-deal [data-tw-magazine] [data-layout-active] > .tw-magazine-photo--full :is(a,img) {height:auto;max-height:calc(2 * var(--tw-row-height) + var(--magazine-gap));object-fit:contain;}
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-intro {
    max-width: 780px;
    margin-bottom: 32px;
}

/* Citat är ett eget block i Mspecs rumsordning, utan synlig rubrik "Citat". */
#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-quote {
    box-sizing: border-box;
    width: 80%;
    max-width: 80%;
    margin: 48px auto 72px;
    padding: 16px 0;
    border: 0;
    background: transparent;
    color: var(--tw-heading);
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 32px;
    font-style: italic;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
    overflow-wrap: anywhere;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-quote p {
    margin: 0 0 0.6em;
    font: inherit;
    color: inherit;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-quote p:last-child {
    margin-bottom: 0;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-remaining {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--magazine-remaining-gap);
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-photo {
    min-width: 0;
    margin: 0;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-photo img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-photo-link {
    display: block;
    cursor: zoom-in;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-photo-link:focus-visible {
    outline: 3px solid var(--tw-accent);
    outline-offset: 3px;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-plans {
    margin-top: 36px;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-plans h2 {
    color: var(--tw-heading);
    font-family: 'Triwas Magazine Josefin', sans-serif;
}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-plans figure {
    margin-bottom: 12px;
}


/* Magasinets mobilläge: rumsrubrik och text, därefter rummets bilder. */
@media only screen and (max-width: 767px) {
    #top #wrap_all .tw-deal [data-tw-magazine] {
        --magazine-gap:6px; --magazine-horizontal-padding:var(--magazine-horizontal-padding-mobile);
        padding: 0;
        margin-top: 28px;
    }

    #top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-room {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--magazine-gap);
        margin-bottom: 40px;
    }

    #top #wrap_all .tw-deal [data-tw-magazine] :is(.tw-magazine-room, .tw-magazine-plans) {
        /* Kompensera annonsens 85 %-container EN gång: 3 px yttre kant + 3 px inre padding. */
        width: calc(117.6470588235% - 6px);
        max-width: none;
        margin-left: calc(-8.8235294118% + 3px);
        margin-right: calc(-8.8235294118% + 3px);
        padding: 28px var(--magazine-horizontal-padding);
        margin-bottom: 40px;
    }

    #top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy {
        width: 100%;
        padding: 0 0 8px;
    }

    #top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-quote {
        margin-top: 24px;
        margin-bottom: 48px;
        font-size: 25px;
    }

    #top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy h2 {
        font-size: 25px;
    }

    #top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-remaining {
        grid-template-columns: minmax(0, 1fr);
    }

    #top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-remaining {
        width: calc(117.6470588235% - 12px);
        margin-left: calc(-8.8235294118% + 6px);
    }

}

#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy h2 {font-weight:500;text-transform:uppercase;}
@media(max-width:767px){#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy{padding:0 18px 16px;}#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-copy h2{margin-bottom:22px;}}

/* Plans are a separate section; never a room layout. One to four per page. */
#top #wrap_all .tw-deal [data-tw-magazine] .tw-magazine-plans {margin-top:40px;margin-bottom:40px;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-page {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 32px;align-items:stretch;grid-auto-rows:1fr;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-page[data-plan-count="1"] {grid-template-columns:minmax(0,1fr);}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-cell {min-width:0;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-cell figure {width:100%;max-width:none;margin:0;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-cell img {display:block;width:100%;height:clamp(240px,36vw,480px);object-fit:contain;margin:0;}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-page[data-plan-count="1"] img {height:clamp(340px,52vw,680px);}
#top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-description {margin-top:12px;overflow-wrap:anywhere;}
@media(max-width:767px){
 #top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-page {gap:12px;}
 #top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-cell img {height:240px;}
 #top #wrap_all .tw-deal [data-tw-magazine] .tw-plan-page[data-plan-count="1"] img {height:400px;}
}
