/* TattooHub adaptation of the licensed Blackdsn structure.
   Original author notices and vendor assets remain unchanged. */
:root .th-site{--bg-color:#080808;--assistant-color:#141414;--theme-color:#B52227;--heading-color:#F7F3EB;--font-color:#bcb8b1;--border-color:#353331;--body-font:Poppins,Arial,Helvetica,sans-serif;--heading-font:Excon,Arial,Helvetica,sans-serif;--margin-padding:72px;--title-heading:68px;--th-red:#B52227;--th-white:#F7F3EB;--th-muted:#bcb8b1;--th-gutter:22px;--th-nav:76px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
.th-site{margin:0;background:var(--bg-color);color:var(--font-color);font:400 15px/1.75 var(--body-font);overflow-x:clip}
.th-site h1,.th-site h2,.th-site h3{font-family:var(--heading-font);color:var(--heading-color);font-weight:500;line-height:1.12;letter-spacing:-.04em;text-wrap:balance}
.th-site h1{font-size:clamp(37px,5.4vw,76px)}
.th-site h2{font-size:clamp(29px,3.1vw,43px)}
.th-site h3{font-size:22px;line-height:1.3}
.th-site p,.th-site ul,.th-site ol,.th-site dl,.th-site figure{margin:0}
.th-site a{color:inherit;text-decoration:none;touch-action:manipulation}
.th-site button{font:inherit;cursor:pointer;touch-action:manipulation;border-radius:0}
.th-site a:focus-visible,.th-site button:focus-visible,.th-site summary:focus-visible,.th-site input:focus-visible,.th-site textarea:focus-visible,.th-site select:focus-visible{outline:2px solid var(--th-white);outline-offset:5px}
.th-site [hidden]{display:none!important}
.th-site ::selection{background:var(--th-red);color:#fff}
.th-site .container{width:calc(100% - 2*var(--th-gutter));max-width:1320px;padding:0;margin-inline:auto}
.th-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.th-skip{position:fixed;top:8px;left:12px;padding:12px 20px;background:var(--th-white);color:#080808!important;transform:translateY(-150%);z-index:10000}
.th-skip:focus{transform:none}
.th-section{padding-block:50px}
.th-eyebrow{font-size:10px;font-weight:600;letter-spacing:1.35px;line-height:1.8;text-transform:uppercase;color:var(--th-white)}
.th-eyebrow::before{content:'';display:inline-block;width:15px;height:2px;background:var(--th-red);margin:0 10px 3px 0}
.th-lead{font-size:15px;line-height:1.8;color:var(--th-muted)}
.th-note,.th-proof-note{font-size:11px;line-height:1.75;color:var(--th-muted)}
.th-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-block:24px}
.th-button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:14px 22px;border:1px solid var(--th-white);background:var(--th-white);color:#080808!important;font:600 12px/1.5 var(--body-font);transition:background .2s,border-color .2s,color .2s}
.th-button:hover{background:var(--th-red);border-color:var(--th-red);color:#fff!important}
.th-link{display:inline-flex;align-items:center;min-height:44px;font-size:12px;font-weight:600;color:var(--th-white)!important;text-decoration:underline!important;text-underline-offset:7px;text-decoration-color:#777!important}
.th-link:hover{text-decoration-color:var(--th-red)!important}
.th-email{display:inline-block;max-width:100%;overflow-wrap:anywhere;color:var(--th-white)!important;font-size:13px}
.th-inline-link{text-decoration:underline!important;text-underline-offset:4px}
.th-wordmark{font:700 29px/1 var(--heading-font);letter-spacing:-1.9px;color:var(--th-white)!important;display:inline-flex;align-items:center;max-width:190px}
.th-wordmark span{color:var(--th-red)}
.th-wordmark img{width:auto;max-width:180px;max-height:45px;object-fit:contain}
#site_menu_header.th-header{position:sticky;top:0;left:0;right:0;width:100%;min-height:var(--th-nav);padding:15px var(--th-gutter);background:#080808;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;z-index:1000;transform:none;visibility:visible;opacity:1}
#site_menu_header.th-header .main-navigation{position:static;display:flex;align-items:center;flex-wrap:wrap;gap:18px;width:100%;height:auto;opacity:1;visibility:visible;padding:18px 0 0;background:none;transform:none}
#site_menu_header.th-header .primary-nav{display:flex;flex-wrap:wrap;gap:20px;padding:0;margin:0;list-style:none;font-size:13px}
#site_menu_header.th-header .primary-nav li{margin:0;padding:0;opacity:1;visibility:visible;transform:none;line-height:1.6}
#site_menu_header.th-header .primary-nav a{display:inline-flex;align-items:center;min-height:44px;font:400 13px/1.6 var(--body-font);letter-spacing:0;text-transform:none;color:var(--th-white);padding:0}
#site_menu_header.th-header .primary-nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--th-red);text-underline-offset:7px}
#site_menu_header.th-header .th-nav-cta{font-size:11px;min-height:44px;padding:11px 17px}
#site_menu_header.th-header .th-menu-toggle{display:inline-flex;position:static;align-items:center;gap:10px;width:auto;height:auto;padding:10px 12px;border:1px solid var(--border-color);background:none;color:var(--th-white);font-size:12px;min-height:44px;transform:none}
.th-menu-toggle .toggle-icon{display:flex;flex-direction:column;gap:5px;width:15px}
.th-menu-toggle .toggle-icon span{display:block;height:1px;background:currentColor}
.th-menu-toggle[aria-expanded=true] .toggle-icon span:first-child{transform:translateY(3px) rotate(45deg)}
.th-menu-toggle[aria-expanded=true] .toggle-icon span:last-child{transform:translateY(-3px) rotate(-45deg)}
.th-menu-contact{display:none}
.th-js #site_menu_header.th-header .main-navigation{display:none}
.th-js #site_menu_header.th-header.dsn-open .main-navigation{display:flex;flex-direction:column;align-items:stretch;max-height:calc(100dvh - var(--th-nav));overflow-y:auto;padding-bottom:12px}
.th-js #site_menu_header.th-header.dsn-open .primary-nav{flex-direction:column;gap:0}
.th-js #site_menu_header.th-header.dsn-open .primary-nav a{font:500 26px/1.2 var(--heading-font);padding:13px 0}
.th-js #site_menu_header.th-header.dsn-open .primary-nav li+li{border-top:1px solid var(--border-color)}
.th-js #site_menu_header.th-header.dsn-open .th-menu-contact{display:block;border-top:1px solid var(--border-color);padding-top:18px}
.th-socials{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:11px}
.th-socials a{display:inline-flex;min-height:44px;align-items:center}
.th-socials a:hover{text-decoration:underline;text-underline-offset:5px}
.th-load-line{position:fixed;top:0;left:0;height:2px;width:100%;background:var(--th-red);z-index:2000;transform-origin:left;pointer-events:none;animation:th-load .45s ease-out both}
@keyframes th-load{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.th-steps{display:grid;gap:30px;padding:0;list-style:none;margin-bottom:30px!important}
.th-steps h3{margin:13px 0}
.th-steps p{font-size:14px}
.th-faq-layout{display:grid;gap:20px;align-items:start}
.th-faq details{border-top:1px solid var(--border-color);padding:19px 0}
.th-faq details:last-child{border-bottom:1px solid var(--border-color)}
.th-faq summary{list-style:none;cursor:pointer;color:var(--th-white);font:500 17px/1.6 var(--heading-font);padding-right:30px;position:relative;min-height:28px}
.th-faq summary::-webkit-details-marker{display:none}
.th-faq summary::after{content:'+';position:absolute;right:0;top:0;font-size:20px}
.th-faq details[open] summary::after{content:'-'}
.th-faq details p{font-size:14px;margin-top:17px;max-width:720px}
.th-contact-section{padding-top:35px}
.th-contact-layout{display:grid;gap:40px}
.th-contact-email{font:500 clamp(20px,3.2vw,40px)/1.4 var(--heading-font);color:var(--th-white)!important;display:inline-block;margin-top:15px;overflow-wrap:anywhere;max-width:100%;letter-spacing:-.04em}
.th-copy{border:0;background:none;padding:0}
.th-copy-status{font-size:12px;min-height:22px}
.th-enquiry-guide{border-top:1px solid var(--border-color);padding-top:26px}
.th-enquiry-guide h2{font-size:27px;margin-bottom:16px}
.th-enquiry-guide p{font-size:14px}
.th-prose{max-width:790px!important}
.th-prose h2{font-size:27px;margin:33px 0 16px}
.th-prose h2:first-child{margin-top:0}
.th-prose .th-note{margin-top:28px}
.th-form-section{margin-top:55px;padding-top:35px;border-top:1px solid var(--border-color)}
.th-form-section h2{margin-bottom:26px}
.th-form-grid{display:grid;gap:24px}
.th-form-grid label{font-size:13px;color:var(--th-white);display:grid;gap:9px}
.th-form-grid input,.th-form-grid select,.th-form-grid textarea{width:100%;padding:13px 14px;min-height:49px;background:#141414;border:1px solid #625e58;border-radius:0;color:var(--th-white);font:400 15px/1.6 var(--body-font)}
.th-form-grid textarea{resize:vertical}
.th-form-grid input::placeholder{color:#aaa59d;font-size:12px}
.th-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.th-form-section .th-note{margin-block:20px}
.th-form-section button:disabled{opacity:.65;cursor:wait}
.th-form-status{margin-top:15px!important;font-size:14px;min-height:25px}
.th-error-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;padding-block:45px!important}
.th-footer{padding-block:35px 20px!important;background:#080808}
.th-footer-top,.th-footer-bottom{display:flex;gap:22px;flex-wrap:wrap;justify-content:space-between;align-items:center}
.th-footer-top p{font-size:10px;margin-top:14px;max-width:350px}
.th-footer-top nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.th-footer-top .th-link{font-weight:400;font-size:11px;text-decoration:none!important}
.th-footer-bottom{border-top:1px solid var(--border-color);margin-top:24px!important;padding-top:22px!important}
.th-footer-bottom p{font-size:10px;margin-top:8px}
.th-footer-bottom small{font-size:10px}
.th-cursor{position:fixed;top:0;left:0;width:26px;height:26px;border:1px solid #f7f3eb90;border-radius:50%;pointer-events:none;z-index:9999;opacity:0;transform:translate(-50%,-50%)}
.th-cursor.is-visible{opacity:1}
.th-cursor.is-link{width:40px;height:40px;border-color:var(--th-red)}
.th-site,.th-site a,.th-site button{cursor:auto}
.th-site a,.th-site button{cursor:pointer}
.th-site .dsn-ajax-loader .title{font-size:clamp(25px,4vw,48px)}
.th-site .dsn-ajax-loader .square-before::before{background:var(--th-red)}
.th-site .dsn-ajax-loader{pointer-events:all}

/* Photographer visual compositions. Visual space never collapses to text rows. */
:root .th-site{--heading-color:#F4EFE7;--th-white:#F4EFE7;--th-muted:#c5c3bf;--font-color:#c5c3bf;--th-gutter:20px;--th-nav:72px}
.th-site .container{max-width:1480px}.th-section{padding-block:44px}
.th-button,.th-link{text-transform:uppercase;font-size:11px;letter-spacing:.2px}
.th-home-hero{position:relative;isolation:isolate;min-height:calc(100svh - var(--th-nav));padding:126px 0 44px;display:flex;align-items:flex-end;background:#252627;overflow:hidden}
.th-home-hero .hero-content{position:relative;z-index:2;text-align:left}
.th-home-hero h1{font-size:clamp(35px,8.9vw,65px);font-weight:700;line-height:1.02;letter-spacing:-.055em;text-transform:uppercase;margin:14px 0 18px;max-width:950px}.th-home-hero h1 span{display:block}
.th-home-hero .th-lead{font-size:13px;line-height:1.8;max-width:540px;color:#eee9e2}.th-home-hero .th-eyebrow{font-size:9px;letter-spacing:.75px;max-width:460px}.th-home-hero .th-eyebrow::before{display:none}
.th-home-hero .th-actions{gap:10px 18px;margin-block:22px}.th-home-hero .th-button{padding-inline:16px;font-size:10px}.th-home-hero .th-link{font-size:10px}
.th-hero-proof{display:flex;gap:26px;width:fit-content;padding-top:20px;border-top:1px solid #ffffff45}.th-hero-proof>div{display:flex;flex-direction:column;gap:5px}.th-hero-proof>div+div{border-left:1px solid #ffffff45;padding-left:26px}
.th-hero-proof dt{order:2;font-size:9px;font-weight:400;text-transform:uppercase;letter-spacing:.3px}.th-hero-proof dd{font:500 32px/1 var(--heading-font);color:var(--th-white);margin:0;letter-spacing:-1px}.th-proof-note{max-width:430px;font-size:9px;margin-top:11px!important;color:#ddd9d2}
.th-media{position:relative;min-width:0;overflow:hidden;background:#252627}.th-media img{display:block;width:100%;height:100%;object-fit:cover;max-width:none}.th-media figcaption{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:8px 12px;background:#080808d9;color:var(--th-white);font-size:10px;line-height:1.6}
.th-home-hero .th-hero-image{position:absolute;inset:0;z-index:0;height:100%;width:100%;margin:0}.th-hero-image:not(.th-placeholder)::after,.th-cta-image:not(.th-placeholder)::after{content:'';position:absolute;inset:0;background:#0007}.th-hero-image img{object-position:65% 50%}.th-hero-image figcaption{left:auto;max-width:70%;text-align:right}
/* Neutral, explicitly labelled temporary slots; no invented artwork. */
.th-placeholder{background:#252627;border:1px solid #444648}.th-placeholder::before{content:'';position:absolute;inset:13px;border:1px solid #ffffff12;pointer-events:none}
.th-asset-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px;gap:7px;text-align:center;color:#e0e0de;font:400 11px/1.6 var(--body-font)}
.th-asset-placeholder strong{font:500 14px/1.4 var(--heading-font);letter-spacing:0;max-width:220px}.th-slot-kicker{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#bebfbe}.th-asset-placeholder>span:last-child{font-size:9px;color:#bebfbe}
.th-hero-image .th-asset-placeholder,.th-cta-image .th-asset-placeholder{inset:24px 22px auto;align-items:flex-start;text-align:left;justify-content:flex-start;padding:0}.th-hero-image .th-asset-placeholder strong,.th-cta-image .th-asset-placeholder strong{font-size:13px}.th-hero-image.th-placeholder::before,.th-cta-image.th-placeholder::before{inset:12px}
.th-page-hero{padding:40px 0 34px;border-bottom:1px solid var(--border-color)}.th-page-hero h1{max-width:1020px;margin:14px 0 20px}.th-page-hero .th-lead{max-width:720px}
/* Photographer about-2: image first, compact editorial copy. */
.th-intro-layout{display:grid;gap:28px;align-items:center}.th-visual-intro .bg-mask{display:none}.th-visual-intro .box-img,.th-visual-intro .box-info{display:block;padding:0;min-width:0;position:relative;z-index:1}
.th-intro-image{height:370px;width:100%}.th-visual-intro .box-img img:first-child,.th-visual-intro .box-img img:last-child{width:100%;height:100%;margin:0}.th-intro-layout h2{margin:12px 0 18px;max-width:540px}.th-intro-layout .th-lead{max-width:460px}
.th-principles{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;padding:20px 0 14px!important;font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:var(--th-white)}.th-principles li{padding-bottom:7px;border-bottom:1px solid #5b5b5b}
.th-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:28px}.th-section-heading h2{margin-top:10px;max-width:760px}.th-section-heading .th-lead{margin-top:14px;max-width:570px}
/* Original dsn-style-list / dsn-image-odd alternating project presentation. */
.th-portfolio{padding-top:22px}.th-projects{width:100%;overflow:hidden}.th-projects .th-work-grid{display:block}.th-projects .th-work-item{margin:0;padding:0;border:0;overflow:visible}
.th-projects .th-work-item+.th-work-item{margin-top:26px}.th-projects .dsn-posts .box-content{display:flex;flex-direction:column;padding:0;gap:0;width:100%;align-items:stretch}
.th-projects .dsn-posts .box-content .box-image-link{position:relative;width:100%;margin:0;order:0;display:block;height:auto;flex:none}
.th-projects.dsn-image-odd .dsn-posts .box-image-link .box-image-bg{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:4/5;margin:0}
.th-work-cover img{object-fit:contain;background:#171717}.th-work-cover::after{display:none!important}
.th-work-item .post-title{transition:text-decoration-color .2s}.th-work-item:hover .post-title{text-decoration:underline;text-decoration-color:var(--th-red);text-decoration-thickness:1px;text-underline-offset:7px}
.th-projects .dsn-posts .box-content .post-content{width:100%;margin:0;padding:22px var(--th-gutter) 6px;position:relative;background:var(--bg-color);display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:17px;flex:none}
.th-project-number{font:400 10px/1.4 var(--body-font);letter-spacing:1px;color:#aaa}.th-work-meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:9px;letter-spacing:.6px;text-transform:uppercase;margin-bottom:12px}.th-result{color:var(--th-white);white-space:nowrap;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}
.th-projects .post-title{font-size:clamp(24px,3vw,42px);line-height:1.17;margin:0;max-width:600px;letter-spacing:-.035em;text-transform:none}.th-work-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:10px}.th-work-bottom .th-link{font-size:10px}
.th-results-note{padding-top:24px!important}.th-work-page{padding-top:26px}.th-work-label{margin-bottom:24px!important}
/* Four visual partnership formats, with no information hidden behind hover. */
.th-partnerships{background:#111}.th-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.th-format-panel{min-width:0}.th-format-image{height:230px;width:100%}.th-format-panel .service-content{padding:16px 0 0;position:relative}.th-format-panel .th-number{font-size:10px;display:block;color:#aaa;margin-bottom:8px}
.th-format-panel .service_title{font:500 19px/1.2 var(--heading-font);letter-spacing:-.03em;text-transform:uppercase;margin:0 0 10px}.th-format-panel .service_description{font-size:13px;line-height:1.7;margin:0;max-width:350px}
.th-format-image .th-asset-placeholder{padding:15px}.th-format-image .th-asset-placeholder strong{font-size:12px}.th-format-image .th-slot-kicker{font-size:8px;letter-spacing:.8px}
.th-extra-formats{border-top:1px solid var(--border-color);margin-top:30px;padding-top:20px}.th-extra-formats summary{color:var(--th-white);cursor:pointer;min-height:44px;font-size:15px}.th-extra-formats>div{max-width:900px}.th-extra-formats h3{font-size:21px;margin:18px 0 7px}.th-extra-formats p{font-size:14px}
/* The real community screenshot is contained rather than cropped. */
.th-network-layout{display:grid;gap:28px;align-items:center}.th-network .box-img,.th-network .box-info{display:block;position:relative;min-width:0;margin:0;padding:0}.th-network .box-img{height:auto}.th-community{width:100%;aspect-ratio:4/3}.th-community img{object-fit:contain}.th-network .box-img img{position:static;height:100%;width:100%}
.th-network-count{display:flex;align-items:center;gap:17px;margin:15px 0 18px!important;color:var(--th-white)}.th-network-count strong{font:500 64px/.95 var(--heading-font);letter-spacing:-4px}.th-network-count span{font:400 10px/1.7 var(--body-font);text-transform:uppercase;letter-spacing:1.3px}.th-network h2{font-size:clamp(29px,2.6vw,40px);margin:0;max-width:570px}.th-network .th-note{font-size:10px;max-width:510px}
.th-points{list-style:none;padding:0;display:grid;gap:8px;margin-block:21px!important;font-size:13px}.th-points li{position:relative;padding-left:15px}.th-points li::before{position:absolute;left:0;top:.75em;content:'';width:4px;height:4px;background:var(--th-red)}
.th-three-columns{display:grid;gap:24px}.th-three-columns h3{margin-bottom:12px}.th-three-columns p{font-size:14px}
/* Full-bleed closing image; not another empty typography section. */
.th-cta{isolation:isolate;overflow:hidden;position:relative;display:flex;align-items:flex-end;min-height:580px;padding:130px 0 48px;background:#252627}.th-cta-inner{position:relative;z-index:2}.th-cta h2{max-width:960px;font-size:clamp(34px,4.9vw,76px);line-height:1.05;text-transform:uppercase;font-weight:700;margin:14px 0 18px;letter-spacing:-.05em}.th-cta p:not(.th-eyebrow){max-width:540px;font-size:13px;color:#e8e4de}.th-cta-contact{display:flex;flex-wrap:wrap;gap:10px 24px}.th-handle{font-size:11px;display:inline-block}.th-cta .th-cta-image{position:absolute;inset:0;width:100%;height:100%;z-index:0}.th-cta-image figcaption{left:auto;text-align:right;max-width:70%}
@media(min-width:650px){
 :root .th-site{--th-gutter:32px}.th-section{padding-block:55px}.th-home-hero{min-height:760px;padding-block:130px 60px}.th-home-hero h1{font-size:clamp(58px,7vw,84px)}.th-home-hero .th-lead{font-size:15px}.th-home-hero .th-eyebrow{font-size:10px;max-width:none}.th-home-hero .th-button,.th-home-hero .th-link{font-size:11px}
 .th-hero-proof dd{font-size:38px}.th-hero-proof dt{font-size:10px}.th-proof-note{font-size:10px}.th-hero-image .th-asset-placeholder,.th-cta-image .th-asset-placeholder{inset:32px 32px auto auto;align-items:flex-end;text-align:right}
 .th-intro-layout{grid-template-columns:1.1fr 1fr;gap:34px}.th-intro-image{height:470px}.th-intro-layout h2{font-size:32px}.th-intro-layout .th-lead{font-size:14px}.th-principles{display:grid;gap:8px}.th-principles li{width:fit-content}
 .th-format-image{height:330px}.th-format-grid{gap:32px 24px}.th-format-panel .service_title{font-size:23px}.th-format-panel .service_description{font-size:13px}
 .th-network-layout{grid-template-columns:1.1fr 1fr;gap:34px}.th-community{aspect-ratio:auto;height:520px}.th-network h2{font-size:29px}.th-network .th-points{font-size:12px}.th-network-count strong{font-size:70px}
 .th-page-hero{padding-block:48px 38px}.th-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.th-three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.th-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.th-full-width{grid-column:1/-1}.th-contact-layout{grid-template-columns:1.1fr 1fr}.th-enquiry-guide{border-top:0;padding-top:0;border-left:1px solid var(--border-color);padding-left:30px}
 .th-cta{min-height:640px;padding-block:140px 60px}.th-cta h2{max-width:980px}.th-cta p:not(.th-eyebrow){font-size:15px}
}
@media(min-width:1000px){
 :root .th-site{--th-gutter:48px;--th-nav:80px}#site_menu_header.th-header{padding-block:16px}#site_menu_header.th-header .th-menu-toggle{display:none}
 #site_menu_header.th-header .main-navigation,.th-js #site_menu_header.th-header .main-navigation,.th-js #site_menu_header.th-header.dsn-open .main-navigation{display:flex;position:static;width:auto;flex-direction:row;align-items:center;gap:30px;padding:0;overflow:visible;max-height:none}
 #site_menu_header.th-header .primary-nav,.th-js #site_menu_header.th-header.dsn-open .primary-nav{flex-direction:row;gap:25px}.th-js #site_menu_header.th-header.dsn-open .primary-nav a{font:400 12px/1.6 var(--body-font);padding:0}.th-js #site_menu_header.th-header.dsn-open .primary-nav li+li{border:0}.th-js #site_menu_header.th-header.dsn-open .th-menu-contact{display:none}
 .th-home-hero{min-height:min(880px,calc(100svh - var(--th-nav)));padding:92px 0 54px;align-items:center}.th-home-hero h1{font-size:clamp(66px,6.4vw,108px);margin:17px 0 22px}.th-home-hero .th-lead{max-width:540px;font-size:14px}.th-home-hero .th-actions{margin-block:25px}.th-hero-proof{gap:35px}.th-hero-proof>div+div{padding-left:35px}.th-hero-proof dd{font-size:36px}
 .th-hero-image .th-asset-placeholder{inset:0 4% 0 62%;justify-content:center;align-items:center;text-align:center}.th-hero-image .th-asset-placeholder strong{font-size:16px}.th-hero-image .th-asset-placeholder>span:last-child{font-size:10px}
 .th-section{padding-block:64px}.th-intro-layout{grid-template-columns:1.15fr 1fr;gap:7%}.th-intro-image{height:540px}.th-intro-layout h2{font-size:clamp(36px,3.1vw,47px)}.th-intro-layout .th-lead{font-size:15px}.th-visual-intro .bg-mask{display:block;position:absolute;inset:50px -24px 35px 26%;z-index:0;width:auto;height:auto;transform:none}.th-principles{display:flex;gap:16px;padding-top:24px!important}
 .th-portfolio{padding-top:20px}.th-projects .th-work-item+.th-work-item{margin-top:28px}.th-projects .dsn-posts .box-content{flex-direction:row;align-items:center}.th-projects .dsn-posts .box-content .box-image-link{width:64%;order:0}
 .th-projects.dsn-image-odd .dsn-posts .box-image-link .box-image-bg{height:650px;aspect-ratio:auto}.th-projects .dsn-posts .box-content .post-content{width:36%;padding:40px 4%;gap:32px;z-index:2;background:#141414;min-height:340px}
 .th-projects.dsn-image-odd .dsn-posts .dsn-item-post:nth-child(even) .box-image-link{order:2}.th-projects.dsn-image-odd .dsn-posts .dsn-item-post:nth-child(even) .post-content{margin:0;order:1}
 .th-projects .post-title{font-size:clamp(28px,2.6vw,43px);max-width:530px}.th-work-meta{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-start}.th-work-meta>span:first-child{width:100%}.th-result{font-size:15px}.th-work-bottom{flex-direction:column;align-items:flex-start;gap:7px}.th-project-number{font-size:11px}
 .th-format-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.th-format-image{height:360px}.th-format-panel:nth-child(even){padding-top:35px}.th-format-panel .service_title{font-size:23px}.th-format-panel .service_description{font-size:12px}.th-format-panel .service-content{padding-top:20px}
 .th-network-layout{grid-template-columns:1.25fr 1fr;gap:7%}.th-community{height:570px}.th-network h2{font-size:38px}.th-network .th-points{font-size:14px}.th-network-count strong{font-size:90px}.th-network-count{gap:22px;margin-block:20px!important}.th-network-count span{font-size:11px}
 .th-cta{min-height:710px;padding-block:140px 70px}.th-cta h2{max-width:1020px}.th-cta-image .th-asset-placeholder{inset:40px 48px auto auto}.th-cta .th-actions{margin-block:28px}
 .th-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:35px}.th-faq-layout{grid-template-columns:.8fr 1.2fr;gap:60px}.th-contact-layout{gap:60px}.th-contact-email{font-size:35px}.th-enquiry-guide{padding-left:40px}.th-enquiry-guide h2{font-size:30px}
}
@media(min-width:1600px){:root .th-site{--th-gutter:64px}.th-home-hero .hero-content{max-width:1600px}.th-home-hero .th-lead{font-size:16px}.th-projects.dsn-image-odd .dsn-posts .box-image-link .box-image-bg{height:730px}.th-projects .dsn-posts .box-content .post-content{padding:50px 5%}.th-format-image{height:420px}.th-intro-image{height:600px}.th-cta{min-height:780px}}
@media(max-width:649px){.th-footer-bottom .th-socials{width:100%}.th-home-hero .th-hero-image img{object-position:65% 50%}.th-cta .th-asset-placeholder>span:last-child{font-size:8px}}
@media(prefers-reduced-motion:reduce),(pointer:coarse){.th-cursor{display:none!important}.th-site .th-media img{transform:none!important}.th-site .th-media{clip-path:none!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.th-load-line{display:none!important}}
