/* ========================================================== */
/* SMARTREPAIR — PHONE REPAIR                               */
/* Locked internal-service visual system — final audit       */
/* ========================================================== */

body {
    background: #1b1b1d;
}

/* ========================================================== */
/* HERO                                                       */
/* ========================================================== */

.phone-hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: #19191b;
    border-bottom: 1px solid rgba(255,255,255,.045);
}

.phone-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.46'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-size: 180px 180px;
    mix-blend-mode: soft-light;
    opacity: .02;
}

.phone-hero__container {
    position: relative;
    z-index: 1;
    width: min(calc(100% - clamp(48px, 6vw, 140px)), 1760px);
    min-height: clamp(400px, 31vw, 490px);
    margin: 0 auto;
    padding: clamp(54px, 4.5vw, 72px) 0;
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(390px, .72fr);
    align-items: center;
    gap: clamp(58px, 6.5vw, 126px);
}

.phone-hero__copy {
    min-width: 0;
    max-width: 850px;
}

.phone-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    font-family: 'Dosis', sans-serif;
    font-size: clamp(11px, .7vw, 13px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: .16em;
    color: rgba(198,166,103,.90);
}

.phone-hero__title {
    max-width: 850px;
    margin: clamp(19px, 1.7vw, 25px) 0 0;
    font-family: 'Roboto Serif', Georgia, serif;
    font-optical-sizing: auto;
    font-stretch: 90%;
    font-size: clamp(36px, 2.8vw, 52px);
    font-weight: 350;
    line-height: 1.18;
    letter-spacing: -.031em;
    text-wrap: balance;
    color: #eeeae3;
}

.phone-hero__lead {
    max-width: 700px;
    margin: clamp(22px, 1.8vw, 28px) 0 0;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: clamp(16px, .92vw, 18px);
    font-weight: 400;
    line-height: 1.68;
    color: #bab9b7;
    text-wrap: pretty;
}

.phone-hero__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px 12px;
    margin-top: clamp(28px, 2.3vw, 36px);
    font-family: 'Dosis', sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: .115em;
    color: rgba(199,198,195,.66);
}

.phone-hero__meta-line {
    width: 34px;
    height: 1px;
    background: rgba(198,166,103,.64);
}

.phone-hero__visual {
    position: relative;
    justify-self: end;
    min-width: 0;
    width: min(100%, 670px);
    aspect-ratio: 720 / 470;
    display: grid;
    place-items: center;
}

.phone-system {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
    filter: drop-shadow(0 7px 7px rgba(0,0,0,.17));
}

.phone-system path,
.phone-system rect,
.phone-system circle {
    vector-effect: non-scaling-stroke;
}

.phone-system__guides path,
.phone-system__guides circle {
    fill: none;
    stroke: rgba(105,107,112,.32);
    stroke-width: 1;
}

.phone-system__body {
    fill: #242528;
    stroke: rgba(151,153,158,.42);
    stroke-width: 1;
}

.phone-system__body--front {
    fill: #222326;
}

.phone-system__display {
    fill: #18191b;
    stroke: rgba(88,90,95,.58);
    stroke-width: 1;
}

.phone-system__camera-island {
    fill: #202123;
    stroke: rgba(112,114,119,.50);
    stroke-width: 1;
}

.phone-system__lens {
    fill: #17181a;
    stroke: rgba(198,166,103,.58);
    stroke-width: 1;
}

.phone-system__sensor {
    fill: rgba(198,166,103,.74);
    stroke: none;
}

.phone-system__back-accent,
.phone-system__ui-line,
.phone-system__earpiece,
.phone-system__ui-card-line {
    fill: none;
    stroke: rgba(139,141,146,.42);
    stroke-width: 1;
    stroke-linecap: square;
}

.phone-system__back-accent,
.phone-system__ui-line--accent {
    stroke: rgba(198,166,103,.78);
    stroke-width: 1.25;
}

.phone-system__earpiece {
    stroke: rgba(198,166,103,.56);
}

.phone-system__front-camera {
    fill: rgba(198,166,103,.72);
    stroke: none;
}

.phone-system__ui-card {
    fill: #202123;
    stroke: rgba(107,109,114,.54);
    stroke-width: 1;
}

.phone-system__diag-card {
    fill: #202123;
    stroke: rgba(140,142,147,.42);
    stroke-width: 1;
}

.phone-system__diag-accent {
    fill: none;
    stroke: rgba(198,166,103,.72);
    stroke-width: 1.2;
}

.phone-system__diag-line {
    fill: none;
    stroke: rgba(126,128,133,.44);
    stroke-width: 1;
}

.phone-system__diag-line--strong {
    stroke: rgba(204,205,208,.56);
}

.phone-system__diag-chip {
    fill: rgba(198,166,103,.055);
    stroke: rgba(198,166,103,.58);
    stroke-width: 1;
}

.phone-system__routing path {
    fill: none;
    stroke: rgba(105,107,112,.42);
    stroke-width: 1;
}

.phone-system__route-node {
    fill: #1d1e20;
    stroke: rgba(198,166,103,.72);
    stroke-width: 1;
}

.phone-system__route-active {
    stroke: rgba(198,166,103,.78) !important;
    stroke-width: 1.2 !important;
}

.phone-system__base-line path {
    fill: none;
    stroke: rgba(96,98,103,.34);
    stroke-width: 1;
}

.phone-system__base-accent {
    stroke: rgba(198,166,103,.62) !important;
    stroke-width: 1.2 !important;
}

.js .phone-hero__eyebrow,
.js .phone-hero__title,
.js .phone-hero__lead,
.js .phone-hero__meta,
.js .phone-hero__visual {
    opacity: 0;
    will-change: opacity, transform, filter;
}

.js.is-loaded .phone-hero__eyebrow { animation: phoneTextIn 720ms cubic-bezier(.22,1,.36,1) 100ms both; }
.js.is-loaded .phone-hero__title { animation: phoneTextIn 880ms cubic-bezier(.22,1,.36,1) 180ms both; }
.js.is-loaded .phone-hero__lead { animation: phoneTextIn 880ms cubic-bezier(.22,1,.36,1) 300ms both; }
.js.is-loaded .phone-hero__meta { animation: phoneTextIn 820ms cubic-bezier(.22,1,.36,1) 380ms both; }
.js.is-loaded .phone-hero__visual { animation: phoneVisualIn 1050ms cubic-bezier(.16,1,.3,1) 220ms both; }

@keyframes phoneTextIn {
    from { opacity: 0; transform: translateY(18px); filter: blur(5px); }
    to { opacity: 1; transform: translateY(0); filter: blur(0); }
}

@keyframes phoneVisualIn {
    from { opacity: 0; transform: translateY(12px) scale(.985); filter: blur(6px); }
    to { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}

/* ========================================================== */
/* SHARED INTERNAL-PAGE TYPOGRAPHY                            */
/* ========================================================== */

.phone-section-shell {
    width: min(calc(100% - clamp(48px, 6vw, 140px)), 1760px);
    margin: 0 auto;
}

.phone-section-eyebrow {
    display: inline-flex;
    font-family: 'Dosis', sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .16em;
    color: rgba(198,166,103,.9);
}

.phone-section-title {
    margin: 18px 0 0;
    font-family: 'Roboto Serif', Georgia, serif;
    font-optical-sizing: auto;
    font-stretch: 90%;
    font-size: clamp(32px, 2.2vw, 43px);
    font-weight: 350;
    line-height: 1.16;
    letter-spacing: -.027em;
    color: #eeeae3;
    text-wrap: balance;
}

.phone-section-lead {
    max-width: 690px;
    margin: 18px 0 0;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.68;
    color: #b9b8b6;
}

/* ========================================================== */
/* IMPORTANT INFORMATION                                     */
/* ========================================================== */

.phone-support {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #1e1e20 0%, #1b1b1d 100%);
    border-bottom: 1px solid rgba(255,255,255,.045);
    padding: clamp(82px, 6.5vw, 118px) 0 clamp(88px, 7vw, 126px);
}

.phone-support__heading {
    max-width: 800px;
    margin-bottom: clamp(40px, 4vw, 60px);
}

.phone-support__panel {
    position: relative;
    overflow: hidden;
    background: rgba(255,255,255,.014);
    border: 1px solid rgba(255,255,255,.085);
    border-radius: 4px;
}

.phone-support__panel::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: 2px;
    background: linear-gradient(180deg, rgba(198,166,103,.82) 0%, rgba(198,166,103,.22) 58%, rgba(198,166,103,.04) 100%);
    pointer-events: none;
}

