@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#0b0c0e;--panel:#151619;--line:#303135;--muted:#a7a8ac;--white:#f4f4ef;--accent:#d5f579}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{display:block;width:100%;object-fit:cover}header{height:96px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff1a;background:#0b0c0ef5;position:sticky;top:0;z-index:20}.brand{width:77px;height:77px;overflow:hidden}.brand img{height:100%;object-fit:contain}nav{display:flex;gap:34px;font-size:14px}nav a:hover,.text-link:hover{color:var(--accent)}.button{background:var(--accent);color:var(--djjd-button_text);display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:17px 25px;font-weight:700;border:1px solid var(--accent);font-size:15px;line-height:1.5;transition:background .2s}.button:hover{background:var(--djjd-button_hover)}.button.small{padding:12px 19px;font-size:14px}.menu{display:none}.hero{position:relative;min-height:690px;display:flex;align-items:center;isolation:isolate}.hero-photo{position:absolute;inset:0;height:100%;z-index:-3;object-position:center 44%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,8,10,.91),rgba(7,8,10,.62) 48%,rgba(7,8,10,.12)),linear-gradient(0deg,#0b0c0e,transparent 40%);z-index:-2}.hero-content{padding:70px 5.5% 120px;width:100%}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2.2px;color:var(--accent);margin:0 0 23px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;line-height:.98;letter-spacing:-.015em;font-weight:700}h1{font-size:clamp(66px,7.7vw,116px);margin-bottom:28px;text-transform:uppercase}em{font-style:normal;color:var(--accent)}h2{font-size:clamp(46px,5vw,70px);margin-bottom:30px;text-transform:uppercase}h3{font-size:34px}.hero-intro{font-size:17px;color:var(--djjd-hero_text);line-height:1.7}.actions{display:flex;align-items:center;gap:34px;margin-top:33px}.text-link{font-size:14px;display:inline-flex;gap:24px;align-items:center;padding:10px 0;border-bottom:1px solid #ffffff40;font-weight:600}.hero-bottom{position:absolute;bottom:25px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.5px;color:var(--djjd-hero_bottom_text)}.service-strip{padding:25px 5.5%;background:var(--accent);color:var(--djjd-ribbon_text);display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;font:600 24px 'Barlow Condensed',sans-serif;gap:22px}.service-strip i{font-style:normal;font-size:20px}.section{padding:110px 5.5%;scroll-margin-top:0}.about{display:grid;grid-template-columns:1fr 1.05fr;gap:9%;align-items:center}.portrait{position:relative;height:560px;max-width:500px}.portrait img{height:100%;object-position:center 37%}.photo-label{position:absolute;bottom:22px;left:23px;background:var(--accent);color:var(--djjd-caption_text);padding:8px 13px;font-size:11px;letter-spacing:2px;font-weight:700}.about-copy p:not(.eyebrow){color:var(--muted);max-width:530px}.experience{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;display:flex;align-items:center;gap:25px;margin:30px 0 15px}.experience strong{font:600 56px 'Barlow Condensed',sans-serif;color:var(--accent);line-height:1}.experience span{font-size:11px;letter-spacing:1.5px;color:var(--djjd-experience_text)}.services{background:var(--djjd-services_background)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-heading h2{margin:0}.section-heading>p{color:var(--muted);font-size:15px;margin-bottom:3px}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:25px}.service-card{grid-column:span 2;border-bottom:1px solid #3a3b40;padding-bottom:28px}.service-card:nth-child(n+4){grid-column:span 3}.service-card img{aspect-ratio:1.45;transition:transform .4s}.service-card:nth-child(n+4) img{aspect-ratio:2.1}.service-card .image-wrap{overflow:hidden}.service-card:hover img{transform:scale(1.025)}.service-card h3{display:flex;justify-content:space-between;font-size:34px;margin:24px 0 17px}.service-card h3 span{font:26px 'DM Sans',sans-serif;color:var(--accent)}.service-card p{color:var(--muted);font-size:15px;line-height:1.8;margin:0}.gallery{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.gallery button{padding:0;border:0;background:var(--djjd-gallery_background);overflow:hidden;position:relative}.gallery img{height:290px;transition:transform .3s}.gallery button:hover img{transform:scale(1.04)}.gallery button:first-child{grid-row:span 2}.gallery button:first-child img{height:598px}.gallery button span{position:absolute;bottom:12px;right:12px;background:#101113cc;border:1px solid #ffffff60;color:white;width:34px;height:34px;font-size:20px}.contact{background:var(--panel);display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--line)}.contact>div>p:not(.eyebrow){color:var(--muted);max-width:430px}.contact-links{margin-top:40px;display:grid;gap:22px}.contact-links a{font-size:20px;overflow-wrap:anywhere}.contact-links a:hover{color:var(--accent)}.contact-links span{display:block;color:var(--muted);font-size:11px;letter-spacing:1.6px;margin-bottom:3px}.inquiry{border:1px solid #38393c;padding:32px}.inquiry h3{font-size:32px;margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:13px;display:block;margin-bottom:18px;color:var(--djjd-input_label)}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--djjd-input_border);border-radius:0;background:var(--djjd-input_background);color:var(--white);padding:11px;min-width:0;font-size:16px;color-scheme:dark}input:focus,select:focus,textarea:focus{outline:1px solid var(--accent)}textarea{resize:vertical}.inquiry .button{width:100%}.form-note{font-size:12px;color:var(--muted);margin:15px 0 0;line-height:1.7}.form-note a{text-decoration:underline}#form-status{font-size:14px;color:var(--accent);margin:15px 0 0}footer{padding:42px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer p{color:var(--djjd-footer_text);font-size:12px;margin:0}footer>a:last-child{font-size:11px;letter-spacing:1px}.footer-brand{font:700 30px 'Barlow Condensed',sans-serif}.footer-brand span{display:block;font:12px 'DM Sans',sans-serif;color:var(--muted);margin-top:7px}dialog{background:#121316;color:white;border:1px solid #444;max-width:90vw;padding:18px}dialog::backdrop{background:#000d}dialog img{max-height:78vh;object-fit:contain;width:auto;max-width:83vw}dialog p{margin:12px 0 0}.close{position:absolute;top:18px;right:18px;font-size:28px;background:#111;color:white;border:1px solid #777;width:42px;height:42px}.skip{position:fixed;top:-70px;z-index:100;background:var(--accent);color:black;padding:10px}.skip:focus{top:0}@media(min-width:1500px){.section{padding-left:max(5.5%,calc((100vw - 1360px)/2));padding-right:max(5.5%,calc((100vw - 1360px)/2))}}@media(max-width:850px){header{height:80px;padding:0 5%}.brand{height:65px;width:65px}nav{gap:18px}header .small{display:none}.hero{min-height:650px}.hero-content{padding-top:80px}h1{font-size:80px}.hero-bottom span:last-child{display:none}.service-strip{font-size:19px;gap:10px}.section{padding:75px 5%}.about{gap:6%;grid-template-columns:.85fr 1fr}.portrait{height:480px}h2{font-size:50px}.section-heading{align-items:start}.section-heading>p{max-width:210px}.service-card{grid-column:span 3}.service-card:last-child{grid-column:span 6}.service-card:last-child img{aspect-ratio:2.7}.service-card:nth-child(4) img{aspect-ratio:1.45}.gallery{grid-template-columns:1fr 1fr}.gallery button:first-child{grid-row:auto;grid-column:span 2}.gallery button:first-child img{height:370px}.gallery img{height:250px}.contact{grid-template-columns:1fr;gap:50px}.contact-links{grid-template-columns:1fr 1fr}.inquiry{max-width:650px}footer{flex-wrap:wrap}}@media(max-width:560px){header .menu{display:block;background:none;color:white;border:0;font-size:25px}.brand{width:60px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--djjd-services_background);padding:25px;flex-direction:column;gap:22px;border-bottom:1px solid #444}nav.open{display:flex}.hero{min-height:650px;align-items:flex-start}.hero-photo{object-position:62% center}.hero:after{background:linear-gradient(90deg,#08090bc9,#08090b65),linear-gradient(0deg,#0b0c0e,transparent 60%)}.hero-content{padding:70px 5% 105px}.eyebrow{font-size:10px;letter-spacing:1.5px}h1{font-size:clamp(57px,12vw,72px);line-height:1.02}.hero-intro{font-size:15px}.actions{align-items:flex-start;flex-direction:column;gap:15px}.hero-bottom{font-size:9px;letter-spacing:1px;bottom:20px}.service-strip{flex-wrap:wrap;justify-content:center;padding:20px 5%;font-size:18px;gap:8px 14px}.service-strip i:nth-of-type(3){display:none}.section{padding:60px 5%}.about{display:flex;flex-direction:column-reverse;gap:35px;align-items:stretch}.portrait{height:430px;max-width:100%}.about-copy p:not(.eyebrow){font-size:15px}h2{font-size:47px}.experience strong{font-size:50px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:100%;margin-top:22px}.service-grid{display:block}.service-card{margin-bottom:34px}.service-card img,.service-card:nth-child(n+4) img{aspect-ratio:1.5}.service-card h3{font-size:32px}.gallery{gap:10px}.gallery button:first-child img{height:280px}.gallery img{height:185px}.section-heading>.text-link{margin-top:20px}.contact-links{grid-template-columns:1fr;gap:20px}.inquiry{padding:23px 18px}.form-row{grid-template-columns:1fr;gap:0}footer{align-items:flex-start;flex-direction:column;padding:35px 5%}.form-note{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.service-card p,.about-copy p:not(.eyebrow),.section-heading>p{font-size:16px}label{font-size:14px}.eyebrow,.hero-bottom,.photo-label,.experience span,.contact-links span,footer>a:last-child{font-size:12px}.hero-bottom{letter-spacing:1px}@media(max-width:560px){.hero-bottom{font-size:12px;max-width:90%;line-height:1.5}.eyebrow{font-size:12px;letter-spacing:1px}}

