.footnote-diamond {
    position: relative;
    vertical-align: initial;
    font-feature-settings: "numr";
    font-size:1em
}

sup.footnote-diamond {
    top:auto
}

sub.footnote-diamond {
    bottom:-0.5em
}

.footnote-diamond.footnote-reduced {
    font-size: .9em;
    top:-0.09em
}

sub.footnote-diamond.footnote-reduced {
    top: auto;
    bottom:-0.52em
}


.footnote-supglyph-2 {
position: relative;
vertical-align: initial;
text-underline-offset: auto;
font-feature-settings: "numr";
text-decoration: underline;
font-size: 1em;
}

.footnote.footnote-supglyph-2.footnote-thickness {
    text-decoration-thickness: 1.5px;
}


.fix-position {
    display: block;
    max-width: calc(var(--copy-max-width) - var(--copy-padding)*2);
}
.fix-position span {
    display: block;
    height: var(--sk-paragraph-plus-element-margin,0.8em);
}

.icon-wrapper .icon, .icon-wrapper .more::after, .icon-wrapper .icon-before::before, .icon-wrapper .icon-after::after {
    position: relative !important;
}

.icon-after::after, .more::after {
    top: -0.078em;
}

.icon-arkit:after, .icon-arkit:before, .icon.icon-after.icon-playcircle::after {
    top: 0em;
}

#ac-globalfooter .ac-gf-icon-after::after, #ac-globalfooter .ac-gf-more::after {
    top: -0.078em;
}

.detail-ctas-link.button {
    line-height: 1.4705882353;
}

.section-welcome .viewport-content {
    width:100%
}

/* start announcement banner */
/* .banner-card.banner-card-ctas-stacked {
    background-color: #000;
}

.banner-card .banner-card-headline {
    color:#fff;
}

.banner-card.banner-card-ctas-stacked a {
    color: rgb(41, 151, 255);
} 



.film-announcement-banner .banner-card-image {
    --p-width: 468px;
    --p-height:320px
}

@media (max-width: 1068px) and (max-width: 1068px) {
    .film-announcement-banner .banner-card-image {
        --p-width: 412px;
        --p-height:286px
    }
}

@media (max-width: 734px) and (max-width: 734px) {
    .film-announcement-banner .banner-card-image {
        --p-width: 267px;
        --p-height:192px
    }
}

@media (max-width:480px) {
    .film-announcement-banner .banner-card-image {
        width: var(--p-width);
        height: var(--p-height);
    }
}
*/

/* end announcement banner */



/* start android css */
@media (max-width:734px) {
    .section-apple-intelligence .subsection-headline-container .subsection-headline strong {
        -webkit-background-clip: text;
    }

    .tabnav-mask {
        -webkit-mask-image: var(--tabnav-mask-active-gradient);
    }

    .section-upgraders .upgraders-gallery .gallery-item .bento-item.apple-intelligence .bento-item-inline{
        z-index: 1;
    }
}
/* end android css */

/* start name:design intro */
html.design .section-design .dimensions-container .dimensions-width, .section-design .dimensions-container .dimensions-width {
    margin-top: 420px;
    margin-left: -54px;
}

@media (max-width: 1068px) {
    html.design .section-design .dimensions-container .dimensions-width, .section-design .dimensions-container .dimensions-width {
        margin-top: 294px;
        margin-left: -40px;
    }
}

@media (max-width: 734px) {
    html.design .section-design .dimensions-container .dimensions-width, .section-design .dimensions-container .dimensions-width {
        margin-top: 234px;
        margin-left: -34px;
    }
}

html.design .section-design .dimensions-container .dimensions-height, .section-design .dimensions-container .dimensions-height {
    margin-top: 64px;
    margin-left: -418px;
}

@media (max-width: 1068px) {
    html.design .section-design .dimensions-container .dimensions-height, .section-design .dimensions-container .dimensions-height {
        margin-top: 54px;
        margin-left: -298px;
    }
}

@media (max-width: 734px) {
    html.design .section-design .dimensions-container .dimensions-height, .section-design .dimensions-container .dimensions-height {
        margin-top: 42px;
        margin-left: -234px;
    }
}

