/* ARNA / v28. Shared foundations and final editorial composition.
   Structural page styles load first; responsive corrections load last. */
:root {
  --color-paper:#f6f3ed;
  --color-paper-deep:#ece6de;
  --color-ink:#352b29;
  --color-ink-soft:#695b53;
  --color-wine:#49302f;
  --color-accent:#937564;
  --color-accent-ink:#7f6052;
  --color-rule:#d1c7bf;
  --color-rule-inverse:#f1e5d136;
  --bg:var(--color-paper);
  --ink:var(--color-ink);
  --wine:var(--color-wine);
  --line:var(--color-rule);
  --sans:'Noto Sans KR',sans-serif;
  --serif:'Cormorant Garamond',Georgia,serif;
  --content-width:1320px;
  --page-gutter:max(7.5%,calc((100% - var(--content-width))/2));
  --header-gutter:max(4.5%,calc((100% - 1440px)/2));
  --space-section:clamp(72px,7vw,112px);
  --space-section-small:clamp(52px,5vw,80px);
  --space-heading:clamp(28px,3vw,44px);
  --space-grid:clamp(28px,4vw,64px);
  --type-display:clamp(40px,4.5vw,68px);
  --type-heading:clamp(30px,3.15vw,46px);
  --type-subheading:clamp(20px,1.8vw,24px);
  --type-body:.9375rem;
  --type-small:.875rem;
  --type-caption:.75rem;
  --type-label:.6875rem;
  --leading-heading:1.35;
  --leading-body:1.75;
  --tracking-body:-.02em;
  --tracking-heading:-.04em;
  --radius-control:0;
  --radius-orb:50%;
  --control-height:52px;
  --nav-height:92px;
  --shadow-float:0 8px 28px #352b291c;
  --motion-fast:160ms;
  --motion-standard:280ms;
  --motion-disclosure:420ms;
  --motion-reveal:700ms;
  --motion-drift:20s;
  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-soft:cubic-bezier(.2,.7,.3,1);
}
body {--muted:var(--color-ink-soft)}
p {font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body)}
main p:not(.eyebrow):not(.serif) {text-wrap:pretty}
.home-editorial,.lip-article {--editorial-rule:var(--line);--editorial-tint:var(--color-paper-deep)}

/* One outer grid on every page, including wide desktop screens. */
.home-editorial .section,.home-editorial .space-section,.editorial-section,
.doctors-cover-shell,.sub-shell,.catalog-heading,.catalog-directory,.lip-cover,
.lip-next,.page-index,.site-footer {padding-inline:var(--page-gutter)}
.sub-shell {max-width:none}
.home-editorial .section,.editorial-section {padding-block:var(--space-section)}
.home-editorial .brand-story {padding-block:var(--space-section-small)}
.home-editorial .space-section {padding-block:var(--space-section)}
.doctors-cover-shell {padding-bottom:var(--space-section-small)}
.home-editorial .hero-copy {padding-inline:var(--page-gutter)}
.article-overview {margin-inline:var(--page-gutter)}
.catalog-edition {right:var(--page-gutter)}
.detail-layout,.lip-article .lip-layout {
  padding-inline:var(--page-gutter);max-width:none;margin-inline:0;
  grid-template-columns:190px minmax(0,1fr);gap:clamp(36px,5vw,76px);
}
.detail-content .editorial-section {padding:var(--space-section-small) 36px}
.lip-article .detail-content .lip-section {padding-block:var(--space-section-small)}
.lip-article .detail-content .lip-method {padding:40px 36px}

