/* Palette and typography from Kiropraktikken Holte's design manual. */
:root{--kh-blue:#3f5c83;--kh-slate:#7f8ba5;--kh-mist:#d2d8e8;--kh-teal:#455a5d;--kh-sea:#6d8e9a;--kh-grey:#595e66;--kh-stone:#716661;--kh-sand:#b2a794}
body{font-family:"Times New Roman",Times,serif}
#page h1,#page h2,#page h3{font-family:"Times New Roman",Times,serif;font-weight:700}
#header .header-nav{font-family:Helvetica,Arial,sans-serif;font-weight:400}
#header .header-nav-item--folder{position:relative}
#header .header-nav-folder-title{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;transition:color .18s ease}
#header .header-nav-folder-title:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
#header .header-nav-folder-title[aria-expanded="true"]:after{transform:rotate(225deg) translate(-2px,-1px)}
#header .header-nav-folder-content{box-sizing:border-box!important;position:absolute!important;top:100%!important;left:0!important;right:auto!important;width:max-content!important;min-width:245px!important;max-width:min(620px,85vw)!important;padding:14px!important;margin:0!important;background:#fff!important;color:var(--kh-teal)!important;border:1px solid #e2e7e7!important;border-top:3px solid var(--kh-sea)!important;border-radius:0 0 16px 16px!important;box-shadow:0 16px 36px rgba(69,90,93,.14)!important;text-align:left!important;z-index:1000!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(7px)!important;transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important}
#header .header-nav-item--folder.is-open>.header-nav-folder-content{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important}
#header .header-nav-folder-item{margin:0!important;padding:0!important}
#header .header-nav-folder-item a{display:block!important;padding:11px 14px!important;min-height:44px;box-sizing:border-box;color:var(--kh-teal)!important;font-family:Helvetica,Arial,sans-serif;font-size:15px!important;line-height:1.45!important;text-decoration:none!important;border-radius:9px!important;white-space:normal!important;transition:background .18s ease,color .18s ease}
#header .header-nav-folder-item a:hover,#header .header-nav-folder-item a:focus-visible{background:#edf2f3!important;color:var(--kh-blue)!important}
#header .header-nav-folder-item a[aria-current="page"]{background:#f2efeb!important;color:var(--kh-stone)!important}
#header .header-nav-item:last-child .header-nav-folder-content{left:auto!important;right:0!important}
@media(min-width:1000px){#header .header-nav-folder-title[aria-controls^="behandlinger-"]+.header-nav-folder-content{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:580px!important}}
#header a:focus-visible,#header button:focus-visible{outline:2px solid var(--kh-sea);outline-offset:4px}
#header .header-actions-action--cta .sqs-button-element--primary{background:var(--kh-blue)!important;color:white!important;border-radius:10px!important;transition:background .18s ease,box-shadow .18s ease}
#header .header-actions-action--cta .sqs-button-element--primary:hover{background:var(--kh-teal)!important;box-shadow:0 5px 15px rgba(69,90,93,.18)}
#page .sqs-block-button-element{border-radius:10px!important;transition:background .18s ease,box-shadow .18s ease}
#page .accordion-item{border-color:#dce3e5!important}
#page .accordion-item__click-target{padding-top:22px!important;padding-bottom:22px!important}
#page .accordion-item.is-open{background:#f4f7f7}
.kh-exercises{background:#f3f6f6;color:var(--kh-grey)}
.kh-exercises h1,.kh-exercise-card h2{color:var(--kh-teal)}
.kh-exercises-eyebrow{color:var(--kh-teal);font-family:Helvetica,Arial,sans-serif}
.kh-exercises-note{border-left-color:var(--kh-sand);color:var(--kh-grey)}
.kh-exercise-grid>.kh-exercise-card{border-color:#dde5e6;border-radius:20px;box-shadow:0 6px 24px rgba(69,90,93,.05)}
.kh-video-start span:first-child{background:var(--kh-teal)}
.header-menu{background:#f3f6f6!important;color:var(--kh-teal)!important}
.header-menu a,.header-menu .header-menu-nav-item-content{color:var(--kh-teal)!important;font-family:Helvetica,Arial,sans-serif}
.header-menu-nav-item a{border-radius:12px;transition:background .18s ease}
.header-menu-nav-item a:hover,.header-menu-nav-item a:focus-visible{background:#e5edef}
@media(prefers-reduced-motion:reduce){#header *,#page .sqs-block-button-element,.header-menu *{transition:none!important}}

#footer-sections{border-top:3px solid var(--kh-sand)}

.kh-menu-column{min-width:0}
#header .kh-menu-heading{font-family:Helvetica,Arial,sans-serif;font-size:12px!important;font-weight:700;letter-spacing:.04em;color:var(--kh-grey);margin:6px 14px 10px!important;line-height:1.5}
#header .header-nav-list{align-items:center;gap:clamp(10px,1.5vw,24px)}
#header .header-nav-item{margin-left:0!important;margin-right:0!important}
@media(max-width:999px){#header .header-nav-folder-title[aria-controls^="behandlinger-"]+.header-nav-folder-content{max-height:65vh;overflow:auto}}

/* Display the entire approved portrait panel, without a second site crop. */
/* Reviewed portraits: baked crop, equal proportions, breathing room. */
#page img[src*="/portraits/"]{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:top center!important;transform:none!important}
#page .list-item-media:has(img[src*="/portraits/"]){width:88%!important;max-width:none!important;margin:0 auto 28px!important}
#page .list-item-media-inner:has(img[src*="/portraits/"]),
#page .sqs-image-shape-container-element:has(img[src*="/portraits/"]){position:relative!important;width:100%!important;aspect-ratio:444/500!important;height:auto!important;padding:0!important;overflow:hidden!important}
#page .sqs-image-shape-container-element:has(img[src*="/portraits/"]){width:88%!important;margin:0 auto 28px!important}
#page .list-item:has(img[src*="/portraits/"]){padding-bottom:20px!important}
@media(max-width:767px){#page .list-item-media:has(img[src*="/portraits/"]),#page .sqs-image-shape-container-element:has(img[src*="/portraits/"]){margin-bottom:22px!important}}

/* Accessible accordion panels override the legacy imported display:none. */
#page .accordion-items-container{list-style:none!important;padding-left:0!important}
#page .accordion-item{list-style:none!important;border-radius:12px}
#page .accordion-item__title-wrapper{margin:0!important}
#page .accordion-item__click-target{width:100%;text-align:left;color:var(--kh-teal);font-family:Helvetica,Arial,sans-serif;cursor:pointer}
#page .accordion-item__click-target:focus-visible{outline:2px solid var(--kh-sea);outline-offset:3px}
#page .accordion-item__dropdown{display:none!important}
#page .accordion-item.is-open>.accordion-item__dropdown:not([hidden]){display:block!important;height:auto!important;max-height:none!important;opacity:1!important;visibility:visible!important;overflow:visible!important;padding:0 22px 24px!important}
#page .accordion-item__dropdown[hidden]{display:none!important}
#page .accordion-item__description{max-width:68ch;font-size:17px!important;line-height:1.7!important}
#page .accordion-item__description p{margin:0 0 16px!important}
/* Continuous reading with the exercise page's calm spacing and palette. */
#page .sqs-html-content,#page .sqs-block-html .sqs-block-content,#page .image-card-wrapper{color:var(--kh-grey)}
#page .sqs-html-content p,#page .sqs-block-html .sqs-block-content>p,#page .image-card-wrapper p{font-family:"Times New Roman",Times,serif;font-size:clamp(17px,1.2vw,19px)!important;line-height:1.75!important;margin-top:0!important;margin-bottom:1.25em!important}
#page .sqs-html-content{max-width:72ch;margin-left:auto;margin-right:auto;overflow-wrap:break-word}
#page .sqs-html-content h1,#page .sqs-html-content h2,#page .sqs-html-content h3,#page .sqs-html-content h4{color:var(--kh-teal);line-height:1.22!important;margin-top:1.4em!important;margin-bottom:.65em!important}
#page .sqs-html-content h1{font-size:clamp(34px,4vw,56px)!important}
#page .sqs-html-content h2{font-size:clamp(28px,3vw,38px)!important}
#page .sqs-html-content h3{font-size:clamp(24px,2.4vw,30px)!important}
#page .sqs-html-content h4{font-size:clamp(21px,2vw,25px)!important}
#page .sqs-html-content>:first-child{margin-top:0!important}
#page .sqs-html-content ul,#page .sqs-html-content ol{line-height:1.7!important;padding-left:1.4em!important;margin-bottom:1.5em!important}
#page .sqs-html-content li{margin-bottom:.55em!important}
#page .sqs-html-content a{color:var(--kh-blue);text-underline-offset:3px}
#page .sqs-html-content blockquote{border-left:3px solid var(--kh-sand);padding:12px 22px;margin:24px 0;background:#f3f6f6;border-radius:0 12px 12px 0}
#page .sqs-block-html{padding-top:22px!important;padding-bottom:22px!important}
#page .sqs-layout .row:has(.sqs-block-html){margin-bottom:24px}
#page .sqs-layout .image-block{padding-top:22px!important;padding-bottom:28px!important}
/* Let fluid-grid tracks grow with text instead of clipping expanded paragraphs. */
#page .fluid-engine:has(.sqs-block-html){grid-template-rows:none!important;grid-auto-rows:minmax(24px,auto)!important}
@media(max-width:767px){
 #page .sqs-html-content{max-width:100%}
 #page .sqs-block-html{padding-top:16px!important;padding-bottom:16px!important}
 #page .sqs-html-content p{line-height:1.65!important}
 #page .accordion-item.is-open>.accordion-item__dropdown:not([hidden]){padding:0 14px 20px!important}
 #page .sqs-layout .row:has(.sqs-block-html){margin-bottom:16px}
}

#page :is(.black,.dark,.dark-bold) :is(.sqs-html-content,.sqs-block-html .sqs-block-content,.image-card-wrapper){color:#fff!important}
#page :is(.black,.dark,.dark-bold) .sqs-html-content :is(h1,h2,h3,h4,a){color:#fff!important}

/* Exercise cards: two desktop columns, also with older WordPress group wrappers. */
body.kh-exercises-page #page .kh-exercise-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px!important;align-items:start}
body.kh-exercises-page #page .kh-exercise-grid>.wp-block-group__inner-container{display:contents!important}
body.kh-exercises-page #page .kh-exercise-grid .kh-exercise-card{width:auto!important;min-width:0!important;max-width:100%!important;margin:0!important;box-sizing:border-box}
body.kh-exercises-page #page .kh-exercise-card video{max-width:100%!important}
@media(max-width:767px){body.kh-exercises-page #page .kh-exercise-grid{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}}

/* Keep the complete video frame and poster visible in both columns. */
body.kh-exercises-page #page .wp-block-video,
body.kh-exercises-page #page .kh-video-player{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;overflow:visible!important}
body.kh-exercises-page #page video{display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;max-width:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important;clip-path:none!important}

/* Smaller staff portraits, preserving the approved crop and proportions. */
#page .list-item-media:has(img[src*="/portraits/"]),
#page .sqs-image-shape-container-element:has(img[src*="/portraits/"]) {
 width:76%!important; max-width:300px!important; margin:0 auto 28px!important;
}
#page .list-item-media .sqs-image-shape-container-element:has(img[src*="/portraits/"]) {
 width:100%!important; max-width:none!important; margin:0!important;
}
#page img[src*="/portraits/"] {
 max-width:300px!important; height:auto!important; margin-left:auto!important; margin-right:auto!important;
}
@media(max-width:767px) {
 #page .list-item-media:has(img[src*="/portraits/"]),
 #page .sqs-image-shape-container-element:has(img[src*="/portraits/"]),
 #page img[src*="/portraits/"] { max-width:260px!important; }
}
