/* Quiet Confidence — production styles, adapted from the reviewed Superdesign v2. */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #fff; color: #171717; font-family: 'Noto Sans KR', Inter, Arial, sans-serif; -webkit-font-smoothing: antialiased; word-break: keep-all; overflow-wrap: break-word; }
h1, h2, h3, h4, p { margin: 0; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
[hidden] { display: none !important; }
.font-en { font-family: Inter, Arial, sans-serif; }
.skip-link { position: fixed; top: 12px; left: 20px; z-index: 100; padding: 12px 20px; border-radius: 8px; background: #fff; color: #171717; transform: translateY(-200%); }
.skip-link:focus { transform: none; }
.ah-header { position: sticky; top: 0; z-index: 40; background: #fff; border-bottom: 1px solid #e5e5e5; }
.ah-header > div { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ah-wordmark { display: flex; align-items: center; gap: 12px; min-height: 44px; font-family: Inter, Arial, sans-serif; }
.ah-logo { display: block; width: 62px; height: auto; }
.ah-footer-logo { display: block; width: 72px; height: auto; }
.ah-desktop-nav { display: flex; align-items: center; gap: 32px; font: 500 13px Inter, Arial, sans-serif; }
.ah-desktop-nav a { display: inline-flex; align-items: center; min-height: 44px; }
.ah-desktop-nav a:hover { color: #555555; }
.btn-primary, .btn-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 52px; padding: 0 24px; border: 1px solid transparent; border-radius: 999px; font: 500 14px Inter, Arial, sans-serif; transition: background-color 180ms ease, border-color 180ms ease; }
.btn-primary { background: #171717; color: #fff; }
.btn-primary:hover { background: #333333; }
.btn-secondary { background: transparent; color: #171717; border-color: #e5e5e5; }
.btn-secondary:hover { border-color: #171717; }
.ah-hero-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); align-items: center; gap: 64px; }
.ah-hero-copy { min-width: 0; }
.hero-heading { font: 700 clamp(64px, 6vw, 96px)/.96 Inter, Arial, sans-serif; letter-spacing: -.04em; margin: 0 0 32px; }
.hero-heading span { display: block; white-space: nowrap; }
.ah-hero-description { max-width: 480px; margin-bottom: 40px; }
.ah-hero-description p { font-size: 18px; line-height: 1.65; }
.ah-hero-description .font-en { color: #555555; margin-bottom: 16px; }
.ah-hero-actions { display: flex; flex-wrap: wrap; gap: 16px; }
    :root { --ah-ink:#171717; --ah-muted:#555555; --ah-rule:#E5E5E5; --ah-accent:#171717; --ah-soft:#F5F5F5; }
    html { scroll-padding-top:88px; }
    a:focus-visible, button:focus-visible, summary:focus-visible { outline:2px solid var(--ah-accent); outline-offset:5px; }
    .ah-shell { width:calc(100% - 160px); max-width:1280px; margin:0 auto; }
    header > div { width:calc(100% - 160px); max-width:1280px; padding:0; height:80px; }
    header nav { gap:32px; }
    header .btn-primary { height:48px; padding:0 20px; font-size:12px; }
    .ah-hero { padding:96px 0 104px; }
    .ah-hero > div { width:calc(100% - 160px); max-width:1280px; }
    .hero-heading { font-size:clamp(64px,6vw,96px); }
    .hero-heading > span { white-space:nowrap; }
    .ah-section { padding:104px 0; border-top:1px solid var(--ah-rule); }
    .ah-eyebrow { font-family:Inter,Arial,sans-serif; font-size:12px; font-weight:500; letter-spacing:.08em; color:var(--ah-muted); margin-bottom:28px; }
    .ah-h2 { font-family:Inter,Arial,sans-serif; font-weight:500; font-size:clamp(30px,3.4vw,48px); letter-spacing:-.04em; line-height:1.12; margin:0; }
    .ah-copy { font-size:16px; line-height:1.85; color:var(--ah-muted); margin:0; }
    .ah-copy + .ah-copy { margin-top:20px; }
    .ah-heading-row { display:flex; justify-content:space-between; align-items:flex-end; gap:48px; margin-bottom:48px; }
    .ah-heading-row .ah-copy { max-width:410px; }
    .ah-intro { display:grid; grid-template-columns:1fr 1fr; gap:96px; }
    .ah-intro .ah-copy:first-child { font-size:22px; color:var(--ah-ink); line-height:1.65; }
    .ah-work-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
    .ah-work-frame { padding:32px; background:var(--ah-soft); border-radius:20px; aspect-ratio:1.32; overflow:hidden; display:flex; align-items:center; }
    .ah-site { width:100%; background:white; border:1px solid var(--ah-rule); border-radius:8px; overflow:hidden; box-shadow:0 4px 24px rgba(0,0,0,.04); transition:transform 280ms cubic-bezier(.4,0,.2,1); }
    .ah-work-frame:hover .ah-site { transform:scale(1.02); }
    .ah-mini-nav { display:flex; justify-content:space-between; align-items:center; padding:14px 18px; font:8px Inter,Arial,sans-serif; }
    .ah-mini-nav strong { font-weight:600; }
    .ah-mini-grid { display:grid; grid-template-columns:1.15fr 1fr; min-height:180px; }
    .ah-mini-copy { padding:20px 18px; }
    .ah-mini-copy h3 { margin:16px 0; font:500 clamp(20px,2.1vw,32px)/1.08 Inter,Arial,sans-serif; letter-spacing:-.04em; }
    .ah-mini-dark { background:var(--ah-accent); color:white; padding:22px 20px 18px; }
    .ah-mini-dark .ah-mini-nav { padding:0 0 20px; }
    .ah-food-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:16px; align-items:center; }
    .ah-food-title { font:600 clamp(23px,2.6vw,37px)/1.02 Inter,Arial,sans-serif; letter-spacing:-.04em; }
    .ah-work-meta { display:flex; justify-content:space-between; align-items:center; margin-top:24px; gap:20px; }
    .ah-work-meta h3 { font:500 24px Inter,Arial,sans-serif; letter-spacing:-.03em; margin:0; }
    .ah-concept { font-size:11px; font-family:Inter,'Noto Sans KR',sans-serif; color:var(--ah-muted); }
    .ah-services { display:grid; grid-template-columns:repeat(4,1fr); margin-top:56px; }
    .ah-service { padding:28px 24px 8px 0; border-top:1px solid var(--ah-rule); }
    .ah-service + .ah-service { padding-left:24px; border-left:1px solid var(--ah-rule); }
    .ah-service h3 { font:500 28px Inter,Arial,sans-serif; letter-spacing:-.03em; margin:32px 0 18px; }
    .ah-service .ah-copy { font-size:14px; }
    .ah-industries { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
    .ah-industry { background:var(--ah-soft); border-radius:20px; padding:40px; display:flex; flex-direction:column; }
    .ah-industry h3 { font:500 32px/1.2 Inter,Arial,sans-serif; letter-spacing:-.04em; margin:24px 0; }
    .ah-industries .ah-eyebrow { margin-bottom:0; color:var(--ah-ink); }
    .ah-tags { font:12px/1.6 Inter,Arial,sans-serif; color:var(--ah-muted); margin:0 0 28px; }
    .ah-text-link { display:inline-flex; align-items:center; gap:20px; font:500 12px Inter,Arial,sans-serif; margin-top:32px; min-height:44px; align-self:flex-start; }
    .ah-arrow { display:inline-block; transition:transform 180ms cubic-bezier(.4,0,.2,1); }
    a:hover > .ah-arrow, button:hover > .ah-arrow { transform:translateX(3px); }
    .ah-packages { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
    .ah-package { border:1px solid var(--ah-rule); border-radius:12px; padding:32px; display:flex; flex-direction:column; }
    .ah-package:nth-child(2) { border-color:var(--ah-accent); background:var(--ah-soft); }
    .ah-package h3 { font:600 20px Inter,Arial,sans-serif; margin:0 0 32px; }
    .ah-package .ah-copy { font-size:14px; min-height:80px; }
    .ah-price { font:500 34px Inter,Arial,sans-serif; letter-spacing:-.04em; margin:30px 0; }
    .ah-price small { display:block; font:12px Inter,Arial,sans-serif; color:var(--ah-muted); letter-spacing:0; margin-bottom:8px; }
    .ah-package ul { list-style:none; padding:24px 0 0; margin:0 0 32px; border-top:1px solid var(--ah-rule); }
    .ah-package li { font:13px/2.15 Inter,Arial,sans-serif; }
    .ah-button { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:50px; padding:0 24px; border:1px solid var(--ah-rule); border-radius:999px; font:500 12px Inter,Arial,sans-serif; color:var(--ah-ink); background:transparent; transition:background-color 180ms cubic-bezier(.4,0,.2,1), border-color 180ms cubic-bezier(.4,0,.2,1); cursor:pointer; }
    .ah-button:hover { border-color:var(--ah-ink); }
    .ah-package .ah-button { margin-top:auto; }
    .ah-package:nth-child(2) .ah-button { background:var(--ah-accent); color:white; border-color:var(--ah-accent); }
    .ah-package:nth-child(2) .ah-button:hover { background:#333333; }
    .ah-quote-note { font-size:13px; line-height:1.8; color:var(--ah-muted); margin:24px 0 0; }
    .ah-process { display:grid; grid-template-columns:repeat(5,1fr); margin-top:48px; gap:24px; }
    .ah-step { border-top:1px solid var(--ah-rule); padding-top:24px; }
    .ah-step small { font:12px Inter,Arial,sans-serif; color:var(--ah-muted); }
    .ah-step h3 { font:500 24px Inter,Arial,sans-serif; margin:24px 0 18px; }
    .ah-step .ah-copy { font-size:14px; }
    .ah-about { display:grid; grid-template-columns:1fr 1fr; gap:96px; }
    .ah-about .ah-h2 { max-width:390px; }
    .ah-contact-wrap { padding:0 0 80px; }
    .ah-contact { background:var(--ah-accent); color:white; border-radius:20px; padding:72px 64px; display:grid; grid-template-columns:1.35fr 1fr; gap:64px; align-items:center; }
    .ah-contact .ah-eyebrow { color:#E5E5E5; margin-bottom:24px; }
    .ah-contact h2 { font:600 clamp(44px,5vw,72px)/1 Inter,Arial,sans-serif; letter-spacing:-.045em; margin:0 0 24px; }
    .ah-contact .ah-copy { color:#FFFFFF; font-size:16px; }
    .ah-contact .ah-button { background:white; color:var(--ah-accent); margin-top:32px; border-color:white; }
    .ah-footer { border-top:1px solid var(--ah-rule); padding:48px 0 28px; }
    .ah-footer-top { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:48px; }
    .ah-footer-wordmark { font:600 26px Inter,Arial,sans-serif; letter-spacing:-.04em; margin:0 0 12px; }
    .ah-footer p, .ah-footer span { font-size:12px; line-height:1.9; color:var(--ah-muted); margin:0; }
    .ah-footer-links { display:flex; gap:24px; justify-content:flex-end; }
    .ah-footer-bottom { border-top:1px solid var(--ah-rule); margin-top:40px; padding-top:24px; display:flex; justify-content:space-between; gap:24px; }
    .ah-mobile-menu { display:none; position:relative; }
    .ah-mobile-menu summary { list-style:none; min-width:60px; min-height:44px; display:flex; align-items:center; justify-content:space-between; gap:10px; font:500 11px Inter,Arial,sans-serif; cursor:pointer; }
    .ah-mobile-menu summary::-webkit-details-marker { display:none; }
    .ah-mobile-menu nav { position:absolute; right:0; top:48px; min-width:220px; border:1px solid var(--ah-rule); border-radius:12px; background:white; padding:16px; display:flex; flex-direction:column; gap:0; box-shadow:0 8px 24px rgba(0,0,0,.04); }
    .ah-mobile-menu nav a { font:14px Inter,Arial,sans-serif; padding:14px 8px; }
    @media(max-width:1023px) {
      .ah-shell, header > div, .ah-hero > div { width:calc(100% - 64px); }
      .ah-header .ah-desktop-nav, .ah-header > div > .btn-primary { display:none; }
      .ah-mobile-menu { display:block; }
      .ah-hero { padding:64px 0 80px; }
      .hero-heading { font-size:clamp(56px,8.7vw,82px); }
      .ah-services { grid-template-columns:1fr 1fr; gap:32px 0; }
      .ah-service:nth-child(3) { padding-left:0; border-left:0; }
      .ah-about { gap:48px; }
      .ah-package { padding:24px; }
      .ah-price { font-size:28px; }
      .ah-contact { gap:40px; padding:48px; }
      .ah-process { gap:16px; }
    }
    @media(max-width:767px) {
      .ah-shell, header > div, .ah-hero > div { width:calc(100% - 40px); }
      header > div { height:64px; }
      .ah-hero { padding:48px 0 64px; }
      .hero-heading { font-size:clamp(36px,10.8vw,52px); line-height:1.02; margin-bottom:24px; }
      .ah-hero-actions { display:grid; grid-template-columns:1fr; gap:12px; }
      .ah-hero-actions a { width:100%; }
      .ah-section { padding:64px 0; }
      .ah-eyebrow { font-size:11px; margin-bottom:24px; }
      .ah-h2 { font-size:32px; }
      .ah-about { grid-template-columns:1fr; gap:32px; }
      .ah-intro .ah-copy:first-child { font-size:20px; }
      .ah-copy { font-size:15px; }
      .ah-heading-row { align-items:flex-start; flex-direction:column; gap:24px; margin-bottom:32px; }
      .ah-work-grid, .ah-industries, .ah-packages { grid-template-columns:1fr; gap:32px; }
      .ah-work-frame { padding:22px; aspect-ratio:1.25; }
      .ah-mini-copy h3 { font-size:24px; }
      .ah-food-title { font-size:28px; }
      .ah-work-meta { align-items:flex-start; flex-direction:column; gap:10px; }
      .ah-work-meta h3 { font-size:24px; }
      .ah-services { grid-template-columns:1fr; margin-top:32px; gap:0; }
      .ah-service, .ah-service + .ah-service { border-left:0; padding:24px 0; }
      .ah-service h3 { margin:16px 0; }
      .ah-industry { padding:28px; }
      .ah-industry h3 { font-size:28px; }
      .ah-package { padding:28px; }
      .ah-package h3 { margin-bottom:24px; }
      .ah-package .ah-copy { min-height:0; }
      .ah-price { font-size:34px; }
      .ah-process { grid-template-columns:1fr; gap:0; margin-top:32px; }
      .ah-step { display:grid; grid-template-columns:28px 90px 1fr; gap:12px; align-items:start; padding:24px 0; }
      .ah-step small { padding-top:4px; }
      .ah-step h3 { font-size:20px; margin:0; }
      .ah-step .ah-copy { font-size:13px; }
      .ah-contact-wrap { padding:0 0 48px; }
      .ah-contact { grid-template-columns:1fr; padding:40px 28px; gap:32px; }
      .ah-contact h2 { font-size:44px; }
      .ah-contact .ah-copy { font-size:14px; }
      .ah-contact .ah-button { width:100%; }
      .ah-footer { padding:40px 0 24px; }
      .ah-footer-top { grid-template-columns:1fr; gap:24px; }
      .ah-footer-links { justify-content:flex-start; }
      .ah-footer-bottom { margin-top:32px; flex-direction:column; gap:8px; }
    }
    @media(prefers-reduced-motion:reduce) {
      html { scroll-behavior:auto; }
      *, *::before, *::after { animation:none; transition:none; }
      .ah-work-frame:hover .ah-site, a:hover > .ah-arrow, button:hover > .ah-arrow, .group:hover .arrow-icon { transform:none; }
    }


/* Production behavior and contact. */
.ah-footer-links a { display: inline-flex; align-items: center; min-height: 44px; font: 12px/1.6 Inter, Arial, sans-serif; overflow-wrap: anywhere; }
.ah-footer-links a:hover { color: var(--ah-accent); }
.ah-direct-email { display: inline-flex; align-items: center; min-height: 44px; margin-top: 20px; font: 13px/1.6 Inter, Arial, sans-serif; overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 4px; }
.ah-contact .ah-button:hover { background: #efefef; border-color: #efefef; }
.ah-mobile-menu[open] summary span { font-size: 0; }
.ah-mobile-menu[open] summary span::after { content: '−'; font-size: 16px; }
.ah-inquiry { width: min(600px, calc(100% - 32px)); max-height: calc(100dvh - 32px); border: 1px solid var(--ah-rule); border-radius: 20px; padding: 0; color: var(--ah-ink); background: #fff; overflow-y: auto; }
.ah-inquiry::backdrop { background: rgba(26,26,26,.4); }
html:has(.ah-inquiry[open]) { overflow: hidden; }
.ah-inquiry-inner { padding: 40px; }
.ah-inquiry-heading { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 28px; }
.ah-inquiry-heading h2 { font: 500 32px/1.1 Inter, Arial, sans-serif; letter-spacing: -.04em; margin-bottom: 12px; }
.ah-inquiry-heading p { font-size: 13px; color: var(--ah-muted); line-height: 1.7; }
.ah-close { flex: 0 0 44px; min-height: 44px; margin: -10px -10px 0 0; border: 0; border-radius: 50%; background: transparent; font: 26px/1 Inter, sans-serif; color: var(--ah-ink); }
.ah-close:hover { background: var(--ah-soft); }
.ah-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ah-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.ah-field-wide { grid-column: 1 / -1; }
.ah-field label { font-size: 13px; font-weight: 500; }
.ah-field label span { color: var(--ah-muted); font-weight: 400; font-size: 11px; margin-left: 4px; }
.ah-field input, .ah-field select, .ah-field textarea { width: 100%; border: 1px solid var(--ah-rule); border-radius: 8px; padding: 12px 14px; min-height: 48px; font-size: 16px; color: var(--ah-ink); background: #fff; }
.ah-field textarea { resize: vertical; min-height: 130px; line-height: 1.65; }
input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--ah-accent); outline-offset: 3px; }
.ah-form-note { margin: 20px 0; font-size: 12px; color: var(--ah-muted); line-height: 1.8; }
.ah-form-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.ah-form-actions .btn-primary { flex: 1; }
.ah-form-actions .btn-secondary { font-family: inherit; font-size: 13px; }
.ah-form-status { margin-top: 20px; font-size: 13px; line-height: 1.8; }
.ah-mail-fallback { margin-top: 12px; padding-top: 16px; border-top: 1px solid var(--ah-rule); }
.ah-mail-fallback summary { cursor: pointer; font-size: 12px; min-height: 44px; display: flex; align-items: center; gap: 8px; }
.ah-mail-fallback summary::after { content: '+'; }
.ah-mail-fallback[open] summary::after { content: '−'; }
.ah-mail-fallback textarea { width: 100%; min-height: 160px; padding: 12px; border: 1px solid var(--ah-rule); border-radius: 8px; font-size: 14px; line-height: 1.7; background: var(--ah-soft); color: var(--ah-ink); resize: vertical; }
.ah-not-found { padding: 128px 0; min-height: calc(100vh - 81px); }
.ah-not-found h1 { font: 600 clamp(64px,12vw,120px)/1 Inter, Arial, sans-serif; letter-spacing: -.04em; }
.ah-not-found p { margin: 24px 0 32px; }
@media (max-width: 1023px) {
  .ah-hero-layout { grid-template-columns: 1fr; gap: 48px; }
}
@media (max-width: 767px) {
  .ah-hero-description { margin-bottom: 32px; }
  .ah-hero-description p { font-size: 16px; }
  .ah-hero-layout { gap: 40px; }
  .ah-inquiry-inner { padding: 28px 22px; }
  .ah-inquiry-heading h2 { font-size: 28px; }
  .ah-form-grid { grid-template-columns: 1fr; gap: 16px; }
  .ah-form-actions { flex-direction: column; }
  .ah-form-actions button { width: 100%; }
  .ah-footer-links { flex-wrap: wrap; gap: 12px 24px; }
}
@media (hover: hover) { .ah-button:hover .ah-arrow, .btn-primary:hover .ah-arrow, .btn-secondary:hover .ah-arrow { transform: translateX(3px); } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .ah-work-frame:hover .ah-site, a:hover > .ah-arrow, button:hover > .ah-arrow { transform: none !important; }
}

/* Simplified composition: fewer containers, repeated labels and decorative surfaces. */
.ah-hero-layout { grid-template-columns: 1fr; }
.ah-hero-copy { max-width: 880px; }
.ah-hero-description { max-width: 640px; }
.ah-hero-description .font-en { font-size: 13px; }
.ah-hero-actions .btn-secondary { border: 0; padding-left: 0; border-radius: 0; }
.ah-section { border-top: 0; padding: 80px 0; }
.ah-heading-row { margin-bottom: 32px; }
.ah-work-frame { padding: 24px; border-radius: 0; }
.ah-site { border: 0; border-radius: 0; box-shadow: none; }
.ah-mini-grid, .ah-food-grid { grid-template-columns: 1fr; }
.ah-mini-grid { min-height: 220px; }
.ah-mini-copy h3 { font-size: 44px; }
.ah-mini-dark { min-height: 274px; padding: 22px 28px; }
.ah-food-title { font-size: 40px; }
.ah-work-meta + .ah-copy { margin-top: 12px; font-size: 14px; }
.ah-service { padding-top: 24px; }
.ah-service h3 { margin: 0 0 20px; }
.ah-service + .ah-service { border-left: 0; }
.ah-industry { padding: 24px 0 0; border-top: 1px solid var(--ah-rule); background: transparent; border-radius: 0; }
.ah-industry .ah-eyebrow { margin-bottom: 16px; font-size: 18px; letter-spacing: 0; }
.ah-tags { margin-bottom: 12px; }
.ah-package { padding: 28px 0; border: 0; border-top: 1px solid var(--ah-rule); border-radius: 0; }
.ah-package:nth-child(2) { background: transparent; border-color: var(--ah-rule); }
.ah-package h3 { margin-bottom: 20px; }
.ah-package .ah-copy { min-height: 52px; }
.ah-package ul { border: 0; padding-top: 0; }
.ah-contact-wrap { padding-bottom: 48px; }
.ah-contact { background: transparent; color: var(--ah-ink); border-radius: 0; padding: 64px 0; border-top: 1px solid var(--ah-rule); }
.ah-contact h2 { margin-bottom: 0; }
.ah-contact .ah-copy { color: var(--ah-muted); }
.ah-contact .ah-button { background: var(--ah-accent); color: #fff; border-color: var(--ah-accent); }
.ah-contact .ah-button:hover { background: #333333; border-color: #333333; }
.ah-direct-email { font-size: 12px; }
.ah-footer-top { grid-template-columns: 1fr auto auto; align-items: center; gap: 24px; }
.ah-footer-wordmark { margin-bottom: 0; font-size: 18px; }
.ah-footer-bottom { border: 0; margin-top: 20px; padding-top: 0; }
@media (max-width: 767px) {
  .ah-section { padding: 48px 0; }
  .ah-work-frame { padding: 20px; aspect-ratio: auto; min-height: 284px; }
  .ah-mini-copy h3 { font-size: 36px; }
  .ah-mini-grid { min-height: 230px; }
  .ah-mini-dark { min-height: 264px; }
  .ah-food-title { font-size: 34px; }
  .ah-service h3 { margin: 0 0 16px; }
  .ah-industry, .ah-package { padding: 24px 0; }
  .ah-package .ah-copy { min-height: 0; }
  .ah-contact { padding: 48px 0; }
  .ah-footer-top { grid-template-columns: 1fr auto; }
  .ah-footer-links:empty { display: none; }
}

/* Text-led case studies; imagery is optional rather than a layout requirement. */
.ah-case-link { display:inline-flex; gap:14px; align-items:center; min-height:44px; margin-top:12px; font-size:13px; color:var(--ah-accent); }
.ah-case-link:hover, .ah-case-back:hover, .ah-case-bottom a:hover { text-decoration:underline; text-underline-offset:5px; }
.ah-case-shell { width:calc(100% - 160px); max-width:960px; margin:0 auto; }
.ah-case-back { display:inline-flex; align-items:center; min-height:44px; font:500 13px Inter,Arial,sans-serif; color:var(--ah-muted); margin:40px 0 48px; }
.ah-case-intro { position:static; border:0; background:transparent; }
.ah-case-label { font:500 11px/1.6 Inter,Arial,sans-serif; letter-spacing:.08em; color:var(--ah-muted); margin-bottom:20px; }
.ah-case-intro h1 { font:600 clamp(42px,6vw,72px)/1.06 Inter,Arial,sans-serif; letter-spacing:-.045em; margin-bottom:24px; }
.ah-case-lead { max-width:660px; font-size:20px; line-height:1.7; }
.ah-case-scope { font:400 12px/1.8 Inter,Arial,sans-serif; color:var(--ah-muted); margin-top:24px; }
.ah-case-scope span { padding:0 10px; }
.ah-case-note { font-size:12px; color:var(--ah-muted); line-height:1.8; margin-top:12px; }
.ah-case-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin:48px 0 0; padding:28px 0; border-top:1px solid var(--ah-rule); border-bottom:1px solid var(--ah-rule); }
.ah-case-summary dt { font-size:12px; color:var(--ah-muted); margin-bottom:12px; }
.ah-case-summary dd { margin:0; font-size:14px; line-height:1.85; }
.ah-case-story { max-width:680px; margin:0 auto; }
.ah-case-story section { padding-top:72px; }
.ah-case-story .ah-case-label { margin-bottom:12px; }
.ah-case-story h2 { font-size:28px; line-height:1.4; font-weight:500; letter-spacing:-.04em; margin-bottom:24px; }
.ah-case-story p:not(.ah-case-label), .ah-case-story li { font-size:16px; line-height:1.95; color:var(--ah-muted); }
.ah-case-story ul { margin:24px 0 0; padding-left:20px; }
.ah-case-story li + li { margin-top:8px; }
.ah-case-decision + .ah-case-decision { margin-top:32px; }
.ah-case-decision h3 { font-size:17px; font-weight:500; margin-bottom:10px; }
.ah-case-contact { margin-top:80px; padding:40px 0; border-top:1px solid var(--ah-rule); display:flex; align-items:center; justify-content:space-between; gap:24px; }
.ah-case-contact h2 { font-size:20px; font-weight:500; line-height:1.6; }
.ah-case-bottom { display:flex; justify-content:space-between; gap:24px; border-top:1px solid var(--ah-rule); padding:24px 0 56px; font-size:13px; }
.ah-case-bottom a { display:inline-flex; align-items:center; min-height:44px; }
@media (max-width:767px) {
  .ah-case-shell { width:calc(100% - 40px); }
  .ah-case-back { margin:24px 0 32px; }
  .ah-case-lead { font-size:17px; }
  .ah-case-summary { grid-template-columns:1fr; gap:24px; margin-top:32px; }
  .ah-case-summary dt { margin-bottom:6px; }
  .ah-case-story section { padding-top:48px; }
  .ah-case-story h2 { font-size:25px; margin-bottom:20px; }
  .ah-case-story p:not(.ah-case-label), .ah-case-story li { font-size:15px; }
  .ah-case-contact { margin-top:56px; flex-direction:column; align-items:flex-start; }
  .ah-case-bottom { padding-bottom:32px; }
}

.ah-work-cover { display:flex; flex-direction:column; justify-content:space-between; gap:36px; padding:32px; min-height:300px; background:#f5f5f5; color:var(--ah-accent); }
.ah-work-cover > span { font:500 10px/1.6 Inter,Arial,sans-serif; letter-spacing:.09em; }
.ah-work-cover strong { font:500 clamp(36px,4vw,56px)/1.1 Inter,Arial,sans-serif; letter-spacing:-.045em; }
.ah-work-cover-dark { background:var(--ah-accent); color:#fff; }
.ah-work-cover:hover strong { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:8px; }
@media(max-width:767px) { .ah-work-cover { padding:24px; min-height:250px; } }

/* Minimal hierarchy: one lead statement, work as content, supporting information quieter. */
.ah-header { border-bottom:0; }
.ah-header > .ah-shell { height:76px; }
.ah-header .btn-primary { background:transparent; color:var(--ah-ink); padding:0; border-radius:0; }
.ah-hero { padding:100px 0 112px; }
.ah-hero > .ah-shell { width:calc(100% - 160px); }
.ah-studio-label { font:400 12px/1.6 Inter,Arial,sans-serif; color:var(--ah-muted); margin-bottom:28px; }
.hero-heading { font-family:'Noto Sans KR',Arial,sans-serif; font-size:clamp(34px,4.1vw,56px); font-weight:500; line-height:1.42; letter-spacing:-.045em; margin-bottom:24px; }
.ah-hero-description { font-size:15px; color:var(--ah-muted); line-height:1.8; margin-bottom:32px; max-width:none; }
.btn-primary { min-height:44px; font-family:inherit; font-size:13px; padding:0 20px; font-weight:400; }
.ah-hero-actions { align-items:center; gap:28px; }
.ah-text-link { display:inline-flex; align-items:center; min-height:44px; gap:16px; font-size:13px; }
.ah-text-link:hover { text-decoration:underline; text-underline-offset:4px; }
.ah-section { padding:64px 0; }
.ah-h2 { font-size:18px; font-weight:500; letter-spacing:-.02em; line-height:1.4; }
.ah-work-list { margin-top:32px; }
.ah-work-row { display:grid; grid-template-columns:1fr 1.65fr 90px 24px; align-items:center; gap:24px; min-height:112px; border-top:1px solid var(--ah-rule); }
.ah-work-row:last-child { border-bottom:1px solid var(--ah-rule); }
.ah-work-row h3 { font:500 28px/1.3 Inter,Arial,sans-serif; letter-spacing:-.035em; }
.ah-work-row p { font-size:14px; color:var(--ah-muted); line-height:1.7; }
.ah-work-type { font:400 12px/1.6 Inter,Arial,sans-serif; color:var(--ah-muted); }
.ah-work-row:hover h3 { text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px; }
.ah-service-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.ah-studio-about { margin-top:24px; font-size:14px; color:var(--ah-muted); line-height:1.9; }
.ah-service-list { margin:0; }
.ah-service-list > div { display:grid; grid-template-columns:140px 1fr; gap:20px; padding:16px 0; border-bottom:1px solid var(--ah-rule); }
.ah-service-list > div:first-child { padding-top:0; }
.ah-service-list dt { font:400 14px/1.8 Inter,Arial,sans-serif; }
.ah-service-list dd { margin:0; font-size:14px; color:var(--ah-muted); line-height:1.8; }
.ah-heading-row { margin-bottom:32px; }
.ah-package { padding:24px 0; }
.ah-package h3 { font:500 14px/1.5 Inter,Arial,sans-serif; margin-bottom:12px; }
.ah-package .ah-copy { font-size:13px; min-height:44px; }
.ah-price { font-size:26px; font-weight:400; margin:20px 0; letter-spacing:-.025em; }
.ah-price small { font-size:11px; margin-right:8px; }
.ah-package li { font-size:13px; line-height:1.8; }
.ah-package .ah-button { border:0; border-radius:0; padding:0; justify-content:flex-start; min-height:44px; font-family:inherit; font-weight:400; font-size:13px; background:transparent; }
.ah-package .ah-button:hover { text-decoration:underline; text-underline-offset:4px; }
.ah-contact { padding:64px 0; grid-template-columns:1fr 1fr; align-items:start; }
.ah-contact h2 { font-family:inherit; font-size:28px; font-weight:400; line-height:1.5; letter-spacing:-.035em; }
.ah-contact .ah-copy { font-size:14px; }
.ah-contact .ah-button { font-family:inherit; font-weight:400; font-size:13px; min-height:44px; padding:0 20px; margin-top:24px; }
.ah-direct-email { font-size:12px; margin-top:12px; color:var(--ah-muted); text-decoration:none; }
.ah-direct-email:hover { text-decoration:underline; }
.ah-inquiry { border-radius:12px; }
.ah-inquiry-heading h2 { font-family:inherit; font-size:26px; font-weight:400; }
.ah-case-intro h1 { font-weight:500; font-size:clamp(36px,4.5vw,56px); }
.ah-case-label { font-size:10px; letter-spacing:.04em; }
.ah-case-lead { font-size:18px; }
.ah-case-story { margin:48px 0 0; }
.ah-case-story section { padding-top:40px; }
.ah-case-story section:first-child { border-top:1px solid var(--ah-rule); }
.ah-case-story h2 { font-size:22px; font-weight:400; margin-bottom:20px; }
.ah-case-decision h3 { font-size:16px; font-weight:500; }
.ah-case-story p:not(.ah-case-label), .ah-case-story li { font-size:15px; }
@media(max-width:767px) {
  .ah-header > .ah-shell { height:64px; }
  .ah-logo { width:56px; }
  .ah-footer-logo { width:62px; }
  .ah-hero { padding:64px 0 72px; }
  .ah-hero > .ah-shell { width:calc(100% - 40px); }
  .hero-heading { font-size:32px; line-height:1.5; }
  .ah-studio-label { margin-bottom:24px; }
  .ah-section { padding:40px 0; }
  .ah-work-row { grid-template-columns:1fr 24px; gap:8px 16px; padding:24px 0; }
  .ah-work-row h3 { font-size:24px; }
  .ah-work-row p { grid-column:1; font-size:13px; }
  .ah-work-row .ah-work-type { grid-column:1; font-size:11px; margin-top:4px; }
  .ah-work-row > span:last-child { grid-column:2; grid-row:1; }
  .ah-service-layout { grid-template-columns:1fr; gap:32px; }
  .ah-service-list > div { grid-template-columns:112px 1fr; gap:12px; }
  .ah-service-list dd { font-size:13px; }
  .ah-package .ah-copy { min-height:0; }
  .ah-contact { padding:40px 0; grid-template-columns:1fr; gap:24px; }
  .ah-contact h2 { font-size:24px; }
  .ah-case-story { margin-top:32px; }
}
.ah-package:nth-child(2) .ah-button, .ah-package:nth-child(2) .ah-button:hover { background:transparent; color:var(--ah-ink); border:0; }
.ah-price small { display:inline; }
@media(max-width:767px) {
  .ah-hero-actions { display:flex; gap:24px; }
  .ah-hero-actions a { width:auto; }
}

/* Actual project screens, kept within the quiet work list. */
.ah-work-row { grid-template-columns:180px 1fr 1.5fr 70px 24px; padding:24px 0; }
.ah-work-thumb { display:block; width:180px; aspect-ratio:16/9; height:auto; object-fit:cover; border:1px solid var(--ah-rule); background:#fff; }
@media(max-width:1023px) {
 .ah-work-row { grid-template-columns:140px 1fr 24px; gap:12px 24px; }
 .ah-work-thumb { width:140px; grid-row:1/4; }
 .ah-work-row h3 { grid-column:2; }
 .ah-work-row p, .ah-work-row .ah-work-type { grid-column:2; }
 .ah-work-row > span:last-child { grid-column:3; grid-row:1; }
}
@media(max-width:767px) {
 .ah-work-row { grid-template-columns:1fr 24px; gap:8px 16px; }
 .ah-work-thumb { width:100%; grid-column:1/-1; grid-row:1; margin-bottom:12px; }
 .ah-work-row h3 { grid-column:1; grid-row:2; }
 .ah-work-row p, .ah-work-row .ah-work-type { grid-column:1; }
 .ah-work-row > span:last-child { grid-column:2; grid-row:2; }
}

.ah-case-screen { margin:40px 0 0; }
.ah-case-screen img { display:block; width:100%; height:auto; border:1px solid var(--ah-rule); }
.ah-case-screen figcaption { margin-top:12px; font-size:11px; line-height:1.7; color:var(--ah-muted); }

/* Korean labels lead; short English names remain a quiet secondary cue. */
.ah-label-en { display:inline-block; margin-left:10px; font-size:12px; font-weight:400; letter-spacing:0; color:var(--ah-muted); }
.ah-service-en { display:block; font-size:11px; line-height:1.5; color:var(--ah-muted); }
.ah-desktop-nav { font-family:inherit; }
.ah-service-list dt, .ah-package h3 { font-family:inherit; }

/* Package benefits stay visible; production scope is available on demand. */
.ah-package-intro { margin:0 0 32px; font-size:14px; line-height:1.9; color:var(--ah-muted); }
.ah-package-result { margin:8px 0 12px; font-size:18px; line-height:1.6; letter-spacing:-.025em; }
.ah-package { display:grid; grid-template-rows:auto auto 1fr auto auto; }
.ah-package .ah-copy { min-height:0; }
.ah-package .ah-price { margin:32px 0 20px; }
.ah-package .ah-button { margin-top:0; justify-self:start; }
.ah-package-details { margin-top:32px; border-top:1px solid var(--ah-rule); }
.ah-package-details summary { display:flex; align-items:center; justify-content:space-between; min-height:64px; font-size:14px; cursor:pointer; list-style:none; }
.ah-package-details summary::-webkit-details-marker { display:none; }
.ah-details-mark::before { content:'+'; font-size:20px; font-weight:400; }
.ah-package-details[open] .ah-details-mark::before { content:'−'; }
.ah-table-scroll { overflow-x:auto; }
.ah-package-table { width:100%; min-width:680px; border-collapse:collapse; font-size:13px; line-height:1.8; text-align:left; }
.ah-package-table th, .ah-package-table td { padding:18px 16px; border-bottom:1px solid var(--ah-rule); vertical-align:top; }
.ah-package-table th { font-weight:500; }
.ah-package-table td { color:var(--ah-muted); width:27%; }
.ah-package-table th:first-child { padding-left:0; }
.ah-package-table thead span { display:block; font-size:11px; font-weight:400; color:var(--ah-muted); }
.ah-table-hint { display:none; }
@media(max-width:767px) {
  .ah-package-intro { font-size:13px; }
  .ah-package .ah-copy { min-height:0; }
  .ah-package-result { font-size:18px; }
  .ah-package-details { margin-top:16px; }
  .ah-table-hint { display:block; margin:0 0 12px; font-size:11px; color:var(--ah-muted); }
}

.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }

/* A simple four-step handoff, without decorative cards or motion. */
.ah-process-section { background:var(--ah-soft); }
.ah-process-heading { margin:0; font-size:28px; line-height:1.5; font-weight:400; letter-spacing:-.035em; }
.ah-process-description { margin:20px 0 40px; font-size:14px; line-height:1.9; color:var(--ah-muted); }
.ah-process-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; list-style:none; padding:0; margin:0; }
.ah-process-steps li { border-top:1px solid var(--ah-rule); padding-top:24px; }
.ah-process-number { display:block; font:400 14px/1.6 Inter,Arial,sans-serif; color:var(--ah-muted); margin-bottom:24px; }
.ah-process-steps h3 { margin:0 0 12px; font-size:15px; line-height:1.6; font-weight:500; }
.ah-process-steps p { margin:0; font-size:13px; line-height:1.9; color:var(--ah-muted); }
@media(max-width:1023px) { .ah-process-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 24px; } }
@media(max-width:767px) {
  .ah-process-heading { font-size:24px; }
  .ah-process-description { font-size:13px; margin-bottom:32px; }
  .ah-process-steps { grid-template-columns:1fr; gap:24px; }
  .ah-process-steps li { display:grid; grid-template-columns:36px minmax(0,1fr); gap:8px 12px; padding-top:20px; }
  .ah-process-number { grid-row:1/3; margin:0; }
  .ah-process-steps h3, .ah-process-steps p { grid-column:2; margin:0; }
}

/* Direct inquiry channels */
.ah-kakao-link { display:inline-flex; align-items:center; min-height:44px; margin:24px 0 0 20px; font-size:13px; text-underline-offset:4px; }
.ah-inquiry-alternative { margin:24px 0; font-size:13px; line-height:1.7; }
.ah-inquiry-alternative a { text-underline-offset:4px; }
.ah-inquiry-alternative span { display:block; margin-top:8px; color:var(--ah-muted); }
@media (max-width:640px) { .ah-kakao-link { margin:8px 0 0; } }

.ah-spam-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.ah-form-actions button:disabled { opacity:.6; cursor:wait; }

/* Plain service information pages, consistent with the studio footer. */
.ah-footer-policy { display:flex; flex-wrap:wrap; gap:8px 24px; }
.ah-footer-policy a { display:inline-flex; align-items:center; min-height:44px; font-size:12px; color:var(--ah-muted); }
.ah-footer-policy a:hover { color:var(--ah-ink); }
.ah-info-shell { width:calc(100% - 160px); max-width:800px; margin:0 auto; padding:64px 0 88px; }
.ah-info-back { display:inline-flex; align-items:center; min-height:44px; margin-bottom:32px; font-size:13px; color:var(--ah-muted); }
.ah-info-intro { margin-bottom:48px; }
.ah-info-intro h1 { font-size:36px; font-weight:500; line-height:1.5; letter-spacing:-.04em; }
.ah-info-intro p { margin-top:16px; font-size:15px; line-height:1.9; color:var(--ah-muted); }
.ah-info-intro .ah-info-date { font-size:12px; }
.ah-info-content section { border-top:1px solid var(--ah-rule); padding:28px 0; }
.ah-info-content h2 { margin-bottom:16px; font-size:18px; font-weight:500; line-height:1.6; }
.ah-info-content p { margin-top:12px; font-size:14px; line-height:1.95; color:var(--ah-muted); }
.ah-info-content a { text-decoration:underline; text-underline-offset:4px; }
@media(max-width:767px) {
  .ah-info-shell { width:calc(100% - 40px); padding:32px 0 48px; }
  .ah-info-intro { margin-bottom:32px; }
  .ah-info-intro h1 { font-size:28px; }
}