/* Korean carries the information; serif accents provide a quieter second voice. */
.sub-hero h1,.treatment-article .sub-hero h1,.lip-article .lip-hero h1,
.doctors-cover-heading h1,.visit-cover-heading h1,.catalog-heading h1 {
  font-size:var(--type-display);font-weight:300;line-height:1.28;
  letter-spacing:var(--tracking-heading);word-break:keep-all;text-wrap:balance;
}
.editorial-section h2,.detail-content .editorial-section h2,
.home-editorial .section-heading h2,.home-editorial .story-grid h2,
.home-booking h2,.lip-article .detail-content .lip-section h2,.lip-next h2 {
  font-size:var(--type-heading);font-weight:300;
  line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);
  word-break:keep-all;text-wrap:balance;
}
.detail-content .editorial-section h2 {font-size:clamp(29px,2.7vw,40px)}
.sub-hero .hero-en,.lip-article .lip-hero .hero-en,.doctors-cover-intro>.serif {
  font-size:clamp(29px,2.8vw,42px);line-height:1.12;color:var(--color-accent);
}
.eyebrow,.section-meta,.catalog-status>span {
  font-size:var(--type-label);font-weight:400;letter-spacing:.12em;line-height:1.6;
}
.section-meta {padding-bottom:18px}
.editorial-section>.eyebrow {margin-bottom:22px}
.home-editorial .section-heading {margin-bottom:var(--space-heading)}
.home-editorial .story-grid {column-gap:8%}
.home-editorial .story-grid p:not(.story-lead) {max-width:28em}
.home-editorial .story-grid .story-lead {font-size:19px;line-height:1.6;letter-spacing:-.025em}
.home-editorial .story-grid p,.home-editorial .treatment-body>p,
.home-editorial .section-intro,.sub-hero .hero-intro,.doctors-cover-intro>p:not(.serif) {
  font-size:var(--type-body);line-height:var(--leading-body);
}
.home-editorial .section-intro {max-width:26em}
.home-editorial .doctors .section-heading {align-items:end}
.home-editorial .doctors .section-intro {margin-top:0}
.sub-hero .hero-intro {margin-top:24px}
.editorial-section .section-deck {margin-top:20px}
.prose p,.principle-list p,.method-facts p,.detail-checks p,.care-steps p,
.detail-lead,.hero-intro,.section-deck,.faq-list details>div p,
.contact-checklist li,.detail-aftercare p,.channel>p:not(.eyebrow) {
  font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body);
}
.prose p,.principle-list p,.method-facts p,.detail-checks p,.detail-lead,
.faq-list details>div p {max-width:66ch}
.principle-list h3,.care-steps h3,.detail-checks h3,.detail-aftercare h3,
.concern-grid h3 {font-size:var(--type-subheading);font-weight:400;line-height:1.5;letter-spacing:-.025em}
.breadcrumbs,.doctor-info>p,.visual-credit,.reference-note {font-size:var(--type-caption)}
.breadcrumbs {padding-block:28px;gap:12px}
.breadcrumbs a {transition:color var(--motion-standard) var(--ease-out)}

/* The gap after a section heading is a deliberate part of the hierarchy. */
.editorial-section>h2+.principle-list {margin-top:var(--space-heading)}
.doctors-cover-shell~#conversation>.principle-list {margin-top:var(--space-heading)}
.principle-list li {padding-block:28px;gap:20px}
.principle-list li::before,.care-steps>li>span,.concern-grid .number {
  font-family:var(--serif);font-size:28px;font-weight:400;color:var(--color-accent);line-height:1.35;
}
.principle-list h3 {margin-bottom:12px;text-wrap:balance}
.principle-list+.text-link {margin-top:20px}
.care-steps {gap:var(--space-grid)}
.care-steps li {padding-top:26px}
.care-steps h3 {margin:16px 0 12px}
.faq-list summary {font-size:17px;letter-spacing:-.02em;padding-block:25px}
.faq-list details>div {padding-bottom:28px}
.doctor-biography {margin-top:26px;padding-top:26px}
.doctor-biography h4 {font-size:var(--type-caption);letter-spacing:.04em}
.doctor-biography section+section {margin-top:28px}
.doctor-biography li {font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body)}
.doctor-biography .doctor-context {line-height:1.8;margin-bottom:28px}
.sub-profile-grid {gap:var(--space-grid)}
.sub-profile-grid .doctor-info {padding-top:24px}