.section-design .dimensions-container .dimensions-height::after, .section-design .dimensions-container .dimensions-width::after {
    content: "cm";
    font-size: 0.5em;
    width: 3em;
    bottom: 0.2em;
    right: -3em;
}

/* end name:design intro */

@media (max-width:734px) {
    .section-performance .gallery-performance .captions-gallery {
        margin-bottom: 16px;
    }
}

.section-apple-intelligence .logo-apple-intelligence {
    --p-width: 635px;
    --p-height: 75px;
}

@media (max-width: 1068px) and (max-width: 1068px) {
    .section-apple-intelligence .logo-apple-intelligence {
        --p-width: 508px;
        --p-height: 60px
    }
}

@media (max-width: 734px) and (max-width: 734px) {
    .section-apple-intelligence .logo-apple-intelligence {
        --p-width: 359px;
        --p-height: 43px
    }
}

.section-apple-intelligence .section-ps-headline {
    padding-top: 1.1px;
}

.l2-design-wrapper .carbon-headline em::before {
    background-size: 200px 13px;
    --p-width: 200px;
    --p-height: 13px;
}

@media (max-width:1068px) {
    .l2-design-wrapper .carbon-headline em::before {
        background-size: 170px 13px;
        --p-width: 170px;
        --p-height: 13px;
    }
}

@media (max-width:1068px) {
    .section-product-stories .apple-intelligence-intro .section-ps-headline-container .section-ps-headline:not(:first-child){
        margin-top: 44px;
    }
}

@media (max-width:734px) {
    .section-product-stories .apple-intelligence-intro .section-ps-headline-container .section-ps-headline:not(:first-child){
        margin-top: 25px;
    }
}

/* ribbon */
.ribbon {
    --ribbon-link-inline-color: inherit;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.4285914286;
    font-weight: 400;
    letter-spacing: -0.016em;
    font-family: SF Pro Text, SF Pro Icons, Helvetica Neue, Helvetica, Arial, sans-serif;
    --ribbon-link-color: rgb(0, 102, 204);
    --ribbon-focus-color: #0071e3;
    --ribbon-text-color: rgb(29, 29, 31);
    --ribbon-background-color: rgb(255, 255, 255);
    --ribbon-content-padding-top: .94118em;
    --ribbon-content-padding-bottom: var(--ribbon-content-padding-top);
    --ribbon-content-width: 83.33333%;
    --ribbon-content-minimum-width: 320px;
    width: var(--ribbon-width);
    padding-top: var(--ribbon-padding-top);
    padding-bottom:var(--ribbon-padding-bottom)
}

.ribbon-content-wrapper {
    text-align:center
}

.ribbon-content {
    margin-left: auto;
    margin-right: auto;
    width: var(--ribbon-content-width);
    min-width:var(--ribbon-content-minimum-width)
}

.ribbon-link {
    white-space:nowrap
}

