*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090909;color:#f2f0eb;font-family:"DM Sans",Arial,sans-serif;font-size:15px}a{color:inherit;text-decoration:none}img{width:100%;height:100%;object-fit:cover;display:block}.nav{height:84px;position:fixed;z-index:20;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:rgba(9,9,9,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.brand{display:flex;flex-direction:column;font-family:Oswald,sans-serif;line-height:.9}.brand-main{font-size:22px;letter-spacing:1.5px;font-weight:500}.brand-sub{font-size:9px;letter-spacing:4px;color:#ff5a00;margin-top:6px}.nav nav{display:flex;align-items:center;gap:34px;text-transform:uppercase;font-size:10px;letter-spacing:1.6px}.nav nav a{opacity:.8}.nav nav a:hover{opacity:1;color:#ff5a00}.nav-cta{border:1px solid rgba(255,90,0,.7);padding:12px 18px!important;opacity:1!important}.menu{display:none;background:none;border:0;color:#fff;font-size:25px}.hero{height:100vh;min-height:700px;position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero-media{position:absolute;inset:0;background-image:url("images/hero.jpg");background-position:center;background-size:cover;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.48) 48%,rgba(0,0,0,.12)),linear-gradient(0deg,rgba(0,0,0,.82),transparent 50%)}.hero-copy{position:relative;z-index:2;padding:0 8% 9%;max-width:1000px}.kicker,.eyebrow{font-size:10px;letter-spacing:3px;color:#ff5a00;font-weight:600;text-transform:uppercase}.hero h1{font-family:Oswald,sans-serif;font-size:clamp(70px,10vw,148px);line-height:.84;font-weight:400;letter-spacing:-2px;margin:20px 0 28px;text-transform:uppercase}.hero h1 span{color:#ff5a00}.hero p{max-width:570px;color:#ddd;line-height:1.7;font-size:17px}.hero-actions{display:flex;gap:12px;margin-top:34px}.btn{border:1px solid #ff5a00;padding:16px 22px;text-transform:uppercase;letter-spacing:1.2px;font-size:10px;font-weight:600;display:inline-flex;gap:20px;align-items:center;justify-content:space-between}.btn b{font-size:17px;font-weight:400}.solid{background:#ff5a00;color:#fff}.ghost:hover{background:#ff5a00}.scroll{position:absolute;right:5%;bottom:7%;font-size:9px;letter-spacing:3px;color:#aaa;z-index:2}.scroll span{color:#ff5a00;font-size:17px;margin-left:8px}.hero-mark{position:absolute;right:5%;top:18%;font-family:Oswald;font-size:75px;z-index:2;opacity:.12}.hero-mark span{font-size:12px}.intro{padding:150px 8%;display:grid;grid-template-columns:1fr 2fr;gap:70px;background:#0c0c0c}.intro h2,.section-top h2,.services h2,.about h2,.contact h2{font-family:Oswald;font-weight:300;text-transform:uppercase;font-size:clamp(55px,7vw,100px);line-height:.88;margin:0 0 30px}.intro h2 i,.services h2 i,.about h2 i,.contact h2 i,.statement h2 i{color:#ff5a00;font-style:normal}.intro p{max-width:720px;font-size:20px;line-height:1.65;color:#aaa;margin:0}.portfolio{padding:120px 6%}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.section-top h2{margin-top:15px}.view-all{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#bbb}.view-all span{color:#ff5a00;font-size:20px;margin-left:10px}.masonry{display:grid;grid-template-columns:1.15fr .85fr 1fr;grid-template-rows:310px 310px;gap:12px}.tile{margin:0;position:relative;overflow:hidden;background:#1a1a1a}.tile img{transition:transform .7s;filter:saturate(.88)}.tile:hover img{transform:scale(1.045);filter:saturate(1)}.tile figcaption{position:absolute;left:20px;bottom:18px;font-size:9px;letter-spacing:2px;text-shadow:0 1px 8px #000}.t1{grid-row:span 2}.t4{grid-column:2}.t5{grid-column:3}.edit-note{font-size:10px;color:#666;margin-top:18px}.services{padding:130px 8%;background:#151515}.service-list{margin-top:60px;border-top:1px solid #333}.service-list article{display:grid;grid-template-columns:70px 1fr 30px;align-items:center;padding:32px 0;border-bottom:1px solid #333;transition:.25s}.service-list article:hover{padding-left:15px;background:#191919}.service-list span{font-family:Oswald;color:#666;font-size:18px}.service-list h3{font-family:Oswald;font-size:38px;text-transform:uppercase;font-weight:400;margin:0 0 5px}.service-list p{margin:0;color:#888;font-size:12px}.service-list b{color:#ff5a00;font-size:23px;font-weight:300}.about{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.about-photo{background:url("images/about.jpg") center/cover;min-height:550px}.about-copy{background:#eceae5;color:#111;padding:12%;display:flex;flex-direction:column;justify-content:center}.about-copy .eyebrow{color:#ff5a00}.about-copy h2{font-size:clamp(55px,6vw,90px)}.about-copy p{color:#555;line-height:1.8;max-width:550px}.text-link{color:#111;text-transform:uppercase;font-size:10px;letter-spacing:2px;margin-top:20px}.statement{padding:160px 8%;background:#ff5a00;color:#0b0b0b}.statement .eyebrow{color:#111}.statement h2{font-family:Oswald;text-transform:uppercase;font-size:clamp(70px,10vw,145px);font-weight:300;line-height:.82;margin:35px 0 0}.statement h2 i{color:#111}.contact{padding:140px 8%;display:grid;grid-template-columns:1.2fr .8fr;gap:100px}.contact p{max-width:600px;color:#999;line-height:1.8;font-size:16px}.contact-meta{margin-top:50px;display:grid;grid-template-columns:80px 1fr;gap:13px 25px;font-size:10px;letter-spacing:1.5px}.contact-meta span{color:#ff5a00}.contact-meta a:hover{color:#ff5a00}form{display:flex;flex-direction:column;gap:24px}label{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:#aaa}input,textarea{display:block;width:100%;margin-top:10px;padding:15px 0;background:transparent;border:0;border-bottom:1px solid #3a3a3a;color:#fff;font:inherit;outline:0}input:focus,textarea:focus{border-color:#ff5a00}form .btn{margin-top:10px;align-self:flex-start}footer{padding:40px 6%;border-top:1px solid #222;display:flex;justify-content:space-between;align-items:center;color:#666;font-size:9px;letter-spacing:1.5px}footer>a:hover{color:#ff5a00}
@media(max-width:800px){.nav nav{display:none}.menu{display:block}.nav.open nav{display:flex;position:absolute;top:84px;left:0;right:0;background:#0d0d0d;padding:25px 7%;flex-direction:column;align-items:flex-start;gap:22px}.hero-copy{padding:0 7% 18%}.hero h1{font-size:68px}.intro,.contact{grid-template-columns:1fr;gap:35px}.intro{padding:100px 7%}.portfolio,.services,.contact{padding:95px 7%}.masonry{grid-template-columns:1fr 1fr;grid-template-rows:280px 280px 280px}.t1{grid-row:span 2}.t4,.t5{grid-column:auto}.about{grid-template-columns:1fr}.about-copy{padding:90px 8%}.statement{padding:110px 7%}.service-list article{grid-template-columns:45px 1fr 25px}.service-list h3{font-size:30px}footer{flex-direction:column;align-items:flex-start;gap:20px}}
@media(max-width:500px){.hero h1{font-size:56px}.hero p{font-size:15px}.hero-actions{flex-direction:column;align-items:flex-start}.masonry{grid-template-columns:1fr;grid-template-rows:330px 260px 260px 260px 260px}.t1{grid-row:auto}.statement h2{font-size:70px}.contact h2{font-size:65px}}

/* ===== PREMIUM GALLERY ===== */
.gallery-page{background:#090909}.gallery-page .nav .active{color:#ff5a00;opacity:1}.gallery-hero{padding:190px 8% 110px;background:#0c0c0c;min-height:500px;display:flex;flex-direction:column;justify-content:flex-end}.gallery-hero h1{font-family:Oswald,sans-serif;font-size:clamp(78px,12vw,170px);line-height:.78;font-weight:300;letter-spacing:-3px;text-transform:uppercase;margin:25px 0 35px}.gallery-hero h1 i{font-style:normal;color:#ff5a00}.gallery-hero p{max-width:620px;color:#999;line-height:1.8;font-size:17px;margin:0}.gallery-wrap{padding:90px 6% 130px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:45px;border-bottom:1px solid #272727;padding-bottom:25px}.gallery-intro{display:flex;flex-direction:column;gap:8px;font-size:9px;letter-spacing:2px}.gallery-intro span{color:#ff5a00}.gallery-intro strong{font-weight:500;color:#777}.filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.filter{background:transparent;color:#777;border:1px solid #303030;padding:11px 15px;font:inherit;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:.2s}.filter:hover,.filter.active{border-color:#ff5a00;color:#fff;background:#ff5a00}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:330px;gap:12px}.gallery-item{position:relative;margin:0;overflow:hidden;background:#151515;min-width:0}.gallery-item:nth-child(1){grid-column:span 7;grid-row:span 2}.gallery-item:nth-child(2){grid-column:span 5}.gallery-item:nth-child(3){grid-column:span 5}.gallery-item:nth-child(4){grid-column:span 5}.gallery-item:nth-child(5){grid-column:span 7}.gallery-open{appearance:none;border:0;padding:0;background:none;display:block;width:100%;height:100%;cursor:pointer;position:relative}.gallery-open img{transition:transform .8s,filter .5s;filter:saturate(.82)}.gallery-item:hover img{transform:scale(1.045);filter:saturate(1)}.gallery-plus{position:absolute;right:22px;top:20px;width:40px;height:40px;border:1px solid rgba(255,255,255,.55);border-radius:50%;display:grid;place-items:center;color:#fff;font-size:22px;font-weight:300;opacity:0;transform:translateY(8px);transition:.3s;background:rgba(0,0,0,.25)}.gallery-item:hover .gallery-plus{opacity:1;transform:translateY(0)}.gallery-item figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;display:flex;align-items:end;justify-content:space-between;gap:20px;pointer-events:none;text-shadow:0 2px 10px #000}.gallery-item figcaption:before{content:"";position:absolute;inset:-80px -25px -20px;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent);z-index:-1}.gallery-item figcaption span{font-size:9px;letter-spacing:2px}.gallery-item figcaption b{font-family:Oswald,sans-serif;font-size:26px;font-weight:300;text-transform:uppercase}.gallery-cta{padding:150px 8%;background:#ff5a00;color:#090909}.gallery-cta .eyebrow{color:#090909}.gallery-cta h2{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:clamp(60px,8vw,120px);line-height:.82;font-weight:300;margin:35px 0 45px}.gallery-cta h2 i{font-style:normal;color:#090909}.gallery-cta .btn{border-color:#090909;background:#090909;color:#fff}.lightbox{position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.96);display:none;align-items:center;justify-content:center;padding:70px 8%;opacity:0;transition:opacity .25s}.lightbox.open{display:flex;opacity:1}.lightbox-content{width:min(1200px,90vw);height:min(82vh,850px);display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox-content img{width:auto;height:auto;max-width:100%;max-height:calc(100% - 50px);object-fit:contain}.lightbox-caption{width:100%;display:flex;justify-content:space-between;align-items:center;padding-top:15px;color:#aaa;font-size:9px;letter-spacing:2px}.lightbox-caption span{color:#ff5a00}.lightbox-caption strong{font-family:Oswald;font-size:22px;font-weight:300;color:#fff;text-transform:uppercase}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:0;background:none;color:#fff;cursor:pointer;font-size:35px;font-weight:200}.lightbox-close{right:35px;top:22px;font-size:42px}.lightbox-prev{left:35px;top:50%;transform:translateY(-50%)}.lightbox-next{right:35px;top:50%;transform:translateY(-50%)}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{color:#ff5a00}
@media(max-width:800px){.gallery-hero{padding:150px 7% 90px}.gallery-wrap{padding:75px 7% 100px}.gallery-toolbar{align-items:flex-start;flex-direction:column}.filters{justify-content:flex-start}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:260px}.gallery-item:nth-child(n){grid-column:span 1;grid-row:span 1}.gallery-item:nth-child(1){grid-column:span 2;grid-row:span 2}.gallery-item figcaption b{font-size:20px}.gallery-cta{padding:110px 7%}.lightbox{padding:60px 12px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-close{right:15px}}
@media(max-width:500px){.gallery-hero h1{font-size:72px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:300px}.gallery-item:nth-child(n){grid-column:span 1;grid-row:span 1}.gallery-item:nth-child(1){grid-row:span 1}.gallery-item figcaption{left:15px;right:15px;bottom:15px}.gallery-item figcaption b{font-size:18px}.gallery-cta h2{font-size:65px}.lightbox-caption{padding:10px 5px}.lightbox-caption strong{font-size:18px}}


/* JOURNAL CONTENT */
.blog-page{background:#090909;color:#f2f0eb;min-height:100vh;padding-top:84px}
.blog-hero{position:relative;padding:110px 8% 90px;background:#0c0c0c;overflow:hidden}
.blog-hero h1,.blog-feature h2,.blog-grid-section h2,.blog-card h3,.blog-cta h2,.blog-mark{font-family:Oswald,sans-serif;text-transform:uppercase}
.blog-hero h1{font-size:clamp(60px,9vw,140px);line-height:.84;font-weight:400;letter-spacing:-2px;margin:20px 0 28px}
.blog-hero h1 em{font-style:normal;color:#ff5a00}.blog-hero p{max-width:600px;color:#aaa;line-height:1.7;font-size:17px}
.blog-mark{position:absolute;right:5%;top:15%;font-size:clamp(100px,13vw,220px);line-height:.8;opacity:.12}.blog-mark span{font-size:.16em}
.blog-feature{display:grid;grid-template-columns:1.2fr 1fr;background:#151515}.blog-feature-image{min-height:520px;background:#1a1a1a;display:grid;place-items:center}
.blog-image-placeholder,.blog-card-image{font-family:Oswald,sans-serif;color:#666;font-size:clamp(30px,5vw,65px);display:grid;place-items:center}
.blog-feature-copy{padding:9%;display:flex;flex-direction:column;justify-content:center}.blog-feature-copy h2{font-size:clamp(42px,5vw,76px);line-height:.9;margin:18px 0}
.blog-feature-copy p:not(.blog-date){color:#aaa;line-height:1.8;max-width:520px}.blog-date{font-size:10px;letter-spacing:2px;color:#777}
.blog-grid-section{padding:120px 8%;background:#0c0c0c}.blog-grid-section h2{font-size:clamp(50px,7vw,100px);line-height:.88;font-weight:300;margin:15px 0 55px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.blog-card{background:#151515;border:1px solid #333}.blog-card-image{aspect-ratio:4/3;background:#1a1a1a;color:#555}
.blog-card-body{padding:28px}.blog-card h3{font-size:32px;line-height:.95;font-weight:400;margin:14px 0}.blog-card p{color:#888;line-height:1.7;font-size:13px}
.text-link{display:inline-block;color:#f2f0eb;text-transform:uppercase;font-size:10px;letter-spacing:2px;margin-top:18px}
.blog-cta{padding:150px 8%;background:#ff5a00;color:#0b0b0b;text-align:center}.blog-cta .eyebrow{color:#0b0b0b}
.blog-cta h2{font-size:clamp(50px,7vw,105px);line-height:.88;font-weight:300;margin:18px 0 35px}.blog-cta h2 em{color:#0b0b0b;font-style:normal}
@media(max-width:900px){.blog-feature{grid-template-columns:1fr}.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.blog-page{padding-top:84px}.blog-hero{padding:90px 8% 70px}.blog-grid-section{padding:90px 8%}.blog-grid{grid-template-columns:1fr}.blog-feature-copy{padding:12% 8%}.blog-cta{padding:110px 8%}.blog-mark{font-size:clamp(70px,22vw,110px)}}


/* Enquiry form status */
.enquiry-status{min-height:18px;margin-top:12px;font-size:12px;line-height:1.5;opacity:.8}
.enquiry-status.success{opacity:1}
.enquiry-status.error{opacity:1}
#enquirySubmit:disabled{opacity:.65;cursor:wait}
