@font-face {
  font-family: Pretendard;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local('Pretendard'), url('./fonts/pretendard-400.woff2') format('woff2');
}
@font-face {
  font-family: Pretendard;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: local('Pretendard'), url('./fonts/pretendard-700.woff2') format('woff2');
}

/*
 * 아리랑 시각 표현 — https://arirang-lp.pages.dev/ 에서 추출한 LP 의 시각 언어.
 *
 * 색·폰트·간격 같은 '값'은 여기 쓰지 않는다. theme.json (site.yml 에서 생성)이 만든
 * CSS 변수 --wp--preset--color--* 를 쓴다. 여기 있는 것은 '형태'뿐이다.
 *
 * 클래스 이름 규칙: .ar-<블록>__<요소>--<변형>
 * blocks.py 가 생성하는 마크업과 짝을 이룬다. 한쪽만 고치면 깨진다.
 */

:root {
  --ar-radius-sm: 10px;
  --ar-radius-md: 14px;
  --ar-radius-lg: 20px;
  --ar-radius-xl: 24px;
  --ar-shadow-card: 0 14px 28px -12px rgba(13, 55, 150, .4);
  --ar-shadow-btn: 0 16px 32px -10px rgba(13, 55, 150, .42);
  --ar-section-y: clamp(56px, 8vw, 96px);
  --ar-gradient-hero: linear-gradient(165deg, #6FC0FF 0%, #3D9BFF 50%, #1E78F2 100%);
  --ar-gradient-cta: linear-gradient(135deg, #1450C8, #1A66E5 60%, #2E8BFF);
}

/* ── 기본 리듬 ───────────────────────────────────────────── */

body {
  -webkit-font-smoothing: antialiased;
  text-wrap: pretty;
}

/* 한국어는 단어 중간에서 줄이 끊기면 읽기 나쁘다.
   영어와 달리 한글은 어디서든 끊을 수 있어 브라우저 기본값이 "대행합/니다" 처럼
   자른다. 제목뿐 아니라 본문에도 적용해야 한다. */
body, p, li, td, th, dd, dt, figcaption {
  word-break: keep-all;
  overflow-wrap: anywhere;   /* 긴 URL·영문 단어는 예외적으로 끊어 넘침을 막는다 */
}

h1, h2, h3, .ar-hero__title, .ar-cta__heading {
  word-break: keep-all;
  text-wrap: balance;
  letter-spacing: -0.02em;
}

/* 섹션은 post-content(.entry-content) 안에 들어가므로 `.ar-main >` 로 잡으면
   선택자가 맞지 않는다. 중첩 깊이에 기대지 말고 클래스로 직접 잡는다. */
.ar-section {
  padding-block: var(--ar-section-y);
}

.ar-section--tint {
  background: var(--wp--preset--color--surface);
}

/* LP 는 섹션 제목을 가운데로 모은다 — 카드는 그대로 왼쪽 정렬로 둔다 */
.ar-section--center > .ar-eyebrow,
.ar-section--center > .ar-section__title,
.ar-section--center > .ar-section__body,
.ar-section--center > .ar-section__note {
  text-align: center;
}

.ar-eyebrow {
  font-size: 12.5px;
  font-weight: 800;
  letter-spacing: .12em;
  color: var(--wp--preset--color--primary);
  margin-bottom: 10px;
}

.ar-section__title {
  font-size: clamp(23px, 3.1vw, 33px);
  font-weight: 800;
  margin: 0 0 14px;
}

.ar-section__body {
  color: var(--wp--preset--color--muted);
  line-height: 1.8;
  margin: 0 0 34px;
  max-width: 64em;
}

.ar-section--center > .ar-section__body { margin-inline: auto; }

.ar-section__note {
  margin-top: 26px;
  font-weight: 700;
  color: var(--wp--preset--color--ink);
}

/* ── 헤더 ────────────────────────────────────────────────── */

.ar-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255, 255, 255, .93);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--wp--preset--color--border);
  padding-block: 0;
}

.ar-header__inner {
  min-height: 66px;
  gap: 16px;
}

/* 로고는 높이로 맞춘다. 가로 4.09:1 이라 너비로 지정하면 높이가 무너진다.
   마크업의 width 는 2배(280px)로 두어 고해상도 화면에서도 선명하게 나온다. */
.ar-header .wp-block-site-logo img {
  height: 34px;
  width: auto;
  max-width: none;
  display: block;
}

