@font-face{font-family:Chromoxome;src:url('assets/fonts/Chromoxome-Regular.otf') format('opentype');font-display:swap}
:root{--orange:#b44f0b;--orange2:#d46718;--black:#080808;--ink:#111;--cream:#f2eee8;--grey:#969696;--line:rgba(255,255,255,.14);--max:1400px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:white;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.display{font-family:Chromoxome,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}.eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--orange2);font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;border:1px solid rgba(255,255,255,.35);padding:15px 22px;text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;font-weight:700;transition:.25s ease;cursor:pointer;background:transparent;color:white}.btn:hover{background:white;color:#111}.btn.orange{background:var(--orange);border-color:var(--orange)}.btn.orange:hover{background:var(--orange2);color:white}.section{padding:72px 0;border-top:1px solid rgba(255,255,255,.08)}

header{position:fixed;z-index:50;top:0;left:0;right:0;background:linear-gradient(to bottom,rgba(0,0,0,.88),rgba(0,0,0,.15),transparent);backdrop-filter:blur(2px)}.nav{height:86px;display:flex;align-items:center;justify-content:space-between}.brand img{height:52px;width:auto;display:block}.navlinks{display:flex;gap:28px;align-items:center}.navlinks a{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:#eee}.navlinks a:hover{color:var(--orange2)}.menuBtn{display:none;background:none;border:0;color:white;font-size:1.4rem}

.hero{height:clamp(600px,76vh,760px);position:relative;display:flex;align-items:flex-end;isolation:isolate;background:#000}.heroVideo{position:absolute;inset:0;overflow:hidden;z-index:-3}.heroVideo video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;pointer-events:none}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 42%,rgba(0,0,0,.16) 72%,rgba(0,0,0,.46) 100%)}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:20%;z-index:-1;background:linear-gradient(transparent,#080808)}.heroContent{padding:130px 0 28px;max-width:820px}.hero h1{font-size:clamp(3.1rem,7vw,7.4rem);line-height:.86;margin:16px 0 26px;font-weight:400}.hero h1 span{color:var(--orange2)}.hero p{font-size:1.05rem;line-height:1.65;max-width:590px;color:#ddd}.heroActions{display:flex;gap:12px;margin-top:10px}.cred{display:flex;gap:18px;flex-wrap:wrap;margin-top:34px;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase;color:#d4d4d4}.cred span:not(:last-child):after{content:"/";margin-left:18px;color:var(--orange2)}

.headingRow{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.headingRow h2{font-size:clamp(2rem,4vw,4rem);margin:5px 0 0;font-weight:400}.headingRow p{max-width:600px;color:#aaa;line-height:1.6;margin:0}.workGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.workCard{position:relative;min-height:420px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#151515;display:flex;align-items:flex-end}.workCard .art{position:absolute;inset:0;transition:transform .5s ease;filter:saturate(.9)}.workCard:hover .art{transform:scale(1.035)}.workCard:after{content:none}.art.al{background:url('assets/images/work-aldwick.jpg') center/cover no-repeat}.art.dig{background:url('assets/images/work-dig-for-victory.jpg') center/cover no-repeat}.art.den{background:url('assets/images/work-denholm.jpg') center/cover no-repeat}.workCard .content{position:relative;z-index:2;padding:24px;width:100%;background:var(--orange);color:#111}.workCard h3{font-family:Chromoxome,Arial,sans-serif;font-weight:400;letter-spacing:.08em;text-transform:uppercase;font-size:1.8rem;margin:5px 0 8px}.workCard p{margin:0 0 18px;color:#111;line-height:1.5;font-size:.9rem}.playRow{display:flex;justify-content:space-between;align-items:center}.playPill{width:42px;height:42px;border-radius:50%;border:1px solid rgba(0,0,0,.65);display:grid;place-items:center;transition:.2s}.workCard:hover .playPill{background:#111;border-color:#111;color:#fff}.workCard .eyebrow{color:#111}.moreRow{display:flex;justify-content:flex-end;margin-top:24px}
.about{background:#101010}.aboutGrid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(40px,6vw,90px);align-items:center}.aboutCopy{max-width:780px}.aboutCopy h2{font-size:clamp(2.5rem,4.6vw,4.8rem);font-weight:400;line-height:.95;margin:8px 0 22px}.aboutCopy p{max-width:700px;color:#bbb;line-height:1.7}.aboutMedia{width:100%;max-width:520px;justify-self:end}.aboutImage{width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#171717}.aboutImage img{width:100%;height:100%;object-fit:cover;object-position:center top}.credentials{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:-18px}.credential{min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 8px;border:1px solid rgba(255,255,255,.12);background:#171717;color:#ddd;font-size:10px;font-weight:700;line-height:1.25;letter-spacing:.04em;text-transform:uppercase}.credentialMark{flex:0 0 30px;width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--orange2);color:var(--orange2);font-size:18px;font-weight:900}.credentialMark svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.credentialMark svg path[d*="M13 5"]{fill:currentColor;stroke:none}.adobeMark{font-family:Arial,sans-serif}.textMark{font-size:9px;letter-spacing:0}

.training{background:var(--cream);color:#111}.training .eyebrow{color:var(--orange)}.training .headingRow p{color:#555}.courseGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.course{min-height:420px;position:relative;overflow:hidden;background:#111;color:#fff;border:1px solid rgba(0,0,0,.08);padding:34px;display:flex;flex-direction:column;justify-content:flex-end}.course:before{content:"";position:absolute;inset:0;opacity:.85}.course.social:before{background:linear-gradient(rgba(0,0,0,.28),rgba(0,0,0,.76)),url('assets/images/training-business.jpg') center/cover no-repeat}.course.cinema:before{background:linear-gradient(rgba(0,0,0,.28),rgba(0,0,0,.76)),url('assets/images/training-cinema.jpg') center/cover no-repeat}.course.wedding:before{background:linear-gradient(rgba(0,0,0,.28),rgba(0,0,0,.76)),url('assets/images/training-wedding.jpg') center/cover no-repeat}.course .inner{position:relative;z-index:1;max-width:520px}.course h3{font-size:clamp(2rem,4vw,3.5rem);font-weight:400;margin:8px 0 12px}.course p{line-height:1.6;color:#ddd}.course .meta{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:#d6d6d6;margin:0 0 22px}

.weddings{position:relative;background:#0c0c0c;overflow:hidden}.weddingsGrid{display:grid;grid-template-columns:1.05fr .95fr;min-height:540px}.weddingsCopy{padding:70px 6vw 70px max(32px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center}.weddingsCopy h2{font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:.95;margin:10px 0 20px}.weddingsCopy h2 span{color:var(--orange2)}.weddingsCopy p{color:#bbb;line-height:1.7;max-width:570px}.weddingVisual{position:relative;background:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.4)),url('assets/images/weddings-main.jpg') center/cover no-repeat}.weddingVisual:after{content:"";position:absolute;inset:12%;border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,rgba(255,255,255,.03),transparent);box-shadow:0 0 80px rgba(180,79,11,.18)}.weddingVisual .emblem{position:absolute;inset:0;display:grid;place-items:center}.weddingVisual img{width:min(62%,520px);filter:drop-shadow(0 22px 50px rgba(0,0,0,.75));opacity:.9}

.legacy{background:var(--cream);color:#111;padding:72px 0;border-top:1px solid rgba(0,0,0,.08)}.legacyGrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.legacyCopy .eyebrow{color:var(--orange)}.legacyCopy h2{font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:.95;margin:10px 0 20px}.legacyCopy p{color:#444;line-height:1.7;max-width:610px}.legacyCopy .btn:not(.orange){color:#111;border-color:rgba(0,0,0,.35)}.legacyCopy .btn:not(.orange):hover{background:#111;color:#fff}.legacyVisual{display:grid;grid-template-columns:.42fr .58fr;align-items:stretch;min-height:360px;background:#fff;border:1px solid rgba(0,0,0,.08)}.legacyLogo{width:82%;max-width:390px;align-self:center;justify-self:center}.legacyImage{background:linear-gradient(rgba(0,0,0,.05),rgba(0,0,0,.2)),url('assets/images/legacy-main.jpg') center/cover no-repeat;min-height:360px}

.contact{background:var(--orange);color:#fff;padding:72px 0 36px}.contactGrid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact h2{font-size:clamp(2.6rem,5.5vw,5.4rem);font-weight:400;line-height:.95;margin:10px 0 18px}.contact p{line-height:1.65;max-width:560px}.form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form input,.form textarea,.form select{width:100%;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.34);color:#fff;padding:14px;font:inherit;outline:none}.form input::placeholder,.form textarea::placeholder{color:rgba(255,255,255,.72)}.form textarea{grid-column:1/-1;min-height:130px;resize:vertical}.form .full{grid-column:1/-1}.contactDetails{margin-top:28px;display:flex;gap:24px;flex-wrap:wrap;font-size:.9rem}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:42px;margin-top:42px;border-top:1px solid rgba(255,255,255,.24);font-size:.75rem}.footer img{height:44px}.footerLinks{display:flex;gap:20px}
.formTrap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form button:disabled{cursor:wait;opacity:.65}.formStatus{margin:0;font-size:.8rem}.formStatus.success{font-weight:700}.formStatus.error{font-weight:700;color:#2a0900}
.modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.96);display:none;align-items:center;justify-content:center;padding:24px}.modal.open{display:flex}.modalBox{width:min(1100px,95vw);aspect-ratio:16/9;position:relative}.modal video{width:100%;height:100%;display:block;background:#000}.modalClose{position:absolute;right:0;top:-45px;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer}

@media(max-width:900px){.wrap{width:min(100% - 34px,var(--max))}.navlinks{display:none;position:absolute;top:76px;left:16px;right:16px;background:#0b0b0b;padding:18px;flex-direction:column;align-items:flex-start;border:1px solid rgba(255,255,255,.12)}.navlinks.open{display:flex}.menuBtn{display:block}.hero h1{font-size:clamp(3rem,15vw,5.2rem)}.workGrid,.courseGrid,.weddingsGrid,.legacyGrid,.contactGrid{grid-template-columns:1fr}.aboutGrid{grid-template-columns:minmax(0,1fr) minmax(260px,.75fr);gap:32px}.aboutImage{width:100%}.legacyVisual{grid-template-columns:1fr}.legacyLogo{padding:38px 0}.legacyImage{min-height:320px}.workCard{min-height:340px}.weddingVisual{min-height:380px}.headingRow{align-items:flex-start;flex-direction:column}.form{grid-template-columns:1fr}.form textarea,.form .full{grid-column:auto}.footer{align-items:flex-start;flex-direction:column}.heroVideo video{width:100%;height:100%;object-fit:cover}.section{padding:54px 0}}
@media(max-width:560px){.wrap{width:calc(100% - 26px)}.brand img{height:40px}.nav{height:70px}.hero{height:clamp(620px,82vh,700px)}.heroContent{padding:100px 0 24px}.heroActions{flex-direction:column;align-items:stretch}.heroActions .btn{width:100%}.cred{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.cred span:after{display:none}.aboutGrid{grid-template-columns:1fr}.aboutMedia{width:100%;max-width:none;grid-row:1;justify-self:stretch}.credential{font-size:9px;padding:8px 6px;gap:6px}.credentialMark{flex-basis:26px;width:26px;height:26px}.course{min-height:360px;padding:26px}.weddingsCopy{padding:56px 24px}.contactDetails{flex-direction:column;gap:8px}.footerLinks{flex-wrap:wrap}}

/* EDITABLE CLIENT LOGO TICKER
   Replace assets/images/brands/brand-01.png through brand-20.png.
   Keep the filenames unchanged and the ticker updates automatically. */
.brandTicker{background:#0a0a0a;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);padding:9px 0 11px;overflow:hidden}
.tickerLabel{text-align:center;color:#8f8f8f;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:7px}
.tickerWindow{width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.tickerTrack{display:flex;align-items:center;width:max-content;animation:brandTickerMove 38s linear infinite;will-change:transform}
.brandTicker:hover .tickerTrack{animation-play-state:paused}
.brandItem{flex:0 0 150px;height:58px;margin:0 8px;display:flex;align-items:center;justify-content:center}
.brandItem img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:grayscale(1);opacity:.78;transition:opacity .2s ease,filter .2s ease}
.brandItem:hover img{filter:none;opacity:1}
@keyframes brandTickerMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:700px){.brandItem{flex-basis:118px;height:48px;margin:0 6px}.tickerTrack{animation-duration:30s}}
@media(prefers-reduced-motion:reduce){.tickerTrack{animation:none}.tickerWindow{overflow-x:auto}}
@media(max-width:900px){.credentials{grid-template-columns:repeat(3,1fr);margin-top:0}}
@media(max-width:560px){.credentials{grid-template-columns:repeat(2,1fr)}.credential{justify-content:flex-start}}
.serviceHero{padding:150px 0 72px;background:#0b0b0b}.serviceHeroGrid{display:grid;grid-template-columns:1fr .85fr;gap:clamp(40px,7vw,100px);align-items:center}.serviceHero h1{font-size:clamp(3.2rem,6.5vw,7rem);font-weight:400;line-height:.9;margin:12px 0 24px}.serviceHero p{max-width:640px;color:#c4c4c4;font-size:1.08rem;line-height:1.7;margin-bottom:28px}.serviceHero img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(255,255,255,.1)}.serviceBody{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,120px);align-items:start}.serviceBody h2,.serviceCta h2{font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:.95;margin:0 0 22px}.serviceBody p{color:#aaa;line-height:1.75}.servicePoints{display:grid;grid-template-columns:1fr 1fr;gap:12px}.servicePoints div{padding:24px;border:1px solid rgba(255,255,255,.1);background:#111}.servicePoints strong{display:block;color:var(--orange2);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.servicePoints span{color:#aaa;line-height:1.55}.serviceCta{background:var(--orange);padding:64px 0}.serviceCta .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.serviceCta h2{margin:0}.serviceNav{display:flex!important}
@media(max-width:900px){.serviceHeroGrid,.serviceBody{grid-template-columns:1fr}.serviceHero{padding-top:120px}.serviceHero img{max-height:460px}.serviceCta .wrap{align-items:flex-start;flex-direction:column}.serviceNav{display:none!important}}
@media(max-width:560px){.servicePoints{grid-template-columns:1fr}.serviceHero{padding:105px 0 52px}}
.serviceDirectory{padding:72px 0;background:#080808;border-top:1px solid rgba(255,255,255,.08)}.serviceDirectory h2{font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:.95;margin:8px 0 30px}.serviceDirectoryGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.serviceDirectoryGrid a{padding:22px;border:1px solid rgba(255,255,255,.11);background:#111;transition:.2s}.serviceDirectoryGrid a:hover{border-color:var(--orange);transform:translateY(-2px)}.serviceDirectoryGrid strong{display:block;color:#fff;font-size:1.05rem;margin-bottom:7px}.serviceDirectoryGrid span{color:#999;font-size:.9rem;line-height:1.45}
@media(max-width:800px){.serviceDirectoryGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.serviceDirectoryGrid{grid-template-columns:1fr}}