.ribbon-link:focus {
    outline: 2px solid var(--sk-focus-color, #0071e3);
    outline-offset:var(--sk-focus-offset, 1px)
}

.ribbon-link-inline {
    color:var(--ribbon-link-inline-color)
}

.ribbon-link-inline, .ribbon-link-inline:link {
    text-decoration:underline
}

.ribbon:lang(ar) {
    letter-spacing: 0em;
    font-family:SF Pro AR, SF Pro AR Text, SF Pro Text, SF Pro Gulf, SF Pro Icons, Helvetica Neue, Helvetica, Arial, sans-serif
}

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

.ribbon:lang(ko) {
    line-height: 1.5714285714;
    letter-spacing: 0em;
    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
}

.ribbon:lang(zh) {
    line-height: 1.5;
    letter-spacing:0em
}

.ribbon:lang(th) {
    line-height: 1.3571828571;
    letter-spacing: 0em;
    font-family:SF Pro TH, SF Pro Text, SF Pro Icons, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon:lang(zh-CN) {
    font-family:SF Pro SC, SF Pro Text, SF Pro Icons, PingFang SC, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon:lang(zh-HK) {
    font-family:SF Pro HK, SF Pro Text, SF Pro Icons, PingFang HK, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon: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
}

.ribbon:lang(zh-TW) {
    font-family:SF Pro TC, SF Pro Text, SF Pro Icons, PingFang TC, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon-content-wrapper {
    background-color: var(--ribbon-background-color);
    -webkit-backdrop-filter: blur(var(--ribbon-background-blur));
    backdrop-filter: blur(var(--ribbon-background-blur));
    padding-top: var(--ribbon-content-padding-top);
    padding-bottom: var(--ribbon-content-padding-bottom);
    border-radius:var(--ribbon-border-radius)
}

.ribbon-content {
    color:var(--ribbon-text-color)
}

.ribbon-link {
    color:var(--ribbon-link-color)
}

.ribbon-link:focus {
    outline-color:var(--ribbon-focus-color)
}

.ribbon-elevated {
    font-size: 17px;
    line-height: 1.4705882353;
    font-weight: 400;
    letter-spacing: -0.022em;
    font-family: SF Pro Text, SF Pro Icons, Helvetica Neue, Helvetica, Arial, sans-serif;
    --ribbon-content-padding-top:24px
}

.ribbon-elevated:lang(ar) {
    letter-spacing: 0em;
    font-family:SF Pro AR, SF Pro AR Text, SF Pro Text, SF Pro Gulf, SF Pro Icons, Helvetica Neue, Helvetica, Arial, sans-serif
}

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

.ribbon-elevated:lang(ko) {
    line-height: 1.5882352941;
    letter-spacing: 0em;
    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
}

.ribbon-elevated:lang(zh) {
    letter-spacing:0em
}

.ribbon-elevated:lang(th) {
    line-height: 1.3529611765;
    letter-spacing: 0em;
    font-family:SF Pro TH, SF Pro Text, SF Pro Icons, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon-elevated:lang(zh-CN) {
    font-family:SF Pro SC, SF Pro Text, SF Pro Icons, PingFang SC, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon-elevated:lang(zh-HK) {
    font-family:SF Pro HK, SF Pro Text, SF Pro Icons, PingFang HK, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon-elevated: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
}

.ribbon-elevated:lang(zh-TW) {
    font-family:SF Pro TC, SF Pro Text, SF Pro Icons, PingFang TC, Helvetica Neue, Helvetica, Arial, sans-serif
}

.ribbon-elevated.ribbon-inset {
    --ribbon-border-radius:12px
}

.ribbon-blue {
    --ribbon-background-color: rgb(0, 113, 227);
    --ribbon-text-color: rgb(255, 255, 255);
    --ribbon-link-color: rgb(255, 255, 255);
    --ribbon-focus-color:rgb(0, 0, 0)
}

.ribbon-variant-neutral-alpha {
    --ribbon-background-color:rgba(245, 245, 247, 0.8)
}

.ribbon-variant-neutral-alt {
    --ribbon-background-color:rgb(255, 255, 255)
}

.ribbon-blue-to-default {
    --ribbon-background-color: rgb(245, 245, 247);
    --ribbon-background-color-initial: rgb(0, 113, 227);
    --ribbon-text-color: rgb(29, 29, 31);
    --ribbon-text-color-initial: rgb(255, 255, 255);
    --ribbon-link-color: rgb(0, 102, 204);
    --ribbon-link-color-initial:rgb(255, 255, 255)
}

@keyframes ribbon-animate-background {
    0% {
        background-color:var(--ribbon-background-color-initial)
    }

    100% {
        background-color:var(--ribbon-background-color)
    }
}

.ribbon-animate-color .ribbon-content-wrapper {
    background-color: var(--ribbon-background-color-initial);
    animation:ribbon-animate-background .8s ease-in-out 1.6s forwards
}

@media (prefers-reduced-motion) {
    .ribbon-animate-color .ribbon-content-wrapper {
        background-color: var(--ribbon-background-color);
        animation:none
    }
}

@keyframes ribbon-animate-text-color {
    0% {
        color:var(--ribbon-text-color-initial)
    }

    100% {
        color:var(--ribbon-text-color)
    }
}

.ribbon-animate-color .ribbon-content {
    color: var(--ribbon-text-color-initial);
    animation:ribbon-animate-text-color .8s ease-in-out 1.6s forwards
}

@media (prefers-reduced-motion) {
    .ribbon-animate-color .ribbon-content {
        color: var(--ribbon-text-color);
        animation:none
    }
}

@keyframes ribbon-animate-link-color {
    0% {
        color:var(--ribbon-link-color-initial)
    }

    100% {
        color:var(--ribbon-link-color)
    }
}

.ribbon-animate-color .ribbon-link {
    color: var(--ribbon-link-color-initial);
    animation:ribbon-animate-link-color .8s ease-in-out 1.6s forwards
}

@media (prefers-reduced-motion) {
    .ribbon-animate-color .ribbon-link {
        color: var(--ribbon-link-color);
        animation:none
    }
}

.ribbon-drop-wrapper {
    animation:ribbon-drop .8s ease-in-out forwards
}

@media (prefers-reduced-motion) {
    .ribbon-drop-wrapper {
        animation:none
    }
}

.ribbon-inset {
    --ribbon-width: 83.33333%;
    --ribbon-padding-top: .94118em;
    --ribbon-border-radius: 10px;
    margin:0 auto
}

.ribbon-inset .ribbon-content {
    width:var(--ribbon-width)
}

@media (max-width: 734px) {
    .ribbon-inset {
        --ribbon-width:87.5%
    }

    .ribbon-inset .ribbon-content {
        min-width:var(--ribbon-width)
    }
}

.ribbon-blur {
    --ribbon-background-blur:20px
}

.theme-dark.ribbon, .theme-dark .ribbon {
    --ribbon-text-color: rgb(245, 245, 247);
    --ribbon-background-color: rgb(29, 29, 31);
    --ribbon-link-color: rgb(41, 151, 255);
    --ribbon-focus-color:utilities.$ribbon-focus-color
}

.theme-dark.ribbon-blue, .theme-dark .ribbon-blue {
    --ribbon-background-color: rgb(0, 113, 227);
    --ribbon-text-color: rgb(255, 255, 255);
    --ribbon-link-color: rgb(255, 255, 255);
    --ribbon-focus-color:rgb(0, 0, 0)
}

.theme-dark.ribbon-variant-neutral-alpha, .theme-dark .ribbon-variant-neutral-alpha {
    --ribbon-background-color:rgba(29, 29, 31, 0.8)
}

.theme-dark.ribbon-variant-neutral-alt, .theme-dark .ribbon-variant-neutral-alt {
    --ribbon-background-color:rgb(0, 0, 0)
}

.theme-dark.ribbon-blue-to-default, .theme-dark .ribbon-blue-to-default {
    --ribbon-background-color: rgb(29, 29, 31);
    --ribbon-text-color: rgb(245, 245, 247);
    --ribbon-link-color:rgb(41, 151, 255)
}

@keyframes ribbon-drop {
    0% {
        transform:translateY(-100%)
    }

    100% {
        transform:translateY(0)
    }
}

.theme-light.ribbon, .theme-light .ribbon {
    --ribbon-text-color: rgb(29, 29, 31);
    --ribbon-background-color: rgb(245, 245, 247);
    --ribbon-link-color: rgb(0, 102, 204);
    --ribbon-focus-color:utilities.$ribbon-focus-color
}

.theme-light.ribbon-blue, .theme-light .ribbon-blue {
    --ribbon-background-color: rgb(0, 113, 227);
    --ribbon-text-color: rgb(255, 255, 255);
    --ribbon-link-color: rgb(255, 255, 255);
    --ribbon-focus-color:rgb(0, 0, 0)
}

.theme-light.ribbon-variant-neutral-alpha, .theme-light .ribbon-variant-neutral-alpha {
    --ribbon-background-color:rgba(245, 245, 247, 0.8)
}

.theme-light.ribbon-variant-neutral-alt, .theme-light .ribbon-variant-neutral-alt {
    --ribbon-background-color:rgb(255, 255, 255)
}

.theme-light.ribbon-blue-to-default, .theme-light .ribbon-blue-to-default {
    --ribbon-background-color: rgb(245, 245, 247);
    --ribbon-text-color: rgb(29, 29, 31);
    --ribbon-link-color:rgb(0, 102, 204)
}
/* ribbon end */