@media (max-width: 620px) {
  .ar-header .wp-block-site-logo img { height: 28px; }
}

.ar-header__right {
  gap: 20px;
  align-items: center;
}

.ar-header .wp-block-navigation {
  font-size: 15px;
  font-weight: 600;
  --wp--style--block-gap: 22px;
}

.ar-header .wp-block-navigation a:hover {
  color: var(--wp--preset--color--primary);
}

.ar-header__cta {
  gap: 8px;
}

@media (max-width: 900px) {
  /* 좁은 화면에서는 전화번호 버튼을 감춘다 — 카톡 하나로 좁힌다 */
  .ar-header__cta .ar-btn--ghost { display: none; }
}

/* ── 버튼 ────────────────────────────────────────────────── */

.ar-btn .wp-block-button__link {
  border-radius: var(--ar-radius-pill, 99px);
  font-weight: 700;
  padding: 14px 26px;
  line-height: 1.2;
  transition: transform .15s ease, box-shadow .15s ease;
}

.ar-btn .wp-block-button__link:hover {
  transform: translateY(-1px);
}

.ar-btn--kakao .wp-block-button__link {
  background: var(--wp--preset--color--kakao);
  color: var(--wp--preset--color--kakao-ink);
  box-shadow: 0 14px 30px -12px rgba(180, 150, 0, .5);
}

.ar-btn--primary .wp-block-button__link {
  background: var(--wp--preset--color--primary);
  color: #fff;
  box-shadow: var(--ar-shadow-btn);
}

.ar-btn--white .wp-block-button__link {
  background: #fff;
  color: var(--wp--preset--color--primary-dark);
  box-shadow: var(--ar-shadow-btn);
}

.ar-btn--ghost .wp-block-button__link {
  background: transparent;
  color: var(--wp--preset--color--ink);
  border: 1px solid var(--wp--preset--color--border);
  padding: 11px 18px;
  font-size: 14px;
}

/* ── 히어로 ──────────────────────────────────────────────── */

.ar-hero {
  position: relative;
  overflow: hidden;
  background: var(--ar-gradient-hero);
  color: #fff;
  padding-block: clamp(64px, 9vw, 104px) !important;
}

.ar-hero::after {
  /* 배경 사진 위에 얹는 어둠 — 흰 글자의 대비를 보장한다 (접근성) */
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(4, 24, 62, .34), rgba(4, 24, 62, .52));
  z-index: 0;
}

.ar-hero > * {
  position: relative;
  z-index: 1;
}

.ar-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.ar-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%;
}

.ar-hero__badge {
  display: inline-block;
  background: rgba(255, 255, 255, .18);
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 99px;
  padding: 7px 16px;
  font-size: 13.5px;
  font-weight: 700;
  margin-bottom: 20px;
}

.ar-hero__title {
  font-size: clamp(30px, 5vw, 46px);
  font-weight: 800;
  line-height: 1.28;
  color: #fff;
  margin: 0 0 20px;
}

.ar-hero__body {
  font-size: clamp(15px, 1.6vw, 18px);
  line-height: 1.75;
  color: rgba(255, 255, 255, .93);
  max-width: 46em;
  margin: 0 0 28px;
}

.ar-hero__note {
  margin-top: 14px;
  font-size: 13.5px;
  color: rgba(255, 255, 255, .8);
}

.ar-hero__caption {
  margin-top: 34px;
  font-size: 13px;
  color: rgba(255, 255, 255, .78);
  border-top: 1px solid rgba(255, 255, 255, .22);
  padding-top: 14px;
}

/* 홈 히어로는 2단이다 — 왼쪽 메시지, 오른쪽 신뢰 신호(사진+지표).
   LP 의 핵심 구조라 그대로 옮겼다. 좁은 화면에서는 위아래로 쌓인다. */
.ar-hero__grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
}

@media (max-width: 900px) {
  .ar-hero__grid { grid-template-columns: 1fr; }
}

.ar-heroCard {
  background: rgba(255, 255, 255, .14);
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: var(--ar-radius-xl);
  padding: 16px;
  backdrop-filter: blur(6px);
}

.ar-heroCard__photos {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.ar-heroCard__photo { position: relative; margin: 0; }

.ar-heroCard__photo img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--ar-radius-md);
  display: block;
}

