/* Big Enough Productions — v0.4.3 image fidelity patch.
 * Sole source for the THREE main photographic backdrops: user-approved uploads,
 * cropped to avoid rasterized text. All copy/buttons remain live HTML.
 */
body.home .bep-header-home{height:92px;padding:0 clamp(22px,3.8vw,62px);background:linear-gradient(180deg,rgba(2,13,38,.96),rgba(3,21,50,.77) 72%,rgba(3,20,46,.04));border:none}
body.home .bep-brand{width:clamp(210px,20vw,300px);height:85px}
body.home .bep-brand img{width:clamp(205px,19vw,285px);max-height:82px;object-fit:contain}
body.home .bep-nav{gap:clamp(13px,1.5vw,24px);font-size:clamp(10px,.75vw,12px)}
body.home .bep-partner-button{padding:12px 20px}
body.home .bep-hero{
    min-height:600px;
    padding-top:92px;
    background-color:#041936;
    background-image:var(--hero-image);
    background-repeat:no-repeat;
    background-size:auto 100%;
    background-position:right center;
}
body.home .bep-hero-shade{
    background:linear-gradient(90deg,#031633 0%,rgba(4,27,60,.99) 18%,rgba(5,36,76,.98) 31%,rgba(6,41,81,.83) 43%,rgba(6,41,81,.30) 59%,rgba(3,22,48,.00) 82%);
}
body.home .bep-hero-copy{position:relative;z-index:2;width:min(840px,59%);padding:61px 0 35px clamp(30px,4.4vw,75px)}
body.home .bep-hero h1{
    font-family:Montserrat,Arial,sans-serif;
    font-size:clamp(48px,4.30vw,76px);
    line-height:.98;
    letter-spacing:-.046em;
    margin:0 0 18px;
    font-weight:800;
}
body.home .bep-hero h1 .bep-title-line{white-space:nowrap;display:block}
body.home .bep-hero p{max-width:585px;font-size:clamp(13px,1.1vw,17px);line-height:1.63}
body.home .bep-hero-handwritten{right:3.4%;top:128px;font-size:clamp(22px,1.9vw,32px);font-family:Caveat,cursive;color:#ddeeff;line-height:1.0;text-shadow:0 1px 5px #0c325b;transform:rotate(-8deg)}
body.home .bep-featured-strip{padding:18px clamp(20px,2.7vw,44px) 24px;background:linear-gradient(180deg,#061c3f,#05224e)}
body.home .bep-feature-card{height:clamp(170px,15vw,230px)}
body.home .bep-featured-row{gap:10px}
body.home .bep-feature-card-copy h3{font-size:clamp(18px,1.8vw,29px)}

/* Editorial photographic strip: 4 actual responsive columns; source image fades
   into centre rather than stopping at a visible border. */
body.home .bep-more-than{
    position:relative;isolation:isolate;
    display:grid;
    grid-template-columns:36% 23% 20% 21%;
    align-items:stretch;
    min-height:302px;
    overflow:hidden;
    background:linear-gradient(90deg,#082754,#113c78 50%,#082857 100%);
}
body.home .bep-more-than:before{content:'';position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at 67% 104%,rgba(76,144,223,.45),transparent 44%),linear-gradient(90deg,rgba(8,31,69,0),rgba(6,41,88,.18));pointer-events:none}
body.home .bep-more-image{grid-column:1;grid-row:1;position:absolute;left:0;top:0;bottom:0;width:calc(100% * .45);min-height:0;z-index:0;display:block}
body.home .bep-more-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 76%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 76%,transparent 100%)}
body.home .bep-more-copy{grid-column:2;grid-row:1;z-index:2;align-self:center;padding:25px 10px 25px 0}
body.home .bep-more-copy .bep-eyebrow{font-size:clamp(8px,.63vw,10px);white-space:nowrap;letter-spacing:.22em}
body.home .bep-more-copy h2{font-family:Montserrat,Arial,sans-serif;font-size:clamp(25px,2.20vw,38px);line-height:1.08;letter-spacing:-.035em;font-weight:500;margin:0 0 18px}
body.home .bep-more-copy .bep-btn{font-size:clamp(10px,.7vw,12px);padding:0 17px;min-height:41px}
body.home .bep-more-description{grid-column:3;grid-row:1;z-index:2;align-self:center;padding:36px 15px 30px 8px}
body.home .bep-more-description p{font-family:Montserrat,Arial,sans-serif;color:#e6effb;font-size:clamp(10px,.8vw,13px);line-height:1.62;margin:0}
body.home .bep-more-links{grid-column:4;grid-row:1;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:24px 26px;border-left:1px solid rgba(255,255,255,.18);background:rgba(3,31,67,.2)}
body.home .bep-more-links a{display:grid;grid-template-columns:30px 1fr 13px;gap:10px;align-items:center;font-size:clamp(11px,.75vw,13px);padding:8px 0;border-bottom:1px solid rgba(255,255,255,.10)}
body.home .bep-more-links a:last-child{border-bottom:none}
body.home .bep-line-icon,body.home .bep-line-icon svg{width:24px;height:24px}

/* Dreamers banner: the actual approved crew photograph is used as a photo layer
   beneath live text; a navy gradient fills the rest of the full-bleed banner. */
body.home .bep-dreamers{
    position:relative;isolation:isolate;
    display:grid;
    grid-template-columns:32% 45% 23%;
    min-height:clamp(245px,19vw,320px);
    background:linear-gradient(100deg,#184777 0%,#123d78 48%,#072750 100%);
    background-image:none;
    overflow:hidden;
}
body.home .bep-dreamers:before{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(2,17,42,.0),rgba(6,35,79,.20) 36%,rgba(5,29,67,.50) 76%,rgba(3,20,49,.58)),radial-gradient(ellipse at 67% 100%,rgba(65,117,184,.34),transparent 53%);pointer-events:none}
body.home .bep-dreamers-backdrop{position:absolute;inset:0 auto 0 0;width:62%;height:100%;object-fit:cover;object-position:left center;z-index:0;opacity:.97;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 46%,transparent 96%);mask-image:linear-gradient(90deg,#000 0%,#000 46%,transparent 96%)}
body.home .bep-dreamers-spacer{grid-column:1;grid-row:1;z-index:1}
body.home .bep-dreamers-copy{grid-column:2;grid-row:1;position:relative;z-index:2;padding:25px clamp(10px,1.4vw,26px) 24px 2px;background:transparent;display:flex;flex-direction:column;justify-content:center}
body.home .bep-dreamers-copy .bep-eyebrow{font-size:clamp(8px,.68vw,10px);letter-spacing:.26em;white-space:nowrap;margin-bottom:13px}
body.home .bep-dreamers-copy h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(37px,3.8vw,68px);line-height:.88;font-weight:500;letter-spacing:-.026em;text-shadow:0 2px 14px rgba(1,15,36,.32)}
body.home .bep-dreamers-copy h2 em{color:var(--gold)}
body.home .bep-dreamers-cta{grid-column:3;grid-row:1;z-index:2;position:relative;align-self:center;border-left:1px solid rgba(255,255,255,.48);background:none;padding:20px 17px 20px 22px}
body.home .bep-dreamers-cta p{font-family:Montserrat,Arial,sans-serif;font-size:clamp(11px,.85vw,14px);line-height:1.64;color:#f0f4fa;margin:0 0 19px}
body.home .bep-dreamers-cta .bep-btn{min-height:46px;font-size:clamp(11px,.82vw,13px);white-space:nowrap;min-width:0}

@media(max-width:1230px){
 body.home .bep-nav{gap:12px;font-size:10px}
 body.home .bep-brand{width:205px}
 body.home .bep-brand img{width:199px}
 body.home .bep-more-than{grid-template-columns:34% 24% 19% 23%}
 body.home .bep-more-copy h2{font-size:clamp(23px,2.7vw,33px)}
 body.home .bep-more-links{padding:20px 16px}
 body.home .bep-dreamers{grid-template-columns:31% 45% 24%}
}
@media(max-width:1000px){
 body.home .bep-nav{display:none}
 body.home .bep-menu-button{display:block}
 body.home .bep-nav.is-open{display:flex;position:absolute;top:82px;left:0;right:0;flex-direction:column;align-items:stretch;padding:15px 24px;background:#031736;gap:0}
 body.home .bep-header-home{height:82px}
 body.home .bep-hero{min-height:660px;padding-top:82px;background-size:auto 82%;background-position:right bottom}
 body.home .bep-hero-copy{width:min(700px,79%);padding:65px 0 30px 30px}
 body.home .bep-hero h1{font-size:clamp(45px,5.4vw,64px)}
 body.home .bep-more-than{grid-template-columns:38% 34% 28%;}
 body.home .bep-more-copy{grid-column:2;padding:22px 10px 22px 0}
 body.home .bep-more-description{grid-column:2;grid-row:2;padding:0 10px 20px}
 body.home .bep-more-image{width:48%;grid-row:1/span 2}
 body.home .bep-more-links{grid-column:3;grid-row:1/span 2}
 body.home .bep-dreamers{grid-template-columns:29% 42% 29%}
 body.home .bep-dreamers-copy h2{font-size:clamp(35px,4.5vw,51px)}
}
@media(max-width:700px){
 body.home .bep-header-home{height:72px;padding:0 17px}
 body.home .bep-brand{width:165px}
 body.home .bep-brand img{width:162px;height:auto}
 body.home .bep-nav.is-open{top:72px}
 body.home .bep-hero{min-height:700px;padding-top:72px;background-position:right bottom;background-size:auto 50%}
 body.home .bep-hero-shade{background:linear-gradient(180deg,#031633 0%,rgba(4,29,65,.99) 33%,rgba(4,28,63,.83) 49%,rgba(5,31,67,.18) 79%)}
 body.home .bep-hero-copy{width:100%;padding:56px 22px 270px}
 body.home .bep-hero h1{font-size:clamp(36px,8vw,54px)}
 body.home .bep-hero h1 .bep-title-line{white-space:normal}
 body.home .bep-hero p{font-size:14px;max-width:460px}
 body.home .bep-hero-handwritten{right:14px;top:auto;bottom:215px;font-size:22px}
 body.home .bep-more-than{grid-template-columns:1fr;min-height:0}
 body.home .bep-more-image{position:relative;grid-column:1;grid-row:1;display:block;width:100%;height:205px;min-height:205px}
 body.home .bep-more-image img{-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 65%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 65%,transparent 100%)}
 body.home .bep-more-copy{grid-column:1;grid-row:2;padding:12px 24px 6px}
 body.home .bep-more-copy h2{font-size:36px;max-width:480px}
 body.home .bep-more-description{grid-column:1;grid-row:3;padding:0 24px 24px}
 body.home .bep-more-description p{font-size:13px}
 body.home .bep-more-links{grid-column:1;grid-row:4;padding:18px 24px;display:grid;grid-template-columns:1fr 1fr;border-left:0;border-top:1px solid rgba(255,255,255,.2)}
 body.home .bep-more-links a{border:none}
 body.home .bep-dreamers{grid-template-columns:1fr;min-height:580px}
 body.home .bep-dreamers-backdrop{width:100%;height:47%;object-fit:cover;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%)}
 body.home .bep-dreamers-spacer{grid-column:1;grid-row:1;height:215px}
 body.home .bep-dreamers-copy{grid-column:1;grid-row:2;padding:20px 24px 10px}
 body.home .bep-dreamers-copy h2{font-size:46px;line-height:.92}
 body.home .bep-dreamers-cta{grid-column:1;grid-row:3;border-left:0;padding:12px 24px 35px}
 body.home .bep-dreamers-cta p{font-size:13px}
}
