
:root{--orange:#ff8300;--orange2:#ffb000;--blue:#156cff;--pink:#ef8eac;--bg:#070707;--panel:#111;--text:#fff;--muted:#aaa;--line:rgba(255,255,255,.13);--max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.shell{width:min(var(--max),calc(100% - 40px));margin:auto}
.topline{height:38px;padding:0 max(20px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,var(--orange),var(--orange2));color:#080808;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.topline a{text-decoration:underline}
.site-header{position:sticky;top:0;z-index:100;background:rgba(7,7,7,.91);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;align-items:center;gap:13px}.wordmark img{width:76px;height:58px;object-fit:contain}.wordmark b,.wordmark small{display:block;line-height:1}.wordmark b{font-size:1.25rem}.wordmark small{color:var(--orange);font-size:.58rem;letter-spacing:.35em;margin-top:5px}.nav-links{display:flex;align-items:center;gap:27px}.nav-links a{font-size:.77rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.menu-button{display:none;background:none;color:#fff;border:1px solid var(--line);padding:10px 14px}
.button{display:inline-block;background:var(--orange);color:#080808;padding:15px 22px;font-size:.77rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--orange);cursor:pointer}.button.outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}.button.tiny{padding:11px 15px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.home-hero,.page-hero{position:relative;background-image:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.56) 48%,rgba(0,0,0,.12)),var(--hero);background-size:cover;background-position:center;min-height:760px;display:flex;align-items:center}.home-hero:after,.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#070707 0%,transparent 28%);pointer-events:none}.hero-inner,.page-hero>.shell{position:relative;z-index:2}.home-hero h1,.page-hero h1{font-size:clamp(4rem,8vw,8rem);line-height:.88;letter-spacing:-.04em;margin:0;text-transform:uppercase}.home-hero h1 span,.page-hero h1 span,h2 span{color:var(--orange)}.eyebrow{color:var(--orange);font-size:.72rem;font-weight:900;letter-spacing:.19em;text-transform:uppercase}.hero-copy,.page-hero p{max-width:700px;color:#d0d0d0;font-size:1.08rem}.page-hero{min-height:660px}.page-hero.compact{min-height:500px}.page-hero.pink{--orange:var(--pink)}.contact-hero{background-image:radial-gradient(circle at 70% 30%,rgba(21,108,255,.35),transparent 30%),linear-gradient(120deg,#080808,#141414)}
.section{padding:100px 0}.section.dark{background:#0d0d0d}.brand-ribbon{padding:45px 0;border-bottom:1px solid var(--line)}.brand-logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.brand-logo-grid a{background:#0d0d0d;border:1px solid var(--line);padding:18px;text-align:center}.brand-logo-grid img{width:100%;height:155px;object-fit:contain}.brand-logo-grid span{display:block;margin-top:10px;color:var(--orange);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.heading-row{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:end;margin-bottom:48px}.heading-row h2,.section h2{font-size:clamp(3.2rem,6.3vw,6.3rem);line-height:.92;margin:0;text-transform:uppercase;letter-spacing:-.035em}.heading-row p{color:var(--muted)}
.service-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:310px;gap:14px}.service-photo{position:relative;background-image:linear-gradient(to top,rgba(0,0,0,.9),rgba(0,0,0,.05)),var(--bg);background-size:cover;background-position:center;border:1px solid var(--line);overflow:hidden}.service-photo:before{content:"";position:absolute;inset:0;background:var(--bg);background-size:cover;background-position:center;transition:transform .4s ease}.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.95),transparent 60%)}.service-photo:hover:before{transform:scale(1.04)}.service-photo.large{grid-row:span 2}.service-photo span{position:absolute;z-index:3;left:22px;bottom:19px;font-size:1.2rem;font-weight:900;text-transform:uppercase}.service-photo{--bg:var(--bg)}
.split-showcase{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.split-showcase.reverse>div:first-child{order:2}.portrait-stack{display:grid;grid-template-columns:1fr 1fr;gap:13px}.portrait-stack img{width:100%;height:520px;object-fit:cover;border:1px solid var(--line)}.portrait-stack img:nth-child(2){margin-top:70px}.split-showcase p{color:var(--muted)}.text-link{color:var(--orange);font-weight:900;text-transform:uppercase;font-size:.78rem}
.service-list article{display:grid;grid-template-columns:110px 1fr;gap:35px;padding:45px 0;border-top:1px solid var(--line)}.service-list article>span{font-size:3rem;color:var(--orange);font-weight:900}.service-list article h2{font-size:3.3rem}.service-list article p{color:var(--muted);max-width:760px}.service-list article a{color:var(--orange);font-weight:900;text-transform:uppercase;font-size:.78rem}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:75px}.feature-grid>div{padding:27px;background:var(--panel);border:1px solid var(--line)}.feature-grid b{font-size:1.15rem}.feature-grid p{color:var(--muted);margin-bottom:0}.gallery-heading{margin:60px 0 35px!important}.gallery-grid{columns:4 260px;column-gap:14px}.gallery-item{position:relative;margin:0 0 14px;break-inside:avoid;background:#111;border:1px solid var(--line);overflow:hidden}.gallery-item img{width:100%;height:auto;transition:transform .35s ease}.gallery-item:hover img{transform:scale(1.025)}.gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:42px 14px 12px;background:linear-gradient(transparent,rgba(0,0,0,.92));font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.filter-row{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:30px}.filter-row button{background:#111;color:#fff;border:1px solid var(--line);padding:11px 15px;cursor:pointer;font-weight:800;text-transform:uppercase;font-size:.7rem}.filter-row button.active{background:var(--orange);color:#080808}.gallery-item.hidden{display:none}
.pink-section{background:linear-gradient(180deg,#190c12,#070707)}.logo-showcase{max-width:780px;margin:70px auto 0;padding:30px;background:#fff}.logo-showcase img{width:100%;max-height:500px;object-fit:contain}
.contact-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}.contact-layout h2{font-size:5rem}.contact-layout a{color:var(--orange)}form{background:#111;border:1px solid var(--line);padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;margin-bottom:17px;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}input,select,textarea{width:100%;margin-top:7px;padding:13px;background:#080808;color:#fff;border:1px solid var(--line)}textarea{min-height:150px}.fine-print{color:#777;font-size:.72rem}
footer{padding:65px 0 25px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:35px}.footer-logo{width:220px}.footer-grid p,.footer-grid a{color:#999;font-size:.82rem}.footer-grid a{display:block;margin:7px 0}.footer-grid h4{color:var(--orange);text-transform:uppercase}.copyright{border-top:1px solid var(--line);margin-top:35px;padding-top:18px;color:#666;font-size:.75rem}
@media(max-width:950px){.nav-links{display:none;position:absolute;top:82px;left:0;right:0;background:#080808;padding:24px;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.menu-button{display:block}.home-hero,.page-hero{min-height:650px}.heading-row,.split-showcase,.contact-layout{grid-template-columns:1fr}.service-photo-grid{grid-template-columns:1fr 1fr}.brand-logo-grid{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.topline span:nth-child(2){display:none}.home-hero,.page-hero{min-height:600px}.home-hero h1,.page-hero h1{font-size:3.9rem}.section{padding:70px 0}.service-photo-grid,.brand-logo-grid,.feature-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.service-photo.large{grid-row:auto}.service-photo-grid{grid-auto-rows:280px}.portrait-stack img{height:390px}.heading-row h2,.section h2{font-size:3.7rem}.service-list article{grid-template-columns:65px 1fr;gap:15px}.service-list article h2{font-size:2.35rem}.contact-layout h2{font-size:3.8rem}}

.floating-contact{position:fixed;right:18px;bottom:18px;z-index:150;display:flex;gap:7px;padding:7px;background:rgba(7,7,7,.9);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:999px;box-shadow:0 12px 35px rgba(0,0,0,.4)}.floating-contact a{min-width:52px;text-align:center;padding:10px 12px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase}.floating-contact a:hover,.floating-contact .book{background:var(--orange);color:#080808}.faq-section{background:linear-gradient(135deg,#101010,#070707)}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.faq-layout>div:first-child p{color:var(--muted)}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-weight:900;text-transform:uppercase}.faq-list p{color:var(--muted)}.hidden-field{position:absolute;left:-9999px}@keyframes riseIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.home-hero .hero-inner,.page-hero>.shell{animation:riseIn .8s ease both}@media(max-width:950px){.faq-layout{grid-template-columns:1fr}.floating-contact{left:50%;right:auto;transform:translateX(-50%);bottom:10px}.copyright{padding-bottom:70px}}
