@charset "UTF-8";
:root{color-scheme:light;--font-en:"Inter";--font-ko:"Noto Sans KR";--font-zh:"Noto Sans TC";--gutter:1.5vw;--gap:1vw;font-family:var(--font-en),var(--font-ko),var(--font-zh),sans-serif;font-synthesis:none;color:#000;background:#fff}
:lang(zh){font-family:var(--font-en),var(--font-zh),var(--font-ko),sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;border:0;padding:0;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #369aff;outline-offset:6px}button:hover,a:hover{opacity:.8}[hidden]{display:none!important}main:focus{outline:none}img,svg{display:block;max-width:100%}::selection{background:#b7b7b7;color:#000}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:100;top:-100px;left:20px;background:#fff;color:#000;padding:16px}.skip:focus{top:20px}
.header{position:fixed;top:0;left:0;right:0;z-index:5;padding:var(--gutter);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;pointer-events:none;color:#fff;mix-blend-mode:difference;font-size:clamp(24px,3.5vw,60px);font-weight:800;line-height:1.05;letter-spacing:-.045em}.header>*{pointer-events:auto}.menu-button{justify-self:start;background:none;color:inherit;font-weight:800;letter-spacing:inherit}.brand{justify-self:center;width:10.4vw;min-width:65px;max-width:180px}.brand svg{width:100%;height:auto}.clock{justify-self:end;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:inherit;letter-spacing:-.05em}
.hero{height:100svh;min-height:480px;background:#000;position:relative;overflow:hidden;color:#fff}.logo-stage{position:absolute;inset:0;isolation:isolate}.logo-stage canvas{display:block;position:absolute;inset:0;width:100%;height:100%}.logo-glow{position:absolute;left:50%;top:50%;width:45vw;height:45vw;max-width:760px;max-height:760px;min-width:320px;min-height:320px;transform:translate(-50%,-50%);background:radial-gradient(ellipse,rgba(180,180,190,.075) 0%,rgba(0,0,0,0) 65%);z-index:-1}.logo-fallback{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg);width:34vw;max-width:520px;mix-blend-mode:screen}.logo-stage[data-rendered] .logo-fallback{visibility:hidden}
.archive{padding:var(--gutter);background:#fff}.hero:not([hidden])+.archive{padding-top:clamp(40px,5vw,80px)}.image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}.work{aspect-ratio:1;position:relative;display:block;overflow:hidden;border-radius:1vw;background:#fff}.work:hover{opacity:1}.work:active{opacity:.7}.work>img{width:100%;height:100%;object-fit:cover;object-position:center}.work>img.phone-image{object-position:center top}.tile-brand,.tile-newstage{background:#000}.tile-home,.tile-mascot,.tile-timetable,.tile-community{background:#fff}
.information{padding:calc(10.5vw + 4px) var(--gutter) 10vw;min-height:calc(100svh - 76px)}.info-row{display:grid;grid-template-columns:1fr 2fr;gap:var(--gap);margin-bottom:6vw}.info-row:last-child{margin-bottom:0}.info-row h1,.info-row h2{font-size:clamp(28px,3.5vw,60px);line-height:1.05;letter-spacing:-.045em;font-weight:800;margin:0}.info-copy{font-size:clamp(16px,1.5vw,24px);font-weight:700;line-height:1.35;letter-spacing:-.045em}.info-copy p{margin:0 0 1.1em}.info-copy p:last-child{margin-bottom:0}.info-copy .company-status{font-size:14px;font-weight:500;color:#666;margin-top:1.5em}.info-copy a{text-decoration:underline;text-underline-offset:3px}.download-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.service-link{display:inline-block;margin-bottom:12px}.about-service{width:24%;min-width:200px;aspect-ratio:4/5;border-radius:14px;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.about-service img{width:100%;height:auto}.about-service>span{position:absolute;bottom:18px;padding:7px 23px;background:#5f5f5f;color:#fff;border-radius:99px;font-size:12px;font-weight:500}.service-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}.service-gallery>div{border-radius:12px;overflow:hidden;aspect-ratio:4/5;display:flex;justify-content:center;padding:22px 10px 0}.service-gallery img{width:90%;height:auto;object-fit:cover;object-position:top}.archive-only .archive{padding-top:calc(10.5vw + 4px);min-height:calc(100svh - 76px)}
.footer{background:#fff;color:#000;overflow:hidden;padding:18px 0 28px;font-size:clamp(14px,1.5vw,24px);line-height:1.4;font-weight:800;letter-spacing:-.045em}.marquee{display:flex;width:max-content;animation:marquee 32s linear infinite}.marquee-group{display:flex;flex-shrink:0;gap:7vw;padding-right:7vw}.marquee-group>span{white-space:nowrap}.footer:hover .marquee,.motion-paused .marquee{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}
.menu-area{position:relative;justify-self:start;display:flex;align-items:center}.dropdown-menu{position:fixed;z-index:6;top:calc(var(--gutter) + clamp(65px,10.4vw,180px)*590/810 + 12px);left:var(--gutter);padding:14px 0;background:transparent;color:#fff;mix-blend-mode:difference;display:flex;flex-direction:column;align-items:flex-start;gap:12px;white-space:nowrap;font-size:clamp(16px,1.7vw,28px);font-weight:800;line-height:1.2;letter-spacing:-.025em}.dropdown-menu a{padding:4px 0}.dropdown-menu a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:600px){.dropdown-menu{top:57px}:root{--gutter:12.3px;--gap:8.2px}.header{font-size:16px;padding-top:14px;line-height:1.1;letter-spacing:-.025em}.brand{width:42px;min-width:0}.hero{min-height:520px}.logo-fallback{width:72vw}.logo-glow{width:100vw;height:100vw}.work{border-radius:13px}.information{padding-top:95px;padding-bottom:60px;min-height:calc(100svh - 65px)}.info-row{grid-template-columns:1fr;gap:24px;margin-bottom:48px}.info-row h1,.info-row h2{font-size:32px}.info-copy{font-size:16px;line-height:1.5;letter-spacing:-.03em}.about-service{width:65%;min-width:0}.service-gallery{gap:8px}.service-gallery>div{padding:12px 3px 0;border-radius:8px}.service-gallery img{width:100%}.archive-only .archive{padding-top:90px}.footer{font-size:14px;padding:20px 0 28px}.marquee-group{gap:48px;padding-right:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee{animation:none}}

/* About: an editorial introduction with the supplied brand artwork. */
.about-page{padding-top:clamp(120px,12vw,190px);padding-bottom:clamp(48px,7vw,112px)}
.about-intro{display:grid;grid-template-columns:1fr 2fr;gap:var(--gap);padding-bottom:clamp(36px,5vw,80px)}
.about-intro h1{margin:0;font-size:clamp(32px,5vw,80px);font-weight:800;line-height:1;letter-spacing:-.055em}
.about-statement{margin:0 0 28px;font-size:clamp(28px,3.3vw,52px);font-weight:700;line-height:1.3;letter-spacing:-.055em;word-break:keep-all}
.about-description{margin:0;font-size:clamp(16px,1.3vw,21px);line-height:1.7;letter-spacing:-.035em;word-break:keep-all}
.about-company{display:flex;flex-wrap:wrap;gap:8px 16px;margin:24px 0 0;font-size:14px;line-height:1.5;font-weight:500}.about-company span{color:#666}
.about-brand-image{aspect-ratio:3/1;overflow:hidden;border-radius:clamp(13px,1vw,20px);background:#000;margin-bottom:clamp(44px,6vw,96px)}
.about-brand-image img{display:block;width:100%;height:100%;object-fit:cover}
.about-detail-row{display:grid;grid-template-columns:1fr 2fr;gap:var(--gap);border-top:1px solid #c9c9c9;padding-top:28px;margin-top:clamp(40px,5vw,80px)}
.about-label{margin:0;font-size:clamp(14px,1.4vw,22px);font-weight:800;line-height:1.25;letter-spacing:-.025em}
.about-service-feature{display:grid;grid-template-columns:clamp(88px,8vw,120px) minmax(0,1fr);column-gap:clamp(20px,3vw,48px);row-gap:16px;align-items:start}
.about-service-image{grid-column:1;grid-row:1 / 3;aspect-ratio:1;overflow:hidden;border-radius:clamp(13px,1vw,20px);background:#fff;border:1px solid #eee}.about-service-image img{width:100%;height:100%;object-fit:contain}
.about-service-title{grid-column:2;align-self:center;font-size:clamp(24px,2.5vw,40px);line-height:1.15;margin:0;letter-spacing:-.04em;font-weight:800}
.about-service-copy{grid-column:2;min-width:0}.about-service-copy p{font-size:16px;line-height:1.6;letter-spacing:-.035em;word-break:keep-all;margin:0 0 20px}.about-service-copy .about-service-lead{font-size:clamp(18px,1.6vw,26px);font-weight:700;line-height:1.45}
.about-service-cta{display:inline-flex;align-items:center;gap:24px;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:6px;margin-top:12px}.about-service-cta:hover{opacity:.6}
.about-social-row{align-items:center}.about-social-link{display:flex;justify-content:space-between;align-items:center;gap:20px;min-width:0;font-size:clamp(24px,4vw,64px);font-weight:800;letter-spacing:-.05em;line-height:1.3}.about-social-link>span:first-child{overflow-wrap:anywhere}
@media(max-width:760px){.about-intro{grid-template-columns:1fr;gap:28px}.about-intro h1{font-size:36px}.about-statement{font-size:32px;margin-bottom:20px}.about-brand-image{aspect-ratio:1.6/1}.about-detail-row{grid-template-columns:1fr;gap:24px;padding-top:20px}.about-service-feature{grid-template-columns:80px minmax(0,1fr);gap:20px}.about-service-title{font-size:26px}.about-service-copy p{font-size:16px}.about-service-copy .about-service-lead{font-size:18px}.about-service-cta{margin-top:0}.about-social-link{font-size:clamp(26px,7vw,48px)}}
@media(max-width:400px){.about-service-feature{grid-template-columns:64px minmax(0,1fr);gap:16px}.about-statement{font-size:29px}}

/* Keep Korean phrases together and give mobile body copy the full row. */
.copy-line{display:block;text-wrap:pretty;word-break:keep-all;overflow-wrap:break-word}
.about-description{max-width:42rem;line-height:1.8;letter-spacing:-.025em}.about-description .copy-line+.copy-line{margin-top:4px}
.about-service-copy p{line-height:1.75;letter-spacing:-.025em;margin-bottom:20px;text-wrap:pretty}.about-service-copy .about-service-lead{line-height:1.55;letter-spacing:-.035em}.about-service-description{max-width:34rem}.about-service-description .copy-line+.copy-line{margin-top:4px}
.info-copy p{word-break:keep-all;text-wrap:pretty;overflow-wrap:break-word}
@media(max-width:760px){.about-service-feature{grid-template-columns:64px minmax(0,1fr);column-gap:16px;row-gap:24px}.about-service-image{grid-row:1}.about-service-title{align-self:center}.about-service-copy{grid-column:1 / -1}.about-service-copy .about-service-lead{font-size:20px}.about-service-cta{margin-top:4px}.about-service-description{max-width:32rem}}

.menu-backdrop{position:fixed;inset:0;z-index:4;background:transparent;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.product-page{padding-top:clamp(120px,12vw,190px);padding-bottom:clamp(48px,7vw,112px)}
.product-intro,.product-detail-row{display:grid;grid-template-columns:1fr 2fr;gap:var(--gap)}
.product-brand{display:flex;align-items:center;gap:16px;align-self:start}.product-brand img{width:64px;height:64px;border:1px solid #eee;border-radius:14px}.product-brand h1{margin:0;font-size:clamp(24px,2.5vw,40px);line-height:1;letter-spacing:-.045em;font-weight:800}
.product-statement{font-size:clamp(30px,3.5vw,56px);line-height:1.2;font-weight:800;letter-spacing:-.045em;margin:0 0 28px}.product-summary{font-size:clamp(16px,1.3vw,21px);line-height:1.8;letter-spacing:-.025em;margin:0}
.product-downloads{display:flex;flex-wrap:wrap;gap:16px 32px;margin-top:32px}.product-downloads a{display:inline-flex;align-items:center;gap:16px;font-size:14px;line-height:1.5;font-weight:800;border-bottom:1px solid currentColor;padding:8px 0}
.product-screens{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin:clamp(40px,5vw,80px) 0 clamp(48px,6vw,96px);padding:clamp(20px,4vw,64px) clamp(8px,5vw,80px) clamp(24px,3vw,48px);border-radius:clamp(13px,1vw,20px)}
.product-screens figure{margin:0;min-width:0;display:flex;flex-direction:column;align-items:center}.product-screens img{display:block;width:100%;max-width:330px;height:auto;object-fit:contain;border:clamp(2px,.3vw,4px) solid #171717;border-radius:14.5% / 6.67%}.product-screens figcaption{margin-top:16px;font-size:16px;font-weight:700;line-height:1.5;letter-spacing:-.025em;text-align:center;word-break:keep-all}
.product-detail-row{border-top:1px solid #c9c9c9;padding-top:28px;margin-top:clamp(40px,5vw,80px)}.product-label{font-size:clamp(14px,1.4vw,22px);font-weight:800;line-height:1.25;letter-spacing:-.025em;margin:0}
.product-story h3{font-size:clamp(24px,2.5vw,40px);line-height:1.4;letter-spacing:-.045em;margin:0 0 24px}.product-story p{font-size:16px;line-height:1.85;letter-spacing:-.025em;margin:0}
.product-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 40px}.product-features h3{word-break:keep-all;text-wrap:pretty;overflow-wrap:break-word;font-size:clamp(20px,1.7vw,28px);line-height:1.35;letter-spacing:-.035em;margin:0 0 12px}.product-features p{font-size:16px;line-height:1.8;letter-spacing:-.025em;word-break:keep-all;text-wrap:pretty;overflow-wrap:break-word;margin:0;max-width:26em}
@media(max-width:760px){.product-intro,.product-detail-row{grid-template-columns:1fr;gap:28px}.product-brand img{width:56px;height:56px}.product-brand h1{font-size:30px}.product-statement{font-size:36px;margin-bottom:24px}.product-detail-row{padding-top:20px}.product-screens figcaption{font-size:14px}.product-features{gap:28px 24px}}
@media(max-width:480px){.product-features{grid-template-columns:1fr;gap:28px}.product-features article+article{border-top:1px solid #e7e7e7;padding-top:24px}.product-statement{font-size:32px}.product-screens{padding-inline:4px}.product-screens figcaption{font-size:13px}.product-story p .copy-line{display:inline}.product-story p .copy-line+.copy-line::before{content:' '}}

.product-features article{display:flex;flex-direction:column;min-width:0}.product-features article p{margin-bottom:24px}.product-feature-photo{position:relative;aspect-ratio:4/3;overflow:hidden;margin:auto 0 0;border:1px solid #e7e7e7;border-radius:12px}.product-feature-photo img{position:absolute;display:block;max-width:none;width:var(--photo-width);height:auto;left:var(--photo-left);top:var(--photo-top)}