/* Publication-like finishing on selected brand moments; informational pages stay plain. */
.editorial-quote,.home-editorial .home-booking {isolation:isolate;position:relative}
.editorial-quote::before,.home-booking::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:url('/assets/brand-grain.svg');opacity:.035;
}
.editorial-quote {padding:var(--space-section) var(--page-gutter)}
.editorial-quote blockquote {font-size:var(--type-heading);line-height:1.5}
.editorial-quote>p {font-size:26px;color:#d0b8a8}
.editorial-quote>p::before {
  content:"";display:block;width:40px;height:1px;margin:28px auto;
  background:var(--color-rule-inverse);
}
.home-editorial .treatment .treatment-en {
  font-family:var(--serif);font-style:italic;font-size:25px;line-height:1.1;
  letter-spacing:-.015em;color:var(--color-accent-ink);margin-bottom:8px;
}
.home-editorial .treatment-index {font-family:var(--serif);font-size:17px;color:var(--color-accent-ink)}
.home-editorial .care-visual {height:auto;aspect-ratio:4/5;align-self:start}
.home-editorial .care-visual img {height:100%;object-fit:cover}
.home-editorial .doctor-info h3 {font-size:24px;font-weight:400;letter-spacing:-.03em}
.home-editorial .doctor-info>p:not(.doctor-training) {font-size:var(--type-caption)}
.lip-article .lip-hero .hero-intro,
.lip-article .lip-section :is(.lip-points,.lip-method-grid,.lip-expectations,.lip-checklist,.lip-recovery) p,
.lip-article .faq-list details>div p {font-size:var(--type-body);line-height:var(--leading-body)}
.home-directory>a,.home-more-treatments>a {transition:color var(--motion-standard) var(--ease-out)}
.home-more-treatments strong {font-weight:400}
.room-story {gap:9%;margin-top:clamp(48px,6vw,96px)}
.room-story img {aspect-ratio:4/5;max-height:640px;object-fit:cover}
.room-story:nth-of-type(2) img {aspect-ratio:5/4;object-position:center 42%}
.room-story:nth-of-type(3) img {aspect-ratio:6/5;object-position:center 45%}
.room-story>div {max-width:440px}
.room-story h2 {font-size:clamp(27px,2.7vw,40px);margin:18px 0 24px}
.room-story>div>p:last-child {max-width:31em;line-height:var(--leading-body)}
.treatment-visual:not(.media-device)::after {
  content:"";position:absolute;inset:0;border:1px solid #352b2912;pointer-events:none;
}
.visual-credit {font-size:11px;letter-spacing:.015em;line-height:1.5}
.catalog-group {gap:8%;padding-block:48px 64px}
.catalog-art>div {bottom:30px;left:30px}
.catalog-item {padding-block:28px}
.catalog-item h3 {font-size:24px;letter-spacing:-.03em}
.catalog-item-tag,.focus-topic,.home-more-treatments small,.lip-mini-label,.lip-recovery article>span {color:var(--color-accent-ink)}
.detail-rail nav a span,.method-facts article>span,
.lip-article .lip-section:not(.lip-method)>.eyebrow,.lip-points article>span,.lip-checklist li>span {
  color:var(--color-accent-ink);
}
.catalog-filters a span {color:var(--color-accent-ink);opacity:1}
.article-overview {padding-block:28px;margin-bottom:48px}
.article-overview dt,.lip-essentials dt {font-size:var(--type-caption);letter-spacing:.015em}
.article-overview dd {font-size:var(--type-body);line-height:1.75}
.consult-question {border-left:2px solid #b29984;padding:30px 32px}

/* Navigation and controls share a crisp, flat drawing language. */
.site-header,.subpage .site-header {height:var(--nav-height);padding-inline:var(--header-gutter);box-shadow:inset 0 -1px 0 #fff8ee14}
.site-header {transition:background var(--motion-standard) var(--ease-out),border-color var(--motion-standard) var(--ease-out)}
.site-header::before {opacity:.3}
.site-header.is-glass-hover::before {opacity:.55}
.desktop-nav {gap:clamp(20px,2.3vw,34px)}
.treatment-mega {padding-inline:var(--page-gutter)}
.desktop-nav>a,.treatment-navigation>summary {position:relative}
.desktop-nav>a[aria-current=page],.treatment-navigation.is-current>summary {border-bottom-color:transparent}
.desktop-nav>a::after,.treatment-navigation>summary::after {
  content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;
  background:currentColor;transform:scaleX(0);transform-origin:left;
  transition:transform var(--motion-standard) var(--ease-out);opacity:.7;
}
.desktop-nav>a[aria-current=page]::after,.treatment-navigation.is-current>summary::after {transform:scaleX(1)}
.desktop-nav>a:focus-visible::after,.treatment-navigation>summary:focus-visible::after {transform:scaleX(1)}
.button {min-height:var(--control-height);padding:15px 24px;gap:28px;border-radius:var(--radius-control);font-size:var(--type-small);font-weight:400;line-height:1.5}
.button-primary {background:var(--wine);border:1px solid var(--wine);color:var(--bg)}
.button-outline {background:transparent;color:var(--ink);border:1px solid #9c8b7e}
.button,.copy-address,.mega-close {transition:background-color var(--motion-standard) var(--ease-out),color var(--motion-standard) var(--ease-out),border-color var(--motion-standard) var(--ease-out),transform var(--motion-fast) var(--ease-out)}
.text-link,.copy-address {font-size:var(--type-small);line-height:1.5;min-height:44px;padding-bottom:6px}
.text-link {position:relative;isolation:isolate;border-bottom-color:#9d8a7a;transition:color var(--motion-standard) var(--ease-out)}
.text-link::after {content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--motion-standard) var(--ease-out)}
.text-link:focus-visible::after {transform:scaleX(1)}
.space-more .text-link {border-color:var(--color-rule-inverse)}
.button:disabled,.button[aria-disabled=true] {opacity:.45;cursor:not-allowed;transform:none}
a:focus-visible,button:focus-visible,summary:focus-visible {outline:2px solid #a98169;outline-offset:5px}
.channel-grid-three .text-link {margin-top:8px}
.channel-grid-three .channel-note {padding-top:18px}
.channel-grid-three .channel>p:not(.eyebrow):not(.channel-note) {line-height:var(--leading-body);max-width:38em}
.channel-grid-three .channel-note a {display:inline-block}
.address-block {margin-top:0}
.visit-essential-title {letter-spacing:-.03em}
.hours-note {padding-left:28px;border-left:1px solid var(--line)}
.home-booking-channels>a {padding-block:24px}
.contact-orb {border-radius:var(--radius-orb);box-shadow:var(--shadow-float),inset 0 0 0 4px #fffaf455}

/* A composed closing spread, using the existing copy and the same two actions. */
.contact {
  display:grid;grid-template-columns:1.1fr 1fr;column-gap:10%;row-gap:20px;
  text-align:left;padding:var(--space-section-small) var(--page-gutter);
  background:var(--color-paper-deep);border-top:1px solid var(--line);
}
.contact>.eyebrow {grid-column:1/-1;color:var(--muted)}
.contact h2 {grid-column:1;grid-row:2/4;margin:0;font-size:clamp(48px,5.1vw,76px);line-height:.98;letter-spacing:-.035em}
.contact>p:not(.eyebrow) {grid-column:2;grid-row:2;align-self:end;margin:0;font-size:var(--type-body);line-height:1.85;color:var(--muted)}
.contact-actions {grid-column:2;grid-row:3;justify-content:flex-start;align-items:start;align-self:start;margin:0;gap:12px;flex-wrap:wrap}
.site-footer {padding-top:48px;padding-bottom:36px}
.footer-top {padding-bottom:28px}
.footer-bottom {padding-top:24px;line-height:1.8}

/* Motion is kept on deliberate controls, existing media and the approved word accents. */
.arrow-right,.text-link .arrow-right {transition:transform var(--motion-standard) var(--ease-out)}
a:hover .arrow-right,a:focus-visible .arrow-right {animation:none;transform:translateX(4px)}
.doctor-image img {transition:filter var(--motion-reveal) var(--ease-soft)}
.catalog-art>img {transition:transform var(--motion-reveal) var(--ease-soft)}
.filter-marker,.reading-marker {transition:transform var(--motion-standard) var(--ease-out),width var(--motion-standard) var(--ease-out),height var(--motion-standard) var(--ease-out)}
.disclosure-mark::after,.expand-icon::after {transition:transform var(--motion-standard) var(--ease-out)}
.catalog-item,.catalog-item h3,.catalog-item .arrow-right,.detail-rail nav a {transition:color var(--motion-standard) var(--ease-out),background-color var(--motion-standard) var(--ease-out),transform var(--motion-standard) var(--ease-out)}
.treatment-article .sub-hero .treatment-visual img,.sub-hero .conversation-art img {animation-duration:var(--motion-drift)}
.hero-copy h1 em,.space-own {transition:transform var(--motion-reveal) var(--ease-soft),color var(--motion-reveal) var(--ease-soft)}
@media(hover:hover) and (pointer:fine) {
  .desktop-nav>a:hover::after,.treatment-navigation>summary:hover::after,.text-link:hover::after {transform:scaleX(1)}
  .desktop-nav>a:hover {opacity:1}
  .button-primary:not(:disabled):not([aria-disabled=true]):hover {background:#61433d;border-color:#61433d}
  .button-outline:not(:disabled):not([aria-disabled=true]):hover {background:#e1d6c9;border-color:#887062}
  .home-directory>a:hover,.home-more-treatments>a:hover,.breadcrumbs a:hover {color:#8a604e}
  .home-booking-channels>a:hover {border-color:#f1e5d180}
  .catalog-art:hover>img {transform:scale(1.025)}
}
@media(min-width:1101px) {
  .header-cta {min-height:44px;padding:10px 17px;gap:24px;border:1px solid #fff8ee66;transition:background-color var(--motion-standard) var(--ease-out)}
  .header-cta:hover,.header-cta:focus-visible {background:#fff8ee12}
}
@media(min-width:1025px) {
  .editorial-section:has(>.principle-list) {display:grid;grid-template-columns:.78fr 1.22fr;column-gap:8%;align-content:start}
  .editorial-section:has(>.principle-list)>.eyebrow {grid-column:1/-1}
  .editorial-section:has(>.principle-list)>h2 {grid-column:1;grid-row:2;max-width:11em}
  .editorial-section:has(>.principle-list)>.principle-list {grid-column:2;grid-row:2/4;margin-top:0}
  .editorial-section:has(>.principle-list)>.text-link {grid-column:1;grid-row:3;align-self:start;justify-self:start;margin-top:28px}
}
@media(max-width:1100px) {
  :root {--page-gutter:5%;--nav-height:84px;--space-section:76px;--space-section-small:56px}
  .desktop-nav {gap:18px}
  .contact {column-gap:7%}
}
@media(max-width:1024px) {
  .detail-content .editorial-section {padding-inline:var(--page-gutter)}
  .contact h2 {font-size:60px}
}
@media(max-width:800px) {
  :root {--nav-height:80px;--type-display:39px;--type-heading:34px;--space-section:64px;--space-section-small:48px}
  .site-header,.subpage .site-header {height:var(--nav-height)}
  .sub-hero .hero-en,.doctors-cover-intro>.serif {font-size:32px}
  .sub-profile-grid {gap:22px}
  .hours-note {padding-left:0;border-left:0;padding-top:26px;border-top:1px solid var(--line)}
  .contact {column-gap:6%}
  .contact h2 {font-size:52px}
  .contact-actions {flex-direction:column;align-items:stretch}
  .contact-actions .button {justify-content:space-between}
  .home-editorial .treatment .treatment-en {font-size:23px}
}
@media(max-width:600px) {
  :root {--page-gutter:24px;--nav-height:75px;--type-display:clamp(32px,8.9vw,40px);--type-heading:clamp(29px,7.8vw,34px);--type-subheading:20px;--space-section:60px;--space-section-small:44px;--space-heading:30px;--space-grid:28px}
  .home-editorial .brand-story {padding-top:38px}
  .home-editorial .hero-copy {padding-inline:var(--page-gutter)}
  .breadcrumbs {padding-block:22px;font-size:11px}
  .doctors-cover-heading {gap:28px}
  .doctors-cover-heading .eyebrow {margin-bottom:20px}
  .doctors-cover-intro>.serif,.sub-hero .hero-en {font-size:30px}
  :root {--tracking-body:-.015em}
  .sub-hero .hero-intro,.doctors-cover-intro>p:not(.serif) {font-size:var(--type-body);line-height:var(--leading-body)}
  .editorial-section>.eyebrow {margin-bottom:20px}
  .editorial-quote {padding-block:64px}
  .editorial-quote>p {font-size:22px}
  .home-editorial .care-visual {height:auto;aspect-ratio:4/3}
  .home-editorial .story-grid p,.home-editorial .treatment-body>p {font-size:var(--type-body);line-height:var(--leading-body)}
  .home-editorial .story-grid .story-lead {font-size:18px;line-height:1.6}
  .home-editorial .treatment h3 {font-size:24px}
  .home-editorial .doctor-info h3 {font-size:21px}
  .home-editorial .space-heading h2 {font-size:clamp(54px,16vw,70px)}
  .principle-list li {grid-template-columns:28px 1fr;gap:16px;padding-block:24px}
  .principle-list li::before {font-size:24px}
  .sub-profile-grid .doctor-info {padding:0}
  .doctor-biography {margin-top:0;padding-top:24px}
  .room-story {gap:26px;margin-top:44px}
  .room-story:nth-of-type(1) img {aspect-ratio:4/5;max-height:430px}
  .room-story h2 {font-size:28px;margin-block:14px 18px}
  .room-story>div {max-width:none}
  .room-story .eyebrow {margin-bottom:0}
  .catalog-heading.catalog-heading-wave {padding-inline:var(--page-gutter)}
  .catalog-filters {margin-inline:calc(-1 * var(--page-gutter));padding-inline:var(--page-gutter)}
  .catalog-art>div {left:22px;bottom:20px}
  .catalog-group {padding-block:30px 44px}
  .catalog-item h3 {font-size:23px}
  .article-overview {margin-bottom:32px}
  .channel-grid-three .channel {grid-template-columns:32px minmax(0,1fr);column-gap:16px}
  .channel-grid-three .booking-icon {width:30px;height:30px}
  .channel-grid-three .text-link {margin-top:6px}
  .channel-grid-three .channel-note {font-size:13px!important}
  .contact {display:block;padding-block:48px 52px}
  .contact>.eyebrow {margin-bottom:24px}
  .contact h2 {font-size:clamp(48px,13vw,60px);margin:0}
  .contact>p:not(.eyebrow) {margin-top:26px;font-size:15px}
  .contact-actions {display:grid;grid-template-columns:1fr;gap:10px;margin-top:26px}
  .contact-actions .button {width:100%;justify-content:space-between;min-height:52px}
  .site-footer {padding-block:38px 32px}
}
@media(prefers-reduced-motion:reduce) {
  .desktop-nav>a::after,.treatment-navigation>summary::after,.text-link::after,
  .button,.copy-address,.mega-close,.text-link,.arrow-right,.text-link .arrow-right,.doctor-image img,
  .catalog-art>img,.filter-marker,.reading-marker,.disclosure-mark::after,.expand-icon::after,
  .catalog-item,.catalog-item h3,.catalog-item .arrow-right,.detail-rail nav a,
  .hero-copy h1 em,.space-own,.header-cta,.site-header,.breadcrumbs a,.home-directory>a,.home-more-treatments>a {transition:none}
  a:hover .arrow-right,a:focus-visible .arrow-right,.catalog-art:hover>img {transform:none}
}