.phone-support__panel-head {
    min-height: 54px;
    padding: 0 clamp(28px, 2.5vw, 44px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    border-bottom: 1px solid rgba(255,255,255,.065);
    background: rgba(255,255,255,.012);
    font-family: 'Dosis', sans-serif;
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .145em;
    color: rgba(194,192,188,.50);
}

.phone-support__panel-head span:last-child {
    color: rgba(198,166,103,.68);
}

.phone-support__items {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.phone-support__item {
    position: relative;
    min-width: 0;
    min-height: 236px;
    padding: clamp(30px, 2.7vw, 48px) clamp(24px, 2.35vw, 40px) 30px;
    display: flex;
    flex-direction: column;
    border-right: 1px solid rgba(255,255,255,.062);
    transition: background-color .28s ease;
}

.phone-support__item:last-child {
    border-right: 0;
}

.phone-support__item:hover {
    background: rgba(255,255,255,.018);
}

.phone-support__item-mark {
    margin-bottom: 26px;
    font-family: 'Roboto Serif', Georgia, serif;
    font-optical-sizing: auto;
    font-stretch: 90%;
    font-size: clamp(31px, 2.4vw, 45px);
    font-weight: 350;
    line-height: .95;
    letter-spacing: -.045em;
    color: rgba(236,232,225,.92);
}

.phone-support__item-copy h3 {
    margin: 0;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.3;
    color: #dfdcd6;
}

.phone-support__item-copy p {
    margin: 9px 0 0;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 13.5px;
    font-weight: 400;
    line-height: 1.52;
    color: rgba(187,185,181,.69);
}

.phone-support__state {
    margin-top: auto;
    padding-top: 26px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    max-width: 100%;
    font-family: 'Dosis', sans-serif;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: .115em;
    color: rgba(198,166,103,.80);
}

.phone-support__state i {
    width: 6px;
    height: 6px;
    border: 1px solid rgba(198,166,103,.70);
    transform: rotate(45deg);
    flex: 0 0 auto;
}

/* ========================================================== */
/* PRICING                                                    */
/* ========================================================== */

.phone-pricing {
    background: radial-gradient(circle at 12% 4%, rgba(255,255,255,.013), transparent 30%), #19191b;
    padding: clamp(92px, 7.5vw, 134px) 0 clamp(98px, 8vw, 144px);
}

.phone-pricing__header {
    max-width: 780px;
    padding-bottom: clamp(46px, 4.5vw, 68px);
}

.phone-service-icons {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
    pointer-events: none;
}

.phone-price-ledger {
    display: grid;
    gap: clamp(28px, 2.4vw, 44px);
}

.phone-price-group {
    position: relative;
    display: grid;
    grid-template-columns: minmax(225px, .25fr) minmax(0, 1fr);
    overflow: hidden;
    scroll-margin-top: 110px;
    border: 1px solid rgba(255,255,255,.068);
    border-radius: 4px;
    background: linear-gradient(90deg, rgba(255,255,255,.013), rgba(255,255,255,.006) 24%, transparent 58%), rgba(255,255,255,.006);
}

.phone-price-group::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: 1px;
    background: linear-gradient(180deg, rgba(198,166,103,.54), rgba(198,166,103,.10) 48%, transparent 88%);
    pointer-events: none;
}

.phone-price-group__header {
    position: relative;
    min-width: 0;
    min-height: 100%;
    padding: clamp(38px, 3vw, 50px) clamp(28px, 2.5vw, 42px);
    border-right: 1px solid rgba(255,255,255,.052);
    background: transparent;
}

.phone-price-group__header::before {
    content: '';
    display: block;
    width: 28px;
    height: 1px;
    margin-bottom: 20px;
    background: rgba(198,166,103,.55);
}

.phone-price-group__header > span {
    display: block;
    margin-bottom: 13px;
    font-family: 'Dosis', sans-serif;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .14em;
    color: rgba(190,188,184,.62);
}

.phone-price-group__header h3 {
    max-width: 270px;
    margin: 0;
    font-family: 'Roboto Serif', Georgia, serif;
    font-optical-sizing: auto;
    font-stretch: 90%;
    font-size: clamp(21px, 1.35vw, 27px);
    font-weight: 350;
    line-height: 1.24;
    letter-spacing: -.018em;
    color: #e7e2da;
}

.phone-price-list {
    position: relative;
    min-width: 0;
    padding-top: 37px;
    background: linear-gradient(90deg, transparent calc(100% - 174px), #19191b calc(100% - 174px), #19191b 100%);
}

.phone-price-list::before {
    content: 'PASLAUGA';
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 174px;
    height: 37px;
    display: flex;
    align-items: center;
    padding: 0 24px 0 72px;
    border-bottom: 1px solid rgba(255,255,255,.046);
    font-family: 'Dosis', sans-serif;
    font-size: 9px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .15em;
    color: rgba(162,161,159,.48);
    pointer-events: none;
}

.phone-price-list::after {
    content: 'KAINA';
    position: absolute;
    z-index: 3;
    top: 0;
    right: 0;
    width: 174px;
    height: 37px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 28px;
    border-left: 1px solid rgba(255,255,255,.048);
    border-bottom: 1px solid rgba(255,255,255,.046);
    font-family: 'Dosis', sans-serif;
    font-size: 9px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .15em;
    color: rgba(198,166,103,.72);
    pointer-events: none;
}

.phone-price-row {
    position: relative;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 174px;
    min-height: 88px;
    border-bottom: 1px solid rgba(255,255,255,.048);
    background: transparent;
    transition: background-color .24s ease;
}

.phone-price-row:last-child {
    border-bottom: 0;
}

.phone-price-row:hover {
    background: linear-gradient(90deg, rgba(198,166,103,.026), rgba(255,255,255,.005) 24%, transparent 62%);
}

.phone-price-row__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    border-right: 1px solid rgba(255,255,255,.032);
    color: rgba(151,150,148,.52);
    transition: color .24s ease, border-color .24s ease;
}

.phone-price-row__icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.35;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.phone-price-row:hover .phone-price-row__icon {
    color: rgba(198,166,103,.86);
    border-right-color: rgba(198,166,103,.12);
}

.phone-price-row__copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px clamp(24px, 2.2vw, 38px);
}

.phone-price-row__copy h4 {
    margin: 0;
    font-family: 'AdobeClean-Light', Arial, sans-serif;
    font-size: clamp(16px, .9vw, 17.5px);
    font-weight: 300;
    line-height: 1.42;
    letter-spacing: .002em;
    color: #e2ded8;
}

.phone-price-row__copy p {
    margin: 6px 0 0;
    font-family: 'AdobeClean-Light', Arial, sans-serif;
    font-size: 13.5px;
    font-weight: 300;
    line-height: 1.50;
    color: rgba(184,182,179,.68);
}

.phone-price-row__price {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 0;
    padding: 20px 28px 20px 18px;
    border-left: 1px solid rgba(255,255,255,.048);
    background: transparent;
    font-family: 'AdobeClean-SemiCn', 'Dosis', sans-serif;
    font-size: clamp(18px, 1vw, 21px);
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: .035em;
    text-align: right;
    white-space: nowrap;
    color: #C6A667;
    transition: color .24s ease;
}

.phone-price-row:hover .phone-price-row__price {
    color: #d2b372;
}

.phone-price-row--free .phone-price-row__price,
.phone-price-row--contract .phone-price-row__price {
    font-family: 'Dosis', sans-serif;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .115em;
    color: rgba(210,181,124,.94);
}

.phone-price-row--contract .phone-price-row__price {
    white-space: normal;
    line-height: 1.35;
}

/* ========================================================== */
/* NEXT STEP                                                  */
/* ========================================================== */

.phone-pricing__next {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 390px);
    align-items: stretch;
    gap: clamp(34px, 4vw, 72px);
    margin-top: clamp(48px, 5vw, 78px);
    padding: clamp(34px, 3.2vw, 52px) clamp(32px, 3.5vw, 58px);
    border: 1px solid rgba(255,255,255,.082);
    border-radius: 4px;
    background: linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,.009));
}

.phone-pricing__next::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: 2px;
    background: linear-gradient(180deg, rgba(198,166,103,.72), rgba(198,166,103,.12) 72%, transparent);
}

.phone-pricing__next-copy {
    position: relative;
    z-index: 1;
    align-self: center;
    max-width: 720px;
}

.phone-pricing__next-eyebrow {
    display: block;
    margin-bottom: 15px;
    font-family: 'Dosis', sans-serif;
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .16em;
    color: rgba(198,166,103,.82);
}

.phone-pricing__next-copy h3 {
    margin: 0;
    font-family: 'Roboto Serif', Georgia, serif;
    font-optical-sizing: auto;
    font-stretch: 90%;
    font-size: clamp(28px, 2.25vw, 42px);
    font-weight: 350;
    line-height: 1.08;
    letter-spacing: -.035em;
    color: #ebe7df;
}

.phone-pricing__next-copy p {
    max-width: 620px;
    margin: 16px 0 0;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.65;
    color: rgba(190,188,184,.78);
}

.phone-pricing__next-actions {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 12px;
    align-content: center;
}

.phone-next-action {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    width: 100%;
    min-height: 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 24px;
    border: 1px solid rgba(198,166,103,.46);
    border-radius: 3px;
    background: rgba(198,166,103,.022);
    color: #dedad3;
    text-decoration: none;
    font-family: 'Dosis', sans-serif;
    font-size: 10.5px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .125em;
    transition: border-color .28s ease, background-color .28s ease, color .28s ease;
}

.phone-next-action::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(198,166,103,.82), rgba(198,166,103,.18) 72%, transparent);
    transform-origin: left center;
    transform: scaleX(.28);
    transition: transform .38s cubic-bezier(.22,1,.36,1);
}

.phone-next-action::before {
    content: '';
    position: absolute;
    z-index: 0;
    top: -30%;
    bottom: -30%;
    left: -145%;
    width: 72%;
    background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.055) 42%, rgba(255,255,255,.11) 50%, rgba(255,255,255,.055) 58%, transparent 100%);
    transform: skewX(-18deg);
    transition: left 620ms cubic-bezier(.22,1,.36,1);
    pointer-events: none;
}

.phone-next-action span,
.phone-next-action svg {
    position: relative;
    z-index: 1;
}

.phone-next-action svg {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
    fill: none;
    stroke: #c6a667;
    stroke-width: 1.5;
    stroke-linecap: square;
    stroke-linejoin: miter;
    transition: transform .25s ease;
}

.phone-next-action:hover,
.phone-next-action:focus-visible {
    border-color: rgba(198,166,103,.74);
    background: rgba(198,166,103,.042);
    color: #eeeae3;
}