.ar-heroCard__photo figcaption {
  position: absolute;
  left: 8px;
  bottom: 8px;
  background: rgba(7, 20, 46, .78);
  color: #fff;
  font-size: 11.5px;
  font-weight: 700;
  padding: 4px 9px;
  border-radius: 7px;
}

.ar-heroCard__caption {
  margin: 12px 0;
  text-align: center;
  font-size: 12.5px;
  color: rgba(255, 255, 255, .9);
}

.ar-heroCard__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.ar-heroCard__stat {
  background: rgba(255, 255, 255, .95);
  border-radius: var(--ar-radius-md);
  padding: 12px 14px;
  text-align: left;
}

.ar-heroCard__stat strong {
  display: block;
  font-size: 17px;
  font-weight: 800;
  color: var(--wp--preset--color--primary-dark);
  line-height: 1.3;
}

.ar-heroCard__stat span {
  font-size: 12px;
  color: var(--wp--preset--color--muted);
}

/* 노란 형광펜 — LP 의 시각 서명. 파랑 위 노랑이 브랜드 신호다. */
.ar-mark {
  background: linear-gradient(180deg, transparent 52%, var(--wp--preset--color--kakao) 52%);
  color: inherit;
  padding: 0 2px;
  border-radius: 3px;
}

.ar-hero .ar-mark {
  background: var(--wp--preset--color--kakao);
  color: var(--wp--preset--color--kakao-ink);
  padding: 2px 10px;
  border-radius: 9px;
  box-shadow: 0 6px 16px -8px rgba(120, 90, 0, .6);
  /* 형광 블록 안에서 줄이 끊기면 계단처럼 보인다 — 한 줄은 한 덩어리로 */
  white-space: nowrap;
}

.ar-hero__title {
  display: inline-block;
  font-size: clamp(24px, 3.2vw, 38px);
}

.ar-hero__title .ar-mark { line-height: 1.8; }

@media (max-width: 620px) {
  /* 좁은 화면에서는 한 줄이 안 들어가므로 형광만 유지하고 줄바꿈을 허용한다 */
  .ar-hero .ar-mark { white-space: normal; }
}

/* 페이지용 히어로 — 홈보다 낮고 조용하다 */
.ar-hero--page {
  padding-block: clamp(48px, 6vw, 72px) !important;
}

.ar-hero--page .ar-hero__title {
  font-size: clamp(26px, 3.6vw, 38px);
  margin-bottom: 12px;
}

/* ── 카드 (지표·강점·단계·서비스·사진) ───────────────────── */

.ar-cards {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.ar-card {
  background: #fff;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: var(--ar-radius-lg);
  padding: 26px 24px;
  box-shadow: var(--ar-shadow-card);
}

.ar-card__label {
  display: block;
  font-size: 12.5px;
  font-weight: 800;
  letter-spacing: .04em;
  color: var(--wp--preset--color--primary);
  margin-bottom: 8px;
}

.ar-card__title {
  font-size: 18.5px;
  font-weight: 700;
  color: var(--wp--preset--color--ink);
  margin: 0 0 10px;
}

.ar-card__body {
  font-size: 15px;
  line-height: 1.72;
  color: var(--wp--preset--color--muted);
  margin: 0;
}

.ar-card__badge {
  display: inline-block;
  background: var(--wp--preset--color--tint);
  color: var(--wp--preset--color--primary-dark);
  border-radius: 99px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 10px;
}

.ar-card__image img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: var(--ar-radius-md);
  margin-bottom: 16px;
  display: block;
}

