@charset "UTF-8";

/* Circulator 2026 — a quiet, photo-led guide to moving air. */
body.gbds-v2-circulator-page { overflow-x: clip; background: #fff; }
body.gbds-v2-circulator-page :where(.container,.content,.content-in) { width:100%; max-width:none; margin:0; padding:0; background:#fff; }
body.gbds-v2-circulator-page .content-in { display:block; }
body.gbds-v2-circulator-page :where(.main,#main,.article,.entry-content) { width:100%; max-width:none; margin:0; padding:0!important; border:0; background:transparent!important; box-shadow:none; }
body.gbds-v2-circulator-page :where(#header-container,.article-header,.date-tags,.eye-catch-wrap,#toc,.toc,#sidebar,.ad-area,.sns-share,.sns-follow,.article-footer,.under-entry-content,.pager-post-navi,.related-entry-heading,.related-list,.breadcrumb,.author-info,.mobile-footer-menu-buttons,.go-to-top) { display:none!important; }

.gbds-v2-circulator-shell {
  --gc-ink:#101416; --gc-copy:#455055; --gc-muted:#687378; --gc-line:#d9dddf;
  --gc-accent:#007e78; --gc-blue:#096fa2; --gc-soft:#f5f6f5; --gc-dark:#0b0f12;
  --gc-orange:#ffab66; --gc-violet:#b3a0ef; --gc-side:max(24px,calc((100vw - 1240px)/2));
  --gc-ease:cubic-bezier(.22,.7,.2,1);
  width:100%; max-width:none; margin:0!important; background:#fff; color:var(--gc-ink);
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic","Noto Sans JP",sans-serif;
  font-size:17px; line-height:1.9; text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased;
}
.gbds-v2-circulator-shell,.gbds-v2-circulator-shell * { box-sizing:border-box; }
.gbds-v2-circulator-shell :where(h1,h2,h3,h4,p,figure,ul,ol,dl,form) { margin:0; }
body.gbds-v2-circulator-page .gbds-v2-circulator-shell :where(h1,h2,h3,h4) { margin:0!important; padding:0!important; border:0!important; border-radius:0; background:transparent!important; box-shadow:none!important; color:inherit; }
body.gbds-v2-circulator-page .gbds-v2-circulator-shell :where(h1,h2,h3,h4)::before,
body.gbds-v2-circulator-page .gbds-v2-circulator-shell :where(h1,h2,h3,h4)::after { display:none!important; content:none!important; }
body.gbds-v2-circulator-page .gbds-v2-circulator-shell p { margin-top:0; }
.gbds-v2-circulator-shell :where(p,li,dd) { word-break:auto-phrase; }
.gbds-v2-circulator-shell :where(h3,h4,summary) { word-break:auto-phrase; overflow-wrap:normal; }
.gbds-v2-circulator-shell :where(button,input) { font:inherit; }
.gbds-v2-circulator-shell button { cursor:pointer; }
.gbds-v2-circulator-shell :where(a,button,input):focus-visible { outline:3px solid #177b9a; outline-offset:5px; }
.gbds-v2-circulator-shell a { color:inherit; text-underline-offset:.24em; }
.gbds-v2-circulator-shell a:hover { color:var(--gc-accent); }
.gbds-v2-circulator-shell [hidden] { display:none!important; }
.gbds-v2-circulator-shell img { display:block; max-width:100%; height:auto; }
.gbds-v2-circulator-shell h2 > [id^="toc"] { display:contents; }
.gbds-v2-circulator-shell :where(section[id],header[id]) { scroll-margin-top:110px; }
.gc-phrase { display:block; word-break:keep-all; overflow-wrap:normal; }
.gc-accent { color:var(--gc-accent); }
.gc-sr { position:absolute!important; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }

/* The opening contains only a title; navigation begins beneath it. */
.gc-hero { min-height:min(92svh,980px); display:grid; place-items:center; padding:120px 24px; }
.gbds-v2-circulator-shell .gc-hero h1 { max-width:1280px; font-size:clamp(35px,7.2vw,110px); font-weight:820; letter-spacing:-.065em; line-height:1.18; text-align:center; }
.gc-hero .gc-phrase { animation:gc-arrive 900ms var(--gc-ease) both; }
.gc-hero .gc-phrase:nth-child(2) { animation-delay:100ms; }
.gc-hero .gc-phrase:nth-child(3) { animation-delay:190ms; }
@keyframes gc-arrive { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:none} }
.gc-nav { position:sticky; top:0; z-index:25; display:flex; align-items:center; justify-content:space-between; gap:28px; padding:20px var(--gc-side); border-block:1px solid var(--gc-line); background:rgba(255,255,255,.96); backdrop-filter:blur(14px); }
.gc-brand { flex:none; font-size:16px; font-weight:750; text-decoration:none; line-height:1.4; }
.gc-brand span { margin-left:10px; color:var(--gc-accent); font-size:12px; letter-spacing:.07em; }
.gc-navlinks { display:flex; gap:26px; align-items:center; }
.gc-navlinks a { padding:2px 0; font-size:12px; font-weight:700; text-decoration:none; white-space:nowrap; }
.gc-navlinks a[aria-current="location"] { color:var(--gc-accent); text-decoration:underline; text-underline-offset:8px; }
.gc-reading { position:absolute; left:0; bottom:-1px; width:100%; height:2px; overflow:hidden; }
.gc-reading span { display:block; height:100%; width:100%; background:var(--gc-accent); transform:scaleX(0); transform-origin:left; }

.gc-section { padding:clamp(90px,10vw,160px) var(--gc-side); }
.gc-soft { background:var(--gc-soft); }
.gc-sectionhead { margin:0 auto clamp(52px,6vw,90px); text-align:center; max-width:1160px; }
.gc-kicker { margin:0 0 30px!important; font-size:12px; font-weight:750; color:var(--gc-muted); letter-spacing:.14em; }
.gbds-v2-circulator-shell .gc-sectionhead h2 { font-size:clamp(36px,5.4vw,78px); font-weight:790; letter-spacing:-.06em; line-height:1.25; }
.gc-sectionhead > p:last-child:not(.gc-kicker) { max-width:760px; margin:30px auto 0!important; color:var(--gc-copy); font-size:clamp(16px,1.5vw,20px); line-height:1.9; }
.gc-prose { max-width:780px; margin-inline:auto; color:var(--gc-copy); }
.gc-prose p + p { margin-top:28px; }
.gbds-v2-circulator-shell .gc-prose h3 { margin-bottom:28px!important; color:var(--gc-ink); font-size:30px; line-height:1.5; letter-spacing:-.03em; text-align:center; }
.gc-actions { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:24px 32px; margin:42px auto 0; }
.gc-button { display:inline-flex; align-items:center; justify-content:center; gap:15px; padding:15px 25px; border-radius:99px; background:var(--gc-ink); color:#fff!important; font-size:14px; font-weight:700; text-align:center; text-decoration:none; line-height:1.6; transition:transform 250ms var(--gc-ease),background 250ms; }
.gc-button:hover { transform:translateY(-2px); background:#30373b; }
.gc-textlink { display:inline-flex; gap:14px; align-items:center; font-size:14px; font-weight:700; }
.gc-disclosure,.gc-source { margin:40px auto 0; max-width:880px; font-size:12px; color:var(--gc-muted); line-height:1.9; }
.gc-disclosure { margin-top:32px; max-width:740px; }
.gc-intro { padding-top:95px; padding-bottom:100px; }
.gc-intro-lead { margin-bottom:32px!important; color:var(--gc-ink); font-size:clamp(21px,2.2vw,29px); font-weight:670; letter-spacing:-.02em; line-height:1.85; }
.gc-wide-photo { margin:80px auto 0; max-width:1240px; }
.gc-wide-photo img { width:100%; aspect-ratio:1.5; object-fit:cover; }
.gbds-v2-circulator-shell figcaption { display:block; margin:14px auto 0; padding:0; color:var(--gc-muted); font-size:11px; line-height:1.8; text-align:center; background:transparent; }
.gc-duo { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; max-width:1000px; margin:0 auto 65px; }
.gc-basics-duo > div { padding:10px 54px 40px; min-width:0; }
.gc-basics-duo > div + div { border-left:1px solid var(--gc-line); }
.gc-label { color:var(--gc-accent); font-size:13px; font-weight:750; letter-spacing:.06em; }
.gbds-v2-circulator-shell .gc-basics-duo h3 { margin-top:12px!important; font-size:24px; line-height:1.5; }
.gc-bigword { margin:25px 0 28px!important; font-size:clamp(38px,4.5vw,66px); font-weight:780; color:var(--gc-accent); line-height:1.3; letter-spacing:-.045em; }
.gc-basics-duo > div:nth-child(2) .gc-bigword { color:var(--gc-blue); }
.gc-basics-duo > div > p:last-child { font-size:16px; color:var(--gc-copy); }

/* A real chapter transition: dark, edge to edge. */
.gc-dark { background:var(--gc-dark); color:#f4f5f6; --gc-accent:var(--gc-orange); --gc-copy:#b4bec4; --gc-muted:#94a0a8; --gc-line:#333c42; --gc-ink:#f4f5f6; }
.gc-dark .gc-kicker { color:var(--gc-violet); }
.gc-dark a:hover { color:var(--gc-orange); }
.gc-dark :where(a,button,input):focus-visible { outline-color:var(--gc-orange); }
.gc-seasons { max-width:1080px; margin-inline:auto; }
.gc-season-controls { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--gc-line); margin:0 auto 58px; }
.gc-season-controls button { border:0; border-bottom:3px solid transparent; border-radius:0; padding:20px 8px; background:transparent; color:var(--gc-muted); font-weight:700; font-size:16px; transition:color .2s,border-color .2s; }
.gc-season-controls button[aria-pressed="true"] { color:var(--gc-orange); border-bottom-color:var(--gc-orange); }
.gc-season-panel { margin:0 auto; }
.gc-season-panel + .gc-season-panel { margin-top:70px; border-top:1px solid var(--gc-line); padding-top:70px; }
.is-gc-seasons-ready .gc-season-panel + .gc-season-panel { margin-top:0; border-top:0; padding-top:0; }
.gc-season-name { text-align:center; font-size:13px; font-weight:650; color:var(--gc-muted); margin-bottom:18px!important; }
.gbds-v2-circulator-shell .gc-season-panel h3 { text-align:center; font-size:clamp(27px,3.8vw,54px); line-height:1.3; letter-spacing:-.045em; }
.gc-direction { display:flex; justify-content:center; gap:24px; flex-wrap:wrap; align-items:center; margin:38px auto!important; color:var(--gc-orange); font-size:15px; font-weight:700; }
.gc-direction span { display:inline-block; word-break:keep-all; }
.gc-direction span:nth-child(2) { font-size:32px; line-height:1; color:var(--gc-muted); }
.gc-season-panel .gc-prose { max-width:780px; }
.gc-choice-list { max-width:950px; margin:auto; }
.gc-choice-list > section { display:grid; grid-template-columns:70px minmax(0,1fr); gap:30px; border-top:1px solid var(--gc-line); padding:46px 0; }
.gc-choice-list > section:last-child { border-bottom:1px solid var(--gc-line); }
.gc-choice-number { font-size:16px; color:var(--gc-accent); font-weight:750; padding-top:7px; }
.gbds-v2-circulator-shell .gc-choice-list h3 { font-size:30px; letter-spacing:-.035em; line-height:1.45; margin-bottom:22px!important; }
.gc-choice-list h3 .gc-phrase { display:inline-block; }
.gc-choice-list p { color:var(--gc-copy); }
.gc-shortlist { max-width:900px; margin:auto; }
.gc-shortlist > a { display:grid; grid-template-columns:54px minmax(0,1fr) 30px; align-items:center; gap:25px; padding:25px 15px; border-top:1px solid var(--gc-line); text-decoration:none; transition:transform 250ms var(--gc-ease); }
.gc-shortlist > a:last-child { border-bottom:1px solid var(--gc-line); }
.gc-shortlist > a:hover { transform:translateX(5px); }
.gc-short-index { color:var(--gc-accent); font-size:14px; font-weight:700; }
.gc-shortlist > a > span:nth-child(2) { font-size:12px; color:var(--gc-muted); }
.gc-shortlist strong { display:block; font-size:clamp(19px,2vw,27px); color:var(--gc-ink); font-weight:700; letter-spacing:-.025em; }
.gc-shortlist > a > span:last-child { font-size:24px; }

/* Each model has one large, honest photograph, not a cutout collage. */
.gc-product { padding-block:115px; }
.gc-product .gc-sectionhead { margin-bottom:46px; }
.gc-sectionhead .gc-model { font-size:20px!important; color:var(--gc-ink)!important; font-weight:650; }
.gc-model > span { font-size:14px; font-weight:500; color:var(--gc-muted); letter-spacing:.02em; }
.gc-product-photo { max-width:760px; margin:0 auto 55px; }
.gc-product-photo img { width:100%; height:clamp(340px,38vw,530px); object-fit:contain; background:#fff; }
.gc-product-photo.gc-product-photo--wide { max-width:1000px; }
.gc-product-photo.gc-product-photo--wide img { height:auto; aspect-ratio:840/254; }
.gc-product-photo figcaption { max-width:670px; }
.gc-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); max-width:900px; margin:0 auto 50px; gap:28px; text-align:center; }
.gc-stats > div { min-width:0; }
.gc-stats > div > span { color:var(--gc-muted); font-size:12px; }
.gc-stats strong { display:block; color:var(--gc-accent); font-size:clamp(31px,4vw,57px); font-weight:750; line-height:1.3; letter-spacing:-.045em; white-space:nowrap; margin-top:12px; }
.gc-stats small { font-size:18px; margin-left:5px; font-weight:650; letter-spacing:0; }
.gc-product-copy { max-width:780px; margin:auto; color:var(--gc-copy); }
.gc-product-copy p + p { margin-top:25px; }
.gc-verdict-pair { max-width:950px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px; margin:42px auto 0; padding-top:34px; border-top:1px solid var(--gc-line); }
.gbds-v2-circulator-shell .gc-verdict-pair h3 { margin-bottom:12px!important; font-size:17px; line-height:1.5; color:var(--gc-accent); }
.gc-verdict-pair > div:last-child h3 { color:var(--gc-copy); }
.gc-verdict-pair p { font-size:15px; color:var(--gc-copy); }

.gc-calculator { max-width:950px; margin:55px auto 0; padding:40px 0; border-block:1px solid var(--gc-line); }
.gc-calculator-fields { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.gc-calculator-fields label { color:#d5dce0; font-size:13px; font-weight:650; min-width:0; }
.gc-calculator-fields label > span { color:var(--gc-muted); font-weight:400; font-size:11px; margin-left:7px; }
.gc-calculator-fields input { display:block; margin-top:10px; width:100%; padding:14px; border:1px solid #535d64; border-radius:6px; background:#141a1e; color:#fff; font-size:21px; line-height:1.5; }
.gc-calculator-fields input:invalid { border-color:#ffab66; }
.gc-calculator-result { margin:55px auto 30px; text-align:center; }
.gc-calculator-result > p { font-size:13px; color:var(--gc-muted); }
.gc-calculator-result output { display:block; color:var(--gc-orange); font-size:clamp(56px,8vw,112px); line-height:1.3; letter-spacing:-.06em; font-weight:780; margin:15px auto 22px; }
.gc-calculator-result output span { display:block; font-size:18px; line-height:1.6; letter-spacing:0; font-weight:500; color:#f4f5f6; }
.gc-equation { text-align:center; color:var(--gc-muted); font-size:12px; margin-top:25px!important; }
.gc-form-error { text-align:center; color:var(--gc-orange); font-size:13px; }
.gc-power-note { margin-top:65px; }
.gc-power-note h3 .gc-phrase { display:inline-block; }
.gc-care-photo { max-width:1030px; margin:auto; }
.gc-care-photo img { width:100%; max-height:530px; object-fit:contain; background:#fff; }
.gc-care-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; margin:65px auto; max-width:1130px; }
.gc-care-steps section > p:first-child { color:var(--gc-accent); font-weight:700; font-size:14px; margin-bottom:18px; }
.gbds-v2-circulator-shell .gc-care-steps h3 { font-size:21px; letter-spacing:-.03em; line-height:1.5; margin-bottom:20px!important; }
.gc-care-steps section > p:last-child { color:var(--gc-copy); font-size:15px; }
.gc-faq { max-width:920px; margin:auto; }
.gc-faq details { border-top:1px solid var(--gc-line); }
.gc-faq details:last-child { border-bottom:1px solid var(--gc-line); }
.gc-faq summary { position:relative; cursor:pointer; padding:26px 40px 26px 0; font-size:18px; font-weight:650; list-style:none; }
.gc-faq summary::-webkit-details-marker { display:none; }
.gc-faq summary::after { content:"+"; position:absolute; right:5px; top:22px; font-size:25px; font-weight:400; color:var(--gc-accent); }
.gc-faq details[open] summary::after { content:"−"; }
.gc-faq details p { color:var(--gc-copy); font-size:16px; max-width:790px; margin:0 0 30px; }
.gc-final { padding-block:140px; }
.gc-final .gc-sectionhead { margin-bottom:42px; }
.gc-editorial-note { padding:50px var(--gc-side); background:var(--gc-soft); color:var(--gc-muted); }
.gbds-v2-circulator-shell .gc-editorial-note h2 { max-width:900px; margin:0 auto 12px!important; font-size:13px; text-align:center; line-height:1.5; }
.gc-editorial-note p { max-width:900px; margin:auto; font-size:11px; line-height:1.9; }

@media (min-width:1500px) { .gc-season-panel { min-height:400px; } }
@media (max-width:1000px) {
  .gc-nav { flex-direction:column; gap:12px; padding:13px 24px 12px; }
  .gc-navlinks { gap:25px; }
  .gc-basics-duo > div { padding-inline:32px; }
  .gc-care-steps { gap:25px; }
  .gc-care-steps h3 { font-size:19px!important; }
}
@media (max-width:680px) {
  .gbds-v2-circulator-shell { --gc-side:22px; font-size:16px; }
  .gc-hero { min-height:83svh; padding:100px 15px; }
  .gbds-v2-circulator-shell .gc-hero h1 { font-size:clamp(28px,8.1vw,51px); line-height:1.28; letter-spacing:-.06em; }
  .gc-nav { padding-inline:15px; }
  .gc-brand { font-size:14px; }
  .gc-navlinks { justify-content:center; gap:clamp(13px,4.3vw,24px); width:100%; }
  .gc-navlinks a { font-size:11px; }
  .gc-section { padding-block:78px; }
  .gc-sectionhead { margin-bottom:45px; }
  .gc-kicker { font-size:10px; letter-spacing:.1em; margin-bottom:23px!important; }
  .gbds-v2-circulator-shell .gc-sectionhead h2 { font-size:clamp(29px,8vw,47px); letter-spacing:-.06em; line-height:1.3; }
  .gc-sectionhead > p:last-child:not(.gc-kicker) { margin-top:25px!important; font-size:15px; }
  .gc-sectionhead br { display:none; }
  .gc-sectionhead .gc-model br { display:block; }
  .gc-prose p + p { margin-top:23px; }
  .gc-wide-photo { margin-top:50px; }
  .gc-wide-photo img { aspect-ratio:1.25; }
  .gc-intro-lead { font-size:21px; line-height:1.8; }
  .gc-intro-lead br { display:none; }
  .gc-actions { gap:22px; margin-top:32px; }
  .gc-button { max-width:100%; padding:14px 22px; font-size:12px; }
  .gc-textlink { font-size:12px; }
  .gc-disclosure,.gc-source { font-size:11px; }
  .gc-duo { gap:25px; margin-bottom:45px; }
  .gc-basics-duo > div { padding:0; }
  .gc-basics-duo > div + div { border:0; }
  .gc-label { font-size:10px; }
  .gbds-v2-circulator-shell .gc-basics-duo h3 { font-size:17px; }
  .gc-bigword { font-size:32px; margin-block:22px!important; }
  .gc-basics-duo > div > p:last-child { font-size:13px; line-height:1.85; }
  .gc-season-controls { margin-bottom:40px; }
  .gc-season-controls button { font-size:14px; padding:15px 4px; }
  .gbds-v2-circulator-shell .gc-season-panel h3 { font-size:clamp(24px,6.7vw,40px); }
  .gc-direction { gap:8px; font-size:11px; margin-block:27px!important; }
  .gc-direction span:nth-child(2) { font-size:20px; }
  .gc-choice-list > section { grid-template-columns:30px minmax(0,1fr); gap:15px; padding-block:32px; }
  .gc-choice-number { font-size:12px; padding-top:4px; }
  .gbds-v2-circulator-shell .gc-choice-list h3 { font-size:clamp(20px,5.9vw,22px); }
  .gc-choice-list h3 .gc-phrase { display:block; }
  .gc-choice-list p { font-size:15px; }
  .gc-shortlist > a { grid-template-columns:25px minmax(0,1fr) 18px; gap:13px; padding:22px 0; }
  .gc-shortlist strong { font-size:18px; }
  .gc-shortlist > a > span:nth-child(2) { font-size:11px; }
  .gc-shortlist > a:last-child strong { font-size:16px; }
  .gc-product .gc-sectionhead { margin-bottom:35px; }
  .gc-sectionhead .gc-model { font-size:17px!important; }
  .gc-model > span { font-size:12px; }
  .gc-product-photo { margin-bottom:35px; }
  .gc-product-photo img { height:320px; }
  .gc-stats { gap:10px; margin-bottom:35px; }
  .gc-stats > div > span { font-size:9px; }
  .gc-stats strong { font-size:clamp(24px,7vw,40px); margin-top:7px; }
  .gc-stats small { font-size:12px; margin-left:2px; }
  .gc-verdict-pair { gap:25px; margin-top:32px; }
  .gbds-v2-circulator-shell .gc-verdict-pair h3 { font-size:15px; }
  .gc-verdict-pair p { font-size:13px; }
  .gc-calculator { padding-block:28px; margin-top:40px; }
  .gc-calculator-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 16px; }
  .gc-calculator-fields label { font-size:12px; }
  .gc-calculator-fields label > span { font-size:10px; margin-left:4px; }
  .gc-calculator-fields input { font-size:22px; padding:10px 12px; }
  .gc-calculator-result { margin-top:38px; }
  .gc-calculator-result output { font-size:67px; }
  .gc-calculator-result output.is-gc-cost-long { font-size:40px; }
  .gc-calculator-result output span { font-size:15px; }
  .gc-equation { font-size:10px; }
  .gc-power-note { margin-top:48px; }
  .gbds-v2-circulator-shell .gc-power-note h3 { font-size:24px; }
  .gc-care-steps { grid-template-columns:1fr; gap:0; margin-block:38px; }
  .gc-care-steps section { padding:26px 0; border-top:1px solid var(--gc-line); }
  .gc-care-steps section > p:first-child { font-size:12px; margin-bottom:12px; }
  .gbds-v2-circulator-shell .gc-care-steps h3 { margin-bottom:12px!important; }
  .gc-faq summary { font-size:16px; padding-block:23px; }
  .gc-faq details p { font-size:15px; }
  .gc-editorial-note { padding-block:35px; }
}
@media (max-width:360px) { .gbds-v2-circulator-shell { --gc-side:18px; } .gc-verdict-pair { grid-template-columns:1fr; gap:24px; } .gc-bigword { font-size:28px; } .gc-shortlist strong { font-size:16px; } }
@media (prefers-reduced-motion:reduce) { .gc-hero .gc-phrase { animation:none; } .gbds-v2-circulator-shell * { scroll-behavior:auto!important; transition:none!important; } .gc-button:hover,.gc-shortlist > a:hover { transform:none; } }
