/* Final shared navigation, language and form finishing. */
.wm-honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}.wm-consent{display:flex!important;gap:12px;align-items:flex-start;margin:24px 0 0!important;font-size:13px!important;line-height:1.7!important}.wm-consent input{width:20px!important;height:20px!important;min-height:20px!important;flex:0 0 20px;margin:2px 0 0!important;accent-color:#2c4164}.wm-consent span{font-size:inherit!important;color:#354860!important}.wm-consent a{text-underline-offset:3px}.project-form .form-status{min-height:1.7em}.project-review[hidden]{display:none}.project-form[hidden]{display:none}.project-form .form-bottom{margin-top:28px}.wm-privacy{max-width:900px;padding-block:80px 110px}.wm-privacy h1{font-size:clamp(36px,6vw,66px);line-height:1.15;letter-spacing:-.045em}.wm-privacy-intro{font-size:21px;line-height:1.75;margin:32px 0 60px}.wm-privacy section{border-top:1px solid #243b5525;padding:30px 0}.wm-privacy h2{font-size:24px;margin:0 0 16px}.wm-privacy section p{font-size:17px;line-height:1.9;color:#4c5f73}.wm-privacy .button{margin-top:32px}html[lang=en] .hero h1{font-size:clamp(42px,5.7vw,88px)}html[lang=en] .hero-line{white-space:normal}html[lang=en] .home-service-card h3{font-size:clamp(24px,2.5vw,36px)}html[lang=en] .home-package h2{font-size:clamp(36px,4.6vw,66px)}html[lang=en] .sl-hero h1{font-size:clamp(42px,5vw,76px)}html[lang=en] .sl-kicker{letter-spacing:.02em}html[lang=en] .lp-hero h1{letter-spacing:-.05em}html[lang=en] .lp-consultation-options{align-items:stretch}.wm-section-nav a{min-height:44px}.wm-language{min-width:44px}.wm-menu-toggle{min-width:44px;width:44px}@media(max-width:600px){.wm-privacy{padding-block:50px 75px}.wm-privacy-intro{font-size:18px;margin-bottom:40px}.wm-privacy h2{font-size:21px}.wm-privacy section p{font-size:16px}html[lang=en] .hero h1{font-size:clamp(38px,9.3vw,58px)}html[lang=en] .sl-hero h1{font-size:clamp(38px,9vw,52px)}.wm-consent{font-size:12px!important}.wm-nav-shell{gap:5px}.wm-nav-actions{gap:0}.wm-contact{padding-inline:12px}.wm-brand img{width:130px}}

.hero-aside>.hero-support{margin:22px 0 0!important;font-size:13px!important;line-height:1.75!important}.hero-actions{margin-bottom:0}.hero-aside .hero-actions{gap:12px}html[lang=en] body{word-break:normal;overflow-wrap:break-word}html[lang=en] .situation h3{line-height:1.4}

/* Keep English cards aligned when service names wrap differently. */
@media(min-width:901px){html[lang=en] .home-service-card h3{min-height:2.8em}}

/* Both languages share the same composition; English wraps by phrase. */
html[lang=en] :is(.section-head h2,.sl-section h2,.lp-section-heading h2){text-wrap:balance}
html[lang=en] .lp-page .lp-process .lp-number{display:none}
html[lang=en] .lp-page .lp-process li{grid-template-columns:minmax(0,1fr)}
html[lang=en] .lp-page .lp-process :is(h3,p){grid-column:1}
html[lang=en] .lp-page .lp-proof-tabs button{white-space:normal;text-wrap:balance;overflow-wrap:normal;min-height:56px}
html[lang=en] .lp-page .lp-map-node :is(strong,span){white-space:normal;overflow-wrap:anywhere;max-width:100%}
html[lang=en] .hero h1{font-size:clamp(44px,5.3vw,78px);max-width:1240px;line-height:1.12;letter-spacing:-.055em;white-space:normal}
html[lang=en] .hero-line{width:fit-content;max-width:100%;text-wrap:balance}
html[lang=en] .hero-aside>p{word-break:normal;overflow-wrap:normal;max-width:1040px;text-wrap:pretty}
html[lang=en] .hero-aside{max-width:1080px}
html[lang=en] .hero-aside>.hero-support{max-width:660px}
html[lang=en] .home-package h2{font-size:clamp(34px,3.6vw,52px);line-height:1.12;white-space:normal;letter-spacing:-.045em;text-wrap:balance}
html[lang=en] .home-package h2 span{display:block;font-size:17px;line-height:1.5;letter-spacing:.04em;margin:0 0 18px;color:#bac9dd}
html[lang=en] .home-package p{word-break:normal;overflow-wrap:normal;max-width:34ch}
body[data-locale] .home-service-card p{flex:1}
body[data-locale] .home-service-card .button{flex-shrink:0}
/* Hover never shifts a reading column, and large image layers only fade. */
.situation:hover{padding-left:0}
.creative-featured-card{backface-visibility:hidden}
@media(max-width:900px){html[lang=en] .hero h1{font-size:clamp(42px,6.6vw,66px)}html[lang=en] .home-service-card h3{min-height:0}}
@media(max-width:600px){html[lang=en] .hero h1{font-size:clamp(35px,8.7vw,50px);line-height:1.13;letter-spacing:-.05em}html[lang=en] .hero-line{width:auto;text-wrap:balance}html[lang=en] .hero-line+.hero-line{margin-top:.12em}html[lang=en] .hero-aside>p{font-size:17px;line-height:1.75}html[lang=en] .hero-aside>.hero-support{font-size:13px!important;line-height:1.7!important}html[lang=en] .home-package h2{font-size:clamp(32px,8vw,44px)}html[lang=en] .home-package h2 span{font-size:15px;margin-bottom:14px}}

/* Shared Korean finishing: one anchor offset, legible controls and legal page. */
html[lang=ko]{scroll-padding-top:calc(var(--wm-head) + 18px)}
html[lang=ko].wm-subnav-page{scroll-padding-top:calc(var(--wm-head) + var(--wm-sub) + 18px)}
html[lang=ko] body :is(main,main [id]){scroll-margin-top:0!important}
html[lang=ko] :is(.sl-footer-row,.footer-bottom,.lp-footer-bottom) a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
html[lang=ko] .project-form .form-bottom a{min-height:44px;display:inline-flex;align-items:center}
html[lang=ko] .lp-fallback a{min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}
.privacy-page{background:#f7f8fa;color:#18283f;font-family:'Wanted Sans Variable','Wanted Sans',Arial,sans-serif;word-break:keep-all;overflow-wrap:break-word}
.privacy-page .wm-privacy{max-width:900px;padding-block:100px 120px}
.privacy-page .wm-privacy h1{font-size:clamp(34px,4.5vw,58px);line-height:1.3;font-weight:650;letter-spacing:-.05em;text-wrap:balance}
.privacy-page .wm-privacy-intro{max-width:720px;color:#4c5f73;font-size:20px;line-height:1.85;margin:30px 0 64px}
.privacy-page .wm-privacy section{padding:34px 0}
.privacy-page .wm-privacy h2{font-weight:600;line-height:1.5;letter-spacing:-.035em}
.privacy-page .wm-privacy .button{border-radius:999px;background:#263b59;color:#fff;min-height:52px;padding:14px 26px}
@media(max-width:600px){.privacy-page .wm-privacy{padding-block:64px 88px}.privacy-page .wm-privacy-intro{font-size:18px;margin-bottom:44px}.privacy-page .wm-privacy section{padding:28px 0}.privacy-page .wm-privacy h2{font-size:22px}}
.error-page{min-height:100svh;display:grid;place-items:center;padding:48px 24px;background:radial-gradient(ellipse at 50% 40%,#e5edf7,transparent 65%),#f7f8fa;color:#18283f;font-family:'Wanted Sans Variable','Wanted Sans',Arial,sans-serif}
.error-page main{width:min(100%,780px);text-align:center;word-break:keep-all;overflow-wrap:break-word}
.error-brand{display:inline-flex;align-items:center;min-height:44px;margin-bottom:68px}
.error-brand img{display:block;width:173px;height:30px}
.error-code{font-size:13px;color:#496589;letter-spacing:.06em;margin:0 0 22px}
.error-page h1{font-size:clamp(30px,4vw,48px);font-weight:650;line-height:1.4;letter-spacing:-.05em;text-wrap:balance}
.error-description{max-width:570px;margin:28px auto 38px;color:#5a687c;font-size:18px;line-height:1.85;text-wrap:pretty}
.error-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.error-actions .button{border-radius:999px;min-height:52px;background:#263b59;border:1px solid #263b59;color:#fff;padding:14px 24px;font-size:14px}
.error-actions .error-secondary{background:#f7f9fc;color:#263b59;border-color:#c1cedd}
.error-page a:focus-visible{outline:3px solid #527cac;outline-offset:5px}
@media(max-width:600px){.error-brand{margin-bottom:48px}.error-description{font-size:16px}.error-actions{flex-direction:column;max-width:290px;margin:auto}}
