:root{--ink:#151c20;--navy:#27282c;--orange:#d64218;--coral:#ee5b2d;--ivory:#faf9f7;--fog:#edf0f0;--line:#dadddd;--type:'The Brown','Montserrat',Arial,sans-serif;--body:'Lemon Milk','DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:400 15px/1.6 var(--body);background:var(--ivory);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--type);line-height:1.05;letter-spacing:-.065em}h1,h2{font-weight:800}em{font-style:normal;color:var(--coral)}a:focus-visible,button:focus-visible{outline:3px solid #f97b4a;outline-offset:4px}.skip{position:absolute;top:-120px;left:18px;padding:12px 20px;background:white;color:var(--ink);z-index:50}.skip:focus{top:14px}.wrap{width:min(1280px,calc(100% - 104px));margin:auto}.site-header{position:absolute;top:0;width:100%;z-index:20;background:linear-gradient(to bottom,rgba(6,10,14,.56),rgba(6,10,14,0));border-bottom:1px solid #ffffff30}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:38px;min-height:108px}.site-logo{display:block;flex-shrink:0}.site-logo img{height:64px;width:auto;max-width:196px;display:block;object-fit:contain}.nav-links{display:flex;gap:36px;align-items:center}.nav-links>a{font:700 12px/1.2 var(--body);letter-spacing:.035em;color:#fff;transition:color .2s}.nav-links>a:hover,.nav-links>a[aria-current]{color:#ff8f65}.nav-links .nav-contact{display:inline-flex;align-items:center;gap:26px;border:1px solid #ffffff7a;padding:14px 19px;transition:background .2s,border-color .2s}.nav-links .nav-contact:hover{background:#fff;color:var(--ink);border-color:#fff}.menu-toggle{display:none}.hero{min-height:750px;height:min(850px,100svh);position:relative;background:#141d20;overflow:hidden;color:#fff;isolation:isolate}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{z-index:-3;overflow:hidden}.hero-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 43%;animation:slowZoom 20s ease-in-out infinite alternate}.hero--home .hero-photo img{object-position:70% 40%}.hero--book .hero-photo img{object-position:61% 29%}.hero--join .hero-photo{left:46%;background:#182227}.hero--join .hero-photo img{object-position:51% 17%}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(12,19,23,.96) 0%,rgba(12,19,23,.90) 26%,rgba(12,19,23,.56) 49%,rgba(12,19,23,.03) 100%),linear-gradient(0deg,rgba(10,16,19,.55),transparent 25%)}.hero-content{height:100%;display:flex;align-items:center;padding-top:95px;padding-bottom:85px}.hero-copy{max-width:700px}.eyebrow{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:10px;color:var(--orange)}.eyebrow--light{color:#f8d0bf}.orange-line{width:22px;height:2px;background:var(--coral);display:inline-block}.hero h1{font-size:clamp(60px,6.55vw,112px);line-height:.99;margin:32px 0 28px;letter-spacing:-.078em;text-wrap:balance}.hero h1 em{color:#ff7047}.hero-desc{font-size:clamp(16px,1.3vw,20px);line-height:1.65;max-width:525px;color:#eee9e6}.hero-links{display:flex;align-items:center;gap:34px;margin-top:36px}.btn{display:inline-flex;justify-content:space-between;align-items:center;min-height:56px;gap:36px;padding:16px 24px;font:700 12px/1.1 var(--body);letter-spacing:.02em;border:none;transition:transform .2s,background .2s,color .2s}.btn:hover{transform:translateY(-3px)}.btn--solid{background:var(--orange);color:white}.btn--solid:hover{background:#f06133}.btn--dark{background:var(--ink);color:#fff}.text-action{border-bottom:1px solid #ffffff8c;padding-bottom:9px;font-weight:700;font-size:12px;display:inline-flex;gap:23px;white-space:nowrap;transition:gap .2s}.text-action:hover{gap:30px}.hero-badge{position:absolute;right:5%;bottom:42px;max-width:120px;width:10vw;height:auto;filter:drop-shadow(0 8px 16px #0006);animation:badgeFloat 5s ease-in-out infinite}.hero-index{position:absolute;bottom:27px;left:52px;letter-spacing:.22em;color:#e9d2c8;font-weight:600;font-size:9px}.info-ticker{overflow:hidden;border-bottom:1px solid #e7e7e7;background:#f7f6f3;padding:23px 0}.ticker-track{width:max-content;animation:marquee 28s linear infinite}.ticker-track span{white-space:nowrap;font-family:var(--type);font-size:12px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#555b5c}.ticker-track b{padding:0 36px;color:var(--orange)}.section{padding:128px 0}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:12%;align-items:end}.intro-grid h2,.services-heading h2,.process-section h2,.enquiry-grid h2,.join-grid h2{font-size:clamp(42px,5.3vw,76px);margin-top:25px}.intro-right{padding-bottom:10px}.intro-right p:first-child{font:700 20px/1.4 var(--type);letter-spacing:-.04em;color:#222a2d;margin:0 0 17px}.intro-right p:nth-child(2){font-size:15px;color:#616969;line-height:1.85;margin:0 0 22px}.inline-link{font-size:12px;font-weight:700;display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid var(--orange);padding:0 0 10px}.section-label{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid #d5d6d4;margin-bottom:37px}.section-label>span:last-child{font-size:10px;font-weight:700;letter-spacing:.08em;color:#858a8c}.photo-story{background:#f0efeb}.story-head{display:flex;gap:30px;align-items:end;justify-content:space-between;margin:30px 0 45px}.story-head h2{font-size:clamp(42px,5vw,66px)}.story-head p{max-width:365px;line-height:1.8;color:#626a6b}.gallery-grid{display:grid;grid-template-columns:1.18fr .8fr .8fr;gap:14px}.gallery-grid figure{position:relative;overflow:hidden;height:490px;background:#30363a}.gallery-grid figure img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.65,.2,1)}.gallery-grid figure:hover img{transform:scale(1.04)}.gallery-grid figure::after{content:'';position:absolute;inset:48% 0 0;background:linear-gradient(transparent,#0a121ac7);pointer-events:none}.gallery-grid figcaption{position:absolute;z-index:1;bottom:24px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;color:#fff;font:700 12px var(--body)}.gallery-grid figcaption span{font-size:20px}.services-section{background:#fff}.services-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:65px}.services-heading p{max-width:340px;color:#687071}.service-line{display:grid;grid-template-columns:70px 1fr 30px;gap:30px;align-items:center;border-top:1px solid var(--line);padding:32px 5px;transition:padding .2s,color .2s}.service-line:last-child{border-bottom:1px solid var(--line)}.service-line:hover{padding-left:15px;color:var(--orange)}.service-line span:first-child{font-size:12px;color:var(--orange);font-weight:700}.service-line h3{font-size:clamp(21px,2.7vw,37px);line-height:1.23;letter-spacing:-.055em;font-weight:700}.service-line span:last-child{font-size:24px;font-weight:300}.process-section{background:#1b2429;color:#fff}.process-section .section-label{border-color:#ffffff40}.process-section .section-label>span:last-child{color:#c0c6c7}.process-section h2{margin:0 0 70px}.process-row{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.process-row article{border-top:1px solid #ffffff45;padding-top:25px}.process-row article span{color:#fb8c61;font-size:12px}.process-row h3{font-size:20px;font-weight:700;letter-spacing:-.03em;margin:35px 0 12px}.process-row p{font-size:14px;color:#b6bfc2;line-height:1.75}.closing-cta{background:#d64218;color:#fff;overflow:hidden}.closing-content{min-height:420px;position:relative;padding:90px 0}.closing-content h2{font-size:clamp(48px,5.5vw,76px);margin:18px 0 28px}.closing-content h2 em{color:#fff}.closing-content .btn--solid{background:#fff;color:#1a2024}.closing-mark{position:absolute;right:7%;top:18%;width:250px;height:250px;opacity:.8}.site-footer{background:#12191d;color:#fff;padding:65px 0 22px}.footer-top{display:grid;grid-template-columns:1.6fr .8fr 1fr;gap:60px;padding-bottom:60px}.foot-logo img{width:205px;height:auto}.footer-top p{color:#a5adb0;font-size:13px;margin-top:14px}.footer-links{display:flex;flex-direction:column;gap:13px;font-size:13px}.footer-links a:hover{color:#ff875a}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff33;padding-top:19px;font-size:11px;color:#a9b1b3}.booking-main,.join-section{background:var(--ivory)}.enquiry-grid,.join-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:12%;align-items:start}.enquiry-grid h2,.join-grid h2{margin:20px 0}.enquiry-grid>div>p,.join-grid>div>p{max-width:490px;line-height:1.9;color:#687072}.contact-list{margin:32px 0 0;max-width:490px}.contact-list>div{display:flex;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid #d9dddc}.contact-list span{font-weight:700;font-size:12px}.contact-list a{font-size:13px;overflow-wrap:anywhere}.contact-list a:hover{color:var(--orange)}.form-card{background:white;min-height:445px;padding:52px 43px;border:1px solid #e9e9e6;box-shadow:0 14px 65px rgba(12,22,25,.04)}.form-card h3{font-size:clamp(32px,3vw,47px);margin:20px 0}.form-card p{color:#667070;line-height:1.85;max-width:355px;margin-bottom:30px}.form-card small{display:block;margin-top:20px;font-size:11px;color:#8b9294}.form-badge{width:140px;height:auto;display:block;margin:0 0 13px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}.value-grid>div{border-top:1px solid #ccd1d1;padding-top:20px}.value-grid span{display:block;font-size:11px;color:var(--orange);font-weight:800;margin-bottom:30px}.value-grid strong{display:block;font-family:var(--type);font-weight:700;margin-bottom:10px}.value-grid p{font-size:12px;color:#777f82;line-height:1.7}.page-gallery{background:#1c252b;color:white;padding:48px 0}.page-gallery-inner{display:grid;grid-template-columns:.92fr 1.08fr;gap:12%;align-items:center}.page-gallery-inner img{display:block;height:470px;width:100%;object-fit:cover;object-position:center 40%}.page-gallery-inner h2{font-size:clamp(38px,4.5vw,66px);margin-top:25px}.missing-page{padding:200px 0 100px;background:#182229;color:white;min-height:75vh}.missing-page h1{font-size:clamp(45px,7vw,82px);margin:20px 0}.missing-page .btn{margin-top:25px}[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}[data-reveal].is-visible{opacity:1;transform:none}@keyframes slowZoom{from{transform:scale(1)}to{transform:scale(1.065)}}@keyframes badgeFloat{50%{transform:translateY(-8px)}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(min-width:1600px){.hero{height:780px}.hero-copy{max-width:790px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.nav-links{gap:21px}.site-logo img{height:53px}.hero-shade{background:linear-gradient(90deg,#10191cef 0%,#10191cc2 42%,#10191c20 100%),linear-gradient(0deg,#10191c55,transparent 30%)}.hero h1{font-size:clamp(58px,7vw,92px)}.hero-badge{right:32px}.section{padding:90px 0}.gallery-grid figure{height:380px}.form-card{padding:38px 30px}.enquiry-grid,.join-grid{gap:7%}}
@media(max-width:740px){.wrap{width:calc(100% - 42px)}.site-header{background:#141b1de8;border-bottom:1px solid #ffffff2c}.nav-wrap{min-height:76px}.site-logo img{height:55px;max-width:160px}.menu-toggle{display:flex;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:transparent;border:1px solid #ffffff6a;color:white;cursor:pointer}.menu-toggle span{width:19px;height:2px;background:currentColor}.nav-links{display:none;position:absolute;top:75px;left:0;width:100%;background:#141b1d;flex-direction:column;align-items:stretch;padding:20px 22px 25px;gap:0;box-shadow:0 16px 32px #0003}.nav-links[data-open=true]{display:flex}.nav-links>a{padding:17px 0;border-bottom:1px solid #ffffff20}.nav-links .nav-contact{margin-top:18px;justify-content:space-between;padding:15px}.hero{height:auto;min-height:765px;max-height:none}.hero-content{min-height:765px;padding:330px 0 95px;align-items:end}.hero-photo img{object-position:57% top}.hero--home .hero-photo img{object-position:50% top}.hero--book .hero-photo img{object-position:50% top}.hero--join .hero-photo{left:0}.hero--join .hero-photo img{object-position:center top}.hero-shade{background:linear-gradient(0deg,#0b1215 0%,#0d1518f5 19%,#11191cb3 46%,#10191c0d 100%),linear-gradient(0deg,transparent,#10191c66)}.hero h1{font-size:clamp(47px,10.4vw,74px);margin:20px 0}.hero-desc{font-size:15px;max-width:440px}.hero-badge{width:82px;right:23px;top:93px;bottom:auto}.hero-index{display:none}.eyebrow{font-size:9px}.hero-links{margin-top:29px;gap:24px}.btn{min-height:52px;padding:15px 17px;gap:18px;font-size:11px}.text-action{font-size:11px}.info-ticker{padding:18px 0}.ticker-track span{font-size:10px}.section{padding:76px 0}.intro-grid,.enquiry-grid,.join-grid{grid-template-columns:1fr;gap:40px}.intro-grid h2,.services-heading h2,.process-section h2,.enquiry-grid h2,.join-grid h2{font-size:clamp(42px,10vw,61px)}.intro-right{padding:0}.story-head{display:block}.story-head h2{font-size:44px}.story-head p{margin-top:20px}.gallery-grid{grid-template-columns:1fr 1fr;gap:11px}.gallery-feature{grid-column:1/-1}.gallery-grid figure{height:255px}.gallery-grid figure:first-child{height:340px}.gallery-grid figcaption{font-size:10px;bottom:15px;left:14px;right:14px}.services-heading{display:block;margin-bottom:28px}.services-heading p{margin-top:20px}.service-line{grid-template-columns:32px 1fr 20px;gap:15px;padding:24px 0}.service-line h3{font-size:clamp(19px,5.3vw,31px)}.process-row{grid-template-columns:1fr;gap:22px}.process-row article{padding-top:16px}.process-row h3{margin:13px 0}.process-section h2{margin-bottom:38px}.closing-content{min-height:420px;padding:75px 0}.closing-mark{width:140px;height:140px;right:-30px;top:20px;opacity:.23}.closing-content h2{position:relative;z-index:1}.footer-top{grid-template-columns:1fr 1fr;gap:28px}.footer-top>div:first-child{grid-column:1/-1}.foot-logo img{width:190px}.footer-bottom{flex-direction:column;gap:6px}.value-grid{gap:12px}.value-grid span{margin-bottom:10px}.form-card{padding:34px 27px;min-height:auto}.page-gallery{padding:0 0 55px}.page-gallery-inner{grid-template-columns:1fr;gap:36px}.page-gallery-inner img{height:350px}.page-gallery-inner>div{padding:0 0 10px}}
@media(max-width:385px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:46px}.hero-links{gap:16px}.text-action{gap:10px}.gallery-grid figure{height:230px}.value-grid{grid-template-columns:1fr;gap:5px}.value-grid span{margin:0}.value-grid>div{padding:12px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}[data-reveal]{opacity:1!important;transform:none!important}}

/* Brand activations gallery: display the full four-person group instead of cropping people out. */
@media(min-width:741px){.gallery-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:repeat(2,238px)}.gallery-grid .gallery-feature{grid-column:1;grid-row:1/3;height:490px}.gallery-grid figure:not(.gallery-feature){grid-column:2;height:238px}.gallery-grid .gallery-feature img{object-position:center}}
@media(max-width:740px){.gallery-grid .gallery-feature{height:auto;aspect-ratio:1672/941;min-height:210px}.gallery-grid .gallery-feature img{object-fit:cover;object-position:center}}
.gallery-grid figure{min-width:0;max-width:100%}
.gallery-grid .gallery-feature img{max-width:100%}
@media(max-width:740px){.gallery-grid figure.gallery-feature{height:auto;aspect-ratio:1672/941;min-height:0}.gallery-grid figure.gallery-feature img{height:100%;object-fit:cover}}

/* Event support: portrait photo — retain both women in the shorter desktop gallery tile. */
@media(min-width:741px){.gallery-grid figure:last-child img{object-position:center 29%}}

/* Book Now · authentic trio portrait hero */
.hero--book .hero-photo img{object-position:center 45%;}
.hero--book .hero-shade{background:linear-gradient(90deg,rgba(10,17,21,.96) 0%,rgba(10,17,21,.86) 22%,rgba(10,17,21,.62) 42%,rgba(10,17,21,.16) 77%,rgba(10,17,21,.10) 100%),linear-gradient(0deg,rgba(10,16,20,.49),transparent 31%)}
.hero--book .hero-copy{max-width:640px;}
.hero--book h1{font-size:clamp(55px,5.9vw,90px);line-height:1.045;letter-spacing:-.072em;}
@media(max-width:740px){
 .hero--book{background:#141d20;min-height:795px;}
 .hero--book .hero-photo{top:76px;bottom:auto;height:min(300px,77vw);}
 .hero--book .hero-photo img{object-fit:cover;object-position:center 40%;animation:none;}
 .hero--book .hero-shade{background:linear-gradient(0deg,#10181b 0%,#10181bf7 36%,#10181bcb 48%,transparent 69%);}
 .hero--book .hero-content{min-height:795px;padding-top:335px;padding-bottom:70px;align-items:flex-end;}
 .hero--book h1{font-size:clamp(43px,10vw,60px);line-height:1.04;letter-spacing:-.067em;}
}


/* Join · Good people: editorial full-bleed photo dissolving into the website.
   Only the Join page uses this treatment; booking and homepage remain untouched. */
.page-gallery--join {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 0;
  min-height: 610px;
  background:
    radial-gradient(ellipse at 72% 50%, rgba(124, 63, 28, .20), transparent 50%),
    linear-gradient(110deg, #151c20, #211b19 72%, #15191c);
}
.page-gallery--join::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(20, 28, 32, .4), transparent 16%, transparent 74%, #12191d 100%);
}
.page-gallery--join .page-gallery-inner {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 610px;
  gap: 0;
}
.page-gallery--join .page-gallery-inner > img {
  position: absolute;
  z-index: 0;
  top: 0;
  right: -4%;
  width: 65%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  object-position: center 48%;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 27%, #000 94%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, #000 27%, #000 94%, transparent 100%);
}
.page-gallery--join .page-gallery-inner > div {
  position: relative;
  z-index: 2;
  width: 45%;
  padding: 105px 0;
}
.page-gallery--join .page-gallery-inner h2 {
  font-size: clamp(44px, 5.1vw, 74px);
  letter-spacing: -.065em;
  line-height: 1.08;
  margin-top: 24px;
}
.page-gallery--join .page-gallery-inner .eyebrow { color: #f3c3ad; }
@media (max-width: 900px) and (min-width: 741px) {
  .page-gallery--join .page-gallery-inner > img { width: 70%; right: -8%; }
  .page-gallery--join .page-gallery-inner > div { width: 51%; }
}
@media (max-width: 740px) {
  .page-gallery--join { min-height: 770px; padding: 0; }
  .page-gallery--join::after {
    background: linear-gradient(to bottom, transparent 0%, transparent 33%, rgba(21, 28, 32, .12) 55%, #12191d 96%);
  }
  .page-gallery--join .page-gallery-inner {
    min-height: 770px;
    display: flex;
    align-items: flex-end;
  }
  .page-gallery--join .page-gallery-inner > img {
    position: absolute;
    top: 0;
    right: -21px;
    width: calc(100% + 42px);
    height: 565px;
    object-fit: cover;
    object-position: center 46%;
    -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 56%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 0%, #000 56%, transparent 100%);
  }
  .page-gallery--join .page-gallery-inner > div {
    width: 100%;
    padding: 535px 0 65px;
  }
  .page-gallery--join .page-gallery-inner h2 {
    font-size: clamp(43px, 10.5vw, 64px);
    margin-top: 16px;
  }
}


/* Braize photo diary: mixed ratios / continuous, user-controllable motion. */
.showreel{position:relative;overflow:hidden;background:#10181c;color:#f5f5f2;padding:100px 0 72px;isolation:isolate}
.showreel:before{content:"";position:absolute;top:-240px;right:-220px;width:700px;height:700px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(214,66,24,.09),transparent 67%)}
.showreel-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:end;margin-bottom:45px}
.showreel .eyebrow{color:#fb936a}
.showreel-heading h2{font-size:clamp(41px,4.9vw,79px);letter-spacing:-.064em;line-height:1.08;margin-top:18px}
.showreel-heading-right{display:flex;align-items:end;flex-direction:column;gap:25px;padding-bottom:7px}
.showreel-heading-right>p{color:#bec6c7;max-width:330px;font-size:14px;line-height:1.8}
.showreel-controls{display:flex;align-items:center;gap:10px}
.showreel-controls button{color:#f5f5f2;border:1px solid #ffffff57;background:transparent;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}
.showreel-controls button:hover{background:#ffffff16;border-color:#e9613b}
.showreel-arrow{width:42px;height:42px;display:grid;place-items:center;font-size:22px}
.showreel-toggle{min-width:98px;height:42px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}
.showreel-viewport{position:relative;width:100%;overflow:hidden;touch-action:pan-y;outline-offset:-5px;overscroll-behavior-x:contain}
.showreel-viewport:before,.showreel-viewport:after{position:absolute;z-index:2;content:"";pointer-events:none;top:0;bottom:0;width:clamp(18px,5vw,90px)}
.showreel-viewport:before{left:0;background:linear-gradient(90deg,#10181c,transparent)}
.showreel-viewport:after{right:0;background:linear-gradient(270deg,#10181c,transparent)}
.showreel-track{display:flex;gap:18px;align-items:stretch;width:max-content;will-change:transform;transform:translate3d(0,0,0)}
.showreel-run{display:flex;gap:18px;align-items:center;flex:0 0 auto;padding:16px 0 16px 0}
.showreel-item{flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;min-width:0;margin:0}
.showreel-item img{display:block;object-fit:contain;max-width:none;width:auto;height:var(--photo-height);max-height:none;filter:saturate(.95);background:transparent}
.showreel-item--portrait{--photo-height:430px}
.showreel-item--landscape{--photo-height:300px}
.showreel-item--wide{--photo-height:280px}
.showreel-item--detail{--photo-height:345px}
.showreel-item figcaption{display:flex;align-items:center;justify-content:space-between;color:#c5cac8;font-size:10px;letter-spacing:.105em;text-transform:uppercase;line-height:1.2;padding-top:12px;gap:20px}
.showreel-star{color:#e7592c;font-size:18px}
.showreel-foot{display:flex;justify-content:space-between;gap:25px;color:#a2aeb0;font-size:10px;text-transform:uppercase;letter-spacing:.13em;padding-top:29px}
.showreel-foot span:last-child{color:#f08863}
@media(max-width:740px){
.showreel{padding:75px 0 53px}
.showreel-heading{display:block;margin-bottom:30px}
.showreel-heading h2{font-size:clamp(42px,10vw,59px)}
.showreel-heading-right{align-items:flex-start;gap:19px;padding:16px 0 0}
.showreel-heading-right>p{font-size:13px;max-width:410px}
.showreel-track,.showreel-run{gap:12px}
.showreel-run{padding:8px 0}
.showreel-item--portrait{--photo-height:310px}
.showreel-item--landscape{--photo-height:225px}
.showreel-item--wide{--photo-height:205px}
.showreel-item--detail{--photo-height:260px}
.showreel-item figcaption{font-size:9px;padding-top:8px}
.showreel-foot{font-size:9px;line-height:1.6;gap:16px;padding-top:20px}
.showreel-foot span:last-child{text-align:right}
}
@media(prefers-reduced-motion:reduce){.showreel-track{will-change:auto}.showreel-controls button{transition:none}}

/* Photo-only carousel: no visible copy; unobtrusive accessible controls. */
.showreel{padding:30px 0 32px}
.showreel:before{display:none}
.showreel-controls{position:absolute;right:clamp(16px,4vw,62px);bottom:14px;z-index:5;gap:7px}
.showreel-controls button{background:#10181cd6;border-color:#ffffff45;border-radius:50%;width:37px;height:37px;min-width:37px;display:flex;align-items:center;justify-content:center;padding:0}
.showreel-toggle{font-size:14px;letter-spacing:0}
.showreel-run{padding:12px 0}
.showreel-item{margin:0}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:740px){.showreel{padding:14px 0 38px}.showreel-controls{right:16px;bottom:5px}.showreel-run{padding:8px 0}.showreel-controls button{width:34px;height:34px;min-width:34px}}

/* Booking cover: an editorial split composition, rather than words over faces.
   The unchanged Braize team portrait stays on the right; soft gradients dissolve
   the image into the brand's dark page background. */
.hero--book {
  background: radial-gradient(ellipse at 78% 48%,#603922 0%,#33271f 42%,#10191c 85%);
}
.hero--book .hero-photo {
  top:0;
  bottom:0;
  left:42%;
  right:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  background:transparent;
}
.hero--book .hero-photo img {
  width:100%;
  height:auto;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  animation:none;
}
.hero--book .hero-photo::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,#10191c 0%,rgba(16,25,28,.75) 8%,transparent 26%),
             linear-gradient(0deg,#10191c 0%,transparent 25%,transparent 77%,rgba(16,25,28,.55) 100%);
}
.hero--book .hero-shade {
  background:linear-gradient(90deg,rgba(13,20,24,.97) 0%,rgba(13,20,24,.93) 27%,rgba(13,20,24,.35) 46%,transparent 68%),
             linear-gradient(0deg,rgba(12,17,20,.65) 0%,transparent 22%);
}
.hero--book .hero-copy {max-width:490px;}
.hero--book h1 {font-size:clamp(55px,5.8vw,88px);}
@media(min-width:741px) and (max-width:1100px){
  .hero--book .hero-photo {left:44%;}
  .hero--book .hero-copy {max-width:370px;}
  .hero--book h1 {font-size:clamp(48px,5.5vw,62px);}
  .hero--book .hero-desc {max-width:340px;}
  .hero--book .hero-links {gap:15px;}
}
@media(max-width:740px){
  .hero--book{min-height:780px;background:linear-gradient(180deg,#231b18 0%,#10191c 47%,#10191c 100%);}
  .hero--book .hero-photo {top:76px;left:0;right:0;bottom:auto;height:340px;align-items:flex-start;justify-content:center;}
  .hero--book .hero-photo img {width:100%;height:auto;max-height:340px;object-fit:contain;object-position:center;animation:none;}
  .hero--book .hero-photo::after{background:linear-gradient(0deg,#10191c 0%,transparent 36%),linear-gradient(90deg,#10191c44,transparent 13%,transparent 87%,#10191c44);}
  .hero--book .hero-shade{background:linear-gradient(0deg,#10191c 0%,transparent 40%,transparent 84%,#10191c22);}
  .hero--book .hero-content{min-height:780px;padding-top:345px;padding-bottom:74px;align-items:flex-end;}
  .hero--book .hero-copy {max-width:100%;}
  .hero--book h1 {font-size:clamp(43px,10vw,60px);}
}
/* Image-edge dissolve: fade the actual photo, not a rectangular dark overlay. */
@media(min-width:741px){
 .hero--book .hero-photo img{
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%),linear-gradient(to right,transparent 0%,#000 18%,#000 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%),linear-gradient(to right,transparent 0%,#000 18%,#000 100%);
  mask-composite:intersect;
 }
 .hero--book .hero-photo::after{background:none}
}
@media(max-width:740px){
 .hero--book .hero-photo img{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 64%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 64%,transparent 100%)}
 .hero--book .hero-photo::after{background:none}
}

/* CG global ban: no Unicode/emoji glyphs for public-site UI.
   Accessible functionality uses semantic buttons + CSS-drawn chevrons/pause/play. */
.btn{justify-content:center}
.nav-links .nav-contact{gap:0}
.text-action,.inline-link{gap:0}
.gallery-grid figcaption{justify-content:flex-start}
.service-line{grid-template-columns:70px minmax(0,1fr)}
.ticker-separator{display:inline-block;width:7px;height:7px;margin:0 30px 1px;background:var(--orange);transform:rotate(45deg);border-radius:1px;vertical-align:middle}
.showreel-arrow .carousel-chevron{display:block;width:11px;height:11px;border-top:2px solid currentColor;border-right:2px solid currentColor}
.carousel-chevron--prev{transform:translateX(3px) rotate(-135deg)}
.carousel-chevron--next{transform:translateX(-3px) rotate(45deg)}
.showreel-toggle .carousel-state-icon{position:relative;display:block;width:14px;height:15px}
.showreel-toggle .carousel-state-icon::before,.showreel-toggle .carousel-state-icon::after{content:'';position:absolute;top:2px;bottom:2px;width:3px;background:currentColor;border-radius:1px}
.showreel-toggle .carousel-state-icon::before{left:3px}
.showreel-toggle .carousel-state-icon::after{right:3px}
.showreel-toggle[data-state=paused] .carousel-state-icon::before{width:0;height:0;top:1px;bottom:auto;left:3px;border-left:11px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent;background:transparent;border-radius:0}
.showreel-toggle[data-state=paused] .carousel-state-icon::after{display:none}
@media(max-width:740px){.service-line{grid-template-columns:32px minmax(0,1fr)}.ticker-separator{margin:0 23px 1px}}


/* Braize: premium functional button system; no Unicode or emoji icon shortcuts. */
.btn,.nav-contact,.btn--glass{position:relative;isolation:isolate;overflow:hidden;border-radius:11px;font-weight:700;letter-spacing:.01em;text-decoration:none;white-space:nowrap;transition:background-color .22s ease,box-shadow .22s ease,border-color .22s ease,transform .22s ease,color .22s ease}
.btn{min-height:56px;padding:17px 27px;border:1px solid transparent;justify-content:center;box-shadow:0 9px 25px rgba(0,0,0,.15)}
.btn::before,.nav-contact::before{content:'';position:absolute;inset:0 0 auto;height:45%;pointer-events:none;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.13),transparent);opacity:.7}
.btn--solid{background:linear-gradient(140deg,#f46c40 0%,#dc4a25 48%,#bc3519 100%);color:#fff;border-color:rgba(255,187,153,.36);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 13px 29px rgba(127,32,13,.29);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.btn--solid:hover{background:linear-gradient(140deg,#fb7950,#e4552e 56%,#c6401e);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 17px 34px rgba(127,32,13,.36);transform:translateY(-2px)}
.btn--glass{background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.075) 70%);color:#fff;border-color:rgba(255,255,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 13px 30px rgba(0,0,0,.17);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}
.btn--glass:hover{background:linear-gradient(135deg,rgba(255,255,255,.28),rgba(255,255,255,.14));border-color:rgba(255,255,255,.68);transform:translateY(-2px)}
.btn--dark{background:linear-gradient(135deg,#34444b,#182329);color:#fff;border-color:rgba(6,23,29,.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 12px 30px rgba(10,22,28,.17)}
.btn--dark:hover{background:linear-gradient(135deg,#455a62,#23323a);transform:translateY(-2px)}
.nav-links .nav-contact{min-height:45px;padding:14px 22px;border-color:rgba(255,255,255,.42);background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.05));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 9px 25px rgba(0,0,0,.11)}
.nav-links .nav-contact:hover{background:rgba(255,255,255,.22);color:#fff;border-color:rgba(255,255,255,.7)}
.closing-content .btn--solid{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(249,240,233,.84));color:#542014;border:1px solid rgba(255,255,255,.65);box-shadow:inset 0 1px 0 #fff,0 15px 30px rgba(78,21,7,.2)}
.closing-content .btn--solid:hover{background:#fff;box-shadow:inset 0 1px 0 #fff,0 18px 36px rgba(78,21,7,.25)}
.btn:active,.nav-links .nav-contact:active{transform:translateY(0) scale(.985)}
.btn:focus-visible,.nav-links .nav-contact:focus-visible,.social-link:focus-visible,.showreel-controls button:focus-visible{outline:3px solid #ff9b6b;outline-offset:4px}
.hero-links{flex-wrap:wrap;gap:14px}
.showreel-controls button{background:linear-gradient(135deg,rgba(31,45,52,.83),rgba(12,20,26,.7));border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 6px 18px rgba(0,0,0,.2)}
/* Real owner-provided social handles, text-only and accessible. */
.footer-top{grid-template-columns:minmax(180px,1.15fr) minmax(90px,.52fr) minmax(165px,1fr) minmax(230px,1.15fr);gap:clamp(18px,3vw,52px)}
.footer-top>div{min-width:0}
.footer-social-title{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:700;color:#e4b6a3;margin-bottom:12px}
.social-grid{display:grid;grid-template-columns:1fr;gap:8px}
.social-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:11px 13px;border-radius:9px;border:1px solid rgba(255,255,255,.17);background:linear-gradient(140deg,rgba(255,255,255,.105),rgba(255,255,255,.035));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.07);transition:background-color .2s,border-color .2s,transform .2s}
.social-link:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.43);transform:translateY(-1px)}
.social-platform{font-weight:750;font-size:12px;color:#fff}
.social-handle{font-size:11px;font-weight:500;color:#d3aa98;overflow-wrap:anywhere;text-align:right}
.footer-links a{overflow-wrap:anywhere}
@media(max-width:970px){.footer-top{grid-template-columns:1fr 1fr;gap:35px}.footer-top>div:first-child{grid-column:1/-1}.footer-social{grid-column:1/-1}.social-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.social-link{flex-direction:column;align-items:flex-start;justify-content:center;gap:4px}}
@media(max-width:740px){.nav-links .nav-contact{width:100%;justify-content:center;padding:16px 18px}.btn{min-height:52px;padding:15px 19px}.hero-links{gap:12px}.hero-links .btn{font-size:11px}.social-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.social-link{min-height:68px}.social-link--facebook{grid-column:1/-1;min-height:55px;flex-direction:row;align-items:center;justify-content:space-between}.footer-top{gap:28px}}
@media(max-width:385px){.btn{padding:14px 16px}.hero-links{gap:9px}.hero-links .btn{font-size:10.5px}.social-link{padding:10px 11px}.social-handle{font-size:10px}}
@media(prefers-reduced-motion:reduce){.btn,.nav-contact,.social-link,.showreel-controls button{transition:none!important}.btn:hover,.social-link:hover{transform:none}}
