/* Static replacements for theme JavaScript. Original theme CSS is local. */
[data-markdown] > p:last-child { margin-bottom:0 }
#mobile-menu {display:none}
#mobile-menu:target {display:flex; flex-direction:column; padding:20px; gap:15px; background:white}
.whb-sticky-header {display:none!important}
.static-carousel .wd-carousel-wrap {display:flex!important;transform:none!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:0}
.static-carousel .wd-carousel-item {flex:0 0 100%;scroll-snap-align:start;opacity:1!important;visibility:visible!important}
.static-carousel {overflow:hidden}
.testimonials .wd-carousel-item {flex-basis:100%}
.testimonials .wd-carousel-wrap {align-items:flex-start}
.testimonials .wd-carousel-item:not(:first-child) {display:none}
.testimonials .static-carousel {padding-bottom:36px}
.contact-form {display:grid;gap:16px}
.contact-form label {display:grid;gap:6px}
.contact-form .honeypot {display:none}
.contact-form button {justify-self:start}
.contact-form .form-status:empty {display:none}
.wd-gallery-item a {cursor:zoom-in}
#image-viewer {border:0;padding:12px;max-width:95vw;max-height:95vh;background:#fff}
#image-viewer::backdrop {background:#000b}
#image-viewer img {max-height:85vh;max-width:90vw;object-fit:contain}
#image-viewer button {display:block;margin-left:auto}

.testimonial-controls {display:flex;justify-content:center;gap:12px;margin-top:10px}
.testimonial-controls button {font-size:12px;padding:4px 10px;min-height:32px}

/* The theme anchors the date badge to the page column, not to the thumbnail
   header it belongs to, so it covered the project title. */
.post-single-page .entry-header {position:relative}

/* Om mig: the profile card carried a 20vh band under it and loose margins
   around the Instagram link, the trust seal and the signature. */
.page-id-861 .vc_custom_1539244839854 {padding-bottom:0!important}
.page-id-861 .vc_custom_1539244194694 {margin-bottom:10px!important}
.page-id-861 .wpb_raw_code {margin-bottom:16px!important}
.page-id-861 .vc_custom_1500278885623,
.page-id-861 .wpb_single_image.vc_custom_1545056425004 {margin-bottom:0!important}

/* On a phone the three columns stack, so the column order put the 120x180
   seal between the Instagram line and the signature. Follow the link with the
   signature straight away and let the seal close the block. */
@media (max-width:1024px){
.page-id-861 .om-mig-footer {display:flex;flex-direction:column}
.page-id-861 .om-mig-signature {order:1}
.page-id-861 .om-mig-seal {order:2}
.page-id-861 .om-mig-instagram {order:0}
.page-id-861 .wpb_raw_code {margin:16px 0 0!important;text-align:center}
.page-id-861 .wpb_raw_code img {width:auto;height:72px}
.page-id-861 .vc_custom_1500278890890 {margin-bottom:0!important}
.page-id-861 .vc_custom_1500278885623 {margin-bottom:0!important}}

@media (max-width:1024px){
/* The top bar held nothing but the share icons. */
.whb-top-bar {display:none}
/* Keep the logo, menu button and portrait on screen while scrolling. */
.whb-header {position:sticky;top:0;z-index:390;background:var(--bgcolor-white,#fff);box-shadow:0 1px 8px rgba(0,0,0,.08)}
/* A larger portrait, with header height to match: 50px -> 85px. */
:root {--wd-header-general-sm-h:95px}
/* The menu opens by scrolling to #mobile-menu, and the sticky header would
   cover its first entries. Reserve the header's height when jumping. */
html {scroll-padding-top:96px}
.whb-mobile-center .wd-header-text img {width:85px;height:85px;max-width:none;flex:none}
/* The 25px UC seal never fit here and the room it claimed squeezed the logo
   once the portrait grew. It stays in the desktop header and at full size on
   the Om mig page. */
.whb-mobile-right {display:none}
.whb-mobile-center .site-logo {min-width:0}
.whb-mobile-center .wd-logo img {max-width:min(190px,calc(100vw - 200px))!important}}
