1 <!DOCTYPE html> 2<html lang="en-US" prefix="og: https://ogp.me/ns#" xmlns:og="http://ogp.me/ns#"> 3 <head> 4 <!-- Google Tag Manager --> 5
5<script>
vendor: 335 bytes, lines 5-9
5(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 6 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 7 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 8 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 9 })(window,document,'script','dataLayer','
9GTM-K9SWWJS
vendor: 3 bytes, line 9
9');
9</script>
9 10 <!-- End Google Tag Manager --> 11<!-- Meta Pixel Code -->
12<script>
vendor: 399 bytes, lines 12-21
12 13!function(f,b,e,v,n,t,s) 14{if(f.fbq)return;n=f.fbq=function(){n.callMethod? 15n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 16if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 17n.queue=[];t=b.createElement(e);t.async=!0; 18t.src=v;s=b.getElementsByTagName(e)[0]; 19s.parentNode.insertBefore(t,s)}(window, document,'script', 20'https://connect.facebook.net/en_US/fbevents.js'); 21fbq('init', '
211215647063331425
vendor: 30 bytes, lines 21-22
21'); 22fbq('track', 'PageView');
23</script>
23 24<noscript><img height="1" width="1" style="display:none" 25src="https://www.facebook.com/tr?id=1215647063331425&ev=PageView&noscript=1" 26/></noscript> 27<!-- End Meta Pixel Code --> 28
28<script type="text/javascript"> 29_linkedin_partner_id = "6945290"; 30window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; 31window._linkedin_data_partner_ids.push(_linkedin_partner_id); 32</script>
32<script type="text/javascript"> 33(function(l) { 34if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; 35window.lintrk.q=[]} 36var s = document.getElementsByTagName("script")[0]; 37var b = document.createElement("script"); 38b.type = "text/javascript";b.async = true; 39b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; 40s.parentNode.insertBefore(b, s);})(window.lintrk); 41</script>
41 42<noscript> 43<img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=6945290&fmt=gif" /> 44</noscript> 45 <meta charset="UTF-8"> 46 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"> 47 <title>Subtle Medical - Deep Learning boosts healthcare. Faster, Safer, Smarter.</title> 48 <link rel="pingback" href="https://subtlemedical.com/xmlrpc.php"> 49 50 <meta charset="UTF-8"> 51 52 <link rel="stylesheet" href="https://subtlemedical.com/wp-content/themes/subtlemedical/css/normalize.css"> 53 <link rel="stylesheet" href="https://subtlemedical.com/wp-content/themes/subtlemedical/css/style.css?v1790422035"> 54 <link rel="stylesheet" href="https://subtlemedical.com/wp-content/themes/subtlemedical/css/fonts.css"> 55 <link rel="stylesheet" href="https://subtlemedical.com/wp-content/themes/subtlemedical/css/owl.carousel.min.css"> 56 <link rel="stylesheet" href="https://subtlemedical.com/wp-content/themes/subtlemedical/css/animate.css"> 57 58 <link rel="apple-touch-icon-precomposed" sizes="57x57" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/apple-touch-icon-57x57.png"> 59 <link rel="apple-touch-icon-precomposed" sizes="114x114" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/apple-touch-icon-114x114.png"> 60 <link rel="apple-touch-icon-precomposed" sizes="72x72" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/apple-touch-icon-72x72.png"> 61 <link rel="apple-touch-icon-precomposed" sizes="144x144" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/apple-touch-icon-144x144.png"> 62 <link rel="apple-touch-icon-precomposed" sizes="120x120" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/apple-touch-icon-120x120.png"> 63 <link rel="apple-touch-icon-precomposed" sizes="152x152" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/apple-touch-icon-152x152.png"> 64 <link rel="icon" type="image/png" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/favicon-32x32.png" sizes="32x32"> 65 <link rel="icon" type="image/png" href="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/favicon-16x16.png" sizes="16x16"> 66 <meta name="application-name" content="Deepscale"> 67 <meta name="msapplication-TileColor" content="#FFFFFF"> 68 <meta name="msapplication-TileImage" content="https://subtlemedical.com/wp-content/themes/subtlemedical/favicon/mstile-144x144.png"> 69 70
70<script type="application/ld+json"> 71 { 72 "@context": "https://schema.org", 73 "@type": ["Organization","SoftwareApplication"], 74 "@id": "https://subtlemedical.com/#organization", 75 "name": "Subtle Medical", 76 "url": "https://subtlemedical.com/", 77 "logo": "https://subtlemedical.com/wp-content/uploads/2021/07/Subtle-Medical-Logo.png", 78 "applicationCategory": "MedicalApplication", 79 "operatingSystem": "Web", 80 "description": "Subtle Medical develops AI-powered software that enhances medical imaging quality, accelerates MRI and PET workflows, and improves efficiency and patient outcomes without requiring new hardware.", 81 "foundingDate": "2017", 82 "founder": [ 83 { 84 "@type": "Person", 85 "name": "Greg Zaharchuk" 86 }, 87 { 88 "@type": "Person", 89 "name": "Enhao Gong" 90 } 91 ], 92 "address": { 93 "@type": "PostalAddress", 94 "streetAddress": "883 Santa Cruz Ave, Suite 300", 95 "addressLocality": "Menlo Park", 96 "addressRegion": "CA", 97 "postalCode": "94025", 98 "addressCountry": "US" 99 }, 100 "areaServed": { 101 "@type": "Place", 102 "name": "Global" 103 }, 104 "sameAs": [ 105 "https://www.linkedin.com/company/subtlemedical" 106 ], 107 "featureList": [ 108 "AI-powered MRI enhancement", 109 "AI-powered PET enhancement", 110 "Workflow automation", 111 "Scanner efficiency optimization", 112 "Image denoising and sharpening" 113 ], 114 "makesOffer": [ 115 { 116 "@type": "Offer", 117 "itemOffered": { 118 "@type": "SoftwareApplication", 119 "name": "SubtleHDâ¢(MR)" 120 } 121 }, 122 { 123 "@type": "Offer", 124 "itemOffered": { 125 "@type": "SoftwareApplication", 126 "name": "SubtlePET" 127 } 128 }, 129 { 130 "@type": "Offer", 131 "itemOffered": { 132 "@type": "SoftwareApplication", 133 "name": "Subtle-ELITEâ¢" 134 } 135 } 136 ], 137 "contactPoint": { 138 "@type": "ContactPoint", 139 "contactType": "sales", 140 "url": "https://subtlemedical.com/contact/" 141 } 142 } 143 </script>
143 144 145 146
146<script type="text/javascript"> 147_linkedin_partner_id = "6945290"; 148window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; 149window._linkedin_data_partner_ids.push(_linkedin_partner_id); 150</script>
150<script type="text/javascript"> 151(function(l) { 152if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; 153window.lintrk.q=[]} 154var s = document.getElementsByTagName("script")[0]; 155var b = document.createElement("script"); 156b.type = "text/javascript";b.async = true; 157b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; 158s.parentNode.insertBefore(b, s);})(window.lintrk); 159</script>
159 160<noscript> 161<img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=6945290&fmt=gif" /> 162</noscript> 163 164 165 <!-- Google tag (gtag.js) -->
vendor: 68 bytes, lines 165-166
165 166 <script async src="https://www.googletagmanager.com/gtag/js?id=
166G-DK3HWBB74E
vendor: 16 bytes, lines 166-167
166"></script> 167
167<script> 168
vendor: 146 bytes, lines 168-172
168window.dataLayer = window.dataLayer || []; 169 function gtag(){dataLayer.push(arguments);} 170 gtag('js', new Date()); 171 172 gtag('config', '
172G-DK3HWBB74E
vendor: 8 bytes, lines 172-173
172'); 173
173</script>
173 174 175
175<script src="https://static.claydar.com/init.v1.js?id=cji4rwBE2a"></script>
175 176 177 178<!-- Search Engine Optimization by Rank Math - https://rankmath.com/ --> 179<meta name="robots" content="follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/> 180<link rel="canonical" href="https://subtlemedical.com/careers/" /> 181<meta property="og:locale" content="en_US" /> 182<meta property="og:type" content="article" /> 183<meta property="og:title" content="Careers - Subtle Medical" /> 184<meta property="og:url" content="https://subtlemedical.com/careers/" /> 185<meta property="og:site_name" content="Subtle Medical" /> 186<meta property="og:updated_time" content="2026-08-28T02:03:26-07:00" /> 187<meta name="twitter:card" content="summary_large_image" /> 188<meta name="twitter:title" content="Careers - Subtle Medical" /> 189<meta name="twitter:label1" content="Time to read" /> 190<meta name="twitter:data1" content="Less than a minute" /> 191<!-- /Rank Math WordPress SEO plugin --> 192 193<link rel='dns-prefetch' href='//js-na2.hs-scripts.com' /> 194<link rel="alternate" type="application/rss+xml" title="Subtle Medical » Feed" href="https://subtlemedical.com/feed/" /> 195<link rel="alternate" type="application/rss+xml" title="Subtle Medical » Comments Feed" href="https://subtlemedical.com/comments/feed/" /> 196<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://subtlemedical.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fsubtlemedical.com%2Fcareers%2F" /> 197<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://subtlemedical.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fsubtlemedical.com%2Fcareers%2F&format=xml" /> 198 <style> 199 .lazyload, 200 .lazyloading { 201 max-width: 100%; 202 } 203 </style> 204 <style id="wp-img-auto-sizes-contain-inline-css"> 205img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 206/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 207</style> 208<link rel='stylesheet' id='buttons-css' href='https://subtlemedical.com/wp-includes/css/buttons.css?ver=7.1' media='all' /> 209<link rel='stylesheet' id='dashicons-css' href='https://subtlemedical.com/wp-includes/css/dashicons.css?ver=7.1' media='all' /> 210<link rel='stylesheet' id='mediaelement-css' href='https://subtlemedical.com/wp-includes/js/mediaelement/mediaelementplayer-legacy.min.css?ver=4.2.17' media='all' /> 211<link rel='stylesheet' id='wp-mediaelement-css' href='https://subtlemedical.com/wp-includes/js/mediaelement/wp-mediaelement.css?ver=7.1' media='all' /> 212<link rel='stylesheet' id='media-views-css' href='https://subtlemedical.com/wp-includes/css/media-views.css?ver=7.1' media='all' /> 213<link rel='stylesheet' id='imgareaselect-css' href='https://subtlemedical.com/wp-includes/js/imgareaselect/imgareaselect.css?ver=0.9.8' media='all' /> 214<style id="wp-emoji-styles-inline-css"> 215 216 img.wp-smiley, img.emoji { 217 display: inline !important; 218 border: none !important; 219 box-shadow: none !important; 220 height: 1em !important; 221 width: 1em !important; 222 margin: 0 0.07em !important; 223 vertical-align: -0.1em !important; 224 background: none !important; 225 padding: 0 !important; 226 } 227/*# sourceURL=wp-emoji-styles-inline-css */ 228</style> 229<style id="wp-block-library-inline-css"> 230/** 231 * Colors 232 */ 233/** 234 * Typography 235 */ 236/** 237 * SCSS Variables. 238 * 239 * Please use variables from this sheet to ensure consistency across the UI. 240 * Don't add to this sheet unless you're pretty sure the value will be reused in many places. 241 * For example, don't add rules to this sheet that affect block visuals. It's purely for UI. 242 */ 243/** 244 * Fonts & basic variables. 245 */ 246/** 247 * Typography 248 */ 249/** 250 * Grid System. 251 * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/ 252 */ 253/** 254 * Radius scale. 255 */ 256/** 257 * Elevation scale. 258 */ 259/** 260 * Dimensions. 261 */ 262/** 263 * Mobile specific styles 264 */ 265/** 266 * Editor styles. 267 */ 268/** 269 * Block & Editor UI. 270 */ 271/** 272 * Block paddings. 273 */ 274/** 275 * React Native specific. 276 * These variables do not appear to be used anywhere else. 277 */ 278/** 279 * Breakpoints & Media Queries 280 */ 281/** 282* Converts a hex value into the rgb equivalent. 283* 284* @param {string} hex - the hexadecimal value to convert 285* @return {string} comma separated rgb values 286*/ 287/** 288 * Long content fade mixin 289 * 290 * Creates a fading overlay to signify that the content is longer 291 * than the space allows. 292 */ 293/** 294 * Breakpoint mixins 295 */ 296/** 297 * Focus styles. 298 */ 299/** 300 * Standard focus rings for the WordPress Design System. 301 * 302 * Apply `outset-ring__focus` inside the relevant pseudo-class at the call site, 303 * e.g. `&:focus { @include outset-ring__focus(); }`. 304 */ 305/** 306 * Applies editor left position to the selector passed as argument 307 */ 308/** 309 * Styles that are reused verbatim in a few places 310 */ 311/** 312 * Allows users to opt-out of animations via OS-level preferences. 313 */ 314/** 315 * Reset default styles for JavaScript UI based pages. 316 * This is a WP-admin agnostic reset 317 */ 318/** 319 * Reset the WP Admin page styles for Gutenberg-like pages. 320 */ 321/** 322 * Creates a checkerboard pattern background to indicate transparency. 323 * @param {String} $size - The size of the squares in the checkerboard pattern. Default is 12px. 324 */ 325:root { 326 --wp-block-synced-color: #7a00df; 327 --wp-block-synced-color--rgb: 122, 0, 223; 328 --wp-bound-block-color: var(--wp-block-synced-color); 329 --wp-editor-canvas-background: #ddd; 330 --wp-admin-theme-color: #007cba;
331 --wp-admin-theme-color--rgb: 0, 124, 186; 332 --wp-admin-theme-color-darker-10: rgb(0, 107, 160.5); 333 --wp-admin-theme-color-darker-10--rgb: 0, 107, 160.5; 334 --wp-admin-theme-color-darker-20: #005a87; 335 --wp-admin-theme-color-darker-20--rgb: 0, 90, 135; 336 --wp-admin-border-width-focus: 2px; 337} 338@media (min-resolution: 192dpi) { 339 :root { 340 --wp-admin-border-width-focus: 1.5px; 341 } 342} 343 344/** 345 * Element styles. 346 */ 347.wp-element-button { 348 cursor: pointer; 349} 350 351:root .has-very-light-gray-background-color { 352 background-color: #eee; 353} 354:root .has-very-dark-gray-background-color { 355 background-color: #313131; 356} 357:root .has-very-light-gray-color { 358 color: #eee; 359} 360:root .has-very-dark-gray-color { 361 color: #313131; 362} 363:root { 364 /* stylelint-disable @stylistic/function-comma-space-after -- We can not use spacing because of WP multi site kses rule. */ 365} 366:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background { 367 background: linear-gradient(135deg, rgb(0, 208, 132) 0%, rgb(6, 147, 227) 100%); 368} 369:root .has-purple-crush-gradient-background { 370 background: linear-gradient(135deg, rgb(52, 226, 228) 0%, rgb(71, 33, 251) 50%, rgb(171, 29, 254) 100%); 371} 372:root .has-hazy-dawn-gradient-background { 373 background: linear-gradient(135deg, rgb(250, 172, 168) 0%, rgb(218, 208, 236) 100%); 374} 375:root .has-subdued-olive-gradient-background { 376 background: linear-gradient(135deg, rgb(250, 250, 225) 0%, rgb(103, 166, 113) 100%); 377} 378:root .has-atomic-cream-gradient-background { 379 background: linear-gradient(135deg, rgb(253, 215, 154) 0%, rgb(0, 74, 89) 100%); 380} 381:root .has-nightshade-gradient-background { 382 background: linear-gradient(135deg, rgb(51, 9, 104) 0%, rgb(49, 205, 207) 100%); 383} 384:root .has-midnight-gradient-background { 385 background: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%); 386} 387:root { 388 /* stylelint-enable @stylistic/function-comma-space-after */ 389 --wp--preset--font-size--normal: 16px; 390 --wp--preset--font-size--huge: 42px; 391} 392 393.has-regular-font-size { 394 font-size: 1em; 395} 396 397.has-larger-font-size { 398 font-size: 2.625em; 399} 400 401.has-normal-font-size { 402 font-size: var(--wp--preset--font-size--normal); 403} 404 405.has-huge-font-size { 406 font-size: var(--wp--preset--font-size--huge); 407} 408 409:root .has-text-align-center { 410 text-align: center; 411} 412 413:root .has-text-align-left { 414 /*rtl:ignore*/ 415 text-align: left; 416} 417 418:root .has-text-align-right { 419 /*rtl:ignore*/ 420 text-align: right; 421} 422 423.has-fit-text { 424 white-space: nowrap !important; 425} 426 427#end-resizable-editor-section { 428 display: none; 429} 430 431.aligncenter { 432 clear: both; 433} 434 435.items-justified-left { 436 justify-content: flex-start; 437} 438 439.items-justified-center { 440 justify-content: center; 441} 442 443.items-justified-right { 444 justify-content: flex-end; 445} 446 447.items-justified-space-between { 448 justify-content: space-between; 449} 450 451.screen-reader-text { 452 border: 0; 453 clip-path: inset(50%); 454 height: 1px; 455 margin: -1px; 456 overflow: hidden; 457 padding: 0; 458 position: absolute; 459 width: 1px; 460 word-wrap: normal !important; 461 word-break: normal !important; 462} 463 464.screen-reader-text:focus { 465 background-color: #ddd; 466 clip-path: none; 467 color: #444; 468 display: block; 469 font-size: 1em; 470 height: auto; 471 left: 5px; 472 line-height: normal; 473 padding: 15px 23px 14px; 474 text-decoration: none; 475 top: 5px; 476 width: auto; 477 z-index: 100000; 478} 479 480/** 481 * The following provide a simple means of applying a default border style when 482 * a user first makes a selection in the border block support panel. 483 * This prevents issues such as where the user could set a border width 484 * and see no border due there being no border style set. 485 * 486 * This is intended to be removed once intelligent defaults can be set while 487 * making border selections via the block support. 488 * 489 * See: https://github.com/WordPress/gutenberg/pull/33743 490 */ 491html :where(.has-border-color) { 492 border-style: solid; 493} 494 495html :where([style^=border-color], 496[style*=";border-color"], 497[style*="; border-color"]) { 498 border-style: solid; 499} 500 501html :where([style^=border-top-color], 502[style*=";border-top-color"], 503[style*="; border-top-color"]) { 504 border-top-style: solid; 505} 506 507html :where([style^=border-right-color], 508[style*=";border-right-color"], 509[style*="; border-right-color"]) { 510 /*rtl:ignore*/ 511 border-right-style: solid; 512} 513 514html :where([style^=border-bottom-color], 515[style*=";border-bottom-color"], 516[style*="; border-bottom-color"]) { 517 border-bottom-style: solid; 518} 519 520html :where([style^=border-left-color], 521[style*=";border-left-color"], 522[style*="; border-left-color"]) { 523 /*rtl:ignore*/ 524 border-left-style: solid; 525} 526 527html :where([style^=border-width], 528[style*=";border-width"], 529[style*="; border-width"]) { 530 border-style: solid; 531} 532 533html :where([style^=border-top-width], 534[style*=";border-top-width"], 535[style*="; border-top-width"]) { 536 border-top-style: solid; 537} 538 539html :where([style^=border-right-width], 540[style*=";border-right-width"], 541[style*="; border-right-width"]) { 542 /*rtl:ignore*/ 543 border-right-style: solid; 544} 545 546html :where([style^=border-bottom-width], 547[style*=";border-bottom-width"], 548[style*="; border-bottom-width"]) { 549 border-bottom-style: solid; 550} 551 552html :where([style^=border-left-width], 553[style*=";border-left-width"], 554[style*="; border-left-width"]) { 555 /*rtl:ignore*/ 556 border-left-style: solid; 557} 558 559/** 560 * Provide baseline responsiveness for images. 561 */ 562html :where(img[class*=wp-image-]) { 563 height: auto; 564 max-width: 100%; 565} 566 567/** 568 * Reset user agent styles for figure element margins. 569 */ 570:where(figure) { 571 margin: 0 0 1em 0; 572} 573 574html :where(.is-position-sticky) { 575 --wp-admin--admin-bar--position-offset: var(--wp-admin--admin-bar--height, 0px); 576} 577 578@media screen and (max-width: 600px) { 579 html :where(.is-position-sticky) { 580 --wp-admin--admin-bar--position-offset: 0px; 581 } 582} 583 584/*# sourceURL=/wp-includes/css/dist/block-library/common.css */ 585</style> 586<style id="classic-theme-styles-inline-css"> 587/** 588 * These rules are needed for backwards compatibility. 589 * They should match the button element rules in the base theme.json file. 590 */ 591.wp-block-button__link { 592 color: #ffffff; 593 background-color: #32373c; 594 border-radius: 9999px; /* 100% causes an oval, but any explicit but really high value retains the pill shape. */ 595 596 /* This needs a low specificity so it won't override the rules from the button element if defined in theme.json. */ 597 box-shadow: none; 598 text-decoration: none; 599 600 /* The extra 2px are added to size solids the same as the outline versions.*/ 601 padding: calc(0.667em + 2px) calc(1.333em + 2px); 602 603 font-size: 1.125em; 604} 605 606.wp-block-file__button { 607 background: #32373c; 608 color: #ffffff; 609 text-decoration: none; 610} 611 612/*# sourceURL=/wp-includes/css/classic-themes.css */ 613</style> 614 615<style id="global-styles-inline-css"> 616:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
6160) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
616.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 617/*# sourceURL=global-styles-inline-css */ 618</style> 619
620<script id="utils-js-extra"> 621var userSettings = {"url":"/","uid":"0","time":"1790422035","secure":"1"}; 622//# sourceURL=utils-js-extra 623</script>
vendor: 1 bytes, line 623
623
624<script id="utils-js" src="https://subtlemedical.com/wp-includes/js/utils.js?ver=7.1"></script>
vendor: 1 bytes, line 624
624
625<script id="jquery-core-js" src="https://subtlemedical.com/wp-includes/js/jquery/jquery.js?ver=3.7.1"></script>
vendor: 1 bytes, line 625
625
626<script id="jquery-migrate-js" src="https://subtlemedical.com/wp-includes/js/jquery/jquery-migrate.js?ver=3.4.1"></script>
vendor: 1 bytes, line 626
626
627<script id="moxiejs-js" src="https://subtlemedical.com/wp-includes/js/plupload/moxie.js?ver=1.3.5.1"></script>
vendor: 1 bytes, line 627
627
628<script id="plupload-js" src="https://subtlemedical.com/wp-includes/js/plupload/plupload.js?ver=2.1.9"></script>
vendor: 1 bytes, line 628
628
629<script id="file_uploads_nfpluginsettings-js-extra"> 630var params = {"clearLogRestUrl":"https://subtlemedical.com/wp-json/nf-file-uploads/debug-log/delete-all","clearLogButtonId":"file_uploads_clear_debug_logger","downloadLogRestUrl":"https://subtlemedical.com/wp-json/nf-file-uploads/debug-log/get-all","downloadLogButtonId":"file_uploads_download_debug_logger"}; 631//# sourceURL=file_uploads_nfpluginsettings-js-extra 632</script>
vendor: 1 bytes, line 632
632
633<script id="file_uploads_nfpluginsettings-js" src="https://subtlemedical.com/wp-content/plugins/ninja-forms-uploads/assets/js/nfpluginsettings.js?ver=3.3.28"></script>
vendor: 1 bytes, line 633
633
634<script id="cookie-law-info-js-extra"> 635var _ckyConfig = {"_ipData":[],"_assetsURL":"https://subtlemedical.com/wp-content/plugins/cookie-law-info/lite/frontend/images/","_publicURL":"https://subtlemedical.com","_expiry":"365","_categories":[{"name":"Necessary","slug":"necessary","isNecessary":true,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":true,"ccpa":true}},{"name":"Functional","slug":"functional","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}},{"name":"Analytics","slug":"analytics","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}},{"name":"Performance","slug":"performance","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}},{"name":"Advertisement","slug":"advertisement","isNecessary":false,"ccpaDoNotSell":true,"cookies":[],"active":true,"defaultConsent":{"gdpr":false,"ccpa":false}}],"_activeLaw":"gdpr","_rootDomain":"","_block":"1","_showBanner":"1","_bannerConfig":{"settings":{"type":"box","preferenceCenterType":"popup","position":"bottom-left","applicableLaw":"gdpr"},"behaviours":{"reloadBannerOnAccept":false,"loadAnalyticsByDefault":false,"animations":{"onLoad":"animate","onHide":"sticky"}},"config":{"revisitConsent":{"status":true,"tag":"revisit-consent","position":"bottom-left","meta":{"url":"#"},"styles":{"background-color":"#0056A7"},"elements":{"title":{"type":"text","tag":"revisit-consent-title","status":true,"styles":{"color":"#0056a7"}}}},"preferenceCenter":{"toggle":{"status":true,"tag":"detail-category-toggle","type":"toggle","states":{"active":{"styles":{"background-color":"#1863DC"}},"inactive":{"styles":{"background-color":"#D0D5D2"}}}}},"categoryPreview":{"status":false,"toggle":{"status":true,"tag":"detail-category-preview-toggle","type":"toggle","states":{"active":{"styles":{"background-color":"#1863DC"}},"inactive":{"styles":{"background-color":"#D0D5D2"}}}}},"videoPlaceholder":{"status":true,"styles":{"background-color":"#000000","border-color":"#000000","color":"#ffffff"}},"readMore":{"status":false,"tag":"readmore-button","type":"link","meta":{"noFollow":true,"newTab":true},"styles":{"color":"#1863DC","background-color":"transparent","border-color":"transparent"}},"showMore":{"status":true,"tag":"show-desc-button","type":"button","styles":{"color":"#1863DC"}},"showLess":{"status":true,"tag":"hide-desc-button","type":"button","styles":{"color":"#1863DC"}},"alwaysActive":{"status":true,"tag":"always-active","styles":{"color":"#008000"}},"manualLinks":{"status":true,"tag":"manual-links","type":"link","styles":{"color":"#1863DC"}},"auditTable":{"status":true},"optOption":{"status":true,"toggle":{"status":true,"tag":"optout-option-toggle","type":"toggle","states":{"active":{"styles":{"background-color":"#1863dc"}},"inactive":{"styles":{"background-color":"#FFFFFF"}}}}}}},"_version":"3.5.5","_logConsent":"1","_tags":[{"tag":"accept-button","styles":{"color":"#FFFFFF","background-color":"#1863DC","border-color":"#1863DC"}},{"tag":"reject-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"#1863DC"}},{"tag":"settings-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"#1863DC"}},{"tag":"readmore-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"transparent"}},{"tag":"donotsell-button","styles":{"color":"#1863DC","background-color":"transparent","border-color":"transparent"}},{"tag":"show-desc-button","styles":{"color":"#1863DC"}},{"tag":"hide-desc-button","styles":{"color":"#1863DC"}},{"tag":"cky-always-active","styles":[]},{"tag":"cky-link","styles":[]},{"tag":"accept-button","styles":{"color":"#FFFFFF","background-color":"#1863DC","border-color":"#1863DC"}},{"tag":"revisit-consent","styles":{"background-color":"#0056A7"}}],"_shortCodes":[{"key":"cky_readmore","content":"\u003Ca href=\"#\" class=\"cky-policy\" aria-label=\"Cookie Policy\" target=\"_blank\" rel=\"noopener\" data-cky-tag=\"readmore-button\"\u003ECookie Policy\u003C/a\u003E","tag":"readmore-button","status":false,"attributes":{"rel":"nofollow","target":"_blank"}},{"key":"cky_show_desc","content":"\u003Cbutton class=\"cky-show-desc-btn\" data-cky-tag=\"show-desc-button\" aria-label=\"
635Show more\"\u003EShow more\u003C/button\u003E","tag":"show-desc-button","status":true,"attributes":[]},{"key":"cky_hide_desc","content":"\u003Cbutton class=\"cky-show-desc-btn\" data-cky-tag=\"hide-desc-button\" aria-label=\"Show less\"\u003EShow less\u003C/button\u003E","tag":"hide-desc-button","status":true,"attributes":[]},{"key":"cky_optout_show_desc","content":"[cky_optout_show_desc]","tag":"optout-show-desc-button","status":true,"attributes":[]},{"key":"cky_optout_hide_desc","content":"[cky_optout_hide_desc]","tag":"optout-hide-desc-button","status":true,"attributes":[]},{"key":"cky_category_toggle_label","content":"[cky_{{status}}_category_label] [cky_preference_{{category_slug}}_title]","tag":"","status":true,"attributes":[]},{"key":"cky_enable_category_label","content":"Enable","tag":"","status":true,"attributes":[]},{"key":"cky_disable_category_label","content":"Disable","tag":"","status":true,"attributes":[]},{"key":"cky_video_placeholder","content":"\u003Cdiv class=\"video-placeholder-normal\" data-cky-tag=\"video-placeholder\" id=\"[UNIQUEID]\"\u003E\u003Cp class=\"video-placeholder-text-normal\" data-cky-tag=\"placeholder-title\"\u003EPlease accept cookies to access this content\u003C/p\u003E\u003C/div\u003E","tag":"","status":true,"attributes":[]},{"key":"cky_enable_optout_label","content":"Enable","tag":"","status":true,"attributes":[]},{"key":"cky_disable_optout_label","content":"Disable","tag":"","status":true,"attributes":[]},{"key":"cky_optout_toggle_label","content":"[cky_{{status}}_optout_label] [cky_optout_option_title]","tag":"","status":true,"attributes":[]},{"key":"cky_optout_option_title","content":"Do Not Sell or Share My Personal Information","tag":"","status":true,"attributes":[]},{"key":"cky_optout_close_label","content":"Close","tag":"","status":true,"attributes":[]},{"key":"cky_preference_close_label","content":"Close","tag":"","status":true,"attributes":[]}],"_rtl":"","_language":"en","_providersToBlock":[]}; 636var _ckyStyles = {"css":".cky-overlay{background: #000000; opacity: 0.4; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 99999999;}.cky-hide{display: none;}.cky-btn-revisit-wrapper{display: flex; align-items: center; justify-content: center; background: #0056a7; width: 45px; height: 45px; border-radius: 50%; position: fixed; z-index: 999999; cursor: pointer;}.cky-revisit-bottom-left{bottom: 15px; left: 15px;}.cky-revisit-bottom-right{bottom: 15px; right: 15px;}.cky-btn-revisit-wrapper .cky-btn-revisit{display: flex; align-items: center; justify-content: center; background: none; border: none; cursor: pointer; position: relative; margin: 0; padding: 0;}.cky-btn-revisit-wrapper .cky-btn-revisit img{max-width: fit-content; margin: 0; height: 30px; width: 30px;}.cky-revisit-bottom-left:hover::before{content: attr(data-tooltip); position: absolute; background: #4e4b66; color: #ffffff; left: calc(100% + 7px); font-size: 12px; line-height: 16px; width: max-content; padding: 4px 8px; border-radius: 4px;}.cky-revisit-bottom-left:hover::after{position: absolute; content: \"\"; border: 5px solid transparent; left: calc(100% + 2px); border-left-width: 0; border-right-color: #4e4b66;}.cky-revisit-bottom-right:hover::before{content: attr(data-tooltip); position: absolute; background: #4e4b66; color: #ffffff; right: calc(100% + 7px); font-size: 12px; line-height: 16px; width: max-content; padding: 4px 8px; border-radius: 4px;}.cky-revisit-bottom-right:hover::after{position: absolute; content: \"\"; border: 5px solid transparent; right: calc(100% + 2px); border-right-width: 0; border-left-color: #4e4b66;}.cky-revisit-hide{display: none;}.cky-consent-container{position: fixed; width: 440px; box-sizing: border-box; z-index: 9999999; border-radius: 6px;}.cky-consent-container .cky-consent-bar{background: #ffffff; border: 1px solid; padding: 20px 26px; box-shadow: 0 -1px 10px 0 #acabab4d; border-radius: 6px;}.cky-box-bottom-left{bottom: 40px; left: 40px;}.cky-box-bottom-right{bottom: 40px; right: 40px;}.cky-box-top-left{top: 40px; left: 40px;}.cky-box-top-right{top: 40px; right: 40px;}.cky-custom-brand-logo-wrapper .cky-custom-brand-logo{width: 100px; height: auto; margin: 0 0 12px 0;}.cky-notice .cky-title{color: #212121; font-weight: 700; font-size: 18px; line-height: 24px; margin: 0 0 12px 0;}.cky-notice-des *,.cky-preference-content-wrapper *,.cky-accordion-header-des *,.cky-gpc-wrapper .cky-gpc-desc *{font-size: 14px;}.cky-notice-des{color: #212121; font-size: 14px; line-height: 24px; font-weight: 400;}.cky-notice-des img{height: 25px; width: 25px;}.cky-consent-bar .cky-notice-des p,.cky-gpc-wrapper .cky-gpc-desc p,.cky-preference-body-wrapper .cky-preference-content-wrapper p,.cky-accordion-header-wrapper .cky-accordion-header-des p,.cky-cookie-des-table li div:last-child p{color: inherit; margin-top: 0; overflow-wrap: break-word;}.cky-notice-des P:last-child,.cky-preference-content-wrapper p:last-child,.cky-cookie-des-table li div:last-child p:last-child,.cky-gpc-wrapper .cky-gpc-desc p:last-child{margin-bottom: 0;}.cky-notice-des a.cky-policy,.cky-notice-des button.cky-policy{font-size: 14px; color: #1863dc; white-space: nowrap; cursor: pointer; background: transparent; border: 1px solid; text-decoration: underline;}.cky-notice-des button.cky-policy{padding: 0;}.cky-notice-des a.cky-policy:focus-visible,.cky-notice-des button.cky-policy:focus-visible,.cky-preference-content-wrapper .cky-show-desc-btn:focus-visible,.cky-accordion-header .cky-accordion-btn:focus-visible,.cky-preference-header .cky-btn-close:focus-visible,.cky-switch input[type=\"checkbox\"]:focus-visible,.cky-footer-wrapper a:focus-visible,.cky-btn:focus-visible{outline: 2px solid #1863dc; outline-offset: 2px;}.cky-btn:focus:not(:focus-visible),.cky-accordion-header .cky-accordion-btn:focus:not(:focus-visible),.cky-preference-content-wrapper .cky-show-desc-btn:focus:not(:focus-visible),.cky-btn-revisit-wrapper .cky-btn-revisit:focus:not(:focus-visible),.cky-preference-header .cky-btn-close:focus:not(:focus-visible),.cky-consent-bar .cky-banner-btn-close:focus:not(:focus-visible){outline: 0;}button.cky-show-desc-btn:not(:hover):not(:active){color: #1863dc; background: transparent;}button.cky-accordion-btn:not(:hover):not(:active),button.cky-banner-btn-close:not(:hover):not(:active),button.cky-btn-revisit:not(:hover):not(:active),button.cky-btn-close:not(:hover):not(:active){background: transparent;}
636.cky-consent-bar button:hover,.cky-modal.cky-modal-open button:hover,.cky-consent-bar button:focus,.cky-modal.cky-modal-open button:focus{text-decoration: none;}.cky-notice-btn-wrapper{display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; margin-top: 16px;}.cky-notice-btn-wrapper .cky-btn{text-shadow: none; box-shadow: none;}.cky-btn{flex: auto; max-width: 100%; font-size: 14px; font-family: inherit; line-height: 24px; padding: 8px; font-weight: 500; margin: 0 8px 0 0; border-radius: 2px; cursor: pointer; text-align: center; text-transform: none; min-height: 0;}.cky-btn:hover{opacity: 0.8;}.cky-btn-customize{color: #1863dc; background: transparent; border: 2px solid #1863dc;}.cky-btn-reject{color: #1863dc; background: transparent; border: 2px solid #1863dc;}.cky-btn-accept{background: #1863dc; color: #ffffff; border: 2px solid #1863dc;}.cky-btn:last-child{margin-right: 0;}@media (max-width: 576px){.cky-box-bottom-left{bottom: 0; left: 0;}.cky-box-bottom-right{bottom: 0; right: 0;}.cky-box-top-left{top: 0; left: 0;}.cky-box-top-right{top: 0; right: 0;}}@media (max-width: 440px){.cky-box-bottom-left, .cky-box-bottom-right, .cky-box-top-left, .cky-box-top-right{width: 100%; max-width: 100%;}.cky-consent-container .cky-consent-bar{padding: 20px 0;}.cky-custom-brand-logo-wrapper, .cky-notice .cky-title, .cky-notice-des, .cky-notice-btn-wrapper{padding: 0 24px;}.cky-notice-des{max-height: 40vh; overflow-y: scroll;}.cky-notice-btn-wrapper{flex-direction: column; margin-top: 0;}.cky-btn{width: 100%; margin: 10px 0 0 0;}.cky-notice-btn-wrapper .cky-btn-customize{order: 2;}.cky-notice-btn-wrapper .cky-btn-reject{order: 3;}.cky-notice-btn-wrapper .cky-btn-accept{order: 1; margin-top: 16px;}}@media (max-width: 352px){.cky-notice .cky-title{font-size: 16px;}.cky-notice-des *{font-size: 12px;}.cky-notice-des, .cky-btn{font-size: 12px;}}.cky-modal.cky-modal-open{display: flex; visibility: visible; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); top: 50%; left: 50%; transition: all 1s ease;}.cky-modal{box-shadow: 0 32px 68px rgba(0, 0, 0, 0.3); margin: 0 auto; position: fixed; max-width: 100%; background: #ffffff; top: 50%; box-sizing: border-box; border-radius: 6px; z-index: 999999999; color: #212121; -webkit-transform: translate(-50%, 100%); -moz-transform: translate(-50%, 100%); -ms-transform: translate(-50%, 100%); -o-transform: translate(-50%, 100%); transform: translate(-50%, 100%); visibility: hidden; transition: all 0s ease;}.cky-preference-center{max-height: 79vh; overflow: hidden; width: 845px; overflow: hidden; flex: 1 1 0; display: flex; flex-direction: column; border-radius: 6px;}.cky-preference-header{display: flex; align-items: center; justify-content: space-between; padding: 22px 24px; border-bottom: 1px solid;}.cky-preference-header .cky-preference-title{font-size: 18px; font-weight: 700; line-height: 24px;}.cky-preference-header .cky-btn-close{margin: 0; cursor: pointer; vertical-align: middle; padding: 0; background: none; border: none; width: 24px; height: 24px; min-height: 0; line-height: 0; text-shadow: none; box-shadow: none;}.cky-preference-header .cky-btn-close img{margin: 0; height: 10px; width: 10px;}.cky-preference-body-wrapper{padding: 0 24px; flex: 1; overflow: auto; box-sizing: border-box;}.cky-preference-content-wrapper,.cky-gpc-wrapper .cky-gpc-desc{font-size: 14px; line-height: 24px; font-weight: 400; padding: 12px 0;}.cky-preference-content-wrapper{border-bottom: 1px solid;}.cky-preference-content-wrapper img{height: 25px; width: 25px;}.cky-preference-content-wrapper .cky-show-desc-btn{font-size: 14px; font-family: inherit; color: #1863dc; text-decoration: none; line-height: 24px; padding: 0; margin: 0; white-space: nowrap; cursor: pointer; background: transparent; border-color: transparent; text-transform: none; min-height: 0; text-shadow: none; box-shadow: none;}.cky-accordion-wrapper{margin-bottom: 10px;}.cky-accordion{border-bottom: 1px solid;}.cky-accordion:last-child{border-bottom: none;}.cky-accordion .cky-accordion-item{display: flex; margin-top: 10px;}
636.cky-accordion .cky-accordion-body{display: none;}.cky-accordion.cky-accordion-active .cky-accordion-body{display: block; padding: 0 22px; margin-bottom: 16px;}.cky-accordion-header-wrapper{cursor: pointer; width: 100%;}.cky-accordion-item .cky-accordion-header{display: flex; justify-content: space-between; align-items: center;}.cky-accordion-header .cky-accordion-btn{font-size: 16px; font-family: inherit; color: #212121; line-height: 24px; background: none; border: none; font-weight: 700; padding: 0; margin: 0; cursor: pointer; text-transform: none; min-height: 0; text-shadow: none; box-shadow: none;}.cky-accordion-header .cky-always-active{color: #008000; font-weight: 600; line-height: 24px; font-size: 14px;}.cky-accordion-header-des{font-size: 14px; line-height: 24px; margin: 10px 0 16px 0;}.cky-accordion-chevron{margin-right: 22px; position: relative; cursor: pointer;}.cky-accordion-chevron-hide{display: none;}.cky-accordion .cky-accordion-chevron i::before{content: \"\"; position: absolute; border-right: 1.4px solid; border-bottom: 1.4px solid; border-color: inherit; height: 6px; width: 6px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); transition: all 0.2s ease-in-out; top: 8px;}.cky-accordion.cky-accordion-active .cky-accordion-chevron i::before{-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg);}.cky-audit-table{background: #f4f4f4; border-radius: 6px;}.cky-audit-table .cky-empty-cookies-text{color: inherit; font-size: 12px; line-height: 24px; margin: 0; padding: 10px;}.cky-audit-table .cky-cookie-des-table{font-size: 12px; line-height: 24px; font-weight: normal; padding: 15px 10px; border-bottom: 1px solid; border-bottom-color: inherit; margin: 0;}.cky-audit-table .cky-cookie-des-table:last-child{border-bottom: none;}.cky-audit-table .cky-cookie-des-table li{list-style-type: none; display: flex; padding: 3px 0;}.cky-audit-table .cky-cookie-des-table li:first-child{padding-top: 0;}.cky-cookie-des-table li div:first-child{width: 100px; font-weight: 600; word-break: break-word; word-wrap: break-word;}.cky-cookie-des-table li div:last-child{flex: 1; word-break: break-word; word-wrap: break-word; margin-left: 8px;}.cky-footer-shadow{display: block; width: 100%; height: 40px; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #ffffff 100%); position: absolute; bottom: calc(100% - 1px);}.cky-footer-wrapper{position: relative;}.cky-prefrence-btn-wrapper{display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 22px 24px; border-top: 1px solid;}.cky-prefrence-btn-wrapper .cky-btn{flex: auto; max-width: 100%; text-shadow: none; box-shadow: none;}.cky-btn-preferences{color: #1863dc; background: transparent; border: 2px solid #1863dc;}.cky-preference-header,.cky-preference-body-wrapper,.cky-preference-content-wrapper,.cky-accordion-wrapper,.cky-accordion,.cky-accordion-wrapper,.cky-footer-wrapper,.cky-prefrence-btn-wrapper{border-color: inherit;}@media (max-width: 845px){.cky-modal{max-width: calc(100% - 16px);}}@media (max-width: 576px){.cky-modal{max-width: 100%;}.cky-preference-center{max-height: 100vh;}.cky-prefrence-btn-wrapper{flex-direction: column;}.cky-accordion.cky-accordion-active .cky-accordion-body{padding-right: 0;}.cky-prefrence-btn-wrapper .cky-btn{width: 100%; margin: 10px 0 0 0;}.cky-prefrence-btn-wrapper .cky-btn-reject{order: 3;}.cky-prefrence-btn-wrapper .cky-btn-accept{order: 1; margin-top: 0;}.cky-prefrence-btn-wrapper .cky-btn-preferences{order: 2;}}@media (max-width: 425px){.cky-accordion-chevron{margin-right: 15px;}.cky-notice-btn-wrapper{margin-top: 0;}.cky-accordion.cky-accordion-active .cky-accordion-body{padding: 0 15px;}}@media (max-width: 352px){.cky-preference-header .cky-preference-title{font-size: 16px;}.cky-preference-header{padding: 16px 24px;}.cky-preference-content-wrapper *, .cky-accordion-header-des *{font-size: 12px;}.cky-preference-content-wrapper, .cky-preference-content-wrapper .cky-show-more, .cky-accordion-header .cky-always-active, .cky-accordion-header-des, .cky-preference-content-wrapper .cky-show-desc-btn, .cky-notice-des a.cky-policy{font-size: 12px;}.cky-accordion-header .cky-accordion-btn{font-size: 14px;}}.cky-switch{display: flex;}.cky-switch input[type=\"checkbox\"]{position: relative; width: 44px; height: 24px; margin: 0; background: #d0d5d2; -webkit-appearance: none; border-radius: 50px; cursor: pointer; outline: 0; border: none; top: 0;}.cky-switch input[type=\"checkbox\"]:checked{background: #1863dc;}.cky-switch input[type=\"checkbox\"]:before{position: absolute; content: \"\"; height: 20px;
636 width: 20px; left: 2px; bottom: 2px; border-radius: 50%; background-color: white; -webkit-transition: 0.4s; transition: 0.4s; margin: 0;}.cky-switch input[type=\"checkbox\"]:after{display: none;}.cky-switch input[type=\"checkbox\"]:checked:before{-webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px);}@media (max-width: 425px){.cky-switch input[type=\"checkbox\"]{width: 38px; height: 21px;}.cky-switch input[type=\"checkbox\"]:before{height: 17px; width: 17px;}.cky-switch input[type=\"checkbox\"]:checked:before{-webkit-transform: translateX(17px); -ms-transform: translateX(17px); transform: translateX(17px);}}.cky-consent-bar .cky-banner-btn-close{position: absolute; right: 9px; top: 5px; background: none; border: none; cursor: pointer; padding: 0; margin: 0; min-height: 0; line-height: 0; height: 24px; width: 24px; text-shadow: none; box-shadow: none;}.cky-consent-bar .cky-banner-btn-close img{height: 9px; width: 9px; margin: 0;}.cky-notice-group{font-size: 14px; line-height: 24px; font-weight: 400; color: #212121;}.cky-notice-btn-wrapper .cky-btn-do-not-sell{font-size: 14px; line-height: 24px; padding: 6px 0; margin: 0; font-weight: 500; background: none; border-radius: 2px; border: none; cursor: pointer; text-align: left; color: #1863dc; background: transparent; border-color: transparent; box-shadow: none; text-shadow: none;}.cky-consent-bar .cky-banner-btn-close:focus-visible,.cky-notice-btn-wrapper .cky-btn-do-not-sell:focus-visible,.cky-opt-out-btn-wrapper .cky-btn:focus-visible,.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:focus-visible{outline: 2px solid #1863dc; outline-offset: 2px;}@media (max-width: 440px){.cky-consent-container{width: 100%;}}@media (max-width: 352px){.cky-notice-des a.cky-policy, .cky-notice-btn-wrapper .cky-btn-do-not-sell{font-size: 12px;}}.cky-opt-out-wrapper{padding: 12px 0;}.cky-opt-out-wrapper .cky-opt-out-checkbox-wrapper{display: flex; align-items: center;}.cky-opt-out-checkbox-wrapper .cky-opt-out-checkbox-label{font-size: 16px; font-weight: 700; line-height: 24px; margin: 0 0 0 12px; cursor: pointer;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox{background-color: #ffffff; border: 1px solid black; width: 20px; height: 18.5px; margin: 0; -webkit-appearance: none; position: relative; display: flex; align-items: center; justify-content: center; border-radius: 2px; cursor: pointer;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:checked{background-color: #1863dc; border: none;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:checked::after{left: 6px; bottom: 4px; width: 7px; height: 13px; border: solid #ffffff; border-width: 0 3px 3px 0; border-radius: 2px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); content: \"\"; position: absolute; box-sizing: border-box;}.cky-opt-out-checkbox-wrapper.cky-disabled .cky-opt-out-checkbox-label,.cky-opt-out-checkbox-wrapper.cky-disabled input[type=\"checkbox\"].cky-opt-out-checkbox{cursor: no-drop;}.cky-gpc-wrapper{margin: 0 0 0 32px;}.cky-footer-wrapper .cky-optout-action-area{padding:0 24px 22px 24px;box-sizing:border-box;border-color:inherit}.cky-footer-wrapper .cky-opt-out-btn-wrapper{padding-top:22px;border-top:1px solid;border-color:inherit}.cky-footer-wrapper .cky-opt-out-btn-wrapper{display: flex; flex-wrap: wrap; align-items: center; justify-content: center;}.cky-opt-out-btn-wrapper .cky-btn{flex: auto; max-width: 100%; text-shadow: none; box-shadow: none;}.cky-opt-out-btn-wrapper .cky-btn-cancel{border: 1px solid #dedfe0; background: transparent; color: #858585;}.cky-opt-out-btn-wrapper .cky-btn-confirm{background: #1863dc; color: #ffffff; border: 1px solid #1863dc;}\n.cky-optout-success{width:798px;max-width:100%;border-radius:8px;padding:8px 12px;margin:0 auto;box-sizing:border-box;outline:none}.cky-optout-success .cky-optout-success-inner{display:flex;flex-direction:column;gap:4px}.cky-optout-success .cky-optout-success-row{display:flex;align-items:flex-start}.cky-optout-success .cky-optout-success-icon{width:20px;flex-shrink:0}.cky-optout-success .cky-optout-success-text{margin:0;margin-inline-start:8px;margin-top:1px;font-weight:400;font-size:13px;line-height:20px}.cky-optout-success .cky-optout-success-text p{margin:0}.cky-optout-success .cky-optout-success-subtext{margin:0;font-weight:400;font-size:12px;line-height:20px}@media (max-width: 352px){.cky-opt-out-checkbox-wrapper .cky-opt-out-checkbox-label{font-size: 14px;}.cky-gpc-wrapper .cky-gpc-desc, .cky-gpc-wrapper .cky-gpc-desc *{font-size: 12px;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox{width: 16px; height: 16px;}.cky-opt-out-checkbox-wrapper input[type=\"checkbox\"].cky-opt-out-checkbox:checked::after{left: 5px; bottom: 4px; width: 3px; height: 9px;}.cky-gpc-wrapper{margin: 0 0 0 28px;}}.video-placeholder-youtube{background-size: 100% 100%; background-position: center; background-repeat: no-repeat; background-color: #b2b0b059; position: relative; display: flex; align-items: center; justify-content: center; max-width: 100%;}.video-placeholder-text-youtube{text-align: center; align-items: center; padding: 10px 16px; background-color: #000000cc; color: #ffffff; border: 1px solid; border-radius: 2px; cursor: pointer;}.video-placeholder-normal{background-image: url(\"/wp-content/plugins/cookie-law-info/lite/frontend/images/placeholder.svg\"); background-size: 80px; background-position: center; background-repeat: no-repeat; background-color: #b2b0b059; position: relative; display: flex; align-items: flex-end; justify-content: center; max-width: 100%;}
636.video-placeholder-text-normal{align-items: center; padding: 10px 16px; text-align: center; border: 1px solid; border-radius: 2px; cursor: pointer;}.cky-rtl{direction: rtl; text-align: right;}.cky-rtl .cky-banner-btn-close{left: 9px; right: auto;}.cky-rtl .cky-notice-btn-wrapper .cky-btn:last-child{margin-right: 8px;}.cky-rtl .cky-notice-btn-wrapper .cky-btn:first-child{margin-right: 0;}.cky-rtl .cky-notice-btn-wrapper{margin-left: 0; margin-right: 15px;}.cky-rtl .cky-prefrence-btn-wrapper .cky-btn{margin-right: 8px;}.cky-rtl .cky-prefrence-btn-wrapper .cky-btn:first-child{margin-right: 0;}.cky-rtl .cky-accordion .cky-accordion-chevron i::before{border: none; border-left: 1.4px solid; border-top: 1.4px solid; left: 12px;}.cky-rtl .cky-accordion.cky-accordion-active .cky-accordion-chevron i::before{-webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); -ms-transform: rotate(-135deg); -o-transform: rotate(-135deg); transform: rotate(-135deg);}@media (max-width: 768px){.cky-rtl .cky-notice-btn-wrapper{margin-right: 0;}}@media (max-width: 576px){.cky-rtl .cky-notice-btn-wrapper .cky-btn:last-child{margin-right: 0;}.cky-rtl .cky-prefrence-btn-wrapper .cky-btn{margin-right: 0;}.cky-rtl .cky-accordion.cky-accordion-active .cky-accordion-body{padding: 0 22px 0 0;}}@media (max-width: 425px){.cky-rtl .cky-accordion.cky-accordion-active .cky-accordion-body{padding: 0 15px 0 0;}}.cky-rtl .cky-opt-out-btn-wrapper .cky-btn{margin-right: 12px;}.cky-rtl .cky-opt-out-btn-wrapper .cky-btn:first-child{margin-right: 0;}.cky-rtl .cky-opt-out-checkbox-wrapper .cky-opt-out-checkbox-label{margin: 0 12px 0 0;}"}; 637//# sourceURL=cookie-law-info-js-extra 638</script>
vendor: 1 bytes, line 638
638
639<script id="cookie-law-info-js" src="https://subtlemedical.com/wp-content/plugins/cookie-law-info/lite/frontend/js/script.js?ver=3.5.5"></script>
vendor: 1 bytes, line 639
639
640<script id="owl-js" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/owl.carousel.min.js?ver=7.1"></script>
vendor: 1 bytes, line 640
640
641<script id="lightbox-js" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/html5lightbox.js?ver=7.1"></script>
vendor: 1 bytes, line 641
641
642<script id="beforeafter-js" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/beforeafter.jquery-1.0.0.min.js?ver=7.1"></script>
vendor: 1 bytes, line 642
642
643<script id="viewportchecker-js" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/jquery.viewportchecker.min.js?ver=7.1"></script>
vendor: 1 bytes, line 643
643
644<script id="cookie-js" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/js.cookie.js?ver=7.1"></script>
644 645<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://subtlemedical.com/xmlrpc.php?rsd" /> 646<meta name="generator" content="WordPress 7.1" /> 647<link rel='shortlink' href='https://subtlemedical.com/?p=12919' /> 648<style id="cky-style-inline">[data-cky-tag]{visibility:hidden;}</style> <!-- DO NOT COPY THIS SNIPPET! Start of Page Analytics Tracking for HubSpot WordPress plugin v11.3.73--> 649
649<script class="hsq-set-content-id" data-content-id="standard-page"> 650 var _hsq = _hsq || []; 651 _hsq.push(["setContentType", "standard-page"]); 652 </script>
652 653 <!-- DO NOT COPY THIS SNIPPET! End of Page Analytics Tracking for HubSpot WordPress plugin --> 654
654<script type="text/javascript"> 655 (function(c, l, a, r, i, t, y) { 656 c[a] = c[a] || function() { 657 (c[a].q = c[a].q || []).push(arguments) 658 }; 659 t = l.createElement(r); 660 t.async = 1; 661 t.src = "https://www.clarity.ms/tag/" + i + "?ref=wordpress"; 662 y = l.getElementsByTagName(r)[0]; 663 y.parentNode.insertBefore(t, y); 664 })(window, document, "clarity", "script", "v5lkrfn77q"); 665 </script>
665 666
666<script> 667 document.documentElement.className = document.documentElement.className.replace('no-js', 'js'); 668 </script>
668 669 <style> 670 .no-js img.lazyload { 671 display: none; 672 } 673 674 figure.wp-block-image img.lazyloading { 675 min-width: 150px; 676 } 677 678 .lazyload, 679 .lazyloading { 680 --smush-placeholder-width: 100px; 681 --smush-placeholder-bg-max-width: 120px; 682 --smush-placeholder-aspect-ratio: 1/1; 683 width: var(--smush-image-width, var(--smush-placeholder-width)) !important; 684 aspect-ratio: var(--smush-image-aspect-ratio, var(--smush-placeholder-aspect-ratio)) !important; 685 } 686 687 .lazyload, .lazyloading { 688 opacity: 0; 689 } 690 691 .lazyloaded { 692 opacity: 1; 693 transition: opacity 400ms; 694 transition-delay: 0ms; 695 } 696 697 </style> 698 <link rel="icon" href="https://subtlemedical.com/wp-content/uploads/2026/07/cropped-Subtle-Favicon-32x32.png" sizes="32x32" /> 699<link rel="icon" href="https://subtlemedical.com/wp-content/uploads/2026/07/cropped-Subtle-Favicon-192x192.png" sizes="192x192" /> 700<link rel="apple-touch-icon" href="https://subtlemedical.com/wp-content/uploads/2026/07/cropped-Subtle-Favicon-180x180.png" /> 701<meta name="msapplication-TileImage" content="https://subtlemedical.com/wp-content/uploads/2026/07/cropped-Subtle-Favicon-270x270.png" /> 702<style id="wp-custom-css"> 703span.right_menus { 704 font-size: 14px; 705 position: absolute; 706 right: 44px; 707 708} 709span.right_menus a { 710 711 color: #313131; 712 transition: all .3s; 713 padding: 6px; 714 margin: 2rem 0; 715 list-style: none; 716 font-size: 1.25rem; 717 line-height: 2rem; 718 text-transform: uppercase; 719 letter-spacing: 1px; 720 font-family: novecento-demi, 'novecento-demi', 'Myriad Pro', Arial, Verdana !important; 721 722} 723 724span.right_menus .active { 725 color: #04af82; 726 text-decoration: underline; 727} 728 729header#head { 730 height: 10rem; 731} 732 733header#head div#logo,nav ul#menu-main-menu { 734 margin-top: 2rem; 735} 736 737nav ul#menu-main-menu { 738 margin-top: 3rem; 739} 740ul#menu-intenational-menu { 741 padding: 0; 742 margin: 2rem 0; 743 list-style: none; 744 font-size: 1.25rem; 745 line-height: 2rem; 746 text-transform: uppercase; 747 letter-spacing: 2px; 748 font-family: novecento-demi, 'novecento-demi', 'Myriad Pro', Arial, Verdana !important; 749 margin-top: 3rem; 750} 751 752ul#menu-intenational-menu li { 753 position: relative; 754} 755ul#menu-main-menu li:hover ul.sub-menu { 756 display: block; 757} 758ul#menu-main-menu li ul.sub-menu { 759 display: none; 760 padding: 1rem 2rem; 761 background: #fff; 762 position: absolute; 763} 764ul#menu-main-menu li ul.sub-menu li { 765 float: none; 766 padding: 0; 767 margin: 1rem 0; 768} 769ul#menu-main-menu li ul.sub-menu li a { 770 white-space: nowrap; 771 padding: .5rem 0; 772} 773 774element.style { 775} 776ul#menu-intenational-menu li { 777 display: block; 778 margin: 0 1.2rem; 779 padding: 0; 780 float: left; 781} 782ul#menu-intenational-menu li a { 783 padding: 1rem 0; 784 display: block; 785 color: #313131; 786 transition: all .3s; 787} 788 789ul#menu-intenational-menu li a:hover { 790 color: #04af82; 791} 792 793ul#menu-intenational-menu li ul.sub-menu { 794 display: none; 795 padding: 1rem 2rem; 796 background: #fff; 797 position: absolute; 798} 799ul#menu-intenational-menu li:hover ul.sub-menu { 800 display: block; 801} 802 803nav ul#menu-main-menu li:hover ul.sub-menu ul.sub-menu { 804 display: none; 805} 806nav ul#menu-main-menu li:hover ul.sub-menu li:hover > ul.sub-menu { 807 display: block; 808 z-index: 9; 809 margin-left: 50px; 810} 811 812ul#menu-intenational-menu li:hover ul.sub-menu li ul.sub-menu {display: none;} 813 814#menu-intenational-menu li:hover ul.sub-menu li:hover > ul.sub-menu {display: block;z-index: 9;margin-left: 50px;width: 220px;} 815 816ul#menu-intenational-menu li ul.sub-menu li { 817 width: 100%; 818} 819li#menu-item-2533 a { 820 width: 2.8rem; 821 background: url(https://subtlemedical.com/wp-content/themes/subtlemedical/img/youtube-logo.svg) no-repeat center; 822 background-size: auto 3.4rem; 823 text-indent: -999rem; 824} 825</style> 826 <style id="core-block-supports-inline-css"> 827/** 828 * Core styles: block-supports 829 */ 830 831/*# sourceURL=core-block-supports-inline-css */ 832</style> 833 834</head> 835 836 <!-- Google Tag Manager - JW - 10-28-25 --> 837
837<script>
vendor: 331 bytes, lines 837-841
837(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 838 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 839 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 840 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 841 })(window,document,'script','dataLayer','
841GTM-5GZPPS88
vendor: 3 bytes, line 841
841');
841</script>
841 842 <!-- End Google Tag Manager --> 843 844 <body class="wp-singular page-template page-template-page-careers page-template-page-careers-php page page-id-12919 wp-theme-subtlemedical"> 845 <!-- Google Tag Manager (noscript) --> 846 <noscript><iframe data-src="https://www.googletagmanager.com/ns.html?id=GTM-K9SWWJS" 847 height="0" width="0" style="display:none;visibility:hidden" src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==" class="lazyload" data-load-mode="0"></iframe></noscript> 848 <!-- End Google Tag Manager (noscript) --> 849 850 <!-- Google Tag Manager (noscript) - jw - 10-28-25 --> 851 <noscript><iframe data-src="https://www.googletagmanager.com/ns.html?id=GTM-5GZPPS88" 852 height="0" width="0" style="display:none;visibility:hidden" src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==" class="lazyload" data-load-mode="0"></iframe></noscript> 853 <!-- End Google Tag Manager (noscript) --> 854 855 856 <div id="page"> 857 858 859 <div id="lightbox"> 860 <div class="lcontent"> 861 <div class="ov"> 862 <div class="body"> 863 <div class="close"></div> 864 865 </div> 866 </div> 867 </div> 868 </div> 869 870
870<script> 871 jQuery(document).ready(function($) { 872 if(!Cookies.get('sb2025') && 1==0){ 873 $('#lightbox').show(); 874 875 Cookies.set('sb2025', 'shown', { path: '/' }); 876 } 877 878 $('#lightbox .close').on('click', function(){ 879 $('#lightbox').fadeOut(); 880 }) 881 }); 882 </script>
882 883 884 <header id="head"> 885 <div class="row"> 886 <div class="flex"> 887 <div id="headlogo"> 888 <a href="https://subtlemedical.com"> 889 <img src="https://subtlemedical.com/wp-content/themes/subtlemedical/img/subtle-medical-logo.svg" alt="Subtle Medical" class="eager"> 890 </a> 891 </div> 892 <div id="headlogoinvert"> 893 <a href="https://subtlemedical.com"> 894 <img src="https://subtlemedical.com/wp-content/themes/subtlemedical/img/subtle-medical-logo-invert.svg" alt="Subtle Medical" class="eager"> 895 </a> 896 </div> 897 898 <nav id="mainMenu"> 899 <div class="scroll"> 900 <div class="content"> 901 <div class="menu-main-menu-container"><ul id="menu-main-menu" class="menu"><li id="menu-item-1126" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children menu-item-1126"><a href="#">Company</a> 902<ul class="sub-menu"> 903 <li id="menu-item-6322" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-6322"><a href="https://subtlemedical.com/about-us/">About Us</a></li> 904 <li id="menu-item-11862" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11862"><a href="/about-us/#leadership">Leadership</a></li> 905 <li id="menu-item-12963" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-12919 current_page_item menu-item-12963"><a href="https://subtlemedical.com/careers/" aria-current="page">Careers</a></li> 906 <li id="menu-item-10933" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10933"><a href="https://subtlemedical.com/contact/">Contact Us</a></li> 907</ul> 908</li> 909<li id="menu-item-6557" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-6557"><a href="#">AI Solutions</a> 910<ul class="sub-menu"> 911 <li id="menu-item-6551" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-6551"><a href="#">MRI</a> 912 <ul class="sub-menu"> 913 <li id="menu-item-10482" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-10482"><a href="https://subtlemedical.com/subtle-elite/">Subtle-ELITEâ¢</a> 914 <ul class="sub-menu"> 915 <li id="menu-item-13997" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13997"><a href="https://subtlemedical.com/subtlehdmr/">SubtleHDâ¢(MR)</a></li> 916 <li id="menu-item-10399" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10399"><a href="https://subtlemedical.com/subtlealign/">SubtleALIGNâ¢</a></li> 917 <li id="menu-item-10397" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10397"><a href="https://subtlemedical.com/subtlesynth/">SubtleSYNTHâ¢</a></li> 918 </ul> 919</li> 920 </ul> 921</li> 922 <li id="menu-item-6552" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-6552"><a href="#">PET</a> 923 <ul class="sub-menu"> 924 <li id="menu-item-10900" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10900"><a href="https://subtlemedical.com/subtlepet/">SubtleHDâ¢(PET)</a></li> 925 </ul> 926</li> 927 <li id="menu-item-13702" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-13702"><a href="#">CT</a> 928 <ul class="sub-menu"> 929 <li id="menu-item-13703" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13703"><a href="https://subtlemedical.com/subtlehdct/">SubtleHDâ¢(CT)</a></li> 930 </ul> 931</li> 932 <li id="menu-item-11214" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-11214"><a href="#">Partner Solutions</a> 933 <ul class="sub-menu"> 934 <li id="menu-item-11213" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11213"><a target="_blank" href="https://braccomr.com/aimify/">AiMIFYâ¢</a></li> 935 </ul> 936</li> 937 <li id="menu-item-9377" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-9377"><a href="#">Works In Progress</a> 938 <ul class="sub-menu"> 939 <li id="menu-item-9417" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-9417"><a href="#">MRI</a> 940 <ul class="sub-menu"> 941 <li id="menu-item-6553" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-6553"><a href="https://subtlemedical.com/subtlegad/">SubtleGADâ¢</a></li> 942 </ul> 943</li> 944 </ul> 945</li> 946</ul> 947</li> 948<li id="menu-item-1127" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-1127"><a href="#">Resources</a> 949<ul class="sub-menu"> 950 <li id="menu-item-2945" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2945"><a href="/news#posts">News</a></li> 951 <li id="menu-item-12866" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-12866"><a href="https://subtlemedical.com/events/">Events</a></li> 952 <li id="menu-item-11819" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11819"><a href="/news/#awards">Awards</a></li> 953 <li id="menu-item-387" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-387"><a href="https://subtlemedical.com/publications/">Publications</a></li> 954 <li id="menu-item-8741" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-8741"><a href="https://subtlemedical.com/clinical-case-studies/">Case Studies & White Papers</a></li> 955 <li id="menu-item-8740" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-8740"><a href="https://subtlemedical.com/customer-testimonials/">Customer Testimonials</a></li> 956 <li id="menu-item-6662" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-6662"><a target="_blank" href="https://subtlemedical.atlassian.net/servicedesk/customer/portals">Help Center</a></li> 957</ul> 958</li> 959<li id="menu-item-2355" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-2355"><a href="https://subtlemedical.com/subtle-insights/">Subtle Insights</a> 960<ul class="sub-menu"> 961 <li id="menu-item-14336" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14336"><a href="https://subtlemedical.com/resources/?resource_search=&type=blog&resource_topic=all">Blog</a></li> 962 <li id="menu-item-14337" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14337"><a href="https://subtlemedical.com/resources/?resource_search=&type=webinar&resource_topic=all">Webinar</a></li> 963 <li id="menu-item-14338" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14338"><a href="https://subtlemedical.com/resources/?resource_search=&type=case-study&resource_topic=all">Case Studies</a></li> 964 <li id="menu-item-14339" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14339"><a href="https://subtlemedical.com/resources/?resource_search=&type=white-paper&resource_topic=all">Whitepapers</a></li> 965</ul> 966</li> 967<li id="menu-item-316" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-316"><a target="_blank" href="https://www.youtube.com/channel/UCSjsgz4N9WHIYT3_5-ylYJw">YouTube</a></li> 968</ul></div> </div> 969 </div> 970 </nav> 971 972 <div id="aimm"> 973 <div class="scroll"> 974 <div class="content"> 975 <div class="flex"> 976 <div class="left"> 977 <h2>Our Solutions</h2> 978 <p>Advanced AI software solutions for faster, safer, and higher quality MRI and PET imaging.</p> 979 </div> 980 <div class="right"> 981 <div class="flex"> 982 <div class="col">
983 <span class="tag">For MRI</span> 984 <a href="/subtle-elite/" class="margin"> 985 <h3>The Subtle-ELITE⢠Package</h3> 986 </a> 987 988 <a href="/subtlehdmr/" class="margin"> 989 <h4>SubtleHDâ¢(MR)</h4> 990 <p>AI-powered denoising and sharpening for ultra-clear MRI images, enabling up to 80% faster scan times.</p> 991 </a> 992 993 <a href="/subtlesynth/" class="margin"> 994 <h4>SubtleSYNTHâ¢</h4> 995 <p>AI-generated MR imaging contrasts, achieving 100% acceleration and producing STIR images in 0 minutes.</p> 996 </a> 997 998 <a href="/subtlealign/"> 999 <h4>SubtleALIGNâ¢</h4> 1000 <p>Automates brain MR alignment for improved consistency and reduced manual adjustments.</p> 1001 </a> 1002 1003 <span class="tag">Partner Solutions</span> 1004 <a href="https://braccomr.com/aimify/" target="_blank()"> 1005 <h3>AiMIFY⢠<small>(Sold by Bracco)</small></h3> 1006 <p>AI that selectively amplifies brain lesion visualization for up to double the visibility of FDA-approved Gd doses.</p> 1007 </a> 1008 </div> 1009 1010 <div class="col"> 1011 <span class="tag">For PET</span> 1012 1013 <a href="/subtlepet/"> 1014 <h3>SubtleHDâ¢(PET)</h3> 1015 <p>AI-powered image enhancement for low count PET imaging.</p> 1016 </a> 1017 1018 <span class="tag">For CT</span> 1019 1020 <a href="/subtlehdct/"> 1021 <h3>SubtleHDâ¢(CT)</h3> 1022 <p>AI-powered denoising for ultra clear CT.</p> 1023 </a> 1024 1025 1026 1027 <span class="tag">Work in Progress</span> 1028 <a href="/subtlegad/"> 1029 <h3>SubtleGADâ¢</h3> 1030 <p>AI-powered contrast enhancement, dramatically reducing gadolinium dosage while maintaining image quality.</p> 1031 </a> 1032 </div> 1033 </div> 1034 </div> 1035 </div> 1036 </div> 1037 </div> 1038 </div> 1039 1040 <div id="mobileTrigger"> 1041 <div></div> 1042 <div></div> 1043 </div> 1044 </div> 1045 </div> 1046 </header> 1047 1048<!-- end header --> 1049 1050 1051 <section id="hero"> 1052 <div class="bg lazyload" style="background-image:inherit" alt="" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/careers-bg-scaled.png)"> 1053 <div class="row"> 1054 <div class="flex"> 1055 <div class="txt" > 1056 <h2><span>Become a part of something great</span></h2> 1057 <p>Subtle Medical combines breakthrough deep learning technology and a brilliant team to make a real difference in patients' lives. We push the boundaries of existing technologies. We listen and research. We innovate to improve the imaging process.</p> 1058 <a href="#positions">View Positions</a> 1059 </div> 1060 <div class="video"> 1061 <div class="videocont"> 1062 <video width="320" height="240" poster="/wp-content/uploads/poster.png" playsinline controls> 1063 <source src="/wp-content/uploads/SubtleMindsBehindSri.mp4" type="video/mp4"> 1064 </video> 1065 </div> 1066 </div> 1067 </div> 1068 </div> 1069 </section> 1070 1071 1072
1072<script> 1073 jQuery(document).ready(function($){ 1074 var hash; 1075 1076 /* slide not jump */ 1077 $('#hero a').on('click', function(e){ 1078 var href = $(this).attr("href"); 1079 1080 if(href.indexOf("#")>=0){ 1081 hash = href.substr(href.indexOf("#")); 1082 if($(hash).length>0){ 1083 e.preventDefault(); 1084 var offset = $(hash).offset().top-150; 1085 1086 $('html,body').animate({scrollTop: offset },'slow'); 1087 1088 document.location.hash = hash; 1089 } 1090 } 1091 }) 1092 }) 1093 </script>
1093 1094 1095 1096 <section id="gallery"> 1097 <div class="row"> 1098 <h2>The Subtle Medical Family</h2> 1099 <div class="content"> 1100 <div class="slider"> 1101 <a href="https://subtlemedical.com/wp-content/uploads/2026/04/IMG_0599-2-scaled.jpg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/IMG_0599-2-1024x768.jpg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-02-at-3.32.29-PM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-02-at-3.32.29-PM.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-08-at-2.21.02-PM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-08-at-2.21.02-PM-910x1024.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2018/11/gal3.jpeg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2018/11/gal3.jpeg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-02-at-3.35.15-PM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-02-at-3.35.15-PM-1024x844.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/IMG_3559-scaled.jpg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/IMG_3559-1024x768.jpg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-08-at-4.31.12-PM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-08-at-4.31.12-PM-1014x1024.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-01-at-3.39.09-PM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-01-at-3.39.09-PM-1024x765.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/image-10.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/image-10-1024x761.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-01-at-3.37.29-PM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2026-04-01-at-3.37.29-PM-1024x764.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2019/09/Screen-Shot-2019-09-16-at-9.01.22-AM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2019/09/Screen-Shot-2019-09-16-at-9.01.22-AM-1024x444.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/IMG_2204-scaled.jpg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/IMG_2204-768x1024.jpg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/pic3.jpg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/pic3.jpg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2018/11/gal4.jpeg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2018/11/gal4.jpeg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/pic1.jpg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/pic1.jpg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2025-09-26-at-10.57.47-AM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2026/04/Screenshot-2025-09-26-at-10.57.47-AM-769x1024.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2022/02/Screen-Shot-2022-02-09-at-10.48.30-AM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2022/02/Screen-Shot-2022-02-09-at-10.48.30-AM-1024x679.png)"></a><a href="https://subtlemedical.com/wp-content/uploads/2019/08/webinar1.jpg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2019/08/webinar1-1024x572.jpg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2019/05/Image-from-iOS-2.jpg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2019/05/Image-from-iOS-2-1024x768.jpg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2018/11/gal1.jpeg" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2018/11/gal1.jpeg)"></a><a href="https://subtlemedical.com/wp-content/uploads/2019/05/Screen-Shot-2019-05-14-at-2.54.43-PM.png" style="background-image:inherit;" class="html5lightbox lazyload" data-bg-image="url(https://subtlemedical.com/wp-content/uploads/2019/05/Screen-Shot-2019-05-14-at-2.54.43-PM.png)"></a> </div> 1102 </div> 1103 </div> 1104 1105
1105<script> 1106 jQuery(document).ready(function($){ 1107 $('#gallery .slider').owlCarousel({ 1108 'items':4, 1109 'loop':true, 1110 'nav':true, 1111 'dots':false, 1112 'margin':30, 1113 'autoplay':true, 1114 'autoplayHoverPause':true, 1115 'autoplayTimeout':3000, 1116 'responsive':{ 1117 0:{ 1118 'items':1 1119 }, 1120 550:{ 1121 'items':2 1122 }, 1123 950:{ 1124 'items':3 1125 }, 1126 1200:{ 1127 'items':4 1128 }, 1129 } 1130 }); 1131 }) 1132 </script>
1132 1133 </section> 1134 1135 <section id="positions"> 1136 <div class="row"> 1137 <h2>Available Positions</h2> 1138<p>Please email <a href="mailto:[email protected]">[email protected]</a> for questions.</p> 1139 </div> 1140 </section> 1141 1142 <section id="openings"> 1143 <div class="row"> 1144 1145 <h2>Customer Success</h2> 1146 1147 <div class="careers-group"> 1148 1149 <div class="career-item flex"> 1150 <div class="career-info"> 1151 <h3>Customer Support Manager</h3> 1152 <span class="tag">Remote</span> 1153 <span class="tag">USA</span> 1154 </div> 1155 <a href="https://subtlemedical.com/careers/customer-support-manager/"> 1156 View job 1157 </a> 1158 </div> 1159 1160 </div> 1161 1162 1163 <h2>Engineering</h2> 1164 1165 <div class="careers-group"> 1166 1167 <div class="career-item flex"> 1168 <div class="career-info"> 1169 <h3>Senior Platform Engineer</h3> 1170 <span class="tag">Remote</span> 1171 <span class="tag">USA</span> 1172 </div> 1173 <a href="https://subtlemedical.com/careers/senior-platform-engineer/"> 1174 View job 1175 </a> 1176 </div> 1177 1178 1179 <div class="career-item flex"> 1180 <div class="career-info"> 1181 <h3>
1181Machine Learning Software Engineer</h3> 1182 <span class="tag">Remote or Hybrid in SF Bay area</span> 1183 <span class="tag">USA</span> 1184 </div> 1185 <a href="https://subtlemedical.com/careers/machine-learning-software-engineer/"> 1186 View job 1187 </a> 1188 </div> 1189 1190 </div> 1191 1192 1193 <h2>G&A</h2> 1194 1195 <div class="careers-group"> 1196 1197 <div class="career-item flex"> 1198 <div class="career-info"> 1199 <h3>Director, People and Culture</h3> 1200 </div> 1201 <a href="https://subtlemedical.com/careers/director-people-and-culture/"> 1202 View job 1203 </a> 1204 </div> 1205 1206 </div> 1207 1208 1209 <h2>Sales</h2> 1210 1211 <div class="careers-group"> 1212 1213 <div class="career-item flex"> 1214 <div class="career-info"> 1215 <h3>Head of International Sales</h3> 1216 <span class="tag">Europe</span> 1217 <span class="tag">Remote</span> 1218 </div> 1219 <a href="https://subtlemedical.com/careers/head-of-international-sales/"> 1220 View job 1221 </a> 1222 </div> 1223 1224 </div> 1225 1226 </div> 1227 </section> 1228 1229 1230 1231<!-- begin footer --> 1232
1232<script type="speculationrules"> 1233{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/subtlemedical/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 1234</script>
vendor: 1 bytes, line 1234
1234
1235<script id="ckyBannerTemplate" type="text/template"><div class="cky-overlay cky-hide"></div><div class="cky-btn-revisit-wrapper cky-revisit-hide" data-cky-tag="revisit-consent" data-tooltip="Consent Preferences" style="background-color:#0056A7"> <button class="cky-btn-revisit" aria-label="Consent Preferences"> <img src="https://subtlemedical.com/wp-content/plugins/cookie-law-info/lite/frontend/images/revisit.svg" alt="Revisit consent button"> </button></div><div class="cky-consent-container cky-hide" tabindex="0"> <div class="cky-consent-bar" data-cky-tag="notice" style="background-color:#FFFFFF;border-color:#F4F4F4"> <div class="cky-notice"> <p class="cky-title" role="heading" aria-level="2" data-cky-tag="title" style="color:#212121">We value your privacy</p><div class="cky-notice-group"> <div class="cky-notice-des" data-cky-tag="description" style="color:#212121"> <p>We use cookies to enhance your browsing experience, serve personalised ads or content, and analyse our traffic. By clicking "Accept All", you consent to our use of cookies.</p> </div><div class="cky-notice-btn-wrapper" data-cky-tag="notice-buttons"> <button class="cky-btn cky-btn-customize" aria-label="Customise" aria-haspopup="true" aria-controls="ckyPreferenceCenter" data-cky-tag="settings-button" style="color:#1863DC;background-color:transparent;border-color:#1863DC">Customise</button> <button class="cky-btn cky-btn-reject" aria-label="Reject All" data-cky-tag="reject-button" style="color:#1863DC;background-color:transparent;border-color:#1863DC">Reject All</button> <button class="cky-btn cky-btn-accept" aria-label="Accept All" data-cky-tag="accept-button" style="color:#FFFFFF;background-color:#1863DC;border-color:#1863DC">Accept All</button> </div></div></div></div></div><div class="cky-modal" tabindex="0"> <div class="cky-preference-center" id="ckyPreferenceCenter" data-cky-tag="detail" style="color:#212121;background-color:#FFFFFF;border-color:#F4F4F4"> <div class="cky-preference-header"> <span class="cky-preference-title" role="heading" aria-level="2" data-cky-tag="detail-title" style="color:#212121">Customise Consent Preferences</span> <button class="cky-btn-close" aria-label="Close" data-cky-tag="detail-close"> <img src="https://subtlemedical.com/wp-content/plugins/cookie-law-info/lite/frontend/images/close.svg" alt=""> </button> </div><div class="cky-preference-body-wrapper"> <div class="cky-preference-content-wrapper" data-cky-tag="detail-description" style="color:#212121"> <p>We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.</p><p>The cookies that are categorised as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. </p><p>We also use third-party cookies that help us analyse how you use this website, store your preferences, and provide the content and advertisements that are relevant to you. These cookies will only be stored in your browser with your prior consent.</p><p>You can choose to enable or disable some or all of these cookies but disabling some of them may affect your browsing experience.</p> </div><div class="cky-accordion-wrapper" data-cky-tag="detail-categories"> <div class="cky-accordion" id="ckyDetailCategorynecessary"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Necessary" data-cky-tag="detail-category-title" style="color:#212121">Necessary</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchnecessary"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryfunctional"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Functional" data-cky-tag="detail-category-title" style="color:#212121">Functional</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchfunctional"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryanalytics"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Analytics" data-cky-tag="detail-category-title" style="color:#212121">Analytics</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchanalytics"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Analytical cookies are used to understand how visitors interact with the website. These
1235cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryperformance"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Performance" data-cky-tag="detail-category-title" style="color:#212121">Performance</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchperformance"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Performance cookies are used to understand and analyse the key performance indexes of the website which helps in delivering a better user experience for the visitors.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div><div class="cky-accordion" id="ckyDetailCategoryadvertisement"> <div class="cky-accordion-item"> <div class="cky-accordion-chevron"><i class="cky-chevron-right"></i></div> <div class="cky-accordion-header-wrapper"> <div class="cky-accordion-header"><button class="cky-accordion-btn" aria-label="Advertisement" data-cky-tag="detail-category-title" style="color:#212121">Advertisement</button><span class="cky-always-active">Always Active</span> <div class="cky-switch" data-cky-tag="detail-category-toggle"><input type="checkbox" id="ckySwitchadvertisement"></div> </div> <div class="cky-accordion-header-des" data-cky-tag="detail-category-description" style="color:#212121"> <p>Advertisement cookies are used to provide visitors with customised advertisements based on the pages you visited previously and to analyse the effectiveness of the ad campaigns.</p></div> </div> </div> <div class="cky-accordion-body"> <div class="cky-audit-table" data-cky-tag="audit-table" style="color:#212121;background-color:#f4f4f4;border-color:#ebebeb"><p class="cky-empty-cookies-text">No cookies to display.</p></div> </div> </div> </div></div><div class="cky-footer-wrapper"> <span class="cky-footer-shadow"></span> <div class="cky-prefrence-btn-wrapper" data-cky-tag="detail-buttons"> <button class="cky-btn cky-btn-reject" aria-label="Reject All" data-cky-tag="detail-reject-button" style="color:#1863DC;background-color:transparent;border-color:#1863DC"> Reject All </button> <button class="cky-btn cky-btn-preferences" aria-label="Save My Preferences" data-cky-tag="detail-save-button" style="color:#1863DC;background-color:transparent;border-color:#1863DC"> Save My Preferences </button> <button class="cky-btn cky-btn-accept" aria-label="Accept All" data-cky-tag="detail-accept-button" style="color:#ffffff;background-color:#1863DC;border-color:#1863DC"> Accept All </button> </div></div></div></div></script>
1235 1236
1236<script type="text/html" id="tmpl-media-frame"> 1237 <div class="media-frame-title" id="media-frame-title"></div> 1238 <h2 class="media-frame-menu-heading">Actions</h2> 1239 <button type="button" class="button button-link media-frame-menu-toggle" aria-expanded="false"> 1240 Menu <span class="dashicons dashicons-arrow-down" aria-hidden="true"></span> 1241 </button> 1242 <div class="media-frame-menu"></div> 1243 <div class="media-frame-tab-panel"> 1244 <div class="media-frame-router"></div> 1245 <div class="media-frame-content"></div> 1246 </div> 1247 <h2 class="media-frame-actions-heading screen-reader-text"> 1248 Selected media actions </h2> 1249 <div class="media-frame-toolbar"></div> 1250 <div class="media-frame-uploader"></div> 1251 </script>
1251 1252 1253
1253<script type="text/html" id="tmpl-media-modal"> 1254 <div id="wp-media-modal" tabindex="0" class="media-modal wp-core-ui" role="dialog" aria-labelledby="media-frame-title"> 1255 <# if ( data.hasCloseButton ) { #> 1256 <button type="button" class="media-modal-close"><span class="media-modal-icon" aria-hidden="true"></span><span class="screen-reader-text"> 1257 Close dialog </span></button> 1258 <# } #> 1259 <div class="media-modal-content" role="document"></div> 1260 </div> 1261 <div class="media-modal-backdrop"></div> 1262 </script>
1262 1263 1264
1264<script type="text/html" id="tmpl-uploader-window"> 1265 <div class="uploader-window-content"> 1266 <div class="uploader-editor-title">Drop files to upload</div> 1267 </div> 1268 </script>
1268 1269 1270
1270<script type="text/html" id="tmpl-uploader-editor"> 1271 <div class="uploader-editor-content"> 1272 <div class="uploader-editor-title">Drop files to upload</div> 1273 </div> 1274 </script>
1274 1275 1276
1276<script type="text/html" id="tmpl-uploader-inline"> 1277 <# var messageClass = data.message ? 'has-upload-message' : 'no-upload-message'; #> 1278 <# if ( data.canClose ) { #> 1279 <button class="close dashicons dashicons-no"><span class="screen-reader-text"> 1280 Close uploader </span></button> 1281 <# } #> 1282 <div class="uploader-inline-content {{ messageClass }}"> 1283 <# if ( data.message ) { #> 1284 <h2 class="upload-message">{{ data.message }}</h2> 1285 <# } #> 1286 <div class="upload-ui"> 1287 <h2 class="upload-instructions drop-instructions">Drop files to upload</h2> 1288 <p class="upload-instructions drop-instructions">or</p> 1289 <button type="button" class="browser button button-hero" aria-describedby="post-upload-info">Select Files</button> 1290 </div> 1291 1292 <div class="upload-inline-status"></div> 1293 1294 <div class="post-upload-ui" id="post-upload-info"> 1295 1296 <p class="max-upload-size"> 1297 Maximum upload file size: 128 MB. </p> 1298 1299 <# if ( data.suggestedWidth && data.suggestedHeight ) { #> 1300 <p class="suggested-dimensions"> 1301 Suggested image dimensions: {{data.suggestedWidth}} by {{data.suggestedHeight}} pixels. </p> 1302 <# } #> 1303 1304 </div> 1305 </div> 1306 </script>
1306 1307 1308
1308<script type="text/html" id="tmpl-media-library-view-switcher"> 1309 <a href="https://subtlemedical.com/wp-admin/upload.php?mode=list" class="view-list"> 1310 <span class="screen-reader-text"> 1311 List view </span> 1312 </a> 1313 <a href="https://subtlemedical.com/wp-admin/upload.php?mode=grid" class="view-grid current" aria-current="page"> 1314 <span class="screen-reader-text"> 1315 Grid view </span> 1316 </a> 1317 </script>
1317 1318 1319
1319<script type="text/html" id="tmpl-uploader-status"> 1320 <h2>Uploading</h2> 1321 1322 <div class="media-progress-bar"><div></div></div> 1323 <div class="upload-details"> 1324 <span class="upload-count"> 1325 <span class="upload-index"></span> / <span class="upload-total"></span> 1326 </span> 1327 <span class="upload-detail-separator">–</span> 1328 <span class="upload-filename"></span> 1329 </div> 1330 <div class="upload-errors"></div> 1331 <button type="button" class="button upload-dismiss-errors">Dismiss errors</button> 1332 </script>
1332 1333 1334
1334<script type="text/html" id="tmpl-uploader-status-error"> 1335 <span class="upload-error-filename word-wrap-break-word">{{{ data.filename }}}</span> 1336 <span class="upload-error-message">{{ data.message }}</span> 1337 </script>
1337 1338 1339
1339<script type="text/html" id="tmpl-edit-attachment-frame"> 1340 <div class="edit-media-header"> 1341 <button class="left dashicons"<# if ( ! data.hasPrevious ) { #> disabled<# } #>><span class="screen-reader-text">Edit previous media item</span></button> 1342 <button class="right dashicons"<# if ( ! data.hasNext ) { #> disabled<# } #>><span class="screen-reader-text">Edit next media item</span></button> 1343 <button type="button" class="media-modal-close"><span class="media-modal-icon" aria-hidden="true"></span><span class="screen-reader-text">Close dialog</span></button> 1344 </div> 1345 <div class="media-frame-title"></div> 1346 <div class="media-frame-content"></div> 1347 </script>
1347 1348 1349
1349<script type="text/html" id="tmpl-attachment-details-two-column"> 1350 <div class="attachment-media-view {{ data.orientation }}"> 1351 <h2 class="screen-reader-text">Attachment Preview</h2> 1352 <div class="thumbnail thumbnail-{{ data.type }}"> 1353 <# if ( data.uploading ) { #> 1354 <div class="media-progress-bar"><div></div></div> 1355 <# } else if ( data.sizes && data.sizes.full ) { #> 1356 <img class="details-image" src="{{ data.sizes.full.url }}" draggable="false" alt="" /> 1357 <# } else if ( data.sizes && data.sizes.large ) { #> 1358 <img class="details-image" src="{{ data.sizes.large.url }}" draggable="false" alt="" /> 1359 <# } else if ( -1 === jQuery.inArray( data.type, [ 'audio', 'video' ] ) ) { #> 1360 <img class="details-image icon" src="{{ data.icon }}" draggable="false" alt="" /> 1361 <# } #> 1362 1363 <# if ( 'audio' === data.type ) { #> 1364 <div class="wp-media-wrapper wp-audio"> 1365 <audio style="visibility: hidden" controls class="wp-audio-shortcode" width="100%" preload="none"> 1366 <source type="{{ data.mime }}" src="{{ data.url }}" /> 1367 </audio> 1368 </div> 1369 <# } else if ( 'video' === data.type ) { 1370 var w_rule = ''; 1371 if ( data.width ) { 1372 w_rule = 'width: ' + data.width + 'px;'; 1373 } else if ( wp.media.view.settings.contentWidth ) { 1374 w_rule = 'width: ' + wp.media.view.settings.contentWidth + 'px;'; 1375 } 1376 #> 1377 <div style="{{ w_rule }}" class="wp-media-wrapper wp-video"> 1378 <video controls="controls" class="wp-video-shortcode" preload="metadata" 1379 <# if ( data.width ) { #>width="{{ data.width }}"<# } #> 1380 <# if ( data.height ) { #>height="{{ data.height }}"<# } #> 1381 <# if ( data.image && data.image.src !== data.icon ) { #>poster="{{ data.image.src }}"<# } #>> 1382 <source type="{{ data.mime }}" src="{{ data.url }}" /> 1383 </video> 1384 </div> 1385 <# } #> 1386 1387 <div class="attachment-actions"> 1388 <# if ( 'image' === data.type && ! data.uploading && data.sizes && data.can.save ) { #> 1389 <button type="button" class="button edit-attachment">Edit Image</button> 1390 <# } else if ( 'pdf' === data.subtype && data.sizes ) { #> 1391 <p>Document Preview</p> 1392 <# } #> 1393 </div> 1394 </div> 1395 </div> 1396 <div class="attachment-info"> 1397 <span class="settings-save-status" role="status"> 1398 <span class="spinner"></span> 1399 <span class="saved">Saved.</span> 1400 </span> 1401 <div class="details"> 1402 <h2 class="screen-reader-text"> 1403 Details </h2> 1404 <div class="uploaded"><strong>Uploaded on:</strong> {{ data.dateFormatted }}</div> 1405 <div class="uploaded-by word-wrap-break-word"> 1406 <strong>Uploaded by:</strong> 1407 <# if ( data.authorLink ) { #> 1408 <a href="{{ data.authorLink }}">{{ data.authorName }}</a> 1409 <# } else { #> 1410 {{ data.authorName }} 1411 <# } #> 1412 </div> 1413 <# if ( data.uploadedToTitle ) { #> 1414 <div class="uploaded-to"> 1415 <strong>Uploaded to:</strong> 1416 <# if ( data.uploadedToLink ) { #> 1417 <a href="{{ data.uploadedToLink }}">{{ data.uploadedToTitle }}</a> 1418 <# } else { #> 1419 {{ data.uploadedToTitle }} 1420 <# } #> 1421 </div> 1422 <# } #> 1423 <div class="filename"><strong>File name:</strong> {{ data.filename }}</div> 1424 <div class="file-type"><strong>File type:</strong> {{ data.mime }}</div> 1425 <div class="file-size"><strong>File size:</strong> {{ data.filesizeHumanReadable }}</div> 1426 <# if ( 'image' === data.type && ! data.uploading ) { #> 1427 <# if ( data.width && data.height ) { #> 1428 <div class="dimensions"><strong>Dimensions:</strong> 1429 {{ data.width }} by {{ data.height }} pixels </div> 1430 <# } #> 1431 1432 <# if ( data.originalImageURL && data.originalImageName ) { #> 1433 <div class="word-wrap-break-word"> 1434 <strong>Original image:</strong> 1435 <a href="{{ data.originalImageURL }}">{{data.originalImageName}}</a> 1436 </div> 1437 <# } #> 1438 <# } #> 1439 1440 <# if ( data.fileLength && data.fileLengthHumanReadable ) { #> 1441 <div class="file-length"><strong>Length:</strong> 1442 <span aria-hidden="true">{{ data.fileLengthHumanReadable }}</span> 1443 <span class="screen-reader-text">{{ data.fileLengthHumanReadable }}</span> 1444 </div> 1445 <# } #> 1446 1447 <# if ( 'audio' === data.type && data.meta.bitrate ) { #> 1448 <div class="bitrate"> 1449 <strong>Bitrate:</strong> {{ Math.round( data.meta.bitrate / 1000 ) }}kb/s 1450 <# if ( data.meta.bitrate_mode ) { #> 1451 {{ ' ' + data.meta.bitrate_mode.toUpperCase() }} 1452 <# } #> 1453 </div> 1454 <# } #> 1455 1456 <# if ( data.mediaStates ) { #> 1457 <div class="media-states"><strong>Used as:</strong> {{ data.mediaStates }}</div> 1458 <# } #> 1459 1460 <div class="compat-meta"> 1461 <# if ( data.compat && data.compat.meta ) { #> 1462 {{{ data.compat.meta }}} 1463 <# } #>
1464 </div> 1465 </div> 1466 1467 <div class="settings"> 1468 <# var maybeReadOnly = data.can.save || data.allowLocalEdits ? '' : 'readonly'; #> 1469 <# if ( 'image' === data.type ) { #> 1470 <span class="setting alt-text has-description" data-setting="alt"> 1471 <label for="attachment-details-two-column-alt-text" class="name">Alternative Text</label> 1472 <textarea id="attachment-details-two-column-alt-text" aria-describedby="alt-text-description" {{ maybeReadOnly }}>{{ data.alt }}</textarea> 1473 </span> 1474 <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree/" target="_blank">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span><span aria-hidden="true" class="dashicons dashicons-external"></span></a>. Leave empty if the image is purely decorative.</p> 1475 <# } #> 1476 <span class="setting" data-setting="title"> 1477 <label for="attachment-details-two-column-title" class="name">Title</label> 1478 <input type="text" id="attachment-details-two-column-title" value="{{ data.title }}" {{ maybeReadOnly }} /> 1479 </span> 1480 <# if ( 'audio' === data.type ) { #> 1481 <span class="setting" data-setting="artist"> 1482 <label for="attachment-details-two-column-artist" class="name">Artist</label> 1483 <input type="text" id="attachment-details-two-column-artist" value="{{ data.artist || data.meta.artist || '' }}" /> 1484 </span> 1485 <span class="setting" data-setting="album"> 1486 <label for="attachment-details-two-column-album" class="name">Album</label> 1487 <input type="text" id="attachment-details-two-column-album" value="{{ data.album || data.meta.album || '' }}" /> 1488 </span> 1489 <# } #> 1490 <span class="setting" data-setting="caption"> 1491 <# if ( 'image' === data.type ) { #> 1492 <label for="attachment-details-two-column-caption" class="name">Image Caption</label> 1493 <# } else { #> 1494 <label for="attachment-details-two-column-caption" class="name">Short Description</label> 1495 <# } #> 1496 <textarea id="attachment-details-two-column-caption" {{ maybeReadOnly }}>{{ data.caption }}</textarea> 1497 </span> 1498 <span class="setting" data-setting="description"> 1499 <label for="attachment-details-two-column-description" class="name">Description</label> 1500 <textarea id="attachment-details-two-column-description" {{ maybeReadOnly }}>{{ data.description }}</textarea> 1501 </span> 1502 <span class="setting" data-setting="url"> 1503 <label for="attachment-details-two-column-copy-link" class="name">File URL:</label> 1504 <input type="text" class="attachment-details-copy-link ltr" id="attachment-details-two-column-copy-link" value="{{ data.url }}" readonly />
1505 <span class="copy-to-clipboard-container"> 1506 <button type="button" class="button button-small copy-attachment-url" data-clipboard-target="#attachment-details-two-column-copy-link">Copy URL to clipboard</button> 1507 <span class="success hidden" aria-hidden="true">Copied!</span> 1508 </span> 1509 </span> 1510 <div class="attachment-compat"></div> 1511 </div> 1512 1513 <div class="actions"> 1514 <# if ( data.link ) { #> 1515 <a class="view-attachment" href="{{ data.link }}">View attachment page</a> 1516 <# } #> 1517 <# if ( data.can.save ) { #> 1518 <# if ( data.link ) { #> 1519 <span class="links-separator">|</span> 1520 <# } #> 1521 <a href="{{ data.editLink }}">Edit more details</a> 1522 <# } #> 1523 <# if ( data.can.save && data.link ) { #> 1524 <span class="links-separator">|</span> 1525 <a href="{{ data.url }}" download>Download file</a> 1526 <# } #> 1527 <# if ( ! data.uploading && data.can.remove ) { #> 1528 <# if ( data.link || data.can.save ) { #> 1529 <span class="links-separator">|</span> 1530 <# } #> 1531 <button type="button" class="button-link delete-attachment">Delete permanently</button> 1532 <# } #> 1533 </div> 1534 </div> 1535 </script>
1535 1536 1537
1537<script type="text/html" id="tmpl-attachment"> 1538 <div class="attachment-preview js--select-attachment type-{{ data.type }} subtype-{{ data.subtype }} {{ data.orientation }}"> 1539 <div class="thumbnail"> 1540 <# if ( data.uploading ) { #> 1541 <div class="media-progress-bar"><div style="width: {{ data.percent }}%"></div></div> 1542 <# } else if ( 'image' === data.type && data.size && data.size.url ) { #> 1543 <div class="centered"> 1544 <img src="{{ data.size.url }}" draggable="false" alt="" /> 1545 </div> 1546 <# } else { #> 1547 <div class="centered"> 1548 <# if ( data.image && data.image.src && data.image.src !== data.icon ) { #> 1549 <img src="{{ data.image.src }}" class="thumbnail" draggable="false" alt="" /> 1550 <# } else if ( data.sizes ) { 1551 if ( data.sizes.medium ) { #> 1552 <img src="{{ data.sizes.medium.url }}" class="thumbnail" draggable="false" alt="" /> 1553 <# } else { #> 1554 <img src="{{ data.sizes.full.url }}" class="thumbnail" draggable="false" alt="" /> 1555 <# } #> 1556 <# } else { #> 1557 <img src="{{ data.icon }}" class="icon" draggable="false" alt="" /> 1558 <# } #> 1559 </div> 1560 <div class="filename"> 1561 <div>{{ data.filename }}</div> 1562 </div> 1563 <# } #> 1564 </div> 1565 <# if ( data.buttons.close ) { #> 1566 <button type="button" class="button-link attachment-close"><span class="media-modal-icon" aria-hidden="true"></span><span class="screen-reader-text"> 1567 Remove </span></button> 1568 <# } #> 1569 </div> 1570 <# if ( data.buttons.check ) { #> 1571 <button type="button" class="check" tabindex="-1"><span class="media-modal-icon" aria-hidden="true"></span><span class="screen-reader-text"> 1572 Deselect </span></button> 1573 <# } #> 1574 <# 1575 var maybeReadOnly = data.can.save || data.allowLocalEdits ? '' : 'readonly'; 1576 if ( data.describe ) { 1577 if ( 'image' === data.type ) { #> 1578 <input type="text" value="{{ data.caption }}" class="describe" data-setting="caption" 1579 aria-label="Caption" 1580 placeholder="Caption…" {{ maybeReadOnly }} /> 1581 <# } else { #> 1582 <input type="text" value="{{ data.title }}" class="describe" data-setting="title" 1583 <# if ( 'video' === data.type ) { #> 1584 aria-label="Video title" 1585 placeholder="Video title…" 1586 <# } else if ( 'audio' === data.type ) { #> 1587 aria-label="Audio title" 1588 placeholder="Audio title…" 1589 <# } else { #> 1590 aria-label="Media title" 1591 placeholder="Media title…" 1592 <# } #> {{ maybeReadOnly }} /> 1593 <# } 1594 } #> 1595 </script>
1595 1596 1597
1597<script type="text/html" id="tmpl-attachment-details"> 1598 <h2> 1599 Attachment Details <span class="settings-save-status" role="status"> 1600 <span class="spinner"></span> 1601 <span class="saved">Saved.</span> 1602 </span> 1603 </h2> 1604 <div class="attachment-info"> 1605 1606 <# if ( 'audio' === data.type ) { #> 1607 <div class="wp-media-wrapper wp-audio"> 1608 <audio style="visibility: hidden" controls class="wp-audio-shortcode" width="100%" preload="none"> 1609 <source type="{{ data.mime }}" src="{{ data.url }}" /> 1610 </audio> 1611 </div> 1612 <# } else if ( 'video' === data.type ) { 1613 var w_rule = ''; 1614 if ( data.width ) { 1615 w_rule = 'width: ' + data.width + 'px;'; 1616 } else if ( wp.media.view.settings.contentWidth ) { 1617 w_rule = 'width: ' + wp.media.view.settings.contentWidth + 'px;'; 1618 } 1619 #> 1620 <div style="{{ w_rule }}" class="wp-media-wrapper wp-video"> 1621 <video controls="controls" class="wp-video-shortcode" preload="metadata" 1622 <# if ( data.width ) { #>width="{{ data.width }}"<# } #> 1623 <# if ( data.height ) { #>height="{{ data.height }}"<# } #> 1624 <# if ( data.image && data.image.src !== data.icon ) { #>poster="{{ data.image.src }}"<# } #>> 1625 <source type="{{ data.mime }}" src="{{ data.url }}" /> 1626 </video> 1627 </div> 1628 <# } else { #> 1629 <div class="thumbnail thumbnail-{{ data.type }}"> 1630 <# if ( data.uploading ) { #> 1631 <div class="media-progress-bar"><div></div></div> 1632 <# } else if ( 'image' === data.type && data.size && data.size.url ) { #> 1633 <img src="{{ data.size.url }}" draggable="false" alt="" /> 1634 <# } else { #> 1635 <img src="{{ data.icon }}" class="icon" draggable="false" alt="" /> 1636 <# } #> 1637 </div> 1638 <# } #> 1639 1640 <div class="details"> 1641 <div class="filename">{{ data.filename }}</div> 1642 <div class="uploaded">{{ data.dateFormatted }}</div> 1643 1644 <div class="file-size">{{ data.filesizeHumanReadable }}</div> 1645 <# if ( 'image' === data.type && ! data.uploading ) { #> 1646 <# if ( data.width && data.height ) { #> 1647 <div class="dimensions"> 1648 {{ data.width }} by {{ data.height }} pixels </div> 1649 <# } #> 1650 1651 <# if ( data.originalImageURL && data.originalImageName ) { #> 1652 <div class="word-wrap-break-word"> 1653 Original image: <a href="{{ data.originalImageURL }}">{{data.originalImageName}}</a> 1654 </div> 1655 <# } #> 1656 1657 <# if ( data.can.save && data.sizes ) { #> 1658 <a class="edit-attachment" href="{{ data.editLink }}&image-editor" target="_blank">Edit Image</a> 1659 <# } #> 1660 <# } #> 1661 1662 <# if ( data.fileLength && data.fileLengthHumanReadable ) { #> 1663 <div class="file-length">Length: <span aria-hidden="true">{{ data.fileLengthHumanReadable }}</span> 1664 <span class="screen-reader-text">{{ data.fileLengthHumanReadable }}</span> 1665 </div> 1666 <# } #> 1667 1668 <# if ( data.mediaStates ) { #> 1669 <div class="media-states"><strong>Used as:</strong> {{ data.mediaStates }}</div> 1670 <# } #> 1671 1672 <# if ( ! data.uploading && data.can.remove ) { #> 1673 <button type="button" class="button-link delete-attachment">Delete permanently</button> 1674 <# } #> 1675 1676 <div class="compat-meta"> 1677 <# if ( data.compat && data.compat.meta ) { #> 1678 {{{ data.compat.meta }}} 1679 <# } #> 1680 </div> 1681 </div> 1682 </div> 1683 <# var maybeReadOnly = data.can.save || data.allowLocalEdits ? '' : 'readonly'; #> 1684 <# if ( 'image' === data.type ) { #> 1685 <span class="setting alt-text has-description" data-setting="alt"> 1686 <label for="attachment-details-alt-text" class="name">Alt Text</label> 1687 <textarea id="attachment-details-alt-text" aria-describedby="alt-text-description" {{ maybeReadOnly }}>{{ data.alt }}</textarea> 1688 </span> 1689 <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree/" target="_blank">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span><span aria-hidden="true" class="dashicons dashicons-external"></span></a>. Leave empty if the image is purely decorative.</p> 1690 <# } #> 1691 <span class="setting" data-setting="title"> 1692 <label for="attachment-details-title" class="name">Title</label> 1693 <input type="text" id="attachment-details-title" value="{{ data.title }}" {{ maybeReadOnly }} /> 1694 </span> 1695 <# if ( 'audio' === data.type ) { #> 1696 <span class="setting" data-setting="artist"> 1697 <label for="attachment-details-artist" class="name">Artist</label> 1698 <input type="text" id="attachment-details-artist" value="{{ data.artist || data.meta.artist || '' }}" /> 1699 </span> 1700 <span class="setting" data-setting="album"> 1701 <label for="attachment-details-album" class="name">Album</label> 1702 <input type="text" id="attachment-details-album" value="{{ data.album || data.meta.album || '' }}" /> 1703 </span> 1704 <# } #> 1705 <span class="setting" data-setting="caption"> 1706 <# if ( 'image' === data.type ) { #> 1707 <label for="attachment-details-caption" class="name">Image Caption</label> 1708 <# } else { #> 1709 <label for="attachment-details-caption" class="name">Short Description</label> 1710 <# } #> 1711 <textarea id="attachment-details-caption" {{ maybeReadOnly }}>{{ data.caption }}</textarea> 1712 </span> 1713 <span class="setting" data-setting="description"> 1714 <label for="attachment-details-description" class="name">Description</label> 1715 <textarea id="attachment-details-description" {{ maybeReadOnly }}>{{ data.description }}</textarea> 1716 </span> 1717 <span class="setting" data-setting="url"> 1718 <label for="attachment-details-copy-link" class="name">File URL:</label> 1719 <input type="text" class="attachment-details-copy-link ltr" id="attachment-details-copy-link" value="{{ data.url }}" readonly />
1720 <div class="copy-to-clipboard-container"> 1721 <button type="button" class="button button-small copy-attachment-url" data-clipboard-target="#attachment-details-copy-link">Copy URL to clipboard</button> 1722 <span class="success hidden" aria-hidden="true">Copied!</span> 1723 </div> 1724 </span> 1725 </script>
1725 1726 1727
1727<script type="text/html" id="tmpl-media-selection"> 1728 <div class="selection-info"> 1729 <span class="count"></span> 1730 <# if ( data.editable ) { #> 1731 <button type="button" class="button-link edit-selection">Edit Selection</button> 1732 <# } #> 1733 <# if ( data.clearable ) { #> 1734 <button type="button" class="button-link clear-selection">Clear</button> 1735 <# } #> 1736 </div> 1737 <div class="selection-view"></div> 1738 </script>
1738 1739 1740
1740<script type="text/html" id="tmpl-attachment-display-settings"> 1741 <h2>Attachment Display Settings</h2> 1742 1743 <# if ( 'image' === data.type ) { #> 1744 <span class="setting align"> 1745 <label for="attachment-display-settings-alignment" class="name">Alignment</label> 1746 <select id="attachment-display-settings-alignment" class="alignment" 1747 data-setting="align" 1748 <# if ( data.userSettings ) { #> 1749 data-user-setting="align" 1750 <# } #>> 1751 1752 <option value="left"> 1753 Left </option> 1754 <option value="center"> 1755 Center </option> 1756 <option value="right"> 1757 Right </option> 1758 <option value="none" selected> 1759 None </option> 1760 </select> 1761 </span> 1762 <# } #> 1763 1764 <span class="setting"> 1765 <label for="attachment-display-settings-link-to" class="name"> 1766 <# if ( data.model.canEmbed ) { #> 1767 Embed or Link <# } else { #> 1768 Link To <# } #> 1769 </label> 1770 <select id="attachment-display-settings-link-to" class="link-to" 1771 data-setting="link" 1772 <# if ( data.userSettings && ! data.model.canEmbed ) { #> 1773 data-user-setting="urlbutton" 1774 <# } #>> 1775 1776 <# if ( data.model.canEmbed ) { #> 1777 <option value="embed" selected> 1778 Embed Media Player </option> 1779 <option value="file"> 1780 <# } else { #> 1781 <option value="none" selected> 1782 None </option> 1783 <option value="file"> 1784 <# } #> 1785 <# if ( data.model.canEmbed ) { #> 1786 Link to Media File <# } else { #> 1787 Media File <# } #> 1788 </option> 1789 <option value="post"> 1790 <# if ( data.model.canEmbed ) { #> 1791 Link to Attachment Page <# } else { #> 1792 Attachment Page <# } #> 1793 </option> 1794 <# if ( 'image' === data.type ) { #> 1795 <option value="custom"> 1796 Custom URL </option> 1797 <# } #> 1798 </select> 1799 </span> 1800 <span class="setting"> 1801 <label for="attachment-display-settings-link-to-custom" class="name">URL</label> 1802 <input type="text" id="attachment-display-settings-link-to-custom" class="link-to-custom" data-setting="linkUrl" /> 1803 </span> 1804 1805 <# if ( 'undefined' !== typeof data.sizes ) { #> 1806 <span class="setting"> 1807 <label for="attachment-display-settings-size" class="name">Size</label> 1808 <select id="attachment-display-settings-size" class="size" name="size" 1809 data-setting="size" 1810 <# if ( data.userSettings ) { #> 1811 data-user-setting="imgsize" 1812 <# } #>> 1813 <# 1814 var size = data.sizes['thumbnail']; 1815 if ( size ) { #> 1816 <option value="thumbnail" > 1817 Thumbnail – {{ size.width }} × {{ size.height }} 1818 </option> 1819 <# } #> 1820 <# 1821 var size = data.sizes['medium']; 1822 if ( size ) { #> 1823 <option value="medium" > 1824 Medium – {{ size.width }} × {{ size.height }} 1825 </option> 1826 <# } #> 1827 <# 1828 var size = data.sizes['large']; 1829 if ( size ) { #> 1830 <option value="large" > 1831 Large – {{ size.width }} × {{ size.height }} 1832 </option> 1833 <# } #> 1834 <# 1835 var size = data.sizes['full']; 1836 if ( size ) { #> 1837 <option value="full" selected='selected'> 1838 Full Size – {{ size.width }} × {{ size.height }} 1839 </option> 1840 <# } #> 1841 </select> 1842 </span> 1843 <# } #> 1844 </script>
1844 1845 1846
1846<script type="text/html" id="tmpl-gallery-settings"> 1847 <h2>Gallery Settings</h2> 1848 1849 <span class="setting"> 1850 <label for="gallery-settings-link-to" class="name">Link To</label> 1851 <select id="gallery-settings-link-to" class="link-to" 1852 data-setting="link" 1853 <# if ( data.userSettings ) { #> 1854 data-user-setting="urlbutton" 1855 <# } #>> 1856 1857 <option value="post" <# if ( ! wp.media.galleryDefaults.link || 'post' === wp.media.galleryDefaults.link ) { 1858 #>selected="selected"<# } 1859 #>> 1860 Attachment Page </option> 1861 <option value="file" <# if ( 'file' === wp.media.galleryDefaults.link ) { #>selected="selected"<# } #>> 1862 Media File </option> 1863 <option value="none" <# if ( 'none' === wp.media.galleryDefaults.link ) { #>selected="selected"<# } #>> 1864 None </option> 1865 </select> 1866 </span> 1867 1868 <span class="setting"> 1869 <label for="gallery-settings-columns" class="name select-label-inline">Columns</label> 1870 <select id="gallery-settings-columns" class="columns" name="columns" 1871 data-setting="columns"> 1872 <option value="1" <# 1873 if ( 1 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1874 #>> 1875 1 </option> 1876 <option value="2" <# 1877 if ( 2 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1878 #>> 1879 2 </option> 1880 <option value="3" <# 1881 if ( 3 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1882 #>> 1883 3 </option> 1884 <option value="4" <# 1885 if ( 4 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1886 #>> 1887 4 </option> 1888 <option value="5" <# 1889 if ( 5 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1890 #>> 1891 5 </option> 1892 <option value="6" <# 1893 if ( 6 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1894 #>> 1895 6 </option> 1896 <option value="7" <# 1897 if ( 7 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1898 #>> 1899 7 </option> 1900 <option value="8" <# 1901 if ( 8 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1902 #>> 1903 8 </option> 1904 <option value="9" <# 1905 if ( 9 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } 1906 #>> 1907 9 </option> 1908 </select> 1909 </span> 1910 1911 <span class="setting"> 1912 <input type="checkbox" id="gallery-settings-random-order" data-setting="_orderbyRandom" /> 1913 <label for="gallery-settings-random-order" class="checkbox-label-inline">Random Order</label> 1914 </span> 1915 1916 <span class="setting size"> 1917 <label for="gallery-settings-size" class="name">Size</label> 1918 <select id="gallery-settings-size" class="size" name="size" 1919 data-setting="size" 1920 <# if ( data.userSettings ) { #> 1921 data-user-setting="imgsize" 1922 <# } #> 1923 > 1924 <option value="thumbnail"> 1925 Thumbnail </option> 1926 <option value="medium"> 1927 Medium </option> 1928 <option value="large"> 1929 Large </option> 1930 <option value="full"> 1931 Full Size </option> 1932 </select> 1933 </span> 1934 </script>
1934 1935 1936
1936<script type="text/html" id="tmpl-playlist-settings"> 1937 <h2>Playlist Settings</h2> 1938 1939 <# var emptyModel = _.isEmpty( data.model ), 1940 isVideo = 'video' === data.controller.get('library').props.get('type'); #> 1941 1942 <span class="setting"> 1943 <input type="checkbox" id="playlist-settings-show-list" data-setting="tracklist" <# if ( emptyModel ) { #> 1944 checked="checked" 1945 <# } #> /> 1946 <label for="playlist-settings-show-list" class="checkbox-label-inline"> 1947 <# if ( isVideo ) { #> 1948 Show Video List <# } else { #> 1949 Show Tracklist <# } #> 1950 </label> 1951 </span> 1952 1953 <# if ( ! isVideo ) { #> 1954 <span class="setting"> 1955 <input type="checkbox" id="playlist-settings-show-artist" data-setting="artists" <# if ( emptyModel ) { #> 1956 checked="checked" 1957 <# } #> /> 1958 <label for="playlist-settings-show-artist" class="checkbox-label-inline"> 1959 Show Artist Name in Tracklist </label> 1960 </span> 1961 <# } #> 1962 1963 <span class="setting"> 1964 <input type="checkbox" id="playlist-settings-show-images" data-setting="images" <# if ( emptyModel ) { #> 1965 checked="checked" 1966 <# } #> /> 1967 <label for="playlist-settings-show-images" class="checkbox-label-inline"> 1968 Show Images </label> 1969 </span> 1970 </script>
1970 1971 1972
1972<script type="text/html" id="tmpl-embed-link-settings"> 1973 <span class="setting link-text"> 1974 <label for="embed-link-settings-link-text" class="name">Link Text</label> 1975 <input type="text" id="embed-link-settings-link-text" class="alignment" data-setting="linkText" /> 1976 </span> 1977 <div class="embed-container" style="display: none;"> 1978 <div class="embed-preview"></div> 1979 </div> 1980 </script>
1980 1981 1982
1982<script type="text/html" id="tmpl-embed-image-settings"> 1983 <div class="wp-clearfix"> 1984 <div class="thumbnail"> 1985 <img src="{{ data.model.url }}" draggable="false" alt="" /> 1986 </div> 1987 </div> 1988 1989 <span class="setting alt-text has-description"> 1990 <label for="embed-image-settings-alt-text" class="name">Alternative Text</label> 1991 <textarea id="embed-image-settings-alt-text" data-setting="alt" aria-describedby="alt-text-description"></textarea> 1992 </span> 1993 <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree/" target="_blank">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span><span aria-hidden="true" class="dashicons dashicons-external"></span></a>. Leave empty if the image is purely decorative.</p> 1994 1995 <span class="setting caption"> 1996 <label for="embed-image-settings-caption" class="name">Caption</label> 1997 <textarea id="embed-image-settings-caption" data-setting="caption"></textarea> 1998 </span> 1999 2000 <fieldset class="setting-group"> 2001 <legend class="name">Align</legend> 2002 <span class="setting align"> 2003 <span class="button-group button-large" data-setting="align"> 2004 <button class="button" value="left"> 2005 Left </button> 2006 <button class="button" value="center"> 2007 Center </button> 2008 <button class="button" value="right"> 2009 Right </button> 2010 <button class="button active" value="none"> 2011 None </button> 2012 </span> 2013 </span> 2014 </fieldset> 2015 2016 <fieldset class="setting-group"> 2017 <legend class="name">Link To</legend> 2018 <span class="setting link-to"> 2019 <span class="button-group button-large" data-setting="link"> 2020 <button class="button" value="file"> 2021 Image URL </button> 2022 <button class="button" value="custom"> 2023 Custom URL </button> 2024 <button class="button active" value="none"> 2025 None </button> 2026 </span> 2027 </span> 2028 <span class="setting"> 2029 <label for="embed-image-settings-link-to-custom" class="name">URL</label> 2030 <input type="text" id="embed-image-settings-link-to-custom" class="link-to-custom" data-setting="linkUrl" /> 2031 </span> 2032 </fieldset> 2033 </script>
2033 2034 2035
2035<script type="text/html" id="tmpl-image-details"> 2036 <div class="media-embed"> 2037 <div class="embed-media-settings"> 2038 <div class="column-settings"> 2039 <span class="setting alt-text has-description"> 2040 <label for="image-details-alt-text" class="name">Alternative Text</label> 2041 <textarea id="image-details-alt-text" data-setting="alt" aria-describedby="alt-text-description">{{ data.model.alt }}</textarea> 2042 </span> 2043 <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree/" target="_blank">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span><span aria-hidden="true" class="dashicons dashicons-external"></span></a>. Leave empty if the image is purely decorative.</p> 2044 2045 <span class="setting caption"> 2046 <label for="image-details-caption" class="name">Caption</label> 2047 <textarea id="image-details-caption" data-setting="caption">{{ data.model.caption }}</textarea> 2048 </span> 2049 2050 <h2>Display Settings</h2> 2051 <fieldset class="setting-group"> 2052 <legend class="legend-inline">Align</legend> 2053 <span class="setting align"> 2054 <span class="button-group button-large" data-setting="align"> 2055 <button class="button" value="left"> 2056 Left </button> 2057 <button class="button" value="center"> 2058 Center </button> 2059 <button class="button" value="right"> 2060 Right </button> 2061 <button class="button active" value="none"> 2062 None </button> 2063 </span> 2064 </span> 2065 </fieldset> 2066 2067 <# if ( data.attachment ) { #> 2068 <# if ( 'undefined' !== typeof data.attachment.sizes ) { #> 2069 <span class="setting size"> 2070 <label for="image-details-size" class="name">Size</label> 2071 <select id="image-details-size" class="size" name="size" 2072 data-setting="size" 2073 <# if ( data.userSettings ) { #> 2074 data-user-setting="imgsize" 2075 <# } #>> 2076 <# 2077 var size = data.sizes['thumbnail']; 2078 if ( size ) { #> 2079 <option value="thumbnail"> 2080 Thumbnail – {{ size.width }} × {{ size.height }} 2081 </option> 2082 <# } #> 2083 <# 2084 var size = data.sizes['medium']; 2085 if ( size ) { #> 2086 <option value="medium"> 2087 Medium – {{ size.width }} × {{ size.height }} 2088 </option> 2089 <# } #> 2090 <# 2091 var size = data.sizes['large']; 2092 if ( size ) { #> 2093 <option value="large"> 2094 Large – {{ size.width }} × {{ size.height }} 2095 </option> 2096 <# } #> 2097 <# 2098 var size = data.sizes['full']; 2099 if ( size ) { #> 2100 <option value="full"> 2101 Full Size – {{ size.width }} × {{ size.height }} 2102 </option> 2103 <# } #> 2104 <option value="custom"> 2105 Custom Size </option> 2106 </select> 2107 </span> 2108 <# } #> 2109 <div class="custom-size wp-clearfix<# if ( data.model.size !== 'custom' ) { #> hidden<# } #>"> 2110 <span class="custom-size-setting"> 2111 <label for="image-details-size-width">Width</label> 2112 <input type="number" id="image-details-size-width" aria-describedby="image-size-desc" data-setting="customWidth" step="1" value="{{ data.model.customWidth }}" /> 2113 </span> 2114 <span class="sep" aria-hidden="true">×</span> 2115 <span class="custom-size-setting"> 2116 <label for="image-details-size-height">Height</label> 2117 <input type="number" id="image-details-size-height" aria-describedby="image-size-desc" data-setting="customHeight" step="1" value="{{ data.model.customHeight }}" /> 2118 </span> 2119 <p id="image-size-desc" class="description">Image size in pixels</p> 2120 </div> 2121 <# } #> 2122 2123 <span class="setting link-to"> 2124 <label for="image-details-link-to" class="name">Link To</label> 2125 <select id="image-details-link-to" data-setting="link"> 2126 <# if ( data.attachment ) { #> 2127 <option value="file"> 2128 Media File </option> 2129 <option value="post"> 2130 Attachment Page </option> 2131 <# } else { #> 2132 <option value="file"> 2133 Image URL </option> 2134 <# } #> 2135 <option value="custom"> 2136 Custom URL </option> 2137 <option value="none"> 2138 None </option> 2139 </select> 2140 </span> 2141 <span class="setting"> 2142 <label for="image-details-link-to-custom" class="name">URL</label> 2143 <input type="text" id="image-details-link-to-custom" class="link-to-custom" data-setting="linkUrl" /> 2144 </span> 2145 2146 <div class="advanced-section"> 2147 <h2><button type="button" class="button-link advanced-toggle">Advanced Options</button></h2> 2148 <div class="advanced-settings hidden"> 2149 <div class="advanced-image"> 2150 <span class="setting title-text"> 2151 <label for="image-details-title-attribute" class="name">Image Title Attribute</label> 2152 <input type="text" id="image-details-title-attribute" data-setting="title" value="{{ data.model.title }}" /> 2153 </span> 2154 <span class="setting extra-classes"> 2155 <label for="image-details-css-class" class="name">Image CSS Class</label> 2156 <input type="text" id="image-details-css-class" data-setting="extraClasse
2156s" value="{{ data.model.extraClasses }}" /> 2157 </span> 2158 </div> 2159 <div class="advanced-link"> 2160 <span class="setting link-target"> 2161 <input type="checkbox" id="image-details-link-target" data-setting="linkTargetBlank" value="_blank" <# if ( data.model.linkTargetBlank ) { #>checked="checked"<# } #>> 2162 <label for="image-details-link-target" class="checkbox-label">Open link in a new tab</label> 2163 </span> 2164 <span class="setting link-rel"> 2165 <label for="image-details-link-rel" class="name">Link Rel</label> 2166 <input type="text" id="image-details-link-rel" data-setting="linkRel" value="{{ data.model.linkRel }}" /> 2167 </span> 2168 <span class="setting link-class-name"> 2169 <label for="image-details-link-css-class" class="name">Link CSS Class</label> 2170 <input type="text" id="image-details-link-css-class" data-setting="linkClassName" value="{{ data.model.linkClassName }}" /> 2171 </span> 2172 </div> 2173 </div> 2174 </div> 2175 </div> 2176 <div class="column-image"> 2177 <div class="image"> 2178 <img src="{{ data.model.url }}" draggable="false" alt="" /> 2179 <# if ( data.attachment && window.imageEdit ) { #> 2180 <div class="actions"> 2181 <input type="button" class="edit-attachment button" value="Edit Original" /> 2182 <input type="button" class="replace-attachment button" value="Replace" /> 2183 </div> 2184 <# } #> 2185 </div> 2186 </div> 2187 </div> 2188 </div> 2189 </script>
2189 2190 2191
2191<script type="text/html" id="tmpl-image-editor"> 2192 <div id="media-head-{{ data.id }}"></div> 2193 <div id="image-editor-{{ data.id }}"></div> 2194 </script>
2194 2195 2196
2196<script type="text/html" id="tmpl-audio-details"> 2197 <# var ext, html5types = { 2198 mp3: wp.media.view.settings.embedMimes.mp3, 2199 ogg: wp.media.view.settings.embedMimes.ogg 2200 }; #> 2201 2202 <div class="media-embed media-embed-details"> 2203 <div class="embed-media-settings embed-audio-settings"> 2204 <audio style="visibility: hidden" 2205 controls 2206 class="wp-audio-shortcode" 2207 width="{{ _.isUndefined( data.model.width ) ? 400 : data.model.width }}" 2208 preload="{{ _.isUndefined( data.model.preload ) ? 'none' : data.model.preload }}" 2209 <# 2210 if ( ! _.isUndefined( data.model.autoplay ) && data.model.autoplay ) { 2211 #> autoplay<# 2212 } 2213 if ( ! _.isUndefined( data.model.loop ) && data.model.loop ) { 2214 #> loop<# 2215 } 2216 #> 2217> 2218 <# if ( ! _.isEmpty( data.model.src ) ) { #> 2219 <source src="{{ data.model.src }}" type="{{ wp.media.view.settings.embedMimes[ data.model.src.split('.').pop() ] }}" /> 2220 <# } #> 2221 2222 <# if ( ! _.isEmpty( data.model.mp3 ) ) { #> 2223 <source src="{{ data.model.mp3 }}" type="{{ wp.media.view.settings.embedMimes[ 'mp3' ] }}" /> 2224 <# } #> 2225 <# if ( ! _.isEmpty( data.model.ogg ) ) { #> 2226 <source src="{{ data.model.ogg }}" type="{{ wp.media.view.settings.embedMimes[ 'ogg' ] }}" /> 2227 <# } #> 2228 <# if ( ! _.isEmpty( data.model.flac ) ) { #> 2229 <source src="{{ data.model.flac }}" type="{{ wp.media.view.settings.embedMimes[ 'flac' ] }}" /> 2230 <# } #> 2231 <# if ( ! _.isEmpty( data.model.m4a ) ) { #> 2232 <source src="{{ data.model.m4a }}" type="{{ wp.media.view.settings.embedMimes[ 'm4a' ] }}" /> 2233 <# } #> 2234 <# if ( ! _.isEmpty( data.model.wav ) ) { #> 2235 <source src="{{ data.model.wav }}" type="{{ wp.media.view.settings.embedMimes[ 'wav' ] }}" /> 2236 <# } #> 2237 </audio> 2238 2239 <# if ( ! _.isEmpty( data.model.src ) ) { 2240 ext = data.model.src.split('.').pop(); 2241 if ( html5types[ ext ] ) { 2242 delete html5types[ ext ]; 2243 } 2244 #> 2245 <span class="setting"> 2246 <label for="audio-details-source" class="name">URL</label> 2247 <input type="text" id="audio-details-source" readonly data-setting="src" value="{{ data.model.src }}" /> 2248 <button type="button" class="button-link remove-setting">Remove audio source</button> 2249 </span> 2250 <# } #> 2251 <# if ( ! _.isEmpty( data.model.mp3 ) ) { 2252 if ( ! _.isUndefined( html5types.mp3 ) ) { 2253 delete html5types.mp3; 2254 } 2255 #> 2256 <span class="setting"> 2257 <label for="audio-details-mp3-source" class="name">MP3</label> 2258 <input type="text" id="audio-details-mp3-source" readonly data-setting="mp3" value="{{ data.model.mp3 }}" /> 2259 <button type="button" class="button-link remove-setting">Remove audio source</button> 2260 </span> 2261 <# } #> 2262 <# if ( ! _.isEmpty( data.model.ogg ) ) { 2263 if ( ! _.isUndefined( html5types.ogg ) ) { 2264 delete html5types.ogg; 2265 } 2266 #> 2267 <span class="setting"> 2268 <label for="audio-details-ogg-source" class="name">OGG</label> 2269 <input type="text" id="audio-details-ogg-source" readonly data-setting="ogg" value="{{ data.model.ogg }}" /> 2270 <button type="button" class="button-link remove-setting">Remove audio source</button> 2271 </span> 2272 <# } #> 2273 <# if ( ! _.isEmpty( data.model.flac ) ) { 2274 if ( ! _.isUndefined( html5types.flac ) ) { 2275 delete html5types.flac; 2276 } 2277 #> 2278 <span class="setting"> 2279 <label for="audio-details-flac-source" class="name">FLAC</label> 2280 <input type="text" id="audio-details-flac-source" readonly data-setting="flac" value="{{ data.model.flac }}" /> 2281 <button type="button" class="button-link remove-setting">Remove audio source</button> 2282 </span> 2283 <# } #> 2284 <# if ( ! _.isEmpty( data.model.m4a ) ) { 2285 if ( ! _.isUndefined( html5types.m4a ) ) { 2286 delete html5types.m4a; 2287 } 2288 #> 2289 <span class="setting"> 2290 <label for="audio-details-m4a-source" class="name">M4A</label> 2291 <input type="text" id="audio-details-m4a-source" readonly data-setting="m4a" value="{{ data.model.m4a }}" /> 2292 <button type="button" class="button-link remove-setting">Remove audio source</button> 2293 </span> 2294 <# } #> 2295 <# if ( ! _.isEmpty( data.model.wav ) ) { 2296 if ( ! _.isUndefined( html5types.wav ) ) { 2297 delete html5types.wav; 2298 } 2299 #> 2300 <span class="setting"> 2301 <label for="audio-details-wav-source" class="name">WAV</label> 2302 <input type="text" id="audio-details-wav-source" readonly data-setting="wav" value="{{ data.model.wav }}" /> 2303 <button type="button" class="button-link remove-setting">Remove audio source</button> 2304 </span> 2305 <# } #> 2306 2307 <# if ( ! _.isEmpty( html5types ) ) { #> 2308 <fieldset class="setting-group"> 2309 <legend class="name">Add alternate sources for maximum HTML5 playback</legend> 2310 <span class="setting"> 2311 <span class="button-large"> 2312 <# _.each( html5types, function (mime, type) { #> 2313 <button class="button add-media-source" data-mime="{{ mime }}">{{ type }}</button> 2314 <# } ) #> 2315 </span> 2316 </span> 2317 </fieldset> 2318 <# } #> 2319 2320 <fieldset class="setting-group"> 2321 <legend class="name">Preload</legend> 2322 <span class="setting preload"> 2323 <span class="button-group button-large" data-setting="preload"> 2324 <button class="button" value="auto">Auto</button> 2325 <button class="button" value="metadata">Metadata</button> 2326 <button class="button active" value="none">None</button> 2327 </span> 2328 </span> 2329 </fieldset> 2330 2331 <span class="setting-group"> 2332 <span class="setting checkbox-setting autoplay"> 2333 <input type="checkbox" id="audio-details-autoplay" data-setting="autoplay" /> 2334 <label for="audio-details-autoplay" class="checkbox-label">Autoplay</label> 2335 </span> 2336 2337 <span class="setting checkbox-setting"> 2338 <input type="checkbox" id="audio-details-loop" data-setting="loop" /> 2339 <label for="audio-details-loop" class="checkbox-label">Loop</label> 2340 </span> 2341 </span> 2342 </div> 2343 </div> 2344 </script>
2344 2345 2346
2346<script type="text/html" id="tmpl-video-details"> 2347 <# var ext, html5types = { 2348 mp4: wp.media.view.settings.embedMimes.mp4, 2349 ogv: wp.media.view.settings.embedMimes.ogv, 2350 webm: wp.media.view.settings.embedMimes.webm 2351 }; #> 2352 2353 <div class="media-embed media-embed-details"> 2354 <div class="embed-media-settings embed-video-settings"> 2355 <div class="wp-video-holder"> 2356 <# 2357 var w = ! data.model.width || data.model.width > 640 ? 640 : data.model.width, 2358 h = ! data.model.height ? 360 : data.model.height; 2359 2360 if ( data.model.width && w !== data.model.width ) { 2361 h = Math.ceil( ( h * w ) / data.model.width ); 2362 } 2363 #> 2364 2365 <# var w_rule = '', classes = [], 2366 w, h, settings = wp.media.view.settings, 2367 isYouTube = isVimeo = false; 2368 2369 if ( ! _.isEmpty( data.model.src ) ) { 2370 isYouTube = data.model.src.match(/youtube|youtu\.be/); 2371 isVimeo = -1 !== data.model.src.indexOf('vimeo'); 2372 } 2373 2374 if ( settings.contentWidth && data.model.width >= settings.contentWidth ) { 2375 w = settings.contentWidth; 2376 } else { 2377 w = data.model.width; 2378 } 2379 2380 if ( w !== data.model.width ) { 2381 h = Math.ceil( ( data.model.height * w ) / data.model.width ); 2382 } else { 2383 h = data.model.height; 2384 } 2385 2386 if ( w ) { 2387 w_rule = 'width: ' + w + 'px; '; 2388 } 2389 2390 if ( isYouTube ) { 2391 classes.push( 'youtube-video' ); 2392 } 2393 2394 if ( isVimeo ) { 2395 classes.push( 'vimeo-video' ); 2396 } 2397 2398#> 2399<div style="{{ w_rule }}" class="wp-video"> 2400<video controls 2401 class="wp-video-shortcode {{ classes.join( ' ' ) }}" 2402 <# if ( w ) { #>width="{{ w }}"<# } #> 2403 <# if ( h ) { #>height="{{ h }}"<# } #> 2404 <# 2405 if ( ! _.isUndefined( data.model.poster ) && data.model.poster ) { 2406 #> poster="{{ data.model.poster }}"<# 2407 } #> 2408 preload ="{{ _.isUndefined( data.model.preload ) ? 'metadata' : data.model.preload }}" 2409 <# 2410 if ( ! _.isUndefined( data.model.autoplay ) && data.model.autoplay ) { 2411 #> autoplay<# 2412 } 2413 if ( ! _.isUndefined( data.model.loop ) && data.model.loop ) { 2414 #> loop<# 2415 } 2416 #> 2417> 2418 <# if ( ! _.isEmpty( data.model.src ) ) { 2419 if ( isYouTube ) { #> 2420 <source src="{{ data.model.src }}" type="video/youtube" /> 2421 <# } else if ( isVimeo ) { #> 2422 <source src="{{ data.model.src }}" type="video/vimeo" /> 2423 <# } else { #> 2424 <source src="{{ data.model.src }}" type="{{ settings.embedMimes[ data.model.src.split('.').pop() ] }}" /> 2425 <# } 2426 } #> 2427 2428 <# if ( data.model.mp4 ) { #> 2429 <source src="{{ data.model.mp4 }}" type="{{ settings.embedMimes[ 'mp4' ] }}" /> 2430 <# } #> 2431 <# if ( data.model.m4v ) { #> 2432 <source src="{{ data.model.m4v }}" type="{{ settings.embedMimes[ 'm4v' ] }}" /> 2433 <# } #> 2434 <# if ( data.model.webm ) { #> 2435 <source src="{{ data.model.webm }}" type="{{ settings.embedMimes[ 'webm' ] }}" /> 2436 <# } #> 2437 <# if ( data.model.ogv ) { #> 2438 <source src="{{ data.model.ogv }}" type="{{ settings.embedMimes[ 'ogv' ] }}" /> 2439 <# } #> 2440 <# if ( data.model.flv ) { #> 2441 <source src="{{ data.model.flv }}" type="{{ settings.embedMimes[ 'flv' ] }}" /> 2442 <# } #> 2443 {{{ data.model.content }}} 2444</video> 2445</div> 2446 2447 <# if ( ! _.isEmpty( data.model.src ) ) { 2448 ext = data.model.src.split('.').pop(); 2449 if ( html5types[ ext ] ) { 2450 delete html5types[ ext ]; 2451 } 2452 #> 2453 <span class="setting"> 2454 <label for="video-details-source" class="name">URL</label> 2455 <input type="text" id="video-details-source" readonly data-setting="src" value="{{ data.model.src }}" /> 2456 <button type="button" class="button-link remove-setting">Remove video source</button> 2457 </span> 2458 <# } #> 2459 <# if ( ! _.isEmpty( data.model.mp4 ) ) { 2460 if ( ! _.isUndefined( html5types.mp4 ) ) { 2461 delete html5types.mp4; 2462 } 2463 #> 2464 <span class="setting"> 2465 <label for="video-details-mp4-source" class="name">MP4</label> 2466 <input type="text" id="video-details-mp4-source" readonly data-setting="mp4" value="{{ data.model.mp4 }}" /> 2467 <button type="button" class="button-link remove-setting">Remove video source</button> 2468 </span> 2469 <# } #> 2470 <# if ( ! _.isEmpty( data.model.m4v ) ) { 2471 if ( ! _.isUndefined( html5types.m4v ) ) { 2472 delete html5types.m4v; 2473 } 2474 #> 2475 <span class="setting">
2476 <label for="video-details-m4v-source" class="name">M4V</label> 2477 <input type="text" id="video-details-m4v-source" readonly data-setting="m4v" value="{{ data.model.m4v }}" /> 2478 <button type="button" class="button-link remove-setting">Remove video source</button> 2479 </span> 2480 <# } #> 2481 <# if ( ! _.isEmpty( data.model.webm ) ) { 2482 if ( ! _.isUndefined( html5types.webm ) ) { 2483 delete html5types.webm; 2484 } 2485 #> 2486 <span class="setting"> 2487 <label for="video-details-webm-source" class="name">WEBM</label> 2488 <input type="text" id="video-details-webm-source" readonly data-setting="webm" value="{{ data.model.webm }}" /> 2489 <button type="button" class="button-link remove-setting">Remove video source</button> 2490 </span> 2491 <# } #> 2492 <# if ( ! _.isEmpty( data.model.ogv ) ) { 2493 if ( ! _.isUndefined( html5types.ogv ) ) { 2494 delete html5types.ogv; 2495 } 2496 #> 2497 <span class="setting"> 2498 <label for="video-details-ogv-source" class="name">OGV</label> 2499 <input type="text" id="video-details-ogv-source" readonly data-setting="ogv" value="{{ data.model.ogv }}" /> 2500 <button type="button" class="button-link remove-setting">Remove video source</button> 2501 </span> 2502 <# } #> 2503 <# if ( ! _.isEmpty( data.model.flv ) ) { 2504 if ( ! _.isUndefined( html5types.flv ) ) { 2505 delete html5types.flv; 2506 } 2507 #> 2508 <span class="setting"> 2509 <label for="video-details-flv-source" class="name">FLV</label> 2510 <input type="text" id="video-details-flv-source" readonly data-setting="flv" value="{{ data.model.flv }}" /> 2511 <button type="button" class="button-link remove-setting">Remove video source</button> 2512 </span> 2513 <# } #> 2514 </div> 2515 2516 <# if ( ! _.isEmpty( html5types ) ) { #> 2517 <fieldset class="setting-group"> 2518 <legend class="name">Add alternate sources for maximum HTML5 playback</legend> 2519 <span class="setting"> 2520 <span class="button-large"> 2521 <# _.each( html5types, function (mime, type) { #> 2522 <button class="button add-media-source" data-mime="{{ mime }}">{{ type }}</button> 2523 <# } ) #> 2524 </span> 2525 </span> 2526 </fieldset> 2527 <# } #> 2528 2529 <# if ( ! _.isEmpty( data.model.poster ) ) { #> 2530 <span class="setting"> 2531 <label for="video-details-poster-image" class="name">Poster Image</label> 2532 <input type="text" id="video-details-poster-image" readonly data-setting="poster" value="{{ data.model.poster }}" /> 2533 <button type="button" class="button-link remove-setting">Remove poster image</button> 2534 </span> 2535 <# } #> 2536 2537 <fieldset class="setting-group"> 2538 <legend class="name">Preload</legend> 2539 <span class="setting preload"> 2540 <span class="button-group button-large" data-setting="preload"> 2541 <button class="button" value="auto">Auto</button> 2542 <button class="button" value="metadata">Metadata</button> 2543 <button class="button active" value="none">None</button> 2544 </span> 2545 </span> 2546 </fieldset> 2547 2548 <span class="setting-group"> 2549 <span class="setting checkbox-setting autoplay"> 2550 <input type="checkbox" id="video-details-autoplay" data-setting="autoplay" /> 2551 <label for="video-details-autoplay" class="checkbox-label">Autoplay</label> 2552 </span> 2553 2554 <span class="setting checkbox-setting"> 2555 <input type="checkbox" id="video-details-loop" data-setting="loop" /> 2556 <label for="video-details-loop" class="checkbox-label">Loop</label> 2557 </span> 2558 </span> 2559 2560 <span class="setting" data-setting="content"> 2561 <# 2562 var content = ''; 2563 if ( ! _.isEmpty( data.model.content ) ) { 2564 var tracks = jQuery( data.model.content ).filter( 'track' ); 2565 _.each( tracks.toArray(), function( track, index ) { 2566 content += track.outerHTML; #> 2567 <label for="video-details-track-{{ index }}" class="name">Tracks (subtitles, captions, descriptions, chapters, or metadata)</label> 2568 <input class="content-track" type="text" id="video-details-track-{{ index }}" aria-describedby="video-details-track-desc-{{ index }}" value="{{ track.outerHTML }}" />
2569 <span class="description" id="video-details-track-desc-{{ index }}"> 2570 The srclang, label, and kind values can be edited to set the video track language and kind. </span> 2571 <button type="button" class="button-link remove-setting remove-track">Remove video track</button><br /> 2572 <# } ); #> 2573 <# } else { #> 2574 <span class="name">Tracks (subtitles, captions, descriptions, chapters, or metadata)</span><br /> 2575 <em>There are no associated subtitles.</em> 2576 <# } #> 2577 <textarea class="hidden content-setting">{{ content }}</textarea> 2578 </span> 2579 </div> 2580 </div> 2581 </script>
2581 2582 2583
2583<script type="text/html" id="tmpl-editor-gallery"> 2584 <# if ( data.attachments.length ) { #> 2585 <div class="gallery gallery-columns-{{ data.columns }}"> 2586 <# _.each( data.attachments, function( attachment, index ) { #> 2587 <dl class="gallery-item"> 2588 <dt class="gallery-icon"> 2589 <# if ( attachment.thumbnail ) { #> 2590 <img src="{{ attachment.thumbnail.url }}" width="{{ attachment.thumbnail.width }}" height="{{ attachment.thumbnail.height }}" alt="{{ attachment.alt }}" /> 2591 <# } else { #> 2592 <img src="{{ attachment.url }}" alt="{{ attachment.alt }}" /> 2593 <# } #> 2594 </dt> 2595 <# if ( attachment.caption ) { #> 2596 <dd class="wp-caption-text gallery-caption"> 2597 {{{ data.verifyHTML( attachment.caption ) }}} 2598 </dd> 2599 <# } #> 2600 </dl> 2601 <# if ( index % data.columns === data.columns - 1 ) { #> 2602 <br style="clear: both;" /> 2603 <# } #> 2604 <# } ); #> 2605 </div> 2606 <# } else { #> 2607 <div class="wpview-error"> 2608 <div class="dashicons dashicons-format-gallery"></div><p>No items found.</p> 2609 </div> 2610 <# } #> 2611 </script>
2611 2612 2613
2613<script type="text/html" id="tmpl-crop-content"> 2614 <img class="crop-image" src="{{ data.url }}" alt="Image crop area preview. Requires mouse interaction." /> 2615 <div class="upload-errors"></div> 2616 </script>
2616 2617 2618
2618<script type="text/html" id="tmpl-site-icon-preview-crop"> 2619 <style> 2620 :root{ 2621 --site-icon-url: url( "{{ data.url }}" ); 2622 } 2623 </style> 2624 <h2>Site Icon Preview</h2> 2625 <p>As an app icon and a browser icon.</p> 2626 <div class="site-icon-preview crop"> 2627 <div class="image-preview-wrap app-icon-preview"> 2628 <img id="preview-app-icon" src="{{ data.url }}" class="app-icon-preview" alt="Preview as an app icon" /> 2629 </div> 2630 <div class="site-icon-preview-browser"> 2631 <svg role="img" aria-hidden="true" fill="none" xmlns="http://www.w3.org/2000/svg" class="browser-buttons"><path fill-rule="evenodd" clip-rule="evenodd" d="M0 20a6 6 0 1 1 12 0 6 6 0 0 1-12 0Zm18 0a6 6 0 1 1 12 0 6 6 0 0 1-12 0Zm24-6a6 6 0 1 0 0 12 6 6 0 0 0 0-12Z" /></svg> 2632 <div class="site-icon-preview-tab"> 2633 <div class="image-preview-wrap browser"> 2634 <img id="preview-favicon" src="{{ data.url }}" class="browser-icon-preview" alt="Preview as a browser icon" /> 2635 </div> 2636 <div class="site-icon-preview-site-title" aria-hidden="true"><# print( 'Subtle Medical' ) #></div> 2637 <svg role="img" aria-hidden="true" fill="none" xmlns="http://www.w3.org/2000/svg" class="close-button"> 2638 <path d="M12 13.0607L15.7123 16.773L16.773 15.7123L13.0607 12L16.773 8.28772L15.7123 7.22706L12 10.9394L8.28771 7.22705L7.22705 8.28771L10.9394 12L7.22706 15.7123L8.28772 16.773L12 13.0607Z" /> 2639 </svg> 2640 </div> 2641 </div> 2642 </div> 2643 </div> 2644 </script>
2644 2645 2646
2646<script id="underscore-js" src="https://subtlemedical.com/wp-includes/js/underscore.min.js?ver=1.13.8"></script>
vendor: 1 bytes, line 2646
2646
2647<script id="shortcode-js" src="https://subtlemedical.com/wp-includes/js/shortcode.js?ver=7.1"></script>
vendor: 1 bytes, line 2647
2647
2648<script id="backbone-js" src="https://subtlemedical.com/wp-includes/js/backbone.min.js?ver=1.6.1"></script>
vendor: 1 bytes, line 2648
2648
2649<script id="wp-util-js-extra"> 2650var _wpUtilSettings = {"ajax":{"url":"/wp-admin/admin-ajax.php"}}; 2651//# sourceURL=wp-util-js-extra 2652</script>
vendor: 1 bytes, line 2652
2652
2653<script id="wp-util-js" src="https://subtlemedical.com/wp-includes/js/wp-util.js?ver=7.1"></script>
vendor: 1 bytes, line 2653
2653
2654<script id="wp-backbone-js" src="https://subtlemedical.com/wp-includes/js/wp-backbone.js?ver=7.1"></script>
vendor: 1 bytes, line 2654
2654
2655<script id="media-models-js-extra"> 2656var _wpMediaModelsL10n = {"settings":{"ajaxurl":"/wp-admin/admin-ajax.php","post":{"id":0}}}; 2657//# sourceURL=media-models-js-extra 2658</script>
vendor: 1 bytes, line 2658
2658
2659<script id="media-models-js" src="https://subtlemedical.com/wp-includes/js/media-models.js?ver=7.1"></script>
vendor: 1 bytes, line 2659
2659
2660<script id="wp-plupload-js-extra"> 2661var _wpPluploadSettings = {"defaults":{"file_data_name":"async-upload","url":"/wp-admin/async-upload.php","filters":{"max_file_size":"134217728b","mime_types":[{"extensions":"jpg,jpeg,jpe,gif,png,bmp,tiff,tif,webp,avif,ico,heic,heif,heics,heifs,asf,asx,wmv,wmx,wm,avi,divx,flv,mov,qt,mpeg,mpg,mpe,mp4,m4v,ogv,webm,mkv,3gp,3gpp,3g2,3gp2,txt,asc,c,cc,h,srt,csv,tsv,ics,rtx,css,vtt,dfxp,mp3,m4a,m4b,aac,ra,ram,wav,x-wav,ogg,oga,flac,mid,midi,wma,wax,mka,rtf,pdf,class,tar,zip,gz,gzip,rar,7z,psd,xcf,doc,pot,pps,ppt,wri,xla,xls,xlt,xlw,mdb,mpp,docx,docm,dotx,dotm,xlsx,xlsm,xlsb,xltx,xltm,xlam,pptx,pptm,ppsx,ppsm,potx,potm,ppam,sldx,sldm,onetoc,onetoc2,onetmp,onepkg,oxps,xps,odt,odp,ods,odg,odc,odb,odf,wp,wpd,key,numbers,pages"}]},"multipart_params":{"action":"upload-attachment","_wpnonce":"d175547502"}},"browser":{"mobile":false,"supported":true},"limitExceeded":false}; 2662var pluploadL10n = {"queue_limit_exceeded":"You have attempted to queue too many files.","file_exceeds_size_limit":"%s exceeds the maximum upload size for this site.","zero_byte_file":"This file is empty. Please try another.","invalid_filetype":"This file cannot be processed by the web server.","not_an_image":"This file is not an image. Please try another.","image_memory_exceeded":"Memory exceeded. Please try another smaller file.","image_dimensions_exceeded":"This is larger than the maximum size. Please try another.","default_error":"An error occurred in the upload. Please try again later.","missing_upload_url":"There was a configuration error. Please contact the server administrator.","upload_limit_exceeded":"You may only upload 1 file.","http_error":"Unexpected response from the server. The file may have been uploaded successfully. Check in the Media Library or reload the page.","http_error_image":"The server cannot process the image. This can happen if the server is busy or does not have enough resources to complete the task. Uploading a smaller image may help. Suggested maximum size is 2560 pixels.","upload_failed":"Upload failed.","big_upload_failed":"Please try uploading this file with the %1$sbrowser uploader%2$s.","big_upload_queued":"%s exceeds the maximum upload size for the multi-file uploader when used in your browser.","io_error":"IO error.","security_error":"Security error.","file_cancelled":"File canceled.","upload_stopped":"Upload stopped.","dismiss":"Dismiss","crunching":"Crunching\u2026","deleted":"moved to the Trash.","error_uploading":"\u201c%s\u201d has failed to upload.","unsupported_image":"The server cannot process HEIC images. Convert it to JPEG before uploading.","noneditable_image":"The web server cannot generate responsive image sizes for this image. Convert it to JPEG or PNG before uploading.","file_url_copied":"The file URL has been copied to your clipboard"}; 2663//# sourceURL=wp-plupload-js-extra 2664</script>
vendor: 1 bytes, line 2664
2664
2665<script id="wp-plupload-js" src="https://subtlemedical.com/wp-includes/js/plupload/wp-plupload.js?ver=7.1"></script>
vendor: 1 bytes, line 2665
2665
2666<script id="jquery-ui-core-js-before"> 2667jQuery.uiBackCompat = true; 2668jQuery.uiBackCompat = true; 2669//# sourceURL=jquery-ui-core-js-before 2670</script>
vendor: 1 bytes, line 2670
2670
2671<script id="jquery-ui-core-js" src="https://subtlemedical.com/wp-includes/js/jquery/ui/core.js?ver=1.14.2"></script>
vendor: 1 bytes, line 2671
2671
2672<script id="jquery-ui-mouse-js" src="https://subtlemedical.com/wp-includes/js/jquery/ui/mouse.js?ver=1.14.2"></script>
vendor: 1 bytes, line 2672
2672
2673<script id="jquery-ui-sortable-js" src="https://subtlemedical.com/wp-includes/js/jquery/ui/sortable.js?ver=1.14.2"></script>
vendor: 1 bytes, line 2673
2673
2674<script id="mediaelement-core-js-before"> 2675var mejsL10n = {"language":"en","strings":{"mejs.download-file":"Download File","mejs.install-flash":"You are using a browser that does not have Flash player enabled or installed. Please turn on your Flash player plugin or download the latest version from https://get.adobe.com/flashplayer/","mejs.fullscreen":"Fullscreen","mejs.play":"Play","mejs.pause":"Pause","mejs.time-slider":"Time Slider","mejs.time-help-text":"Use Left/Right Arrow keys to advance one second, Up/Down arrows to advance ten seconds.","mejs.live-broadcast":"Live Broadcast","mejs.volume-help-text":"Use Up/Down Arrow keys to increase or decrease volume.","mejs.unmute":"Unmute","mejs.mute":"Mute","mejs.volume-slider":"Volume Slider","mejs.video-player":"Video Player","mejs.audio-player":"Audio Player","mejs.captions-subtitles":"Captions/Subtitles","mejs.captions-chapters":"Chapters","mejs.none":"None","mejs.afrikaans":"Afrikaans","mejs.albanian":"Albanian","mejs.arabic":"Arabic","mejs.belarusian":"Belarusian","mejs.bulgarian":"Bulgarian","mejs.catalan":"Catalan","mejs.chinese":"Chinese","mejs.chinese-simplified":"Chinese (Simplified)","mejs.chinese-traditional":"Chinese (Traditional)","mejs.croatian":"Croatian","mejs.czech":"Czech","mejs.danish":"Danish","mejs.dutch":"Dutch","mejs.english":"English","mejs.estonian":"Estonian","mejs.filipino":"Filipino","mejs.finnish":"Finnish","mejs.french":"French","mejs.galician":"Galician","mejs.german":"German","mejs.greek":"Greek","mejs.haitian-creole":"Haitian Creole","mejs.hebrew":"Hebrew","mejs.hindi":"Hindi","mejs.hungarian":"Hungarian","mejs.icelandic":"Icelandic","mejs.indonesian":"Indonesian","mejs.irish":"Irish","mejs.italian":"Italian","mejs.japanese":"Japanese","mejs.korean":"Korean","mejs.latvian":"Latvian","mejs.lithuanian":"Lithuanian","mejs.macedonian":"Macedonian","mejs.malay":"Malay","mejs.maltese":"Maltese","mejs.norwegian":"Norwegian","mejs.persian":"Persian","mejs.polish":"Polish","mejs.portuguese":"Portuguese","mejs.romanian":"Romanian","mejs.russian":"Russian","mejs.serbian":"Serbian","mejs.slovak":"Slovak","mejs.slovenian":"Slovenian","mejs.spanish":"Spanish","mejs.swahili":"Swahili","mejs.swedish":"Swedish","mejs.tagalog":"Tagalog","mejs.thai":"Thai","mejs.turkish":"Turkish","mejs.ukrainian":"Ukrainian","mejs.vietnamese":"Vietnamese","mejs.welsh":"Welsh","mejs.yiddish":"Yiddish"}}; 2676//# sourceURL=mediaelement-core-js-before 2677</script>
vendor: 1 bytes, line 2677
2677
2678<script id="mediaelement-core-js" src="https://subtlemedical.com/wp-includes/js/mediaelement/mediaelement-and-player.js?ver=4.2.17"></script>
vendor: 1 bytes, line 2678
2678
2679<script id="mediaelement-migrate-js" src="https://subtlemedical.com/wp-includes/js/mediaelement/mediaelement-migrate.js?ver=7.1"></script>
vendor: 1 bytes, line 2679
2679
2680<script id="mediaelement-js-extra"> 2681var _wpmejsSettings = {"pluginPath":"/wp-includes/js/mediaelement/","classPrefix":"mejs-","stretching":"responsive","audioShortcodeLibrary":"mediaelement","videoShortcodeLibrary":"mediaelement"}; 2682//# sourceURL=mediaelement-js-extra 2683</script>
vendor: 1 bytes, line 2683
2683
2684<script id="wp-mediaelement-js" src="https://subtlemedical.com/wp-includes/js/mediaelement/wp-mediaelement.js?ver=7.1"></script>
vendor: 1 bytes, line 2684
2684
2685<script id="wp-api-request-js-extra"> 2686var wpApiSettings = {"root":"https://subtlemedical.com/wp-json/","nonce":"77d6cf7ee9","versionString":"wp/v2/"}; 2687//# sourceURL=wp-api-request-js-extra 2688</script>
vendor: 1 bytes, line 2688
2688
2689<script id="wp-api-request-js" src="https://subtlemedical.com/wp-includes/js/api-request.js?ver=7.1"></script>
vendor: 1 bytes, line 2689
2689
2690<script id="wp-dom-ready-js" src="https://subtlemedical.com/wp-includes/js/dist/dom-ready.js?ver=3fe927cab37bf38d6a23"></script>
vendor: 1 bytes, line 2690
2690
2691<script id="wp-hooks-js" src="https://subtlemedical.com/wp-includes/js/dist/hooks.js?ver=f0f188028580e8dc1255"></script>
vendor: 1 bytes, line 2691
2691
2692<script id="wp-i18n-js" src="https://subtlemedical.com/wp-includes/js/dist/i18n.js?ver=1dfe7db3940c23ea9216"></script>
vendor: 1 bytes, line 2692
2692
2693<script id="wp-i18n-js-after"> 2694wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 2695wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 2696//# sourceURL=wp-i18n-js-after 2697</script>
vendor: 1 bytes, line 2697
2697
2698<script id="wp-a11y-js" src="https://subtlemedical.com/wp-includes/js/dist/a11y.js?ver=31c6cec5a4ff7aff483d"></script>
vendor: 1 bytes, line 2698
2698
2699<script id="clipboard-js" src="https://subtlemedical.com/wp-includes/js/clipboard.js?ver=2.0.11"></script>
vendor: 1 bytes, line 2699
2699
2700<script id="media-views-js-extra"> 2701var _wpMediaViewsL10n = {"mediaFrameDefaultTitle":"Media","url":"URL","addMedia":"Add media","search":"Search","select":"Select","cancel":"Cancel","update":"Update","replace":"Replace","remove":"Remove","back":"Back","selected":"%d selected","dragInfo":"Drag and drop to reorder media files.","uploadFilesTitle":"Upload files","uploadImagesTitle":"Upload images","mediaLibraryTitle":"Media Library","insertMediaTitle":"Add media","createNewGallery":"Create a new gallery","createNewPlaylist":"Create a new playlist","createNewVideoPlaylist":"Create a new video playlist","returnToLibrary":"\u2190 Go to library","allMediaItems":"All media items","allDates":"All dates","noItemsFound":"No items found.","insertIntoPost":"Insert into post","unattached":"Unattached","mine":"Mine","trash":"Trash","uploadedToThisPost":"Uploaded to this post","warnDelete":"You are about to permanently delete this item from your site.\nThis action cannot be undone.\n 'Cancel' to stop, 'OK' to delete.","warnBulkDelete":"You are about to permanently delete these items from your site.\nThis action cannot be undone.\n 'Cancel' to stop, 'OK' to delete.","warnBulkTrash":"You are about to trash these items.\n 'Cancel' to stop, 'OK' to delete.","bulkSelect":"Bulk select","trashSelected":"Move to Trash","restoreSelected":"Restore from Trash","deletePermanently":"Delete permanently","errorDeleting":"Error in deleting the attachment.","apply":"Apply","filterByDate":"Filter by date","filterByType":"Filter by type","searchLabel":"Search media","searchMediaLabel":"Search media","searchMediaPlaceholder":"Search media items...","mediaFound":"Number of media items found: %d","noMedia":"No media items found.","noMediaTryNewSearch":"No media items found. Try a different search.","mediaItemViewed":"Viewing media item: %s","attachmentDetails":"Attachment details","insertFromUrlTitle":"Insert from URL","setFeaturedImageTitle":"Featured image","setFeaturedImage":"Set featured image","createGalleryTitle":"Create gallery","editGalleryTitle":"Edit gallery","cancelGalleryTitle":"\u2190 Cancel gallery","insertGallery":"Insert gallery","updateGallery":"Update gallery","addToGallery":"Add to gallery","addToGalleryTitle":"Add to gallery","reverseOrder":"Reverse order","imageDetailsTitle":"Image details","imageReplaceTitle":"Replace image","imageDetailsCancel":"Cancel edit","editImage":"Edit image","chooseImage":"Choose image","selectAndCrop":"Select and crop","skipCropping":"Skip cropping","cropImage":"Crop image","cropYourImage":"Crop your image","cropping":"Cropping\u2026","suggestedDimensions":"Suggested image dimensions: %1$s by %2$s pixels.","cropError":"There has been an error cropping your image.","audioDetailsTitle":"Audio details","audioReplaceTitle":"Replace audio","audioAddSourceTitle":"Add audio source","audioDetailsCancel":"Cancel edit","videoDetailsTitle":"Video details","videoReplaceTitle":"Replace video","videoAddSourceTitle":"Add video source","videoDetailsCancel":"Cancel edit","videoSelectPosterImageTitle":"Select poster image","videoAddTrackTitle":"Add subtitles","playlistDragInfo":"Drag and drop to reorder tracks.","createPlaylistTitle":"Create audio playlist","editPlaylistTitle":"Edit audio playlist","cancelPlaylistTitle":"\u2190 Cancel audio playlist","insertPlaylist":"Insert audio playlist","updatePlaylist":"Update audio playlist","addToPlaylist":"Add to audio playlist","addToPlaylistTitle":"Add to Audio Playlist","videoPlaylistDragInfo":"Drag and drop to reorder videos.","createVideoPlaylistTitle":"Create video playlist","editVideoPlaylistTitle":"Edit video playlist","cancelVideoPlaylistTitle":"\u2190 Cancel video playlist","insertVideoPlaylist":"Insert video playlist","updateVideoPlaylist":"Update video playlist","addToVideoPlaylist":"Add to video playlist","addToVideoPlaylistTitle":"Add to video Playlist","filterAttachments":"Filter media","attachmentsList":"Media list","settings":{"tabs":[],"tabUrl":"https://subtlemedical.com/wp-admin/media-upload.php?chromeless=1","mimeTypes":{"image":"Images","audio":"Audio","video":"Video","application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-word.document.macroEnabled.12,application/vnd.ms-word.template.macroEnabled.12,application/vnd.oasis.opendocument.text,application/vnd.apple.pages,application/pdf,application/vnd.ms-xpsdocument,application/oxps,application/rtf,application/wordperfect,application/octet-stream":"Documents","application/vnd.apple.numbers,application/vnd.oasis.opendocument.spreadsheet,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel.sheet.macroEnabled.12,application/vnd.ms-excel.sheet.binary.macroEnabled.12":"Spreadsheets","application/x-gzip,application/rar,a
2701pplication/x-tar,application/zip,application/x-7z-compressed":"Archives"},"captions":true,"nonce":{"sendToEditor":"6409d0ab88","setAttachmentThumbnail":"a09476d6dd"},"post":{"id":0},"defaultProps":{"link":"none","align":"","size":""},"attachmentCounts":{"audio":1,"video":1},"oEmbedProxyUrl":"https://subtlemedical.com/wp-json/oembed/1.0/proxy","embedExts":["mp3","ogg","flac","m4a","wav","mp4","m4v","webm","ogv","flv"],"embedMimes":{"mp3":"audio/mpeg","ogg":"audio/ogg","flac":"audio/flac","m4a":"audio/mpeg","wav":"audio/wav","mp4":"video/mp4","m4v":"video/mp4","webm":"video/webm","ogv":"video/ogg","flv":"video/x-flv"},"contentWidth":null,"months":[{"year":"2026","month":"9","text":"September 2026"},{"year":"2026","month":"8","text":"August 2026"},{"year":"2026","month":"7","text":"July 2026"},{"year":"2026","month":"6","text":"June 2026"},{"year":"2026","month":"5","text":"May 2026"},{"year":"2026","month":"4","text":"April 2026"},{"year":"2026","month":"3","text":"March 2026"},{"year":"2026","month":"2","text":"February 2026"},{"year":"2026","month":"1","text":"January 2026"},{"year":"2025","month":"11","text":"November 2025"},{"year":"2025","month":"10","text":"October 2025"},{"year":"2025","month":"9","text":"September 2025"},{"year":"2025","month":"8","text":"August 2025"},{"year":"2025","month":"7","text":"July 2025"},{"year":"2025","month":"6","text":"June 2025"},{"year":"2025","month":"5","text":"May 2025"},{"year":"2025","month":"4","text":"April 2025"},{"year":"2025","month":"3","text":"March 2025"},{"year":"2025","month":"2","text":"February 2025"},{"year":"2024","month":"12","text":"December 2024"},{"year":"2024","month":"11","text":"November 2024"},{"year":"2024","month":"10","text":"October 2024"},{"year":"2024","month":"9","text":"September 2024"},{"year":"2024","month":"8","text":"August 2024"},{"year":"2024","month":"7","text":"July 2024"},{"year":"2024","month":"5","text":"May 2024"},{"year":"2024","month":"4","text":"April 2024"},{"year":"2024","month":"3","text":"March 2024"},{"year":"2024","month":"1","text":"January 2024"},{"year":"2023","month":"12","text":"December 2023"},{"year":"2023","month":"11","text":"November 2023"},{"year":"2023","month":"10","text":"October 2023"},{"year":"2023","month":"9","text":"September 2023"},{"year":"2023","month":"8","text":"August 2023"},{"year":"2023","month":"6","text":"June 2023"},{"year":"2023","month":"5","text":"May 2023"},{"year":"2023","month":"4","text":"April 2023"},{"year":"2023","month":"3","text":"March 2023"},{"year":"2023","month":"2","text":"February 2023"},{"year":"2022","month":"12","text":"December 2022"},{"year":"2022","month":"11","text":"November 2022"},{"year":"2022","month":"10","text":"October 2022"},{"year":"2022","month":"9","text":"September 2022"},{"year":"2022","month":"7","text":"July 2022"},{"year":"2022","month":"6","text":"June 2022"},{"year":"2022","month":"5","text":"May 2022"},{"year":"2022","month":"3","text":"March 2022"},{"year":"2022","month":"2","text":"February 2022"},{"year":"2022","month":"1","text":"January 2022"},{"year":"2021","month":"12","text":"December 2021"},{"year":"2021","month":"11","text":"November 2021"},{"year":"2021","month":"10","text":"October 2021"},{"year":"2021","month":"9","text":"September 2021"},{"year":"2021","month":"8","text":"August 2021"},{"year":"2021","month":"7","text":"July 2021"},{"year":"2021","month":"6","text":"June 2021"},{"year":"2021","month":"5","text":"May 2021"},{"year":"2021","month":"4","text":"April 2021"},{"year":"2021","month":"3","text":"March 2021"},{"year":"2021","month":"2","text":"February 2021"},{"year":"2021","month":"1","text":"January 2021"},{"year":"2020","month":"12","text":"December 2020"},{"year":"2020","month":"11","text":"November 2020"},{"year":"2020","month":"9","text":"September 2020"},{"year":"2020","month":"8","text":"August 2020"},{"year":"2020","month":"6","text":"June 2020"},{"year":"2020","month":"4","text":"April 2020"},{"year":"2020","month":"3","text":"March 2020"},{"year":"2020","month":"2","text":"February 2020"},{"year":"2020","month":"1","text":"January 2020"},{"year":"2019","month":"11","text":"November 2019"},{"year":"2019","month":"10","text":"October 2019"},{"year":"2019","month":"9","text":"September 2019"},{"year":"2019","month":"8","text":"August 2019"},{"year":"2019","month":"7","text":"July 2019"},{"year":"2019","month":"5","text":"May 2019"},{"year":"2019","month":"4","text":"April 2019"},{"year":"2019","month":"3","text":"March 2019"},{"year":"2019","month":"2","text":"February 2019"},{"year":"2019","month":"1","text":"January 2019"},{"year":"2018","month":"12","text":"December 2018"},{"year":"2018","month":"11","text":"November 2018"}],"mediaTrash":0,"infiniteScrolling":1}}; 2702//# sourceURL=media-views-js-extra 2703</script>
vendor: 1 bytes, line 2703
2703
2704<script id="media-views-js" src="https://subtlemedical.com/wp-includes/js/media-views.js?ver=7.1"></script>
vendor: 1 bytes, line 2704
2704
2705<script id="media-editor-js" src="https://subtlemedical.com/wp-includes/js/media-editor.js?ver=7.1"></script>
vendor: 1 bytes, line 2705
2705
2706<script id="media-audiovideo-js" src="https://subtlemedical.com/wp-includes/js/media-audiovideo.js?ver=7.1"></script>
vendor: 1 bytes, line 2706
2706
2707<script id="leadin-script-loader-js-js-extra"> 2708var leadin_wordpress = {"userRole":"visitor","pageType":"page","leadinPluginVersion":"11.3.73"}; 2709//# sourceURL=leadin-script-loader-js-js-extra 2710</script>
vendor: 1 bytes, line 2710
2710
2711<script async defer id='hs-script-loader' src="https://js-na2.hs-scripts.com/246397018.js?integration=WordPress&ver=11.3.73"></script>
vendor: 1 bytes, line 2711
2711
2712<script data-wp-strategy="defer" defer id="g4events-js" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/g4events.js?ver=1.1"></script>
vendor: 1 bytes, line 2712
2712
2713<script id="smush-lazy-load-js-before"> 2714var smushLazyLoadOptions = {"autoResizingEnabled":false,"autoResizeOptions":{"precision":5,"skipAutoWidth":true,"cdnBaseURL":""}}; 2715//# sourceURL=smush-lazy-load-js-before 2716</script>
vendor: 1 bytes, line 2716
2716
2717<script id="smush-lazy-load-js" src="https://subtlemedical.com/wp-content/plugins/wp-smushit/app/assets/js/smush-lazy-load.min.js?ver=4.3.2"></script>
vendor: 1 bytes, line 2717
2717
2718<script id="wp-emoji-settings" type="application/json"> 2719{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"wpemoji":"https://subtlemedical.com/wp-includes/js/wp-emoji.js?ver=7.1","twemoji":"https://subtlemedical.com/wp-includes/js/twemoji.js?ver=7.1"}} 2720</script>
vendor: 1 bytes, line 2720
2720
2721<script type="module"> 2722/** 2723 * @output wp-includes/js/wp-emoji-loader.js 2724 */ 2725 2726/* eslint-env es6 */ 2727 2728// Note: This is loaded as a script module, so there is no need for an IIFE to prevent pollution of the global scope. 2729 2730/** 2731 * Emoji Settings as exported in PHP via _print_emoji_detection_script(). 2732 * @typedef WPEmojiSettings 2733 * @type {object} 2734 * @property {?object} source 2735 * @property {?string} source.concatemoji 2736 * @property {?string} source.twemoji 2737 * @property {?string} source.wpemoji 2738 */ 2739 2740const selector = 'script#wp-emoji-settings'; 2741const script = document.querySelector( selector ); 2742if ( ! ( script instanceof HTMLScriptElement ) ) { 2743 throw new Error( `Element missing: ${ selector }`); 2744} 2745const settings = /** @type {WPEmojiSettings} */ ( JSON.parse( script.text ) ); 2746 2747// For compatibility with other scripts that read from this global, in particular wp-includes/js/wp-emoji.js (source file: js/_enqueues/wp/emoji.js). 2748window._wpemojiSettings = settings; 2749 2750/** 2751 * Support tests. 2752 * @typedef SupportTests 2753 * @type {object} 2754 * @property {?boolean} flag 2755 * @property {?boolean} emoji 2756 */ 2757 2758const sessionStorageKey = 'wpEmojiSettingsSupports'; 2759const tests = [ 'flag', 'emoji' ]; 2760 2761/** 2762 * Checks whether the browser supports offloading to a Worker. 2763 * 2764 * @since 6.3.0 2765 * 2766 * @private 2767 * 2768 * @returns {boolean} 2769 */ 2770function supportsWorkerOffloading() { 2771 return ( 2772 typeof Worker !== 'undefined' && 2773 typeof OffscreenCanvas !== 'undefined' && 2774 typeof URL !== 'undefined' && 2775 URL.createObjectURL && 2776 typeof Blob !== 'undefined' 2777 ); 2778} 2779 2780/** 2781 * @typedef SessionSupportTests 2782 * @type {object} 2783 * @property {number} timestamp 2784 * @property {SupportTests} supportTests 2785 */ 2786 2787/** 2788 * Get support tests from session. 2789 * 2790 * @since 6.3.0 2791 * 2792 * @private 2793 * 2794 * @returns {?SupportTests} Support tests, or null if not set or older than 1 week. 2795 */ 2796function getSessionSupportTests() { 2797 try { 2798 /** @type {SessionSupportTests} */ 2799 const item = JSON.parse( 2800 sessionStorage.getItem( sessionStorageKey ) 2801 ); 2802 if ( 2803 typeof item === 'object' && 2804 typeof item.timestamp === 'number' && 2805 new Date().valueOf() < item.timestamp + 604800 && // Note: Number is a week in seconds. 2806 typeof item.supportTests === 'object' 2807 ) { 2808 return item.supportTests; 2809 } 2810 } catch ( e ) {} 2811 return null; 2812} 2813 2814/** 2815 * Persist the supports in session storage. 2816 * 2817 * @since 6.3.0 2818 * 2819 * @private 2820 * 2821 * @param {SupportTests} supportTests Support tests. 2822 */ 2823function setSessionSupportTests( supportTests ) { 2824 try { 2825 /** @type {SessionSupportTests} */ 2826 const item = { 2827 supportTests: supportTests, 2828 timestamp: new Date().valueOf() 2829 }; 2830 2831 sessionStorage.setItem( 2832 sessionStorageKey, 2833 JSON.stringify( item ) 2834 ); 2835 } catch ( e ) {} 2836} 2837 2838/** 2839 * Checks if two sets of Emoji characters render the same visually. 2840 * 2841 * This is used to determine if the browser is rendering an emoji with multiple data points 2842 * correctly. set1 is the emoji in the correct form, using a zero-width joiner. set2 is the emoji 2843 * in the incorrect form, using a zero-width space. If the two sets render the same, then the browser 2844 * does not support the emoji correctly. 2845 * 2846 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 2847 * scope. Everything must be passed by parameters. 2848 * 2849 * @since 4.9.0 2850 * 2851 * @private 2852 * 2853 * @param {CanvasRenderingContext2D} context 2D Context. 2854 * @param {string} set1 Set of Emoji to test. 2855 * @param {string} set2 Set of Emoji to test. 2856 * 2857 * @return {boolean} True if the two sets render the same. 2858 */ 2859function emojiSetsRenderIdentically( context, set1, set2 ) { 2860 // Cleanup from previous test. 2861 context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); 2862 context.fillText( set1, 0, 0 ); 2863 const rendered1 = new Uint32Array( 2864 context.getImageData( 2865 0, 2866 0, 2867 context.canvas.width, 2868 context.canvas.height 2869 ).data 2870 ); 2871 2872 // Cleanup from previous test. 2873 context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); 2874 context.fillText( set2, 0, 0 ); 2875 const rendered2 = new Uint32Array( 2876 context.getImageData( 2877 0, 2878 0, 2879 context.canvas.width,
2880 context.canvas.height 2881 ).data 2882 ); 2883 2884 return rendered1.every( ( rendered2Data, index ) => { 2885 return rendered2Data === rendered2[ index ]; 2886 } ); 2887} 2888 2889/** 2890 * Checks if the center point of a single emoji is empty. 2891 * 2892 * This is used to determine if the browser is rendering an emoji with a single data point 2893 * correctly. The center point of an incorrectly rendered emoji will be empty. A correctly 2894 * rendered emoji will have a non-zero value at the center point. 2895 * 2896 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 2897 * scope. Everything must be passed by parameters. 2898 * 2899 * @since 6.8.2 2900 * 2901 * @private 2902 * 2903 * @param {CanvasRenderingContext2D} context 2D Context. 2904 * @param {string} emoji Emoji to test. 2905 * 2906 * @return {boolean} True if the center point is empty. 2907 */ 2908function emojiRendersEmptyCenterPoint( context, emoji ) { 2909 // Cleanup from previous test. 2910 context.clearRect( 0, 0, context.canvas.width, context.canvas.height ); 2911 context.fillText( emoji, 0, 0 ); 2912 2913 // Test if the center point (16, 16) is empty (0,0,0,0). 2914 const centerPoint = context.getImageData(16, 16, 1, 1); 2915 for ( let i = 0; i < centerPoint.data.length; i++ ) { 2916 if ( centerPoint.data[ i ] !== 0 ) { 2917 // Stop checking the moment it's known not to be empty. 2918 return false; 2919 } 2920 } 2921 2922 return true; 2923} 2924 2925/** 2926 * Determines if the browser properly renders Emoji that Twemoji can supplement. 2927 * 2928 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 2929 * scope. Everything must be passed by parameters. 2930 * 2931 * @since 4.2.0 2932 * 2933 * @private 2934 * 2935 * @param {CanvasRenderingContext2D} context 2D Context. 2936 * @param {string} type Whether to test for support of "flag" or "emoji". 2937 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification. 2938 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification. 2939 * 2940 * @return {boolean} True if the browser can render emoji, false if it cannot. 2941 */ 2942function browserSupportsEmoji( context, type, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) { 2943 let isIdentical; 2944 2945 switch ( type ) { 2946 case 'flag': 2947 /* 2948 * Test for Transgender flag compatibility. Added in Unicode 13. 2949 * 2950 * To test for support, we try to render it, and compare the rendering to how it would look if 2951 * the browser doesn't render it correctly (white flag emoji + transgender symbol). 2952 */ 2953 isIdentical = emojiSetsRenderIdentically( 2954 context, 2955 '\uD83C\uDFF3\uFE0F\u200D\u26A7\uFE0F', // as a zero-width joiner sequence 2956 '\uD83C\uDFF3\uFE0F\u200B\u26A7\uFE0F' // separated by a zero-width space 2957 ); 2958 2959 if ( isIdentical ) { 2960 return false; 2961 } 2962 2963 /* 2964 * Test for Sark flag compatibility. This is the least supported of the letter locale flags, 2965 * so gives us an easy test for full support. 2966 * 2967 * To test for support, we try to render it, and compare the rendering to how it would look if 2968 * the browser doesn't render it correctly ([C] + [Q]). 2969 */ 2970 isIdentical = emojiSetsRenderIdentically( 2971 context, 2972 '\uD83C\uDDE8\uD83C\uDDF6', // as the sequence of two code points 2973 '\uD83C\uDDE8\u200B\uD83C\uDDF6' // as the two code points separated by a zero-width space 2974 ); 2975 2976 if ( isIdentical ) { 2977 return false; 2978 } 2979 2980 /* 2981 * Test for English flag compatibility. England is a country in the United Kingdom, it 2982 * does not have a two letter locale code but rather a five letter sub-division code. 2983 * 2984 * To test for support, we try to render it, and compare the rendering to how it would look if 2985 * the browser doesn't render it correctly (black flag emoji + [G] + [B] + [E] + [N] + [G]). 2986 */ 2987 isIdentical = emojiSetsRenderIdentically( 2988 context, 2989 // as the flag sequence 2990 '\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F', 2991 // with each code point separated by a zero-width space 2992 '\uD83C\uDFF4\u200B\uDB40\uDC67\u200B\uDB40\uDC62\u200B\uDB40\uDC65\u200B\uDB40\uDC6E\u200B\uDB40\uDC67\u200B\uDB40\uDC7F' 2993 ); 2994 2995 return ! isIdentical; 2996 case 'emoji': 2997 /* 2998 * Is there a large, hairy, humanoid mythical creature living in the browser? 2999 * 3000 * To test for Emoji 17.0 support, try to render a new emoji: Hairy Creature. 3001 * 3002 * The hairy creature emoji is a single code point emoji. Testing for browser 3003 * support required testing the center point of the emoji to see if it is empty. 3004 * 3005 * 0xD83E 0x1FAC8 (\uD83E\u1FAC8) == ð« Hairy creature. 3006 * 3007 * When updating this test, please ensure that the emoji is either a single code point 3008 * or switch to using the emojiSetsRenderIdentically function and testing with a zero-width 3009 * joiner vs a zero-width space. 3010 */ 3011 const notSupported = emojiRendersEmptyCenterPoint( context, '\uD83E\u1FAC8' ); 3012 return ! notSupported; 3013 } 3014 3015 return false;
3016} 3017 3018/** 3019 * Checks emoji support tests. 3020 * 3021 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing 3022 * scope. Everything must be passed by parameters. 3023 * 3024 * @since 6.3.0 3025 * 3026 * @private 3027 * 3028 * @param {string[]} tests Tests. 3029 * @param {Function} browserSupportsEmoji Reference to browserSupportsEmoji function, needed due to minification. 3030 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification. 3031 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification. 3032 * 3033 * @return {SupportTests} Support tests. 3034 */ 3035function testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) { 3036 let canvas; 3037 if ( 3038 typeof WorkerGlobalScope !== 'undefined' && 3039 self instanceof WorkerGlobalScope 3040 ) { 3041 canvas = new OffscreenCanvas( 300, 150 ); // Dimensions are default for HTMLCanvasElement. 3042 } else { 3043 canvas = document.createElement( 'canvas' ); 3044 } 3045 3046 const context = canvas.getContext( '2d', { willReadFrequently: true } ); 3047 3048 /* 3049 * Chrome on OS X added native emoji rendering in M41. Unfortunately, 3050 * it doesn't work when the font is bolder than 500 weight. So, we 3051 * check for bold rendering support to avoid invisible emoji in Chrome. 3052 */ 3053 context.textBaseline = 'top'; 3054 context.font = '600 32px Arial'; 3055 3056 const supports = {}; 3057 tests.forEach( ( test ) => { 3058 supports[ test ] = browserSupportsEmoji( context, test, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ); 3059 } ); 3060 return supports; 3061} 3062 3063/** 3064 * Adds a script to the head of the document. 3065 * 3066 * @ignore 3067 * 3068 * @since 4.2.0 3069 * 3070 * @param {string} src The url where the script is located. 3071 * 3072 * @return {void} 3073 */ 3074function addScript( src ) { 3075 const script = document.createElement( 'script' ); 3076 script.src = src; 3077 script.defer = true; 3078 document.head.appendChild( script ); 3079} 3080 3081settings.supports = { 3082 everything: true, 3083 everythingExceptFlag: true 3084}; 3085 3086// Obtain the emoji support from the browser, asynchronously when possible. 3087new Promise( ( resolve ) => { 3088 let supportTests = getSessionSupportTests(); 3089 if ( supportTests ) { 3090 resolve( supportTests ); 3091 return; 3092 } 3093 3094 if ( supportsWorkerOffloading() ) { 3095 try { 3096 // Note that the functions are being passed as arguments due to minification. 3097 const workerScript = 3098 'postMessage(' + 3099 testEmojiSupports.toString() + 3100 '(' + 3101 [ 3102 JSON.stringify( tests ), 3103 browserSupportsEmoji.toString(), 3104 emojiSetsRenderIdentically.toString(), 3105 emojiRendersEmptyCenterPoint.toString() 3106 ].join( ',' ) + 3107 '));'; 3108 const blob = new Blob( [ workerScript ], { 3109 type: 'text/javascript' 3110 } ); 3111 const worker = new Worker( URL.createObjectURL( blob ), { name: 'wpTestEmojiSupports' } ); 3112 worker.onmessage = ( event ) => { 3113 supportTests = event.data; 3114 setSessionSupportTests( supportTests ); 3115 worker.terminate(); 3116 resolve( supportTests ); 3117 }; 3118 return; 3119 } catch ( e ) {} 3120 } 3121 3122 supportTests = testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ); 3123 setSessionSupportTests( supportTests ); 3124 resolve( supportTests ); 3125} ) 3126 // Once the browser emoji support has been obtained from the session, finalize the settings. 3127 .then( ( supportTests ) => { 3128 /* 3129 * Tests the browser support for flag emojis and other emojis, and adjusts the 3130 * support settings accordingly. 3131 */ 3132 for ( const test in supportTests ) { 3133 settings.supports[ test ] = supportTests[ test ]; 3134 3135 settings.supports.everything = 3136 settings.supports.everything && settings.supports[ test ]; 3137 3138 if ( 'flag' !== test ) { 3139 settings.supports.everythingExceptFlag = 3140 settings.supports.everythingExceptFlag && 3141 settings.supports[ test ]; 3142 } 3143 } 3144 3145 settings.supports.everythingExceptFlag = 3146 settings.supports.everythingExceptFlag && 3147 ! settings.supports.flag; 3148 3149 // When the browser can not render everything we need to load a polyfill. 3150 if ( ! settings.supports.everything ) { 3151 const src = settings.source || {}; 3152 3153 if ( src.concatemoji ) { 3154 addScript( src.concatemoji ); 3155 } else if ( src.wpemoji && src.twemoji ) { 3156 addScript( src.twemoji ); 3157 addScript( src.wpemoji ); 3158 } 3159 } 3160 } ); 3161//# sourceURL=https://subtlemedical.com/wp-includes/js/wp-emoji-loader.js 3162</script>
3162 3163 3164 <footer> 3165 <div class="row"> 3166 <div class="flex"> 3167 <div id="footlogo"> 3168 <a href="https://subtlemedical.com"> 3169 <img src="https://subtlemedical.com/wp-content/themes/subtlemedical/img/subtle-medical-logo-invert.svg" alt="Subtle Medical" class="eager"> 3170 </a> 3171 </div> 3172 3173 <nav id="footMenu"> 3174 <div class="scroll"> 3175 <div class="content"> 3176 <div class="menu-foot-menu-container"><ul id="menu-foot-menu" class="menu"><li id="menu-item-10759" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-10759"><a href="https://subtlemedical.com/subtle-elite/">AI Solutions</a> 3177<ul class="sub-menu"> 3178 <li id="menu-item-10760" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-10760"><a href="#">MRI</a> 3179 <ul class="sub-menu"> 3180 <li id="menu-item-11319" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11319"><a href="https://subtlemedical.com/subtle-elite/">Subtle-ELITEâ¢</a></li> 3181 <li id="menu-item-12630" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-12630"><a href="https://subtlemedical.com/subtle-hdmr-26/">SubtleHDâ¢(MR)</a></li> 3182 <li id="menu-item-10762" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10762"><a href="https://subtlemedical.com/subtlesynth/">SubtleSYNTHâ¢</a></li> 3183 <li id="menu-item-10764" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10764"><a href="https://subtlemedical.com/subtlealign/">SubtleALIGNâ¢</a></li> 3184 <li id="menu-item-10768" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10768"><a href="https://subtlemedical.com/subtlegad/">SubtleGADâ¢</a></li> 3185 <li id="menu-item-11320" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11320"><a target="_blank" href="https://braccomr.com/aimify/">AiMIFYâ¢</a></li> 3186 </ul> 3187</li> 3188 <li id="menu-item-10761" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-10761"><a href="#">PET</a> 3189 <ul class="sub-menu"> 3190 <li id="menu-item-10902" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10902"><a href="https://subtlemedical.com/subtlepet/">SubtleHDâ¢(PET)</a></li> 3191 </ul> 3192</li> 3193 <li id="menu-item-13698" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-13698"><a href="#">CT</a> 3194 <ul class="sub-menu"> 3195 <li id="menu-item-13699" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13699"><a href="https://subtlemedical.com/subtlehdct/">SubtleHDâ¢(CT)</a></li> 3196 </ul> 3197</li> 3198</ul> 3199</li> 3200<li id="menu-item-10769" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-ancestor current-menu-parent current_page_parent current_page_ancestor menu-item-has-children menu-item-10769"><a href="https://subtlemedical.com/about-us/">Company</a> 3201<ul class="sub-menu"> 3202 <li id="menu-item-10770" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10770"><a href="https://subtlemedical.com/about-us/">About Us</a></li> 3203 <li id="menu-item-10771" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10771"><a href="/about-us#leadership">Leadership</a></li> 3204 <li id="menu-item-10772" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10772"><a href="/about-us#partners">Partners</a></li> 3205 <li id="menu-item-12964" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-12919 current_page_item menu-item-12964"><a href="https://subtlemedical.com/careers/" aria-current="page">Careers</a></li> 3206 <li id="menu-item-10939" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10939"><a href="https://subtlemedical.com/contact/">Contact Us</a></li> 3207</ul> 3208</li> 3209<li id="menu-item-10774" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-10774"><a href="https://subtlemedical.com/news/">Resources</a> 3210<ul class="sub-menu"> 3211 <li id="menu-item-10775" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10775"><a href="/news#posts">News</a></li> 3212 <li id="menu-item-13700" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13700"><a href="https://subtlemedical.com/events/">Events</a></li> 3213 <li id="menu-item-10776" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10776"><a href="/news#awards">Awards</a></li> 3214 <li id="menu-item-10777" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10777"><a href="https://subtlemedical.com/publications/">Publications</a></li> 3215 <li id="menu-item-10779" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10779"><a href="https://subtlemedical.com/clinical-case-studies/">Case Studies & White Papers</a></li> 3216 <li id="menu-item-10780" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-10780"><a href="https://subtlemedical.com/customer-testimonials/">Customer Testimonials</a></li> 3217 <li id="menu-item-10781" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10781"><a target="_blank" href="https://subtlemedical.atlassian.net/servicedesk/customer/portals">Help Center</a></li> 3218</ul> 3219</li> 3220<li id="menu-item-10782" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-10782"><a href="https://subtlemedical.com/subtle-insights/">Subtle Insights</a> 3221<ul class="sub-menu"> 3222 <li id="menu-item-14340" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14340"><a href="https://subtlemedical.com/resources/?resource_search=&type=blog&resource_topic=all">Blog</a></li> 3223 <li id="menu-item-14341" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14341"><a href="https://subtlemedical.com/resources/?resource_search=&type=webinar&resource_topic=all">Webinar</a></li> 3224 <li id="menu-item-14342" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14342"><a href="https://subtlemedical.com/resources/?resource_search=&type=case-study&resource_topic=all">Case Studies</a></li> 3225 <li id="menu-item-14343" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-14343"><a href="https://subtlemedical.com/resources/?resource_search=&type=white-paper&resource_topic=all">Whitepapers</a></li> 3226</ul> 3227</li> 3228</ul></div> </div> 3229 </div> 3230 </nav> 3231 </div> 3232 <div class="flex2"> 3233 <div class="left"> 3234 <div class="social"> 3235 <div class="menu-social-menu-container"><ul id="menu-social-menu" class="menu"><li id="menu-item-10756" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10756"><a target="_blank" href="https://x.com/SubtleMedical/status/1765795924289425670">X</a></li> 3236<li id="menu-item-10757" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10757"><a target="_blank" href="https://www.linkedin.com/company/subtlemedical/">LinkedIn</a></li> 3237<li id="menu-item-11658" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11658"><a target="_blank" href="https://www.instagram.com/subtlemedical/">Instagram</a></li> 3238<li id="menu-item-10758" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10758"><a target="_blank" href="https://www.youtube.com/channel/UCSjsgz4N9WHIYT3_5-ylYJw">YouTube</a></li> 3239</ul></div> </div> 3240 <p><a href="/policy/">Privacy Policy</a> | <a href="/compliance">
3240Compliance Center</a><br><br>© 2026 Subtle Medical, Inc.<br>All Rights Reserved.</p> 3241 3242 </div> 3243 <div class="right"> 3244 <div class="txt"> 3245 <p>The Leader in AI-Powered Image Acquisition Serve more patients better.</p> 3246 </div> 3247 <div class="button"> 3248 <a href="/subtle-elite/#elitecontact?src=home">Request a Demo</a> 3249 </div> 3250 </div> 3251 </div> 3252 </div> 3253 3254 </footer> 3255 3256 3257 </div> 3258 3259
3259<script> 3260 jQuery(document).ready(function($){ 3261 if(Cookies.get('disc')!='13abcff22'){ 3262 $('#disclaimer').show(); 3263 } 3264 3265 $('#disclaimer a').on('click', function(e){ 3266 e.preventDefault(); 3267 $('#disclaimer').fadeOut(); 3268 Cookies.set('disc', '13abcff22', { expires: 30, path: '/' }); 3269 }) 3270 }) 3271 </script>
3271 3272 3273 3274
3274<script src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/jquery-3.3.1.min.js"></script>
3274 3275
3275<script src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/functions.js"></script>
3275 3276
3276<script src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/html5lightbox.js"></script>
3276 3277
3277<script type="text/javascript" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/jquery.viewportchecker.min.js"></script>
3277 3278
3278<script type="text/javascript" src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/owl.carousel.min.js"></script>
3278 3279
3279<script src="https://subtlemedical.com/wp-content/themes/subtlemedical/js/js.cookie.js"></script>
3279 3280
3280<script type="text/javascript"> 3281 // clone owlCarousel to global $ 3282 // $.fn.owlCarousel = jQuery.fn.owlCarousel; 3283 // $.fn.viewportChecker = jQuery.fn.viewportChecker; 3284 </script>
3284 3285 <!-- Start of HubSpot Embed Code --> 3286
3286<script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/4393850.js"></script>
3286 3287 <!-- End of HubSpot Embed Code --> 3288 </body> 3289</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.