header .menu{font-size:14px;font-weight:600}.close{width:auto;height:auto;padding:8px 14px;font-size:14px}.service-strip{gap:22px}.service-card h3{display:block}

.menu-lines{display:grid;gap:5px;width:27px}.menu-lines span{display:block;height:2px;background:currentColor;transition:transform .2s,opacity .2s}.menu.is-open .menu-lines span:first-child{transform:translateY(7px) rotate(45deg)}.menu.is-open .menu-lines span:nth-child(2){opacity:0}.menu.is-open .menu-lines span:last-child{transform:translateY(-7px) rotate(-45deg)}.footer-brand{display:block;width:80px;height:80px;font-size:0}.footer-brand img{width:100%;height:100%;object-fit:contain}
.header-actions,.footer-actions{display:flex;align-items:center;gap:10px}.nav-actions{display:none!important}.secondary-button{background:transparent;color:var(--accent)}.secondary-button:hover{background:var(--accent);color:var(--djjd-button_text)}@media(max-width:1050px){header nav{gap:20px}.header-actions .button{padding:10px 12px;font-size:12px}}@media(max-width:850px){.header-actions{display:none}}@media(max-width:560px){.nav-actions{display:grid!important;grid-template-columns:1fr 1fr}.nav-actions .button{display:flex;padding:12px 10px;justify-content:center}.footer-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.footer-actions .button{justify-content:center;padding:13px 10px}}

body.admin-bar>header{top:32px}@media(max-width:782px){body.admin-bar>header{top:46px}}
@media(max-width:600px){body.admin-bar>header{top:0}}
