:root{--color-primary:#002f52;--color-accent:#ed6340;--color-text:#1a1a1a;--color-text-muted:#5a6b7d;--color-bg:#f5f4f2;--color-surface:#fffefc;--shadow-soft:0 2px 8px #00000014;--shadow-hover:0 4px 16px #0000001f;--border-soft:1px solid #002f521a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body), sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}main{display:block}nav{background:var(--color-primary);z-index:1000;border-bottom:1px solid #fffefc1a;width:100%;animation:.6s ease-out slideDown;position:fixed;top:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.nav-container{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1400px;margin:0 auto;padding:1.25rem 3rem;display:flex}.logo{white-space:nowrap;align-items:center;gap:.9rem;display:inline-flex}.logo-mark{border-radius:8px;width:auto;max-width:min(260px,56vw);height:3.5rem}.logo-text{font-family:var(--font-display), serif;color:var(--color-surface);letter-spacing:-.02em;font-size:1.5rem;font-weight:400}.nav-links{align-items:center;gap:2.5rem;list-style:none;display:flex}.nav-links a{color:#fffefcbf;letter-spacing:.01em;font-size:.95rem;font-weight:500;transition:color .3s}.nav-links a:hover{color:var(--color-accent)}.nav-links a:focus-visible,.logo:focus-visible,.contact-method a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;color:var(--color-accent);border-radius:2px}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.hero{background:var(--color-primary);align-items:center;min-height:90vh;margin-top:80px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;background:repeating-linear-gradient(45deg,#0000,#0000 60px,#ed63400a 60px 62px);position:absolute;inset:0}.hero:after{content:"";z-index:0;background:radial-gradient(circle,#ed634026 0%,#ed634000 70%);border-radius:50%;width:32rem;height:32rem;position:absolute;top:12%;right:-8%}.hero-container{z-index:1;max-width:1400px;margin:0 auto;padding:0 3rem;animation:.8s ease-out .2s both fadeInUp;position:relative}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-label,.section-label,.contact-method h4{letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);font-size:.85rem;font-weight:700}.hero-label{margin-bottom:1.5rem;animation:.8s ease-out .3s both fadeInUp}.hero h1,.section-title,.expertise h2,.contact h2,.capability-card h3,.expertise-item h3{font-family:var(--font-display), serif;letter-spacing:-.02em}.hero h1{color:var(--color-surface);letter-spacing:-.02em;max-width:900px;margin-bottom:2rem;font-size:clamp(2rem,5vw,2.625rem);font-weight:400;line-height:1.2;animation:.8s ease-out .4s both fadeInUp}.hero-subtitle{color:#f5f4f2d9;max-width:620px;margin-bottom:3rem;font-size:1.125rem;font-weight:400;line-height:1.6;animation:.8s ease-out .5s both fadeInUp}.hero-cta{flex-wrap:wrap;gap:1.5rem;animation:.8s ease-out .6s both fadeInUp;display:flex}.btn{font-family:var(--font-body), sans-serif;cursor:pointer;letter-spacing:.02em;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s;display:inline-block}.btn-primary{background:var(--color-accent);color:var(--color-surface);box-shadow:0 4px 12px #ed63404d}.btn-primary:hover,.btn-primary:focus-visible{background:#d34b26;transform:translateY(-2px);box-shadow:0 6px 20px #ed63404d}.btn-secondary{color:var(--color-primary);border:2px solid var(--color-primary);background:0 0}.btn-secondary:hover,.btn-secondary:focus-visible{background:var(--color-primary);color:var(--color-surface);transform:translateY(-2px)}.hero .btn-secondary{color:var(--color-surface);border-color:#fffefc80}.hero .btn-secondary:hover,.hero .btn-secondary:focus-visible{background:var(--color-surface);border-color:var(--color-surface);color:var(--color-primary)}.capabilities,.expertise,.contact{padding:8rem 3rem}.capabilities{background:var(--color-bg)}.contact{background:var(--color-surface)}.section-header{text-align:center;max-width:1400px;margin:0 auto 5rem}.section-label{margin-bottom:1rem}.section-title,.expertise h2,.contact h2{color:var(--color-primary);font-size:clamp(2rem,4vw,2.625rem);font-weight:400}.capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;max-width:1400px;margin:0 auto;display:grid}.capability-card{background:var(--color-surface);border:var(--border-soft);box-shadow:var(--shadow-soft);border-radius:8px;padding:3.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.capability-card:before{content:"";background:var(--color-accent);transform-origin:bottom;width:4px;height:100%;transition:transform .4s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;transform:scaleY(0)}.capability-card:hover:before,.capability-card:focus-within:before{transform-origin:top;transform:scaleY(1)}.capability-card:hover,.capability-card:focus-within{border-color:var(--color-accent);box-shadow:var(--shadow-hover);transform:translate(8px)}.capability-number{font-family:var(--font-display), serif;color:var(--color-accent);opacity:.3;margin-bottom:1.5rem;font-size:3rem;font-weight:400}.capability-card h3{color:var(--color-primary);margin-bottom:1.5rem;font-size:1.5rem;font-weight:400}.capability-card p{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.capability-list{margin-top:2rem;list-style:none}.capability-list li{color:var(--color-text-muted);border-bottom:1px solid #0a254014;padding:.6rem 0;font-size:.95rem;font-weight:500}.capability-list li:before{content:"→";color:var(--color-accent);margin-right:1rem;font-weight:700}.expertise{background:var(--color-primary);color:var(--color-surface);position:relative;overflow:hidden}.expertise:before{content:"";background:radial-gradient(circle,#ffffff0d 0%,#0000 70%);width:600px;height:600px;position:absolute;top:0;right:-10%}.expertise-container{z-index:1;max-width:1400px;margin:0 auto;position:relative}.expertise h2,.expertise-title{color:var(--color-surface)}.expertise .section-header{margin-bottom:4rem}.expertise-grid{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.expertise-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;flex:300px;max-width:400px;padding:2.5rem;transition:all .3s}.expertise-item:hover{border-color:var(--color-accent);background:#ffffff14;transform:translateY(-5px)}.expertise-icon{color:var(--color-accent);margin-bottom:1.5rem}.expertise-item h3{margin-bottom:1rem;font-size:1.5rem;font-weight:400}.expertise-item p{color:#fffefcbf;font-size:.95rem;line-height:1.7}.contact-container{text-align:center;max-width:900px;margin:0 auto}.contact h2{margin-bottom:2rem}.contact p{color:var(--color-text-muted);margin-bottom:3rem;font-size:1.2rem;line-height:1.8}.contact-info{flex-wrap:wrap;justify-content:center;gap:4rem;margin-top:3rem;display:flex}.contact-method{text-align:left}.contact-method h4{margin-bottom:.5rem}.contact-method a{color:var(--color-primary);font-size:1.1rem;font-weight:600;transition:color .3s}footer{background:var(--color-primary);color:#fffefc99;text-align:center;border-top:1px solid #fffefc1a;padding:3rem}footer p{max-width:680px;margin:0 auto;font-size:.875rem;line-height:1.7}@media (max-width:768px){.capabilities-grid{grid-template-columns:1fr}.nav-container,.hero-container,.capabilities,.expertise,.contact{padding-left:1.5rem;padding-right:1.5rem}.nav-links{gap:1rem}.hero{min-height:auto;padding:4rem 0 5rem}.hero-cta{flex-direction:column}.btn{text-align:center;width:100%}.capability-card{padding:2.25rem}.contact-method{text-align:center}}@media (max-width:560px){.nav-container{flex-direction:column;align-items:flex-start}.logo-mark{height:2.9rem}.logo-text{font-size:1.35rem}.nav-links{flex-wrap:wrap;justify-content:space-between;gap:.75rem;width:100%}.contact-info{gap:1.5rem}}.notice-bar{color:#fffefcd9;background:#ed63401a;border:1px solid #ed634047;border-radius:4px;align-items:flex-start;gap:.75rem;max-width:760px;margin-bottom:2.5rem;padding:.875rem 1.25rem;font-size:.875rem;line-height:1.6;display:flex}.notice-icon{flex-shrink:0;line-height:1.6}.notice-bar p{color:inherit;margin:0}.notice-bar strong{color:var(--color-accent);font-weight:600}.how-we-work{background:var(--color-surface);padding:8rem 3rem}.how-we-work-container{max-width:1400px;margin:0 auto}.how-we-work-body{text-align:center;max-width:740px;margin:0 auto}.how-we-work-body p{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.how-we-work-callout{color:var(--color-primary);border-top:var(--border-soft);margin-top:.5rem;padding-top:2rem;font-size:1.1rem;font-style:italic;font-weight:500}.contact-disclaimer{color:var(--color-text-muted);max-width:480px;margin-top:2.5rem;margin-left:auto;margin-right:auto;font-size:.8rem;line-height:1.6}.contact-disclaimer a{color:var(--color-accent);text-decoration:underline}.footer-links{justify-content:center;align-items:center;gap:1.25rem;margin-top:1.25rem;font-size:.8rem;display:flex}.footer-links a{color:#fffefc8c;transition:color .3s}.footer-links a:hover{color:var(--color-accent)}.footer-links span{color:#fffefc40}.legal-header{background:var(--color-primary);border-bottom:1px solid #fffefc1a;padding:1.25rem 3rem}.legal-header-container{max-width:760px;margin:0 auto}.legal-back{color:#fffefcb3;font-size:.9rem;font-weight:500;font-family:var(--font-body), sans-serif;transition:color .3s}.legal-back:hover{color:var(--color-surface)}.legal-main{background:var(--color-surface);min-height:calc(100vh - 130px);padding:5rem 3rem}.legal-container{max-width:720px;margin:0 auto}.legal-container h1{font-family:var(--font-display), serif;color:var(--color-primary);letter-spacing:-.02em;margin-bottom:2.5rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:400;line-height:1.2}.legal-container h2{font-family:var(--font-display), serif;color:var(--color-primary);letter-spacing:-.01em;margin-top:2.5rem;margin-bottom:.875rem;font-size:1.375rem;font-weight:400}.legal-container p{color:var(--color-text-muted);margin-bottom:1.25rem;font-size:1rem;line-height:1.8}.legal-container ul{margin:0 0 1.5rem;list-style:none}.legal-container ul li{color:var(--color-text-muted);padding:.35rem 0 .35rem 1.5rem;font-size:1rem;line-height:1.8;position:relative}.legal-container ul li:before{content:"→";color:var(--color-accent);font-weight:600;position:absolute;left:0}.legal-container strong{color:var(--color-primary);font-weight:600}.legal-container a{color:var(--color-accent);text-decoration:underline}.legal-contact{border-top:var(--border-soft);color:var(--color-text-muted);margin-top:3rem;padding-top:2rem;font-size:1rem}:lang(ko){--font-display:var(--font-ko);--font-body:var(--font-ko)}:lang(zh){--font-display:var(--font-zh);--font-body:var(--font-zh)}.lang-switcher{position:relative}.lang-switcher__trigger{color:#fffefccc;font-family:var(--font-body), sans-serif;letter-spacing:.03em;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #fffefc40;border-radius:4px;align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.8rem;font-weight:500;transition:border-color .2s,color .2s;display:flex}.lang-switcher__trigger:hover{border-color:var(--color-accent);color:var(--color-surface)}.lang-switcher__caret{flex-shrink:0;transition:transform .2s}.lang-switcher__menu{background:var(--color-primary);z-index:100;border:1px solid #fffefc26;border-radius:4px;min-width:110px;list-style:none;display:none;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}.lang-switcher:hover .lang-switcher__menu,.lang-switcher:focus-within .lang-switcher__menu{display:block}.lang-switcher:hover .lang-switcher__caret,.lang-switcher:focus-within .lang-switcher__caret{transform:rotate(180deg)}.lang-switcher__option{color:#fffefcb3;white-space:nowrap;padding:.55rem 1rem;font-size:.85rem;font-weight:500;transition:background .15s,color .15s;display:block}.lang-switcher__option:hover{color:var(--color-surface);background:#fffefc14}.lang-switcher__option--active{color:var(--color-accent)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
