/* Editorial type for the public studio and guide UI. Card artwork has its own
   type controls; no iframe, canvas, invitation, or editor layout is restyled. */
.hw-guides,
body.studio-v3 {
  --hw-ui-sans: 'Noto Sans KR', 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
  --hw-ui-serif: 'Gowun Batang', 'Batang', serif;
  --hw-ui-muted: #586153;
  font-family: var(--hw-ui-sans);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.85;
  letter-spacing: -.015em;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
.hw-guides { --g-sans: var(--hw-ui-sans); --g-serif: var(--hw-ui-serif); --g-muted: var(--hw-ui-muted); }
body.studio-v3 { --sans: var(--hw-ui-sans); --serif: var(--hw-ui-serif); }

/* Give Korean phrases room to wrap; long names and URLs still fit a phone. */
.hw-guides :is(h1,h2,h3,h4,p,li,summary,label),
.studio-v3 :is(.v3-hero-copy,.collection-heading,.v3-process-copy,.v3-service-copy,.v3-journal,.v3-faq,.v3-footer) :is(h1,h2,h3,p,li,summary) {
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.hw-guides :is(h1,h2,h3,h4),
.studio-v3 :is(.v3-hero h1,main h2,.v3-footer h2) { text-wrap: balance; }
.hw-guides :is(input,textarea)::placeholder { color: #74776d; opacity: 1; }

/* The serif is reserved for the main editorial titles and the artwork. */
.hw-guides .hw-guide-hero h1 { font-weight: 700; line-height: 1.5; letter-spacing: -.035em; }
.hw-guides :is(.hw-guide-section-heading h2,.hw-guide-section h2,.hw-guide-topic h3,.hw-guide-final h2) {
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: -.025em;
}
.hw-guides :is(.hw-library-heading h3,.hw-message-editor-heading h3) {
  font: 500 23px/1.6 var(--hw-ui-sans);
  letter-spacing: -.035em;
}
.hw-guides :is(.hw-guide-intro,.hw-guide-section>p,.hw-guide-section-heading>p:not(.hw-guide-kicker),.hw-guide-topic-body>p,.hw-guide-topic>p) {
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: -.015em;
  color: var(--hw-ui-muted);
}
.hw-guides .hw-guide-section .hw-guide-lead { font-size: 17px; color: var(--g-ink); }
.hw-guides :is(.hw-guide-checklist li,.hw-guide-notes p,.hw-guide-faq summary,.hw-guide-faq details p,.hw-guide-final p:not(.hw-guide-kicker)) {
  font-size: 15px;
  line-height: 1.85;
}
.hw-guides :is(.hw-guide-checklist li,.hw-guide-notes p,.hw-guide-faq details p) { color: var(--hw-ui-muted); }
.hw-guides .hw-guide-notes h3 { font-size: 16px; font-weight: 500; }
.hw-guides .hw-guide-faq summary { font-weight: 500; }
.hw-guides .hw-guide-table table { font-size: 14px; line-height: 1.85; }
.hw-guides .hw-guide-table td { color: var(--hw-ui-muted); }
.hw-guides .hw-guide-final p:not(.hw-guide-kicker) { color: #dce3d4; }

/* Utility text remains quiet through hierarchy and spacing, not tiny type. */
.hw-guides :is(.hw-guide-kicker,.hw-guide-topic .hw-guide-kicker,.hw-library-heading .hw-guide-kicker,.hw-message-editor-heading .hw-guide-kicker) {
  font-size: 11px;
  line-height: 1.7;
  font-weight: 500;
  letter-spacing: .1em;
  color: #616d55;
}
.hw-guides .hw-guide-final .hw-guide-kicker { color: var(--g-lime); }
.hw-guides :is(.hw-guide-small,.hw-guide-breadcrumb,.hw-guide-hero-art>small,.hw-guide-cover-caption,.hw-guide-design-info>span,.hw-guide-sources>p,.hw-guide-sources li,.hw-guide-footer p,.hw-guide-footer small) {
  font-size: 13px;
  line-height: 1.8;
  color: var(--hw-ui-muted);
}
.hw-guides .hw-guide-hero-art>small { letter-spacing: .06em; }
.hw-guides .hw-guide-sources li>span { font-size: 12px; color: #656f5c; }
.hw-guides .hw-guide-logo small { font-size: 8px; letter-spacing: .19em; }
.hw-guides :is(.hw-guide-nav nav,.hw-guide-button,.hw-guide-text-link,.hw-guide-read,.hw-guide-toc a,.hw-guide-toc .hw-guide-text-link,.hw-guide-design-info>a,.hw-guide-footer nav) {
  font: 500 14px/1.7 var(--hw-ui-sans);
  letter-spacing: -.015em;
}
.hw-guides .hw-guide-button { min-height: 48px; max-width: 100%; }
.hw-guides .hw-guide-design-info h3 { font-size: 20px; line-height: 1.6; letter-spacing: -.025em; }
.hw-guides .hw-guide-cover-caption { font-size: 12px; }
.hw-guides .hw-guide-sources h2 { font-size: 15px; }
.hw-guides .hw-guide-footer nav { flex-wrap: wrap; }

/* Wording is material to read, compare, and edit before it becomes a card. */
.hw-guides .hw-guide-message,
.hw-guides .hw-library-example .hw-guide-message {
  font: 400 16px/1.9 var(--hw-ui-sans);
  letter-spacing: -.015em;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.hw-guides :is(.hw-library-heading>p,.hw-example-usage,.hw-library-result,.hw-message-preview>p:last-child,.hw-message-status) {
  font: 400 14px/1.85 var(--hw-ui-sans);
  color: var(--hw-ui-muted);
}
.hw-guides .hw-library-example h4 { font-size: 16px; line-height: 1.7; font-weight: 500; margin-top: 17px; }
.hw-guides :is(.hw-library-example-top,.hw-guide-example-label) { font-size: 12px; line-height: 1.75; color: #5b6853; }
.hw-guides .hw-library-example-top { align-items: flex-start; flex-wrap: wrap; }
.hw-guides :is(.hw-example-actions button,.hw-guide-copy) { font: 500 13px/1.7 var(--hw-ui-sans)!important; min-height: 44px; }
.hw-guides .hw-example-actions { flex-wrap: wrap; gap: 8px 16px; }
.hw-guides .hw-library-chips button { font-size: 13px; line-height: 1.7; min-height: 44px; padding: 10px 15px; }
.hw-guides :is(.hw-library-search,.hw-library-tone,.hw-message-form label) { font-size: 14px; font-weight: 500; line-height: 1.65; }
.hw-guides :is(.hw-library-search input,.hw-library-tone select,.hw-message-form input,.hw-message-form select,.hw-message-form textarea) {
  font-family: var(--hw-ui-sans);
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: -.015em;
  min-height: 48px;
}
.hw-guides .hw-message-form textarea { line-height: 1.9; padding: 16px; }
.hw-guides :is(.hw-library-more,.hw-message-actions button) { font: 500 14px/1.7 var(--hw-ui-sans); min-height: 46px; }
.hw-guides .hw-message-count { font-size: 13px; line-height: 1.7; }
.hw-guides .hw-card-design-gallery span { font: 400 13px/1.65 var(--hw-ui-sans); min-height: 3.3em; letter-spacing: -.025em; }
.hw-guides .hw-card-design-gallery button[aria-pressed=true] span { font-weight: 500; color: #30492c; }
.hw-guides .hw-message-preview .hw-guide-kicker { font-size: 11px; }
.hw-guides .hw-card-jump { font-size: 13px; line-height: 1.7; }
.hw-guides .hw-guide-toast { font-size: 14px; line-height: 1.75; }

/* Home: retain the photographic composition and display titles. */
.studio-v3 .v3-hero h1 { font-weight: 700; letter-spacing: -.04em; white-space: normal; }
.studio-v3 main h2,
.studio-v3 .v3-footer-invite h2 { font-weight: 700; letter-spacing: -.035em; }
.studio-v3 :is(.studio-hero-description,.collection-intro,.v3-section-description,.v3-process-list p,.v3-feature-list small,.faq-list details>p,.info-content) {
  font-family: var(--hw-ui-sans);
  font-size: 15px;
  line-height: 1.9;
  letter-spacing: -.015em;
  color: var(--hw-ui-muted);
}
.studio-v3 :is(.v3-kicker,.eyebrow,.v3-hero-copy .v3-kicker,.collection-heading .eyebrow) { font-size: 12px; line-height: 1.7; letter-spacing: .05em; color: var(--hw-ui-muted); }
.studio-v3 :is(.v3-process-list h3,.v3-feature-list b,.faq-list summary) { font-size: 16px; line-height: 1.75; font-weight: 500; }
.studio-v3 :is(.v3-hero-note,.v3-service-note,.v3-phone-label,.v3-service-stage>p,.v3-journal-list>a>span:first-child,.catalog-card .catalog-category,.catalog-visible-status,.catalog-results,.season-filter-status) {
  font-size: 13px;
  line-height: 1.8;
  color: var(--hw-ui-muted);
}
.studio-v3 :is(.v3-text-link,.v3-hero-actions .v3-text-link,.v3-process-copy>.v3-text-link,.v3-journal-heading>.v3-text-link,.v3-faq-heading .v3-text-link,.text-button,.button,.button.small) { font-size: 14px; line-height: 1.7; font-weight: 500; }
.studio-v3 :is(.filter-tabs button,.saved-filter,.catalog-advanced>summary,.catalog-refinements label,.catalog-pagination button,.season-scope button) { font-size: 13px; line-height: 1.7; min-height: 44px; }
.studio-v3 .seasonal-collection-header p { font-size: 14px; line-height: 1.8; color: var(--hw-ui-muted); }
.studio-v3 .seasonal-card strong { font-size: 16px; font-weight: 700; }
.studio-v3 .seasonal-card span { font-size: 13px; color: #616d55; }
.studio-v3 :is(.season-scope button b,.saved-filter b) { font-size: 12px; opacity: 1; }
.studio-v3 :is(.catalog-advanced>summary>span,.catalog-results strong) { font-size: 13px; }
.studio-v3 :is(.catalog-search-field input,.catalog-sort select,.catalog-refinements select) { font-family: var(--hw-ui-sans); font-size: 16px; min-height: 44px; }
.studio-v3 .catalog-card .template-info h3 { font-size: 20px; line-height: 1.55; font-weight: 700; letter-spacing: -.025em; }
.studio-v3 .catalog-card .template-info p { font-size: 14px; line-height: 1.8; min-height: 50px; color: var(--hw-ui-muted); }
.studio-v3 .catalog-card-actions>button { font-size: 13px; line-height: 1.65; font-weight: 500; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; min-width: 0; }
.studio-v3 .design-sample-note { font-size: 13px!important; line-height: 1.85!important; color: var(--hw-ui-muted); }
.studio-v3 .v3-journal-list h3 { font-family: var(--hw-ui-sans); font-size: 19px; line-height: 1.75; font-weight: 500; letter-spacing: -.025em; }
.studio-v3 :is(.v3-footer-invite>p,.v3-footer-manage,.v3-footer-identity>p) { font-size: 14px; line-height: 1.85; color: #d0dac7; }
.studio-v3 :is(.v3-footer-nav,.v3-footer-nav a,.v3-footer-nav button,.v3-footer-bottom>a) { font: 400 14px/1.8 var(--hw-ui-sans); color: #d0dac7; }
.studio-v3 .v3-footer-nav>span { font-size: 13px; color: #e0e7d8; }
.studio-v3 .v3-footer-bottom small { font-size: 11px; line-height: 1.8; letter-spacing: .02em; color: #b9c9ac; }
.studio-v3 .v3-footer-invite .button { font-size: 14px; }

@media (max-width: 1050px) {
  .hw-guides .hw-library-refine { grid-template-columns: minmax(0,1fr) 170px; }
  .studio-v3 .v3-hero-actions { flex-wrap: wrap; }
}
@media (max-width: 760px) {
  .hw-guides .hw-guide-nav { gap: 12px; }
  .hw-guides .hw-guide-nav .hw-guide-button { font-size: 13px; min-height: 44px; padding: 11px 12px; gap: 9px; }
  .hw-guides .hw-guide-logo { font-size: 30px; }
  .hw-guides .hw-guide-logo small { font-size: 7px; }
  .hw-guides .hw-guide-hero h1 { font-size: clamp(29px,7.8vw,36px); line-height: 1.55; }
  .hw-guides :is(.hw-guide-section-heading h2,.hw-guide-section h2) { font-size: 26px; line-height: 1.6; }
  .hw-guides :is(.hw-library-heading h3,.hw-message-editor-heading h3) { font-size: 22px; }
  .hw-guides :is(.hw-guide-intro,.hw-guide-section>p,.hw-guide-topic-body>p,.hw-guide-topic>p) { font-size: 15px; line-height: 1.9; }
  .hw-guides .hw-guide-topic h3 { font-size: 21px; }
  .hw-guides .hw-guide-design-info h3 { font-size: 18px; }
  .hw-guides .hw-guide-design-info>a { display: inline-block; font-size: 13px; min-height: 40px; }
  .hw-guides .hw-guide-cover-caption { font-size: 11px; }
  .hw-guides .hw-library-refine { grid-template-columns: minmax(0,1fr) 130px; }
  .hw-guides .hw-library-chips { gap: 8px; }
  .hw-guides .hw-library-chips button { padding-inline: 12px; }
  .hw-guides .hw-message-actions { gap: 9px; }
  .hw-guides .hw-message-actions button { padding-inline: 13px; }
  .hw-guides .hw-message-preview>p:last-child { font-size: 13px; }
  .studio-v3 .v3-hero-actions { flex-wrap: wrap; gap: 15px 23px; }
  .studio-v3 .v3-hero-actions .button { font-size: 14px; }
  .studio-v3 .v3-hero-actions .v3-text-link { white-space: normal; }
  .studio-v3 .catalog-sort select { max-width: 100px; }
  .studio-v3 .catalog-card .template-info h3 { font-size: 18px; }
  .studio-v3 .catalog-card-actions { grid-template-columns: 1fr; }
  .studio-v3 .catalog-card-actions>button { justify-content: space-between; text-align: left; padding: 10px 3px!important; }
  .studio-v3 .catalog-card-actions>button:first-child { border-right: 0; border-bottom: 1px solid #dbe2d4; }
  .studio-v3 .catalog-card-actions>button:last-child { padding-left: 3px!important; }
  .studio-v3 .v3-footer-bottom { flex-wrap: wrap; gap: 12px; }
  .studio-v3 .seasonal-card { flex-direction: column; gap: 1px; padding: 9px 3px; }
}
@media (max-width: 480px) {
  .hw-guides .hw-card-design-gallery { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px 9px; }
  .hw-guides .hw-library-refine { grid-template-columns: 1fr; }
  .hw-guides .hw-guide-topics { grid-template-columns: 1fr; }
  .hw-guides .hw-guide-topic-art { height: 270px; justify-content: center; }
  .hw-guides .hw-guide-topic-art .hw-guide-cover { width: 180px; max-width: 180px; }
  .hw-guides .hw-guide-word-art { width: 210px; max-width: 100%; height: 310px; }
  .hw-guides .hw-guide-word-art>span { font-size: 23px; }
  .hw-guides .hw-guide-small { max-width: none; }
  .studio-v3 .catalog-searchbar { flex-wrap: wrap; }
  .studio-v3 .catalog-search-field { flex-basis: 100%; }
  .studio-v3 .catalog-sort { margin-left: auto; }
  .studio-v3 .catalog-refinements label { flex-wrap: wrap; gap: 7px; }
  .studio-v3 .catalog-refinements select { width: 100%; max-width: 100%; }
}
@media (max-width: 360px) {
  .hw-guides .hw-guide-nav { flex-wrap: wrap; justify-content: space-between; padding-block: 14px; }
  .hw-guides .hw-guide-logo { font-size: 29px; }
  .hw-guides .hw-message-fields { grid-template-columns: 1fr; }
  .hw-guides .hw-message-actions button { flex: 1 1 auto; }
  .studio-v3 .v3-hero h1 { font-size: 31px; }
}