/* 지표 카드 — 숫자를 크게, 설명을 작게 */
.ar-cards--stat {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.ar-cards--stat .ar-card {
  text-align: center;
  padding: 24px 16px;
  background: var(--wp--preset--color--tint);
  border-color: transparent;
  box-shadow: none;
}

.ar-cards--stat .ar-card__title {
  font-size: 24px;
  font-weight: 800;
  color: var(--wp--preset--color--primary-dark);
  margin-bottom: 4px;
}

.ar-cards--stat .ar-card__body {
  font-size: 13.5px;
}

/* 단계 카드 — 4단계가 한 줄에 놓여야 흐름으로 읽힌다 */
.ar-cards--step { grid-template-columns: repeat(4, 1fr); }

@media (max-width: 900px) { .ar-cards--step { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .ar-cards--step { grid-template-columns: 1fr; } }

/* 강점 카드는 LP 처럼 3열 고정 */
.ar-cards--feature { grid-template-columns: repeat(3, 1fr); }

@media (max-width: 900px) { .ar-cards--feature { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .ar-cards--feature { grid-template-columns: 1fr; } }

.ar-cards--step .ar-card {
  position: relative;
  padding-top: 30px;
}

.ar-cards--step .ar-card__label {
  font-size: 30px;
  font-weight: 900;
  color: var(--wp--preset--color--tint-2);
  line-height: 1;
  margin-bottom: 12px;
}

/* 서비스 카드 — 목록이 길어 한 줄에 둘 */
.ar-cards--service {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.ar-cards--service .ar-card ul {
  margin: 14px 0 0;
  padding-left: 1.1em;
  color: var(--wp--preset--color--muted);
  font-size: 15px;
  line-height: 1.9;
}

/* ── 2단 구성 (텍스트 + 이미지) ──────────────────────────── */

.ar-split {
  display: grid;
  gap: clamp(24px, 4vw, 52px);
  grid-template-columns: 1fr 1fr;
  align-items: center;
}

.ar-split--right .ar-split__media { order: 2; }

.ar-split__media img {
  width: 100%;
  /* 세로로 긴 사진이 들어오면 섹션 전체를 잡아먹는다 — 비율을 고정해 잘라 쓴다 */
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--ar-radius-xl);
  box-shadow: var(--ar-shadow-card);
  display: block;
}

.ar-split__body h2 {
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  color: var(--wp--preset--color--ink);
  margin: 0 0 16px;
}

.ar-split__body p {
  color: var(--wp--preset--color--muted);
  line-height: 1.8;
}

/* 2단 안의 작은 카드 — 현지팀 / 본사처럼 짝을 이루는 항목 */
.ar-split__col {
  background: var(--wp--preset--color--surface);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: var(--ar-radius-md);
  padding: 16px 18px;
  margin-top: 12px;
}

.ar-split__col strong {
  display: block;
  font-size: 15.5px;
  font-weight: 800;
  color: var(--wp--preset--color--primary-dark);
  margin-bottom: 4px;
}

.ar-split__col p { margin: 0; font-size: 14.5px; }

.ar-split__footnote {
  margin-top: 16px;
  padding: 12px 16px;
  background: var(--wp--preset--color--tint);
  border-radius: var(--ar-radius-md);
  font-size: 14px;
  font-weight: 700;
  color: var(--wp--preset--color--primary-dark);
  text-align: center;
}

.ar-split__body .ar-eyebrow { text-align: left; }

@media (max-width: 782px) {
  .ar-split { grid-template-columns: 1fr; }
  .ar-split--right .ar-split__media { order: 0; }
}

/* ── 알약 묶음 (LP 의 chips) ─────────────────────────────── */

.ar-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  margin-top: 22px;
  list-style: none;
  padding: 0;
}

.ar-chips li {
  background: #fff;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 99px;
  padding: 9px 16px;
  font-size: 14px;
  font-weight: 700;
  color: var(--wp--preset--color--primary-dark);
  box-shadow: 0 6px 14px -8px rgba(13, 55, 150, .35);
}

/* ── FAQ ─────────────────────────────────────────────────── */

.ar-faq { max-width: 780px; margin-inline: auto; }

.ar-faq__item {
  border-bottom: 1px solid var(--wp--preset--color--border);
  padding: 20px 0;
}

.ar-faq__q {
  font-size: 17px;
  font-weight: 700;
  color: var(--wp--preset--color--ink);
  margin: 0 0 10px;
}

.ar-faq__q::before {
  content: "Q. ";
  color: var(--wp--preset--color--primary);
  font-weight: 800;
}

.ar-faq__a {
  font-size: 15px;
  line-height: 1.8;
  color: var(--wp--preset--color--muted);
  margin: 0;
}

/* ── CTA 배너 ────────────────────────────────────────────── */

.ar-cta {
  background: var(--ar-gradient-cta);
  color: #fff;
  padding-block: clamp(56px, 7vw, 88px) !important;
}

.ar-cta__heading {
  font-size: clamp(24px, 3.4vw, 36px);
  font-weight: 800;
  color: #fff;
  margin: 0 0 16px;
}

.ar-cta__body {
  color: rgba(255, 255, 255, .9);
  line-height: 1.75;
  margin: 0 0 28px;
}

/* ── 표 (회사정보·사업자정보) ────────────────────────────── */

.ar-main .wp-block-table table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: var(--ar-radius-md);
  overflow: hidden;
  font-size: 15px;
}

.ar-main .wp-block-table td {
  border: 0;
  border-bottom: 1px solid var(--wp--preset--color--border);
  padding: 13px 16px;
}

.ar-main .wp-block-table tr:last-child td { border-bottom: 0; }

.ar-main .wp-block-table td:first-child {
  background: var(--wp--preset--color--surface);
  font-weight: 700;
  color: var(--wp--preset--color--ink);
  width: 34%;
  white-space: nowrap;
}

/* ── 블로그 ──────────────────────────────────────────────── */

/* 카테고리 내비 — 리스트·아카이브 상단의 알약 줄.
   마크업은 wpbuild.build_catnav() 가 blog.yml 에서 생성한다. */
.ar-catnav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  margin: 0 0 40px;
  padding: 0;
  list-style: none;
}

