:root {
  --air-ink: #15191d;
  --air-muted: #60676d;
  --air-line: #dfe2df;
  --air-paper: #fbfaf6;
  --air-soft: #f0f2ee;
  --air-white: #fff;
  --air-accent: #89a9c1;
  --air-accent-deep: #40647c;
  --whisky-ink: #1b1511;
  --whisky-brown: #2b1d16;
  --whisky-brown-2: #3a281e;
  --whisky-ivory: #f4efe4;
  --whisky-amber: #c48935;
  --whisky-gold: #d4ab68;
  --whisky-line: #cfc2ad;
  --font-sans: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, Meiryo, sans-serif;
  --font-serif: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif;
  --step--1: clamp(.78rem, .74rem + .12vw, .86rem);
  --step-0: clamp(1rem, .96rem + .15vw, 1.08rem);
  --step-1: clamp(1.2rem, 1.08rem + .4vw, 1.48rem);
  --step-2: clamp(1.48rem, 1.25rem + .78vw, 2rem);
  --step-3: clamp(1.9rem, 1.52rem + 1.28vw, 2.8rem);
  --step-4: clamp(2.5rem, 1.82rem + 2.3vw, 4.2rem);
  --step-5: clamp(3.1rem, 2rem + 3.7vw, 6.2rem);
  --space-1: .5rem;
  --space-2: .8rem;
  --space-3: 1.2rem;
  --space-4: 1.8rem;
  --space-5: 2.6rem;
  --space-6: 4rem;
  --space-7: clamp(5rem, 9vw, 8.5rem);
  --radius-sm: 3px;
  --radius-md: 10px;
  --radius-lg: 24px;
  --shadow: 0 18px 50px rgba(18, 20, 18, .08);
  --wrap: min(1180px, calc(100% - 2.5rem));
  --narrow: min(760px, calc(100% - 2.5rem));
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--air-paper); color: var(--air-ink); font-family: var(--font-sans); font-size: var(--step-0); line-height: 1.8; -webkit-font-smoothing: antialiased; }
body.menu-is-open { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .18em; }
a:hover { text-decoration-thickness: .13em; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--air-accent-deep); outline-offset: 4px; }
::selection { background: #bcd2df; color: #101316; }
.is-whisky ::selection { background: var(--whisky-gold); color: var(--whisky-ink); }
.wrap { width: var(--wrap); margin-inline: auto; }
.narrow { width: var(--narrow); margin-inline: auto; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; top: .75rem; left: .75rem; transform: translateY(-200%); background: var(--air-ink); color: white; padding: .65rem 1rem; }
.skip-link:focus { transform: translateY(0); }
.eyebrow { margin: 0 0 .9rem; color: var(--air-accent-deep); font-size: .72rem; font-weight: 700; letter-spacing: .18em; line-height: 1.3; text-transform: uppercase; }
.eyebrow--amber { color: var(--whisky-amber); }
h1, h2, h3, p { overflow-wrap: break-word; }
h1, h2, h3 { margin-block: 0; line-height: 1.32; letter-spacing: -.025em; }
h1 { font-size: var(--step-4); }
h2 { font-size: var(--step-3); }
h3 { font-size: var(--step-1); }
p { margin-block: 0 1.25rem; }
.section { padding-block: var(--space-7); }
.section--soft { background: var(--air-soft); }
.section-heading { max-width: 760px; margin-bottom: var(--space-5); }
.section-heading h2 { margin-bottom: 1rem; }
.section-heading > p:last-child { color: var(--air-muted); }
.section-heading--row { display: flex; align-items: end; justify-content: space-between; max-width: none; gap: 2rem; }
.section-heading--row > p, .section-heading--row .text-link { margin-bottom: .25rem; }
.section-heading--center { margin-inline: auto; text-align: center; }
.prose { color: var(--air-muted); }
.prose--lead { font-size: var(--step-1); }
.prose a { color: var(--air-ink); }
.split-heading { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1fr); align-items: start; gap: clamp(3rem, 8vw, 8rem); }
.button-row { display: flex; flex-wrap: wrap; gap: .8rem; }
.button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; border: 1px solid transparent; padding: .82rem 1.35rem; font-size: .88rem; font-weight: 700; line-height: 1.2; text-decoration: none; transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease; }
.button:hover { transform: translateY(-2px); text-decoration: none; }
.button--dark { background: var(--air-ink); color: white; }
.button--dark:hover { background: #30363b; }
.button--line { border-color: var(--air-ink); color: var(--air-ink); }
.button--line:hover { background: var(--air-ink); color: white; }
.button--light { background: var(--air-white); color: var(--air-ink); }
.button--ivory { background: var(--whisky-ivory); color: var(--whisky-ink); }
.button--amber { background: var(--whisky-amber); color: #1e150d; }
.button--amber:hover { background: var(--whisky-gold); }
.text-link { display: inline-block; font-size: .88rem; font-weight: 700; text-decoration: none; border-bottom: 1px solid currentColor; }
.text-link--light { color: var(--whisky-ivory); }

/* Header */
.site-header { position: relative; z-index: 100; border-bottom: 1px solid rgba(20, 24, 27, .12); background: rgba(251, 250, 246, .96); }
.site-header__inner { display: flex; min-height: 82px; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { flex: 0 0 auto; }
.brand__air, .brand__media { display: inline-flex; align-items: baseline; color: var(--air-ink); font-size: 1.1rem; font-weight: 700; letter-spacing: .04em; text-decoration: none; }
.brand__air span { color: var(--air-accent-deep); }
.brand__media { flex-direction: column; align-items: flex-start; gap: .05rem; }
.brand__name { font-family: var(--font-serif); font-size: 1.25rem; letter-spacing: .02em; }
.brand__by { color: var(--whisky-amber); font-size: .58rem; letter-spacing: .18em; text-transform: uppercase; }
.custom-logo { width: auto; max-height: 50px; }
.primary-nav__list { display: flex; align-items: center; gap: clamp(1rem, 2.2vw, 2rem); padding: 0; margin: 0; list-style: none; }
.primary-nav a { font-size: .78rem; font-weight: 650; text-decoration: none; }
.primary-nav a:hover { color: var(--air-accent-deep); }
.site-header__actions { display: none; }
.header-search { padding-block: 1rem; border-top: 1px solid var(--air-line); }
.header-search[hidden] { display: none; }
.is-whisky .site-header { border-color: rgba(244, 239, 228, .15); background: var(--whisky-ink); color: var(--whisky-ivory); }
.is-whisky .brand__media, .is-whisky .primary-nav a { color: var(--whisky-ivory); }
.is-whisky .primary-nav a:hover { color: var(--whisky-gold); }
.is-whisky .header-search { border-color: rgba(244, 239, 228, .15); }

/* Search */
.search-form { display: flex; width: 100%; max-width: 660px; border-bottom: 1px solid currentColor; }
.search-form__field { min-width: 0; flex: 1; border: 0; background: transparent; color: inherit; padding: .8rem .2rem; outline: 0; }
.search-form__field::placeholder { color: currentColor; opacity: .55; }
.search-form__submit { flex: none; border: 0; background: transparent; color: inherit; padding: .8rem .2rem .8rem 1rem; font-size: .86rem; font-weight: 700; cursor: pointer; }

/* Air Design home */
.air-hero { min-height: min(780px, calc(100vh - 82px)); display: grid; align-items: center; overflow: hidden; }
.air-hero__inner { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .75fr); align-items: center; gap: clamp(2rem, 7vw, 8rem); padding-block: 5rem; }
.air-hero h1 { margin-bottom: 1.6rem; font-size: var(--step-5); font-weight: 650; letter-spacing: -.055em; }
.air-hero h1 em { color: var(--air-accent-deep); font-family: var(--font-serif); font-style: normal; font-weight: 500; }
.air-hero__lead { max-width: 620px; margin-bottom: 2.2rem; color: var(--air-muted); }
.air-hero__visual { position: relative; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 34% 28%, #e4eef2 0, #c1d0d7 28%, #7893a2 70%, #4a6371 100%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.7), var(--shadow); }
.air-hero__visual::before { position: absolute; inset: 18%; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; content: ""; }
.air-hero__mark { position: absolute; inset: 50% auto auto 50%; color: rgba(255,255,255,.92); font-family: var(--font-serif); font-size: clamp(6rem, 16vw, 12rem); line-height: 1; transform: translate(-50%, -52%); }
.orbit { position: absolute; border: 1px solid rgba(255,255,255,.42); border-radius: 50%; }
.orbit--one { inset: -5% 20% 5% -3%; transform: rotate(30deg); }
.orbit--two { inset: 12% -7% 19% 8%; transform: rotate(-34deg); }
.section--about { border-top: 1px solid var(--air-line); }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #cbd0cb; border-left: 1px solid #cbd0cb; }
.service-card { min-height: 280px; padding: clamp(1.4rem, 3vw, 2.5rem); border-right: 1px solid #cbd0cb; border-bottom: 1px solid #cbd0cb; }
.service-card > span { display: block; margin-bottom: 3rem; color: var(--air-accent-deep); font-family: var(--font-serif); font-size: .8rem; }
.service-card h3 { margin-bottom: .8rem; }
.service-card p { color: var(--air-muted); font-size: .9rem; }
.section-note { margin-top: 1.3rem; color: var(--air-muted); font-size: .82rem; }
.media-feature { background: var(--air-paper); }
.media-panel { display: grid; grid-template-columns: 1.25fr .75fr; min-height: 560px; background: var(--whisky-ink); color: var(--whisky-ivory); text-decoration: none; box-shadow: var(--shadow); }
.media-panel:hover { text-decoration: none; }
.media-panel__image { overflow: hidden; }
.media-panel__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.media-panel:hover .media-panel__image img { transform: scale(1.025); }
.media-panel__body { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(2rem, 5vw, 4.5rem); }
.media-panel h3 { margin-bottom: 1.8rem; font-family: var(--font-serif); font-size: var(--step-3); }
.media-panel h3 small { display: block; margin-top: .25rem; color: var(--whisky-amber); font-family: var(--font-sans); font-size: .62rem; letter-spacing: .18em; text-transform: uppercase; }
.media-panel__concept { font-size: var(--step-1); font-weight: 700; }
.media-panel__body > p:not(.eyebrow):not(.media-panel__concept) { color: #c9c0b4; font-size: .9rem; }
.media-panel .button { margin-top: 1.2rem; }
.principle-list { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: var(--space-6); border-top: 1px solid var(--air-line); }
.principle-list > div { padding: 2rem 1.5rem 0 0; }
.principle-list > div + div { padding-left: 1.5rem; border-left: 1px solid var(--air-line); }
.principle-list span { color: var(--air-accent-deep); font-family: var(--font-serif); font-size: .78rem; }
.principle-list h3 { margin-block: 2rem .7rem; font-family: var(--font-serif); }
.principle-list p { color: var(--air-muted); font-size: .86rem; }
.contact-banner { padding-block: clamp(4rem, 8vw, 7rem); background: var(--air-ink); color: white; }
.contact-banner__inner { display: flex; align-items: end; justify-content: space-between; gap: 2rem; }
.contact-banner h2 { margin-bottom: 1rem; }
.contact-banner p:not(.eyebrow) { max-width: 600px; color: #b9c0c4; }
.contact-banner .eyebrow { color: #a9c7d9; }

/* Service and standard pages */
.page-hero { padding-block: clamp(5rem, 10vw, 9rem); border-bottom: 1px solid var(--air-line); }
.page-hero .wrap { max-width: 1180px; }
.page-hero h1 { max-width: 900px; margin-bottom: 1.5rem; }
.page-hero p:not(.eyebrow) { max-width: 660px; color: var(--air-muted); font-size: var(--step-1); }
.page-hero .button { margin-top: 1rem; }
.feature-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--air-line); border: 1px solid var(--air-line); }
.feature-card { min-height: 210px; padding: 2rem; background: var(--air-paper); }
.feature-card h3 { margin-bottom: .9rem; }
.feature-card p { color: var(--air-muted); }
.process-list { padding: 0; margin: 0; border-top: 1px solid var(--air-line); list-style: none; }
.process-list li { display: grid; grid-template-columns: 100px 1fr; padding-block: 2rem; border-bottom: 1px solid var(--air-line); }
.process-list span { color: var(--air-accent-deep); font-family: var(--font-serif); }
.process-list h3 { margin-bottom: .5rem; }
.process-list p { margin-bottom: 0; color: var(--air-muted); }
.standard-page .page-content { padding-block: var(--space-6) var(--space-7); }
.entry-content { font-family: var(--font-serif); font-size: 1.06rem; }
.entry-content > * { max-width: 760px; margin-inline: auto; }
.entry-content > .alignwide { max-width: 1040px; }
.entry-content > .alignfull { width: 100vw; max-width: none; margin-left: calc(50% - 50vw); }
.entry-content h2, .entry-content h3 { font-family: var(--font-sans); }
.entry-content h2 { margin-top: 3.4rem; margin-bottom: 1.2rem; padding-bottom: .65rem; border-bottom: 1px solid var(--whisky-line); }
.entry-content h3 { margin-top: 2.5rem; margin-bottom: .8rem; }
.entry-content p, .entry-content ul, .entry-content ol { margin-bottom: 1.5rem; }
.entry-content li + li { margin-top: .45rem; }
.entry-content blockquote { padding: 1.2rem 1.5rem; border-left: 4px solid var(--whisky-amber); background: #f3ede1; }
.entry-content table { width: 100%; border-collapse: collapse; font-family: var(--font-sans); font-size: .9rem; }
.entry-content th, .entry-content td { padding: .8rem; border: 1px solid var(--whisky-line); text-align: left; vertical-align: top; }
.entry-content th { background: #ece4d5; }
.notice-box { margin-block: 2rem; padding: 1.2rem 1.5rem; border-left: 4px solid var(--air-accent-deep); background: var(--air-soft); }
.notice-box p { margin: 0; }
.contact-form-wrap { margin-top: 2rem; }
.contact-form-wrap input:not([type="submit"]), .contact-form-wrap textarea, .contact-form-wrap select { width: 100%; min-height: 48px; border: 1px solid var(--air-line); background: white; padding: .7rem; }
.contact-form-wrap input[type="submit"] { min-height: 50px; border: 0; background: var(--air-ink); color: white; padding: .8rem 1.5rem; cursor: pointer; }
.faq-list { border-top: 1px solid var(--air-line); }
.faq-list details { border-bottom: 1px solid var(--air-line); }
.faq-list summary { position: relative; padding: 1.5rem 2.5rem 1.5rem 0; font-weight: 700; cursor: pointer; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { position: absolute; top: 1.35rem; right: .2rem; content: "+"; font-size: 1.4rem; font-weight: 400; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { padding: 0 2rem 1.5rem 0; color: var(--air-muted); }

/* Whisky home */
.whisky-home, .article-page, .archive-page.is-whisky { background: var(--whisky-ivory); }
.whisky-hero { padding-block: clamp(3.5rem, 7vw, 7rem); background: var(--whisky-ink); color: var(--whisky-ivory); }
.whisky-hero__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(400px, 1.1fr); align-items: center; gap: clamp(3rem, 7vw, 7rem); }
.whisky-hero h1 { margin-bottom: 1.8rem; font-family: var(--font-serif); font-size: var(--step-4); font-weight: 500; }
.whisky-hero h1 small { display: block; margin-top: .3rem; color: var(--whisky-amber); font-family: var(--font-sans); font-size: .68rem; letter-spacing: .2em; text-transform: uppercase; }
.whisky-hero__concept { font-size: var(--step-2); font-weight: 700; }
.whisky-hero__copy > p:not(.eyebrow):not(.whisky-hero__concept) { max-width: 600px; color: #c9c0b4; }
.whisky-hero .search-form { margin-top: 2.5rem; color: var(--whisky-ivory); }
.whisky-hero__image { position: relative; aspect-ratio: 8 / 7; overflow: hidden; }
.whisky-hero__image::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, var(--whisky-ink), transparent 35%); content: ""; }
.whisky-hero__image img { width: 100%; height: 100%; object-fit: cover; }
.whisky-start { background: var(--whisky-brown); color: var(--whisky-ivory); }
.whisky-start__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding-block: 2.6rem; }
.whisky-start__inner > div { display: grid; grid-template-columns: auto auto; column-gap: 1.4rem; align-items: center; }
.whisky-start__number { grid-row: 1 / 4; color: var(--whisky-amber); font-family: var(--font-serif); font-size: 3rem; }
.whisky-start h2 { font-size: var(--step-1); }
.whisky-start p:last-child { max-width: 650px; margin: .35rem 0 0; color: #c9c0b4; font-size: .84rem; }
.whisky-start .eyebrow { margin: 0; }
.whisky-categories { background: var(--whisky-ivory); }
.whisky-categories .section-heading > p { color: #6e6256; }
.category-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--whisky-line); border-left: 1px solid var(--whisky-line); }
.category-card { position: relative; min-height: 220px; padding: 2rem; border-right: 1px solid var(--whisky-line); border-bottom: 1px solid var(--whisky-line); color: var(--whisky-ink); text-decoration: none; transition: background .2s ease, color .2s ease; }
.category-card:hover { background: var(--whisky-brown); color: var(--whisky-ivory); text-decoration: none; }
.category-card__mark { display: block; width: 34px; height: 34px; margin-bottom: 2.5rem; border: 1px solid var(--whisky-amber); border-radius: 50% 50% 50% 4px; transform: rotate(-12deg); }
.category-card h3 { margin-bottom: .45rem; font-family: var(--font-serif); }
.category-card p { color: #776b60; font-size: .82rem; }
.category-card:hover p { color: #cfc4b7; }
.category-card__arrow { position: absolute; right: 1.5rem; bottom: 1.3rem; color: var(--whisky-amber); }
.whisky-latest { background: var(--whisky-ink); color: var(--whisky-ivory); }
.post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.3rem, 2.5vw, 2.4rem); }
.post-card { min-width: 0; }
.post-card__image { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--whisky-brown); }
.post-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.post-card:hover .post-card__image img { transform: scale(1.03); }
.post-card__body { padding-top: 1rem; }
.post-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .65rem; color: #998e81; font-size: .68rem; letter-spacing: .06em; }
.card-category { margin: 0; color: var(--whisky-amber); font-size: .66rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.post-card__title { margin-bottom: .65rem; font-family: var(--font-serif); font-size: var(--step-1); }
.post-card__title a { text-decoration: none; }
.post-card__body > p { color: #aaa095; font-size: .82rem; }
.archive-page .post-card__body > p, .related-posts .post-card__body > p { color: #70675f; }
.whisky-popular { background: var(--whisky-brown); color: var(--whisky-ivory); }
.ranking-list { padding: 0; margin: 0; border-top: 1px solid rgba(244,239,228,.18); list-style: none; }
.ranking-list li { display: grid; grid-template-columns: 75px 1fr auto; align-items: center; gap: 1.5rem; padding-block: 1.5rem; border-bottom: 1px solid rgba(244,239,228,.18); }
.ranking-list__rank { color: var(--whisky-amber); font-family: var(--font-serif); font-size: 1.8rem; }
.ranking-list h3 { margin-top: .35rem; font-family: var(--font-serif); }
.ranking-list a { text-decoration: none; }
.ranking-list time { color: #9d9185; font-size: .72rem; }
.whisky-terms { background: var(--whisky-ivory); }
.term-cloud { display: flex; flex-wrap: wrap; justify-content: center; gap: .7rem; }
.term-cloud a { border: 1px solid var(--whisky-line); border-radius: 999px; padding: .55rem 1rem; font-size: .82rem; text-decoration: none; }
.term-cloud a:hover { border-color: var(--whisky-brown); background: var(--whisky-brown); color: var(--whisky-ivory); }
.kindle-promo { background: #ede3d0; }
.kindle-promo__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.whisky-operator { background: var(--whisky-brown); color: var(--whisky-ivory); }
.whisky-operator .prose { color: #c7bdb2; }
.whisky-operator .prose .text-link { color: var(--whisky-ivory); }
.whisky-web-cta { padding-block: 4rem; background: #d5cab6; }
.whisky-web-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.whisky-web-cta h2 { font-size: var(--step-2); }

/* Article */
.article-page { padding-block: 1.5rem var(--space-7); }
.breadcrumbs { margin-block: 1rem 2rem; font-size: .68rem; }
.breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 0; list-style: none; }
.breadcrumbs li { display: flex; gap: .5rem; }
.breadcrumbs a { color: #6f665d; }
.article-header { max-width: 960px; padding-block: 2rem 3rem; }
.article-header__category { display: inline-block; margin-bottom: 1rem; color: var(--whisky-amber); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.article-header h1 { margin-bottom: 1.4rem; font-family: var(--font-serif); font-size: var(--step-4); font-weight: 600; }
.article-header__lead { max-width: 760px; color: #5f574f; font-size: var(--step-1); }
.article-byline { display: flex; flex-wrap: wrap; gap: .7rem 1.5rem; color: #756c64; font-size: .72rem; }
.article-layout { display: grid; grid-template-columns: minmax(0, 820px) minmax(220px, 280px); align-items: start; gap: clamp(2.5rem, 6vw, 6rem); }
.article-hero { aspect-ratio: 16 / 10; margin: 0 0 3rem; overflow: hidden; background: var(--whisky-brown); }
.article-hero img { width: 100%; height: 100%; object-fit: cover; }
.conclusion-box { margin-block: 2rem 3rem; padding: clamp(1.5rem, 4vw, 2.5rem); border-top: 3px solid var(--whisky-amber); background: #e9dfcd; }
.conclusion-box h2 { margin-bottom: .7rem; font-size: var(--step-2); }
.conclusion-box p:last-child { margin: 0; }
.article-toc { margin-block: 3rem; padding: 1.6rem 2rem; border: 1px solid var(--whisky-line); }
.article-toc h2 { margin-bottom: 1rem; font-size: var(--step-1); }
.article-toc ol { padding-left: 1.4rem; margin: 0; }
.article-toc li + li { margin-top: .35rem; }
.article-toc .toc-level-3 { margin-left: 1rem; font-size: .88rem; }
.article-toc a { color: #4f463e; }
.article-content { font-size: 1.08rem; line-height: 2; }
.article-content a { color: #704a19; }
.article-content img { border-radius: var(--radius-sm); }
.article-side { position: sticky; top: 1.5rem; }
.editorial-card, .widget, .side-panel { margin-bottom: 1.5rem; padding: 1.4rem; border-top: 3px solid var(--whisky-amber); background: var(--whisky-brown); color: var(--whisky-ivory); }
.editorial-card h2, .widget__title { margin-bottom: 1rem; font-family: var(--font-serif); font-size: 1.15rem; }
.editorial-card dl { margin: 0 0 1rem; }
.editorial-card dl div { padding-block: .65rem; border-bottom: 1px solid rgba(244,239,228,.14); }
.editorial-card dt { color: #aa9d8e; font-size: .66rem; }
.editorial-card dd { margin: .15rem 0 0; font-size: .8rem; }
.editorial-card a { color: var(--whisky-gold); font-size: .72rem; }
.related-terms, .article-faq, .article-sources { margin-block: 4rem; }
.related-terms h2, .article-faq > h2, .article-sources h2 { margin-bottom: 1.2rem; font-family: var(--font-serif); font-size: var(--step-2); }
.article-sources { padding: 1.4rem; border: 1px solid var(--whisky-line); color: #61584f; font-size: .78rem; }
.article-sources ul { padding-left: 1.2rem; }
.article-sources a { overflow-wrap: anywhere; }
.related-terms ul { display: flex; flex-wrap: wrap; gap: .6rem; padding: 0; list-style: none; }
.related-terms a { display: block; border: 1px solid var(--whisky-line); border-radius: 999px; padding: .45rem .8rem; font-size: .78rem; text-decoration: none; }
.product-box { display: grid; margin-block: 4rem; padding: 1.6rem; border: 1px solid var(--whisky-line); background: white; }
.product-box__label { color: #9d5d17; font-size: .68rem; font-weight: 700; letter-spacing: .1em; }
.product-box h2 { margin-bottom: .8rem; font-size: var(--step-1); }
.product-box__price { font-weight: 700; }
.product-box__notice { margin: 1rem 0 0; color: #786e65; font-size: .7rem; }
.article-kindle { margin-block: 4rem; padding: 2rem; background: #e7dac2; }
.article-kindle h2 { margin-bottom: .7rem; font-family: var(--font-serif); font-size: var(--step-2); }
.article-disclaimer { margin-top: 4rem; padding: 1.3rem 1.5rem; border: 1px solid var(--whisky-line); color: #675f57; font-size: .75rem; }
.article-disclaimer h2 { margin-bottom: .5rem; font-size: .9rem; }
.article-disclaimer p:last-child { margin-bottom: 0; }
.ad-slot { margin-block: 1.5rem; overflow: hidden; }
.ad-slot__label { display: block; margin-bottom: .3rem; color: #777; font-size: .6rem; letter-spacing: .1em; }
.related-posts { margin-top: var(--space-7); padding-top: var(--space-6); border-top: 1px solid var(--whisky-line); }
.related-posts .post-card__title { color: var(--whisky-ink); }
.article-web-cta { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: var(--space-7); padding: clamp(2rem, 5vw, 4rem); background: #d7cbb7; }
.article-web-cta h2 { font-size: var(--step-2); }

/* Archives */
.archive-hero { padding-block: clamp(3.5rem, 7vw, 6rem); background: var(--whisky-brown); color: var(--whisky-ivory); }
.is-air-design .archive-hero { background: var(--air-ink); color: white; }
.archive-hero h1 { max-width: 820px; font-family: var(--font-serif); }
.archive-description { max-width: 660px; margin-top: 1rem; color: #c9beb1; }
.archive-search { margin-top: 2rem; }
.archive-layout { display: grid; grid-template-columns: minmax(0, 1fr) 270px; align-items: start; gap: clamp(2rem, 5vw, 5rem); padding-block: var(--space-7); }
.archive-page .post-card__title, .archive-page .post-card__body { color: var(--whisky-ink); }
.archive-side { position: sticky; top: 1.5rem; }
.side-panel { background: var(--whisky-brown); }
.side-panel h2 { margin-bottom: 1rem; font-size: 1rem; }
.side-panel ul { padding: 0; margin: 0; list-style: none; }
.side-panel li { border-top: 1px solid rgba(244,239,228,.15); }
.side-panel a { display: flex; justify-content: space-between; padding-block: .7rem; color: var(--whisky-ivory); font-size: .78rem; text-decoration: none; }
.side-panel a span { color: var(--whisky-amber); }
.navigation.pagination { margin-top: 3rem; }
.nav-links { display: flex; flex-wrap: wrap; gap: .45rem; }
.page-numbers { display: grid; min-width: 42px; min-height: 42px; place-items: center; border: 1px solid var(--whisky-line); padding: .4rem; text-decoration: none; }
.page-numbers.current, a.page-numbers:hover { border-color: var(--whisky-brown); background: var(--whisky-brown); color: white; }
.result-count { margin-top: 0; color: #71675e; font-size: .82rem; }
.empty-state { padding: 3rem; border: 1px solid var(--whisky-line); text-align: center; }
.empty-state .search-form { margin: 2rem auto 0; }

/* Error */
.error-page { min-height: 70vh; display: grid; align-items: center; padding-block: var(--space-7); text-align: center; }
.error-page__code { margin: 0; color: #ced7d9; font-family: var(--font-serif); font-size: clamp(7rem, 20vw, 14rem); line-height: .8; }
.error-page h1 { margin-bottom: 1.2rem; }
.error-page > .wrap > p:not(.eyebrow):not(.error-page__code) { color: var(--air-muted); }
.error-page .search-form { margin: 2rem auto; }
.error-page .button-row { justify-content: center; }

/* Footer */
.site-footer { padding-top: var(--space-6); background: #101316; color: #d8dcdd; }
.site-footer__grid { display: grid; grid-template-columns: 1.5fr .7fr 1fr; gap: 3rem; padding-bottom: 3rem; }
.brand__air--footer { margin-bottom: 1rem; color: white; }
.site-footer__brand p { max-width: 420px; color: #8e979b; font-size: .8rem; }
.site-footer__brand .text-link { color: #b7d0dc; }
.site-footer__title { margin-bottom: 1rem; color: #7e898d; font-size: .68rem; letter-spacing: .15em; text-transform: uppercase; }
.site-footer__links { padding: 0; margin: 0; list-style: none; }
.site-footer__links li + li { margin-top: .5rem; }
.site-footer__links a { color: #c7cdcf; font-size: .78rem; text-decoration: none; }
.site-footer__links a:hover { color: white; }
.site-footer__notice { padding-block: 1.5rem; border-top: 1px solid #2b3033; border-bottom: 1px solid #2b3033; color: #7e888c; font-size: .66rem; }
.site-footer__notice p { margin: 0; }
.site-footer__notice p + p { margin-top: .3rem; }
.site-footer__bottom { display: flex; align-items: center; justify-content: space-between; padding-block: 1.2rem; color: #6e787c; font-size: .66rem; }
.site-footer__bottom p { margin: 0; }
.back-to-top { color: #9aa3a7; text-decoration: none; }

@media (max-width: 1080px) {
  .primary-nav__list { gap: .9rem; }
  .primary-nav a { font-size: .7rem; }
  .article-layout { grid-template-columns: minmax(0, 1fr) 240px; gap: 2.5rem; }
}

@media (max-width: 959px) {
  :root { --wrap: min(100% - 2.2rem, 760px); --narrow: min(100% - 2.2rem, 760px); }
  .site-header__inner { min-height: 70px; }
  .site-header__actions { display: flex; margin-left: auto; }
  .menu-toggle, .search-toggle { display: grid; width: 46px; height: 46px; place-items: center; border: 0; background: transparent; color: inherit; cursor: pointer; }
  .menu-toggle__bars, .menu-toggle__bars::before, .menu-toggle__bars::after { display: block; width: 22px; height: 1px; background: currentColor; content: ""; }
  .menu-toggle__bars { position: relative; }
  .menu-toggle__bars::before { position: absolute; top: -7px; }
  .menu-toggle__bars::after { position: absolute; top: 7px; }
  .menu-toggle[aria-expanded="true"] .menu-toggle__bars { background: transparent; }
  .menu-toggle[aria-expanded="true"] .menu-toggle__bars::before { top: 0; transform: rotate(45deg); }
  .menu-toggle[aria-expanded="true"] .menu-toggle__bars::after { top: 0; transform: rotate(-45deg); }
  .search-toggle { font-size: 1.7rem; line-height: 1; }
  .primary-nav { position: fixed; z-index: 90; inset: 70px 0 0; display: none; overflow-y: auto; background: var(--air-paper); color: var(--air-ink); }
  .primary-nav.is-open { display: block; }
  .primary-nav__list { width: var(--wrap); display: block; margin: 2rem auto; }
  .primary-nav__list li { border-bottom: 1px solid var(--air-line); }
  .primary-nav a, .is-whisky .primary-nav a { display: block; padding: 1rem 0; color: var(--air-ink); font-size: .95rem; }
  .is-whisky .primary-nav { background: var(--whisky-ink); }
  .is-whisky .primary-nav__list li { border-color: rgba(244,239,228,.15); }
  .is-whisky .primary-nav a { color: var(--whisky-ivory); }
  .air-hero__inner, .whisky-hero__grid { grid-template-columns: 1fr; }
  .air-hero { min-height: 0; }
  .air-hero__copy { position: relative; z-index: 1; }
  .air-hero__visual { width: min(82vw, 480px); margin: -2rem auto 0; }
  .whisky-hero__image { aspect-ratio: 16 / 10; }
  .whisky-hero__image::before { background: linear-gradient(180deg, var(--whisky-ink), transparent 25%); }
  .media-panel { grid-template-columns: 1fr; }
  .media-panel__image { min-height: 420px; }
  .media-panel__body { min-height: 420px; }
  .principle-list { grid-template-columns: repeat(2, 1fr); }
  .principle-list > div:nth-child(3) { padding-left: 0; border-left: 0; }
  .service-grid, .category-grid, .post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .article-layout, .archive-layout { grid-template-columns: 1fr; }
  .article-side, .archive-side { position: static; }
  .article-side { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .editorial-card, .widget { margin: 0; }
}

@media (max-width: 680px) {
  :root { --wrap: calc(100% - 2rem); --narrow: calc(100% - 2rem); --space-7: 4.5rem; }
  body { line-height: 1.75; }
  .section-heading--row, .split-heading, .contact-banner__inner, .whisky-start__inner, .kindle-promo__inner, .whisky-web-cta__inner, .article-web-cta { display: block; }
  .split-heading > * + *, .contact-banner .button, .whisky-start .button, .kindle-promo .button, .whisky-web-cta .button, .article-web-cta .button { margin-top: 2rem; }
  .button { width: 100%; }
  .button-row { display: grid; }
  .air-hero__inner { padding-block: 4rem 2rem; }
  .air-hero h1 { font-size: clamp(2.8rem, 14vw, 4.4rem); }
  .air-hero__visual { width: 94%; }
  .service-grid, .category-grid, .post-grid, .feature-grid, .site-footer__grid { grid-template-columns: 1fr; }
  .service-card { min-height: 230px; }
  .media-panel__image { min-height: 280px; }
  .media-panel__body { min-height: 390px; }
  .principle-list { grid-template-columns: 1fr; }
  .principle-list > div, .principle-list > div + div { padding: 1.5rem 0; border-left: 0; border-bottom: 1px solid var(--air-line); }
  .principle-list h3 { margin-top: 1rem; }
  .process-list li { grid-template-columns: 55px 1fr; }
  .whisky-hero { padding-top: 4rem; }
  .whisky-hero__grid { gap: 3rem; }
  .whisky-hero__image { margin-inline: -1rem; }
  .whisky-start__inner > div { grid-template-columns: auto 1fr; }
  .whisky-start p:last-child { grid-column: 1 / -1; margin-top: 1rem; }
  .category-card { min-height: 190px; }
  .category-card__mark { margin-bottom: 1.6rem; }
  .ranking-list li { grid-template-columns: 52px 1fr; }
  .ranking-list time { grid-column: 2; }
  .article-header { padding-top: 1rem; }
  .article-header h1 { font-size: clamp(2rem, 10vw, 3.1rem); }
  .article-wrap { width: calc(100% - 2rem); }
  .article-hero { margin-inline: -1rem; }
  .article-toc { padding: 1.3rem; }
  .article-side { display: block; }
  .editorial-card, .widget { margin-bottom: 1rem; }
  .article-web-cta, .kindle-promo__inner { padding-inline: 1.5rem; }
  .site-footer__grid { gap: 2.5rem; }
  .site-footer__bottom { align-items: flex-start; gap: 1rem; }
  .entry-content table { display: block; overflow-x: auto; white-space: nowrap; }
}

/* --------------------------------------------------------------------------
   Brand refinement — 1.2.0
   Air Design: white / navy. Whisky Library: white / brown.
   -------------------------------------------------------------------------- */
:root {
  --air-ink: #071a34;
  --air-muted: #526174;
  --air-line: #cfd8e4;
  --air-paper: #fff;
  --air-soft: #f7f9fc;
  --air-accent: #071a34;
  --air-accent-deep: #071a34;
  --whisky-ink: #38251c;
  --whisky-brown: #38251c;
  --whisky-brown-2: #38251c;
  --whisky-ivory: #fff;
  --whisky-amber: #7a4d34;
  --whisky-gold: #7a4d34;
  --whisky-line: #d8ccc5;
  --font-whisky: "Iowan Old Style", "Palatino Linotype", Palatino, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  --radius-sm: 0;
  --radius-md: 0;
  --radius-lg: 0;
  --shadow: none;
}

.button { border-radius: 0; box-shadow: none; text-transform: none; }
.button:hover { transform: none; }
.button--dark { background: var(--air-ink); color: #fff; }
.button--dark:hover { background: #173452; }
.button--line { border-color: var(--air-ink); color: var(--air-ink); }
.button--line:hover { background: var(--air-ink); color: #fff; }

/* Air Design */
.is-air-design { background: #fff; color: var(--air-ink); font-family: var(--font-sans); }
.is-air-design .site-header { border-color: var(--air-line); background: rgba(255,255,255,.97); }
.is-air-design .brand__air, .is-air-design .primary-nav a { color: var(--air-ink); }
.is-air-design .brand__air span { color: var(--air-ink); }
.is-air-design .primary-nav a { letter-spacing: .02em; }

.air-hero {
  min-height: 680px;
  border-bottom: 1px solid var(--air-line);
  background: #fff;
  color: var(--air-ink);
}
.air-hero__inner { grid-template-columns: minmax(0, .88fr) minmax(460px, 1.12fr); gap: clamp(3rem, 7vw, 8rem); padding-block: 6rem; }
.air-hero h1 { color: var(--air-ink); font-size: clamp(3.25rem, 5.4vw, 5.25rem); font-weight: 680; letter-spacing: -.06em; }
.air-hero h1 em { color: var(--air-ink); font-family: var(--font-sans); font-weight: 680; }
.air-hero .eyebrow { color: var(--air-ink); }
.air-hero__lead { max-width: 560px; color: var(--air-muted); font-size: .92rem; }
.air-hero .button--line { border-color: var(--air-ink); color: var(--air-ink); }
.air-hero .button--line:hover { border-color: var(--air-ink); background: var(--air-ink); color: #fff; }
.air-hero__visual {
  position: relative;
  width: 100%;
  aspect-ratio: 1.18 / 1;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.air-hero__visual::before {
  position: absolute;
  inset: 8%;
  width: auto;
  aspect-ratio: auto;
  border: 1px solid rgba(7,26,52,.08);
  border-radius: 0;
  background-image: linear-gradient(rgba(7,26,52,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(7,26,52,.045) 1px, transparent 1px);
  background-size: 36px 36px;
  content: "";
}
.network-map { position: absolute; inset: 7%; width: 86%; height: 86%; overflow: visible; }
.network-map__lines { fill: none; stroke: rgba(7,26,52,.25); stroke-width: 1; stroke-dasharray: 7 9; animation: network-flow 13s linear infinite; }
.network-map__nodes { fill: #fff; stroke: var(--air-ink); stroke-width: 2; }
.network-map__signal { fill: none; stroke: var(--air-ink); stroke-width: 1.5; transform-box: fill-box; transform-origin: center; animation: network-pulse 2.8s ease-out infinite; }
.network-map__signal--two { animation-delay: 1.3s; }
.network-label { position: absolute; left: 12%; bottom: 12%; display: grid; gap: .28rem; border-left: 2px solid var(--air-ink); padding-left: .85rem; color: var(--air-ink); }
.network-label strong { font-size: .72rem; letter-spacing: .15em; }
.network-label span { color: var(--air-muted); font-size: .66rem; letter-spacing: .08em; }
.tech-grid, .tech-node, .air-hero__mark, .signal-card { display: none; }
@keyframes network-flow { to { stroke-dashoffset: -128; } }
@keyframes network-pulse { 0% { opacity: 0; transform: scale(.3); } 25% { opacity: .8; } 100% { opacity: 0; transform: scale(3.8); } }

.section--soft { background: var(--air-soft); }
.service-grid { gap: 0; border-top: 1px solid var(--air-line); border-left: 1px solid var(--air-line); }
.service-card { min-height: 220px; border: 0; border-right: 1px solid var(--air-line); border-bottom: 1px solid var(--air-line); border-radius: 0; box-shadow: none; }
.service-card > span, .principle-list span { color: var(--air-ink); }
.principle-list { gap: 0; border-top: 1px solid var(--air-line); }
.principle-list > div, .principle-list > div + div { border: 0; border-left: 1px solid var(--air-line); border-radius: 0; }
.principle-list > div:first-child { border-left: 0; }
.contact-banner { background: var(--air-ink); }

.media-feature { border-block: 1px solid #d8ccc5; background: #fff; }
.media-panel { min-height: 360px; grid-template-columns: .85fr 1.15fr; border-radius: 0; background: var(--whisky-brown); box-shadow: none; }
.media-panel__body { order: 1; padding: clamp(2.4rem, 5vw, 4.5rem); }
.media-panel__image { order: 2; min-height: 360px; }
.media-panel__image img { filter: sepia(.28) saturate(.72) contrast(1.02); }
.media-panel h3 { margin-bottom: .8rem; color: #fff; font-family: var(--font-whisky); font-size: clamp(2rem, 3vw, 3rem); font-weight: 500; letter-spacing: -.025em; }
.media-panel__concept { color: #fff; font-family: var(--font-whisky); font-size: 1rem; font-weight: 500; }
.media-panel__link { margin-top: 1.6rem; border-bottom: 1px solid rgba(255,255,255,.55); color: #fff; padding-bottom: .25rem; font-size: .76rem; letter-spacing: .08em; }
.media-panel:hover .media-panel__image img { transform: none; }

.is-air-design .site-footer { background: var(--air-ink); color: #fff; }
.is-air-design .site-footer .brand__air, .is-air-design .site-footer .brand__air span { color: #fff; }
.is-air-design .site-footer p, .is-air-design .site-footer a { color: rgba(255,255,255,.78); }
.is-air-design .site-footer__title { color: #fff; }

/* Whisky Library */
.is-whisky { background: #fff; color: var(--whisky-brown); }
.is-whisky .site-header { border-color: var(--whisky-line); background: rgba(255,255,255,.98); color: var(--whisky-brown); }
.is-whisky .brand__media, .is-whisky .primary-nav a { color: var(--whisky-brown); }
.is-whisky .primary-nav a:hover { color: var(--whisky-brown); opacity: .65; }
.brand__name { font-family: var(--font-whisky); font-size: 1.08rem; font-weight: 600; letter-spacing: .01em; }
.brand__by { color: var(--whisky-brown); font-size: .5rem; }
.whisky-home, .article-page { background: #fff; color: var(--whisky-brown); }
.whisky-hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--whisky-line); background: #fff; color: var(--whisky-brown); padding-block: clamp(4.5rem, 7vw, 7rem); }
.whisky-hero::before { position: absolute; top: 0; right: 8%; width: 1px; height: 100%; background: rgba(56,37,28,.1); content: ""; }
.whisky-hero__grid { grid-template-columns: minmax(0, .86fr) minmax(480px, 1.14fr); gap: clamp(4rem, 8vw, 8rem); align-items: center; }
.whisky-hero h1 { margin-bottom: 1.6rem; color: var(--whisky-brown); font-family: var(--font-whisky); font-size: clamp(3.1rem, 5vw, 5rem); font-weight: 500; letter-spacing: -.04em; line-height: 1.02; }
.whisky-hero h1 small { margin-top: .8rem; color: var(--whisky-brown); font-family: var(--font-sans); font-size: .55rem; letter-spacing: .22em; }
.whisky-hero .eyebrow { color: var(--whisky-brown); }
.whisky-hero__concept { color: var(--whisky-brown); font-family: var(--font-whisky); font-size: clamp(1.25rem, 1.8vw, 1.55rem); font-weight: 500; }
.whisky-hero__copy > p:not(.eyebrow):not(.whisky-hero__concept) { color: rgba(56,37,28,.72); }
.whisky-hero .search-form { color: var(--whisky-brown); }
.whisky-hero__image { position: relative; aspect-ratio: 4 / 3; overflow: hidden; border: 0; border-radius: 0; background: var(--whisky-brown); }
.whisky-hero__image::before { z-index: 1; background: linear-gradient(180deg, rgba(56,37,28,.18), rgba(56,37,28,.05)); }
.whisky-hero__image img { filter: sepia(.34) saturate(.7) contrast(1.08); transform: scale(1.02); }
.whisky-hero__edition, .whisky-hero__caption { position: absolute; z-index: 2; color: #fff; font-family: var(--font-sans); font-size: .57rem; font-weight: 650; letter-spacing: .16em; line-height: 1.5; }
.whisky-hero__edition { top: 1.4rem; left: 1.4rem; }
.whisky-hero__caption { right: 1.4rem; bottom: 1.3rem; }
.whisky-start { border-bottom: 1px solid var(--whisky-line); background: var(--whisky-brown); color: #fff; }
.whisky-start .eyebrow, .whisky-start__number { color: #fff; }
.button--amber { border: 1px solid #fff; background: transparent; color: #fff; }
.button--amber:hover { background: #fff; color: var(--whisky-brown); }
.whisky-categories, .whisky-latest, .whisky-popular, .whisky-operator, .whisky-terms { background: #fff; color: var(--whisky-brown); }
.category-grid { gap: 0; border-top: 1px solid var(--whisky-line); border-left: 1px solid var(--whisky-line); }
.category-card { min-height: 165px; border: 0; border-right: 1px solid var(--whisky-line); border-bottom: 1px solid var(--whisky-line); border-radius: 0; background: #fff; color: var(--whisky-brown); }
.category-card:hover { background: var(--whisky-brown); color: #fff; }
.category-card__mark { width: 20px; height: 1px; border-radius: 0; background: var(--whisky-brown); }
.category-card:hover .category-card__mark { background: #fff; }
.category-card h3, .post-card__title, .ranking-list h3, .article-header h1, .archive-hero h1 { font-family: var(--font-whisky); font-weight: 600; }
.whisky-latest .section-heading, .whisky-latest .post-card, .whisky-popular .section-heading, .whisky-operator .prose { color: var(--whisky-brown); }
.whisky-latest .text-link--light, .whisky-operator .text-link--light { color: var(--whisky-brown); }
.post-card__image, .conclusion-box, .article-toc, .editorial-card, .widget, .side-panel { border-radius: 0; }
.ranking-list { border-color: var(--whisky-line); }
.ranking-list li { border-color: var(--whisky-line); }
.ranking-list__rank, .eyebrow--amber { color: var(--whisky-brown); }
.term-cloud a { border-radius: 0; background: #fff; }
.whisky-web-cta { border-top: 1px solid var(--whisky-line); background: #fff; color: var(--whisky-brown); }
.is-whisky .site-footer { background: var(--whisky-brown); color: #fff; }
.is-whisky .site-footer a, .is-whisky .site-footer p, .is-whisky .brand__media--footer, .is-whisky .brand__media--footer .brand__by { color: rgba(255,255,255,.82); }
.is-whisky .site-footer__title { color: #fff; }

@media (max-width: 959px) {
  .air-hero__inner, .whisky-hero__grid { grid-template-columns: 1fr; }
  .air-hero__visual { width: min(100%, 620px); }
  .whisky-hero__image { width: min(100%, 720px); }
}

@media (max-width: 680px) {
  .air-hero { min-height: 0; }
  .air-hero__inner { padding-block: 4.2rem 3.4rem; gap: 2.4rem; }
  .air-hero h1 { font-size: clamp(2.75rem, 12vw, 3.6rem); }
  .air-hero__visual { height: 260px; }
  .network-map { inset: 0; width: 100%; height: 100%; }
  .network-label { left: 4%; bottom: 5%; }
  .service-card { min-height: 180px; }
  .principle-list > div, .principle-list > div + div { border-left: 0; border-top: 1px solid var(--air-line); }
  .media-panel { grid-template-columns: 1fr; }
  .media-panel__body, .media-panel__image { order: initial; }
  .media-panel__image { min-height: 240px; }
  .whisky-hero { padding-block: 3.8rem 0; }
  .whisky-hero__grid { gap: 2.8rem; }
  .whisky-hero h1 { font-size: clamp(2.8rem, 14vw, 3.8rem); }
  .whisky-hero__image { width: calc(100% + 2rem); margin-inline: -1rem; aspect-ratio: 4 / 3; }
}

@media (prefers-reduced-motion: reduce) {
  .network-map__lines, .network-map__signal { animation: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

@media print {
  .site-header, .site-footer, .article-side, .breadcrumbs, .article-toc, .ad-slot, .product-box, .article-web-cta, .related-posts, .article-kindle, .comments-area { display: none !important; }
  body, .article-page { background: white; color: black; font-size: 11pt; }
  .article-wrap, .article-main { width: 100%; max-width: none; }
  .article-layout { display: block; }
  .article-header { padding: 0 0 1cm; }
  .article-hero { max-width: 16cm; break-inside: avoid; }
  .entry-content a { color: black; text-decoration: none; }
  .entry-content a[href]::after { content: " (" attr(href) ")"; font-size: 8pt; }
  h2, h3, figure, table, blockquote { break-inside: avoid; }
}

/* --------------------------------------------------------------------------
   Technology direction refresh — 1.1.0
   -------------------------------------------------------------------------- */
:root {
  --air-ink: #08162b;
  --air-muted: #5c6879;
  --air-line: #dce3ed;
  --air-paper: #ffffff;
  --air-soft: #f4f7fb;
  --air-accent: #4f8cff;
  --air-accent-deep: #165dcc;
  --whisky-ink: #15181d;
  --whisky-brown: #20201f;
  --whisky-brown-2: #292826;
  --whisky-ivory: #f6f4ee;
  --whisky-amber: #bd812e;
  --whisky-gold: #d6a557;
  --whisky-line: #d8d2c7;
  --step-2: clamp(1.36rem, 1.22rem + .45vw, 1.72rem);
  --step-3: clamp(1.72rem, 1.48rem + .8vw, 2.35rem);
  --step-4: clamp(2.15rem, 1.75rem + 1.35vw, 3.2rem);
  --step-5: clamp(2.7rem, 2rem + 2.3vw, 4.45rem);
  --space-7: clamp(4.5rem, 7vw, 6.5rem);
  --radius-sm: 5px;
  --radius-md: 10px;
  --radius-lg: 18px;
  --shadow: 0 18px 55px rgba(8, 22, 43, .09);
  --wrap: min(1200px, calc(100% - 3rem));
}

body {
  background: var(--air-paper);
  color: var(--air-ink);
  line-height: 1.72;
}

h1, h2, h3 { letter-spacing: -.035em; }
.eyebrow { margin-bottom: .75rem; color: var(--air-accent-deep); font-size: .66rem; letter-spacing: .16em; }
.section-heading { margin-bottom: 2.35rem; }
.button { min-height: 46px; border-radius: 6px; padding: .75rem 1.2rem; font-size: .8rem; }
.button--dark { background: var(--air-accent); color: #fff; }
.button--dark:hover { background: #6a9dff; }
.button--line { border-color: #34445a; color: var(--air-ink); }
.button--line:hover { border-color: var(--air-ink); background: var(--air-ink); color: #fff; }
.air-hero .button--line { border-color: rgba(255,255,255,.35); color: #fff; }
.air-hero .button--line:hover { border-color: #fff; background: #fff; color: var(--air-ink); }

.site-header { border-color: var(--air-line); background: rgba(255,255,255,.96); }
.site-header__inner { min-height: 72px; }
.brand__air { color: var(--air-ink); font-size: 1rem; letter-spacing: -.01em; }
.brand__air span { color: var(--air-accent-deep); }
.primary-nav__list { gap: clamp(1rem, 2vw, 1.8rem); }
.primary-nav a { color: #314055; font-size: .72rem; font-weight: 650; }

/* Air Design: clean navy technology surface */
.air-hero {
  min-height: 650px;
  background:
    radial-gradient(circle at 76% 22%, rgba(79,140,255,.18), transparent 28%),
    linear-gradient(135deg, #071326 0%, #0a1b34 58%, #0b2344 100%);
  color: #fff;
}
.air-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr); gap: clamp(3rem, 7vw, 7rem); padding-block: 5.5rem; }
.air-hero h1 { max-width: 710px; margin-bottom: 1.35rem; font-size: var(--step-5); font-weight: 640; line-height: 1.15; letter-spacing: -.055em; }
.air-hero h1 em { color: #8cb8ff; font-family: var(--font-sans); font-weight: 640; }
.air-hero .eyebrow { color: #77aaff; }
.air-hero__lead { max-width: 590px; margin-bottom: 1.8rem; color: #aebbd0; font-size: .96rem; }
.air-hero__visual {
  position: relative;
  width: 100%;
  aspect-ratio: 1.18 / 1;
  overflow: hidden;
  border: 1px solid rgba(151,184,233,.22);
  border-radius: 14px;
  background: rgba(9,29,56,.68);
  box-shadow: 0 30px 80px rgba(0,0,0,.22);
}
.air-hero__visual::before { position: absolute; inset: auto -18% -45% 24%; width: 86%; aspect-ratio: 1; border: 1px solid rgba(97,151,238,.28); border-radius: 50%; content: ""; }
.tech-grid { position: absolute; inset: 0; opacity: .4; background-image: linear-gradient(rgba(112,159,227,.16) 1px, transparent 1px), linear-gradient(90deg, rgba(112,159,227,.16) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(to bottom right, #000, transparent 82%); }
.tech-node { position: absolute; width: 8px; height: 8px; border: 2px solid #6ca1f6; border-radius: 50%; background: #0a1b34; box-shadow: 0 0 0 6px rgba(79,140,255,.1); }
.tech-node::after { position: absolute; top: 2px; left: 9px; width: 110px; height: 1px; background: linear-gradient(90deg, rgba(108,161,246,.6), transparent); content: ""; }
.tech-node--one { top: 18%; left: 15%; }
.tech-node--two { top: 42%; right: 16%; }
.tech-node--three { right: 38%; bottom: 18%; }
.air-hero__mark { position: absolute; inset: 50% auto auto 50%; display: flex; flex-direction: column; align-items: center; color: #fff; font-family: var(--font-sans); transform: translate(-50%, -55%); }
.air-hero__mark strong { font-family: var(--font-sans); font-size: clamp(4rem, 8vw, 6.5rem); font-weight: 250; letter-spacing: -.08em; line-height: 1; }
.air-hero__mark small { margin-top: .65rem; color: #7eaaf1; font-size: .62rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.signal-card { position: absolute; right: 1.1rem; bottom: 1.1rem; border: 1px solid rgba(160,191,235,.2); border-radius: 6px; background: rgba(8,22,43,.78); padding: .65rem .85rem; color: #b5c4da; font-size: .65rem; letter-spacing: .08em; }
.signal-card span { margin-right: .6rem; color: #6ca1f6; font-family: var(--font-mono, monospace); }
.orbit { display: none; }

.section--about { border-color: var(--air-line); background: #fff; }
.section--about h2, .principles h2 { font-weight: 590; }
.service-grid { gap: 1rem; border: 0; background: transparent; }
.service-card { min-height: 230px; border: 1px solid var(--air-line); border-radius: 10px; background: #fff; padding: 1.7rem; }
.service-card > span { margin-bottom: 2.25rem; color: var(--air-accent-deep); font-family: var(--font-sans); font-size: .64rem; font-weight: 700; letter-spacing: .12em; }
.service-card h3 { font-size: 1.03rem; }
.service-card p { font-size: .83rem; line-height: 1.75; }
.media-panel { min-height: 480px; grid-template-columns: 1.15fr .85fr; border-radius: 14px; background: #0a182c; box-shadow: 0 25px 70px rgba(8,22,43,.14); }
.media-panel__body { padding: clamp(2.2rem, 4vw, 3.6rem); }
.media-panel h3 { margin-bottom: 1.25rem; font-family: var(--font-sans); font-size: 2rem; font-weight: 550; letter-spacing: -.04em; }
.media-panel__concept { font-size: 1.05rem; }
.principle-list { gap: 1rem; border: 0; }
.principle-list > div, .principle-list > div + div { border: 1px solid var(--air-line); border-radius: 8px; padding: 1.5rem; }
.principle-list h3 { margin-block: 1.4rem .6rem; font-family: var(--font-sans); font-size: 1rem; }
.contact-banner { padding-block: clamp(3.5rem, 6vw, 5.5rem); background: #071326; }

/* Whisky Library: restrained editorial technology surface */
.is-whisky { color: #1c2026; }
.is-whisky .site-header { border-color: rgba(255,255,255,.11); background: #15181d; }
.is-whisky .site-header__inner { min-height: 70px; }
.brand__media { gap: 0; }
.brand__name { font-family: var(--font-sans); font-size: 1rem; font-weight: 590; letter-spacing: -.02em; }
.brand__by { margin-top: .1rem; font-size: .52rem; letter-spacing: .18em; }
.is-whisky .primary-nav a { color: #c8cbd0; font-size: .67rem; font-weight: 600; }
.whisky-home, .article-page { background: #f6f5f1; }
.whisky-hero { padding-block: clamp(4rem, 6vw, 5.5rem); background: #15181d; }
.whisky-hero__grid { grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); gap: clamp(3rem, 6vw, 6rem); }
.whisky-hero h1 { margin-bottom: 1.25rem; font-family: var(--font-sans); font-size: clamp(2.55rem, 4.2vw, 3.65rem); font-weight: 500; letter-spacing: -.05em; }
.whisky-hero h1 small { margin-top: .35rem; font-size: .56rem; }
.whisky-hero__concept { margin-bottom: .9rem; font-size: clamp(1.25rem, 1.8vw, 1.55rem); line-height: 1.5; }
.whisky-hero__copy > p:not(.eyebrow):not(.whisky-hero__concept) { max-width: 520px; color: #aeb1b5; font-size: .9rem; }
.whisky-hero .search-form { max-width: 520px; margin-top: 1.8rem; color: #e5e5e2; }
.whisky-hero__image { aspect-ratio: 1.35 / 1; border-radius: 8px; }
.whisky-hero__image::before { background: linear-gradient(90deg, #15181d, transparent 28%); }
.whisky-start { background: #20201f; }
.whisky-start__inner { padding-block: 2rem; }
.whisky-start__number { font-family: var(--font-sans); font-size: 2rem; font-weight: 300; }
.whisky-start h2 { font-size: 1.05rem; }
.whisky-start p:last-child { font-size: .78rem; }
.whisky-categories { background: #f6f5f1; }
.category-grid { gap: .85rem; border: 0; }
.category-card { min-height: 165px; border: 1px solid var(--whisky-line); border-radius: 8px; background: #fff; padding: 1.35rem; }
.category-card:hover { border-color: #303235; background: #202226; }
.category-card__mark { width: 22px; height: 3px; margin-bottom: 2rem; border: 0; border-radius: 99px; background: var(--whisky-amber); transform: none; }
.category-card h3 { font-family: var(--font-sans); font-size: .98rem; font-weight: 620; }
.category-card p { font-size: .73rem; }
.category-card__arrow { right: 1.15rem; bottom: 1rem; }
.whisky-latest { background: #171a1f; }
.post-card__image { border-radius: 7px; }
.post-card__title { font-family: var(--font-sans); font-size: 1rem; font-weight: 600; line-height: 1.5; }
.post-card__body > p { font-size: .76rem; line-height: 1.7; }
.whisky-popular, .whisky-operator { background: #20201f; }
.ranking-list__rank { font-family: var(--font-sans); font-size: 1.2rem; font-weight: 300; }
.ranking-list h3 { font-family: var(--font-sans); font-size: .98rem; }
.term-cloud a { background: #fff; padding: .45rem .8rem; font-size: .72rem; }
.whisky-web-cta { background: #e6e5df; }

/* Article typography: calmer, contemporary, easier to scan */
.article-header { max-width: 880px; padding-block: 1.5rem 2.5rem; }
.article-header h1 { margin-bottom: 1rem; font-family: var(--font-sans); font-size: clamp(2rem, 3.7vw, 3.15rem); font-weight: 590; line-height: 1.3; }
.article-header__lead { font-size: 1.05rem; }
.article-layout { grid-template-columns: minmax(0, 780px) minmax(220px, 270px); }
.article-content, .entry-content { font-family: var(--font-sans); font-size: 1rem; line-height: 1.9; }
.entry-content h2 { margin-top: 3rem; font-size: 1.65rem; }
.entry-content h3 { margin-top: 2.25rem; font-size: 1.25rem; }
.conclusion-box { border-top-width: 2px; border-radius: 7px; background: #ece9e1; }
.article-toc { border-radius: 7px; background: #fff; }
.editorial-card, .widget, .side-panel { border-top-width: 2px; border-radius: 7px; background: #202226; }
.editorial-card h2, .widget__title { font-family: var(--font-sans); }
.archive-hero { padding-block: clamp(3.5rem, 6vw, 5.25rem); background: #202226; }
.archive-hero h1 { font-family: var(--font-sans); font-size: var(--step-4); font-weight: 560; }

@media (max-width: 959px) {
  :root { --wrap: min(100% - 2.2rem, 780px); }
  .air-hero__inner, .whisky-hero__grid { grid-template-columns: 1fr; }
  .air-hero { min-height: 0; }
  .air-hero__visual { width: min(100%, 560px); margin: 0 auto; }
  .whisky-hero__image { aspect-ratio: 16 / 9; }
  .whisky-hero__image::before { background: linear-gradient(180deg, #15181d, transparent 22%); }
  .service-grid, .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  :root { --wrap: calc(100% - 2rem); --narrow: calc(100% - 2rem); --space-7: 4rem; }
  .site-header__inner { min-height: 64px; }
  .primary-nav { inset: 64px 0 0; }
  .air-hero__inner { padding-block: 3.8rem 3rem; gap: 3rem; }
  .air-hero h1 { font-size: clamp(2.55rem, 11vw, 3.45rem); line-height: 1.16; }
  .air-hero__lead { font-size: .9rem; }
  .air-hero__visual { width: 100%; height: 310px; aspect-ratio: auto; margin: 0; }
  .air-hero__mark strong { font-size: 4.2rem; }
  .button-row { gap: .65rem; }
  .service-grid, .category-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 190px; }
  .media-panel__image { min-height: 240px; }
  .media-panel__body { min-height: 350px; }
  .principle-list { gap: .75rem; }
  .whisky-hero { padding-block: 3.4rem 0; }
  .whisky-hero__grid { gap: 2.5rem; }
  .whisky-hero h1 { font-size: 2.35rem; }
  .whisky-hero__concept { font-size: 1.2rem; }
  .whisky-hero__copy > p:not(.eyebrow):not(.whisky-hero__concept) { font-size: .84rem; }
  .whisky-hero__image { margin-inline: -1rem; border-radius: 0; }
  .category-card { min-height: 150px; }
  .article-header h1 { font-size: 2rem; }
  .article-content, .entry-content { font-size: .96rem; line-height: 1.85; }
}

/* 1.2.0 final cascade enforcement */
:root { --air-ink:#071a34; --air-muted:#526174; --air-line:#cfd8e4; --air-paper:#fff; --air-soft:#f7f9fc; --air-accent:#071a34; --air-accent-deep:#071a34; --whisky-ink:#38251c; --whisky-brown:#38251c; --whisky-brown-2:#38251c; --whisky-ivory:#fff; --whisky-amber:#7a4d34; --whisky-gold:#7a4d34; --whisky-line:#d8ccc5; --radius-sm:0; --radius-md:0; --radius-lg:0; --shadow:none; }
.button { border-radius:0; box-shadow:none; }
.button:hover { transform:none; }
.button--dark { background:var(--air-ink); color:#fff; }
.button--dark:hover { background:#173452; }
.button--line { border-color:var(--air-ink); color:var(--air-ink); }
.button--line:hover { background:var(--air-ink); color:#fff; }
.is-air-design { background:#fff; color:var(--air-ink); }
.is-air-design .site-header { border-color:var(--air-line); background:rgba(255,255,255,.97); }
.is-air-design .brand__air, .is-air-design .brand__air span, .is-air-design .primary-nav a { color:var(--air-ink); }
.air-hero { min-height:680px; border-bottom:1px solid var(--air-line); background:#fff; color:var(--air-ink); }
.air-hero__inner { grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr); gap:clamp(3rem,7vw,8rem); padding-block:6rem; }
.air-hero h1 { color:var(--air-ink); font-size:clamp(3.25rem,5.4vw,5.25rem); font-weight:680; letter-spacing:-.06em; }
.air-hero h1 em { color:var(--air-ink); font-family:var(--font-sans); font-weight:680; }
.air-hero .eyebrow { color:var(--air-ink); }
.air-hero__lead { color:var(--air-muted); font-size:.92rem; }
.air-hero .button--line { border-color:var(--air-ink); color:var(--air-ink); }
.air-hero .button--line:hover { border-color:var(--air-ink); background:var(--air-ink); color:#fff; }
.air-hero__visual { width:100%; aspect-ratio:1.18/1; border:0; border-radius:0; background:#fff; box-shadow:none; }
.air-hero__visual::before { inset:8%; width:auto; aspect-ratio:auto; border:1px solid rgba(7,26,52,.08); border-radius:0; background-image:linear-gradient(rgba(7,26,52,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(7,26,52,.045) 1px,transparent 1px); background-size:36px 36px; }
.network-map { position:absolute; inset:7%; display:block; width:86%; height:86%; overflow:visible; }
.network-map__lines { fill:none; stroke:rgba(7,26,52,.25); stroke-width:1; stroke-dasharray:7 9; animation:network-flow 13s linear infinite; }
.network-map__nodes { fill:#fff; stroke:var(--air-ink); stroke-width:2; }
.network-map__signal { fill:none; stroke:var(--air-ink); stroke-width:1.5; transform-box:fill-box; transform-origin:center; animation:network-pulse 2.8s ease-out infinite; }
.network-map__signal--two { animation-delay:1.3s; }
.network-label { position:absolute; left:12%; bottom:12%; display:grid; gap:.28rem; border-left:2px solid var(--air-ink); padding-left:.85rem; color:var(--air-ink); }
.network-label strong { font-size:.72rem; letter-spacing:.15em; }
.network-label span { color:var(--air-muted); font-size:.66rem; letter-spacing:.08em; }
.tech-grid,.tech-node,.air-hero__mark,.signal-card { display:none; }
.service-grid { gap:0; border-top:1px solid var(--air-line); border-left:1px solid var(--air-line); }
.service-card { min-height:220px; border:0; border-right:1px solid var(--air-line); border-bottom:1px solid var(--air-line); border-radius:0; }
.service-card>span,.principle-list span { color:var(--air-ink); }
.principle-list { gap:0; border-top:1px solid var(--air-line); }
.principle-list>div,.principle-list>div+div { border:0; border-left:1px solid var(--air-line); border-radius:0; }
.principle-list>div:first-child { border-left:0; }
.media-feature { border-block:1px solid #d8ccc5; background:#fff; }
.media-panel { min-height:360px; grid-template-columns:.85fr 1.15fr; border-radius:0; background:var(--whisky-brown); box-shadow:none; }
.media-panel__body { order:1; padding:clamp(2.4rem,5vw,4.5rem); }
.media-panel__image { order:2; min-height:360px; }
.media-panel__image img { filter:sepia(.28) saturate(.72) contrast(1.02); }
.media-panel h3 { margin-bottom:.8rem; color:#fff; font-family:var(--font-whisky); font-size:clamp(2rem,3vw,3rem); font-weight:500; }
.media-panel__concept { color:#fff; font-family:var(--font-whisky); font-size:1rem; font-weight:500; }
.media-panel__link { margin-top:1.6rem; border-bottom:1px solid rgba(255,255,255,.55); color:#fff; padding-bottom:.25rem; font-size:.76rem; letter-spacing:.08em; }
.media-panel:hover .media-panel__image img { transform:none; }
.contact-banner,.is-air-design .site-footer { background:var(--air-ink); }
.is-air-design .site-footer .brand__air,.is-air-design .site-footer .brand__air span { color:#fff; }
.is-air-design .site-footer p,.is-air-design .site-footer a { color:rgba(255,255,255,.78); }
.is-air-design .site-footer__title { color:#fff; }
.is-whisky { background:#fff; color:var(--whisky-brown); }
.is-whisky .site-header { border-color:var(--whisky-line); background:rgba(255,255,255,.98); color:var(--whisky-brown); }
.is-whisky .brand__media,.is-whisky .primary-nav a { color:var(--whisky-brown); }
.brand__name { font-family:var(--font-whisky); font-size:1.08rem; font-weight:600; }
.brand__by { color:var(--whisky-brown); font-size:.5rem; }
.whisky-home,.article-page { background:#fff; color:var(--whisky-brown); }
.whisky-hero { border-bottom:1px solid var(--whisky-line); background:#fff; color:var(--whisky-brown); padding-block:clamp(4.5rem,7vw,7rem); }
.whisky-hero::before { position:absolute; top:0; right:8%; width:1px; height:100%; background:rgba(56,37,28,.1); content:""; }
.whisky-hero__grid { grid-template-columns:minmax(0,.86fr) minmax(480px,1.14fr); gap:clamp(4rem,8vw,8rem); }
.whisky-hero h1 { margin-bottom:1.6rem; color:var(--whisky-brown); font-family:var(--font-whisky); font-size:clamp(3.1rem,5vw,5rem); font-weight:500; line-height:1.02; }
.whisky-hero h1 small { margin-top:.8rem; color:var(--whisky-brown); font-family:var(--font-sans); font-size:.55rem; }
.whisky-hero .eyebrow,.whisky-hero__concept { color:var(--whisky-brown); }
.whisky-hero__concept { font-family:var(--font-whisky); font-size:clamp(1.25rem,1.8vw,1.55rem); font-weight:500; }
.whisky-hero__copy>p:not(.eyebrow):not(.whisky-hero__concept) { color:rgba(56,37,28,.72); }
.whisky-hero .search-form { color:var(--whisky-brown); }
.whisky-hero__image { aspect-ratio:4/3; border:0; border-radius:0; background:var(--whisky-brown); }
.whisky-hero__image::before { z-index:1; background:linear-gradient(180deg,rgba(56,37,28,.18),rgba(56,37,28,.05)); }
.whisky-hero__image img { filter:sepia(.34) saturate(.7) contrast(1.08); transform:scale(1.02); }
.whisky-hero__edition,.whisky-hero__caption { position:absolute; z-index:2; color:#fff; font-family:var(--font-sans); font-size:.57rem; font-weight:650; letter-spacing:.16em; line-height:1.5; }
.whisky-hero__edition { top:1.4rem; left:1.4rem; }
.whisky-hero__caption { right:1.4rem; bottom:1.3rem; }
.whisky-start { border-bottom:1px solid var(--whisky-line); background:var(--whisky-brown); color:#fff; }
.whisky-start .eyebrow,.whisky-start__number { color:#fff; }
.button--amber { border:1px solid #fff; border-radius:0; background:transparent; color:#fff; }
.button--amber:hover { background:#fff; color:var(--whisky-brown); }
.whisky-categories,.whisky-latest,.whisky-popular,.whisky-operator,.whisky-terms { background:#fff; color:var(--whisky-brown); }
.category-grid { gap:0; border-top:1px solid var(--whisky-line); border-left:1px solid var(--whisky-line); }
.category-card { min-height:165px; border:0; border-right:1px solid var(--whisky-line); border-bottom:1px solid var(--whisky-line); border-radius:0; background:#fff; color:var(--whisky-brown); }
.category-card:hover { background:var(--whisky-brown); color:#fff; }
.category-card__mark { width:20px; height:1px; border-radius:0; background:var(--whisky-brown); }
.category-card:hover .category-card__mark { background:#fff; }
.category-card h3,.post-card__title,.ranking-list h3,.article-header h1,.archive-hero h1 { font-family:var(--font-whisky); font-weight:600; }
.whisky-latest .section-heading,.whisky-latest .post-card,.whisky-popular .section-heading,.whisky-operator .prose,.whisky-latest .text-link--light,.whisky-operator .text-link--light { color:var(--whisky-brown); }
.post-card__image,.conclusion-box,.article-toc,.editorial-card,.widget,.side-panel,.term-cloud a { border-radius:0; }
.ranking-list,.ranking-list li { border-color:var(--whisky-line); }
.ranking-list__rank,.eyebrow--amber { color:var(--whisky-brown); }
.whisky-web-cta { border-top:1px solid var(--whisky-line); background:#fff; color:var(--whisky-brown); }
.is-whisky .site-footer { background:var(--whisky-brown); color:#fff; }
.is-whisky .site-footer a,.is-whisky .site-footer p,.is-whisky .brand__media--footer,.is-whisky .brand__media--footer .brand__by { color:rgba(255,255,255,.82); }
.is-whisky .site-footer__title { color:#fff; }
@media (max-width:959px) { .air-hero__inner,.whisky-hero__grid { grid-template-columns:1fr; } .air-hero__visual { width:min(100%,620px); } .whisky-hero__image { width:min(100%,720px); } }
@media (max-width:680px) { .air-hero { min-height:0; } .air-hero__inner { padding-block:4.2rem 3.4rem; gap:2.4rem; } .air-hero h1 { font-size:clamp(2.75rem,12vw,3.6rem); } .air-hero__visual { height:260px; } .network-map { inset:0; width:100%; height:100%; } .network-label { left:4%; bottom:5%; } .service-card { min-height:180px; } .principle-list>div,.principle-list>div+div { border-left:0; border-top:1px solid var(--air-line); } .media-panel { grid-template-columns:1fr; } .media-panel__body,.media-panel__image { order:initial; } .media-panel__image { min-height:240px; } .whisky-hero { padding-block:3.8rem 0; } .whisky-hero__grid { gap:2.8rem; } .whisky-hero h1 { font-size:clamp(2.8rem,14vw,3.8rem); } .whisky-hero__image { width:calc(100% + 2rem); margin-inline:-1rem; aspect-ratio:4/3; } }

/* 1.3.0 interaction and content refinement */
h1, h2, h3 { text-wrap: balance; }
.section-heading h2, .page-hero h1, .contact-banner h2 { max-width: 18ch; }
.air-hero h1 { max-width: 9.5ch; }
.air-hero h1 span, .air-hero h1 em { display: block; white-space: nowrap; }
.air-hero__visual { overflow: visible; }
.air-hero__visual::before, .network-label { display: none; }
.network-map { inset: 0; width: 100%; height: 100%; }
.network-map__lines { stroke: rgba(7,26,52,.2); stroke-dasharray: 4 12; animation-duration: 8s; }
.network-map__nodes { fill: #fff; stroke-width: 1.5; }
.network-map__signal { animation-duration: 2.2s; }
.network-particle {
  position: absolute;
  z-index: 2;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--air-ink);
  box-shadow: 0 0 0 5px rgba(7,26,52,.08);
  offset-rotate: 0deg;
  animation: network-travel 7s linear infinite;
}
.network-particle--one { offset-path: path("M35 120 L175 60 L305 132 L447 70 L580 154"); }
.network-particle--two { offset-path: path("M70 350 L210 280 L350 370 L500 294 L580 414"); animation-delay: -2.4s; animation-duration: 8.5s; }
.network-particle--three { offset-path: path("M175 60 L210 280 L350 370 L500 294 L447 70"); animation-delay: -4.8s; animation-duration: 10s; }
@keyframes network-travel { to { offset-distance: 100%; } }

.service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.service-card { min-height: 260px; padding: 2rem; }
.service-card > span { margin-bottom: 4rem; }
.service-card h3 { font-size: 1.15rem; }
.feature-grid--services { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border: 1px solid var(--air-line); background: transparent; }
.feature-grid--services .feature-card { min-height: 290px; border-left: 1px solid var(--air-line); background: #fff; padding: clamp(1.8rem, 3vw, 2.7rem); }
.feature-grid--services .feature-card:first-child { border-left: 0; }
.feature-grid--services .feature-card h3 { max-width: 12ch; margin-bottom: 1.2rem; font-size: 1.25rem; }

.page-hero--service { background: #fff; }
.page-hero--service h1 { max-width: 16ch; font-size: clamp(2.8rem, 5vw, 5.2rem); line-height: 1.15; }
.page-hero--service p:not(.eyebrow) { max-width: 580px; }

.contact-banner { position: relative; overflow: hidden; border-top: 1px solid rgba(255,255,255,.14); }
.contact-banner::before { position: absolute; inset: 0; background: linear-gradient(115deg, transparent 42%, rgba(255,255,255,.035) 42% 58%, transparent 58%); content: ""; }
.contact-banner__inner { position: relative; display: grid; justify-items: center; max-width: 820px; text-align: center; }
.contact-banner h2 { max-width: none; margin-inline: auto; font-size: clamp(2.2rem, 4vw, 4rem); }
.contact-banner p:not(.eyebrow) { max-width: 560px; margin-inline: auto; }
.contact-banner .button { min-width: 190px; margin-top: 1.4rem; }

.archive-hero, .is-whisky .archive-hero { border-bottom: 1px solid var(--whisky-line); background: #fff; color: var(--whisky-brown); }
.archive-hero .eyebrow, .archive-description, .article-header__category, .card-category { color: var(--whisky-brown); }
.is-whisky .primary-nav { background: #fff; color: var(--whisky-brown); }
.is-whisky .primary-nav__list li { border-color: var(--whisky-line); }
.is-whisky .primary-nav a { color: var(--whisky-brown); }
.is-whisky .header-search { border-color: var(--whisky-line); background: #fff; color: var(--whisky-brown); }
.site-footer__media-link { display: inline-block; margin-top: .7rem; border-bottom: 1px solid rgba(255,255,255,.35); padding-bottom: .2rem; font-size: .72rem; letter-spacing: .04em; text-decoration: none; }

@media (max-width: 959px) {
  .feature-grid--services { grid-template-columns: 1fr; }
  .feature-grid--services .feature-card, .feature-grid--services .feature-card:first-child { min-height: 0; border-left: 0; border-top: 1px solid var(--air-line); }
  .feature-grid--services .feature-card:first-child { border-top: 0; }
}

@media (max-width: 680px) {
  .air-hero h1 { max-width: none; font-size: clamp(2.45rem, 10.5vw, 3rem); }
  .air-hero__visual { height: 240px; }
  .network-particle { display: none; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 200px; }
  .service-card > span { margin-bottom: 2.6rem; }
  .contact-banner__inner { display: grid; }
  .contact-banner .button { width: min(100%, 260px); margin-top: 1rem; }
  .contact-banner h2 { font-size: 2.45rem; }
}

@media (prefers-reduced-motion: reduce) {
  .network-particle { display: none; }
}

/* 1.3.1 exact CTA centering */
.contact-banner__inner {
  width: min(820px, calc(100% - 2rem));
  margin-inline: auto;
  display: grid;
  place-items: center;
  justify-content: center;
  align-content: center;
  text-align: center;
}
.contact-banner__inner > div {
  width: 100%;
  display: grid;
  justify-items: center;
  text-align: center;
}
.contact-banner__inner .eyebrow,
.contact-banner__inner h2,
.contact-banner__inner p {
  margin-inline: auto;
  text-align: center;
}
.contact-banner__inner p:not(.eyebrow) { max-width: 680px; }
.contact-banner__inner .button { justify-self: center; }

/* 1.3.2 separate site footers */
.site-footer--air { background: var(--air-ink); color: #fff; }
.site-footer--whisky { background: var(--whisky-brown); color: #fff; }
.site-footer__identity {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .65fr);
  align-items: end;
  gap: clamp(3rem, 8vw, 8rem);
  padding-block: clamp(4rem, 7vw, 6.5rem) 3rem;
  border-bottom: 1px solid rgba(255,255,255,.18);
}
.site-footer__identity > p { max-width: 520px; margin: 0; color: rgba(255,255,255,.64); font-size: .84rem; }
.site-footer__kicker { margin-bottom: .9rem; color: rgba(255,255,255,.52); font-size: .58rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.site-footer__identity .brand__air { color: #fff; font-size: clamp(1.7rem, 3vw, 2.5rem); }
.site-footer__identity .brand__air span { color: #fff; }
.site-footer__identity .brand__media { color: #fff; }
.site-footer__identity .brand__name { color: #fff; font-size: clamp(1.75rem, 3vw, 2.6rem); }
.site-footer__identity .brand__by { color: rgba(255,255,255,.58); }
.site-footer__grid { grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(150px, .65fr)); padding-block: 3rem; }
.site-footer__grid--air { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.site-footer__links--columns { columns: 2; column-gap: 2rem; }
.site-footer__links--columns li { break-inside: avoid; }
.site-footer__links--columns li + li { margin-top: 0; }
.site-footer__links--columns li { margin-bottom: .5rem; }
.site-footer__sites {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid rgba(255,255,255,.2);
  border-bottom: 0;
}
.site-footer__sites a {
  position: relative;
  display: grid;
  min-height: 112px;
  align-content: center;
  border-left: 1px solid rgba(255,255,255,.2);
  padding: 1.4rem 1.7rem;
  color: #fff;
  font-size: 1rem;
  font-weight: 650;
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease;
}
.site-footer__sites a:first-child { border-left: 0; }
.site-footer__sites a span { margin-bottom: .3rem; color: rgba(255,255,255,.52); font-size: .56rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.site-footer__sites a b { position: absolute; top: 50%; right: 1.5rem; font-weight: 400; transform: translateY(-50%); }
.site-footer__sites a:hover { background: #fff; color: var(--air-ink); }
.site-footer--whisky .site-footer__sites a:hover { color: var(--whisky-brown); }
.site-footer__sites a:hover span { color: currentColor; opacity: .55; }
.site-footer__sites .is-current::after { position: absolute; top: 1rem; right: 1rem; width: 5px; height: 5px; border-radius: 50%; background: #fff; content: ""; }
.site-footer--whisky .site-footer__notice { border-top: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); color: rgba(255,255,255,.55); }
.site-footer--air .site-footer__bottom, .site-footer--whisky .site-footer__bottom { color: rgba(255,255,255,.48); }

@media (max-width: 760px) {
  .site-footer__identity { grid-template-columns: 1fr; gap: 1.4rem; }
  .site-footer__grid, .site-footer__grid--air { grid-template-columns: 1fr; gap: 2.7rem; }
  .site-footer__links--columns { columns: 2; }
  .site-footer__sites { grid-template-columns: 1fr; }
  .site-footer__sites a, .site-footer__sites a:first-child { min-height: 96px; border-top: 1px solid rgba(255,255,255,.2); border-left: 0; }
  .site-footer__sites a:first-child { border-top: 0; }
}

/* 1.4.0 service naming and shared page-header scale */
.air-hero h1 { max-width: none; font-size: clamp(3.1rem, 4.6vw, 3.8rem); }
.page-hero--service h1 {
  max-width: 900px;
  font-size: var(--step-4);
  line-height: 1.32;
  letter-spacing: -.035em;
}
.page-hero--service p:not(.eyebrow) { max-width: 660px; }

@media (max-width: 680px) {
  .air-hero h1 { font-size: clamp(2.25rem, 9.8vw, 2.75rem); }
}
