/* FOCUDIT product detail pages. Rules below the first block are copied from focudit.com
   (src/commerce-pages.css, .commerce-product) and scoped to body.fx-product-page. */
body.fx-product-page .commerce-product {font-family:Pretendard,"Noto Sans KR",sans-serif;color:#000;background:#fff}
body.fx-product-page .commerce-product * {box-sizing:border-box}
body.fx-product-page .commerce-product button {font-family:inherit;cursor:pointer}
body.fx-product-page .commerce-product button:disabled {cursor:default;opacity:.5}
body.fx-product-page .commerce-product button:focus-visible {outline:2px solid #2452ed;outline-offset:3px}
body.fx-product-page .commerce-product__story-media.commerce-product__story-media--phone {aspect-ratio:var(--media-aspect-ratio,1116 / 1710);min-height:0;border:0;background:#fff}
body.fx-product-page .commerce-product__policy-guide {margin:30px 0 0}
body.fx-product-page .commerce-product__policy-image {width:100%;height:auto;min-height:0;aspect-ratio:var(--media-aspect-ratio,4 / 3);border:0;background:#fff}
body.fx-product-page .commerce-product__policy-guide figcaption {margin-top:10px;color:#666;font-size:12px;line-height:1.6;text-align:center}
@media(max-width:1024px) {
  body.fx-product-page .commerce-product__story-media.commerce-product__story-media--phone {max-width:440px;margin-inline:auto}
  body.fx-product-page .commerce-product__policy-image {aspect-ratio:var(--media-mobile-aspect-ratio,2 / 3)}
  body.fx-product-page .commerce-product__policy-guide {margin-top:24px}
}
body.fx-product-page .commerce-product__lead {display:grid;grid-template-columns:minmax(0,580px) minmax(0,600px);gap:100px;width:calc(100% - 160px);max-width:1280px;margin:0 auto;padding-top:90px;padding-bottom:90px}
body.fx-product-page .commerce-product__main-image {position:relative;aspect-ratio:1;background:#f8f8fa;overflow:hidden}
body.fx-product-page .commerce-product__main-image .commerce-product__image {width:100%;height:100%;aspect-ratio:1;border:0;border-radius:0;background:#f8f8fa}
body.fx-product-page .commerce-product__main-image .has-image img {object-fit:contain;width:100%;height:100%;transform:scale(var(--photo-scale,1)) translateX(var(--photo-shift,0%))}
body.fx-product-page .commerce-product__gallery-prev, body.fx-product-page .commerce-product__gallery-next {position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:#222}
body.fx-product-page .commerce-product__gallery-prev {left:12px}
body.fx-product-page .commerce-product__gallery-next {right:12px}
body.fx-product-page .commerce-product__thumbnails {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:24px}
body.fx-product-page .commerce-product__thumbnails button {padding:0;border:0;background:#f8f8fa;aspect-ratio:1;overflow:hidden;opacity:.45;transition:opacity .18s ease}
body.fx-product-page .commerce-product__thumbnails button[aria-pressed=true], body.fx-product-page .commerce-product__thumbnails button:hover {opacity:1}
body.fx-product-page .commerce-product__thumbnails img {display:block;width:100%;height:100%;object-fit:contain}
body.fx-product-page .commerce-product__thumbnails span {font-size:11px;line-height:1.4}
body.fx-product-page .commerce-product__info {padding-top:6px;min-width:0}
body.fx-product-page .commerce-product__badge {display:inline-block;font-size:12px;line-height:22px;font-weight:700;padding:0 7px;color:#fff;background:#5183e5;border-radius:3px}
body.fx-product-page .commerce-product__info h1 {font-size:28px;line-height:30px;font-weight:400;margin:29px 0 0}
body.fx-product-page .commerce-product__specs {margin:39px 0 0;font-size:14px;line-height:22px}
body.fx-product-page .commerce-product__specs>div {display:grid;grid-template-columns:135px minmax(0,1fr);padding:11px 0;min-height:52px}
body.fx-product-page .commerce-product__specs dt {font-weight:400;color:#666}
body.fx-product-page .commerce-product__specs dd {margin:0}
body.fx-product-page .commerce-product__price-row dt {font-weight:700;color:#111}
body.fx-product-page .commerce-product__price-row dd strong {font-size:26px;font-weight:700;line-height:34px}
body.fx-product-page .commerce-product__secondary {display:block;font-size:13px;line-height:22px;color:#666;margin-top:7px}
body.fx-product-page .commerce-product__color {margin:59px 0 0;padding:0;border:0}
body.fx-product-page .commerce-product__color legend {font-size:16px;font-weight:700;line-height:20px;margin-bottom:30px;padding:0}
body.fx-product-page .commerce-product__color label {display:flex;flex-direction:column;align-items:center;gap:12px;width:72px;position:relative;font-size:14px}
body.fx-product-page .commerce-product__color input {position:absolute;opacity:0;width:1px;height:1px}
body.fx-product-page .commerce-product__swatch {width:32px;height:32px;background:#cfcfcf;border:3px solid #fff;outline:2px solid #222;outline-offset:3px;border-radius:50%}
body.fx-product-page .commerce-product__minimum {font-size:13px;line-height:20px;color:#777;margin:34px 0 17px}
body.fx-product-page .commerce-product__selected {border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;padding:24px 0}
body.fx-product-page .commerce-product__selected p {font-size:15px;line-height:20px;margin:0 0 22px}
body.fx-product-page .commerce-product__selected p span {display:block;font-size:14px;color:#7d7d7d;margin-top:4px}
body.fx-product-page .commerce-product__selected-controls {display:flex;align-items:center;justify-content:space-between}
body.fx-product-page .commerce-product__selected-controls>strong {font-size:17px;line-height:24px}
body.fx-product-page .commerce-quantity {display:inline-grid;grid-template-columns:30px 44px 30px;height:30px;align-items:stretch;font-size:15px}
body.fx-product-page .commerce-quantity button {padding:0;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e5e5;color:#000}
body.fx-product-page .commerce-quantity output {display:flex;align-items:center;justify-content:center;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}
body.fx-product-page .commerce-product__total {display:flex;justify-content:space-between;align-items:center;font-size:14px;line-height:22px;padding:25px 0}
body.fx-product-page .commerce-product__total em {font-style:normal;color:#757575}
body.fx-product-page .commerce-product__total strong {font-size:17px}
body.fx-product-page .commerce-product__total small {font-size:12px;font-weight:400;color:#777}
body.fx-product-page .commerce-product__buy-buttons {display:grid;grid-template-columns:2fr 1fr;gap:0}
body.fx-product-page .commerce-product__buy-buttons button {height:66px;font-size:18px;font-weight:600;line-height:18px;background:#1a1a1a;color:#fff;border:1px solid #1a1a1a;padding:0}
body.fx-product-page .commerce-product__buy-buttons button+button {background:#fff;color:#000;border-color:#d5d5d5}
body.fx-product-page .commerce-product__enrollment {font-size:12px;line-height:20px;color:#777;margin:17px 0 0}
body.fx-product-page .commerce-product__tabs {display:flex;justify-content:center;position:sticky;top:73px;z-index:10;gap:0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;background:#fff}
body.fx-product-page .commerce-product__tabs a {display:flex;align-items:center;justify-content:center;flex:1;max-width:250px;height:62px;font-size:15px;text-decoration:none;color:#333}
body.fx-product-page .commerce-product__tabs a:hover {color:#000;background:#f8f8f8}
body.fx-product-page .commerce-product__detail, body.fx-product-page .commerce-product__specification, body.fx-product-page .commerce-product__guide, body.fx-product-page .commerce-product__questions {max-width:1280px;width:calc(100% - 160px);margin:0 auto;scroll-margin-top:145px}
body.fx-product-page .commerce-product__detail-intro {text-align:center;padding:115px 0 105px}
body.fx-product-page .commerce-product__detail-intro>p:first-child {font-size:18px;margin:0 0 28px}
body.fx-product-page .commerce-product__detail-intro h2 {font-size:64px;font-weight:600;line-height:1.25;letter-spacing:-2px;margin:0 0 30px}
body.fx-product-page .commerce-product__detail-intro>p:last-child {font-size:20px;line-height:1.8;color:#666;margin:0}
body.fx-product-page .commerce-product__story {display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:90px;margin-bottom:100px}
body.fx-product-page .commerce-product__story.is-reversed>div:first-child {order:2}
body.fx-product-page .commerce-product__story-media {aspect-ratio:1.1;width:100%;height:auto;min-height:400px}
body.fx-product-page .commerce-product__story-placeholder {padding:50px;background:#eee;font-size:24px;min-height:400px}
body.fx-product-page .commerce-product__story-placeholder p {font-size:14px}
body.fx-product-page .commerce-product__story-copy>span {font-size:16px;color:#777}
body.fx-product-page .commerce-product__story-copy h3 {font-size:40px;line-height:1.3;font-weight:600;margin:20px 0}
body.fx-product-page .commerce-product__story-copy p {font-size:17px;line-height:1.9;color:#666;margin:0}
body.fx-product-page .commerce-product__specification {padding:35px 0 90px}
body.fx-product-page .commerce-product__specification h2, body.fx-product-page .commerce-product__questions h2 {font-size:20px;font-weight:600;margin:0 0 24px}
body.fx-product-page .commerce-product__specification dl {margin:0;border-top:1px solid #111}
body.fx-product-page .commerce-product__specification dl>div {display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid #eee;padding:19px 22px;font-size:14px;line-height:22px}
body.fx-product-page .commerce-product__specification dt {color:#777}
body.fx-product-page .commerce-product__specification dd {margin:0}
body.fx-product-page .commerce-product__guide {display:grid;grid-template-columns:1fr 1fr;gap:30px 80px;padding:0 0 90px}
body.fx-product-page .commerce-product__guide h2 {font-size:18px;line-height:24px;font-weight:400;margin:0;padding:25px 0}
body.fx-product-page .commerce-product__guide p {font-size:14px;line-height:24px;color:#555;margin:0}
body.fx-product-page .commerce-product__questions {padding-bottom:100px}
body.fx-product-page .commerce-product__questions details {border-top:1px solid #e5e5e5;padding:20px 0;font-size:14px}
body.fx-product-page .commerce-product__questions summary {list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
body.fx-product-page .commerce-product__questions summary::-webkit-details-marker {display:none}
body.fx-product-page .commerce-product__questions details p {line-height:1.9;color:#666;margin:20px 0 0}
body.fx-product-page .commerce-product__questions>a {display:inline-flex;align-items:center;gap:18px;margin-top:24px;font-size:14px;text-decoration:none;color:#111}
body.fx-product-page .commerce-cart .commerce-quantity {grid-template-columns:40px 43px 40px;height:40px;font-size:15px}
@media(max-width:1200px) and (min-width:1025px) {
  body.fx-product-page .commerce-product__lead {gap:55px;width:calc(100% - 100px)}
  body.fx-product-page .commerce-product__specs>div {grid-template-columns:100px 1fr}
}
@media(max-width:1024px) {
  body.fx-product-page .commerce-product__lead {display:flex;flex-direction:column;gap:0;width:92%;max-width:none;padding-top:93px;padding-bottom:50px}
  body.fx-product-page .commerce-product__thumbnails {gap:8px;margin-top:14px}
  body.fx-product-page .commerce-product__gallery {margin-bottom:12px}
  body.fx-product-page .commerce-product__info {padding-top:10px}
  body.fx-product-page .commerce-product__info h1 {font-size:24px;line-height:32.4px;margin-top:34px}
  body.fx-product-page .commerce-product__specs {margin-top:39px}
  body.fx-product-page .commerce-product__specs>div {grid-template-columns:94px 1fr;padding:11px 0;font-size:14px}
  body.fx-product-page .commerce-product__price-row dd strong {font-size:24px;line-height:34px}
  body.fx-product-page .commerce-product__secondary {font-size:12px;line-height:20px}
  body.fx-product-page .commerce-product__color {margin-top:52px}
  body.fx-product-page .commerce-product__color legend {margin-bottom:28px}
  body.fx-product-page .commerce-product__minimum {margin-top:35px}
  body.fx-product-page .commerce-product__buy-buttons button {height:56px;font-size:17px}
  body.fx-product-page .commerce-product__total {font-size:14px;flex-wrap:wrap;gap:12px}
  body.fx-product-page .commerce-product__tabs {top:73px}
  body.fx-product-page .commerce-product__tabs a {height:50px;font-size:13px}
  body.fx-product-page .commerce-product__detail, body.fx-product-page .commerce-product__specification, body.fx-product-page .commerce-product__guide, body.fx-product-page .commerce-product__questions {width:92%;scroll-margin-top:125px}
  body.fx-product-page .commerce-product__detail-intro {padding:70px 0}
  body.fx-product-page .commerce-product__detail-intro>p:first-child {font-size:14px;margin-bottom:20px}
  body.fx-product-page .commerce-product__detail-intro h2 {font-size:40px;letter-spacing:-1.4px;margin-bottom:22px}
  body.fx-product-page .commerce-product__detail-intro>p:last-child {font-size:16px}
  body.fx-product-page .commerce-product__story {display:flex;flex-direction:column;gap:30px;margin-bottom:70px}
  body.fx-product-page .commerce-product__story>div {width:100%}
  body.fx-product-page .commerce-product__story.is-reversed>div:first-child {order:0}
  body.fx-product-page .commerce-product__story-media {min-height:300px;aspect-ratio:1}
  body.fx-product-page .commerce-product__story-copy h3 {font-size:28px;margin:13px 0 20px}
  body.fx-product-page .commerce-product__story-copy p {font-size:15px;line-height:1.8}
  body.fx-product-page .commerce-product__specification {padding:20px 0 60px}
  body.fx-product-page .commerce-product__specification dl>div {grid-template-columns:100px 1fr;padding:16px 12px;font-size:13px}
  body.fx-product-page .commerce-product__guide {grid-template-columns:1fr;gap:20px;padding-bottom:60px}
  body.fx-product-page .commerce-product__guide h2 {font-size:16px;padding:15px 0}
  body.fx-product-page .commerce-product__guide p {font-size:13px;line-height:22px}
  body.fx-product-page .commerce-product__questions {padding-bottom:65px}
  body.fx-product-page .commerce-product__questions h2 {font-size:18px}
  body.fx-product-page .commerce-product__questions details {font-size:13px}
}
@media(max-width:1024px) {
  body.fx-product-page .commerce-cart .commerce-quantity {grid-template-columns:40px 43px 40px;height:40px}
}
body.fx-product-page .commerce-product__concept-note, body.fx-product-page .commerce-product__launch-note { margin: 14px 0 20px; color: #515660; font-size: 14px; line-height: 1.75; overflow-wrap: anywhere; }
body.fx-product-page .commerce-product__concept-note { padding: 0 18px; text-align: center; }
body.fx-product-page .commerce-product__launch-note { padding: 16px 18px; border-radius: 10px; background: #f4f5f8; }
body.fx-product-page .commerce-product__enrollment a { text-decoration: underline; text-underline-offset: 3px; }
body.fx-product-page .commerce-product__use-cases { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; width: min(1080px, 88%); margin: 0 auto 70px; text-align: left; }
body.fx-product-page .commerce-product__use-cases article { padding: 28px; border: 1px solid #d9dde5; border-radius: 16px; background: #f5f6f8; }
body.fx-product-page .commerce-product__use-cases h3 { margin: 0 0 14px; font-size: 22px; line-height: 1.5; }
body.fx-product-page .commerce-product__use-cases p { margin: 0; color: #515660; font-size: 16px; line-height: 1.8; }
@media (max-width: 760px) {
  body.fx-product-page .commerce-product__use-cases { grid-template-columns: 1fr; gap: 18px; margin-bottom: 44px; }
  body.fx-product-page .commerce-product__use-cases article { padding: 22px; }
  body.fx-product-page .commerce-product__use-cases h3 { font-size: 20px; }
  body.fx-product-page .commerce-product__use-cases p { font-size: 15px; }
}

/* Local additions: static images, link buttons and option notes */
body.fx-product-page main.commerce-product { padding-top: 0; }
body.fx-product-page .commerce-product h1, body.fx-product-page .commerce-product h2, body.fx-product-page .commerce-product h3 { color: #111; font-family: inherit; text-align: left; }
body.fx-product-page .commerce-product__detail-intro h2 { text-align: center; color: #000; }
body.fx-product-page .commerce-product__main-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
body.fx-product-page .commerce-product__main-image img.is-photo, body.fx-product-page .commerce-product__thumbnails img.is-photo { object-fit: cover; }
body.fx-product-page .commerce-product__main-image img[hidden] { display: none; }
body.fx-product-page .commerce-product__gallery-prev svg, body.fx-product-page .commerce-product__gallery-next svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.25; }
body.fx-product-page .commerce-product__price-row del { margin-right: 10px; color: #999; font-size: 15px; font-weight: 400; }
body.fx-product-page .commerce-product__option { margin: 44px 0 0; padding: 22px 0; border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; }
body.fx-product-page .commerce-product__option h2 { margin: 0 0 14px; font-size: 16px; font-weight: 700; line-height: 20px; }
body.fx-product-page .commerce-product__option ul { margin: 0; padding: 0; list-style: none; }
body.fx-product-page .commerce-product__option li { display: flex; justify-content: space-between; gap: 16px; padding: 6px 0; font-size: 14px; line-height: 22px; color: #333; }
body.fx-product-page .commerce-product__option li b { flex: 0 0 auto; font-weight: 600; color: #111; }
body.fx-product-page .commerce-product__total { border-bottom: 0; }
body.fx-product-page .commerce-product__buy-buttons { margin-top: 8px; }
body.fx-product-page .commerce-product__buy-buttons.is-single { grid-template-columns: 1fr; }
body.fx-product-page .commerce-product__buy-buttons a { display: flex; align-items: center; justify-content: center; height: 66px; font-size: 18px; font-weight: 600; line-height: 18px; text-decoration: none; background: #1a1a1a; color: #fff; border: 1px solid #1a1a1a; }
body.fx-product-page .commerce-product__buy-buttons a + a { background: #fff; color: #000; border-color: #d5d5d5; font-size: 16px; }
body.fx-product-page .commerce-product__buy-buttons a:hover { background: #333; }
body.fx-product-page .commerce-product__buy-buttons a + a:hover { background: #f8f8f8; }
body.fx-product-page .commerce-product__enrollment a, body.fx-product-page .commerce-product__guide a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
body.fx-product-page .commerce-product__guide a { display: inline-block; margin-top: 12px; font-size: 14px; }
body.fx-product-page .commerce-product__tabs { top: var(--fx-header, 73px); }
body.fx-product-page .commerce-product__story-media { display: block; object-fit: cover; border-radius: 0; background: #f8f8fa; }
body.fx-product-page .commerce-product__questions summary svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; transition: transform .2s ease; }
body.fx-product-page .commerce-product__questions details[open] summary svg { transform: rotate(180deg); }
body.fx-product-page .commerce-product__questions > a svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.5; }
@media (max-width: 1024px) {
  body.fx-product-page .commerce-product__lead { padding-top: 32px; }
  body.fx-product-page .commerce-product__buy-buttons a { height: 56px; font-size: 17px; }
  body.fx-product-page .commerce-product__option { margin-top: 36px; }
}
body.fx-product-page a { text-decoration: none; }
body.fx-product-page nav.shared-page-rail a, body.fx-product-page .fx-nav-card { text-decoration: none !important; }
body.fx-product-page .commerce-product__main-image .fx-image-slot { position: absolute; inset: 0; height: 100%; border: 0; background: #f2f2f3; }
body.fx-product-page .commerce-product__main-image .fx-image-slot[hidden] { display: none; }
body.fx-product-page .commerce-product__thumbnails .fx-image-slot { height: 100%; border: 0; }
body.fx-product-page .commerce-product__story-media.fx-image-slot { aspect-ratio: 1.1; min-height: 400px; border: 1px solid #dadbdd; }
@media (max-width: 1024px) { body.fx-product-page .commerce-product__story-media.fx-image-slot { aspect-ratio: 1; min-height: 300px; } }
body.fx-product-page .commerce-product__story-media.fx-image-slot { display: flex; }
/* Transparent product cut-outs in story sections are shown whole, not cropped */
body.fx-product-page img.commerce-product__story-media[src*="assets/focudit/kit"] { object-fit: contain; padding: 6%; background: #f8f8fa; }
body.fx-product-page img.commerce-product__story-media[src*="home-allowed-apps"] { object-fit: contain; padding: 6%; background: #f8f8fa; }
