body.detail-warranty-page .warranty-main { --page-space: clamp(44px, 5.2vw, 88px); }body.detail-warranty-page .warranty-main h1, body.detail-warranty-page .warranty-main h2, body.detail-warranty-page .warranty-main h3, body.detail-warranty-page .warranty-main p, body.detail-warranty-page .warranty-main figure { margin: 0; }body.detail-warranty-page .warranty-main h1 { font-size: clamp(26px, min(3.6vw, 6.1dvh), 60px); font-weight: 600; line-height: 1.1; letter-spacing: -.045em; }body.detail-warranty-page .warranty-main h2 { font-size: clamp(30px, 2.75vw, 52px); font-weight: 500; line-height: 1.12; letter-spacing: -.045em; text-wrap: balance; }body.detail-warranty-page .warranty-main h3 { font-size: clamp(22px, 1.85vw, 34px); font-weight: 600; line-height: 1.3; letter-spacing: -.035em; }body.detail-warranty-page .warranty-main p { font-size: clamp(15px, 1.15vw, 20px); line-height: 1.6; }body.detail-warranty-page .warranty-content { width: 100%; max-width: 2020px; margin-inline: auto; }body.detail-warranty-page .warranty-hero { position: relative; isolation: isolate; overflow: clip; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); margin: 0 var(--gutter) var(--screen-bottom); min-height: clamp(560px, calc(100svh - var(--header-height) - var(--screen-bottom)), 920px); border-radius: 30px; background: var(--ink); color: #fff; }body.detail-warranty-page .warranty-hero-image { grid-column: 1; grid-row: 1; width: 100%; height: 100%; object-fit: cover; object-position: 35% 40%; }body.detail-warranty-page .warranty-hero-copy { grid-column: 2; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; gap: 36px; min-width: 0; padding: clamp(40px, 4.5vw, 80px) var(--content-inset) clamp(36px, 4vw, 64px); }body.detail-warranty-page .warranty-hero h1 span { display: block; }body.detail-warranty-page .warranty-main .warranty-intro { max-width: 40ch; margin-top: clamp(24px, 3vw, 48px); font-size: clamp(15px, 1.15vw, 20px); line-height: 1.6; letter-spacing: normal; }body.detail-warranty-page .warranty-hero-link { display: inline-flex; align-items: center; gap: 28px; min-height: 52px; padding-block: 10px; border-bottom: 1px solid #ffffff90; font-size: clamp(14px, 1vw, 17px); font-weight: 600; }body.detail-warranty-page .warranty-hero-link svg, body.detail-warranty-page .warranty-contact-links svg { flex: 0 0 auto; width: 24px; height: 24px; transition: transform .25s; }body.detail-warranty-page .warranty-hero-link:hover svg, body.detail-warranty-page .warranty-contact-links a:hover svg { transform: translate(3px, -3px); }body.detail-warranty-page .warranty-hero a:focus-visible { outline-color: #fff; }body.detail-warranty-page .warranty-section { padding: var(--page-space) calc(var(--gutter) + var(--content-inset)); }body.detail-warranty-page .warranty-preparation h2 { max-width: 21ch; margin-bottom: clamp(32px, 4vw, 64px); }body.detail-warranty-page .warranty-preparation-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: stretch; gap: clamp(36px, 5vw, 88px); }body.detail-warranty-page .warranty-photo { min-width: 0; overflow: clip; border-radius: 24px; background: var(--paper); }body.detail-warranty-page .warranty-photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.3,1); }body.detail-warranty-page .warranty-photo-workshop { min-height: 480px; }body.detail-warranty-page .warranty-photo-workshop img { object-position: 48% 50%; }body.detail-warranty-page .warranty-service-list { min-width: 0; display: grid; align-content: start; gap: 32px; }body.detail-warranty-page .warranty-service + .warranty-service { padding-top: 30px; border-top: 1px solid #23232322; }body.detail-warranty-page .warranty-service p { max-width: 56ch; margin-top: 18px; }body.detail-warranty-page .warranty-main .warranty-support { padding-top: 28px; border-top: 1px solid #23232322; color: #5a5a5a; }body.detail-warranty-page .warranty-surface { margin: 0 var(--gutter) var(--screen-bottom); padding: var(--page-space) var(--content-inset); border-radius: 30px; background: var(--paper); }body.detail-warranty-page .warranty-guarantee { margin-top: var(--screen-bottom); }body.detail-warranty-page .warranty-guarantee-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(36px, 5vw, 88px); }body.detail-warranty-page .warranty-guarantee h2 { max-width: 16ch; }body.detail-warranty-page .warranty-main .warranty-term { display: block; margin-top: 36px; color: #b83c00; font-size: clamp(32px, 3vw, 58px); font-weight: 500; line-height: 1.1; letter-spacing: -.055em; font-variant-numeric: lining-nums tabular-nums; }body.detail-warranty-page .warranty-term span { display: block; }body.detail-warranty-page .warranty-main .warranty-term-note { margin-top: 18px; color: #5a5a5a; }body.detail-warranty-page .warranty-copy { display: grid; align-content: start; gap: 24px; padding-top: 4px; max-width: 64ch; }body.detail-warranty-page .warranty-after { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); margin: 0 var(--gutter) var(--screen-bottom); overflow: clip; border-radius: 30px; background: var(--ink); color: #fff; }body.detail-warranty-page .warranty-after-copy { padding: var(--page-space) var(--content-inset); }body.detail-warranty-page .warranty-after h2 { max-width: 17ch; margin-bottom: 32px; font-size: clamp(26px, min(3.6vw, 6.1dvh), 60px); font-weight: 600; line-height: 1.1; letter-spacing: -.045em; }body.detail-warranty-page .warranty-after p + p { margin-top: 24px; color: #dedede; }body.detail-warranty-page .warranty-photo-detail { border-radius: 0; min-height: 520px; }body.detail-warranty-page .warranty-photo-detail img { object-position: 54% 50%; }body.detail-warranty-page .warranty-contact { background: var(--orange); color: #fff; scroll-margin-top: var(--screen-bottom); }body.detail-warranty-page .warranty-contact-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: center; gap: clamp(36px, 5vw, 88px); }body.detail-warranty-page .warranty-contact h2 { margin-bottom: 24px; }body.detail-warranty-page .warranty-contact p { max-width: 56ch; }body.detail-warranty-page .warranty-contact-links { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; min-width: 0; }body.detail-warranty-page .warranty-contact-links a { display: inline-flex; align-items: center; gap: 18px; min-height: 48px; font-size: clamp(17px, 1.4vw, 25px); font-weight: 500; line-height: normal; letter-spacing: -.025em; }body.detail-warranty-page .warranty-contact a:focus-visible { outline-color: #fff; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {body.detail-warranty-page .warranty-photo:hover img { transform: scale(1.025); } }
@media (max-width: 1000px) {body.detail-warranty-page .warranty-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }body.detail-warranty-page .warranty-hero-image { object-position: 28% 50%; }body.detail-warranty-page .warranty-preparation-layout { gap: 32px; }body.detail-warranty-page .warranty-photo-workshop { min-height: 550px; }
}
@media (max-width: 800px) {body.detail-warranty-page .warranty-preparation-layout, body.detail-warranty-page .warranty-guarantee-layout, body.detail-warranty-page .warranty-contact-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }body.detail-warranty-page .warranty-photo-workshop { min-height: 0; aspect-ratio: 3/2; }body.detail-warranty-page .warranty-guarantee h2 { max-width: 22ch; }body.detail-warranty-page .warranty-term span { display: inline; }body.detail-warranty-page .warranty-main .warranty-term { margin-top: 24px; font-size: clamp(34px, 6.5vw, 50px); }body.detail-warranty-page .warranty-after { grid-template-columns: minmax(0, 1fr); }body.detail-warranty-page .warranty-after h2 { max-width: 22ch; }body.detail-warranty-page .warranty-photo-detail { min-height: 0; aspect-ratio: 16/9; }
}
@media (max-width: 720px) {body.detail-warranty-page .warranty-main { --page-space: 36px; }body.detail-warranty-page .warranty-hero { display: flex; flex-direction: column; min-height: 0; border-radius: 22px; }body.detail-warranty-page .warranty-hero-image { position: static; width: 100%; height: auto; aspect-ratio: 3/2; object-position: center; }body.detail-warranty-page .warranty-hero-copy { padding: 28px var(--content-inset) 32px; gap: 24px; }body.detail-warranty-page .warranty-main h1, body.detail-warranty-page .warranty-after h2 { font-size: clamp(24px, min(5.7vw, 4.1dvh), 34px); }body.detail-warranty-page .warranty-hero h1 span { display: inline; }body.detail-warranty-page .warranty-main .warranty-intro { font-size: 15px; margin-top: 22px; max-width: 40ch; }body.detail-warranty-page .warranty-surface, body.detail-warranty-page .warranty-after { border-radius: 22px; }body.detail-warranty-page .warranty-section { padding-block: 36px 44px; }body.detail-warranty-page .warranty-photo { border-radius: 18px; }body.detail-warranty-page .warranty-photo-detail { border-radius: 0; }body.detail-warranty-page .warranty-after h2 { margin-bottom: 24px; }body.detail-warranty-page .warranty-service-list { gap: 26px; }body.detail-warranty-page .warranty-service + .warranty-service { padding-top: 24px; }body.detail-warranty-page .warranty-main .warranty-support { padding-top: 24px; }body.detail-warranty-page .warranty-contact-links a { gap: 12px; }body.detail-warranty-page .warranty-contact-links svg { width: 20px; height: 20px; }
}
@media (max-width: 480px) {body.detail-warranty-page .warranty-main .warranty-term { font-size: clamp(29px, 8.5vw, 38px); } }
@media (max-height: 480px) and (min-aspect-ratio: 1/1) {body.detail-warranty-page .warranty-main h1, body.detail-warranty-page .warranty-after h2 { font-size: clamp(23px, 3.4vw, 30px); }body.detail-warranty-page .warranty-main p, body.detail-warranty-page .warranty-main .warranty-intro { font-size: 14px; }
}
@media (prefers-reduced-motion: no-preference) {html:has(body.detail-warranty-page) { scroll-behavior: smooth; }body.detail-warranty-page .warranty-hero-copy h1 { animation: warranty-in .65s cubic-bezier(.2,.7,.3,1) both; }body.detail-warranty-page .warranty-intro, body.detail-warranty-page .warranty-hero-link { animation: warranty-in .65s .1s cubic-bezier(.2,.7,.3,1) both; }
  @keyframes warranty-in { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
}
@media (prefers-reduced-motion: reduce) {body.detail-warranty-page .warranty-photo img, body.detail-warranty-page .warranty-contact-links svg, body.detail-warranty-page .warranty-hero-link svg { transition: none; } }