.ar-catnav a {
  display: inline-block;
  background: #fff;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 99px;
  padding: 9px 18px;
  font-size: 14px;
  font-weight: 700;
  color: var(--wp--preset--color--ink-soft);
  text-decoration: none;
  transition: border-color .15s ease, color .15s ease;
}

.ar-catnav a:hover {
  border-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--primary);
}

/* 현재 위치 강조 — WP 가 body 에 붙이는 클래스로 CSS 만으로 처리한다.
   블로그 홈(/blog/)은 .blog, 카테고리 페이지는 .category-<slug>. */
body.blog .ar-catnav a[data-cat="all"],
body.category-customs .ar-catnav a[data-cat="customs"],
body.category-freight-cost .ar-catnav a[data-cat="freight-cost"],
body.category-fcl-lcl .ar-catnav a[data-cat="fcl-lcl"],
body.category-china-logistics .ar-catnav a[data-cat="china-logistics"],
body.category-notice .ar-catnav a[data-cat="notice"] {
  background: var(--wp--preset--color--primary);
  border-color: var(--wp--preset--color--primary);
  color: #fff;
}

/* 브레드크럼 — 개별 글 상단 */
.ar-breadcrumb {
  gap: 8px;
  font-size: 13.5px;
  margin-bottom: 14px;
}

.ar-breadcrumb p { margin: 0; color: var(--wp--preset--color--muted); }
.ar-breadcrumb a { color: var(--wp--preset--color--muted); text-decoration: none; }
.ar-breadcrumb a:hover { color: var(--wp--preset--color--primary); }
.ar-breadcrumb__sep { opacity: .5; }
.ar-breadcrumb__cat a { color: var(--wp--preset--color--primary); font-weight: 700; }

.ar-archive__head { margin-bottom: 36px; }

.ar-archive__heading {
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
}

.ar-archive__desc {
  color: var(--wp--preset--color--muted);
  margin-top: 8px;
}

.ar-archive__list { gap: 28px 22px; }

.ar-archive__thumb img {
  border-radius: var(--ar-radius-md);
  box-shadow: var(--ar-shadow-card);
}

.ar-archive__cat a {
  font-size: 12.5px;
  font-weight: 800;
  color: var(--wp--preset--color--primary);
  text-decoration: none;
}

.ar-archive__title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  margin: 8px 0 6px;
}

.ar-archive__title a { text-decoration: none; color: var(--wp--preset--color--ink); }
.ar-archive__title a:hover { color: var(--wp--preset--color--primary); }

.ar-archive__excerpt {
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--wp--preset--color--muted);
}

.ar-pagination { margin-top: 48px; }

/* 본문 이미지 전역 방어선 — 콘텐츠가 어떤 마크업으로 오든 폭을 넘지 못한다.
   REST API 로 들어오는 글은 wp-block-image 가 아닌 맨 <img> 일 수 있는데(실제 사고),
   클래식 테마들이 기본으로 갖는 이 규칙이 커스텀 테마엔 없어서 원본 크기로 터졌다. */
.wp-block-post-content img {
  max-width: 100%;
  height: auto;
}

/* 글 본문 이미지는 카드와 같은 시각 언어로 */
.ar-single__body img {
  border-radius: var(--ar-radius-md);
  display: block;
  margin-inline: auto;
}

