/* R03 / Jeonggi Sangsa — corporate direction */
:root{--paper:#f5f5f2;--ink:#172531;--text:#20303b;--muted:#626d75;--line:#d3d8da;--accent:#8b7753;--lime:#d8d0be}
.site-header{background:#f5f5f2f5;backdrop-filter:blur(12px)}
.nav-contact{border-radius:0}.site-header nav a[aria-current]:after{background:var(--ink);width:100%}
.contact-section{background:#172531}.contact-section h2{font-size:clamp(35px,3.8vw,57px);line-height:1.3}.contact-accent{color:#d8d0be}.contact-types button:hover{background:#d8d0be}
.page-home .home-hero{padding-block:68px 64px;grid-template-columns:1fr 1.15fr;gap:64px}
.page-home .hero-copy h1{font-size:clamp(40px,4.1vw,64px);line-height:1.24;letter-spacing:-.055em}
.headline-motion>span{display:block;overflow:hidden;color:var(--ink)}
.headline-motion>span:nth-child(2){color:#4d5e6b}.headline-motion .hero-last{position:relative;padding-bottom:15px}
.hero-last:after{content:'';position:absolute;left:0;bottom:0;width:64px;height:2px;background:#8b7753;transform-origin:left}
.page-home .hero-copy .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:29px;color:#67757f}
.page-home .hero-description{font-size:14px;line-height:1.95;margin-top:24px}
.page-home .hero-copy .text-link{font-size:12px;margin-top:16px}
.hero-mandate{margin-top:33px;padding-top:19px;border-top:1px solid var(--line);display:flex;gap:29px;align-items:start;max-width:390px}
.hero-mandate>span{font-size:8px;letter-spacing:.11em;color:#7a6b4f;white-space:nowrap;padding-top:5px}
.hero-mandate>p{font-size:11px;line-height:1.8;color:#647079}
.corporate-hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;min-height:131px}
.corporate-hero-bottom>div{background:#e5e8e9;padding:22px 20px;display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.corporate-hero-bottom .eyebrow{font-size:9px;line-height:1.55;letter-spacing:.09em}
.corporate-hero-bottom>div>span{font-size:9px;color:#65737c}
.page-home .hero-editorial{aspect-ratio:1.5;background:#172531}
.page-home .hero-editorial:hover>img{transform:none}
.page-home .hero-editorial figcaption{font-weight:400;background:linear-gradient(transparent,#10202aa8)}
.page-home .section-heading h2{font-size:clamp(30px,3vw,44px);line-height:1.32}
.page-home .section-heading{grid-template-columns:.85fr 1.6fr 1fr;gap:35px}
.emphasis-rule{display:inline-block;position:relative;padding-bottom:6px}
.emphasis-rule:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#8b7753;transform-origin:left}
.motion-ready .reveal:not(.is-visible) .emphasis-rule:after{transform:scaleX(0)}
.motion-ready .reveal.is-visible .emphasis-rule:after{transition:transform 1.2s .25s ease;transform:scaleX(1)}
.corporate-motion .headline-motion>span{animation:headline-settle 1s both}
.corporate-motion .headline-motion>span:nth-child(2){animation-delay:.14s}
.corporate-motion .headline-motion>span:nth-child(3){animation-delay:.28s}
.corporate-motion .hero-last:after{animation:corporate-rule 1.2s .7s both}
@keyframes headline-settle{from{clip-path:inset(100% 0 0);transform:translateY(18px);opacity:0}to{clip-path:inset(0);transform:translateY(0);opacity:1}}
@keyframes corporate-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.business-framework{border:1px solid #d5dadd;background:#192a37}
.framework-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 32px;border-bottom:1px solid #40505b;color:#bdc8ce}
.framework-heading>p{font-size:9px;letter-spacing:.14em;line-height:1.5}
.replay-flow{background:transparent;color:#d6dce0;border:1px solid #5b6871;font-size:10px;padding:8px 11px;white-space:nowrap}
.replay-flow span{margin-left:10px}.replay-flow:hover{background:#31434f}
.framework-route{position:relative;padding:36px 39px 0}
.route-line{position:absolute;top:80px;left:0;width:100%;height:100px;overflow:visible}
.route-base{stroke:#4a5a66;stroke-width:1;fill:none}.route-progress{stroke:#c6b493;stroke-width:2;fill:none;stroke-dasharray:1;stroke-dashoffset:0}
.business-tabs{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px}
.business-tab{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:24px 23px;background:#203340;border:1px solid #5b6b77;color:#f5f6f5;transition:background .35s,color .35s,border-color .35s;min-width:0;position:relative}
.business-tab[aria-selected=true]{background:#f3f3ef;color:#172531;border-color:#f3f3ef}
.business-tab:hover{border-color:#d6c4a1}.business-tab:focus-visible{outline-color:#d8c6a2;outline-offset:5px}
.stage-index{font-size:10px;letter-spacing:.1em;color:#c9b794;margin-bottom:27px}
.business-tab[aria-selected=true] .stage-index{color:#75613e}
.stage-label{font-size:25px;letter-spacing:-.035em;font-weight:700;white-space:nowrap}
.stage-en{font-size:8px;letter-spacing:.1em;margin-top:10px;line-height:1.5}
.stage-detail{font-size:11px;margin-top:20px;opacity:.72;line-height:1.6;word-break:keep-all}
.framework-guide{font-size:10px;color:#b8c5ce;text-align:right;padding:17px 39px 22px}
.business-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;padding:42px 40px;background:#f9f9f6;min-height:363px}
.panel-copy>.eyebrow{font-size:8px;color:#7b6b50;letter-spacing:.1em}
.panel-copy>h3{font-size:27px;line-height:1.35;margin:18px 0 14px;letter-spacing:-.04em}
.panel-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.8;max-width:450px}
.panel-copy>ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;padding:0;margin:19px 0 9px;font-size:10px;color:#56646e}
.panel-copy>ul>li{padding-left:8px;border-left:1px solid #8c9aa4;line-height:1.4}
.panel-copy .text-link{font-size:11px;margin-top:4px;padding:10px 0}
.service-diagram{background:#ebeff0;padding:12px 13px 15px;border:1px solid #dbe0e2;overflow:hidden}
.service-diagram svg{width:100%;height:auto;display:block;overflow:visible;font-family:var(--font)}
.service-diagram svg text{font-size:15px;fill:#213746;font-weight:700;letter-spacing:-.025em}
.service-diagram .diagram-kicker{font-size:10px;letter-spacing:.055em;font-weight:400;fill:#60727d}
.service-diagram .diagram-small{font-size:11px;font-weight:400;fill:#61717b}
.service-diagram .diagram-light{fill:#fff;font-size:15px}.service-diagram .diagram-light-small{fill:#c8d3d9;font-size:9px;letter-spacing:.07em;font-weight:400}
.diagram-axis{stroke:#c9d2d7;stroke-width:1;fill:none}
.diagram-outline{fill:#ebeff0;stroke:#a4b3bd;stroke-width:1}.diagram-outline.strong{stroke:#667c8b;fill:#e2e8eb}
.diagram-solid{fill:#233d4e}.diagram-hatch{stroke:#8297a4;fill:none;stroke-width:1}
.diagram-check{stroke:#d9c8a8;fill:none;stroke-width:2}
.diagram-feedback{stroke:#7d909d;stroke-dasharray:3 4;stroke-width:1;fill:none}
.diagram-draw{stroke:#8b7753;fill:none;stroke-width:2;stroke-dasharray:1;stroke-dashoffset:0}
.service-diagram figcaption{font-size:9px;text-align:center;color:#65757f;margin-top:3px;line-height:1.6}
.business-framework.is-playing .route-progress{animation:route-draw 2.7s .15s both}
.business-framework.is-playing .business-tab:after{content:'';position:absolute;left:-1px;top:-1px;right:-1px;height:2px;background:#bda57a;transform-origin:left;animation:node-signal 1.1s .2s both}
.business-framework.is-playing .business-tab:nth-child(2):after{animation-delay:1.05s}.business-framework.is-playing .business-tab:nth-child(3):after{animation-delay:1.9s}
.business-framework.is-playing .business-panel:not([hidden]) .diagram-piece{animation:diagram-settle 1s both}
.business-framework.is-playing .business-panel:not([hidden]) .piece-two{animation-delay:.35s}.business-framework.is-playing .business-panel:not([hidden]) .piece-three{animation-delay:.7s}
.business-framework.is-playing .diagram-draw{animation:route-draw 2s .3s both}
@keyframes route-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes node-signal{from{transform:scaleX(0);opacity:.3}to{transform:scaleX(1);opacity:1}}
@keyframes diagram-settle{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
.product-range{display:grid;grid-template-columns:1.18fr 1fr;gap:58px;align-items:center;margin-top:54px}
.product-range figure{position:relative;overflow:hidden;aspect-ratio:1.55;background:#d8dce0}
.product-range img{width:100%;height:100%;object-fit:cover}.product-range figcaption{position:absolute;left:13px;bottom:12px;font-size:7px;letter-spacing:.06em;color:#fff;background:#172531a8;padding:5px 8px}
.product-range .eyebrow{font-size:9px;color:#7c6b4d}.product-range h3{font-size:31px;line-height:1.3;margin:20px 0 16px}
.product-range p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.85}
.product-range ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 23px;padding:0;margin:23px 0 0}
.product-range li{border-top:1px solid var(--line);padding:12px 0;font-size:12px}.product-range li span{font-size:8px;margin-right:12px;color:#81909a}
.page-home .process-section{background:#e9edef;border-block:1px solid #d8dfe2}
.page-home .process-list{position:relative;border-color:#bcc8cf}.page-home .process-list li>span{color:#627887}
.page-home .process-list li:hover{background:transparent}.page-home .process-list li:not(:last-child):after{content:'→';color:#8798a4}
.page-home .process-list h3{font-size:18px}.page-home .process-list p{font-size:11px}
.corporate-motion .process-list.is-visible:before{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:#526f81;transform-origin:left;animation:corporate-rule 2.8s both}
.corporate-motion .process-list.is-visible li{animation:diagram-settle .8s both}
.corporate-motion .process-list.is-visible li:nth-child(2){animation-delay:.2s}.corporate-motion .process-list.is-visible li:nth-child(3){animation-delay:.4s}.corporate-motion .process-list.is-visible li:nth-child(4){animation-delay:.6s}.corporate-motion .process-list.is-visible li:nth-child(5){animation-delay:.8s}.corporate-motion .process-list.is-visible li:nth-child(6){animation-delay:1s}
.page-home .brand-work{background:#223541}.page-home .brand-work .mini-label,.page-home .brand-work-fields{color:#bbc7cf}
.page-home .brand-work>img{width:180px}.page-home .brand-work-line{font-size:14px;color:#dee4e7}
.page-home .work-caption h3{font-size:18px}.page-home .round-arrow{border-radius:0;color:#526977}
.page-home .waf-feature{background:#e6ebed;color:#172531;border-top:1px solid #d2dade}
.page-home .waf-logo-white{filter:none;width:135px}.page-home .waf-feature .eyebrow{color:#637884;font-size:9px}
.page-home .waf-feature h2{font-size:32px}.page-home .waf-feature p:not(.eyebrow){color:#63727c}
.page-home .waf-feature .button{background:#233b4a;color:#fff}
@media(max-width:1100px){.page-home .home-hero{gap:32px;grid-template-columns:1fr 1.12fr}.page-home .hero-copy h1{font-size:41px}.hero-mandate{gap:16px}.corporate-hero-bottom{min-height:122px}.corporate-hero-bottom>div{padding:16px}.corporate-hero-bottom .eyebrow{font-size:8px}.corporate-hero-bottom>div>span{font-size:8px}.page-home .section-heading{grid-template-columns:.8fr 1.65fr;gap:24px}.page-home .section-heading>p:last-child{grid-column:2}.business-tabs{gap:35px}.framework-route{padding-inline:28px}.business-tab{padding:21px 18px}.stage-label{font-size:23px}.stage-en{font-size:7px}.stage-detail{font-size:10px}.business-panel{padding:34px 28px;gap:28px}.panel-copy>h3{font-size:23px}.panel-copy>p:not(.eyebrow){font-size:12px}.product-range{gap:35px}.product-range h3{font-size:27px}.product-range p:not(.eyebrow){font-size:12px}}
@media(max-width:760px){.page-home .home-hero{grid-template-columns:1fr;padding-block:41px 32px;gap:32px}.page-home .hero-copy h1{font-size:clamp(32px,8.8vw,50px);line-height:1.3}.page-home .hero-copy .eyebrow{font-size:8px;letter-spacing:.08em;margin-bottom:24px}.page-home .hero-description{font-size:12px;margin-top:21px}.hero-mandate{margin-top:25px;padding-top:17px;gap:23px}.hero-mandate>p{font-size:10px}.hero-mandate>span{font-size:7px}.hero-last:after{width:50px}.corporate-hero-bottom{min-height:107px;gap:9px;margin-top:9px;grid-template-columns:.9fr 1.1fr}.corporate-hero-bottom>div{padding:14px 12px}.corporate-hero-bottom .eyebrow{font-size:7px}.corporate-hero-bottom>div>span{font-size:7px}.corporate-hero-bottom .retro-tile figcaption{font-size:5px}.page-home .section-heading{grid-template-columns:1fr;gap:17px}.page-home .section-heading>p:last-child{grid-column:auto}.page-home .section-heading h2{font-size:30px}.framework-heading{padding:16px 13px;gap:10px}.framework-heading>p{font-size:7px;letter-spacing:.05em;max-width:140px}.replay-flow{font-size:8px;padding:7px 8px}.replay-flow span{margin-left:4px}.framework-route{padding:19px 12px 0}.business-tabs{gap:9px}.business-tab{padding:13px 8px 12px;min-height:133px}.stage-index{font-size:8px;margin-bottom:21px}.stage-label{font-size:14px;letter-spacing:-.06em}.stage-en{font-size:7px;letter-spacing:0;min-height:22px;line-height:1.45;margin-top:8px;word-break:keep-all}.stage-detail{font-size:8px;line-height:1.6;margin-top:12px}.route-line{top:40px;height:80px}.framework-guide{font-size:8px;text-align:left;padding:14px 13px 17px}.business-panel{grid-template-columns:1fr;padding:25px 18px;gap:22px;min-height:0}.panel-copy>.eyebrow{font-size:7px}.panel-copy>h3{font-size:23px;line-height:1.35}.panel-copy>p:not(.eyebrow){font-size:12px}.panel-copy>ul{font-size:9px;gap:9px 14px;margin-top:17px}.service-diagram{padding:9px 6px 13px}.service-diagram figcaption{font-size:8px}.product-range{grid-template-columns:1fr;gap:26px;margin-top:34px}.product-range figure{aspect-ratio:1.5}.product-range h3{font-size:28px;margin:16px 0 13px}.product-range ul{margin-top:20px}.product-range li{font-size:11px;padding:11px 0}.page-home .process-list h3{font-size:17px}.page-home .process-list p{font-size:10px}.page-home .brand-work>img{width:160px}.page-home .work-caption h3{font-size:17px}.page-home .waf-feature h2{font-size:30px}.page-home .waf-logo-white{width:125px}.contact-section h2{font-size:34px;line-height:1.3}}
@media(prefers-reduced-motion:reduce){.headline-motion>span,.diagram-piece,.process-list li{animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important}.route-progress,.diagram-draw{animation:none!important;stroke-dashoffset:0!important}.emphasis-rule:after,.hero-last:after{animation:none!important;transform:none!important}.business-tab:after,.process-list:before{animation:none!important;transform:none!important}}
.reduce-motion .headline-motion>span,.reduce-motion .diagram-piece,.reduce-motion .process-list li{animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important}.reduce-motion .route-progress,.reduce-motion .diagram-draw{animation:none!important;stroke-dashoffset:0!important}.reduce-motion .emphasis-rule:after,.reduce-motion .hero-last:after{animation:none!important;transform:none!important}.reduce-motion .business-tab:after,.reduce-motion .process-list:before{animation:none!important;transform:none!important}
