@charset "UTF-8";
/* ==========================================================================
  Base
========================================================================== */
/*
* Global
* ------------------------------------------------------------------------------
*
*/
@import url("../fonts.css");
body {
  font-size: 18px;
  font-size: 1.8rem; }

main {
  padding: 0; }
  @media only screen and (min-width: 736px) {
    main {
      padding: 0; } }

main a,
main a:visited {
  color: #0070c9; }

main.scroll {
  -webkit-transition: -webkit-transform 0.55s;
  transition: -webkit-transform 0.55s;
  transition: transform 0.55s;
  transition: transform 0.55s, -webkit-transform 0.55s;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

img {
  height: auto;
  max-width: 100%;
  page-break-inside: avoid;
  -ms-interpolation-mode: bicubic; }

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

/*
* Accessibility
* ------------------------------------------------------------------------------
*
*/
p:focus, h1:focus, h2:focus, h3:focus, h4:focus, h5:focus, h6:focus {
  outline: none; }

.a11y {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/*
 * Global
 */
.site-width {
  margin: 0 2.2rem; }
  @media only screen and (min-width: 1069px) {
    .site-width {
      margin: 0 auto;
      max-width: 980px;
      max-width: 54.44444em; } }

.site-width--margin {
  margin-bottom: 4rem;
  margin-top: 4rem; }

.site-width--example {
  margin-bottom: 0;
  margin-top: 4rem; }

.site-width--example h1 {
  font-weight: 100;
  margin-bottom: 4rem;
  text-align: left; }

.site-width--example h2 {
  border-bottom: 1px solid #cccccc;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 100;
  margin: 0;
  padding-bottom: 10px; }
  @media only screen and (min-width: 736px) {
    .site-width--example h2 {
      font-size: 34px;
      font-size: 3.4rem; } }

/*
 * Swapping
 */
@media only screen and (max-width: 735px) {
  .components-wrapper--swap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100%; } }

@media only screen and (min-width: 736px) {
  .components-wrapper--swap-desktop {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100%; } }

@media only screen and (max-width: 735px) {
  .component--swap-sm-less-1 {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1; } }

@media only screen and (max-width: 735px) {
  .component--swap-sm-less-2 {
    -webkit-box-ordinal-group: -1;
    -webkit-order: -2;
        -ms-flex-order: -2;
            order: -2; } }

@media only screen and (max-width: 735px) {
  .component--swap-sm-less-3 {
    -webkit-box-ordinal-group: -2;
    -webkit-order: -3;
        -ms-flex-order: -3;
            order: -3; } }

@media only screen and (max-width: 735px) {
  .component--swap-sm-less-4 {
    -webkit-box-ordinal-group: -3;
    -webkit-order: -4;
        -ms-flex-order: -4;
            order: -4; } }

@media only screen and (min-width: 736px) {
  .component--swap-sm-1 {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
    width: 100%; } }

/*
 * Curtain
 */
.curtain {
  background: rgba(0, 0, 0, 0.2);
  bottom: 0;
  display: none;
  left: 0;
  height: 100%;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  width: 100%;
  z-index: 10002; }

.curtain.show {
  display: block; }

.curtain.in {
  opacity: 1; }

/*
 * Shifter
 */
*[data-shift] {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform .75s ease-in-out;
  transition: -webkit-transform .75s ease-in-out;
  transition: transform .75s ease-in-out;
  transition: transform .75s ease-in-out, -webkit-transform .75s ease-in-out;
  will-change: transform; }

@media only screen and (max-width: 479px) {
  .hidden-xs {
    display: none !important; } }

@media only screen and (max-width: 735px) {
  .hidden-sm {
    display: none !important; } }

@media only screen and (max-width: 1068px) {
  .hidden-md {
    display: none !important; } }

@media only screen and (min-width: 1199px) {
  .hidden-lg {
    display: none !important; } }

@media only screen and (min-width: 480px) {
  .visible-xs {
    display: none !important; } }

@media only screen and (min-width: 736px) {
  .visible-sm {
    display: none !important; } }

@media only screen and (min-width: 1069px) {
  .visible-md {
    display: none !important; } }

@media only screen and (min-width: 1200px) {
  .visible-lg {
    display: none !important; } }

.full-width {
  max-width: none !important;
  width: 100% !important; }

@media only screen and (min-width: 1200px) {
  .full-width-lg {
    max-width: none !important;
    width: 100% !important; } }

@media only screen and (min-width: 736px) {
  .full-width-sm {
    max-width: none !important;
    width: 100% !important; } }

/**
 * TYPOGRAPHY
 */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 300; }

html {
  font-family: "SF Pro Text", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }

:lang(ar) {
  line-height: 1.58824;
  letter-spacing: 0;
  font-family: "SF Pro AR", "SF Pro Gulf", "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

:lang(ja-JP) {
  letter-spacing: 0;
  font-family: "SF Pro JP", "SF Pro Text", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

:lang(ko-KR) {
  letter-spacing: 0;
  font-family: "SF Pro KR", "SF Pro Text", "SF Pro Icons", "Apple Gothic", "HY Gulim", "MalgunGothic", "HY Dotum", "Lexi Gulim", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

:lang(th-TH) {
  line-height: 1.64706;
  letter-spacing: 0;
  font-family: "SF Pro TH", "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

:lang(zh) {
  letter-spacing: 0; }

:lang(zh-CN) {
  font-family: "SF Pro SC", "SF Pro Text", "SF Pro Icons", "PingFang SC", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

:lang(zh-HK) {
  font-family: "SF Pro HK", "SF Pro Text", "SF Pro Icons", "PingFang HK", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

:lang(zh-MO) {
  font-family: "SF Pro HK", "SF Pro TC", "SF Pro Text", "SF Pro Icons", "PingFang HK", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

:lang(zh-TW) {
  font-family: "SF Pro TC", "SF Pro Text", "SF Pro Icons", "PingFang TC", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }

h1, h2, h3, h4, h5, h6 {
  font-family: "SF Pro Display", "SF Pro Icons", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }

h1 {
  color: #333333;
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1;
  margin: 0; }
  @media only screen and (min-width: 736px) {
    h1 {
      font-size: 50px;
      font-size: 5rem;
      line-height: 1.2; } }

h2 {
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.2;
  margin: 0; }
  @media only screen and (min-width: 736px) {
    h2 {
      font-size: 40px;
      font-size: 4rem; } }

h3 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.3;
  margin: 0; }
  @media only screen and (min-width: 736px) {
    h3 {
      font-size: 30px;
      font-size: 3rem;
      font-weight: 400; } }

h4 {
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.1;
  margin: 0; }
  @media only screen and (min-width: 736px) {
    h4 {
      font-size: 36px;
      font-size: 3.6rem; } }
  @media only screen and (min-width: 1069px) {
    h4 {
      font-size: 40px;
      font-size: 4rem; } }

h5 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3;
  margin: 0; }
  @media only screen and (min-width: 736px) {
    h5 {
      font-size: 28px;
      font-size: 2.8rem; } }
  @media only screen and (min-width: 1069px) {
    h5 {
      font-size: 36px;
      font-size: 3.6rem; } }

h6 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  margin: 0; }
  @media only screen and (min-width: 736px) {
    h6 {
      font-size: 24px;
      font-size: 2.4rem; } }
  @media only screen and (min-width: 1069px) {
    h6 {
      font-size: 28px;
      font-size: 2.8rem; } }
:lang(ko) {
  word-break: keep-all;
}

p {
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 1.53;
  margin: 0 0 2rem; }

blockquote {
  font-weight: 300; }

blockquote p.quote {
  line-height: 1.3;
  margin-bottom: 0; }
  @media only screen and (min-width: 736px) {
    blockquote p.quote {
      font-weight: 300;
      line-height: 1.1; } }
  blockquote p.quote .quote__open, blockquote p.quote::before {
    display: inline-block;
    margin-left: -1em;
    text-align: right;
    width: 1em;
    white-space: pre; }
  blockquote:lang(fr-FR) p.quote::before {
    margin-left: 0;
    width: auto; }
  blockquote p.quote::before {
    content: "“"; }
  blockquote p.quote .quote__close, blockquote p.quote::after {
    display: inline-block;
    white-space: pre; }
  blockquote p.quote::after {
    content: "”"; }
  blockquote p.quote:lang(cs)::before {
    content: "„"; }
  blockquote p.quote:lang(cs)::after {
    content: "“"; }
  blockquote p.quote:lang(de)::before {
    content: "„"; }
  blockquote p.quote:lang(de)::after {
    content: "“"; }
  blockquote p.quote:lang(es-ES)::before {
    content: "«"; }
  blockquote p.quote:lang(es-ES)::after {
    content: "»"; }
  blockquote p.quote:lang(fi)::before {
    content: "”"; }
  blockquote p.quote:lang(fi)::after {
    content: "”"; }
  blockquote p.quote:lang(fr)::before {
    content: "« "; }
  blockquote p.quote:lang(fr)::after {
    content: " »"; }
  blockquote p.quote:lang(hu)::before {
    content: "„"; }
  blockquote p.quote:lang(hu)::after {
    content: "”"; }
  blockquote p.quote:lang(ja)::before {
    content: "「"; }
  blockquote p.quote:lang(ja)::after {
    content: "」"; }
  blockquote p.quote:lang(no)::before {
    content: "«"; }
  blockquote p.quote:lang(no)::after {
    content: "»"; }
  blockquote p.quote:lang(ru)::before {
    content: "« "; }
  blockquote p.quote:lang(ru)::after {
    content: " »"; }
  blockquote p.quote:lang(zh-HK)::before {
    content: "「"; }
  blockquote p.quote:lang(zh-HK)::after {
    content: "」"; }
  blockquote p.quote:lang(zh-MO)::before {
    content: "「"; }
  blockquote p.quote:lang(zh-MO)::after {
    content: "」"; }
  blockquote p.quote:lang(zh-TW)::before {
    content: "「"; }
  blockquote p.quote:lang(zh-TW)::after {
    content: "」"; }
  blockquote p.quote.quote--without-marks::before, blockquote p.quote.quote--without-marks::after {
    content: none; }

blockquote .blockquote__footer {
  font-weight: 400;
  margin: 1rem auto 0;
  padding: 0;
  width: auto; }
  @media only screen and (min-width: 736px) {
    blockquote .blockquote__footer {
      font-weight: 300; } }

blockquote cite {
  font-style: normal; }

strong {
  font-weight: 600; }

.uppercase {
  font-weight: 700;
  letter-spacing: -.03rem;
  text-transform: uppercase; }

sup.asterisk {
  font-size: 0.8em;
  bottom: 0; }

.font-regular {
  font-weight: 400; }

a {
  color: #666666;
  text-decoration: none; }
  a:hover {
    color: #0070c9;
    text-decoration: underline; }

.list-inline {
  margin: 0 0 1.5rem;
  padding: 0; }
  .list-inline:last-child {
    margin-bottom: 0; }

.list-inline li {
  color: #666666;
  display: inline-block;
  list-style: none; }
  .list-inline li::after {
    content: ","; }
  .list-inline li:lang(ja)::after, .list-inline li:lang(ko)::after, .list-inline li:lang(th)::after, .list-inline li:lang(zh)::after {
    content: "、"; }
  .list-inline li:last-of-type::after {
    content: ""; }

/*
 * Alignments
 */
.center {
  text-align: center; }
@media only screen and (max-width: 735px) {
  .center-sm {
    text-align: center; } }

@media only screen and (max-width: 1068px) {
  .center-md {
    text-align: center; } }

@media only screen and (min-width: 1199px) {
  .center-lg {
    text-align: center; } }

.left {
  text-align: left; }

@media only screen and (max-width: 735px) {
  .left-sm {
    text-align: left; } }

@media only screen and (max-width: 1068px) {
  .left-md {
    text-align: left; } }

@media only screen and (min-width: 1199px) {
  .left-lg {
    text-align: left; } }

/* ==========================================================================
   Generic
========================================================================== */
.form-auto-suggest {
  position: relative; }
  .form-auto-suggest input[type="text"] {
    background: #fff no-repeat 13px center;
    background-image: url(/careers/css/apps/apple-externaljobs/components/common/images/icons/search-grey.svg);
    background-size: 15px 15px;
    line-height: 25px;
    margin-bottom: 0;
    padding-left: 35px;
    width: 100%; }
  .form-auto-suggest.match-true input[type="text"] {
    border-radius: 4px 4px 0 0; }
  .form-auto-suggest.match-true .auto-suggest {
    z-index: 10; }
  @media only screen and (max-width: 768px) {
    .form-auto-suggest + .curtain {
      display: none !important; } }

@media only screen and (max-width: 735px) {
  html.auto-suggest-on {
    height: 100%;
    overflow: hidden; }
    html.auto-suggest-on body {
      height: 100%;
      overflow: hidden; }
    html.auto-suggest-on label {
      display: none; } }

.form-auto-suggest.form-group-curtain {
  z-index: 10004; }

.auto-suggest {
  background: #fff;
  box-sizing: border-box;
  display: none;
  font-size: 18px;
  font-size: 1.8rem;
  max-height: 250px;
  max-height: 14em;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 10px 15px 15px;
  position: absolute;
  width: 100%; }
  .auto-suggest--empty {
    padding: 0; }
    @media only screen and (max-width: 768px) {
      .auto-suggest--empty {
        padding: 0; } }
  .auto-suggest .auto-suggest__default {
    color: #666666;
    padding: 6px 20px 0; }
    @media only screen and (max-width: 768px) {
      .auto-suggest .auto-suggest__default {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 0; } }
  .auto-suggest .auto-suggest__empty {
    color: #666666;
    padding: 6px 20px 0; }
    @media only screen and (max-width: 768px) {
      .auto-suggest .auto-suggest__empty {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 0; } }
  .auto-suggest .title {
    color: #666666;
    font-size: 14px;
    font-size: 1.4rem;
    margin: 10px 20px 8px; }
  .auto-suggest .auto-suggest__list {
    margin: 0;
    padding: 0; }
    .auto-suggest .auto-suggest__list li {
      list-style: none;
      margin: 0;
      padding: 0;
      text-align: left; }
      .auto-suggest .auto-suggest__list li a {
        background: no-repeat 5px 8px;
        background-image: url(/careers/css/apps/apple-externaljobs/components/common/images/icons/search-grey.svg);
        background-size: 14px 14px;
        color: #737373;
        display: block;
        margin: 3px 0;
        padding: 4px 20px 1px 30px; }
        .auto-suggest .auto-suggest__list li a:hover {
          background-color: #f8f8f8;
          background-image: url(/careers/css/apps/apple-externaljobs/components/common/images/icons/search-blue.svg);
          color: #0070c9;
          text-decoration: none; }
          .auto-suggest .auto-suggest__list li a:hover strong {
            color: #0070c9; }
        .auto-suggest .auto-suggest__list li a strong {
          color: #333333; }
      .auto-suggest .auto-suggest__list li.selected a {
        background-color: #f8f8f8;
        background-image: url(/careers/css/apps/apple-externaljobs/components/common/images/icons/search-blue.svg);
        color: #0070c9; }
        .auto-suggest .auto-suggest__list li.selected a strong {
          color: #0070c9; }
      @media only screen and (max-width: 768px) {
        .auto-suggest .auto-suggest__list li:last-of-type a {
          border-bottom: none; } }
    .auto-suggest .auto-suggest__list + .title {
      margin-top: 20px; }
      @media only screen and (max-width: 768px) {
        .auto-suggest .auto-suggest__list + .title {
          margin-top: 5px; } }
  .auto-suggest .auto-suggest__list--current {
    padding: 0; }

.compact .title {
  margin-left: 0; }

.compact .auto-suggest__list li a {
  background-position: 0 7px;
  font-size: 14px;
  font-size: 1.4rem;
  padding-left: 20px; }

.auto-suggest__list__title {
  display: block; }

.auto-suggest-list {
  margin: 20px 0 0;
  padding: 0; }
  .auto-suggest-list li {
    color: #000;
    display: inline-block;
    margin: 0 20px 12px 0;
    padding: 0; }
    .auto-suggest-list li .delete {
      margin: -2px 10px 0 0; }

.auto-suggest-list__title {
  color: #666666; }

.match .auto-suggest {
  display: none; }

.match--true .auto-suggest {
  display: block; }

.auto-suggest-cancel {
  color: #0070c9;
  display: none;
  float: right;
  margin: 10px 0 0;
  padding: 0; }

/* ==========================================================================
  Caption
========================================================================== */
.figcaption-wrapper {
  background: rgba(0, 0, 0, 0.65);
  bottom: 0;
  color: #fff;
  left: 0;
  position: absolute;
  right: 0;
  z-index: 10; }
  @media only screen and (min-width: 736px) {
    .figcaption-wrapper {
      min-height: 70px; } }

.figcaption-wrapper--light {
  background: rgba(255, 255, 255, 0.65);
  color: #000; }

@media only screen and (max-width: 735px) {
  .figcaption-wrapper--mobile-static {
    background: none;
    color: #666666;
    position: static; } }

.figcaption-wrapper > span {
  display: block;
  font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  margin: 0 auto;
  max-width: 980px;
  padding: 1.2rem 2.2rem;
  text-align: center; }
  @media only screen and (min-width: 736px) {
    .figcaption-wrapper > span {
      padding: 2.3rem 2rem 1.7rem; } }

@media only screen and (max-width: 735px) {
  .figcaption-wrapper--mobile-static > span {
    color: #000; } }

pre {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: 'Consolas', 'Liberation Mono', 'Courier', monospace;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0 2rem 6rem;
  padding: 0;
  position: relative; }
  @media only screen and (min-width: 1069px) {
    pre {
      margin: 0 auto 6rem;
      max-width: 980px; } }
  pre + pre {
    margin-top: -4rem !important; }
  pre::after {
    bottom: 8px;
    color: #999;
    content: "HTML";
    font-family: "SF Pro Text", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-size: 11px;
    font-size: 1.1rem;
    font-weight: bold;
    opacity: 0.5;
    position: absolute;
    right: 20px; }

pre.html::after {
  content: "HTML"; }

pre.css::after {
  content: "CSS"; }

pre.js::after {
  content: "JS"; }

pre.comment::after {
  content: "COMMENT"; }

pre.comment,
pre.comment code {
  display: block;
  white-space: normal; }

code,
code.hljs {
  background: #f8f8f8;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  box-sizing: border-box;
  font-size: 12px;
  margin: 0;
  padding: 25px 20px;
  width: 100%; }

.component {
  margin: 0 auto; }
  @media only screen and (min-width: 1200px) {
    .component {
      max-width: 1600px;
      max-width: 88.88889em; } }

.component--site-width {
  margin: 0 2.2rem; }
  @media only screen and (min-width: 1069px) {
    .component--site-width {
      margin: 0 auto;
      max-width: 980px;
      max-width: 54.44444em; } }

.component--site-width-gutter {
  margin: 0 2.2rem; }
  @media only screen and (max-width: 735px) {
	.theme-dark .component--site-width {
		margin: 0 3rem; } }
  @media only screen and (min-width: 1069px) {
    .component--site-width-gutter {
      box-sizing: border-box;
      margin: 0 auto;
      max-width: 1200px;
      max-width: 66.66667em;
      padding: 0 5rem; } }

.component--gutter {
  margin: 0 2.2rem; }
  @media only screen and (min-width: 1069px) {
    .component--gutter {
      margin: 0 5rem; } }

@media only screen and (min-width: 736px) {
  .component--extra-padding {
    padding: 2rem 0 2.5rem; } }

@media only screen and (min-width: 1069px) {
  .component--extra-padding {
    padding: 4rem 0 5rem; } }

@media only screen and (min-width: 736px) {
  .component--extra-padding-top {
    padding: 2rem 0 0; } }

@media only screen and (min-width: 1069px) {
  .component--extra-padding-top {
    padding: 4rem 0 0; } }

@media only screen and (min-width: 736px) {
  .component--extra-padding-bottom {
    padding: 0 0 2.5rem; } }

@media only screen and (min-width: 1069px) {
  .component--extra-padding-bottom {
    padding: 0 0 5rem; } }

@media only screen and (max-width: 1068px) {
  .component--flush {
    margin: 0 auto; } }

@media only screen and (min-width: 736px) {
  .component--under-nav {
    margin-top: -9.6rem; } }

.component--full-width {
  max-width: none; }

.components-wrapper--site-width {
  margin: 0 auto; }
  @media only screen and (min-width: 1069px) {
    .components-wrapper--site-width {
      margin: 0 auto;
      max-width: 1600px;
      max-width: 88.88889em; } }

.components-wrapper--site-width-gutter {
  margin: 0 auto; }
  @media only screen and (min-width: 1069px) {
    .components-wrapper--site-width-gutter {
      margin: 0 auto;
      max-width: 1200px;
      max-width: 66.66667em; } }

.components-wrapper--white {
  background: #fff; }

.theme-dark .components-wrapper--white {
	background: #000000; }

hr.divider {
  background: #737373;
  border: none;
  height: 2px;
  margin: 100px auto; }

hr.divider--short {
  width: 90px; }

.ac-gf a:hover:visited {
  color: #333333; }

.ac-gf-mini-shop a:visited {
  color: #0070c9; }

.ac-gf-mini-locale-flag {
  background-image: url("../ac/flags/1/images/default/32.png"); }

input,
button,
textarea,
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

button {
  background: transparent;
  border: none; }

input[type="text"],
input[type="textfield"],
input[type="email"],
input[type="password"],
textarea {
  border: 1px solid #737373;
  border-radius: 4px;
  font-family: "SF Pro Text", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 9px 15px 6px; }
  input[type="text"]::-webkit-input-placeholder,
  input[type="textfield"]::-webkit-input-placeholder,
  input[type="email"]::-webkit-input-placeholder,
  input[type="password"]::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #737373; }
  input[type="text"]:-moz-placeholder,
  input[type="textfield"]:-moz-placeholder,
  input[type="email"]:-moz-placeholder,
  input[type="password"]:-moz-placeholder,
  textarea:-moz-placeholder {
    /* Firefox 18- */
    color: #737373; }
  input[type="text"]::-moz-placeholder,
  input[type="textfield"]::-moz-placeholder,
  input[type="email"]::-moz-placeholder,
  input[type="password"]::-moz-placeholder,
  textarea::-moz-placeholder {
    /* Firefox 19+ */
    color: #737373; }
  input[type="text"]:-ms-input-placeholder,
  input[type="textfield"]:-ms-input-placeholder,
  input[type="email"]:-ms-input-placeholder,
  input[type="password"]:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    color: #737373; }

select {
  background: #fff url(/careers/css/apps/apple-externaljobs/components/common/images/icons/select.svg) no-repeat;
  background-position: right 15px center;
  background-size: auto 100%;
  border: 1px solid #999999;
  border-radius: 0;
  font-size: 18px;
  font-size: 1.8rem;
  height: 4.5rem;
  padding: 1rem 6rem 1rem 1.5rem; }

select:invalid {
  color: #737373; }

header {
  background: #272727;
  height: 4.4rem;
  width: 100%;
  z-index: 1; }

.header-segmentbar {
  background-color: #444;
  color: #fff;
  height: 4rem; }

.header-segmentbar ul {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 2rem;
  line-height: 2rem;
  margin: 0 auto;
  max-width: 980px;
  max-width: 54.44444em;
  padding: 1rem 2.2rem; }

.header-segmentbar li {
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0;
  padding: 0 1em; }

.header-segmentbar li::before {
  display: inline-block;
  content: "";
  border-left: 1px solid #666666;
  height: 1em;
  vertical-align: middle;
  margin: 0 1em 0 -1em; }

@supports (display: flex) {
  .header-segmentbar li {
    display: block; } }

.header-segmentbar li:first-child {
  padding-left: 0; }

.header-segmentbar li:first-child::before {
  content: normal; }

.header-segmentbar a,
.header-segmentbar a:visited {
  color: #fff; }

.header-segmentbar a:hover,
.header-segmentbar a:active {
  color: #5cc3f6;
  text-decoration: none; }

.header-inner {
  height: 33px;
  margin: 0 auto;
  max-width: 980px;
  max-width: 54.44444em;
  padding: 1.1rem 2.2rem 0;
  line-height: 2.2rem; }

a.header-logo {
  color: #fff;
  display: inline-block;
  height: 22px;
  font-size: 16px;
  font-size: 1.6rem;
  overflow: hidden;
  padding: 0 0 2px 0;
  text-decoration: none; }

#ac-gn-placeholder {
  height: 0 !important; }
  @media only screen and (max-width: 767px) {
    #ac-gn-placeholder {
      height: 0 !important; } }

.icon {
  display: inline-block; }
  .icon::after {
    display: inline-block;
    font-family: "Apple Icons";
    font-weight: 300;
    line-height: 1;
    text-decoration: none;
    position: relative;
    top: 0;
    z-index: 1; }

.icon-apple::before, .icon-apple::after {
  content: "\F8FF"; }

.icon-chevrondown::before, .icon-chevrondown::after {
  content: "\F000"; }

.icon-chevrondowncircle::before, .icon-chevrondowncircle::after {
  content: "\F001"; }

.icon-chevronleft::before, .icon-chevronleft::after {
  content: "\F002"; }

.icon-chevronleftcircle::before, .icon-chevronleftcircle::after {
  content: "\F005"; }

.icon-chevronright::before, .icon-chevronright::after {
  content: "\F004"; }

.icon-chevronrightcircle::before, .icon-chevronrightcircle::after {
  content: "\F003"; }

.icon-chevronup::before, .icon-chevronup::after {
  content: "\F006"; }

.icon-chevronupcircle::before, .icon-chevronupcircle::after {
  content: "\F007"; }

.icon-downloadcircle::before, .icon-downloadcircle::after {
  content: "\F010"; }

.icon-downloadsolid::before, .icon-downloadsolid::after {
  content: "\F011"; }

.icon-external::before, .icon-external::after {
  content: "\F012"; }

.icon-grid::before, .icon-grid::after {
  content: "\F025"; }

.icon-listcircle::before, .icon-listcircle::after {
  content: "\F014"; }

.icon-pausecircle::before, .icon-pausecircle::after {
  content: "\F019"; }

.icon-playcircle::before, .icon-playcircle::after {
  content: "\F020"; }

.icon-playsolid::before, .icon-playsolid::after {
  content: "\F021"; }

.icon-replay::before, .icon-replay::after {
  content: "\F022"; }

.icon-replaycircle::before, .icon-replaycircle::after {
  content: "\F029"; }

.icon-stopcircle::before, .icon-stopcircle::after {
  content: "\F027"; }

.icon-stopsolid::before, .icon-stopsolid::after {
  content: "\F028"; }

.icon-favorite::before, .icon-favorite::after {
  content: "\F048"; }

.icon-share::before, .icon-share::after {
  content: "\F037"; }

.icon-facebook::before, .icon-facebook::after {
  content: "\F030"; }

.icon-instagram::before, .icon-instagram::after {
  content: "\F041"; }

.icon-link::before, .icon-link::after {
  content: "\F031"; }

.icon-linkedin::before, .icon-linkedin::after {
  content: "\F043"; }

.icon-mail::before, .icon-mail::after {
  content: "\F032"; }

.icon-pinterest::before, .icon-pinterest::after {
  content: "\F033"; }

.icon-qqweibo::before, .icon-qqweibo::after {
  content: "\F034"; }

.icon-qzone::before, .icon-qzone::after {
  content: "\F035"; }

.icon-renren::before, .icon-renren::after {
  content: "\F036"; }

.icon-snapchat::before, .icon-snapchat::after {
  content: "\F044"; }

.icon-tumblr::before, .icon-tumblr::after {
  content: "\F038"; }

.icon-twitter::before, .icon-twitter::after {
  content: "\F039"; }

.icon-weibo::before, .icon-weibo::after {
  content: "\F040"; }

.icon-circle::before, .icon-circle::after {
  content: "\F057"; }

.icon-check::before, .icon-check::after {
  content: "\F042"; }

.icon-checkcircle::before, .icon-checkcircle::after {
  content: "\F026"; }

.icon-checksolid::before, .icon-checksolid::after {
  content: "\F058"; }

.icon-reset::before, .icon-reset::after {
  content: "\F024"; }

.icon-resetcircle::before, .icon-resetcircle::after {
  content: "\F008"; }

.icon-resetsolid::before, .icon-resetsolid::after {
  content: "\F049"; }

.icon-exclamation::before, .icon-exclamation::after {
  content: "\F055"; }

.icon-exclamationcircle::before, .icon-exclamationcircle::after {
  content: "\F051"; }

.icon-exclamationsolid::before, .icon-exclamationsolid::after {
  content: "\F052"; }

.icon-infocircle::before, .icon-infocircle::after {
  content: "\F013"; }

.icon-questioncircle::before, .icon-questioncircle::after {
  content: "\F056"; }

.icon-questionsolid::before, .icon-questionsolid::after {
  content: "\F053"; }

.icon-plus::before, .icon-plus::after {
  content: "\F045"; }

.icon-pluscircle::before, .icon-pluscircle::after {
  content: "\F023"; }

.icon-plussolid::before, .icon-plussolid::after {
  content: "\F054"; }

.icon-minus::before, .icon-minus::after {
  content: "\F047"; }

.icon-minuscircle::before, .icon-minuscircle::after {
  content: "\F046"; }

.icon-minussolid::before, .icon-minussolid::after {
  content: "\F050"; }

.icon-close::before, .icon-close::after {
  content: "\F009"; }

.icon-paddledown::before, .icon-paddledown::after {
  content: "\F015"; }

.icon-paddleleft::before, .icon-paddleleft::after {
  content: "\F016"; }

.icon-paddleright::before, .icon-paddleright::after {
  content: "\F017"; }

.icon-paddleup::before, .icon-paddleup::after {
  content: "\F018"; }

.more::before, .more::after {
  content: "\F004"; }

a .icon {
  margin-left: .5ex; }

.icon.icon_x:lang(zh) {
  line-height: 1.4446;
}

/* ==========================================================================
  Local Nav Override
========================================================================== */
@media only screen and (min-width: 736px) {
  .localnav-title {
    font-size: 2rem;
    line-height: 3.25; } }

@media only screen and (max-width: 479px) {
  .localnav-title {
    font-size: 1.6rem;
    max-width: 150px;
    max-width: calc(50% - 20px); } }

@media only screen and (max-width: 735px) {
  .localnav-title:lang(th) {
    line-height: 48px; } }

@media only screen and (max-width: 320px) {
  .localnav-title {
    font-size: 1.4rem;
    max-width: 125px;
    max-width: calc(50% - 20px); } }

.localnav-title a {
  font-family: "SF Pro Display", "SF Pro Icons", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 500;
  font-size: 24px;
  font-size: 2.4rem;
  vertical-align: baseline; }
  @media only screen and (max-width: 735px) {
    .localnav-title a {
      font-size: 20px;
      font-size: 2rem;
      white-space: normal; } }
  @media only screen and (min-width: 736px) {
    .localnav-title a {
      line-height: 2.2;
      vertical-align: text-bottom; } }
  @media only screen and (max-width: 375px) {
    .localnav-title a {
      font-size: 1.7rem; } }
  @media only screen and (max-width: 320px) {
    .localnav-title a {
      font-size: 1.5rem; } }

.localnav-title:visited,
.localnav-title a:visited,
.localnav-title:hover,
.localnav-title a:hover {
  color: #333333; }

.localnav-menu {
  font-family: "SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 400; }
  @media only screen and (min-width: 736px) {
    .localnav-menu {
      font-size: 12px;
      font-size: 1.2rem; }
    .localnav-menu:lang(th) {
      padding-top: 1.7rem; } }

@media only screen and (max-width: 735px) {
  .localnav-action:lang(th) {
    line-height: 48px; } }

.localnav-button.button {
  background: #595959;
  border: #595959;
  color: #fff;
  font-size: inherit;
  line-height: 1.6;
  padding: .1rem 2rem; }
  .localnav-button.button:hover, .localnav-button.button:active {
    background: #333333;
    border: #333333; 
    color: #fff; }
  @media only screen and (max-width: 479px) {
    .localnav-button.button {
      font-size: 1.4rem;
      padding: .1rem 1rem; } }
  @media only screen and (max-width: 320px) {
    .localnav-button.button {
      font-size: 1.2rem; } }

.localnav-background::after {
  background: #d6d6d6; }

.localnav--solid .localnav-background {
  background-color: rgba(255, 255, 255, 0.9); }

@media only screen and (min-width: 736px) {
  .localnav--solid:not(.localnav-sticking) .localnav-background::after {
    content: none; } }

@media only screen and (min-width: 736px) {
  .localnav--light:not(.localnav-sticking) {
    color: #fff; } }

@media only screen and (min-width: 736px) {
  .localnav--light:not(.localnav-sticking) .localnav-background::after {
    background: #fff; } }

@media only screen and (min-width: 736px) {
  .localnav--light:not(.localnav-sticking) .localnav-title a,
  .localnav--light:not(.localnav-sticking) .localnav-title:visited
.localnav--light:not(.localnav-sticking) .localnav-title a:visited,
  .localnav--light:not(.localnav-sticking) .localnav-menu-link,
  .localnav--light:not(.localnav-sticking) .localnav-menu-link:visited {
    color: #fff; } }

@media only screen and (min-width: 736px) {
  .localnav--light:not(.localnav-sticking) .localnav-title a.current,
  .localnav--light:not(.localnav-sticking) .localnav-menu-link.current:hover {
    color: rgba(255, 255, 255, 0.8); } }

#localnav-sticky-placeholder.no-css-sticky.localnav-sticking {
  height: 48px; }
  @media only screen and (min-width: 736px) {
    #localnav-sticky-placeholder.no-css-sticky.localnav-sticking {
      height: 52px; } }

.localnav-actions-right {
  padding: 0;
  right: -.5rem; }