.ar-single { max-width: 100%; }
.ar-single__head { margin-bottom: 24px; }
.ar-single__title { font-size: clamp(26px, 3.6vw, 38px); font-weight: 800; line-height: 1.35; }
.ar-single__date { font-size: 13.5px; color: var(--wp--preset--color--muted); margin-top: 10px; }
.ar-single__thumb img { border-radius: var(--ar-radius-lg); }
.ar-single__body { font-size: 16.5px; line-height: 1.9; }
.ar-single__body h2 { margin-top: 2em; font-size: 24px; font-weight: 800; }
.ar-single__body h3 { margin-top: 1.6em; font-size: 19px; font-weight: 700; }
.ar-related { margin-top: 72px; border-top: 1px solid var(--wp--preset--color--border); padding-top: 40px; }

/* 관련글이 하나도 없으면(첫 글 시기) 제목만 덩그러니 남는다 — 통째로 감춘다 */
.ar-related:not(:has(li)) { display: none; }
.ar-related__heading { font-size: 20px; font-weight: 800; margin-bottom: 20px; }
.ar-latest { border-top: 1px solid var(--wp--preset--color--border); }
.ar-latest__heading { font-size: clamp(22px, 2.8vw, 30px); font-weight: 800; margin-bottom: 32px; }
.ar-latest__empty { color: var(--wp--preset--color--muted); }

/* ── 폼 ──────────────────────────────────────────────────── */

.ar-form {
  background: var(--wp--preset--color--surface);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: var(--ar-radius-xl);
  padding: clamp(22px, 3vw, 34px);
}

.ar-form label {
  display: block;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--wp--preset--color--ink);
  margin-bottom: 6px;
}

.ar-form .ar-form__required { color: #D93025; margin-left: 4px; }

.ar-form input[type="text"],
.ar-form input[type="tel"],
.ar-form input[type="email"],
.ar-form textarea {
  width: 100%;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: var(--ar-radius-sm);
  padding: 12px 14px;
  font-size: 15px;
  font-family: inherit;
  background: #fff;
}

.ar-form input:focus,
.ar-form textarea:focus {
  outline: 2px solid var(--wp--preset--color--primary-light);
  outline-offset: 1px;
  border-color: var(--wp--preset--color--primary);
}

.ar-form .ar-form__help {
  font-size: 13px;
  color: var(--wp--preset--color--muted);
  margin-top: 5px;
}

.ar-form__grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.ar-form__consent {
  margin-top: 22px;
  padding: 16px 18px;
  background: #fff;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: var(--ar-radius-md);
  font-size: 13.5px;
  line-height: 1.75;
  color: var(--wp--preset--color--muted);
}

.ar-form__consent label { display: inline; font-size: 14.5px; }

.ar-form input[type="submit"],
.ar-form .wpcf7-submit {
  margin-top: 22px;
  width: 100%;
  background: var(--wp--preset--color--primary);
  color: #fff;
  border: 0;
  border-radius: 99px;
  padding: 16px 24px;
  font-size: 16px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: var(--ar-shadow-btn);
}

/* 허니팟 — 사람에게는 보이지 않고 봇만 채운다 */
.ar-form__hp { position: absolute; left: -9999px; opacity: 0; height: 0; }

/* ── 푸터 ────────────────────────────────────────────────── */

.ar-footer {
  padding-block: 44px !important;
  font-size: 14px;
}

.ar-footer a { color: rgba(255, 255, 255, .82); text-decoration: none; }
.ar-footer a:hover { color: #fff; text-decoration: underline; }

.ar-footer__top { gap: 24px; align-items: flex-start; margin-bottom: 26px; }

/* 푸터 로고 — 어두운 배경이라 흰색으로 뒤집는다 (LP 와 동일) */
.ar-footer .wp-block-site-logo img {
  height: 30px;
  width: auto;
  max-width: none;
  display: block;
  filter: brightness(0) invert(1);
  opacity: .92;
}
.ar-footer__tagline { color: rgba(255, 255, 255, .7); margin-top: 10px; font-size: 13.5px; }
.ar-footer__tel { font-weight: 700; font-size: 16px; }

.ar-footer__legal {
  border-top: 1px solid rgba(255, 255, 255, .14);
  padding-top: 20px;
  font-size: 12.5px;
  line-height: 1.9;
  color: rgba(255, 255, 255, .62);
}

.ar-footer__legal a { text-decoration: underline; }

.ar-footer__copyright {
  margin-top: 18px;
  font-size: 12px;
  color: rgba(255, 255, 255, .45);
}

/* ── 접근성 ──────────────────────────────────────────────── */

a:focus-visible,
button:focus-visible,
input:focus-visible {
  outline: 3px solid var(--wp--preset--color--primary-light);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}
