/* CONVEX shared visual identity / preview and WordPress child theme */
:root{--cx-bg:#080d18;--cx-surface:#101c2a;--cx-panel:#132636;--cx-line:#49677378;--cx-paper:#eff6f3;--cx-muted:#b6c4c9;--cx-mint:#a6d6d2;--cx-gold:#dfc69c}
.cx-page{margin:0;background:var(--cx-bg);color:var(--cx-paper);font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;line-height:1.85;overflow-wrap:anywhere}
.cx-page *, .cx-footer *, .cx-home-header *{box-sizing:border-box}
.cx-page a,.cx-footer a{color:inherit;text-decoration:none}
.cx-page a:hover,.cx-footer a:hover{color:var(--cx-mint)}
.cx-page button,.cx-page input,.cx-page textarea,.cx-page select{font:inherit}
.cx-page button,.cx-page input,.cx-page textarea,.cx-page select{max-width:100%}
.cx-page ::selection{background:#a6d6d29f;color:#091a1e}
.cx-shell{max-width:1120px;padding:0 clamp(22px,5vw,72px);margin:0 auto}
.cx-header{position:sticky;top:0;z-index:40;background:#0b1521ee;backdrop-filter:blur(16px);border-bottom:1px solid #43616f78;color:#eef5f2}
.cx-header-inner{max-width:1440px;margin:auto;min-height:86px;padding:13px clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:30px}
.cx-logo{display:flex;flex-direction:column;font-size:21px;letter-spacing:.19em;line-height:1.18;font-weight:650;text-decoration:none;color:#f3f3ef!important;white-space:nowrap}
.cx-logo small{font-size:9px;letter-spacing:.075em;font-weight:400;color:#95b2b5;margin-top:5px}
.cx-menu{display:flex;align-items:center;gap:clamp(12px,1.9vw,26px)}
.cx-menu a{font-size:12px;font-weight:500;white-space:nowrap;color:#cedbdc;letter-spacing:.04em}
.cx-menu a:hover{color:#b6e5d8}
.cx-mobile-menu{display:none;position:relative}
.cx-mobile-menu summary{list-style:none;display:flex;align-items:center;gap:10px;border:1px solid #78918e82;border-radius:8px;padding:9px 12px;cursor:pointer;color:#edf5f1;font-size:11px;letter-spacing:.08em;background:#23323b}
.cx-mobile-menu summary::-webkit-details-marker{display:none}
.cx-mobile-menu nav{position:absolute;right:0;top:calc(100% + 12px);width:min(78vw,315px);background:#111f2c;border:1px solid #6b8d8b98;box-shadow:0 24px 65px #000b;border-radius:12px;padding:7px;display:flex;flex-direction:column;gap:0;z-index:70}
.cx-mobile-menu nav a{display:block;font-size:14px;padding:12px 14px;color:#eef6f3;border-bottom:1px solid #66827c37;text-decoration:none}
.cx-mobile-menu nav a:last-child{border:0}
.cx-intro{position:relative;isolation:isolate;min-height:315px;padding:84px 0 82px;background:radial-gradient(ellipse at 84% 25%,#3844528a,transparent 38%),radial-gradient(ellipse at 16% 94%,#164b4a6e,transparent 53%),linear-gradient(120deg,#081321,#142337 69%,#151725);border-bottom:1px solid #425a6080;overflow:hidden}
.cx-intro .cx-shell{position:relative;z-index:2}
.cx-intro-orbit{position:absolute;width:380px;height:380px;right:-60px;top:-164px;border:1px solid #bdd4ca4c;border-radius:49%;transform:rotate(33deg);box-shadow:0 0 0 42px #a6d6d20c,0 0 0 93px #d7e8cb06;pointer-events:none}
.cx-intro-orbit:after{content:'';position:absolute;inset:54px;border:1px solid #d8c3ac4d;border-radius:50%}
.cx-eyebrow{font-size:10px;font-weight:600;letter-spacing:.20em;color:#b7cfc9;display:block}
.cx-intro h1{font-size:clamp(38px,5vw,68px);letter-spacing:.06em;font-weight:520;line-height:1.34;margin:17px 0}
.cx-intro p:not(.cx-eyebrow){max-width:760px;color:#c3d3d8;font-size:clamp(13px,1.6vw,16px);line-height:2}
.cx-main{padding-top:42px;padding-bottom:94px}
.cx-section{padding:55px 0;border-bottom:1px solid #3553648b}
.cx-section:last-child{border-bottom:0}
.cx-section-head{margin-bottom:24px}
.cx-section h2,.cx-cta h2{margin:6px 0 18px;font-size:clamp(25px,3vw,38px);line-height:1.38;letter-spacing:.04em;font-weight:600}
.cx-reading{max-width:890px;color:#d5e2e0;font-size:15px;line-height:2.2}
.cx-reading p{margin:0 0 20px}
.cx-reading h2,.cx-reading h3{margin-top:35px;font-size:23px;color:#f5f7f4}
.cx-reading a{color:#b7e4d6;text-decoration:underline;text-underline-offset:3px}
.cx-reading ul,.cx-reading ol{padding-left:25px}
.cx-data{margin:0;max-width:850px;border-top:1px solid #4b6570}
.cx-data-row{display:grid;grid-template-columns:190px minmax(0,1fr);border-bottom:1px solid #3d5b678a;gap:16px;padding:17px 5px}
.cx-data dt{color:#a6c9bf;font-weight:600;font-size:13px}
.cx-data dd{margin:0;font-size:14px}
.cx-two-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;padding:0;margin:18px 0 22px}
.cx-two-list li{padding:15px 16px;border-radius:8px;background:#172837;border:1px solid #425c6280;font-size:14px}
.cx-timeline{list-style:none;margin:0;padding:0;max-width:930px}
.cx-timeline li{display:grid;grid-template-columns:100px 1fr;gap:18px;padding:17px 4px;border-bottom:1px solid #425b6380;font-size:14px}
.cx-timeline time{color:#e8d2b2;font-variant-numeric:tabular-nums;font-weight:700}
.cx-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.cx-linkcard{padding:25px 23px;background:linear-gradient(140deg,#183244,#121d2d);border:1px solid #65877f8c;border-radius:13px;min-height:225px;transition:transform .2s,border .2s}
.cx-linkcard:hover{transform:translateY(-3px);border-color:#a2d5c5}
.cx-linkcard>span,.cx-postcard-visual>span{color:#b6d4c9;font-size:10px;letter-spacing:.1em}
.cx-linkcard h3{margin:15px 0 8px;font-size:22px}
.cx-linkcard p{color:#c8d4d9;line-height:1.8;font-size:13px}
.cx-linkcard em{font-style:normal;color:#c2e7d9;font-size:12px}
.cx-note{color:#adbec3;font-size:12px;line-height:1.8;max-width:890px}
.cx-preview-alert{padding:18px 20px;margin:24px 0;background:#1b302f;border:1px solid #769d90a6;border-left:3px solid #b3dcd0;border-radius:8px;color:#dfefe9;font-size:13px;line-height:1.85}
.cx-preview-alert p{margin:0 0 10px}.cx-preview-alert p:last-child{margin-bottom:0}
.cx-preview-alert a{color:#b7eee1;text-decoration:underline}
.cx-cta{margin-top:70px;padding:45px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:radial-gradient(ellipse at 20% 50%,#2f696066,transparent 65%),linear-gradient(120deg,#1b3542,#16212e);border:1px solid #91b3a099;border-radius:14px}
.cx-cta p{font-size:14px;color:#c5d4d0;max-width:540px;line-height:1.9;margin:0}
.cx-button{display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:14px 24px;border-radius:7px;background:#a9ded1;color:#10282b!important;font-weight:650;font-size:13px;text-decoration:none!important;border:1px solid #a9ded1;cursor:pointer;white-space:nowrap}
.cx-button:hover{background:#d0f2e3!important;color:#10282b!important}
.cx-button-outline{background:transparent;color:#d2eadd!important;border-color:#799b90}
.cx-button-outline:hover{color:#10282b!important}
.cx-footer{background:#0b121d;border-top:1px solid #4960688c;color:#c6d2d4;padding:43px clamp(22px,5vw,72px) 22px;display:grid;gap:23px}
.cx-footer>div{display:flex;flex-direction:column;gap:6px}
.cx-footer strong{letter-spacing:.19em;font-size:19px;font-weight:650;color:#f4f5f0}
.cx-footer small{font-size:12px;color:#91acaa}
.cx-footer nav{display:flex;gap:14px 27px;flex-wrap:wrap}
.cx-footer nav a{font-size:12px;color:#c0cdcc;text-decoration:none}
.cx-footer p{font-size:10px;letter-spacing:.09em;color:#819999;border-top:1px solid #4c646359;padding-top:18px;margin:0}
.cx-form{display:grid;gap:22px;max-width:920px}
.cx-form label{display:block;font-size:13px;color:#d6e5df;font-weight:600}
.cx-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.cx-form input:not([type=checkbox]),.cx-form textarea,.cx-form select{display:block;width:100%;margin-top:7px;padding:13px 14px;background:#101c2b;color:#eaf3ee;border:1px solid #658580a8;border-radius:7px;font-size:14px;outline-offset:2px}
.cx-form textarea{resize:vertical;min-height:200px}
.cx-form input:focus,.cx-form textarea:focus,.cx-form select:focus{border-color:#b1e3d0;outline:1px solid #82c0af}
.cx-form input::placeholder,.cx-form textarea::placeholder{color:#82969b}
.cx-required{color:#edc1a5;font-size:10px;margin-left:5px}
.cx-form .cx-agree{display:flex;align-items:center;gap:13px;font-size:13px}
.cx-agree input{width:21px;height:21px;flex:0 0 21px;accent-color:#a9ded1}
.cx-agree a{color:#b6e5d8;text-decoration:underline}
.cx-form button{justify-self:start}
.cx-post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cx-postcard{display:flex;flex-direction:column;background:#121f2e;border:1px solid #58716b99;border-radius:12px;overflow:hidden;transition:border-color .2s,transform .2s;text-decoration:none}
.cx-postcard:hover{border-color:#b4d9cb;transform:translateY(-3px)}
.cx-postcard-visual{height:135px;background:radial-gradient(ellipse at 75% 50%,#6ea89666,transparent 40%),radial-gradient(ellipse at 14% 70%,#6d6c9577,transparent 52%),linear-gradient(115deg,#172938,#0f1a29);display:flex;align-items:flex-start;justify-content:space-between;padding:19px 21px}
.cx-postcard-visual b{font-size:44px;font-weight:300;color:#a8d7ce7d;line-height:1}
.cx-postcard-body{padding:23px;display:flex;flex:1;flex-direction:column}
.cx-postcard-body time,.cx-article-meta time{font-size:12px;color:#e0c9a7;font-variant-numeric:tabular-nums}
.cx-postcard-body h2{font-size:19px!important;line-height:1.5;margin:10px 0!important}
.cx-postcard-body p{font-size:13px;color:#b8cbd0;line-height:1.9;margin:0 0 18px}
.cx-postcard-body>span{font-size:12px;color:#bae1d4;margin-top:auto}
.cx-article-meta{display:flex;gap:16px;align-items:center;margin-bottom:30px;color:#b6d1ca;font-size:11px;letter-spacing:.07em}
.cx-article-body{max-width:780px;margin:0 auto;font-size:16px}
.cx-article-body blockquote{margin:25px 0;padding:15px 24px;border-left:3px solid #a9dace;background:#172d34;color:#e7e5d9}
.cx-article-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:60px;flex-wrap:wrap}
.cx-page .screen-reader-text,.cx-screen-reader-text{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
/* Static home adds the shared site navigation without changing the interactive canvas */
.hero .site-header.cx-home-header{z-index:27}
.hero .cx-mobile-menu{flex:0 0 auto}
.hero .site-nav a{white-space:nowrap}
.hero .site-nav{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1050px){.cx-menu{display:none}.cx-mobile-menu{display:block}.hero .site-nav{display:none}.hero .cx-mobile-menu{display:block}.hero .site-header{align-items:flex-start}.hero .cx-mobile-menu nav{min-width:230px}}
@media(max-width:760px){.cx-header-inner{min-height:66px}.cx-logo{font-size:17px}.cx-intro{min-height:240px;padding:67px 0 62px}.cx-section{padding:42px 0}.cx-main{padding-top:14px;padding-bottom:60px}.cx-data-row{grid-template-columns:1fr;gap:4px}.cx-two-list,.cx-post-grid{grid-template-columns:1fr}.cx-card-grid{grid-template-columns:1fr}.cx-timeline li{grid-template-columns:74px 1fr;gap:10px}.cx-cta{padding:27px;display:block}.cx-cta .cx-button{margin-top:20px}.cx-form-grid{grid-template-columns:1fr}.cx-postcard-visual{height:100px}.cx-footer nav{gap:12px 18px}.cx-article-bottom .cx-button{width:100%}}
@media(prefers-reduced-motion:reduce){.cx-linkcard,.cx-postcard{transition:none}}


/* === CONVEX Ver.34 | compact consistent site navigation === */
.cx-sitebar {
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  height:60px; min-height:60px; padding:0 clamp(20px,5vw,72px);
  background:rgba(9,20,32,.88); color:#eef5f2;
  border-bottom:1px solid rgba(119,163,157,.23);
  -webkit-backdrop-filter:blur(17px); backdrop-filter:blur(17px);
  box-sizing:border-box; z-index:45;
}
.cx-page .cx-sitebar { position:sticky; top:0; left:0; right:0; width:100%; }
.cx-sitebar .brand {
  font-size:17px; font-weight:650; line-height:1.2; letter-spacing:.22em;
  color:#eff6f1!important; text-decoration:none; white-space:nowrap;
}
.cx-sitebar .brand span { display:block; margin-top:2px; font-size:8px; font-weight:400; letter-spacing:.13em; color:#acc2c5; }
.cx-sitebar .site-nav { display:flex; align-items:center; gap:clamp(13px,2.15vw,30px); }
.cx-sitebar .site-nav a { font-size:11px; font-weight:500; letter-spacing:.04em; color:#d4e0de; text-decoration:none; white-space:nowrap; }
.cx-sitebar .site-nav a:hover, .cx-sitebar .site-nav a[aria-current="page"] { color:#a9e6d6; }
.cx-sitebar .site-nav a[aria-current="page"] { border-bottom:1px solid #9bded1; padding-bottom:4px; }
.cx-sitebar .cx-mobile-menu { flex:0 0 auto; }
.cx-sitebar .cx-mobile-menu summary { min-height:36px; padding:7px 11px; display:flex; align-items:center; }
/* Homepage menu remains part of the discovery stage, matching the subpages visually. */
.hero > .cx-sitebar { position:absolute; top:0; left:0; right:0; width:100%; }
.cx-page .cx-intro { min-height:230px; padding:53px 0 47px; }
.cx-page .cx-intro h1 { font-size:clamp(33px,4.15vw,53px); margin:11px 0 9px; }
.cx-page .cx-intro p:not(.cx-eyebrow) { margin:7px 0 0; line-height:1.85; }
.cx-page .cx-intro-orbit { width:300px; height:300px; right:5%; top:-138px;
  animation:cx-orbit-breathe 31s ease-in-out infinite alternate; }
.cx-page .cx-main { position:relative; z-index:2; }
.cx-page main { position:relative; z-index:1; }
.cx-page .cx-footer { position:relative; z-index:2; }
.cx-page { background:radial-gradient(ellipse 46% 40% at 92% 46%,#1644522b,transparent 85%),
                  radial-gradient(ellipse 50% 55% at 3% 88%,#21494522,transparent 85%),var(--cx-bg); }

/* Slow atmospheric light, deliberately behind all content and controls. */
.cx-ambient-sky { position:fixed; inset:0; overflow:hidden; z-index:0; pointer-events:none; contain:layout paint; }
.cx-mote { position:absolute; display:block; border-radius:50%; pointer-events:none; mix-blend-mode:screen;
  box-shadow:0 0 70px 18px rgba(103,187,171,.035), inset 0 0 30px rgba(219,244,228,.085);
  border:1px solid rgba(162,223,217,.13); filter:blur(.3px); will-change:transform; }
.cx-mote--one { width:clamp(100px,16vw,260px); height:clamp(100px,16vw,260px); left:-5%; top:15%;
  background:radial-gradient(circle at 39% 38%,rgba(153,224,207,.11),rgba(63,144,166,.035) 63%,transparent 82%);
  animation:cx-drift-one 35s ease-in-out infinite alternate; }
.cx-mote--two { width:clamp(80px,12vw,200px); height:clamp(80px,12vw,200px); right:-2%; top:51%;
  background:radial-gradient(circle at 48% 42%,rgba(218,179,163,.10),rgba(105,91,135,.038) 70%,transparent 86%);
  animation:cx-drift-two 42s ease-in-out infinite alternate; }
.cx-mote--three { width:clamp(45px,7vw,105px); height:clamp(45px,7vw,105px); left:19%; top:77%;
  background:radial-gradient(circle at 42% 41%,rgba(176,229,202,.13),transparent 80%);
  animation:cx-drift-three 29s ease-in-out infinite alternate; }
.cx-mote--four { width:10px; height:10px; right:24%; top:26%; background:#b9ddda; opacity:.32; box-shadow:0 0 16px #93b6cb;
  animation:cx-drift-four 24s ease-in-out infinite alternate; }
.cx-mote--five { width:5px; height:5px; left:34%; top:13%; background:#e3bfae; opacity:.27; box-shadow:0 0 19px #a8ccc5;
  animation:cx-drift-three 39s ease-in-out infinite alternate-reverse; }
/* Extra luminous shapes visible in every non-homepage title area */
.cx-page .cx-intro::before,.cx-page .cx-intro::after { content:""; position:absolute; z-index:1; pointer-events:none;
  border-radius:48% 55% 46% 53%; opacity:.42; }
.cx-page .cx-intro::before { width:240px; height:205px; right:11%; top:-25px;
  background:radial-gradient(ellipse at 40% 38%,rgba(144,207,195,.35),rgba(62,124,132,.09) 49%,transparent 74%);
  filter:blur(22px); animation:cx-intro-wander 24s ease-in-out infinite alternate; }
.cx-page .cx-intro::after { width:125px; height:125px; left:3%; bottom:-50px;
  background:radial-gradient(ellipse,rgba(194,155,169,.24),rgba(91,116,159,.09) 57%,transparent 72%);
  filter:blur(17px); animation:cx-intro-wander 28s ease-in-out infinite alternate-reverse; }
.cx-page .cx-intro .cx-shell { z-index:3; }
@keyframes cx-drift-one { from { transform:translate(-12px,24px) scale(.94) rotate(-5deg); } to { transform:translate(105px,-66px) scale(1.16) rotate(24deg); } }
@keyframes cx-drift-two { from { transform:translate(10px,-40px) scale(.90); } to { transform:translate(-100px,90px) scale(1.09); } }
@keyframes cx-drift-three { from { transform:translate(-22px,-14px) scale(.85); } to { transform:translate(70px,-74px) scale(1.23); } }
@keyframes cx-drift-four { from { transform:translate(12px,5px); opacity:.18; } to { transform:translate(-75px,105px); opacity:.47; } }
@keyframes cx-intro-wander { from { transform:translate(-8px,-12px) scale(.90) rotate(-12deg); } to { transform:translate(60px,19px) scale(1.15) rotate(19deg); } }
@keyframes cx-orbit-breathe { from { transform:translate(0,0) rotate(20deg) scale(.94);opacity:.48; } to { transform:translate(-42px,26px) rotate(54deg) scale(1.05);opacity:.90; } }
@media (max-width:1050px){
  .cx-sitebar .site-nav { display:none; }
  .cx-sitebar .cx-mobile-menu { display:block; }
  .hero > .cx-sitebar { align-items:center; }
}
@media (max-width:760px){
  .cx-sitebar,.cx-page .cx-sitebar { height:56px; min-height:56px; padding:0 20px; }
  .cx-page .cx-intro { min-height:205px; padding:40px 0 37px; }
  .cx-page .cx-intro h1 { font-size:clamp(30px,7vw,40px); }
  .cx-page .cx-intro-orbit { width:210px; height:210px; right:-39px; top:-80px; }
  .cx-mote--one,.cx-mote--two { opacity:.58; }
  .hero > .cx-sitebar { align-items:center; }
}
@media (prefers-reduced-motion:reduce){
  .cx-mote,.cx-page .cx-intro::before,.cx-page .cx-intro::after,.cx-page .cx-intro-orbit { animation:none!important; }
}

/* Active navigation state also visible in the narrow-screen dropdown */
.cx-sitebar .cx-mobile-menu nav a[aria-current="page"]{color:#abebd8;background:rgba(148,222,201,.11);border-radius:5px}


/* === CONVEX Ver.35 / compact headings & purpose-specific living ambience === */
:root { --cx-reading-size:13.5px; }
.cx-sitebar, .cx-page .cx-sitebar {
  height:48px; min-height:48px; padding-inline:clamp(18px,4vw,54px);
  gap:20px; background:rgba(8,18,29,.90);
}
.cx-sitebar .brand {font-size:15px;letter-spacing:.17em;line-height:1.05;}
.cx-sitebar .brand span {font-size:7px;margin-top:2px;letter-spacing:.10em;}
.cx-sitebar .site-nav {gap:clamp(13px,2vw,25px);}
.cx-sitebar .site-nav a {font-size:11px;letter-spacing:.025em;}
.cx-sitebar .cx-mobile-menu summary{min-height:32px;padding:5px 10px;}
.cx-page {font-size:var(--cx-reading-size);line-height:1.85;}
.cx-page .cx-intro {
  min-height:unset; padding:19px 0 19px;
  background:linear-gradient(112deg,rgba(11,25,41,.79),rgba(20,35,49,.70) 62%,rgba(14,22,37,.65));
  overflow:hidden;
}
.cx-page .cx-intro .cx-shell {display:grid;grid-template-columns:minmax(0,1fr);align-content:center;}
.cx-page .cx-intro .cx-eyebrow{font-size:9px;letter-spacing:.16em;line-height:1.5;}
.cx-page .cx-intro h1 {
  font-size:clamp(23px,2.65vw,31px);line-height:1.4;font-weight:550;
  letter-spacing:.025em; margin:4px 0 3px; max-width:950px;
}
.cx-page .cx-intro p:not(.cx-eyebrow) {font-size:12px;line-height:1.65;margin:3px 0 0;max-width:890px;}
.cx-page .cx-intro-orbit,.cx-page .cx-intro::before,.cx-page .cx-intro::after{display:none!important;}
.cx-page .cx-main{padding-top:10px;padding-bottom:65px;}
.cx-page .cx-section{padding:34px 0;}
.cx-page .cx-section-head{margin-bottom:15px;}
.cx-page .cx-section h2,.cx-page .cx-cta h2 {font-size:clamp(21px,2.45vw,28px);margin:3px 0 12px;line-height:1.42;letter-spacing:.025em;}
.cx-page .cx-section h3{font-size:clamp(16px,1.65vw,19px);}
.cx-page .cx-reading{font-size:13.5px;line-height:2.0;}
.cx-page .cx-reading p{margin-bottom:16px;}
.cx-page .cx-reading h2,.cx-page .cx-reading h3{font-size:clamp(18px,2vw,22px);}
.cx-page .cx-postcard-body h2 {font-size:17px!important;}
.cx-page .cx-postcard-body p {font-size:12.5px;}
.cx-page .cx-cta{padding-block:25px;}
/* Replace faint unchanging bubbles with a page-dependent morphing canvas. */
.cx-page .cx-ambient-sky{z-index:0;opacity:1;}
.cx-page .cx-ambient-sky .cx-mote {display:none!important;}
.cx-motion-canvas{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.cx-page .cx-intro {border-bottom:1px solid rgba(146,196,184,.19);}
.cx-page .cx-intro .cx-shell {position:relative;z-index:2;}
.cx-theme-company{--cx-motion-a:147,220,198;--cx-motion-b:115,168,220;}
.cx-theme-inquiry{--cx-motion-a:176,164,228;--cx-motion-b:141,216,200;}
.cx-theme-policy{--cx-motion-a:120,201,208;--cx-motion-b:217,192,150;}
.cx-theme-blog{--cx-motion-a:217,169,162;--cx-motion-b:154,217,202;}
.cx-page .cx-intro:after {content:'';display:block;position:absolute;bottom:0;left:0;width:32%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(var(--cx-motion-a),.5),transparent);animation:cx-title-current 7s ease-in-out infinite alternate;}
@keyframes cx-title-current{from{transform:translateX(-10%);opacity:.35}to{transform:translateX(230%);opacity:.8}}
@media(max-width:760px){
  .cx-sitebar,.cx-page .cx-sitebar{height:46px;min-height:46px;padding-inline:16px;}
  .cx-sitebar .brand{font-size:14px;}
  .cx-page .cx-intro{min-height:0;padding:16px 0 16px;}
  .cx-page .cx-intro h1{font-size:clamp(22px,6vw,28px);}
  .cx-page .cx-intro p:not(.cx-eyebrow){font-size:11px;line-height:1.6;}
  .cx-page .cx-main{padding-top:4px;}
  .cx-page .cx-section{padding:28px 0;}
  .cx-page .cx-section h2{font-size:21px;}
  .cx-page .cx-reading{font-size:13px;line-height:1.95;}
}
@media(prefers-reduced-motion:reduce){.cx-page .cx-intro:after{animation:none;}}

/* WordPress additions */
/* WordPress article and pagination */
body.cx-page{background:#080d18;color:#eff6f3;font-size:15px}
body.cx-page .cx-reading img{max-width:100%;height:auto;border-radius:8px}
body.cx-page .cx-reading figure{max-width:100%;margin:22px auto}
body.cx-page .cx-reading iframe{max-width:100%;border:0}
body.cx-page .cx-reading a:not(.cx-button){color:#bde7d9;text-decoration:underline}
body.cx-page .cx-reading h2{font-size:clamp(23px,3vw,32px);border-bottom:1px solid #425968;padding-bottom:11px}
body.cx-page .cx-reading h3{font-size:20px}
body.cx-page .cx-reading blockquote{border-left:3px solid #b0d7c8;background:#152935;padding:15px 23px;margin:24px 0}
body.cx-page .cx-reading pre{background:#0b1421;padding:18px;overflow:auto;border:1px solid #446877}
body.cx-page .cx-reading code{overflow-wrap:break-word}
body.cx-page .cx-reading table{width:100%;display:block;overflow-x:auto;border-collapse:collapse}
body.cx-page .cx-reading td,body.cx-page .cx-reading th{border:1px solid #64808578;padding:8px 12px}
body.cx-page .cx-reading .wp-block-button__link{display:inline-block;color:#10282b;background:#a9ded1;border-radius:7px;padding:9px 17px}
body.cx-page .cx-reading figcaption{color:#acbcbf;font-size:12px}
body.cx-page .cx-reading a{word-break:break-word}
.cx-wp-pager{margin:28px 0;display:flex;justify-content:space-between;gap:18px;align-items:center}
.cx-wp-pager .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.cx-wp-pager .page-numbers,.cx-wp-pager .nav-previous a,.cx-wp-pager .nav-next a{display:inline-block;border:1px solid #6c898e;border-radius:5px;padding:8px 12px;font-size:13px}
.cx-wp-pager .page-numbers.current{background:#a9ded1;color:#13262a}
.cx-wp-post-meta{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0 24px;color:#a4c4bc;font-size:12px}
.cx-wp-post-meta a{color:#b9ded2}
.cx-wp-categories{border-top:1px solid #43616a;padding-top:20px;margin-top:35px}
.cx-wp-search{display:flex;gap:8px;align-items:stretch;max-width:550px}
.cx-wp-search input[type=search]{min-width:0;flex:1;background:#112536;color:#ebf2ef;border:1px solid #587671;border-radius:7px;padding:10px 15px}
.cx-wp-search button{padding:10px 18px;background:#a9ded1;color:#0d2929;border:0;border-radius:7px;cursor:pointer}
.cx-postcard-visual.has-image{height:auto;min-height:0;padding:0;position:relative;display:block}
.cx-postcard-visual img{height:auto;width:100%;max-width:100%;display:block}
.cx-postcard-visual.has-image>span{position:absolute;left:17px;top:14px;padding:4px 8px;background:#0d1f29ba;color:#e3f2eb;border-radius:3px}
.cx-postcard .cx-postcard-body .cx-wp-post-meta{margin-top:0}
.cx-wp-single-thumbnail{margin:0 0 30px}.cx-wp-single-thumbnail img{display:block;width:auto;height:auto;max-width:100%;max-height:480px;object-fit:contain;margin-inline:auto;border-radius:13px}
.cx-wp-comments{max-width:800px}.cx-wp-comments input:not([type=checkbox]),.cx-wp-comments textarea{background:#122330;border:1px solid #708d89;border-radius:6px;color:#f4f4ef;padding:10px 12px;width:100%;max-width:100%}
.cx-wp-comments input[type=submit]{background:#a9ded1;color:#0b1c24;padding:12px 20px;border:0;border-radius:6px;cursor:pointer;width:auto}
.cx-wp-comments a{color:#b7dfd2}
@media(max-width:760px){.cx-wp-search{width:100%}.cx-wp-pager{display:block}.cx-wp-single-thumbnail img{max-height:300px}}

/* Active navigation state also visible in the narrow-screen dropdown */
.cx-sitebar .cx-mobile-menu nav a[aria-current="page"]{color:#abebd8;background:rgba(148,222,201,.11);border-radius:5px}

/* Ver.35 alignment of WordPress content typography */
body.cx-page{font-size:13.5px;}body.cx-page .cx-reading h2{font-size:clamp(18px,2vw,22px);}



/* CONVEX Ver.39 — selected galaxy artworks as page backdrops.
   The still image now has more visible camera drift and page-wide light particles.
   Motion remains subtle enough to preserve readability. */
.cx-page.cx-theme-blog { --cx-galaxy-image:url("../img/galaxy/blog.webp"); --cx-galaxy-opacity:.66; --cx-galaxy-x:54%; --cx-galaxy-y:44%; }
.cx-page .cx-ambient-sky { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; opacity:1; isolation:isolate; }
.cx-page .cx-ambient-sky::before {
  content:""; position:absolute; inset:-7%; pointer-events:none;
  background-image:var(--cx-galaxy-image); background-position:var(--cx-galaxy-x) var(--cx-galaxy-y); background-size:cover;
  background-repeat:no-repeat; opacity:var(--cx-galaxy-opacity);
  will-change:transform, opacity;
  transform-origin:50% 50%;
  animation:cx-galaxy-camera 20s ease-in-out infinite alternate;
}
.cx-page .cx-ambient-sky::after {
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(90deg,rgba(6,13,26,.92) 0%,rgba(6,13,26,.70) 24%,rgba(6,13,26,.40) 52%,rgba(6,13,26,.27) 78%,rgba(6,13,26,.44) 100%),
    linear-gradient(180deg,rgba(6,12,22,.28),rgba(6,12,22,.06) 25%,rgba(6,12,22,.52) 100%),
    radial-gradient(circle at 24% 24%, rgba(121,189,215,.08), transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(162,222,199,.06), transparent 30%);
  animation:cx-vignette-breathe 12s ease-in-out infinite alternate;
}
@keyframes cx-galaxy-camera {
  0% { transform:translate3d(-1.6%, 1.1%, 0) scale(1.03) rotate(-.18deg); opacity:calc(var(--cx-galaxy-opacity) - .02); }
  35% { transform:translate3d(.8%, -.9%, 0) scale(1.07) rotate(.28deg); opacity:calc(var(--cx-galaxy-opacity) + .02); }
  70% { transform:translate3d(1.7%, .45%, 0) scale(1.085) rotate(.06deg); opacity:calc(var(--cx-galaxy-opacity) + .01); }
  100% { transform:translate3d(-.85%, -1.35%, 0) scale(1.045) rotate(-.24deg); opacity:var(--cx-galaxy-opacity); }
}
@keyframes cx-vignette-breathe {
  0% { opacity:.92; }
  100% { opacity:1; }
}
/* Let the artwork continue naturally behind the compact title and sections. */
.cx-page .cx-intro { background:linear-gradient(90deg,rgba(9,23,38,.60),rgba(13,26,39,.22)); }
.cx-page .cx-intro::after {opacity:.62}
.cx-page .cx-section, .cx-page .cx-cta {position:relative;}
.cx-page .cx-main { position:relative; z-index:2; }
.cx-page .cx-footer { position:relative; z-index:2; }
.cx-galaxy-sparkles { position:absolute; inset:0; display:block; width:100%; height:100%; pointer-events:none; z-index:1; mix-blend-mode:screen; opacity:1; }
@media (max-width:760px){
 .cx-page.cx-theme-company {--cx-galaxy-opacity:.66; --cx-galaxy-x:64%;}
 .cx-page.cx-theme-inquiry {--cx-galaxy-opacity:.62; --cx-galaxy-x:64%;}
 .cx-page.cx-theme-policy {--cx-galaxy-opacity:.58; --cx-galaxy-x:62%;}
 .cx-page.cx-theme-blog {--cx-galaxy-opacity:.58; --cx-galaxy-x:63%;}
 .cx-page .cx-ambient-sky::after {background:
   linear-gradient(90deg,rgba(6,13,26,.84),rgba(6,13,26,.50)),
   linear-gradient(180deg,rgba(6,13,26,.42),transparent 24%,rgba(6,13,26,.60)),
   radial-gradient(circle at 78% 16%, rgba(162,222,199,.05), transparent 30%);
 }
 .cx-page .cx-ambient-sky::before { animation-duration:18s; inset:-9%; }
}
@media (prefers-reduced-motion:reduce){
 .cx-page .cx-ambient-sky::before{ animation:none; transform:none; }
 .cx-page .cx-ambient-sky::after{ animation:none; }
 .cx-galaxy-sparkles{ opacity:.65; }
}

/* Ver.43: compact yearly archives + supplied official white mark */
.cx-sitebar .brand, .hero .cx-sitebar .brand{display:inline-flex;align-items:center;gap:9px;min-width:0;line-height:1.1;white-space:nowrap;}
.cx-sitebar .brand .cx-brand-mark,.hero .cx-sitebar .brand .cx-brand-mark{display:block;flex:0 0 auto;width:29px;height:29px;object-fit:contain;}
.cx-sitebar .brand .cx-brand-wordmark,.hero .cx-sitebar .brand .cx-brand-wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin:0;color:#eff6f1;line-height:1.1;}
.cx-sitebar .brand .cx-brand-wordmark strong,.hero .cx-sitebar .brand .cx-brand-wordmark strong{display:block;letter-spacing:.155em;font-size:15px;font-weight:650;color:#f1f6f5;}
.cx-sitebar .brand .cx-brand-wordmark small,.hero .cx-sitebar .brand .cx-brand-wordmark small{display:block;margin:0;color:#a9c2c7;font-size:7px;letter-spacing:.075em;font-weight:400;}
.cx-footer .cx-footer-lockup{display:flex;flex-direction:row;align-items:center;gap:12px;}
.cx-footer .cx-footer-mark{width:38px;height:38px;object-fit:contain;flex:0 0 auto;}
.cx-footer .cx-footer-lockup>div{display:flex;flex-direction:column;gap:3px;}
@media(max-width:760px){
  .cx-sitebar .brand .cx-brand-mark,.hero .cx-sitebar .brand .cx-brand-mark{width:27px;height:27px;}
  .cx-sitebar .brand .cx-brand-wordmark strong,.hero .cx-sitebar .brand .cx-brand-wordmark strong{font-size:13px;}
  .cx-footer .cx-footer-mark{width:32px;height:32px;}
}


/* Ver.44: Official combined CONVEX logotype; no reconstructed lettering. */
.cx-sitebar .brand,.hero .cx-sitebar .brand{display:inline-flex;align-items:center;gap:0;line-height:1;flex-shrink:0;}
.cx-sitebar .brand .cx-brand-complete,.hero .cx-sitebar .brand .cx-brand-complete{display:block;object-fit:contain;width:auto;height:34px;max-width:148px;}
.cx-footer .cx-footer-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:8px;}
.cx-footer .cx-footer-complete{width:188px;max-width:100%;height:auto;display:block;object-fit:contain;}
.cx-footer .cx-footer-tagline{display:block;font-size:11px;line-height:1.5;color:#a7bfc2;letter-spacing:.08em;}
@media(max-width:760px){
 .cx-sitebar .brand .cx-brand-complete,.hero .cx-sitebar .brand .cx-brand-complete{height:31px;max-width:134px;}
 .cx-footer .cx-footer-complete{width:165px;}
}
/* Inquiry page: simple, open-ended contact with discovery context. */
.cx-contact-intro{max-width:880px;color:#d5e2e0;line-height:1.95;font-size:13.5px;margin:0 0 25px;}
.cx-contact-purposes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 30px;}
.cx-contact-purpose{display:block;padding:17px 15px;min-width:0;text-align:left;color:#dbe9e5;cursor:pointer;border:1px solid rgba(125,180,188,.4);border-radius:12px;background:rgba(17,38,53,.65);transition:background .22s,border-color .22s,transform .22s;}
.cx-contact-purpose:hover,.cx-contact-purpose:focus-visible{background:rgba(33,73,89,.73);border-color:#a5dddd;}
.cx-contact-purpose.is-active{background:linear-gradient(135deg,rgba(101,177,185,.24),rgba(36,84,106,.5));border-color:#a9e2da;box-shadow:inset 0 0 0 1px rgba(178,237,230,.2)}
.cx-contact-purpose small{display:block;color:#a7ced2;font-size:9px;letter-spacing:.12em;margin-bottom:6px;}
.cx-contact-purpose strong{display:block;font-size:14px;color:#e9f5ee;font-weight:600;line-height:1.5;}
.cx-contact-purpose span{display:block;font-size:11px;line-height:1.65;color:#b7cbd0;margin-top:5px;}
.cx-contact-panel{margin:0 0 26px;border:1px solid rgba(137,209,210,.38);border-left:3px solid #a5e2d8;border-radius:9px;padding:17px 19px;background:rgba(13,46,57,.68);}
.cx-contact-panel[hidden]{display:none;}
.cx-contact-panel strong{font-size:14px;font-weight:600;color:#eef9f4;}
.cx-contact-panel p{font-size:12px;color:#c4d9d9;line-height:1.8;margin:6px 0 10px;}
.cx-contact-panel summary{display:inline-block;color:#bce8df;font-size:11px;margin-bottom:4px;}
.cx-contact-panel .cx-contact-origin{font-size:11px;color:#b6d1ca;white-space:pre-wrap;max-height:88px;overflow:hidden;}
.cx-contact-meta{display:flex;gap:20px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:22px;color:#a6bdc1;font-size:12px;}
.cx-contact-meta a{color:#bee9de;text-decoration:underline;text-underline-offset:3px;}
.cx-contact-footer{margin:36px 0 0;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:25px;border-top:1px solid rgba(125,170,181,.22);}
.cx-contact-footer a{color:#c2e9df;font-size:12px;text-decoration:underline;text-underline-offset:3px;}
@media(max-width:760px){
 .cx-contact-intro{font-size:13px;}
 .cx-contact-purposes{grid-template-columns:1fr;gap:8px;margin:16px 0 24px;}
 .cx-contact-purpose{padding:12px 14px;}
 .cx-contact-purpose strong{font-size:13px;}
 .cx-contact-purpose span{margin-top:3px;}
 .cx-contact-panel{padding:14px 15px;}
}


/* Ver.44: Official combined CONVEX logotype; no reconstructed lettering. */
.cx-sitebar .brand,.hero .cx-sitebar .brand{display:inline-flex;align-items:center;gap:0;line-height:1;flex-shrink:0;}
.cx-sitebar .brand .cx-brand-complete,.hero .cx-sitebar .brand .cx-brand-complete{display:block;object-fit:contain;width:auto;height:34px;max-width:148px;}
.cx-footer .cx-footer-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:8px;}
.cx-footer .cx-footer-complete{width:188px;max-width:100%;height:auto;display:block;object-fit:contain;}
.cx-footer .cx-footer-tagline{display:block;font-size:11px;line-height:1.5;color:#a7bfc2;letter-spacing:.08em;}
@media(max-width:760px){
 .cx-sitebar .brand .cx-brand-complete,.hero .cx-sitebar .brand .cx-brand-complete{height:31px;max-width:134px;}
 .cx-footer .cx-footer-complete{width:165px;}
}
/* Inquiry page: simple, open-ended contact with discovery context. */
.cx-contact-intro{max-width:880px;color:#d5e2e0;line-height:1.95;font-size:13.5px;margin:0 0 25px;}
.cx-contact-purposes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 30px;}
.cx-contact-purpose{display:block;padding:17px 15px;min-width:0;text-align:left;color:#dbe9e5;cursor:pointer;border:1px solid rgba(125,180,188,.4);border-radius:12px;background:rgba(17,38,53,.65);transition:background .22s,border-color .22s,transform .22s;}
.cx-contact-purpose:hover,.cx-contact-purpose:focus-visible{background:rgba(33,73,89,.73);border-color:#a5dddd;}
.cx-contact-purpose.is-active{background:linear-gradient(135deg,rgba(101,177,185,.24),rgba(36,84,106,.5));border-color:#a9e2da;box-shadow:inset 0 0 0 1px rgba(178,237,230,.2)}
.cx-contact-purpose small{display:block;color:#a7ced2;font-size:9px;letter-spacing:.12em;margin-bottom:6px;}
.cx-contact-purpose strong{display:block;font-size:14px;color:#e9f5ee;font-weight:600;line-height:1.5;}
.cx-contact-purpose span{display:block;font-size:11px;line-height:1.65;color:#b7cbd0;margin-top:5px;}
.cx-contact-panel{margin:0 0 26px;border:1px solid rgba(137,209,210,.38);border-left:3px solid #a5e2d8;border-radius:9px;padding:17px 19px;background:rgba(13,46,57,.68);}
.cx-contact-panel[hidden]{display:none;}
.cx-contact-panel strong{font-size:14px;font-weight:600;color:#eef9f4;}
.cx-contact-panel p{font-size:12px;color:#c4d9d9;line-height:1.8;margin:6px 0 10px;}
.cx-contact-panel summary{display:inline-block;color:#bce8df;font-size:11px;margin-bottom:4px;}
.cx-contact-panel .cx-contact-origin{font-size:11px;color:#b6d1ca;white-space:pre-wrap;max-height:88px;overflow:hidden;}
.cx-contact-meta{display:flex;gap:20px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:22px;color:#a6bdc1;font-size:12px;}
.cx-contact-meta a{color:#bee9de;text-decoration:underline;text-underline-offset:3px;}
.cx-contact-footer{margin:36px 0 0;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:25px;border-top:1px solid rgba(125,170,181,.22);}
.cx-contact-footer a{color:#c2e9df;font-size:12px;text-decoration:underline;text-underline-offset:3px;}
@media(max-width:760px){
 .cx-contact-intro{font-size:13px;}
 .cx-contact-purposes{grid-template-columns:1fr;gap:8px;margin:16px 0 24px;}
 .cx-contact-purpose{padding:12px 14px;}
 .cx-contact-purpose strong{font-size:13px;}
 .cx-contact-purpose span{margin-top:3px;}
 .cx-contact-panel{padding:14px 15px;}
}


/* CONVEX Ver.47 / journal archive and article refinements */
.cx-page .cx-blog-main {padding-top:12px}
.cx-page .cx-blog-directory{padding-top:32px}
.cx-page .cx-blog-topheading{margin-bottom:19px}
.cx-page .cx-blog-topheading h2{font-size:clamp(22px,2.7vw,31px);margin:6px 0 7px;letter-spacing:.025em}
.cx-blog-lead{color:#b9cccf;font-size:13px;line-height:1.9;margin:0}
.cx-blog-controls{padding:18px 20px 20px;border:1px solid rgba(113,150,158,.32);background:linear-gradient(125deg,rgba(18,37,53,.9),rgba(12,26,42,.84));border-radius:13px;display:grid;grid-template-columns:minmax(220px,.94fr) minmax(0,1.06fr);gap:22px;align-items:end;margin:23px 0 18px;box-shadow:0 12px 40px rgba(0,0,0,.12)}
.cx-blog-search label:not(.screen-reader-text),.cx-search-label,.cx-filter-label{font-size:12px;color:#d2e1dd;display:block;margin-bottom:9px;font-weight:550}
.cx-blog-search-row,.cx-wp-search{display:flex;gap:8px;align-items:stretch;max-width:none;width:100%}
.cx-blog-search-row input[type=search],.cx-wp-search input[type=search]{border-radius:7px;border:1px solid #65828b;background:#0b1927;color:#f0f8f5;min-width:0;flex:1;padding:10px 12px;font-size:13px;line-height:1.5}
.cx-blog-search-row button,.cx-wp-search button{flex:none;border-radius:7px;border:1px solid #a9ded1;background:#a9ded1;color:#0e2c2d;cursor:pointer;font-size:12px;font-weight:700;padding:9px 15px;transition:filter .2s ease}
.cx-blog-search-row button:hover,.cx-wp-search button:hover{filter:brightness(1.07)}
.cx-filter-chips{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.cx-filter-chip{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(138,180,180,.51);background:rgba(19,37,49,.86);color:#d1dfdf;border-radius:100px;padding:5px 11px;font-size:11px;line-height:1.55;min-height:32px;cursor:pointer;text-decoration:none!important;transition:background .2s,border .2s,color .2s;white-space:normal;text-align:center}
.cx-filter-chip:hover{background:rgba(36,72,80,.86);border-color:rgba(183,224,213,.8)}
.cx-filter-chip.is-current,.cx-filter-chip[aria-pressed=true],.cx-filter-chip[aria-current=page]{background:#abdfd3;color:#133236;border-color:#abdfd3;font-weight:700}
.cx-blog-list-header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;border-bottom:1px solid rgba(120,152,154,.31);padding:0 0 11px;color:#bdcecf;font-size:11.5px}
.cx-blog-list-header p{margin:0;color:#dcece6}
.cx-post-grid.cx-blog-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cx-blog-cards .cx-post-item{min-width:0;display:flex}
.cx-blog-cards .cx-postcard{height:100%;width:100%;border-color:rgba(121,157,161,.42);background:linear-gradient(145deg,rgba(18,38,51,.93),rgba(12,24,39,.97));border-radius:10px}
.cx-blog-cards .cx-postcard-visual{height:112px;min-height:112px;align-items:flex-start;background:radial-gradient(ellipse at 83% 32%,rgba(98,166,177,.28),transparent 51%),radial-gradient(ellipse at 18% 95%,rgba(125,143,198,.14),transparent 57%),linear-gradient(115deg,#1c3443,#101e31)}
.cx-blog-cards .cx-postcard-visual b{font-size:41px;color:#a2dce465;font-weight:300}
.cx-blog-cards .cx-postcard-visual.has-image .cx-card-category{position:absolute;left:17px;top:15px;background:rgba(7,21,33,.76);backdrop-filter:blur(5px);padding:3px 9px;border-radius:20px}
.cx-blog-cards .cx-postcard-body{padding:17px 20px 18px}
.cx-blog-cards .cx-postcard-body time{font-size:11px}
.cx-page .cx-blog-cards .cx-postcard-body h3{font-size:16px;line-height:1.56;margin:8px 0 10px;color:#edf7f2;font-weight:600}
.cx-page .cx-blog-cards .cx-postcard-body p{font-size:12.5px;line-height:1.85;margin:0 0 14px;color:#bed0d4;min-height:2.8em}
.cx-blog-cards .cx-postcard-more{font-size:11.5px;color:#aee0d2;margin-top:auto}
.cx-blog-pages{margin:22px 0 0;display:flex;align-items:center;justify-content:center;gap:11px}
.cx-blog-pages>button,.cx-blog-pages .page-numbers{border:1px solid #65888b;background:rgba(18,39,52,.88);padding:8px 12px;border-radius:7px;color:#e0f1eb;font-size:12px;line-height:1.35;cursor:pointer;text-decoration:none}
.cx-blog-pages>button:hover:not(:disabled),.cx-blog-pages .page-numbers:hover{border-color:#abdfd3}
.cx-blog-pages>button:disabled{opacity:.35;cursor:default}
.cx-blog-pages>span{color:#d8ebe5;font-size:12px;font-variant-numeric:tabular-nums}
.cx-blog-pages .page-numbers.current{background:#abdfd3;color:#112a31;border-color:#abdfd3}
.cx-blog-pages .navigation.pagination{margin:0}
.cx-blog-pages .nav-links{display:flex;gap:9px;align-items:center;justify-content:center;flex-wrap:wrap}
.cx-blog-empty{background:rgba(14,35,52,.85);border:1px solid rgba(124,160,164,.4);border-radius:12px;padding:34px 24px;text-align:center;grid-column:1/-1;color:#dceae7}
.cx-blog-empty p{margin:0 0 14px}
.cx-blog-empty button,.cx-blog-empty a{border:1px solid #9dcbbf;color:#d4eee5;border-radius:7px;background:transparent;padding:8px 13px;cursor:pointer}
.cx-blog-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:#a5bfc4;font-size:11px;margin:20px 0 26px}
.cx-blog-breadcrumb a{color:#c0e6da}
.cx-blog-detail{max-width:850px;padding:0 0 23px;margin:0 auto;border-bottom:1px solid rgba(121,151,155,.33)}
.cx-blog-detail .cx-article-meta{margin-bottom:17px;gap:12px}
.cx-category-tag{display:inline-block;border:1px solid rgba(153,210,190,.48);background:rgba(23,62,69,.54);border-radius:25px;padding:3px 11px;color:#ccece3;font-size:11px;text-decoration:none!important}
.cx-blog-detail-lead{font-size:15px;line-height:1.9;color:#f0f7f3}
.cx-blog-detail .cx-article-body{max-width:850px;margin:0 auto;font-size:14px;line-height:2.02}
.cx-blog-detail-bottom{max-width:850px;margin:29px auto 56px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.cx-blog-related{border-top:1px solid rgba(121,151,155,.38);padding-top:30px}
.cx-blog-related h2{font-size:22px!important;margin:6px 0 20px}
.cx-blog-related .cx-post-grid{max-width:850px}
.cx-wp-comments{max-width:850px}
.cx-wp-pager .nav-links{justify-content:center}
.cx-page .cx-reading iframe,.cx-page .cx-reading video{max-width:100%}
.cx-page .cx-reading .wp-block-embed__wrapper{max-width:100%;overflow:hidden}
@media(max-width:860px){.cx-blog-controls{grid-template-columns:1fr;gap:16px}}
@media(max-width:760px){
 .cx-page .cx-blog-directory{padding-top:19px}
 .cx-blog-controls{margin:16px 0;padding:16px 14px}
 .cx-blog-lead{font-size:12px}
 .cx-post-grid.cx-blog-cards{grid-template-columns:1fr}
 .cx-blog-cards .cx-postcard-visual:not(.has-image){height:98px;min-height:98px}
 .cx-blog-cards .cx-postcard-body{padding:14px 16px}
 .cx-page .cx-blog-cards .cx-postcard-body h3{font-size:15px}
 .cx-blog-detail .cx-article-body{font-size:13px}
 .cx-blog-detail-bottom{flex-direction:column}
 .cx-blog-detail-bottom .cx-button{width:100%}
}
@media(prefers-reduced-motion:reduce){.cx-blog-cards .cx-postcard,.cx-filter-chip{transition:none}}


/* CONVEX Ver.48 / existing WordPress author streams and article photography */
.cx-page .cx-blog-main{max-width:1340px}
.cx-blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 238px;gap:23px;align-items:start}
.cx-blog-layout>.cx-blog-directory{min-width:0}
.cx-blog-layout .cx-blog-sidebar{position:relative;display:grid;gap:14px;padding-top:32px}
.cx-blog-side-panel{padding:18px 16px;background:linear-gradient(145deg,rgba(18,38,51,.94),rgba(10,25,40,.93));border:1px solid rgba(125,171,175,.35);border-radius:9px}
.cx-blog-side-panel h2{font-size:14px!important;margin:0 0 12px!important;color:#edf9f4;font-weight:600}
.cx-blog-side-panel ul{list-style:none;margin:0;padding:0}
.cx-blog-side-streams li+li,.cx-blog-side-news li+li{border-top:1px solid rgba(152,195,194,.14)}
.cx-blog-side-panel a{display:block;padding:10px 0;color:#d0e1e0;text-decoration:none;font-size:12px;line-height:1.7}
.cx-blog-side-panel a:hover{color:#a9eee1}
.cx-blog-side-streams a{display:flex;justify-content:space-between;gap:8px}
.cx-blog-side-streams small{color:#90b6ba;white-space:nowrap}
.cx-blog-side-note{font-size:11px;line-height:1.85;color:#9cb6bf}
.cx-blog-layout .cx-blog-cards .cx-postcard-visual.has-image{background:#122538}
@media (min-width:1180px){.cx-blog-layout .cx-post-grid.cx-blog-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:940px){.cx-blog-layout{grid-template-columns:1fr}.cx-blog-layout .cx-blog-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}}
@media(max-width:620px){.cx-blog-layout .cx-blog-sidebar{grid-template-columns:1fr}}

/* CONVEX Ver.49 / article-first blog layout — navigation secondary */
.cx-page .cx-blog-main {padding-top:5px;}
.cx-page .cx-blog-directory {padding-top:22px;}
.cx-page .cx-blog-topheading {margin-bottom:12px;}
.cx-page .cx-blog-topheading h2{font-size:clamp(21px,2.15vw,25px);margin:3px 0 4px;font-weight:600;}
.cx-blog-lead{font-size:12px;opacity:.78;}
.cx-blog-layout{grid-template-columns:minmax(0,1fr) 225px;gap:22px;}
.cx-blog-layout .cx-blog-sidebar{padding-top:22px;gap:13px;}
.cx-blog-tools{min-width:0;border:1px solid rgba(125,171,175,.34);border-radius:10px;background:linear-gradient(145deg,rgba(18,38,51,.92),rgba(10,25,40,.92));padding:0 15px 14px;}
.cx-blog-tools>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#d8ebe8;font-weight:600;font-size:12px;min-height:46px;}
.cx-blog-tools>summary::-webkit-details-marker{display:none;}
.cx-blog-tools>summary:after{content:'⌄';font-size:17px;font-weight:400;color:#9fd6ca;line-height:1;transition:transform .18s;}
.cx-blog-tools[open]>summary:after{transform:rotate(180deg);}
.cx-blog-tools .cx-blog-controls{margin:0;padding:12px 0 0;display:grid;grid-template-columns:1fr;gap:14px;align-items:stretch;background:none;border:0;border-top:1px solid rgba(152,195,194,.16);border-radius:0;box-shadow:none;}
.cx-blog-tools .cx-blog-search label:not(.screen-reader-text), .cx-blog-tools .cx-search-label,.cx-blog-tools .cx-filter-label{font-size:11px;line-height:1.5;margin-bottom:7px;color:#b9cdcd;font-weight:500;}
.cx-blog-tools .cx-blog-search-row,.cx-blog-tools .cx-wp-search{gap:5px;min-width:0;}
.cx-blog-tools .cx-blog-search-row input[type=search],.cx-blog-tools .cx-wp-search input[type=search]{padding:7px 8px;font-size:11px;min-width:0;}
.cx-blog-tools .cx-blog-search-row button,.cx-blog-tools .cx-wp-search button{padding:7px 9px;font-size:11px;}
.cx-blog-tools .cx-filter-chips{gap:5px;}
.cx-blog-tools .cx-filter-chip{min-height:27px;padding:4px 8px;font-size:10px;line-height:1.35;}
.cx-blog-layout .cx-blog-list-header{margin-bottom:12px;scroll-margin-top:75px;}
.cx-blog-layout .cx-blog-cards .cx-postcard-body{padding:14px 15px 17px;}
.cx-page .cx-blog-layout .cx-blog-cards .cx-postcard-body h3{font-size:15px;line-height:1.55;}
.cx-blog-layout .cx-blog-cards .cx-postcard-body p{font-size:12px;line-height:1.65;}
.cx-blog-side-panel{padding:15px 14px;}
@media(min-width:1180px){.cx-blog-layout .cx-post-grid.cx-blog-cards{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:940px){
 .cx-blog-layout{grid-template-columns:1fr;}
 .cx-blog-layout .cx-blog-sidebar{padding-top:0;}
 .cx-blog-tools{margin:12px 0 17px;padding:0 13px 0;}
 .cx-blog-tools[open]{padding-bottom:13px;}
 .cx-blog-tools .cx-blog-controls{padding-top:11px;}
 .cx-blog-tools>summary{min-height:40px;font-size:11px;}
}
@media(max-width:760px){
 .cx-page .cx-blog-directory{padding-top:16px;}
 .cx-blog-tools{margin:10px 0 14px;}
 .cx-blog-layout .cx-blog-cards .cx-postcard-body{padding:14px 16px;}
}
/* Keep the stream label inside its image card, not over the article heading. */
.cx-blog-layout .cx-blog-cards .cx-postcard-visual .cx-card-category{position:absolute;left:11px;top:10px;z-index:1;background:rgba(8,22,34,.76);color:#e5f5ee;backdrop-filter:blur(6px);border-radius:16px;padding:3px 8px;font-size:10px;}

/* v49.4: Same uniform 2:1 thumbnail crop as the former Coldbox listing.
   All cards share one image height at a given width; no letterboxing. */
.cx-page .cx-blog-layout .cx-blog-cards .cx-postcard-visual {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 2 / 1;
  padding: 0;
  overflow: hidden;
}
.cx-page .cx-blog-layout .cx-blog-cards .cx-postcard-visual.has-image {
  height: auto;
  min-height: 0;
}
.cx-page .cx-blog-layout .cx-blog-cards .cx-postcard-visual.has-image > img {
  position: absolute;
  inset: 0;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center center;
}
.cx-page .cx-blog-layout .cx-blog-cards .cx-postcard-visual:not(.has-image) > b {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
