/* Keep the original portfolio layout with a monochrome identity and Kolder grain. */
html{background-color:#121212;background-image:linear-gradient(#121212bf,#121212bf),url('/assets/kolder-grain.gif');background-position:0 0,0 0;background-size:auto,auto;background-repeat:repeat}body{background:transparent}.site-header .logo-image img{width:174px;height:92px;max-height:100px;object-fit:contain}.site-header nav a,.responsive-nav a{color:#d6d6d4!important}.site-header nav a.active,.responsive-nav a.active{color:#fff!important}.site-header nav a:hover,.responsive-nav a:hover{color:#fff!important}.hamburger i,.close-responsive-button:before,.close-responsive-button:after{background-color:#fff!important}.site-header .logo{padding-top:0;padding-bottom:0}.site-header.on-scroll{background:transparent}.project-cover .details-wrap{background-color:rgba(0,0,0,.12)}.contact-form button{background:#eee!important;color:#111!important}.contact-form button:hover{background:#fff!important}@media(max-width:768px){.site-header .logo-image img{width:128px;height:70px;max-height:70px}.responsive-nav{background:#121212!important}}@media(prefers-reduced-motion:reduce){html{background-image:none;background-color:#101010}}

/* Visible category captions, independent of hover. */
.project-cover .details-wrap{position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;left:auto!important;top:auto!important;height:auto!important;width:100%!important;padding:17px 0 5px!important;background:transparent!important}.project-cover .details{display:block;height:auto;background:transparent}.project-cover .details-inner{padding:0!important}.project-cover .title{text-align:left;font-size:22px;line-height:1.2;letter-spacing:.035em;padding:0}.project-cover .title:after{content:'↗';float:right;font-family:Arial,sans-serif;font-size:17px;opacity:.55}.project-cover:hover .title:after{opacity:1}.project-cover .cover-content-container{overflow:visible}.project-cover .cover-image:after{background:transparent!important}.bp-client-strip{clear:both;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:65px 0 50px;color:#cececa}.bp-client-strip span{font-family:Arial,sans-serif}.bp-client-strip .wellobe{font-size:27px;font-weight:800;letter-spacing:-1.5px}.bp-client-strip .redbull{font-size:22px;font-weight:800;letter-spacing:-.8px}.bp-client-strip .idol{font-family:Georgia,serif;font-style:italic;font-size:35px}.bp-client-strip .aleris{font-size:26px;letter-spacing:-1px}.bp-client-strip .nordic{font-size:13px;line-height:1.1;letter-spacing:.5px;text-align:center}.bp-client-strip .client-volvo{width:112px;height:24px;object-fit:contain;filter:brightness(0) invert(.81)}.bp-client-strip .client-kronfagel{width:92px;height:68px;object-fit:contain}@media(max-width:932px){.bp-client-strip{justify-content:center;gap:28px 35px;padding-top:45px}.project-cover .title{font-size:20px}}@media(max-width:540px){.project-cover .details-wrap{padding-top:12px!important;padding-bottom:15px!important}.bp-client-strip .client-volvo{width:100px}.bp-client-strip .client-kronfagel{width:80px;height:60px}}

/* Sibling lettering to Billy’s Weddings, rendered white on the dark page. */
.site-header .logo-image img{width:202px;height:96px;object-fit:cover;filter:grayscale(1) contrast(4) invert(1);mix-blend-mode:screen}.site-header .logo a{display:inline-block;mix-blend-mode:screen}@media(max-width:768px){.site-header .logo-image img{width:154px;height:74px;max-height:74px}}

.site-header .logo-image img{filter:none;mix-blend-mode:normal}

/* Compact portfolio composition, with only the photographs as links. */
.site-header .logo-image img{width:154px!important;height:78px!important;max-height:78px!important;max-width:100%!important;object-fit:contain!important}
.site-header .logo a{overflow:visible!important;max-width:100%;line-height:0}
.site-header .logo{overflow:visible!important}
.bp-home .site-header{height:122px}
.bp-home .project-covers{padding-top:22px}
.bp-home .project-cover .cover-image:before{padding-bottom:0!important;height:clamp(250px,43vh,430px)}
.project-cover .cover-link{display:block;color:inherit}
.project-cover .details-wrap{cursor:default}
.project-cover .title:after{content:none!important;display:none!important}
.bp-client-strip{padding:34px 0 30px;gap:30px;justify-content:space-around;flex-wrap:nowrap}
.bp-client-strip img{display:block;object-fit:contain;max-width:17%;filter:brightness(0) invert(.83)}
.bp-client-strip .client-volvo{width:112px;height:30px}
.bp-client-strip .client-redbull{width:104px;height:64px}
.bp-client-strip .client-idol{width:100px;height:57px}
.bp-client-strip .client-aleris{width:70px;height:68px}
.bp-client-strip .client-kronfagel{width:85px;height:68px}
.bp-contact .page-header .description{color:#eee!important}
.bp-contact .bp-client-strip{margin-top:30px;padding-top:38px}
.bp-contact .bp-portrait{mask-image:radial-gradient(ellipse 55% 62% at 50% 60%,#000 44%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 55% 62% at 50% 60%,#000 44%,transparent 100%)}
@media(min-width:769px) and (max-height:760px){.bp-home .site-header{height:104px}.bp-home .project-covers{padding-top:15px}.bp-home .project-cover .cover-image:before{height:clamp(220px,43vh,355px)}.bp-home .bp-client-strip{padding-top:24px}}
@media(max-width:768px){.site-header .logo-image img{width:130px!important;height:66px!important;max-height:66px!important}.bp-home .site-header{height:110px}.bp-home .project-covers{padding-top:15px}.bp-home .project-cover .cover-image:before{height:auto;padding-bottom:140%!important}.bp-client-strip{gap:24px;flex-wrap:wrap;justify-content:center}.bp-client-strip img{max-width:26%}}

/* Keep the tall original cover proportions, scaled together to the viewport. */
.bp-home .project-covers{padding:0!important;margin:0 auto!important;width:100%;gap:17px;justify-content:center}
.bp-home .project-cover{margin:0!important;width:calc((100% - 51px)/4)}
.bp-home .project-cover .cover-image:before{height:auto!important;padding-bottom:160%!important}
.bp-home .project-cover .details-wrap{position:absolute!important;inset:0!important;height:100%!important;display:flex;align-items:center;justify-content:center;padding:0!important;pointer-events:none;z-index:2}
.bp-home .project-cover .title{text-align:center;font-size:clamp(20px,2vw,30px);letter-spacing:.04em;text-shadow:0 2px 15px #000b}
.bp-home .project-cover .details{height:auto!important}
.bp-home .project-cover .cover{filter:grayscale(1) brightness(.72);transition:filter .45s ease}
.bp-home .project-cover:hover .cover,.bp-home .project-cover:focus-within .cover{filter:grayscale(0) brightness(1)}
.bp-home .project-cover:nth-child(3) .cover{filter:grayscale(1) brightness(.56)}
.bp-home .project-cover:nth-child(3):hover .cover,.bp-home .project-cover:nth-child(3):focus-within .cover{filter:grayscale(1) brightness(1)}
.bp-client-strip{justify-content:center;gap:0;padding:0!important;margin:0 auto!important;width:max-content;max-width:100%;min-height:58px}
.bp-client-strip img{box-sizing:content-box;max-width:none;width:70px!important;height:43px!important;padding:0 27px;filter:brightness(0) invert(.72)}
.bp-client-strip img+img{border-left:1px solid #ffffff26}
.bp-client-strip .client-aleris{width:45px!important}
.bp-client-strip .client-kronfagel{width:58px!important}
.bp-contact .bp-portrait{mask-image:none!important;-webkit-mask-image:none!important;border:1px solid #ffffff30;padding:9px;background:#161616;box-sizing:border-box}
@media(min-width:769px){
 .bp-home .site-header,.bp-contact .site-header{height:110px!important}
 .bp-home .site-wrap,.bp-contact .site-wrap{padding:0!important}
 .bp-home main{height:calc(100dvh - 110px);box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-evenly;gap:22px;padding:8px 0 22px}
 .bp-home .project-covers{width:min(100%,calc((100dvh - 240px)*2.5 + 51px))}
 .bp-home .site-footer,.bp-contact .site-footer{display:none}
 .bp-contact main{height:calc(100dvh - 110px);box-sizing:border-box;padding:8px 0 22px}
 .bp-contact .page-container,.bp-contact .page{height:100%}
 .bp-contact .page{display:flex;flex-direction:column}
 .bp-contact .page-header{padding:0 0 18px!important;flex:none}
 .bp-contact .page-header .description{padding:0!important;line-height:26px}
 .bp-contact .page-content{flex:1;min-height:0}
 .bp-contact #project-canvas,.bp-contact #project-modules{height:100%}
 .bp-contact #project-modules{display:flex;flex-direction:column;justify-content:space-evenly;gap:24px}
 .bp-contact .project-module-tree{width:100%;padding:0!important;margin:0!important}
 .bp-contact .tree-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
 .bp-contact .tree-child-wrapper{width:100%;padding:0!important}
 .bp-contact .project-module-image{width:min(100%,340px)!important;margin:auto!important;padding:0!important}
 .bp-contact .bp-portrait{max-height:min(45dvh,360px);width:auto;max-width:100%;display:block;margin:auto}
 .bp-contact .project-module-form{padding:0!important;margin:0!important;width:100%}
 .bp-contact .form-input{margin:0 0 18px!important;padding:0!important}
 .bp-contact .form-input label{font-size:16px;line-height:20px;margin-bottom:6px}
 .bp-contact .form-input input{height:34px;box-sizing:border-box}
 .bp-contact .form-input textarea{height:110px;min-height:70px;box-sizing:border-box}
 .bp-contact .contact-form button{padding:10px 24px!important;margin:0 auto!important}
}
@media(max-width:768px){.bp-home .project-covers{gap:18px}.bp-home .project-cover{width:calc((100% - 18px)/2)}.bp-home .project-cover .title{font-size:24px}.bp-client-strip{flex-wrap:wrap;row-gap:16px;margin:28px auto!important}.bp-client-strip img{padding:0 17px;width:58px!important;height:37px!important}.bp-contact .bp-client-strip{margin-top:35px!important}.bp-contact .bp-portrait{max-width:100%}}
@media(prefers-reduced-motion:reduce){.bp-home .project-cover .cover{transition:none}}

.bp-home .project-cover .cover{filter:grayscale(1)}
.bp-home .project-cover:hover .cover,.bp-home .project-cover:focus-within .cover{filter:grayscale(0) brightness(1)}
.bp-home .project-cover:nth-child(3) .cover{filter:grayscale(1) brightness(.62)}
.bp-home .project-cover:nth-child(3):hover .cover,.bp-home .project-cover:nth-child(3):focus-within .cover{filter:grayscale(1) brightness(1)}
.bp-client-strip .client-warner{width:86px!important}
@media(min-width:769px){.bp-contact .form-input input,.bp-contact .form-input textarea{margin:0!important}}
.bp-home .project-cover .title{pointer-events:auto;cursor:default}

/* Restrained cover captions and a composed contact page. */
.bp-home .project-cover .title{font-size:clamp(17px,1.45vw,21px)!important;text-shadow:none!important;filter:none!important;letter-spacing:.055em;font-weight:400}
.bp-contact-content{font-family:Arial,sans-serif;color:#d2d2d0;max-width:1060px;margin:0 auto}
.bp-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:center;width:100%}
.bp-profile-head{display:flex;gap:22px;align-items:center;margin-bottom:22px}
.bp-contact-portrait{width:106px;height:106px;object-fit:cover;border:1px solid #ffffff30;padding:5px;box-sizing:border-box;background:#151515}
.bp-profile-head h1{font-family:shzc,Arial,sans-serif;font-size:30px;font-weight:400;line-height:1.1;letter-spacing:.02em;color:#f0f0ed;margin:0 0 7px}
.bp-eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#8d8d8a;margin:0 0 9px}
.bp-profile-role{font-size:13px;line-height:1.4;color:#b5b5b1;margin:0}
.bp-profile-copy{font-size:14px;line-height:1.65;max-width:450px}
.bp-profile-copy p{margin:0 0 15px}
.bp-contact-email{display:inline-block;margin-top:5px;font-family:Arial,sans-serif;font-size:14px;color:#f0f0ed!important;text-decoration:none!important;border-bottom:1px solid #ffffff40;padding-bottom:5px}
.bp-contact-email:hover{border-color:#fff}
.bp-contact-inquiry h2{font-family:shzc,Arial,sans-serif;font-size:28px;line-height:1.15;letter-spacing:.025em;font-weight:400;color:#f0f0ed;margin:0 0 9px}
.bp-contact-intro{font-size:13px;line-height:1.5;margin:0 0 22px;color:#a4a4a0}
.bp-contact .bp-contact-content .project-module-form{width:100%;padding:0!important;margin:0!important}
.bp-contact .bp-contact-content .form-input{margin:0 0 16px!important;padding:0!important}
.bp-contact .bp-contact-content label{display:block;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase;line-height:1.3;margin:0 0 7px!important;color:#b7b7b3}
.bp-contact .bp-contact-content input,.bp-contact .bp-contact-content textarea{display:block;width:100%;box-sizing:border-box;font-family:Arial,sans-serif;font-size:14px;color:#eee;background:#ffffff07;border:1px solid #ffffff32;border-radius:0;outline-offset:3px;margin:0!important;padding:10px 12px;height:38px}
.bp-contact .bp-contact-content textarea{height:100px;min-height:65px;resize:vertical}
.bp-contact .bp-contact-content input:focus,.bp-contact .bp-contact-content textarea:focus{border-color:#bdbdb7;outline:1px solid #bdbdb7}
.bp-contact .bp-contact-content .contact-form button{display:inline-flex;align-items:center;justify-content:center;position:static;float:none;transform:none;box-sizing:border-box;width:auto;height:41px;min-height:0;margin:2px 0 0!important;padding:0 22px!important;border:1px solid #e8e8e4;border-radius:0;background:#e8e8e4!important;color:#171717!important;font-family:Arial,sans-serif;font-size:11px;font-weight:500;line-height:1;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:none}
.bp-contact .bp-contact-content .contact-form button:hover{background:#fff!important;border-color:#fff}
.bp-contact .bp-contact-content .contact-form button:disabled{opacity:.6;cursor:wait}
@media(min-width:769px){.bp-contact main{padding:12px 0 24px}.bp-contact-content{height:100%;display:flex;flex-direction:column;justify-content:space-evenly;gap:28px}.bp-contact-inquiry{min-width:0}.bp-contact .bp-contact-content .bp-client-strip{flex:none}}
@media(min-width:769px) and (max-height:720px){.bp-profile-head{margin-bottom:16px}.bp-contact-portrait{width:86px;height:86px}.bp-profile-copy{font-size:13px;line-height:1.55}.bp-profile-copy p{margin-bottom:12px}.bp-contact-intro{margin-bottom:16px}.bp-contact .bp-contact-content .form-input{margin-bottom:12px!important}.bp-contact .bp-contact-content textarea{height:80px}.bp-contact-content{gap:20px}}
@media(max-width:768px){.bp-home .project-cover .title{font-size:18px!important}.bp-contact-grid{grid-template-columns:1fr;gap:38px}.bp-contact-content{padding:12px 0 15px}.bp-contact main{height:auto!important}.bp-profile-head h1{font-size:28px}.bp-profile-copy{max-width:none}.bp-contact-inquiry h2{font-size:26px}.bp-contact .bp-contact-content .bp-client-strip{margin-top:40px!important}}

.bp-contact .bp-contact-content .contact-form{text-align:left}
.other-projects .title-wrapper{display:none}
.other-projects .project-covers{display:flex;justify-content:center;gap:18px;width:76%;max-width:800px;margin:0 auto;padding:0}
.other-projects .project-cover{width:calc((100% - 36px)/3)!important;margin:0!important}
.other-projects .project-cover .cover-image:before{height:auto;padding-bottom:125%!important}
.other-projects .project-cover .details-wrap{position:absolute!important;inset:0!important;display:flex;align-items:center;justify-content:center;height:100%!important;padding:0!important;pointer-events:none}
.other-projects .project-cover .details{height:auto!important}
.other-projects .project-cover .title{text-align:center;font-size:clamp(17px,1.45vw,21px);font-weight:400;letter-spacing:.055em;text-shadow:none!important;pointer-events:auto;cursor:default}
@media(max-width:768px){.other-projects .project-covers{width:100%;gap:12px}.other-projects .project-cover{width:calc((100% - 24px)/3)!important}.other-projects .project-cover .title{font-size:16px}}

/* Fine spacing and a larger portrait alongside the concise introduction. */
.bp-home .project-cover .title,.other-projects .project-cover .title{font-size:clamp(18px,1.6vw,23px)!important;text-shadow:0 1px 3px #0005!important}
.project-cover:has(a[href*="billysweddings"]) .title,.project-cover:has(a[href="/brollop/"]) .title{text-shadow:0 1px 3px #000d,0 0 8px #0009!important}
.bp-profile-head{margin-bottom:18px}
.bp-profile-copy{font-size:14px;line-height:1.65}
.bp-contact-grid{grid-template-columns:.8fr 1.1fr 1.2fr;gap:clamp(24px,3vw,40px)}
.bp-contact-portrait{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 60%;padding:6px}
.bp-profile-head h1{font-size:28px}
.bp-profile-role{font-size:12px}
.bp-contact-inquiry h2{margin-bottom:24px}
.bp-contact .bp-contact-content .contact-form button,.bp-contact .bp-contact-content .contact-form button:hover,.bp-contact .bp-contact-content .contact-form button:focus-visible{font-weight:500!important;font-style:normal!important;font-size:11px!important;line-height:1!important;letter-spacing:.08em!important;text-transform:uppercase!important;height:41px!important;transform:none!important;border-width:1px!important;border-style:solid!important;border-radius:0!important;box-shadow:none!important;background-image:none!important;transition:background-color .18s ease,border-color .18s ease}
@media(min-width:769px){.bp-home main{justify-content:center;gap:clamp(24px,3.8vh,36px);padding-top:0;padding-bottom:24px}.bp-home .project-covers{width:min(100%,calc((100dvh - 285px)*2.5 + 51px))}.bp-contact-content{justify-content:center;gap:clamp(30px,5vh,50px)}}
@media(min-width:769px) and (max-height:720px){.bp-contact-portrait{width:100%;height:auto;max-height:310px}.bp-profile-head{margin-bottom:14px}.bp-profile-copy{font-size:13px;line-height:1.55}.bp-contact-grid{gap:25px}}
@media(max-width:768px){.bp-home .project-cover .title{font-size:20px!important}.bp-contact-grid{grid-template-columns:1fr;gap:24px}.bp-contact-portrait{width:min(100%,280px);height:auto;aspect-ratio:1;margin:0 auto}.bp-profile-head{margin-bottom:18px}.bp-profile-copy{font-size:14px}.bp-contact-inquiry{margin-top:12px}}

.bp-film main{padding-top:48px}@media(max-width:768px){.bp-film main{padding-top:30px}}
@media(min-width:769px){.site-header,.bp-home .site-header,.bp-contact .site-header{height:136px!important}.site-header .logo-image img{width:140px!important;height:72px!important;max-height:72px!important}.bp-home main,.bp-contact main{height:calc(100dvh - 136px)}.bp-home .project-covers{width:min(100%,calc((100dvh - 311px)*2.5 + 51px))}}
/* Match the original live portfolio hover titles. */
.bp-home .project-cover .title,.other-projects .project-cover .title{font-size:24px!important;line-height:28px!important;letter-spacing:normal}
@media(max-width:932px){.bp-home .project-cover .title,.other-projects .project-cover .title{font-size:18px!important;line-height:21px!important}}

.bp-contact-email{border-bottom:0;padding-bottom:0;cursor:text;user-select:text}

/* Expanded contact marks, grouped into three centered rows. */
.bp-contact .bp-client-grid{display:flex;flex-direction:column;gap:14px;min-height:0;width:min(100%,760px);max-width:100%}
.bp-logo-line{display:flex;justify-content:center;align-items:center;width:100%}
.bp-contact .bp-client-grid img{width:90px!important;height:32px!important;padding:0 26px;object-fit:contain}
.bp-contact .bp-client-grid .client-aleris{width:90px!important}
.bp-contact .bp-client-grid .client-kronfagel{width:90px!important}
.bp-contact .bp-client-grid .client-genpep,.bp-contact .bp-client-grid .client-toogoodtogo,.bp-contact .bp-client-grid .client-star{height:36px!important}
@media(min-width:769px){.bp-contact-content{gap:28px}}
@media(min-width:769px) and (max-height:740px){.bp-contact main{padding-top:6px;padding-bottom:16px}.bp-contact-content{gap:18px}.bp-contact-inquiry h2{margin-bottom:18px}.bp-contact .bp-contact-content .form-input{margin-bottom:10px!important}.bp-contact .bp-client-grid{gap:10px}.bp-contact .bp-client-grid img{height:27px!important}.bp-contact .bp-client-grid .client-genpep,.bp-contact .bp-client-grid .client-toogoodtogo,.bp-contact .bp-client-grid .client-star{height:30px!important}}
@media(max-width:768px){.bp-contact .bp-client-grid{gap:16px}.bp-logo-line{flex-wrap:wrap;gap:15px 0}.bp-contact .bp-client-grid img{width:64px!important;height:29px!important;padding:0 12px}.bp-contact .bp-client-grid .client-aleris,.bp-contact .bp-client-grid .client-kronfagel{width:64px!important}.bp-contact .bp-client-grid img:nth-child(4){border-left:0}}

/* Original portfolio typography and white form fields. */
.bp-contact-content,.bp-profile-copy,.bp-profile-role,.bp-eyebrow,.bp-contact-email{font-family:shzc,Arial,sans-serif!important;font-weight:400}
.bp-profile-copy{font-size:20px;line-height:26px}
.bp-profile-role{font-size:18px;line-height:22px}
.bp-eyebrow{font-size:14px;letter-spacing:.05em}
.bp-contact-email{font-size:18px}
.bp-contact .bp-contact-content label{font-family:shzc,Arial,sans-serif;font-size:16px;line-height:16px;letter-spacing:normal;font-weight:400;color:#fff}
.bp-contact .bp-contact-content input,.bp-contact .bp-contact-content textarea{background:#fff;color:#373737;border-color:#373737;font-family:vcsm,Arial,sans-serif;font-size:16px;font-weight:600}
.bp-contact .bp-contact-content .contact-form button,.bp-contact .bp-contact-content .contact-form button:hover,.bp-contact .bp-contact-content .contact-form button:focus-visible{font-family:shzc,Arial,sans-serif!important;font-size:18px!important;font-weight:400!important;letter-spacing:normal!important;text-transform:none!important;border-radius:20px!important;color:#373737!important}
@media(min-width:769px) and (max-height:740px){.bp-profile-copy{font-size:18px;line-height:23px}.bp-profile-role{font-size:16px;line-height:20px}}
@media(max-width:768px){.bp-profile-copy{font-size:18px;line-height:24px}}

/* Staggered marks, natural lowercase copy and uncropped tall category covers. */
.bp-contact .bp-client-grid{width:min(100%,760px)}
.bp-contact .bp-client-grid img{width:76px!important;padding:0 22px;box-sizing:content-box}
.bp-contact .bp-client-grid .client-aleris,.bp-contact .bp-client-grid .client-kronfagel{width:76px!important}
.bp-contact .bp-client-grid .client-aftonbladet{width:90px!important;padding:0 15px}
.bp-profile-copy{font-family:gkhs,'Arial Narrow',sans-serif!important;font-size:21px;line-height:1.4;font-weight:400;text-transform:none}
.other-projects .project-cover .cover-image:before{padding-bottom:160%!important}
.bp-films{display:flex;flex-direction:column;gap:42px;max-width:1120px;margin:0 auto;padding-bottom:65px}
.bp-film-item{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:25px;align-items:center;width:83%;align-self:flex-start}
.bp-film-item:nth-child(even){grid-template-columns:150px minmax(0,1fr);align-self:flex-end}
.bp-film-item:nth-child(even) .bp-film-meta{grid-column:1;grid-row:1;text-align:right}
.bp-film-item:nth-child(even) .bp-film-media{grid-column:2;grid-row:1}
.bp-film-media{width:100%;aspect-ratio:var(--film-ratio);background:#121212}
.bp-film-media iframe{display:block;width:100%;height:100%;border:0}
.bp-film-meta{font-family:shzc,sans-serif;font-size:20px;line-height:1.55;color:#eee}
.bp-film-meta span{color:#eee!important}
.bp-film-meta div{color:inherit!important}
.bp-film-item-3{width:79%}
.bp-film-item-4{width:61%;grid-template-columns:minmax(0,1fr) 200px!important;margin-top:-18px}
.bp-film-item-4 .bp-film-media{max-width:200px;margin-left:auto}
@media(min-width:769px) and (max-height:740px){.bp-profile-copy{font-size:19px;line-height:1.35}}
@media(max-width:768px){.bp-contact .bp-client-grid img{width:64px!important;padding:0 12px}.bp-contact .bp-client-grid .client-aleris,.bp-contact .bp-client-grid .client-kronfagel{width:64px!important}.bp-contact .bp-client-grid .client-aftonbladet{width:64px!important;padding:0 12px}.bp-contact .bp-client-grid img:nth-child(4){border-left:0}.bp-profile-copy{font-size:21px;line-height:1.4}.bp-films{gap:32px}.bp-film-item,.bp-film-item:nth-child(even){width:100%;grid-template-columns:1fr;gap:10px}.bp-film-item .bp-film-media,.bp-film-item:nth-child(even) .bp-film-media{grid-column:1;grid-row:1}.bp-film-item .bp-film-meta,.bp-film-item:nth-child(even) .bp-film-meta{grid-column:1;grid-row:2;text-align:left;font-size:18px}.bp-film-item-4{grid-template-columns:1fr!important;margin-top:0;width:80%!important;align-self:flex-end}.bp-film-item-4 .bp-film-media{max-width:180px}.bp-film-item-4 .bp-film-meta{text-align:right!important}}
@media(min-width:769px){.bp-films{gap:28px}.bp-film-item{width:74%}.bp-film-item-3{width:70%}.bp-film-item-4{width:59%;grid-template-columns:minmax(0,1fr) 170px!important}.bp-film-item-4 .bp-film-media{max-width:170px}}

/* Billy’s Photos is monochrome; keep form labels neutral white. */
.bp-contact .bp-contact-content label{color:#fff!important}
.bp-client-strip .client-kronfagel{width:78px!important;height:52px!important}
.bp-contact .bp-client-grid .client-kronfagel{width:94px!important;height:42px!important;padding-left:13px;padding-right:13px}
@media(min-width:769px) and (max-height:740px){.bp-contact .bp-client-grid .client-kronfagel{height:36px!important}}
@media(max-width:768px){.bp-contact .bp-client-grid .client-kronfagel{width:80px!important;height:38px!important;padding-left:4px;padding-right:4px}}

.bp-film-detail{display:flex;align-items:baseline;gap:5px;white-space:nowrap;line-height:1.65}
.bp-film-meta .bp-film-label{font-size:14px}
.bp-film-meta .bp-film-value{font-size:20px}
.bp-film-item:nth-child(even) .bp-film-detail{justify-content:flex-end}
@media(min-width:769px){.bp-film-item-3{width:72%;grid-template-columns:minmax(0,1fr) 220px}.bp-film-item-4{margin-top:-105px}}
@media(min-width:1000px){.bp-film-item-3{transform:translateX(-24px)}}
@media(max-width:768px){.bp-film-item:nth-child(even) .bp-film-detail{justify-content:flex-start}.bp-film-item-4 .bp-film-detail{justify-content:flex-end!important}.bp-film-meta .bp-film-label{font-size:13px}.bp-film-meta .bp-film-value{font-size:18px}}

/* A deliberate bridge to the separate wedding portfolio. */
.bp-wedding-entry{position:relative;min-height:510px;height:calc(100dvh - 160px);max-height:760px;max-width:1180px;margin:0 auto}
.wedding-image{position:absolute;display:block;object-fit:cover}
.wedding-image-1{left:0;top:9%;width:26%;height:74%}
.wedding-image-2{right:0;top:3%;width:28%;height:35%}
.wedding-image-3{right:4%;bottom:8%;width:27%;height:40%}
.wedding-entry-copy{position:absolute;left:28%;top:49%;transform:translateY(-50%);width:40%;text-align:center;z-index:1;color:#eee}
.wedding-entry-copy h1{font-family:shzc,sans-serif;font-size:52px;font-weight:400;line-height:1.1;letter-spacing:.025em;margin:0 0 18px}
.wedding-entry-copy p{font-family:gkhs,'Arial Narrow',sans-serif;font-size:22px;line-height:1.45;margin:0 0 28px}
.wedding-entry-button{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 23px;background:#eee;color:#141414!important;font-family:shzc,sans-serif;font-size:19px;letter-spacing:.015em;text-decoration:none!important}
.wedding-entry-button:hover{background:#fff}
.wedding-entry-button:focus-visible{outline:1px solid #fff;outline-offset:5px}
@media(max-width:768px){.bp-wedding-entry{height:auto;min-height:0;padding:10px 0 35px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.wedding-entry-copy{position:static;transform:none;grid-column:1/-1;grid-row:1;width:100%;padding:20px 0 25px}.wedding-entry-copy h1{font-size:38px}.wedding-entry-copy p{font-size:21px;margin-bottom:22px}.wedding-image{position:static;width:100%;height:100%;object-fit:cover}.wedding-image-1{grid-column:1;grid-row:2/4;aspect-ratio:2/3}.wedding-image-2{grid-column:2;grid-row:2;aspect-ratio:4/3}.wedding-image-3{grid-column:2;grid-row:3;aspect-ratio:4/3}}
@media(min-width:769px){.bp-contact-grid{transform:translateY(-18px)}}

/* Four complete photographs, arranged around the wedding link. */
.bp-wedding-entry .wedding-image{height:auto;object-fit:contain}
.bp-wedding-entry .wedding-image-1{left:0;top:8%;width:31%}
.bp-wedding-entry .wedding-image-2{right:0;top:0;width:23%}
.bp-wedding-entry .wedding-image-3{right:0;bottom:7%;top:auto;width:31%}
.bp-wedding-entry .wedding-image-4{left:8%;bottom:4%;width:19%}
.bp-wedding-entry .wedding-entry-copy{left:32%;width:36%;top:49%}
@media(max-width:768px){.bp-wedding-entry{grid-template-rows:auto auto auto;align-items:center}.bp-wedding-entry .wedding-image{position:static;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.bp-wedding-entry .wedding-image-1{grid-column:1;grid-row:2}.bp-wedding-entry .wedding-image-2{grid-column:2;grid-row:2/4}.bp-wedding-entry .wedding-image-3{grid-column:1/-1;grid-row:4;width:80%;justify-self:end}.bp-wedding-entry .wedding-image-4{grid-column:1;grid-row:3;width:75%;justify-self:center}.bp-wedding-entry .wedding-entry-copy{position:static;width:100%}}
@media(min-width:769px){.bp-wedding-entry .wedding-image-2,.bp-wedding-entry .wedding-image-4{max-height:44%}}