.phone-next-action:hover::before,
.phone-next-action:focus-visible::before { left: 145%; }

.phone-next-action:hover::after,
.phone-next-action:focus-visible::after { transform: scaleX(1); }

.phone-next-action:hover svg,
.phone-next-action:focus-visible svg { transform: translateX(4px); }

.phone-next-secondary { justify-content: flex-start; }
.phone-next-secondary:hover svg,
.phone-next-secondary:focus-visible svg { transform: translateX(-4px); }

.phone-next-action:focus-visible {
    outline: 1px solid rgba(198,166,103,.82);
    outline-offset: 4px;
}

/* ========================================================== */
/* RESPONSIVE                                                 */
/* ========================================================== */

@media (max-width: 1279px) {
    .phone-hero__container {
        grid-template-columns: minmax(0, 1fr) minmax(350px, .66fr);
        gap: clamp(44px, 5vw, 76px);
    }
}

@media (max-width: 1180px) {
    .phone-support__items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .phone-support__item:nth-child(2) {
        border-right: 0;
    }

    .phone-support__item:nth-child(-n+2) {
        border-bottom: 1px solid rgba(255,255,255,.062);
    }

    .phone-price-group {
        grid-template-columns: 205px minmax(0, 1fr);
    }

    .phone-price-list {
        background: linear-gradient(90deg, transparent calc(100% - 154px), #19191b calc(100% - 154px), #19191b 100%);
    }

    .phone-price-list::before {
        right: 154px;
        padding-left: 64px;
    }

    .phone-price-list::after {
        width: 154px;
        padding-right: 22px;
    }

    .phone-price-row {
        grid-template-columns: 48px minmax(0, 1fr) 154px;
    }

    .phone-price-row__price {
        padding-right: 22px;
    }
}

@media (max-width: 900px) {
    .phone-hero__container {
        min-height: auto;
        grid-template-columns: 1fr;
        gap: 18px;
        padding: 44px 0 48px;
    }

    .phone-hero__copy {
        max-width: 760px;
        margin: 0 auto;
        text-align: center;
    }

    .phone-hero__title,
    .phone-hero__lead {
        margin-left: auto;
        margin-right: auto;
    }

    .phone-hero__title {
        max-width: 720px;
        font-size: clamp(34px, 5.2vw, 44px);
        line-height: 1.19;
    }

    .phone-hero__lead {
        max-width: 640px;
    }

    .phone-hero__meta {
        justify-content: center;
    }

    .phone-hero__visual {
        justify-self: center;
        width: min(100%, 430px);
    }
}

@media (max-width: 820px) {
    .phone-section-shell {
        width: min(calc(100% - 40px), 1760px);
    }

    .phone-support {
        padding: 66px 0 72px;
    }

    .phone-support__panel-head {
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        gap: 6px;
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .phone-price-group {
        grid-template-columns: 1fr;
    }

    .phone-price-group__header {
        min-height: auto;
        padding: 31px 30px 29px;
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.052);
    }

    .phone-price-group__header h3 {
        max-width: 520px;
    }

    .phone-price-row {
        grid-template-columns: 48px minmax(0, 1fr) 154px;
    }

    .phone-pricing__next {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .phone-pricing__next-actions {
        width: min(100%, 520px);
    }
}

@media (max-width: 767px) {
    .phone-hero__container {
        width: min(calc(100% - 36px), 1760px);
        padding: 46px 0 52px;
    }

    .phone-hero__title {
        font-size: clamp(31px, 8.5vw, 38px);
    }

    .phone-hero__lead {
        font-size: 15px;
        line-height: 1.65;
    }

    .phone-hero__meta {
        margin-top: 24px;
        font-size: 9.5px;
        gap: 8px 10px;
    }

    .phone-hero__visual {
        display: none;
    }
}

@media (max-width: 560px) {
    .phone-section-shell {
        width: calc(100% - 36px);
    }

    .phone-section-eyebrow {
        font-size: 11px;
    }

    .phone-section-title {
        margin-top: 15px;
        font-size: clamp(29px, 8vw, 35px);
    }

    .phone-section-lead {
        margin-top: 15px;
        font-size: 15px;
    }

    .phone-support {
        padding: 64px 0 72px;
    }

    .phone-support__heading {
        margin-bottom: 34px;
    }

    .phone-support__items {
        grid-template-columns: 1fr;
    }

    .phone-support__item,
    .phone-support__item:nth-child(2) {
        min-height: 0;
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.062);
        padding: 27px 24px 24px;
    }

    .phone-support__item:last-child {
        border-bottom: 0;
    }

    .phone-support__item-mark {
        margin-bottom: 19px;
        font-size: 34px;
    }

    .phone-support__state {
        margin-top: 22px;
        padding-top: 0;
    }

    .phone-pricing {
        padding: 68px 0 82px;
    }

    .phone-pricing__header {
        padding-bottom: 38px;
    }

    .phone-price-ledger {
        gap: 18px;
    }

    .phone-price-group__header {
        padding: 27px 24px 26px;
    }

    .phone-price-group__header::before {
        margin-bottom: 17px;
    }

    .phone-price-group__header h3 {
        font-size: 22px;
        line-height: 1.23;
    }

    .phone-price-list {
        padding-top: 0;
        background: transparent;
    }

    .phone-price-list::before,
    .phone-price-list::after {
        display: none;
    }

    .phone-price-row {
        grid-template-columns: 44px minmax(0, 1fr);
        min-height: 0;
    }

    .phone-price-row__icon {
        grid-column: 1;
        grid-row: 1 / span 2;
        align-items: center;
        padding-top: 0;
    }

    .phone-price-row__icon svg {
        width: 18px;
        height: 18px;
    }

    .phone-price-row__copy {
        grid-column: 2;
        padding: 18px 20px 8px;
    }

    .phone-price-row__copy h4 {
        font-size: 16px;
    }

    .phone-price-row__copy p {
        font-size: 13.5px;
    }

    .phone-price-row__price {
        grid-column: 2;
        justify-content: flex-start;
        min-height: 0;
        padding: 4px 20px 18px;
        border-left: 0;
        background: transparent;
        font-size: 18px;
        text-align: left;
    }

    .phone-price-row--free .phone-price-row__price,
    .phone-price-row--contract .phone-price-row__price {
        font-size: 10px;
    }

    .phone-pricing__next {
        gap: 28px;
        margin-top: 38px;
        padding: 30px 26px;
    }

    .phone-next-action {
        width: 100%;
    }
}

@media (max-width: 360px) {
    .phone-hero__container,
    .phone-section-shell {
        width: calc(100% - 24px);
    }

    .phone-hero__container {
        padding: 38px 0 42px;
    }

    .phone-hero__title {
        font-size: 27px;
    }

    .phone-hero__lead {
        font-size: 14px;
        line-height: 1.6;
    }

    .phone-hero__meta {
        letter-spacing: .085em;
    }
}

@media (min-width: 2560px) {
    .phone-hero__container,
    .phone-section-shell {
        width: min(calc(100% - 120px), 2100px);
        max-width: none;
    }

    .phone-hero__container {
        min-height: 540px;
        gap: clamp(110px, 7vw, 170px);
    }

    .phone-hero__title {
        font-size: 56px;
    }

    .phone-hero__lead {
        max-width: 740px;
        font-size: 19px;
    }

    .phone-hero__visual {
        width: min(100%, 760px);
    }

    .phone-section-title {
        font-size: 46px;
    }

    .phone-section-lead {
        font-size: 17px;
    }

    .phone-price-row {
        min-height: 98px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .js .phone-hero__eyebrow,
    .js .phone-hero__title,
    .js .phone-hero__lead,
    .js .phone-hero__meta,
    .js .phone-hero__visual {
        opacity: 1;
        animation: none !important;
        transform: none;
        filter: none;
    }

    .phone-price-row,
    .phone-price-row__icon,
    .phone-price-row__price,
    .phone-next-action,
    .phone-next-action::before,
    .phone-next-action::after,
    .phone-next-action svg {
        transition: none !important;
    }
}

@media (hover: none) {
    .phone-support__item:hover,
    .phone-price-row:hover {
        background: transparent;
    }

    .phone-price-row:hover .phone-price-row__icon {
        color: rgba(151,150,148,.52);
        border-right-color: rgba(255,255,255,.032);
    }

    .phone-price-row:hover .phone-price-row__price {
        color: #C6A667;
    }
}


/* ========================================================== */
/* HERO PASS — SMOKED TITANIUM + STEEL BLUE                  */
/* Hero/header only. Remaining sections intentionally retain  */
/* their current styling until their individual design pass.  */
/* ========================================================== */

@font-face {
    font-family: 'Phone Adobe Clean Regular';
    src: url('../fonts/AdobeClean-Regular.otf') format('opentype');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

/* Header parity with completed SMARTREPAIR pages. */
.site-header {
    background: rgba(37, 43, 48, .982);
    border-bottom-color: rgba(222, 227, 230, .075);
    box-shadow:
        0 3px 8px rgba(0, 0, 0, .20),
        0 1px 2px rgba(0, 0, 0, .26);
}

.brand-smart { color: #a4b9c8; }
.brand-repair { color: #efeee9; }

.site-nav__link {
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-weight: 400;
    letter-spacing: .050em;
    color: rgba(205, 208, 204, .78);
}

.site-nav__link:hover,
.site-nav__link.current { color: #efeee9; }

.site-nav__link::before,
.site-nav__link::after,
.site-nav__active-dot { background: #7b96ad; }

.site-nav__link:focus-visible { color: #f0f0ec; }
.menu-button span { background: rgba(239, 238, 233, .83); }

@media (max-width: 1279px) {
    [data-mobile-overlay] .header-container { background: rgba(37, 43, 48, .992); }

    [data-mobile-overlay] .menu-button:hover,
    [data-mobile-overlay] .menu-button.open {
        background: rgba(123, 150, 173, .105);
        box-shadow: inset 0 0 0 1px rgba(161, 182, 197, .22);
    }

    [data-mobile-overlay] .menu-button.open span { background: #a1b6c5; }
    [data-mobile-overlay] .menu-button:focus-visible { outline-color: #a1b6c5; }

    [data-mobile-overlay] .mobile-menu-backdrop {
        background: rgba(21, 25, 29, .68);
        backdrop-filter: blur(6px);
    }

    [data-mobile-overlay] .mobile-menu {
        background: linear-gradient(155deg, #394147, #2b3237 72%);
        border-color: rgba(222, 227, 230, .105);
        box-shadow: 0 22px 62px rgba(9, 12, 15, .33);
    }

    [data-mobile-overlay] .mobile-menu__nav a {
        font-family: 'Barlow Semi Condensed', Arial, sans-serif;
        font-weight: 400;
        letter-spacing: .050em;
        color: #cdd0cc;
    }

    [data-mobile-overlay] .mobile-menu__nav a:hover {
        color: #efeee9;
        background: rgba(161, 182, 197, .062);
    }

    [data-mobile-overlay] .mobile-menu__nav a.current {
        color: #c6d5df;
        background: linear-gradient(90deg, rgba(123, 150, 173, .17), rgba(123, 150, 173, .04));
    }

    [data-mobile-overlay] .mobile-menu__nav a.current::before { background: #7b96ad; }

    [data-mobile-overlay] .mobile-menu__nav a:focus-visible {
        outline-color: rgba(161, 182, 197, .72);
        color: #d5dfe5;
        background: rgba(123, 150, 173, .09);
    }
}

.phone-hero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(135deg, #2f363b 0%, #2c3237 49%, #292f34 100%);
    border-bottom: 1px solid rgba(222, 227, 230, .070);
}

.phone-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.52'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-size: 180px 180px;
    mix-blend-mode: soft-light;
    opacity: .014;
}

.phone-hero__container {
    position: relative;
    z-index: 1;
    width: min(calc(100% - clamp(48px, 6vw, 140px)), 1760px);
    min-height: clamp(450px, 33vw, 550px);
    margin: 0 auto;
    padding: clamp(68px, 5.35vw, 90px) 0;
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(390px, .76fr);
    align-items: center;
    gap: clamp(62px, 6.8vw, 132px);
}

.phone-hero__copy {
    min-width: 0;
    max-width: 910px;
}

.phone-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: clamp(12px, .72vw, 13px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: .105em;
    color: #a1b6c5;
}

.phone-hero__eyebrow::before {
    content: '';
    width: 26px;
    height: 1px;
    flex: 0 0 26px;
    background: rgba(161, 182, 197, .58);
}

.phone-hero__title {
    max-width: 850px;
    margin: 24px 0 0;
    font-family: 'Source Serif 4', Georgia, serif;
    font-optical-sizing: auto;
    font-stretch: normal;
    font-size: clamp(40px, 3.35vw, 58px);
    font-weight: 400;
    line-height: 1.16;
    letter-spacing: -.025em;
    text-wrap: balance;
    color: #efeee9;
}

.phone-hero__lead {
    max-width: 730px;
    margin: 26px 0 0;
    font-family: 'Phone Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: clamp(15.5px, .98vw, 17px);
    font-weight: 400;
    line-height: 1.68;
    letter-spacing: .002em;
    color: #c3c7c5;
    text-wrap: pretty;
}

.phone-hero__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin-top: clamp(29px, 2.35vw, 37px);
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: .095em;
    color: rgba(205, 208, 204, .62);
}

.phone-hero__meta-line {
    width: 28px;
    height: 1px;
    background: rgba(161, 182, 197, .44);
}

.phone-hero__visual {
    position: relative;
    justify-self: end;
    min-width: 0;
    width: min(100%, 670px);
    aspect-ratio: auto;
    display: block;
    transform: translateY(3px);
}

.phone-system {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
    filter: drop-shadow(0 5px 4px rgba(5, 8, 10, .19));
}

.phone-system path,
.phone-system rect,
.phone-system circle { vector-effect: non-scaling-stroke; }

.phone-system__body--back {
    fill: url(#phoneBackSurface);
    stroke: rgba(190, 202, 210, .37);
    stroke-width: 1;
}

.phone-system__back-inner {
    fill: none;
    stroke: rgba(222, 227, 230, .070);
    stroke-width: 1;
}

.phone-system__camera-island {
    fill: url(#phoneInsetSurface);
    stroke: rgba(161, 182, 197, .24);
    stroke-width: 1;
}

.phone-system__lens {
    fill: #293036;
    stroke: rgba(161, 182, 197, .54);
    stroke-width: 1;
}

.phone-system__sensor {
    fill: rgba(161, 182, 197, .60);
    stroke: rgba(205, 217, 225, .34);
    stroke-width: 1;
}

.phone-system__lens-detail {
    fill: none;
    stroke: rgba(213, 223, 230, .28);
    stroke-width: 1;
}

.phone-system__back-accent,
.phone-system__side-key {
    fill: none;
    stroke: rgba(161, 182, 197, .64);
    stroke-width: 1.2;
}

.phone-system__body--front {
    fill: url(#phoneFrontSurface);
    stroke: rgba(190, 202, 210, .43);
    stroke-width: 1;
}

.phone-system__front-frame {
    fill: #30373d;
    stroke: rgba(222, 227, 230, .080);
    stroke-width: 1;
}

.phone-system__display {
    fill: url(#phoneDisplaySurface);
    stroke: rgba(161, 182, 197, .20);
    stroke-width: 1;
}

.phone-system__earpiece {
    fill: none;
    stroke: rgba(213, 223, 230, .40);
    stroke-width: 1;
}

.phone-system__front-camera {
    fill: rgba(161, 182, 197, .24);
    stroke: rgba(161, 182, 197, .50);
    stroke-width: 1;
}

.phone-system__screen-rail {
    fill: none;
    stroke: rgba(161, 182, 197, .72);
    stroke-width: 1.25;
}

.phone-system__ui-line,
.phone-system__ui-rule,
.phone-system__ui-card-line {
    fill: none;
    stroke: rgba(184, 191, 194, .29);
    stroke-width: 1;
    stroke-linecap: square;
}

.phone-system__ui-line--strong { stroke: rgba(228, 231, 232, .56); }
.phone-system__ui-rule { stroke: rgba(184, 191, 194, .13); }

.phone-system__ui-card {
    fill: url(#phoneInsetSurface);
    stroke: rgba(161, 182, 197, .23);
    stroke-width: 1;
}

.phone-system__ui-card-accent {
    fill: none;
    stroke: rgba(161, 182, 197, .80);
    stroke-width: 1.25;
}

.phone-system__diag-card {
    fill: #333b41;
    stroke: rgba(190, 202, 210, .32);
    stroke-width: 1;
}

.phone-system__diag-inner {
    fill: url(#phoneInsetSurface);
    stroke: rgba(222, 227, 230, .075);
    stroke-width: 1;
}

.phone-system__diag-accent {
    fill: none;
    stroke: rgba(161, 182, 197, .78);
    stroke-width: 1.25;
}

.phone-system__diag-line {
    fill: none;
    stroke: rgba(184, 191, 194, .30);
    stroke-width: 1;
}

.phone-system__diag-line--strong { stroke: rgba(228, 231, 232, .54); }

.phone-system__diag-chip {
    fill: rgba(123, 150, 173, .10);
    stroke: rgba(161, 182, 197, .62);
    stroke-width: 1;
}

.phone-system__routing path {
    fill: none;
    stroke: rgba(161, 182, 197, .28);
    stroke-width: 1;
}

.phone-system__route-node {
    fill: #2b3237;
    stroke: rgba(161, 182, 197, .72);
    stroke-width: 1;
}

/* Existing entrance motion retained with updated hero geometry. */
.js .phone-hero__eyebrow,
.js .phone-hero__title,
.js .phone-hero__lead,
.js .phone-hero__meta,
.js .phone-hero__visual {
    opacity: 0;
    will-change: opacity, transform, filter;
}

@media (max-width: 1279px) {
    .phone-hero__container {
        grid-template-columns: minmax(0, 1fr) minmax(340px, .66fr);
        gap: clamp(48px, 5vw, 80px);
    }

    .phone-hero__visual { width: min(100%, 590px); }
}

@media (max-width: 900px) {
    .phone-hero__container {
        min-height: auto;
        grid-template-columns: 1fr;
        gap: 0;
        padding: 62px 0 66px;
    }

    .phone-hero__copy {
        max-width: 760px;
        margin: 0 auto;
        text-align: center;
    }

    .phone-hero__eyebrow,
    .phone-hero__meta { justify-content: center; }

    .phone-hero__title,
    .phone-hero__lead {
        margin-left: auto;
        margin-right: auto;
    }

    .phone-hero__title {
        max-width: 720px;
        font-size: clamp(34px, 5.2vw, 44px);
        line-height: 1.18;
    }

    .phone-hero__lead { max-width: 640px; }
    .phone-hero__visual { display: none; }
}

@media (max-width: 767px) {
    .phone-hero__container {
        width: calc(100% - 40px);
        padding: 54px 0 58px;
    }

    .phone-hero__title {
        max-width: 650px;
        font-size: clamp(30px, 6.4vw, 38px);
        line-height: 1.20;
    }

    .phone-hero__lead {
        max-width: 590px;
        font-size: 16px;
        line-height: 1.64;
    }

    .phone-hero__meta {
        margin-top: 25px;
        gap: 8px 10px;
        font-size: 10px;
    }
}

@media (max-width: 480px) {
    .phone-hero__container {
        width: calc(100% - 28px);
        padding: 48px 0 52px;
    }

    .phone-hero__title {
        margin-top: 20px;
        font-size: 29px;
        line-height: 1.22;
    }

    .phone-hero__lead {
        margin-top: 20px;
        font-size: 15px;
        line-height: 1.62;
    }

    .phone-hero__meta {
        margin-top: 22px;
        font-size: 9.5px;
        letter-spacing: .085em;
    }
}

@media (max-width: 360px) {
    .phone-hero__container {
        width: calc(100% - 24px);
        padding: 44px 0 48px;
    }

    .phone-hero__title { font-size: 27px; }

    .phone-hero__lead {
        font-size: 14px;
        line-height: 1.60;
    }

    .phone-hero__meta-line { display: none; }
}

@media (min-width: 2560px) {
    .phone-hero__container {
        width: min(calc(100% - 120px), 2100px);
        min-height: 570px;
        gap: 160px;
    }

    .phone-hero__title { font-size: 60px; }
    .phone-hero__lead { max-width: 760px; font-size: 18px; }
    .phone-hero__visual { width: min(100%, 760px); }
}

/* ========================================================== */
/* PHONE REPAIR — IMPORTANT INFORMATION / TITANIUM BOARD      */
/* ========================================================== */

.phone-support {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: clamp(92px, 7vw, 126px) 0 clamp(100px, 7.5vw, 136px);
    background: linear-gradient(180deg, #30373d 0%, #2d3439 50%, #2b3136 100%);
    border-bottom: 0;
}

.phone-support::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(112deg, rgba(255,255,255,.016) 0%, transparent 30%, transparent 72%, rgba(0,0,0,.040) 100%);
}

.phone-support .phone-section-shell {
    position: relative;
    z-index: 1;
}

.phone-support__heading {
    max-width: 810px;
    margin-bottom: clamp(46px, 4.4vw, 66px);
}

.phone-support .phone-section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .13em;
    color: #a1b6c5;
}

.phone-support .phone-section-eyebrow::before {
    content: '';
    width: 30px;
    height: 2px;
    flex: 0 0 30px;
    background: #7b96ad;
}

.phone-support .phone-section-title {
    max-width: 780px;
    margin-top: 20px;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: clamp(34px, 2.5vw, 48px);
    font-weight: 400;
    line-height: 1.14;
    letter-spacing: -.027em;
    color: #efeee9;
}

.phone-support .phone-section-lead {
    max-width: 710px;
    margin-top: 19px;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: clamp(16px, .92vw, 18px);
    font-weight: 400;
    line-height: 1.68;
    color: #cdd0cc;
}

.phone-support__panel {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.072);
    border-radius: 5px;
    background: linear-gradient(145deg, rgba(255,255,255,.022) 0%, rgba(255,255,255,.008) 48%, rgba(0,0,0,.018) 100%), #343b41;
    box-shadow:
        0 6px 10px -5px rgba(0,0,0,.52),
        inset 0 1px 0 rgba(255,255,255,.03);
}

.phone-support__panel::before {
    content: none;
    display: none;
}

.phone-support__panel-head {
    min-height: 58px;
    padding: 0 clamp(28px, 2.4vw, 42px);
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 28px;
    border-bottom: 1px solid rgba(255,255,255,.052);
    background: rgba(18,22,25,.15);
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .13em;
    color: rgba(205,208,204,.54);
}

.phone-support__panel-head span:last-child {
    color: #a1b6c5;
}

.phone-support__items {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.phone-support__item {
    position: relative;
    isolation: isolate;
    min-width: 0;
    min-height: clamp(238px, 15vw, 278px);
    padding: clamp(34px, 2.8vw, 48px) clamp(26px, 2.4vw, 40px) clamp(30px, 2.5vw, 40px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-right: 1px solid rgba(255,255,255,.050);
    background: transparent;
    transition: background-color 300ms ease, box-shadow 300ms ease;
}

.phone-support__item:last-child {
    border-right: 0;
}

.phone-support__item::after {
    content: '';
    position: absolute;
    top: -42%;
    left: -62%;
    width: 28%;
    height: 190%;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(105deg, transparent 0%, rgba(255,255,255,.010) 28%, rgba(255,255,255,.070) 48%, rgba(255,255,255,.014) 66%, transparent 100%);
    transform: skewX(-18deg);
    transition: left 900ms cubic-bezier(.22, 1, .36, 1);
}

.phone-support__item:hover,
.phone-support__item:focus-within {
    background: rgba(255,255,255,.015);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.016);
}

.phone-support__item:hover::after,
.phone-support__item:focus-within::after {
    left: 138%;
}

.phone-support__item-mark {
    position: relative;
    z-index: 2;
    margin: 0 0 28px;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: clamp(38px, 2.7vw, 54px);
    font-weight: 400;
    line-height: .92;
    letter-spacing: -.042em;
    color: #efeee9;
}

.phone-support__item-copy {
    position: relative;
    z-index: 2;
}

.phone-support__item-copy h3 {
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: clamp(18px, 1vw, 20px);
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: .015em;
    color: #e7e8e5;
}

.phone-support__item-copy p {
    margin: 10px 0 0;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.52;
    color: #a5aaa8;
}

.phone-support__state {
    position: relative;
    z-index: 2;
    margin-top: auto;
    padding-top: 30px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    max-width: 100%;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: .105em;
    color: #a1b6c5;
}

.phone-support__state i {
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border: 1px solid rgba(161,182,197,.72);
    background: rgba(123,150,173,.08);
    transform: rotate(45deg);
}

@media (max-width: 1180px) {
    .phone-support__items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .phone-support__item {
        min-height: 235px;
    }

    .phone-support__item:nth-child(2) {
        border-right: 0;
    }

    .phone-support__item:nth-child(-n+2) {
        border-bottom: 1px solid rgba(255,255,255,.050);
    }
}

@media (max-width: 820px) {
    .phone-support {
        padding: 78px 0 86px;
    }

    .phone-support__heading {
        margin-bottom: 42px;
    }

    .phone-support__panel-head {
        min-height: 0;
        padding: 17px 28px;
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        gap: 6px;
    }
}

@media (max-width: 560px) {
    .phone-support {
        padding: 68px 0 74px;
    }

    .phone-support__heading {
        margin-bottom: 34px;
    }

    .phone-support .phone-section-eyebrow {
        gap: 11px;
        font-size: 11px;
    }

    .phone-support .phone-section-eyebrow::before {
        width: 26px;
        flex-basis: 26px;
    }

    .phone-support .phone-section-title {
        margin-top: 17px;
        font-size: clamp(29px, 8vw, 35px);
    }

    .phone-support .phone-section-lead {
        margin-top: 16px;
        font-size: 15px;
        line-height: 1.64;
    }

    .phone-support__panel-head {
        padding: 16px 22px;
    }

    .phone-support__items {
        grid-template-columns: 1fr;
    }

    .phone-support__item,
    .phone-support__item:nth-child(2) {
        min-height: 0;
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.050);
        padding: 30px 24px 27px;
    }

    .phone-support__item:last-child {
        border-bottom: 0;
    }

    .phone-support__item-mark {
        margin-bottom: 20px;
        font-size: 38px;
    }

    .phone-support__state {
        margin-top: 24px;
        padding-top: 0;
        font-size: 10px;
    }
}

@media (max-width: 360px) {
    .phone-support__panel-head {
        padding-left: 18px;
        padding-right: 18px;
    }

    .phone-support__item,
    .phone-support__item:nth-child(2) {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (min-width: 2560px) {
    .phone-support {
        padding-top: 126px;
        padding-bottom: 142px;
    }

    .phone-support__heading {
        max-width: 900px;
        margin-bottom: 72px;
    }

    .phone-support .phone-section-title {
        font-size: 52px;
    }

    .phone-support .phone-section-lead {
        max-width: 770px;
        font-size: 19px;
    }

    .phone-support__panel-head {
        min-height: 64px;
        padding-left: 48px;
        padding-right: 48px;
        font-size: 11px;
    }

    .phone-support__item {
        min-height: 294px;
        padding: 52px 46px 44px;
    }

    .phone-support__item-mark {
        font-size: 58px;
    }

    .phone-support__item-copy h3 {
        font-size: 21px;
    }

    .phone-support__item-copy p {
        font-size: 15px;
    }
}

@media (hover: none) {
    .phone-support__item:hover {
        background: transparent;
        box-shadow: none;
    }

    .phone-support__item:hover::after {
        left: -62%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .phone-support__item,
    .phone-support__item::after {
        transition: none !important;
    }
}

/* ========================================================== */
/* PHONE REPAIR — PRICING LEDGER / SMOKED TITANIUM           */
/* ========================================================== */

.phone-pricing {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: clamp(96px, 7.5vw, 136px) 0 clamp(104px, 8vw, 146px);
    background: linear-gradient(180deg, #2a3035 0%, #292f34 48%, #272d32 100%);
}

.phone-pricing::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(116deg, rgba(255,255,255,.014) 0%, transparent 31%, transparent 72%, rgba(0,0,0,.052) 100%);
}

.phone-pricing > .phone-section-shell {
    position: relative;
    z-index: 1;
}

.phone-pricing__header {
    max-width: 830px;
    padding-bottom: clamp(50px, 4.7vw, 72px);
}

.phone-pricing .phone-section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .13em;
    color: #a1b6c5;
}

.phone-pricing .phone-section-eyebrow::before {
    content: '';
    width: 30px;
    height: 2px;
    flex: 0 0 30px;
    background: #7b96ad;
}

.phone-pricing .phone-section-title {
    max-width: 790px;
    margin-top: 20px;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: clamp(34px, 2.5vw, 48px);
    font-weight: 400;
    line-height: 1.14;
    letter-spacing: -.027em;
    color: #efeee9;
}

.phone-pricing .phone-section-lead {
    max-width: 700px;
    margin-top: 19px;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: clamp(16px, .92vw, 18px);
    font-weight: 400;
    line-height: 1.68;
    color: #cdd0cc;
}

.phone-price-ledger {
    display: grid;
    gap: clamp(22px, 1.8vw, 30px);
}

.phone-price-group {
    position: relative;
    isolation: isolate;
    scroll-margin-top: 110px;
    display: grid;
    grid-template-columns: minmax(245px, .27fr) minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid rgba(222,227,230,.10);
    border-radius: 5px;
    background: linear-gradient(180deg, #343b41 0%, #32393f 100%);
    box-shadow:
        0 6px 10px -5px rgba(0,0,0,.52),
        inset 0 1px 0 rgba(255,255,255,.03);
}

/* Fully retire the old amber rail and heading hairline. */
.phone-pricing .phone-price-group::before,
.phone-price-group__header::before {
    content: none !important;
    display: none !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.phone-price-group__header {
    position: relative;
    min-width: 0;
    min-height: 100%;
    padding: clamp(38px, 3vw, 50px) clamp(30px, 2.65vw, 44px);
    border-right: 1px solid rgba(222,227,230,.075);
    background: linear-gradient(180deg, rgba(20,24,27,.12), rgba(20,24,27,.035));
}

.phone-price-group__header > span {
    display: block;
    margin-bottom: 15px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: .13em;
    color: #a1b6c5;
}

.phone-price-group__header h3 {
    max-width: 300px;
    margin: 0;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: clamp(24px, 1.55vw, 30px);
    font-weight: 400;
    line-height: 1.18;
    letter-spacing: -.022em;
    text-transform: none;
    color: #efeee9;
}

.phone-price-list {
    --phone-price-rail: 184px;
    position: relative;
    min-width: 0;
    padding-top: 42px;
    background: linear-gradient(
        90deg,
        transparent calc(100% - var(--phone-price-rail)),
        rgba(21,26,30,.22) calc(100% - var(--phone-price-rail)),
        rgba(21,26,30,.22) 100%
    );
}

.phone-price-list::before,
.phone-price-list::after {
    position: absolute;
    z-index: 5;
    top: 0;
    height: 42px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid rgba(222,227,230,.065);
    background: rgba(18,22,25,.13);
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 9.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .14em;
    pointer-events: none;
}

.phone-price-list::before {
    content: 'PASLAUGA';
    left: 0;
    right: var(--phone-price-rail);
    padding: 0 24px 0 74px;
    color: rgba(205,208,204,.50);
}

.phone-price-list::after {
    content: 'KAINA';
    right: 0;
    width: var(--phone-price-rail);
    justify-content: flex-end;
    padding: 0 30px;
    border-left: 1px solid rgba(222,227,230,.065);
    color: #a1b6c5;
}

.phone-price-row {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr) var(--phone-price-rail, 184px);
    align-items: stretch;
    min-height: 90px;
    overflow: hidden;
    border-bottom: 1px solid rgba(222,227,230,.060);
    background: transparent;
    transition: background-color 260ms ease, box-shadow 320ms ease;
}

.phone-price-row:last-child {
    border-bottom: 0;
}

/* Quiet material sweep — same visual family as the approved site cards. */
.phone-price-row::before {
    content: '';
    position: absolute;
    top: -55%;
    left: -122%;
    width: 78%;
    height: 215%;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(
        112deg,
        rgba(239,238,233,0) 0%,
        rgba(239,238,233,.010) 36%,
        rgba(239,238,233,.070) 50%,
        rgba(239,238,233,.010) 64%,
        rgba(239,238,233,0) 100%
    );
    transform: skewX(-18deg);
    transition: left 720ms cubic-bezier(.22,1,.36,1);
}

.phone-price-row__icon,
.phone-price-row__copy,
.phone-price-row__price {
    position: relative;
    z-index: 1;
}

.phone-price-row__icon {
    display: grid;
    place-items: center;
    align-self: stretch;
    border-right: 1px solid rgba(222,227,230,.045);
    color: #8fa5b5;
    background: rgba(18,22,25,.045);
    transition: color 240ms ease, background-color 240ms ease, border-color 240ms ease;
}

.phone-price-row__icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.35;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
    transition: transform 320ms cubic-bezier(.22,1,.36,1);
}

.phone-price-row__copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px clamp(26px, 2.2vw, 38px);
}

/* Adobe Clean Light is intentionally restricted to pricing-table service names. */
.phone-price-row__copy h4 {
    margin: 0;
    font-family: 'AdobeClean-Light', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: clamp(16px, .90vw, 17.5px);
    font-weight: 300;
    line-height: 1.42;
    letter-spacing: .001em;
    color: #e7e8e5;
    text-wrap: pretty;
    transition: color 240ms ease;
}

.phone-price-row__copy p {
    margin: 6px 0 0;
    font-family: 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 13.5px;
    font-weight: 400;
    line-height: 1.50;
    color: #aeb4b2;
}

.phone-price-row__price {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 0;
    padding: 20px 30px 20px 18px;
    border-left: 1px solid rgba(222,227,230,.060);
    background: rgba(18,22,25,.12);
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: clamp(19px, 1.05vw, 22px);
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: .025em;
    text-align: right;
    white-space: nowrap;
    color: #a1b6c5;
    transition: color 240ms ease, background-color 240ms ease, border-color 240ms ease;
}

.phone-price-row--free .phone-price-row__price,
.phone-price-row--contract .phone-price-row__price {
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .105em;
    color: #b3c5d1;
}

.phone-price-row--contract .phone-price-row__price {
    white-space: normal;
    line-height: 1.35;
}

@media (hover:hover) and (pointer:fine) {
    .phone-price-row:hover {
        background: rgba(239,238,233,.014);
        box-shadow: inset 0 1px 0 rgba(239,238,233,.010);
    }

    .phone-price-row:hover::before {
        left: 136%;
    }

    .phone-price-row:hover .phone-price-row__icon {
        color: #b6c7d3;
        background: rgba(123,150,173,.070);
        border-right-color: rgba(161,182,197,.15);
    }

    .phone-price-row:hover .phone-price-row__icon svg {
        transform: translateY(-1px);
    }

    .phone-price-row:hover .phone-price-row__copy h4 {
        color: #f0f0ec;
    }

    .phone-price-row:hover .phone-price-row__price {
        color: #bfd0db;
        background: rgba(123,150,173,.055);
        border-left-color: rgba(161,182,197,.14);
    }
}

@media (max-width: 1180px) {
    .phone-price-group {
        grid-template-columns: 218px minmax(0, 1fr);
    }

    .phone-price-list {
        --phone-price-rail: 160px;
    }

    .phone-price-row {
        grid-template-columns: 54px minmax(0, 1fr) var(--phone-price-rail);
    }

    .phone-price-list::before {
        padding-left: 68px;
    }

    .phone-price-list::after,
    .phone-price-row__price {
        padding-right: 24px;
    }
}

@media (max-width: 820px) {
    .phone-pricing {
        padding: 82px 0 94px;
    }

    .phone-pricing__header {
        padding-bottom: 48px;
    }

    .phone-price-group {
        grid-template-columns: 1fr;
    }

    .phone-price-group__header {
        min-height: auto;
        padding: 32px 30px 30px;
        border-right: 0;
        border-bottom: 1px solid rgba(222,227,230,.075);
    }

    .phone-price-group__header h3 {
        max-width: 560px;
    }

    .phone-price-list {
        --phone-price-rail: 160px;
    }
}

@media (max-width: 560px) {
    .phone-pricing {
        padding: 70px 0 84px;
    }

    .phone-pricing__header {
        padding-bottom: 38px;
    }

    .phone-pricing .phone-section-eyebrow {
        gap: 11px;
        font-size: 11px;
    }

    .phone-pricing .phone-section-eyebrow::before {
        width: 26px;
        flex-basis: 26px;
    }

    .phone-pricing .phone-section-title {
        margin-top: 17px;
        font-size: clamp(29px, 8vw, 35px);
    }

    .phone-pricing .phone-section-lead {
        margin-top: 16px;
        font-size: 15px;
        line-height: 1.64;
    }

    .phone-price-ledger {
        gap: 18px;
    }

    .phone-price-group__header {
        padding: 27px 24px 26px;
    }

    .phone-price-group__header > span {
        margin-bottom: 12px;
        font-size: 10px;
    }

    .phone-price-group__header h3 {
        font-size: 22px;
        line-height: 1.23;
    }

    .phone-price-list {
        padding-top: 0;
        background: transparent;
    }

    .phone-price-list::before,
    .phone-price-list::after {
        display: none;
    }

    .phone-price-row {
        grid-template-columns: 46px minmax(0, 1fr);
        min-height: 0;
    }

    .phone-price-row__icon {
        grid-column: 1;
        grid-row: 1 / span 2;
        align-items: center;
        padding-top: 0;
    }

    .phone-price-row__icon svg {
        width: 18px;
        height: 18px;
    }

    .phone-price-row__copy {
        grid-column: 2;
        padding: 18px 20px 8px;
    }

    .phone-price-row__copy h4 {
        font-size: 16px;
    }

    .phone-price-row__copy p {
        font-size: 13.5px;
    }

    .phone-price-row__price {
        grid-column: 2;
        justify-content: flex-start;
        min-height: 0;
        padding: 4px 20px 18px;
        border-left: 0;
        background: transparent;
        font-size: 18px;
        text-align: left;
    }

    .phone-price-row--free .phone-price-row__price,
    .phone-price-row--contract .phone-price-row__price {
        font-size: 10px;
    }
}

@media (max-width: 360px) {
    .phone-price-group__header {
        padding-left: 20px;
        padding-right: 20px;
    }

    .phone-price-row {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .phone-price-row__copy {
        padding-left: 16px;
        padding-right: 16px;
    }

    .phone-price-row__price {
        padding-left: 16px;
        padding-right: 16px;
    }

    .phone-price-row__copy h4 {
        font-size: 15.5px;
    }

    .phone-price-row__copy p {
        font-size: 13px;
    }
}

@media (min-width: 2560px) {
    .phone-pricing {
        padding-top: 132px;
        padding-bottom: 152px;
    }

    .phone-pricing__header {
        max-width: 900px;
        padding-bottom: 76px;
    }

    .phone-pricing .phone-section-title {
        font-size: 52px;
    }

    .phone-pricing .phone-section-lead {
        max-width: 770px;
        font-size: 19px;
    }

    .phone-price-group {
        grid-template-columns: minmax(280px, .27fr) minmax(0, 1fr);
    }

    .phone-price-group__header {
        padding: 54px 50px;
    }

    .phone-price-group__header h3 {
        max-width: 330px;
        font-size: 32px;
    }

    .phone-price-row {
        min-height: 98px;
    }
}

@media (hover: none) {
    .phone-price-row:hover {
        background: transparent;
        box-shadow: none;
    }

    .phone-price-row:hover::before {
        left: -122%;
    }

    .phone-price-row:hover .phone-price-row__icon {
        color: #8fa5b5;
        background: rgba(18,22,25,.045);
        border-right-color: rgba(222,227,230,.045);
    }

    .phone-price-row:hover .phone-price-row__price {
        color: #a1b6c5;
        background: rgba(18,22,25,.12);
        border-left-color: rgba(222,227,230,.060);
    }
}

@media (prefers-reduced-motion: reduce) {
    .phone-price-row,
    .phone-price-row::before,
    .phone-price-row__icon,
    .phone-price-row__icon svg,
    .phone-price-row__copy h4,
    .phone-price-row__price {
        transition: none !important;
    }
}

/* ========================================================== */
/* PHONE REPAIR — KITAS ŽINGSNIS / FINAL CTA PANEL            */
/* ========================================================== */

.phone-pricing__next {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    align-items: center;
    gap: clamp(42px, 5vw, 86px);
    margin-top: clamp(62px, 5.5vw, 88px);
    padding: clamp(40px, 3.8vw, 58px) clamp(38px, 4vw, 66px);
    border: 1px solid rgba(222, 227, 230, .095);
    border-radius: 5px;
    background: linear-gradient(180deg, #32393f 0%, #30373d 100%);
    box-shadow:
        0 6px 10px -5px rgba(0, 0, 0, .52),
        inset 0 1px 0 rgba(255, 255, 255, .03);
}

/* Retire the old amber side rail. */
.phone-pricing__next::before {
    content: none !important;
    display: none !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.phone-pricing__next-copy {
    position: relative;
    z-index: 1;
    align-self: center;
    max-width: 760px;
}

.phone-pricing__next-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 18px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .145em;
    color: #a1b6c5;
}

.phone-pricing__next-eyebrow::before {
    content: '';
    width: 32px;
    height: 2px;
    flex: 0 0 32px;
    background: #7b96ad;
}

.phone-pricing__next-copy h3 {
    max-width: 680px;
    margin: 0;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: clamp(32px, 2.45vw, 46px);
    font-weight: 400;
    line-height: 1.10;
    letter-spacing: -.028em;
    color: #efeee9;
    text-wrap: balance;
}

.phone-pricing__next-copy p {
    max-width: 660px;
    margin: 18px 0 0;
    font-family: 'AdobeClean-Regular', 'AdobeClean', Arial, sans-serif;
    font-size: clamp(15.5px, .9vw, 17px);
    font-weight: 400;
    line-height: 1.66;
    color: #cdd0cc;
    text-wrap: pretty;
}

.phone-pricing__next .smartrepair-actions {
    position: relative;
    z-index: 1;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    align-self: center;
}

.phone-pricing__next .smartrepair-action {
    position: relative;
    isolation: isolate;
    width: 100%;
    min-height: 54px;
    margin: 0;
    padding: 0;
    display: grid;
    align-items: stretch;
    overflow: hidden;
    border: 1px solid rgba(161, 182, 197, .26);
    border-radius: 3px;
    background: rgba(18, 22, 25, .18);
    color: #e5e7e4;
    text-decoration: none;
    transform: none;
    transition:
        border-color 260ms ease,
        background-color 260ms ease,
        transform 280ms cubic-bezier(.22, 1, .36, 1),
        box-shadow 280ms ease;
}

.phone-pricing__next .smartrepair-action--forward {
    grid-template-columns: minmax(0, 1fr) 54px;
    background: rgba(97, 127, 151, .12);
    border-color: rgba(123, 150, 173, .38);
    box-shadow:
        0 4px 10px rgba(0, 0, 0, .22),
        0 1px 2px rgba(0, 0, 0, .28);
}

.phone-pricing__next .smartrepair-action--back {
    grid-template-columns: 54px minmax(0, 1fr);
    background: rgba(18, 22, 25, .12);
    border-color: rgba(222, 227, 230, .105);
    box-shadow:
        0 3px 8px rgba(0, 0, 0, .18),
        0 1px 2px rgba(0, 0, 0, .24);
}

.phone-pricing__next .smartrepair-action > span {
    position: relative;
    z-index: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 20px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: .095em;
    color: inherit;
}

.phone-pricing__next .smartrepair-action svg {
    position: relative;
    z-index: 1;
    width: 54px;
    height: 100%;
    padding: 17px;
    fill: none;
    stroke: #a1b6c5;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition:
        transform 300ms cubic-bezier(.22, 1, .36, 1),
        background-color 260ms ease,
        stroke 260ms ease;
}

.phone-pricing__next .smartrepair-action--forward svg {
    border-left: 1px solid rgba(161, 182, 197, .18);
    background: rgba(97, 127, 151, .08);
}

.phone-pricing__next .smartrepair-action--back svg {
    border-right: 1px solid rgba(222, 227, 230, .075);
    background: rgba(18, 22, 25, .10);
}

/* Restrained material sweep. */
.phone-pricing__next .smartrepair-action::before {
    content: '';
    position: absolute;
    z-index: 0;
    top: -60%;
    left: -58%;
    width: 34%;
    height: 220%;
    pointer-events: none;
    background: linear-gradient(
        108deg,
        transparent 0%,
        rgba(239, 238, 233, .016) 23%,
        rgba(239, 238, 233, .10) 36%,
        rgba(239, 238, 233, .25) 47%,
        rgba(239, 238, 233, .34) 50%,
        rgba(239, 238, 233, .25) 53%,
        rgba(239, 238, 233, .10) 64%,
        rgba(239, 238, 233, .016) 77%,
        transparent 100%
    );
    transform: skewX(-14deg);
    transition: left 520ms cubic-bezier(.22, 1, .36, 1);
}

/* Kill the retired amber underline from the legacy button rules. */
.phone-pricing__next .smartrepair-action::after {
    content: none !important;
    display: none !important;
}

@media (hover: hover) and (pointer: fine) {
    .phone-pricing__next .smartrepair-action:hover,
    .phone-pricing__next .smartrepair-action:focus-visible {
        transform: translateY(-1px);
        border-color: rgba(161, 182, 197, .52);
        background: rgba(97, 127, 151, .16);
        box-shadow: 0 7px 14px -5px rgba(0, 0, 0, .48);
        color: #efeee9;
    }

    .phone-pricing__next .smartrepair-action:hover::before,
    .phone-pricing__next .smartrepair-action:focus-visible::before {
        left: 128%;
    }

    .phone-pricing__next .smartrepair-action--forward:hover svg,
    .phone-pricing__next .smartrepair-action--forward:focus-visible svg {
        transform: translateX(2px);
        background: rgba(97, 127, 151, .14);
        stroke: #c3d1db;
    }

    .phone-pricing__next .smartrepair-action--back:hover svg,
    .phone-pricing__next .smartrepair-action--back:focus-visible svg {
        transform: translateX(-2px);
        background: rgba(97, 127, 151, .08);
        stroke: #c3d1db;
    }
}

.phone-pricing__next .smartrepair-action:focus-visible {
    outline: 1px solid rgba(161, 182, 197, .78);
    outline-offset: 3px;
}

@media (max-width: 900px) {
    .phone-pricing__next {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 38px 36px;
    }

    .phone-pricing__next-copy {
        max-width: 720px;
    }

    .phone-pricing__next .smartrepair-actions {
        max-width: 440px;
    }
}

@media (max-width: 560px) {
    .phone-pricing__next {
        gap: 30px;
        margin-top: 44px;
        padding: 30px 24px;
        border-radius: 4px;
    }

    .phone-pricing__next-eyebrow {
        gap: 10px;
        margin-bottom: 16px;
        font-size: 10.5px;
    }

    .phone-pricing__next-eyebrow::before {
        width: 28px;
        flex-basis: 28px;
    }

    .phone-pricing__next-copy h3 {
        font-size: clamp(29px, 8vw, 35px);
        line-height: 1.14;
    }

    .phone-pricing__next-copy p {
        margin-top: 15px;
        font-size: 15px;
        line-height: 1.62;
    }

    .phone-pricing__next .smartrepair-action {
        min-height: 52px;
    }

    .phone-pricing__next .smartrepair-action--forward {
        grid-template-columns: minmax(0, 1fr) 50px;
    }

    .phone-pricing__next .smartrepair-action--back {
        grid-template-columns: 50px minmax(0, 1fr);
    }

    .phone-pricing__next .smartrepair-action > span {
        padding: 0 16px;
        font-size: 10.5px;
        letter-spacing: .085em;
    }

    .phone-pricing__next .smartrepair-action svg {
        width: 50px;
        padding: 16px;
    }
}

@media (max-width: 360px) {
    .phone-pricing__next {
        padding: 27px 20px;
    }

    .phone-pricing__next .smartrepair-action > span {
        padding-left: 13px;
        padding-right: 13px;
        font-size: 10px;
        letter-spacing: .07em;
    }
}

@media (min-width: 2560px) {
    .phone-pricing__next {
        grid-template-columns: minmax(0, 1fr) 430px;
        gap: 100px;
        margin-top: 92px;
        padding: 66px 76px;
    }

    .phone-pricing__next-eyebrow {
        font-size: 12px;
    }

    .phone-pricing__next-copy h3 {
        font-size: 50px;
    }

    .phone-pricing__next-copy p {
        max-width: 720px;
        font-size: 18px;
    }

    .phone-pricing__next .smartrepair-action {
        min-height: 58px;
    }

    .phone-pricing__next .smartrepair-action > span {
        font-size: 12px;
    }
}

@media (hover: none) {
    .phone-pricing__next .smartrepair-action::before {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .phone-pricing__next .smartrepair-action,
    .phone-pricing__next .smartrepair-action::before,
    .phone-pricing__next .smartrepair-action svg {
        transition: none !important;
        transform: none !important;
    }
}


/* ========================================================== */
/* FOOTER — FINISHED SITE PARITY                              */
/* ========================================================== */

.site-footer {
    background: linear-gradient(180deg, #24292e 0%, #22272c 100%);
    border-top: 1px solid rgba(222, 227, 230, .085);
    box-shadow: none;
}

.site-footer .site-footer__main {
    grid-template-columns:
        minmax(250px, 1.28fr)
        minmax(160px, .88fr)
        minmax(170px, .92fr)
        minmax(220px, 1fr);
    align-items: start;
    gap: clamp(36px, 4.2vw, 76px);
    padding: clamp(72px, 6vw, 98px) 0 clamp(62px, 5vw, 82px);
}

.site-footer .site-footer__brand {
    grid-column: auto;
    max-width: 350px;
    margin: 0;
    justify-self: start;
    text-align: left;
}

.site-footer .site-footer__logo {
    font-size: clamp(29px, 1.75vw, 33px);
    line-height: 1;
    letter-spacing: 1.1px;
}

.site-footer .site-footer__logo-smart { color: #9aaebd; }
.site-footer .site-footer__logo-repair { color: #ecebe7; }

.site-footer .site-footer__description {
    max-width: 34ch;
    margin: 24px 0 0;
    font-family: 'Phone Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 400;
    line-height: 1.72;
    letter-spacing: .002em;
    color: #aeb4b4;
    text-align: left;
}

.site-footer .site-footer__heading {
    position: relative;
    margin: 2px 0 22px;
    padding-bottom: 14px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: .115em;
    color: #cbd0d1;
}

.site-footer .site-footer__heading::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 28px;
    height: 1px;
    background: #748da3;
    opacity: .72;
}

.site-footer .site-footer__links {
    display: grid;
    gap: 3px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer .site-footer__links a,
.site-footer .site-footer__phone,
.site-footer .site-footer__email,
.site-footer .site-footer__direct a,
.site-footer .site-footer__location {
    font-family: 'Phone Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 14.5px;
    line-height: 1.45;
}

.site-footer .site-footer__links a {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 36px;
    padding: 5px 0;
    color: #b9bfbd;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__links a:hover,
.site-footer .site-footer__links a[aria-current='page'] {
    color: #ecebe7;
}

.site-footer .site-footer__contact-list {
    gap: 7px;
}

.site-footer .site-footer__location {
    color: #929a9a;
}

.site-footer .site-footer__phone,
.site-footer .site-footer__email {
    width: fit-content;
    color: #c3c7c5;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__phone:hover,
.site-footer .site-footer__email:hover {
    color: #ecebe7;
}

.site-footer .site-footer__direct {
    margin-top: 3px;
}

.site-footer .site-footer__direct a {
    color: #9aaebd;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__direct a:hover {
    color: #c7d6df;
}

.site-footer .site-footer__direct span {
    color: rgba(198, 200, 197, .34);
}

.site-footer .site-footer__bottom {
    min-height: 76px;
    padding: 24px 0 27px;
    border-top: 1px solid rgba(222, 227, 230, .10);
}

.site-footer .site-footer__copyright {
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 11.5px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .04em;
    color: #929a9a;
    text-align: left;
}

.site-footer .site-footer__credit {
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .075em;
    color: rgba(154, 174, 189, .78);
    text-align: right;
    flex-wrap: wrap;
}

.site-footer .site-footer__credit-name {
    color: inherit;
    text-decoration: none;
    transition: color 180ms ease;
}

.site-footer .site-footer__credit-name:hover {
    color: #c7d6df;
    text-decoration: none;
}

.site-footer .site-footer__credit-name:focus-visible {
    color: #d7e1e7;
}

.site-footer a:focus-visible {
    outline-color: #a1b6c5;
}

@media (max-width: 1199px) {
    .site-footer .site-footer__main {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 42px 32px;
    }

    .site-footer .site-footer__brand {
        grid-column: 1 / -1;
        max-width: 470px;
    }

    .site-footer .site-footer__description {
        max-width: 46ch;
    }

    .site-footer .site-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 9px;
    }

    .site-footer .site-footer__credit {
        text-align: left;
        justify-content: flex-start;
    }
}

@media (max-width: 767px) {
    .site-footer .site-footer__container {
        width: calc(100% - 40px);
    }

    .site-footer .site-footer__main {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 38px 24px;
        padding: 60px 0 44px;
    }

    .site-footer .site-footer__brand {
        grid-column: 1 / -1;
    }

    .site-footer .site-footer__contact {
        grid-column: 1 / -1;
        padding-top: 30px;
        border-top: 1px solid rgba(222, 227, 230, .075);
    }
}

@media (max-width: 520px) {
    .site-footer .site-footer__main {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 56px 0 40px;
    }

    .site-footer .site-footer__brand,
    .site-footer .site-footer__contact {
        grid-column: auto;
    }

    .site-footer .site-footer__contact {
        padding-top: 32px;
    }

    .site-footer .site-footer__bottom {
        padding: 22px 0 24px;
    }

    .site-footer .site-footer__copyright,
    .site-footer .site-footer__credit {
        width: 100%;
    }
}

/* ========================================================== */
/* FINAL FULL-PAGE QA — TYPOGRAPHY INHERITANCE CLEANUP       */
/* ========================================================== */

/* Prevent retired Dosis inheritance from surviving underneath
   the finished navigation / CTA / footer typography. */
.mobile-menu__nav a,
.phone-pricing__next .smartrepair-action {
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
}

.site-footer .site-footer__direct {
    font-family: 'Phone Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
}

/* ========================================================== */
/* FOOTER CONTACT PARITY — LARGE PHONE NUMBER                 */
/* Matches the approved homepage/news footer contact hierarchy. */
/* ========================================================== */
.site-footer .site-footer__phone {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 40px;
    margin: 0;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: .025em;
    color: #ecebe7;
    text-decoration: none;
    transition: color 170ms ease;
}

@media (max-width: 680px) {
    .site-footer .site-footer__phone {
        min-height: 44px;
    }
}


/* ========================================================== */
/* FOOTER CONTACT BLOCK — CROSS-PAGE PARITY — 2026-10-04     */
/* Matches the approved homepage/news contact hierarchy.      */
/* ========================================================== */
.site-footer .site-footer__location {
    font-family: 'Phone Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 400;
    line-height: 1.65;
    color: #9ea4a3;
}
.site-footer .site-footer__direct {
    display: flex;
    align-items: center;
    gap: 17px;
    margin: 0;
    font-family: inherit;
}
.site-footer .site-footer__direct span { display: none; }
.site-footer .site-footer__direct a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    font-family: 'Barlow Semi Condensed', Arial, sans-serif;
    font-size: 15.5px;
    font-weight: 500;
    line-height: 1.45;
    letter-spacing: .025em;
    color: #9aaebd;
}
.site-footer .site-footer__email {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 36px;
    margin: 0;
    font-family: 'Phone Adobe Clean Regular', 'AdobeClean-Regular', Arial, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.5;
    color: #c0c5c3;
    overflow-wrap: anywhere;
}

/* ========================================================== */
/* SITE-WIDE EYEBROW CLEANUP — NO DECORATIVE LEADING DASH     */
/* ========================================================== */
.phone-hero__eyebrow::before,
.phone-support .phone-section-eyebrow::before,
.phone-pricing .phone-section-eyebrow::before,
.phone-pricing__next-eyebrow::before {
    content: none !important;
    display: none !important;
}

