/* Aeneia Design — one typographic grid, a quiet motion language. */
:root {
 --ease-editorial: cubic-bezier(.2,.7,.2,1);
 --ease-enter: cubic-bezier(.22,1,.36,1);
 --space-section: clamp(88px,9vw,152px);
 --space-text: 22px;
 --space-group: clamp(32px,4.5vw,72px);
 --gutter: clamp(24px,6vw,112px);
 --header-clearance: 140px;
}
.sr-only { position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
html { scroll-padding-top: var(--header-clearance); }
[id] { scroll-margin-top: var(--header-clearance); }
button, summary, a { -webkit-tap-highlight-color: transparent; }
a, button, summary { touch-action: manipulation; }
button:focus-visible, a:focus-visible, summary:focus-visible { outline-offset:5px; }
.display, .editorial h2, .section-title, .tier__name, .real-projects h2 { text-wrap:balance; }
p { text-wrap:pretty; }

/* A stable navy surface; compression follows the main Aeneia header rhythm. */
.nav, body.is-live .chrome.nav { background:#0F1F38;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#f5f1e824;transition:background-color 650ms var(--ease-editorial),border-color 650ms var(--ease-editorial),box-shadow 650ms var(--ease-editorial); }
.nav.is-scrolled, .is-subpage .nav, .menu-open .nav { background:#0F1F38;border-color:#e2c9a344;box-shadow:0 12px 36px #0309141f; }
.empire-bar { min-height:30px;padding-block:3px;color:#d8cbb7;background:transparent;border-color:#f5f1e81a;font-size:10px; }
.empire-bar nav { gap:clamp(20px,2vw,32px); }
.empire-bar a { transition:color 240ms ease; }
.empire-bar a:hover { color:#fff; }
.empire-bar nav a[aria-current] { border:0;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#c9a97a90; }
.nav__main { min-height:80px;padding-block:7px;gap:32px;transition:min-height 650ms var(--ease-editorial); }
.nav.is-scrolled .nav__main { min-height:64px; }
.nav__brand { gap:18px;flex-shrink:0; }
.nav__brand img { width:98px;height:58px;transition:width 650ms var(--ease-editorial),height 650ms var(--ease-editorial); }
.nav.is-scrolled .nav__brand img { width:84px;height:50px; }
.nav__brand>span { font-size:29px;line-height:1.1;padding-left:18px;border-color:#f5f1e83a;transition:font-size 650ms var(--ease-editorial); }
.nav.is-scrolled .nav__brand>span { font-size:27px; }
.mega { gap:clamp(22px,2.3vw,36px); }
.nav__link { position:relative;border:0;font-size:12px;padding-block:14px;color:#f5f1e8db;transition:color 220ms ease; }
.nav__link::after { content:'';position:absolute;left:0;right:0;bottom:7px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform 320ms var(--ease-editorial); }
.nav__link:hover::after, .nav__link.is-current::after { transform:scaleX(1);transform-origin:left; }
.nav__right { gap:22px; }
.nav__cta { padding:13px 20px;gap:30px;min-height:46px; }
.nav__cta span { transition:transform 320ms var(--ease-editorial); }
.locale-picker summary { border:0;padding:14px 4px;min-height:44px;display:flex;align-items:center;gap:7px;opacity:1;color:#f5f1e8d9; }
.locale-picker summary::before { content:'◎';font-size:17px;line-height:1;color:#d9c3a0; }
.locale-picker summary::after { margin-left:0;transition:transform 280ms var(--ease-editorial); }
.locale-picker[open] summary::after { transform:rotate(180deg); }
.locale-picker .locale-links { top:calc(100% + 7px);padding:8px;min-width:164px;border-color:#c9a97a5c;box-shadow:0 18px 40px #0004; }
.locale-links a { min-height:44px;display:flex;align-items:center;transition:color 220ms ease,background-color 220ms ease; }
.nav__burger { width:44px;height:44px;gap:6px; }
.nav__burger i { width:24px;transition:transform 360ms var(--ease-editorial),opacity 240ms ease; }
.mdrawer { background:linear-gradient(145deg,#10223d,#0b172b 70%);padding:148px var(--gutter) 40px;transition:transform 650ms var(--ease-enter),visibility 650ms; }
.mdrawer__nav { gap:0;max-width:860px;width:100%;margin-inline:auto; }
.mdrawer__link { padding:20px 0;border-bottom:1px solid #c9a97a24;gap:12px; }
.mdrawer__link b { font-family:var(--display);font-size:clamp(30px,6vw,54px);line-height:1.15;font-weight:500; }
.mdrawer__link span { color:#c7bfc2;font-size:12px;line-height:1.6;max-width:30ch; }
.mdrawer__close, .mdrawer__foot { width:100%;max-width:860px;margin-inline:auto; }
.mdrawer__close { width:auto;margin-left:auto;margin-right:0;min-height:44px; }
.mdrawer__foot { margin-top:32px;gap:18px; }

/* Three stable, full-bleed compositions; each keeps its natural height. */
.design-hero { position:relative;z-index:3;background:#0a1527;color:var(--paper);isolation:isolate;outline:none; }
.design-hero:focus-visible { outline:2px solid var(--gold);outline-offset:-4px; }
.design-hero__slides { display:grid; }
.design-hero__slide { grid-area:1/1;position:relative;display:flex;align-items:center;min-width:0;min-height:100svh;padding:clamp(160px,19svh,210px) var(--gutter) clamp(156px,18svh,192px);background:transparent;isolation:isolate;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 950ms var(--ease-editorial),visibility 950ms; }
.design-hero__slide.is-active { opacity:1;visibility:visible;pointer-events:auto;z-index:1; }
.design-hero__art { position:absolute;inset:0;z-index:-3;overflow:hidden;background:#0a1527; }
.design-hero__art>img, .design-hero__art .imperial__poster, .design-hero__art .imperial__canvas { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0; }
.design-hero__art .imperial__canvas { z-index:1; }
.design-hero__art>img { object-position:50% 48%;transform:scale(1.025);transition:transform 6500ms linear; }
.design-hero__slide.is-active .design-hero__art>img { transform:scale(1); }
.design-hero__shade { position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#091325ed 0%,#0b172bb8 32%,#0b172b20 70%),linear-gradient(0deg,#091325f5 0%,#09132500 38%,#09132515 68%,#091325b8 100%); }
.design-hero__copy { max-width:590px;width:49%;min-width:0;transform:translateY(14px);opacity:0;transition:transform 650ms var(--ease-enter),opacity 240ms ease; }
.design-hero__slide.is-active .design-hero__copy { transform:translateY(0);opacity:1;transition:transform 950ms var(--ease-enter),opacity 650ms var(--ease-editorial);transition-delay:240ms; }
.design-hero .section-kicker { display:flex;align-items:center;gap:16px;color:#dbc399;font-size:10px;letter-spacing:.14em;margin:0 0 26px;line-height:1.65; }
.design-hero .section-kicker::before { content:'';width:28px;height:1px;background:#d4b786;flex:none; }
.design-hero .display { font-family:var(--display);font-size:clamp(56px,5.6vw,90px);font-weight:500;line-height:1.04;letter-spacing:-.035em;margin:0;max-width:none; }
.design-hero .latin { margin:22px 0 26px;font-size:23px;color:#d4b98d;line-height:1.3; }
.design-hero__body { max-width:43ch;font-size:16px;line-height:1.8;color:#eee9dfdc;margin:0; }
.design-hero .cta { gap:16px;margin-top:30px;flex-wrap:wrap; }
.design-hero .cta a { font-size:12px;min-height:48px;padding:14px 20px;line-height:1.6;display:inline-flex;align-items:center;justify-content:center; }
.design-hero .cta__ghost { border:1px solid #f5f1e84a;background:#0b172b18; }
.design-hero__slide--shop { justify-content:flex-end; }
.design-hero__slide--shop .design-hero__art>img { object-position:30% 42%; }
.design-hero__slide--shop .design-hero__shade { background:linear-gradient(270deg,#091325ed 0%,#0b172bc4 33%,#0b172b12 80%),linear-gradient(0deg,#091325f5,#09132500 44%,#09132500 66%,#091325a8); }
.design-hero__slide--shop .design-hero__copy { width:45%;max-width:560px; }
.design-hero__controls { position:absolute;bottom:28px;left:var(--gutter);right:var(--gutter);z-index:3;display:grid;grid-template-columns:72px minmax(0,1fr) auto;column-gap:32px;row-gap:20px;align-items:center;padding-top:22px;border-top:1px solid #f5f1e82e; }
.design-hero:not([data-enhanced]) .design-hero__controls { visibility:hidden; }
.design-hero__index { display:flex;gap:10px;align-items:baseline;font-size:11px;font-variant-numeric:tabular-nums; }
.design-hero__index>span:first-child { font-family:var(--display);font-size:32px;line-height:1;color:#e2c9a3; }
.design-hero__index>span:last-child { opacity:.55; }
.design-hero__choices { display:flex;gap:28px;max-width:650px; }
.design-hero__choices button { position:relative;flex:1;min-width:0;display:flex;align-items:center;gap:10px;min-height:48px;background:none;border:0;padding:0 0 10px;color:#f5f1e888;text-align:left;font:400 11px/1.45 var(--sans);cursor:pointer;transition:color 240ms ease; }
.design-hero__choices button[aria-current], .design-hero__choices button:hover { color:#f5f1e8; }
.design-hero__choice-number { font-size:9px;color:#d0b283; }
.design-hero__track { position:absolute;left:0;right:0;bottom:0;height:1px;background:#f5f1e82b;overflow:hidden; }
.design-hero__track i { display:block;height:100%;width:100%;background:#d9bb86;transform:scaleX(0);transform-origin:left; }
.design-hero__choices button[aria-current] .design-hero__track { background:#d9bb8660; }
.design-hero__transport { display:flex;gap:8px; }
.design-hero__transport button { min-width:44px;height:44px;display:grid;place-items:center;border:1px solid #f5f1e840;background:#0b172b33;color:#f5f1e8;font:300 19px/1 var(--sans);cursor:pointer;transition:background-color 220ms ease,border-color 220ms ease; }
.design-hero__transport button:hover { background:#c9a97a20;border-color:#d8bb8c; }
.hero-play, [aria-pressed="true"]>.hero-pause { display:none; }
[aria-pressed="true"]>.hero-play { display:block; }
.design-hero__caption { grid-column:2/4;font-size:9px!important;line-height:1.5!important;color:#d4ccbd80;margin:0;letter-spacing:.03em; }

/* Editorial rhythm: larger relationships, cleaner interiors, varied pacing. */
.editorial { padding-block:var(--space-section); }
.editorial__split { grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:clamp(48px,7.5vw,128px); }
.editorial__copy { max-width:590px; }
.editorial h2 { font-size:clamp(44px,4.3vw,72px);line-height:1.08;margin-bottom:30px; }
.editorial__copy .section-kicker { margin-bottom:28px; }
.editorial__copy .latin { margin:-4px 0 26px; }
.editorial__copy p:not(.section-kicker):not(.latin) { line-height:1.85;max-width:45ch;margin-bottom:22px; }
.editorial__art { overflow:hidden; }
.editorial__art img { aspect-ratio:.97; }
.editorial__art--portrait img { aspect-ratio:.88;max-height:720px; }
.editorial__art figcaption { padding-top:18px;line-height:1.7; }
.promise-strip { margin-top:clamp(56px,6vw,88px);padding-top:32px;gap:36px; }
.promise-strip>span { border-left:1px solid #0f1f3830;padding-left:24px;gap:9px;line-height:1.6; }
.promise-strip b { font-size:14px; }
.section-heading { gap:clamp(40px,7vw,112px);margin-bottom:clamp(48px,5vw,76px); }
.section-heading>p { max-width:36ch;font-size:16px; }
.scope-grid { gap:clamp(32px,4.5vw,72px); }
.scope-grid article { padding-top:30px; }
.scope-grid h3 { font-size:clamp(32px,2.8vw,45px);margin:30px 0 22px; }
.scope-grid p { line-height:1.85;max-width:37ch;margin-bottom:32px; }
.scope-note { margin-top:60px;padding-top:30px; }
.ecosystem-grid { gap:clamp(32px,4.5vw,72px); }
.ecosystem-grid article { padding-top:30px; }
.ecosystem-grid h3 { margin:24px 0 20px; }
.ecosystem-grid p { color:#536070;line-height:1.85; }
.editorial--detail { padding:0; }
.detail-copy { padding:clamp(48px,7vw,112px); }
.detail-copy h2 { font-size:clamp(42px,4vw,66px); }
.panel.hero { min-height:76svh; }
.hero .panel__inner { padding-block:clamp(100px,12vw,172px); }
.hero .display { margin-bottom:28px; }
.hero .lede { max-width:48ch; }
.chapter .card { padding:clamp(34px,4.5vw,68px);max-width:43rem;border-radius:0;background:linear-gradient(135deg,#0b172be0,#0b172bbd);border-color:#c9a97a3d;box-shadow:0 28px 80px #05081125; }
.chapter .display { font-size:clamp(48px,4.8vw,78px);line-height:1.08;margin-bottom:28px; }
.chapter .body { max-width:43ch;font-size:16px;line-height:1.85; }
.chapter .spec { margin-top:36px; }
.spec>div { padding-block:14px;line-height:1.65; }
.imperial--forum .imperial__copy { padding:clamp(32px,3.5vw,54px);width:48vw;max-width:660px;background:linear-gradient(135deg,#0b172be6,#0b172bb8);border-color:#c9a97a3d;box-shadow:0 28px 80px #05081125; }
.imperial--forum .imperial__copy::after { display:none; }
.imperial--forum .imperial__copy .display { font-size:clamp(46px,4.6vw,72px);line-height:1.08;margin-bottom:26px; }
.imperial--forum .imperial__copy .body { font-size:16px;line-height:1.85; }
.imperial--forum .imperial__meta { margin-top:30px; }
.imperial__meta>div { padding-block:12px;line-height:1.7; }
.editorial--faq { grid-template-columns:.9fr 1.1fr;gap:clamp(56px,9vw,144px); }
.faq-list details { padding:0; }
.faq-list summary { min-height:84px;padding-block:24px;gap:28px;line-height:1.6;transition:color 220ms ease; }
.faq-list summary::after { content:'+';display:grid;place-items:center;width:30px;flex:none;transition:transform 320ms var(--ease-editorial); }
.faq-list details[open] summary::after { content:'+';transform:rotate(45deg); }
.faq-list details p { padding:0 40px 28px 0;line-height:1.85;margin:0; }
.faq-list details::details-content { height:0;overflow:clip;transition:height 380ms var(--ease-editorial),content-visibility 380ms allow-discrete;interpolate-size:allow-keywords; }
.faq-list details[open]::details-content { height:auto; }
.journal-grid { column-gap:clamp(48px,6.5vw,104px); }
.journal-card__image { margin-bottom:30px; }
.journal-card h3 { line-height:1.15;margin-top:20px;margin-bottom:18px; }
.journal-card p { line-height:1.85;margin-bottom:24px; }
.journal-card__action { gap:20px; }
.journal-card__action>span { transition:transform 300ms var(--ease-editorial); }
.journal-grid>.journal-card { padding-block:32px; }
.journal-grid>.journal-card--lead { padding:0; }
.outro { min-height:76svh; }
.outro .display { margin-bottom:28px;line-height:1.1; }
.outro .lede { max-width:52ch;line-height:1.85; }

/* Interior pages, offer, process, portfolio and contact use the same spacing. */
.page, .page.page--contact { padding-top:clamp(180px,19vw,260px);padding-bottom:var(--space-section); }
.page__hero { max-width:1040px;margin-bottom:clamp(64px,7vw,104px); }
.page__hero .eyebrow { margin-bottom:30px; }
.page__hero .display { font-size:clamp(58px,7vw,104px);line-height:1.09;margin-bottom:34px; }
.page__hero .lede { max-width:59ch;font-size:18px;line-height:1.85; }
.page.page--contact { padding-top:clamp(180px,16vw,220px); }
.page--contact .page__hero .display { font-size:clamp(52px,6.1vw,88px);max-width:22ch; }
.page--contact .page__hero { margin-bottom:64px; }
.page__block { margin-bottom:clamp(72px,8vw,120px); }
.tiers { gap:32px; }
.tier, .contact-card, .meeting-next { border-radius:0;padding:clamp(32px,3.6vw,56px); }
.tier { background:linear-gradient(140deg,#14243ad9,#0b172be6);border-color:#c9a97a38;transition:border-color 400ms ease,background-color 400ms ease; }
.tier--hot { border-color:#c9a97a8c; }
.tier__name { line-height:1.15;margin-top:20px;margin-bottom:24px; }
.tier__list { line-height:1.8; }
.tier__list li { padding-block:10px; }
.tier__cta { min-height:48px;margin-top:24px; }
.step { padding-block:36px;gap:28px; }
.step__body p { line-height:1.85; }
.real-projects { gap:clamp(44px,6vw,88px); }
.real-projects img { height:auto;aspect-ratio:1.25;margin-bottom:32px; }
.real-projects h2 { margin-top:22px;margin-bottom:24px;line-height:1.12; }
.process-gallery>div { gap:32px; }
.contact-grid { gap:32px;align-items:start; }
.contact-card__intro { margin-bottom:34px; }
.contact-card__lede { line-height:1.85; }
.form-row { gap:24px; }
.field { gap:10px; }
.field input, .field textarea, .field select { min-height:52px;padding:15px 16px;background:#09142550;border-color:#c9a97a45; }
.field input:hover, .field textarea:hover, .field select:hover { border-color:#c9a97a80; }
.field input:focus, .field textarea:focus, .field select:focus { border-color:#d8bb8c;box-shadow:0 0 0 3px #c9a97a12; }
.field textarea { min-height:150px;line-height:1.8; }
.form-actions { gap:18px;margin-top:30px; }
.form-submit, .form-copy { min-height:48px;padding:14px 20px; }
.form-note, .form-privacy { line-height:1.85; }
.contact-direct { margin-top:40px;gap:16px; }
.contact-direct>* { padding:16px 18px; }
.booking-agenda { gap:20px; }
.booking-agenda li { padding-block:14px; }
.page__journal { margin-top:clamp(72px,8vw,120px);padding-top:56px;gap:clamp(48px,8vw,128px); }
.journal-grid--compact>.journal-card:first-child { padding-top:0; }
.empire-footer { padding-top:clamp(72px,7vw,112px); }
.empire-footer__main { gap:clamp(28px,4vw,64px); }
.empire-footer__main>div, .empire-footer__main>nav { gap:14px; }
.empire-footer__main>nav>a { line-height:1.7;padding-block:4px; }
.empire-footer__bottom { margin-top:64px;padding-top:28px;align-items:center;line-height:1.7; }
.empire-footer .locale-links a { padding-block:6px;min-height:36px; }

/* Small, consistent responses; no pointer-following tricks or layout movement. */
.cta__primary, .cta__ghost, .nav__cta, .tier__cta, .form-submit, .form-copy { transition:background-color 280ms var(--ease-editorial),color 280ms ease,border-color 280ms ease,transform 320ms var(--ease-editorial),box-shadow 320ms var(--ease-editorial); }
.cta__ghost:hover { background:#f5f1e80d;border-color:#d5b78b; }
.editorial__link { position:relative;border-bottom-color:currentColor;line-height:1.7; }
.editorial__link>span, .scope-grid a>span { transition:transform 320ms var(--ease-editorial); }
.editorial__link::after { content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform 420ms var(--ease-editorial); }
.editorial__link:hover::after { transform:scaleX(1);transform-origin:left; }
.field input, .field textarea, .field select { transition:border-color 240ms ease,background-color 240ms ease,box-shadow 240ms ease; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .nav__cta:hover, .cta__primary:hover, .tier__cta:hover, .form-submit:not(:disabled):hover { transform:translateY(-1px);box-shadow:0 7px 22px #03091420; }
 .nav__cta:hover span, .editorial__link:hover>span, .scope-grid a:hover>span, .journal-card:hover .journal-card__action>span { transform:translate(2px,-2px); }
 .tier:hover { border-color:#c9a97a8a; }
 .journal-card__image img, .editorial__art img, .real-projects img { transition:transform 1100ms var(--ease-editorial); }
 .journal-card:hover .journal-card__image img { transform:scale(1.025); }
 .faq-list summary:hover { color:#dbc399; }
}
@media(min-width:1600px) {
 .design-hero__copy { max-width:660px; }
 .design-hero .display { font-size:100px; }
 .design-hero__body { font-size:18px; }
}
@media(max-height:820px) and (min-width:761px) {
 .design-hero__slide { padding-top:144px;padding-bottom:138px; }
 .design-hero .display { font-size:56px;line-height:1.05; }
 .design-hero .section-kicker { margin-bottom:20px; }
 .design-hero .latin { font-size:21px;margin:18px 0 20px; }
 .design-hero__body { font-size:14px;line-height:1.75; }
 .design-hero .cta { margin-top:24px; }
 .design-hero .cta a { min-height:46px;padding:12px 18px; }
 .design-hero__controls { bottom:22px;row-gap:14px;padding-top:18px; }
 html:lang(ko) .design-hero .display, html:lang(ja) .design-hero .display { font-size:42px;line-height:1.25; }
 html:lang(ko) .design-hero__body, html:lang(ja) .design-hero__body { font-size:14px;line-height:1.8; }
}
@media(max-width:1100px) {
 .nav__main { gap:22px; }
 .mega { gap:20px; }
 .nav__brand img { width:84px; }
 .nav__brand>span { font-size:26px; }
 .nav__right { gap:16px; }
 .nav__cta { padding-inline:15px;gap:16px; }
 .design-hero__copy { width:54%; }
 .design-hero__slide--shop .design-hero__copy { width:49%; }
 .design-hero .display { font-size:clamp(54px,5.5vw,66px); }
 .design-hero__controls { column-gap:24px;grid-template-columns:60px minmax(0,1fr) auto; }
 .design-hero__choices { gap:20px; }
 .imperial--forum .imperial__copy { width:54vw; }
 .editorial__split { gap:48px; }
}
@media(max-width:900px) {
 .nav__main { min-height:74px; }
 .mega { display:none; }
 .nav__brand img { height:54px;width:88px; }
 .design-hero__slide { padding-top:156px;padding-bottom:164px; }
 .design-hero__copy { width:61%; }
 .design-hero__slide--shop .design-hero__copy { width:56%; }
 .design-hero .display { font-size:58px; }
 .design-hero__body { font-size:15px; }
 .design-hero .cta a { font-size:11px;padding-inline:16px; }
 .design-hero__index { display:none; }
 .design-hero__controls { grid-template-columns:minmax(0,1fr) auto; }
 .design-hero__caption { grid-column:1/3; }
 .design-hero__choice-number { display:none; }
 .editorial__split { gap:40px; }
 .editorial--faq { gap:48px; }
 .contact-grid { grid-template-columns:1fr; }
 .contact-card { max-width:900px; }
}
@media(max-width:760px) {
 :root { --space-section:80px;--header-clearance:126px; }
 .empire-bar { font-size:9px;min-height:29px;gap:12px; }
 .empire-bar nav { gap:15px; }
 .nav__main { min-height:70px;padding-block:5px;gap:16px; }
 .nav.is-scrolled .nav__main { min-height:58px; }
 .nav.is-scrolled .nav__brand img { width:72px;height:44px; }
 .nav.is-scrolled .nav__brand>span { font-size:23px; }
 .nav__brand { gap:13px; }
 .nav__brand img { width:78px;height:50px; }
 .nav__brand>span { padding-left:13px;font-size:25px; }
 .nav__right { gap:14px; }
 .locale-picker { font-size:10px; }
 .locale-picker summary { padding:10px 2px;gap:5px; }
 .locale-picker summary::before { font-size:16px; }
 .mdrawer { padding-top:118px; }
 .mdrawer__link { padding-block:18px; }
 .mdrawer__link b { font-size:34px; }
 .design-hero__slide, .design-hero__slide--shop { padding:clamp(250px,29svh,300px) 24px 166px;align-items:flex-end;justify-content:flex-start;min-height:100svh; }
 .design-hero__copy, .design-hero__slide--shop .design-hero__copy { width:100%;max-width:560px; }
 .design-hero__art { height:65%; }
 .design-hero__art>img { object-position:45% 22%; }
 .design-hero__slide--shop .design-hero__art>img { object-position:25% 16%; }
 .design-hero__slide--web .design-hero__art { height:73%; }
 .design-hero__shade, .design-hero__slide--shop .design-hero__shade { background:linear-gradient(0deg,#0a1527 0%,#0a1527 37%,#0a1527e3 55%,#0a15273b 79%,#0a15278c 100%); }
 .design-hero .section-kicker { font-size:9px;letter-spacing:.08em;margin-bottom:20px;gap:12px; }
 .design-hero .section-kicker::before { width:22px; }
 .design-hero .display { font-size:clamp(44px,11vw,64px);line-height:1.06;letter-spacing:-.025em; }
 .design-hero .latin { font-size:21px;margin:18px 0 20px; }
 .design-hero__body { max-width:45ch;font-size:15px;line-height:1.8; }
 .design-hero .cta { margin-top:26px;gap:12px; }
 .design-hero .cta a { padding:13px 16px;min-height:48px;font-size:11px; }
 .design-hero__controls { bottom:24px;left:24px;right:24px;grid-template-columns:minmax(0,1fr) auto;gap:16px 20px;padding-top:20px; }
 .design-hero__choices { grid-column:1/-1;gap:20px;max-width:none; }
 .design-hero__choices button { font-size:10px;min-height:38px;gap:6px;padding-bottom:12px;align-items:flex-start; }
 .design-hero__transport { grid-column:2;grid-row:2;gap:6px; }
 .design-hero__transport button { width:44px;height:44px;font-size:18px; }
 .design-hero__caption { grid-column:1;grid-row:2;align-self:start;margin-top:-6px;max-width:18ch;font-size:8px!important;line-height:1.6!important; }
 .editorial__split { grid-template-columns:1fr;gap:44px; }
 .editorial__art img { aspect-ratio:1.12; }
 .editorial__art--portrait img { aspect-ratio:1.05; }
 .editorial h2 { font-size:clamp(40px,10.8vw,54px);line-height:1.09;margin-bottom:26px; }
 .editorial__copy .section-kicker { margin-bottom:24px; }
 .editorial__copy p:not(.section-kicker):not(.latin) { margin-bottom:22px; }
 .promise-strip { gap:26px;margin-top:48px;padding-top:28px; }
 .promise-strip>span { padding-left:20px;gap:7px; }
 .section-heading { margin-bottom:44px; }
 .section-heading>p { font-size:15px;margin-top:26px; }
 .scope-grid { gap:44px; }
 .scope-grid article { padding-top:26px; }
 .scope-grid h3 { font-size:38px;margin:24px 0 20px; }
 .scope-grid p { font-size:15px; }
 .scope-note { margin-top:44px; }
 .editorial--detail { padding:0; }
 .detail-copy { padding:64px 24px 76px; }
 .editorial--faq { grid-template-columns:1fr;gap:40px; }
 .faq-list summary { padding-block:24px;min-height:80px;font-size:16px; }
 .faq-list details p { padding-right:30px;padding-bottom:26px; }
 .panel.hero { min-height:70svh; }
 .hero .panel__inner { padding-block:88px; }
 .hero .display { font-size:clamp(43px,11.5vw,58px); }
 .chapter .card { padding:34px 26px; }
 .chapter .display { font-size:clamp(43px,11.5vw,54px);line-height:1.09; }
 .chapter .spec { margin-top:30px; }
 .chapter .body { font-size:16px; }
 .imperial--forum .imperial__copy { width:100%;max-width:560px;padding:30px 26px; }
 .imperial--forum .imperial__copy .display { font-size:clamp(40px,10.8vw,54px);line-height:1.1; }
 .imperial--forum .imperial__copy .body { font-size:15px; }
 .imperial--forum .imperial__meta { margin-top:24px; }
 .journal-grid>.journal-card--lead { padding-bottom:36px; }
 .journal-card h3 { font-size:33px;line-height:1.16; }
 .page, .page.page--contact { padding-top:164px;padding-bottom:80px; }
 .page__hero { margin-bottom:56px; }
 .page__hero .eyebrow { margin-bottom:26px; }
 .page__hero .display { font-size:clamp(46px,12vw,62px);line-height:1.1;margin-bottom:28px; }
 .page__hero .lede { font-size:16px; }
 .page.page--contact { padding-top:164px; }
 .page--contact .page__hero .display { font-size:clamp(46px,12vw,62px); }
 .page--contact .page__hero { margin-bottom:56px; }
 .page__block { margin-bottom:64px; }
 .tiers { gap:28px; }
 .tier, .contact-card, .meeting-next { padding:32px 24px; }
 .step { padding-block:28px;gap:20px; }
 .real-projects { gap:52px; }
 .real-projects h2 { font-size:42px; }
 .form-row { gap:20px; }
 .form-actions { gap:16px; }
 .field input, .field textarea, .field select { padding:14px; }
 .contact-direct>* { padding:16px; }
 .page__journal { gap:36px;margin-top:64px;padding-top:40px; }
 .page__journal h2 { font-size:38px; }
 .empire-footer__main { gap:40px 28px; }
 .empire-footer__bottom { margin-top:48px;gap:20px; }
}
@media(max-width:380px) {
 .nav__brand img { width:68px; }
 .nav__brand>span { font-size:24px; }
 .nav__right { gap:10px; }
 .empire-bar { font-size:8px; }
 .empire-bar nav { gap:12px; }
 .design-hero .display { font-size:43px; }
 .design-hero .cta a { padding-inline:14px;font-size:10px; }
 .design-hero__choices { gap:16px; }
}
/* Native CJK metrics retain the same hierarchy without crushed line boxes. */
html:lang(ko) .design-hero .display, html:lang(ja) .design-hero .display { font-size:clamp(40px,4.25vw,68px);line-height:1.25;letter-spacing:-.035em; }
html:lang(ko) .design-hero__body, html:lang(ja) .design-hero__body { font-size:15px;line-height:1.9; }
html:lang(ko) .design-hero__choices, html:lang(ja) .design-hero__choices { gap:24px; }
html:lang(ko) .mdrawer__link b, html:lang(ja) .mdrawer__link b { font-family:var(--display);line-height:1.35; }
@media(max-width:760px) {
 html:lang(ko) .design-hero .display, html:lang(ja) .design-hero .display { font-size:clamp(30px,7.5vw,44px);line-height:1.3; }
 html:lang(ko) .design-hero__choices, html:lang(ja) .design-hero__choices { gap:16px; }
 html:lang(ko) .design-hero .cta a, html:lang(ja) .design-hero .cta a { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) {
 .design-hero__slide, .design-hero__copy, .design-hero__art>img { transition:none!important;transform:none!important; }
 .design-hero__track i { display:none; }
 .design-hero__choices button[aria-current] .design-hero__track { background:var(--gold); }
 .design-hero .hero-play { display:none; }
 .design-hero [data-hero-toggle] { opacity:.45; }
 .faq-list details::details-content { transition:none; }
}
/* A quiet editorial pause, placed between complete content modules. */
.article-rail-slot { position:relative;z-index:2; }
.article-rail { padding:clamp(64px,7vw,112px) clamp(24px,6vw,100px);background:#f5f1e8;color:#0f1f38; }
.page .article-rail { padding-inline:0;border-top:1px solid rgba(15,31,56,.18);margin-block:clamp(56px,7vw,96px); }
.article-rail__heading { display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:clamp(36px,4vw,64px); }
.article-rail__heading>div { max-width:740px;min-width:0; }
.article-rail h2 { font-family:var(--display);font-weight:400;font-size:clamp(36px,4.2vw,64px);line-height:1.12;margin:16px 0 20px;letter-spacing:-.025em; }
.article-rail__intro { max-width:630px;font-size:15px;line-height:1.8;opacity:.74; }
.article-rail__heading>.editorial__link { flex-shrink:0; }
.article-rail__grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px); }
.article-rail__card { min-width:0;color:inherit;text-decoration:none;display:flex;flex-direction:column;border-top:1px solid rgba(15,31,56,.2);padding-top:18px; }
.article-rail__image { display:block;aspect-ratio:16/10;overflow:hidden;background:#d9d3c6; }
.article-rail__image img { width:100%;height:100%;object-fit:cover;display:block;transition:transform 1000ms var(--ease-editorial); }
.article-rail__body { display:flex;flex:1;flex-direction:column;padding-block:24px 10px; }
.article-rail__meta,.article-rail__source { font-size:11px;line-height:1.7;opacity:.7; }
.article-rail__meta { display:block; }
.article-rail__card h3 { font-family:var(--display);font-size:clamp(25px,2.1vw,34px);font-weight:400;line-height:1.2;letter-spacing:-.015em;margin:18px 0 16px;overflow-wrap:anywhere; }
.article-rail__card p { font-size:14px;line-height:1.8;margin:0 0 20px;opacity:.78;overflow-wrap:anywhere; }
.article-rail__source { margin-top:auto;padding-top:8px; }
.article-rail__action { display:flex;gap:18px;align-items:center;font-size:12px;padding-top:18px; }
.article-rail__action>span { transition:transform 300ms var(--ease-editorial); }
.article-rail__card:focus-visible { outline:2px solid #a88958;outline-offset:8px; }
@media(hover:hover) and (prefers-reduced-motion:no-preference){.article-rail__card:hover .article-rail__image img{transform:scale(1.025)}.article-rail__card:hover .article-rail__action>span{transform:translate(2px,-2px)}}
@media(max-width:760px){
 .article-rail { padding:64px 24px; }
 .article-rail__heading { align-items:flex-start;flex-direction:column;gap:24px; }
 .article-rail__grid { grid-template-columns:minmax(0,1fr);gap:36px; }
 .article-rail__card h3 { font-size:31px; }
 .article-rail__body { padding-top:22px; }
}
@media(prefers-reduced-motion:reduce){.article-rail__image img,.article-rail__action>span{transition:none}}
