/* Reading rules apply to explanatory text, controls and company information.
   Brand wordmarks, the motto and large editorial headings keep their fonts. */
body main :is(p,li,figcaption,summary,legend,label){word-break:keep-all;overflow-wrap:break-word}
body .site-company-details{display:flex;justify-content:space-between;align-items:start;gap:12px 28px;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid var(--line,#d8dadc);font-family:'Noto Sans KR',sans-serif}
body .site-registration{display:flex;gap:4px 18px;flex-wrap:wrap;margin:0;font-size:12px;line-height:1.9}
body .site-registration>span{white-space:nowrap}
body .site-policy-group{display:flex;align-items:center;flex-wrap:wrap;gap:8px 22px}
body .site-policy-links{display:flex;gap:20px;flex-wrap:wrap}
body .site-policy-links a{display:inline-flex;align-items:center;font-size:12px;line-height:1.7;min-height:44px;color:inherit}
body .site-policy-links a:first-child{font-weight:600}
body .site-copyright{font-size:12px;line-height:1.9;white-space:nowrap}
body .contact-footer{grid-template-columns:1fr auto;gap:18px 36px}
body .contact-footer-info{align-self:center}
body .contact-footer-info>a{font-size:14px;min-height:44px}
body .contact-footer .site-company-details{grid-column:1/-1;width:100%;margin-top:0}
body .contact-footer-brand>p,body .footer-contact p{font-size:13px;line-height:1.8}

/* Project explanations and captions. */
body .w-page :is(.w-intro-copy,.w-detail-heading>p,.w-story>p:not(.w-label),.w-roles-list p,.w-method-points p,.w-document p,.w-next p){font-size:15px;line-height:1.9;text-wrap:pretty}
body .w-page .w-detail-heading>p{max-width:500px;min-width:0}
body .w-page :is(.w-note,.w-image figcaption,.w-strip figcaption,.w-film-frame figcaption,.w-approach-caption p,.w-document-grid figcaption){font-size:13px;line-height:1.85;text-wrap:pretty}
body .w-page :is(.w-back,.w-inline-link,.w-intro-copy a,.w-story-nav a,.w-service-path a,.w-document summary,.w-motion,.w-next-links a){font-size:13px;min-height:44px}
body .w-page .w-meta{font-size:13px;line-height:1.85}

/* Company introduction: observation and partnership explanations. */
body .about-v8 :is(.av8-description,.av8-hero-description){font-size:15px;line-height:1.95;text-wrap:pretty}
body .about-v8 .av8-observations li{font-size:14px;line-height:1.8}
body .about-v8 .av8-flow li>p:not(.av8-step-label){font-size:14px;line-height:1.95;text-wrap:pretty}
body .about-v8 .av8-step-detail{font-size:13px;line-height:1.85;color:#aab8cb}
body .about-v8 .av8-project-link{font-size:14px}

/* Service scope, preparation, process and decision aids. */
body :is(.svc-description,.svc-process-list p,.svc-scope-body p,.svc-section-heading>div>p,.svc-scenario-list p){font-size:14px;line-height:1.9;text-wrap:pretty}
body .svc-role>p{font-size:14px;line-height:1.8}
body .svc-role ul{font-size:13px;line-height:1.95}
body :is(.svc-art-note,.svc-process-note,.svc-tags,.svc-consult){font-size:13px;line-height:1.85}
body .svc-channel-nav a{font-size:13px;min-height:44px;display:flex;align-items:center}

/* Homepage notes that explain what the images and services represent. */
body :is(.s5-concept,.s5-art-note){font-size:13px;line-height:1.85}
body .s5-gallery-caption{font-size:15px;line-height:1.9;text-wrap:pretty}
body .s5-scene-controls>button>span{font-size:13px}
body .s5-service-list p{font-size:14px;line-height:1.9}
body .s5-footer-goals>a{font-size:14px;line-height:1.85}
body .s5-footer-contact>button{font-size:13px}

/* Inquiry instructions remain legible; inputs retain their 16px size. */
body.contact-page :is(.form-heading p,.contact-help,.field-foot,.submission-note,.additional-body>p,.consent,.error,.contact-expectation>p,.contact-expectation li,.direct-contact>p){font-size:13px;line-height:1.85}
body.contact-page :is(.field label,.additional summary,.channels legend){font-size:14px;line-height:1.7}
body.contact-page :is(.field label>span,.channels legend>span,.additional summary>span,.consent small){font-size:12px}
body.contact-page .field input::placeholder,body.contact-page .field textarea::placeholder{font-size:13px}
body.contact-page .channel>span{font-size:13px;min-height:44px;line-height:1.7}
body.contact-page .goal>span>span{font-size:13px;line-height:1.7}
body.contact-page .privacy-button{font-size:12px;min-height:44px}
body.contact-page :is(#privacy-dialog p,#review-dialog>p,#review-content){font-size:14px;line-height:1.85}
body.contact-page .consent-block{padding-right:72px}

@media(max-width:760px){
 body .site-company-details{display:block;margin-top:22px;padding-top:18px}
 body .site-policy-group{margin-top:9px;gap:6px 22px}
 body .site-registration{gap:3px 14px}
 body .contact-footer{grid-template-columns:1fr;gap:12px}
 body .contact-footer .site-company-details{grid-column:1;margin-top:4px}
 body .contact-footer-info>a{font-size:14px}
 body .w-page :is(.w-intro-copy,.w-detail-heading>p,.w-story>p:not(.w-label),.w-roles-list p,.w-method-points p,.w-document p,.w-next p){font-size:14px}
 body .about-v8 :is(.av8-description,.av8-hero-description){font-size:14px}
 body .s5-gallery-caption{font-size:14px}
 body .s5-scene-controls{flex-wrap:wrap;gap:4px 18px;justify-content:flex-start}
 body .s5-scene-controls>button{gap:6px}
 body .cinema-start>p.s5-hero-note{font-size:14px;line-height:1.85;max-width:280px}
 body .s5-footer-contact>a{font-size:14px}
 body.contact-page .field-foot{gap:12px}
 body.contact-page .field-foot>span:last-child{font-size:12px}
}
