
/* ============================================================
   GAIA Exploration — Bilingual Static Website
   Pure HTML + CSS + JS, no frameworks, no external libraries.
   Visual direction: editorial, minimal, strong grid, Anthropic-inspired.
   ============================================================ */
:root{
  --paper:#f4efe6;
  --paper-2:#fff8ee;
  --paper-3:#ece1d2;
  --ink:#11110f;
  --ink-2:#27241f;
  --muted:#665f55;
  --soft:#8b8174;
  --line:#d8ccbb;
  --dark:#11110f;
  --dark-2:#17231f;
  --green:#22493b;
  --green-2:#315b4c;
  --accent:#d96f32;
  --accent-2:#f3a15d;
  --blue:#1f6d7a;
  --shadow:0 22px 70px rgba(29,22,13,.13);
  --radius:22px;
  --radius-lg:34px;
  --max:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper);}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans SC", "Microsoft YaHei", Arial, sans-serif;line-height:1.55;font-size:16px;}
body.menu-open{overflow:hidden;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
button,input,textarea,select{font:inherit;}
::selection{background:var(--accent);color:#fff;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px;}
.kicker,.section-tag{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:12px;color:var(--accent);}
.kicker:before,.section-tag:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--accent);display:inline-block;}
h1,h2,h3,p{margin:0;}
h1,.display{font-family:Georgia, "Times New Roman", serif;font-weight:500;letter-spacing:-.055em;line-height:.94;}
h2{font-family:Georgia, "Times New Roman", serif;font-size:clamp(34px,5vw,64px);font-weight:500;letter-spacing:-.045em;line-height:1.02;}
h3{font-size:clamp(22px,2.4vw,34px);line-height:1.08;letter-spacing:-.035em;}
p{color:var(--muted);font-size:17px;}
.zh h1,.zh .display,.zh h2{font-family:"Noto Serif SC", "Songti SC", STSong, SimSun, Georgia, serif;letter-spacing:-.04em;}
.zh p{font-size:17px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--ink);border-radius:999px;padding:13px 18px;font-weight:800;font-size:14px;letter-spacing:.01em;transition:transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease;cursor:pointer;white-space:nowrap;}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.btn-primary:hover{background:var(--accent);border-color:var(--accent);}
.btn-ghost{background:transparent;color:var(--ink);}
.btn-ghost:hover{background:var(--ink);color:var(--paper);}
.btn-light{background:var(--paper);border-color:var(--paper);color:var(--ink);}
.btn-sm{padding:9px 13px;font-size:12px;}
.site-header{position:sticky;top:0;z-index:100;background:rgba(17,17,15,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(244,239,230,.12);transition:box-shadow .2s ease, background .2s ease;}
.site-header.is-scrolled{box-shadow:0 16px 40px rgba(0,0,0,.16);background:rgba(17,17,15,.97);}
.site-nav{height:74px;display:flex;align-items:center;gap:20px;}
.brand{display:flex;align-items:center;gap:11px;min-width:190px;}
.brand img{height:28px;width:auto;object-fit:contain;}
.nav-links{display:flex;align-items:center;justify-content:center;gap:3px;flex:1;}
.nav-links a{color:#e8dfd2;font-weight:700;font-size:13px;padding:10px 22px;border-radius:999px;opacity:.83;}
.nav-links a:hover,.nav-links a.active{background:rgba(244,239,230,.1);opacity:1;}
.nav-cta{display:flex;align-items:center;gap:8px;}
.nav-cta .btn-ghost{color:var(--paper);border-color:rgba(244,239,230,.34);}
.nav-cta .btn-ghost:hover{background:var(--paper);color:var(--ink);}
.lang-link{border:1px solid rgba(244,239,230,.25);color:var(--paper);padding:8px 11px;border-radius:999px;font-size:12px;font-weight:800;}
.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid rgba(244,239,230,.25);border-radius:999px;background:transparent;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:5px;}
.menu-toggle span{display:block;width:18px;height:2px;background:var(--paper);border-radius:10px;transition:.2s ease;}
.menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-open .menu-toggle span:nth-child(2){opacity:0;}
.menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.home-hero{position:relative;overflow:hidden;padding:78px 0 42px;border-bottom:1px solid var(--line);}
.home-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 10%, rgba(217,111,50,.20), transparent 31%), radial-gradient(circle at 30% 40%, rgba(31,109,122,.10), transparent 34%);pointer-events:none;}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(410px,.94fr);gap:34px;align-items:stretch;}
.hero-copy{padding:54px 0 18px;}
.hero-copy h1{font-size:clamp(58px,9vw,118px);max-width:920px;}
.hero-copy .lede{font-size:clamp(18px,2vw,23px);line-height:1.45;max-width:760px;margin-top:28px;color:#4f483f;}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px;}
.hero-note{margin-top:38px;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:15px;max-width:720px;}
.hero-visual{position:relative;min-height:590px;border-radius:var(--radius-lg);overflow:hidden;background:#0f1d1b;box-shadow:var(--shadow);isolation:isolate;}
.hero-visual img{position:absolute;inset:0;width:100%;height:48%;object-fit:fill;}
.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(17,17,15,.12), rgba(17,17,15,.78));z-index:1;display: none}
#geoCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;mix-blend-mode:screen;opacity:.74;display: none;}
.visual-card{position:absolute;z-index:3;left:24px;right:24px;bottom:24px;background:rgba(244,239,230,.92);border:1px solid rgba(255,255,255,.4);border-radius:22px;padding:22px;backdrop-filter:blur(16px);}
.visual-card h3{font-size:26px;margin-bottom:10px;}
.visual-card p{font-size:14.5px;line-height:1.45;}
.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px;}
.metric{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(255,248,238,.7);}
.metric strong{display:block;font-size:23px;line-height:1;color:var(--ink);letter-spacing:-.04em;}
.metric span{display:block;font-size:12px;color:var(--muted);margin-top:5px;}
section{padding:92px 0;}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px;border-top:1px solid var(--line);padding-top:22px;}
.section-head p{max-width:520px;}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:34px;align-items:center;}
.split-visual{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--dark);box-shadow:var(--shadow);}
.split-visual img,.split-visual svg{width:100%;height:100%;object-fit:cover;}
.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-2);padding:34px;box-shadow:0 18px 42px rgba(29,22,13,.06);}
.panel.dark{background:var(--dark);color:var(--paper);border-color:#2e312b;}
.panel.dark p,.panel.dark li{color:#d2c8b8;}
.panel.dark .eyebrow{color:var(--accent-2);}
.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:var(--accent);margin-bottom:12px;display:block;}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.card-grid.two{grid-template-columns:repeat(2,1fr);}
.card{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.72);padding:26px;transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;background-clip:padding-box;}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(29,22,13,.09);border-color:#baa98f;}
.card .num{font-family:Georgia,serif;font-size:42px;line-height:1;color:var(--accent);margin-bottom:22px;display:block;}
.card h3{font-size:25px;margin-bottom:12px;}
.card p{font-size:15.5px;}
.card ul,.clean-list{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:9px;}
.card li,.clean-list li{color:var(--muted);font-size:15px;position:relative;padding-left:18px;}
.card li:before,.clean-list li:before{content:"";position:absolute;left:0;top:1.2em;width:6px;height:6px;border-radius:99px;background:var(--accent);}
.comparison{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--paper-2);}
.compare-col{padding:34px;}
.compare-col + .compare-col{border-left:1px solid var(--line);background:#fbf1e4;}
.compare-col h3{margin-bottom:18px;}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.chip,.tag{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:rgba(255,248,238,.72);font-size:13px;font-weight:800;color:var(--ink-2);}
.chip[data-filter]{cursor:pointer;}
.chip[data-filter].active{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.workflow{counter-reset:step;display:grid;gap:14px;}
.workflow-item{display:grid;grid-template-columns:88px minmax(0,1fr);gap:24px;align-items:start;border-top:1px solid var(--line);padding:24px 0;}
.workflow-item:before{counter-increment:step;content:"0"counter(step);font-family:Georgia,serif;font-size:52px;line-height:1;color:var(--accent);}
.workflow-item h3{margin-bottom:8px;}
.workflow-item p{max-width:820px;}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.stat{border-top:1px solid var(--line);padding:18px 0;}
.stat b{font-size:clamp(28px,4.4vw,52px);font-family:Georgia,serif;font-weight:500;letter-spacing:-.055em;display:block;line-height:.98;color:var(--ink);}
.stat span{display:block;color:var(--muted);font-size:14px;margin-top:10px;}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.project-card{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--paper-2);box-shadow:0 18px 42px rgba(29,22,13,.07);}
.project-card img{height:210px;width:100%;object-fit:cover;filter:saturate(.9);}
.project-card .project-body{padding:25px;}
.project-card h3{margin-bottom:8px;}
.project-card p{font-size:15.5px;}
.case-list{display:grid;gap:24px;}
.case{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-2);overflow:hidden;}
.case-head{padding:28px 32px;background:var(--dark);color:var(--paper);display:flex;justify-content:space-between;gap:20px;align-items:flex-start;}
.case-head .loc{color:#cfc3b2;font-size:15px;margin-top:8px;}
.case-mineral{border:1px solid rgba(244,239,230,.24);border-radius:999px;padding:8px 12px;color:#efe3cf;font-weight:900;font-size:12px;white-space:nowrap;}
.case-body{display:grid;grid-template-columns:repeat(2,1fr);gap:0;}
.case-block{padding:28px 32px;border-top:1px solid var(--line);}
.case-block:nth-child(odd){border-right:1px solid var(--line);}
.case-block h4{margin:0 0 8px;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);}
.case-block p{font-size:15.8px;}
.role-list{display:grid;gap:10px;}
.role-row{display:grid;grid-template-columns:250px minmax(0,1fr) auto;gap:20px;align-items:center;border:1px solid var(--line);border-radius:20px;background:var(--paper-2);padding:20px 22px;}
.role-row h3{font-size:23px;}
.role-en{display:block;color:var(--soft);font-weight:800;margin-top:4px;font-size:13px;}
.role-focus{display:flex;flex-wrap:wrap;gap:8px;}
.contact-grid{
  /*display:grid;*/
  grid-template-columns:.85fr 1.15fr;gap:22px;align-items:start;}
.office-list{display:grid;gap:12px;}
.office{border:1px solid var(--line);border-radius:18px;background:var(--paper-2);padding:18px;}
.office h3{font-size:20px;margin-bottom:5px;}
.office p{font-size:14.5px;}
.form-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-2);padding:28px;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.field{display:grid;gap:7px;}
.field.full{grid-column:1/-1;}
label{font-weight:800;font-size:13px;color:var(--ink-2);}
input,textarea,select{width:100%;border:1px solid var(--line);background:#fffaf1;color:var(--ink);border-radius:14px;padding:13px 14px;outline:none;transition:border-color .2s ease, box-shadow .2s ease;}
textarea{min-height:150px;resize:vertical;}
input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(217,111,50,.12);}
.form-note{font-size:13px;margin-top:12px;color:var(--soft);}
.cta-band{background:var(--dark);color:var(--paper);padding:70px 0;}
.cta-band .wrap{display:flex;justify-content:space-between;gap:34px;align-items:center;}
.cta-band h2{max-width:850px;font-size:clamp(34px,5.5vw,70px);}
.cta-band p{color:#d1c6b6;margin-top:16px;max-width:690px;}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap;}
.site-footer{background:var(--dark);color:var(--paper);padding:58px 0 26px;border-top:1px solid rgba(244,239,230,.12);}
.footer-grid{display:grid;grid-template-columns:1.35fr 1.55fr repeat(2,1fr) 1.35fr;gap:30px;}
.footer-col h4{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-2);margin:0 0 15px;}
.footer-col a{display:block;color:#d9cfbf;font-size:14px;margin:9px 0;}
.footer-col a:hover{color:#fff;}
.footer-about{color:#cfc3b2;font-size:14px;max-width:310px;margin-top:16px;}
.footer-logo{height:26px;width:auto;}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(244,239,230,.13);padding-top:18px;margin-top:38px;color:#958c80;font-size:12px;}
.page-hero{position:relative;overflow:hidden;padding:92px 0 70px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 80% 20%, rgba(217,111,50,.16), transparent 30%), var(--paper);}
.page-hero h1{font-size:clamp(52px,8.4vw,108px);max-width:1120px;margin-top:16px;}
.page-hero .lede{max-width:850px;font-size:clamp(18px,2vw,22px);margin-top:24px;color:#4f483f;}
.page-hero-visual{margin-top:34px;border-radius:var(--radius-lg);overflow:hidden;background:var(--dark);box-shadow:var(--shadow);}
.page-hero-visual img{width:100%;height:100%;object-fit:cover;}
.breadcrumb{display:flex;gap:8px;align-items:center;color:var(--soft);font-size:13px;margin-bottom:20px;}
.breadcrumb a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
.reveal{opacity:1;transform:translateY(18px);}
.reveal.visible{animation:reveal .65s ease forwards;}
@keyframes reveal{to{opacity:1;transform:none;}}
@media (max-width:1080px){
  .nav-links,.nav-cta{display:none;}
  .menu-toggle{display:flex;}
  .site-header .wrap{position:relative;}
  .menu-open .nav-links{display:flex;position:fixed;left:16px;right:16px;top:82px;z-index:99;flex-direction:column;align-items:stretch;background:#181814;border:1px solid rgba(244,239,230,.15);border-radius:22px;padding:18px;box-shadow:0 30px 80px rgba(0,0,0,.25);}
  .menu-open .nav-links a{font-size:17px;padding:14px 16px;}
  .menu-open .nav-cta{display:flex;position:fixed;left:34px;right:34px;top:560px;z-index:100;flex-wrap:wrap;}
  .hero-grid,.split,.contact-grid{grid-template-columns:1fr;}
  .hero-visual{min-height:520px;}
  .project-grid,.card-grid{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:repeat(2,1fr);}
  .role-row{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .wrap{padding:0 18px;}
  .site-nav{height:66px;}
  .brand img{height:22px;}
  .home-hero{padding-top:50px;}
  .hero-copy{padding-top:24px;}
  .hero-copy h1{font-size:clamp(52px,16vw,78px);}
  .hero-visual{min-height:500px;border-radius:24px;}
  .visual-card{left:14px;right:14px;bottom:14px;padding:18px;}
  .metric-row,.stats,.card-grid,.card-grid.two,.project-grid,.case-body,.comparison,.form-grid{grid-template-columns:1fr;}
  .compare-col + .compare-col,.case-block:nth-child(odd){border-left:0;border-right:0;}
  section{padding:66px 0;}
  .section-head{display:block;}
  .section-head p{margin-top:18px;}
  .workflow-item{grid-template-columns:1fr;gap:6px;}
  .workflow-item:before{font-size:40px;}
  .case-head,.cta-band .wrap,.footer-bottom{flex-direction:column;align-items:flex-start;}
  .footer-grid{grid-template-columns:1fr;}
  .page-hero{padding:62px 0 50px;}
  .page-hero h1{font-size:clamp(38px,12vw,60px);}
}
.cta-band .btn-ghost{color:var(--paper);border-color:rgba(244,239,230,.35);}
.cta-band .btn-ghost:hover{background:var(--paper);color:var(--ink);border-color:var(--paper);}


/* --- Optimized grouped navigation + News --- */
.nav-links{gap:4px;}
.nav-single,.nav-trigger{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#e8decf;font-weight:850;font-size:14px;padding:10px 11px;border-radius:999px;cursor:pointer;line-height:1;}
.nav-trigger::after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.75;}
.nav-single:hover,.nav-trigger:hover,.nav-single.active,.nav-item.active>.nav-trigger{background:rgba(244,239,230,.11);color:#fff;}
.nav-item{position:relative;}
.dropdown-menu{position:absolute;left:0;top:calc(100% + 10px);min-width:230px;background:#171713;border:1px solid rgba(244,239,230,.14);border-radius:18px;padding:10px;box-shadow:0 24px 70px rgba(0,0,0,.26);display:grid;gap:2px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;}
.nav-item:hover .dropdown-menu,.nav-item:focus-within .dropdown-menu,.nav-item.open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);}
.dropdown-menu a{display:block;padding:11px 12px;border-radius:12px;color:#dfd4c5;font-size:14px;font-weight:800;white-space:nowrap;}
.dropdown-menu a:hover{background:rgba(244,239,230,.1);color:#fff;}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.news-grid.full{grid-template-columns:repeat(2,1fr);}
.news-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-2);overflow:hidden;box-shadow:0 18px 42px rgba(29,22,13,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.news-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px rgba(29,22,13,.11);border-color:#baa98f;}
.news-card img{width:100%;height:190px;object-fit:cover;background:var(--dark);}
.news-card-body{padding:24px;}
.news-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;color:var(--accent);font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;}
.news-card h3{font-size:24px;margin-bottom:10px;}
.news-card p{font-size:15.5px;}
.news-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;}
.article-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start;}
.article-main{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-2);padding:clamp(26px,4vw,48px);}
.article-main h2{font-size:clamp(34px,4.6vw,58px);margin:18px 0 18px;}
.article-body{display:grid;gap:18px;margin-top:28px;}
.article-body p,.article-body li{font-size:17px;color:var(--muted);}
.article-body ul{margin:0;padding-left:22px;}
.article-sidebar{position:sticky;top:104px;border:1px solid var(--line);border-radius:24px;background:#fbf1e4;padding:22px;}
.article-sidebar h3{font-size:22px;margin-bottom:10px;}
.article-sidebar p{font-size:12px;margin-bottom:14px;color: #777;}
.original-link-box{border:1px dashed rgba(217,111,50,.55);border-radius:18px;padding:16px;background:rgba(217,111,50,.07);}
.news-note{font-size:13px;color:var(--soft);margin-top:10px;}
@media (max-width:1080px){
  .menu-open .nav-links{gap:5px;overflow:auto;max-height:calc(100vh - 170px);}
  .menu-open .nav-item{width:100%;}
  .menu-open .nav-single,.menu-open .nav-trigger{width:100%;justify-content:space-between;font-size:17px;padding:14px 16px;border-radius:14px;}
  .menu-open .dropdown-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;background:rgba(255,255,255,.04);border-color:rgba(244,239,230,.1);margin:0 0 8px 0;}
  .menu-open .dropdown-menu a{font-size:15px;}
  .news-grid,.news-grid.full{grid-template-columns:repeat(2,1fr);}
  .article-shell{grid-template-columns:1fr;}
  .article-sidebar{position:static;}
}
@media (max-width:760px){
  .news-grid,.news-grid.full{grid-template-columns:1fr;}
  .news-card img{height:180px;}
}

/* ============================================================
   2026-07 optimization: calmer typography, adaptive header,
   and clean editorial news pages.
   ============================================================ */
body{font-size:15.5px;line-height:1.58;}
p{font-size:16px;line-height:1.62;}
.zh p{font-size:12px;line-height:1.72;color: #777;}
h2{font-size:clamp(28px,3.9vw,48px);line-height:1.08;letter-spacing:-.035em;}
h3{font-size:clamp(19px,1.8vw,26px);line-height:1.16;letter-spacing:-.025em;}
section{padding:78px 0;}
.home-hero{padding:58px 0 38px;}
.hero-copy{padding:42px 0 12px;}
.hero-copy h1{font-size:clamp(44px,6.7vw,86px);line-height:.98;letter-spacing:-.055em;}
.zh .hero-copy h1{font-size:clamp(44px,6.7vw,88px);line-height:.98;letter-spacing:.05em;}
.hero-copy .lede{font-size:clamp(16px,1.45vw,19px);line-height:1.58;margin-top:22px;}
.hero-note{font-size:14.5px;margin-top:28px;padding-top:18px;}
.hero-visual{min-height:520px;}
.visual-card h3{font-size:22px;}
.metric strong{font-size:15px;}
.section-head{margin-bottom:28px;}
.card h3{font-size:22px;}
.card p{font-size:15px;}
.card .num{font-size:34px;margin-bottom:16px;}
.workflow-item:before{font-size:42px;}
.stat b{font-size:clamp(26px,3.6vw,42px);}
.page-hero{padding:72px 0 56px;}
.page-hero h1{font-size:clamp(30px,5vw,56px);line-height:1;letter-spacing:-.045em;}
.zh .page-hero h1{letter-spacing: 0.05em;}
.page-hero .lede{font-size:clamp(16px,1.6vw,19px);line-height:1.62;}
.cta-band h2{font-size:clamp(30px,4.4vw,56px);}

/* Header width auto-fit */
.site-nav.wrap{width:min(100% - 32px, 1380px);max-width:1380px;padding-left:0;padding-right:0;}
.site-nav{gap:clamp(10px,1.4vw,20px);}
.brand{min-width:0;flex:0 1 172px;}
.brand img{height:26px;max-width:100%;}
.nav-links{flex:1 1 auto;min-width:0;gap:2px;justify-content:center;}
.nav-single,.nav-trigger{font-size:13px;padding:9px 15px;white-space:nowrap;}
.nav-cta{flex:0 0 auto;gap:6px;}
.nav-cta .btn-sm{padding:8px 11px;font-size:11.5px;}
.lang-link{padding:7px 10px;font-size:11.5px;}
.dropdown-menu{min-width:210px;}
@media (max-width:1260px){
  .nav-cta .btn-ghost{display:none;}
  .brand{flex-basis:150px;}
}
@media (max-width:1120px){
  .nav-cta .btn-light{display:none;}
}
@media (max-width:1080px){
  .site-nav.wrap{width:100%;padding-left:22px;padding-right:22px;max-width:100%;}
  .brand{flex:0 1 180px;}
  .menu-open .nav-cta{top:auto;bottom:22px;left:34px;right:34px;}
  .menu-open .nav-cta .btn-light,.menu-open .nav-cta .btn-ghost{display:inline-flex;}
}
@media (max-width:760px){
  body{font-size:15px;}
  p,.zh p{font-size:15.5px;}
  section{padding:58px 0;}
  .hero-copy h1{font-size:clamp(38px,12vw,58px);}
  .page-hero h1{font-size:clamp(34px,11vw,58px);}
  .hero-visual{min-height:500px;}
  .site-nav.wrap{padding-left:16px;padding-right:16px;}
}

/* Clean news typography */
.news-card h3{font-size:21px;line-height:1.22;}
.news-card p{font-size:15px;}
.news-meta{font-size:11px;letter-spacing:.08em;}
.article-shell{grid-template-columns:minmax(0,1fr) 300px;}
.article-main{padding:clamp(24px,4vw,42px);}
.article-main h2{font-size:clamp(30px,4vw,44px);line-height:1.12;}
.article-body{gap:22px;}
.article-body p,.article-body li{font-size:16px;line-height:1.82;color:#4f483f;}
.zh .article-body p,.zh .article-body li{font-size:16px;line-height:1.9;}
.article-body h3{font-size:clamp(22px,2.4vw,31px);line-height:1.24;margin:20px 0 2px;}
.article-body h4{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:8px 0 -6px;}
.article-body blockquote{margin:8px 0;padding:20px 24px;border-left:4px solid var(--accent);background:#fbf1e4;border-radius:0 18px 18px 0;color:var(--ink-2);font-size:18px;line-height:1.65;}
.article-figure{margin:8px 0 18px;border-radius:24px;overflow:hidden;background:#171713;border:1px solid var(--line);}
.article-figure img{width:100%;height:auto;object-fit:cover;}
.article-figure figcaption{padding:12px 16px;color:#7a7064;background:#fbf1e4;font-size:13px;line-height:1.55;}
.article-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 12px;}
.article-summary .summary-item{border:1px solid var(--line);border-radius:18px;background:#fbf1e4;padding:16px;}
.article-summary b{display:block;font-size:18px;margin-bottom:7px;}
.article-summary span{display:block;color:var(--muted);font-size:14px;line-height:1.55;}
.article-sidebar .clean-list li{font-size:14px;padding-left: 18px;border-top: 1px solid rgba(0,0,0,.2);padding-top: 8px;}
@media (max-width:1080px){
  .article-shell{grid-template-columns:1fr;}
  .article-summary{grid-template-columns:1fr;}
}
.card-grid .card .card1{width: 100%;display: flex;}
.card-grid .card .h1{font-size: 20px;font-weight: 700;color: #000;margin-bottom: 5px;}
.card-grid .card .h3{font-size: 15px;color: var(--accent);}
.card-grid .card .card1 img{width: 40%;}
.card-grid .card .card1 div{width: 55%;margin-left: 5%;display: flex;flex-direction: column;justify-content: center;}
.card-grid .card .card2{width: 100%;margin: 35px 0;}
.card-grid .card .card2 p{font-size: 15px;color: rgba(17,24,39,.8);line-height: 2.0;}
.card-grid .card .card3{width: 100%;display: flex;align-items: flex-end;justify-content: flex-end;}
.card-grid .card .card3 img{width: 45px;}

/* Homepage technical comparison table */
.tech-comparison{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-2);box-shadow:0 18px 42px rgba(29,22,13,.06);}
.tech-comparison:focus-visible{outline:3px solid rgba(217,111,50,.35);outline-offset:4px;}
.tech-comparison-table{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed;}
.tech-comparison-table th,.tech-comparison-table td{padding:22px 24px;text-align:left;vertical-align:top;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;line-height:1.65;}
.tech-comparison-table thead th{background:var(--dark);color:var(--paper);font-size:13px;line-height:1.45;letter-spacing:.04em;text-transform:uppercase;}
.zh .tech-comparison-table thead th{text-transform:none;letter-spacing:.05em;font-size:14px;}
.tech-comparison-table th:first-child{width:20%;}
.tech-comparison-table th:nth-child(2),.tech-comparison-table th:nth-child(3){width:40%;}
.tech-comparison-table tbody th{background:#fbf1e4;color:var(--ink);font-size:17px;line-height:1.45;}
.tech-comparison-table tbody td{color:var(--muted);}
.tech-comparison-table tbody td:last-child{background:rgba(34,73,59,.06);color:var(--ink-2);}
.tech-comparison-table th:last-child,.tech-comparison-table td:last-child{border-right:0;}
.tech-comparison-table tbody tr:last-child th,.tech-comparison-table tbody tr:last-child td{border-bottom:0;}
.tech-comparison-note{margin-top:14px;font-size:13px;line-height:1.6;color:var(--soft);}
@media (max-width:1080px){
  .tech-advantages .section-head{display:block;}
  .tech-advantages .section-head p{max-width:760px;margin-top:18px;}
}
@media (max-width:760px){
  .tech-comparison-table{min-width:760px;}
  .tech-comparison-table th,.tech-comparison-table td{padding:18px;font-size:14px;}
  .tech-comparison-table tbody th{font-size:16px;}
}


/* GAIA NEWS DETAIL ENHANCEMENTS */
.article-page .page-hero h1{font-size:clamp(34px,5.2vw,72px);max-width:1180px;line-height:1.02;}
.article-cover{border-radius:24px;margin-bottom:28px;max-height:520px;width:100%;object-fit:cover;background:#111;}
.article-toc{display:grid;gap:10px;}
.article-toc li{padding:0;border:0;}
.article-toc a{color:var(--ink-2);font-size:14px;line-height:1.45;text-decoration:none;}
.article-toc a:hover{color:var(--accent);}
.article-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 18px;}
.article-facts>div{border:1px solid var(--line);border-radius:18px;background:#fbf1e4;padding:16px;}
.article-facts b,.article-facts span{display:block;}
.article-facts b{font-size:14px;margin-bottom:6px;color:var(--accent);}
.article-facts span{font-size:15px;line-height:1.55;color:var(--ink-2);}
.article-body h4[id]{scroll-margin-top:120px;}
@media(max-width:700px){.article-page .page-hero h1{font-size:clamp(30px,10vw,48px);}.article-facts{grid-template-columns:1fr;}.article-cover{max-height:360px;}}
/* =========================================================
   Mobile navigation overflow fix
   ========================================================= */
@media (max-width:1080px){

  /* 避免 backdrop-filter 导致 fixed 菜单定位异常 */
  .site-header{
    overflow:visible;
  }

  body.menu-open .site-header{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }

  /* 导航主体占满可视区域，并允许独立滚动 */
  .menu-open .nav-links{
    display:flex;
    position:fixed;
    top:82px;
    left:12px;
    right:12px;
    bottom:12px;

    max-height:none;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;

    padding:14px 14px 108px;
    gap:5px;
    z-index:99;
  }

  /*
   原样式会让移动端所有二级菜单同时展开，
   导致整个导航高度过长。这里改成默认收起。
  */
  .menu-open .dropdown-menu{
    display:none;
    position:static;

    opacity:1;
    visibility:visible;
    transform:none;

    box-shadow:none;
    background:rgba(255,255,255,.04);
    border-color:rgba(244,239,230,.1);
    margin:0 0 8px;
  }

  /* 点击对应栏目后，再展开该二级菜单 */
  .menu-open .nav-item.open > .dropdown-menu{
    display:grid;
  }

  /* 底部按钮固定显示 */
  .menu-open .nav-cta{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
    gap:6px;

    position:fixed;
    top:auto;
    left:26px;
    right:26px;
    bottom:calc(20px + env(safe-area-inset-bottom, 0px));

    z-index:101;
    padding-top:10px;
    background:linear-gradient(
            to bottom,
            rgba(24,24,20,0),
            #181814 12px
    );
  }

  .menu-open .nav-cta > *{
    min-width:0;
  }
}

@media (max-width:760px){

  .menu-open .nav-links{
    top:74px;
    left:8px;
    right:8px;
    bottom:8px;
    padding:12px 12px 112px;
    border-radius:18px;
  }

  .menu-open .nav-cta{
    left:20px;
    right:20px;
    bottom:calc(16px + env(safe-area-inset-bottom, 0px));
  }

  .menu-open .nav-cta .btn,
  .menu-open .nav-cta .lang-link{
    padding:9px 7px;
    font-size:11px;
    line-height:1.2;
    white-space:normal;
    text-align:center;
  }
}

/* 特别窄的手机改为两列，避免英文按钮被挤出屏幕 */
@media (max-width:420px){

  .menu-open .nav-links{
    padding-bottom:154px;
  }

  .menu-open .nav-cta{
    grid-template-columns:1fr 1fr;
  }

  .menu-open .nav-cta .lang-link{
    grid-column:1 / -1;
  }
}

.contact-content{padding:72px 0 100px;}
.contact-hub{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:clamp(34px,5vw,72px);align-items:center;padding:clamp(30px,4.6vw,58px);border:1px solid #2e312b;border-radius:var(--radius-lg);background:var(--dark);box-shadow:var(--shadow);}
.contact-hub::before{content:"";position:absolute;width:520px;height:520px;right:-170px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(217,111,50,.23),rgba(217,111,50,0) 68%);pointer-events:none;}
.contact-hub-main,.contact-hub-aside{position:relative;z-index:1;}
.contact-overline{display:block;margin-bottom:16px;color:var(--accent-2);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;}
.contact-main-email{display:inline-block;color:#fff8ee;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-.05em;overflow-wrap:anywhere;transition:color .2s ease;}
.contact-main-email:hover{color:var(--accent-2);}
.contact-hub-main > p{max-width:680px;margin-top:20px;color:#cfc5b6;font-size:16px;}
.contact-hub-aside{padding-left:clamp(28px,4vw,52px);border-left:1px solid rgba(244,239,230,.17);}
.contact-hub-aside h2{max-width:470px;color:var(--paper);font-size:clamp(30px,3.3vw,46px);}
.contact-hub-aside > p{max-width:480px;margin-top:16px;color:#cfc5b6;font-size:15px;}
.contact-platform{display:inline-flex;flex-wrap:wrap;align-items:center;gap:7px 12px;margin-top:20px;padding:10px 14px;border:1px solid rgba(244,239,230,.18);border-radius:999px;color:#d9cfbf;font-size:13px;transition:background .2s ease,border-color .2s ease;}
.contact-platform strong{color:var(--paper);}
.contact-platform::after{content:"\2197";color:var(--accent-2);font-size:16px;}
.contact-platform:hover{border-color:rgba(244,239,230,.4);background:rgba(244,239,230,.08);}
.contact-offices{margin-top:76px;}
.contact-offices-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:30px;align-items:end;margin-bottom:28px;padding-top:22px;border-top:1px solid var(--line);}
.contact-offices-head h2{max-width:760px;margin-top:12px;font-size:clamp(38px,5vw,62px);}
.contact-offices-head > p{padding-bottom:4px;font-size:16px;}
.contact-office-list{display:grid;gap:16px;}
.contact-office-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;padding:24px 26px;border:1px solid var(--line);border-radius:24px;background:var(--paper-2);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}
.contact-office-card:hover{transform:translateY(-3px);border-color:#baa98f;box-shadow:0 16px 38px rgba(29,22,13,.08);}
.contact-office-copy{min-width:0;padding:8px 0;}
.contact-office-meta{display:flex;align-items:center;gap:11px;margin-bottom:18px;}
.contact-office-number{position:static;right:auto;top:auto;color:var(--accent);font-family:Georgia,"Times New Roman",serif;font-size:19px;line-height:1;}
.contact-office-region{padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--soft);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.contact-office-card h3{max-width:630px;margin-bottom:10px;font-size:clamp(24px,2.7vw,30px);}
.contact-office-card p{max-width:650px;font-size:15.5px;line-height:1.55;}
.contact-office-contact{padding-left:30px;border-left:1px solid var(--line);}
.contact-person-label{display:block;margin-bottom:12px;color:var(--soft);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.contact-office-codes{display:grid;grid-template-columns:repeat(2,minmax(126px,150px));gap:14px;}
.contact-code{min-width:0;margin:0;padding:9px;border:1px solid #e2d7c8;border-radius:18px;background:#fff;}
.contact-code-image{width:100%;aspect-ratio:1;padding:3px;border-radius:12px;background:#fff;overflow:hidden;}
.contact-code-image img{width:100%;height:100%;object-fit:contain;}
.contact-code figcaption{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 3px 2px;}
.contact-code figcaption > span:last-child{display:block;min-width:0;}
.contact-code strong{display:block;color:var(--ink);font-size:12px;line-height:1.2;overflow-wrap:anywhere;}
.contact-code small{display:block;margin-top:3px;color:var(--soft);font-size:9px;line-height:1.2;}
.contact-code-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;}
.contact-code-dot-wechat{background:#07c160;box-shadow:0 0 0 4px rgba(7,193,96,.11);}
.contact-code-dot-whatsapp{background:#25d366;box-shadow:0 0 0 4px rgba(37,211,102,.12);}

@media (max-width:1000px){
  .contact-hub{grid-template-columns:1fr;}
  .contact-hub-aside{padding-top:28px;padding-left:0;border-top:1px solid rgba(244,239,230,.17);border-left:0;}
}

@media (max-width:860px){
  .contact-office-card{grid-template-columns:1fr;gap:22px;}
  .contact-office-contact{padding-top:22px;padding-left:0;border-top:1px solid var(--line);border-left:0;}
}

@media (max-width:760px){
  .contact-content{padding:52px 0 72px;}
  .contact-hub{padding:26px;border-radius:26px;}
  .contact-offices{margin-top:56px;}
  .contact-offices-head{grid-template-columns:1fr;gap:16px;}
  .contact-office-card{padding:22px;}
}

@media (max-width:520px){
  .contact-main-email{font-size:clamp(26px,9vw,38px);}
  .contact-office-codes{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .contact-code{padding:7px;border-radius:15px;}
  .contact-code figcaption{gap:6px;padding-top:7px;}
  .contact-code strong{font-size:11px;}
}
body[data-page="team"] .card-grid {
  align-items: stretch;
}

body[data-page="team"] .card-grid > .card {
  display: flex;
  flex-direction: column;
}

body[data-page="team"] .card-grid > .card .card2 {
  flex: 0 0 auto;
}

body[data-page="team"] .card-grid > .card .card3 {
  flex: 0 0 auto;
  min-height: 45px;
  margin-top: auto;
  padding-top: 8px;
}

.contact-label-mobile {
  display: none;
}

@media (min-width: 761px) {
  .contact-office-list,
  .contact-office-card {
    overflow: visible;
  }

  .contact-office-card {
    position: relative;
  }

  .contact-office-card:hover,
  .contact-office-card:focus-within {
    z-index: 20;
  }

  .contact-office-contact {
    position: relative;
    align-self: center;
  }

  .contact-office-codes {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
  }

  .contact-code {
    position: relative;
    width: auto !important;
    min-width: 178px;
    margin: 0;
    padding: 0;
    overflow: visible !important;
    border: 1px solid rgba(37, 31, 24, .12);
    border-radius: 14px;
    background: rgba(255, 255, 255, .7);
    box-shadow: 0 8px 24px rgba(49, 38, 24, .05);
    cursor: pointer;
    outline: none;
    transition:
            transform .22s ease,
            border-color .22s ease,
            background-color .22s ease,
            box-shadow .22s ease;
  }

  .contact-code:hover,
  .contact-code:focus-visible,
  .contact-code.is-open {
    transform: translateY(-2px);
    border-color: rgba(227, 108, 48, .38);
    background: #fff;
    box-shadow: 0 12px 30px rgba(49, 38, 24, .1);
  }

  .contact-code:focus-visible {
    box-shadow:
            0 0 0 3px rgba(227, 108, 48, .16),
            0 12px 30px rgba(49, 38, 24, .1);
  }

  .contact-code figcaption {
    display: grid !important;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    min-height: 62px;
    padding: 10px 13px;
    text-align: left;
  }

  .contact-code figcaption .contact-code-dot {
    grid-row: 1 / 3;
  }

  .contact-code figcaption > span:last-of-type {
    display: contents;
  }

  .contact-code figcaption strong {
    grid-column: 2;
    align-self: end;
    font-size: 15px;
    line-height: 1.15;
  }

  .contact-code figcaption small {
    display: none;
  }

  .contact-code figcaption::before {
    content: "查看二维码";
    grid-column: 2;
    align-self: start;
    margin-top: 4px;
    color: #8b8177;
    font-size: 12px;
    line-height: 1.1;
  }

  html[lang^="en"] .contact-code figcaption::before {
    content: "View QR code";
  }

  html[lang^="kk"] .contact-code figcaption::before {
    content: "QR-кодты көру";
  }

  .contact-code figcaption::after {
    content: "↗";
    grid-column: 3;
    grid-row: 1 / 3;
    color: #df6a32;
    font-size: 17px;
    transition: transform .22s ease;
  }

  .contact-code:hover figcaption::after,
  .contact-code.is-open figcaption::after {
    transform: translate(2px, -2px);
  }

  .contact-code-image,
  .contact-code.is-open .contact-code-image {
    position: absolute;
    right: 0;
    bottom: calc(100% + 10px);
    left: auto;
    top: auto;
    z-index: 30;
    display: block !important;
    box-sizing: border-box;
    width: 224px !important;
    height: auto !important;
    aspect-ratio: auto !important;
    padding: 12px 12px 38px;
    overflow: visible !important;
    border: 1px solid rgba(37, 31, 24, .12);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(35, 29, 22, .2);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(8px) scale(.97);
    transform-origin: bottom right;
    transition:
            opacity .2s ease,
            visibility .2s ease,
            transform .2s ease;
  }

  .contact-code-image::before {
    content: "扫码添加联系人";
    position: absolute;
    right: 12px;
    bottom: 13px;
    left: 12px;
    display: block;
    color: #756b62;
    font-size: 12px;
    line-height: 1;
    text-align: center;
  }

  html[lang^="en"] .contact-code-image::before {
    content: "Scan to connect";
  }

  html[lang^="kk"] .contact-code-image::before {
    content: "Байланысу үшін сканерлеңіз";
  }

  .contact-code-image::after {
    content: "";
    position: absolute;
    right: 24px;
    bottom: -8px;
    display: block;
    width: 16px;
    height: 16px;
    border-right: 1px solid rgba(37, 31, 24, .12);
    border-bottom: 1px solid rgba(37, 31, 24, .12);
    background: #fff;
    transform: rotate(45deg);
  }

  .contact-code-image img {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1;
    border-radius: 10px;
    object-fit: contain;
  }

  .contact-code.is-open .contact-code-image {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }

}

@media (min-width: 761px) and (hover: hover) and (pointer: fine) {
  .contact-code:hover .contact-code-image {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }
}

@media (max-width: 760px) {
  .contact-label-desktop {
    display: none;
  }

  .contact-label-mobile {
    display: inline;
  }

  .contact-office-contact {
    width: 100%;
  }

  .contact-office-codes {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .contact-office-card:hover,
  .contact-office-card:focus-within {
    z-index: auto;
    transform: none;
  }

  .contact-code,
  .contact-code:hover,
  .contact-code:focus-visible,
  .contact-code.is-open {
    position: relative;
    min-width: 0;
    margin: 0;
    padding: 7px;
    overflow: hidden !important;
    border: 1px solid #e2d7c8;
    border-radius: 15px;
    background: #fff;
    box-shadow: none;
    cursor: default;
    outline: none;
    transform: none !important;
  }

  .contact-code-image,
  .contact-code.is-open .contact-code-image,
  .contact-code:first-child .contact-code-image {
    position: static;
    inset: auto;
    z-index: auto;
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1;
    padding: 3px;
    overflow: hidden !important;
    border: 0;
    border-radius: 12px;
    background: #fff;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none !important;
  }

  .contact-code-image::before,
  .contact-code-image::after {
    display: none !important;
    content: none;
  }

  .contact-code-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 1;
    border-radius: 9px;
    object-fit: contain;
  }

  .contact-code figcaption {
    display: flex !important;
    grid-template: none;
    align-items: center;
    gap: 6px;
    min-height: 0;
    padding: 7px 3px 2px;
    text-align: left;
  }

  .contact-code figcaption .contact-code-dot {
    grid-row: auto;
  }

  .contact-code figcaption > span:last-of-type {
    display: block;
    min-width: 0;
  }

  .contact-code figcaption strong {
    display: block;
    color: var(--ink);
    font-size: 11px;
    line-height: 1.2;
  }

  .contact-code figcaption small {
    display: block;
    margin-top: 3px;
    color: var(--soft);
    font-size: 9px;
    line-height: 1.2;
  }

  .contact-code figcaption::before,
  .contact-code figcaption::after {
    display: none !important;
    content: none;
  }

  .contact-qr-modal {
    display: none !important;
  }

  body.qr-modal-open,
  body.qr-popover-open {
    overflow: auto;
    overscroll-behavior: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-code,
  .contact-code figcaption::after,
  .contact-code-image {
    transition: none;
  }
}

/* ============================================================
   GAIA Case Studies — field image gallery
   Append this block to the end of the existing style.css file.
   ============================================================ */

.case-studies-page .page-hero h1{
  font-size:clamp(42px,6.5vw,84px);
  max-width:1080px;
}

.case-studies-page .page-hero-visual{
  aspect-ratio:16/7;
}

.case-studies-page .case-list{
  gap:30px;
}

.case-studies-page .case{
  box-shadow:0 18px 48px rgba(29,22,13,.07);
}

.case-studies-page .case-head{
  align-items:center;
  border-bottom:1px solid rgba(244,239,230,.12);
}

.case-studies-page .case-head h3{
  font-size:clamp(22px,2.5vw,31px);
}

.case-gallery{
  padding:0 16px 16px;
  background:var(--dark);
  color:var(--paper);
}

.case-gallery-bar{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:10px 2px;
  border-bottom:1px solid rgba(244,239,230,.12);
}

.case-gallery-title{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#f2e8d8;
  font-size:12px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.case-gallery-title::before{
  content:"";
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 5px rgba(217,111,50,.12);
}

.case-gallery-count{
  color:#a99f90;
  font-size:11px;
  font-weight:750;
  letter-spacing:.04em;
  text-align:right;
}

.case-photo-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(0,.78fr) minmax(0,.78fr);
  grid-template-rows:repeat(2,clamp(145px,14vw,190px));
  gap:10px;
  padding-top:14px;
}

.case-photo{
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(244,239,230,.14);
  border-radius:16px;
  background:#25251f;
  isolation:isolate;
  cursor:zoom-in;
}

.case-photo--lead{
  grid-row:1 / 3;
  border-radius:20px;
}

.case-photo-grid--four .case-photo:nth-child(4){
  grid-column:2 / 4;
}

.case-photo-grid--three .case-photo:nth-child(2){
  grid-column:2 / 4;
  grid-row:1;
}

.case-photo-grid--three .case-photo:nth-child(3){
  grid-column:2 / 4;
  grid-row:2;
}

.case-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.9) contrast(1.02);
  transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}

.case-photo::after{
  content:"";
  position:absolute;
  inset:38% 0 0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(8,8,7,.82));
}

.case-photo-caption{
  position:absolute;
  left:14px;
  right:14px;
  bottom:12px;
  z-index:2;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  color:#fff8ee;
  font-size:12px;
  font-weight:850;
  line-height:1.25;
  text-shadow:0 1px 12px rgba(0,0,0,.55);
}

.case-photo-caption b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  flex:0 0 26px;
  border:1px solid rgba(255,248,238,.42);
  border-radius:50%;
  background:rgba(17,17,15,.34);
  backdrop-filter:blur(8px);
  color:#fff8ee;
  font-size:10px;
  letter-spacing:.03em;
}

.case-photo--lead .case-photo-caption{
  left:18px;
  right:18px;
  bottom:16px;
  font-size:14px;
}

.case-photo:hover img{
  transform:scale(1.045);
  filter:saturate(1) contrast(1.04);
}

.case-photo:focus-visible{
  outline:3px solid var(--accent-2);
  outline-offset:3px;
}

@media (max-width:760px){
  .case-studies-page .page-hero h1{
    font-size:clamp(36px,10.6vw,54px);
  }

  .case-studies-page .page-hero-visual{
    aspect-ratio:4/3;
  }

  .case-studies-page .case-head{
    gap:14px;
    padding:23px 22px;
  }

  .case-studies-page .case-mineral{
    white-space:normal;
  }

  .case-gallery{
    padding:0 0 14px 14px;
  }

  .case-gallery-bar{
    margin-right:14px;
    padding-right:2px;
  }

  .case-photo-grid,
  .case-photo-grid--three,
  .case-photo-grid--four,
  .case-photo-grid--five{
    grid-template-columns:none;
    grid-template-rows:clamp(230px,68vw,310px);
    grid-auto-flow:column;
    grid-auto-columns:min(82vw,420px);
    gap:10px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scrollbar-width:thin;
    scrollbar-color:var(--accent) rgba(244,239,230,.1);
    -webkit-overflow-scrolling:touch;
    padding:14px 14px 8px 0;
  }

  .case-photo-grid .case-photo{
    grid-column:auto !important;
    grid-row:auto !important;
    border-radius:18px;
    scroll-snap-align:start;
  }

  .case-photo-grid::-webkit-scrollbar{
    height:5px;
  }

  .case-photo-grid::-webkit-scrollbar-track{
    background:rgba(244,239,230,.1);
    border-radius:99px;
  }

  .case-photo-grid::-webkit-scrollbar-thumb{
    background:var(--accent);
    border-radius:99px;
  }
}

@media (max-width:480px){
  .case-gallery-bar{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
    padding-top:13px;
    padding-bottom:12px;
  }

  .case-gallery-count{
    padding-left:16px;
    text-align:left;
  }

  .case-photo-grid,
  .case-photo-grid--three,
  .case-photo-grid--four,
  .case-photo-grid--five{
    grid-auto-columns:84vw;
  }
}

@media (prefers-reduced-motion:reduce){
  .case-photo img{
    transition:none;
  }
}
/* ============================================================
   Tools & Workflows documentation hub and guide pages
   Appended 2026-09-23 — all selectors are scoped with tw-
   ============================================================ */
.tw-page{--tw-bg:#f4efe6;--tw-ink:#172535;--tw-muted:#66717b;--tw-line:rgba(23,37,53,.16);--tw-accent:#a65322;min-height:100vh;background:#f4efe6;color:var(--tw-ink)}
.tw-page [hidden]{display:none!important}.tw-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.tw-docs-shell{width:min(100%,1760px);min-height:calc(100vh - 84px);margin:0 auto;display:grid;align-items:start;background:#f4efe6}
.tw-docs-shell-hub{grid-template-columns:300px minmax(0,1fr)}.tw-docs-shell-article{grid-template-columns:280px minmax(0,1fr) 270px}
.tw-doc-sidebar{position:sticky;top:84px;align-self:start;height:calc(100vh - 84px);padding:44px 28px 64px;overflow-y:auto;border-right:1px solid var(--tw-line);background:#f4efe6;scrollbar-width:thin}
.tw-sidebar-home{display:flex;gap:10px;align-items:center;margin:0 0 28px;color:var(--tw-ink);font-size:16px;font-weight:800;line-height:1.25;text-decoration:none}
.tw-sidebar-home>span{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:26px;padding:0 8px;border-radius:999px;background:var(--tw-ink);color:#fff;font-size:10px;letter-spacing:.12em}
.tw-sidebar-search{display:flex;align-items:center;height:43px;margin:0 0 30px;padding:0 13px;border:1px solid var(--tw-line);border-radius:4px;background:rgba(255,255,255,.48)}
.tw-sidebar-search svg{width:18px;height:18px;margin-right:9px;fill:none;stroke:#73808b;stroke-width:1.7}.tw-sidebar-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--tw-ink);font:inherit;font-size:13px}.tw-sidebar-search input::placeholder{color:#8a928f}
.tw-sidebar-nav{display:block}.tw-sidebar-all{display:flex;align-items:center;justify-content:space-between;margin:0 0 22px;padding:11px 12px;border-radius:4px;color:var(--tw-ink);font-size:14px;font-weight:800;text-decoration:none}.tw-sidebar-all>span{color:#929995;font-size:12px}.tw-sidebar-all.is-active{background:rgba(166,83,34,.1);color:#87401c}
.tw-sidebar-group{padding:22px 0;border-top:1px solid var(--tw-line)}.tw-sidebar-group h3{margin:0 0 10px;color:#273747;font-size:12px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;line-height:1.4}
.tw-sidebar-link{display:flex;gap:10px;align-items:flex-start;margin:2px 0;padding:9px 10px;border-radius:4px;color:#66717b;font-size:13px;line-height:1.42;text-decoration:none;transition:background .18s ease,color .18s ease}.tw-sidebar-link>span{flex:0 0 22px;color:#a0a6a2;font-size:10px;font-weight:800;letter-spacing:.06em}.tw-sidebar-link:hover,.tw-sidebar-link.is-active{background:rgba(255,255,255,.68);color:#8a421d}.tw-sidebar-link.is-active{box-shadow:inset 3px 0 0 #b96431}
.tw-docs-main{min-width:0;padding:56px clamp(34px,4.5vw,76px) 112px}.tw-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0 0 42px;color:#7e888f;font-size:13px;line-height:1.45}.tw-breadcrumb a{color:inherit;text-decoration:none}.tw-breadcrumb a:hover{color:var(--tw-accent)}
.tw-hub-hero{padding:0 0 68px;border-bottom:1px solid var(--tw-line);background:#f4efe6}.tw-eyebrow,.tw-card-label{display:block;color:var(--tw-accent);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.tw-hub-hero h1,.tw-article-hero h1{max-width:1100px;margin:14px 0 24px;color:#000;font-family:Inter,"Noto Sans SC","Noto Sans",Arial,sans-serif;font-size:clamp(44px,5.3vw,70px);font-weight:800;line-height:1.06;letter-spacing:-.045em}.tw-lede{max-width:980px;margin:0;color:#52616d;font-size:clamp(17px,1.55vw,21px);line-height:1.76}
.tw-guides-section{padding:68px 0 0}.tw-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:16px 52px;align-items:end;margin-bottom:36px}.tw-section-head .tw-eyebrow{grid-column:1/-1}.tw-section-head h2{margin:0;color:var(--tw-ink);font-size:clamp(28px,3vw,42px);font-weight:750;line-height:1.16;letter-spacing:-.025em}.tw-section-head p{margin:0;color:var(--tw-muted);font-size:15px;line-height:1.72}
.tw-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tw-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;min-height:270px;padding:28px;border:1px solid rgba(23,37,53,.14);border-radius:5px;background:rgba(255,255,255,.62);box-shadow:0 7px 24px rgba(48,41,31,.035);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.tw-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.9);box-shadow:0 13px 30px rgba(48,41,31,.08)}.tw-card-number{color:#a2a8a4;font-size:14px;font-weight:800;letter-spacing:.08em}.tw-card h2{margin:10px 0 14px;color:#000;font-size:clamp(20px,1.65vw,26px);font-weight:800;line-height:1.25;letter-spacing:-.02em}.tw-card h2 a{color:inherit;text-decoration:none}.tw-card p{margin:0 0 22px;color:var(--tw-muted);font-size:14px;line-height:1.7}.tw-card-link{display:inline-flex;gap:9px;align-items:center;color:#8c431e;font-size:13px;font-weight:800;text-decoration:none}
.tw-article-main{min-width:0;padding:54px clamp(34px,4.3vw,68px) 104px}.tw-article-hero{padding:0 0 46px;border-bottom:1px solid var(--tw-line);background:#f4efe6}.tw-article-hero h1{margin-top:13px;font-size:clamp(38px,4.3vw,61px)}.tw-article-hero .tw-lede{font-size:18px;line-height:1.72}
.tw-article-content{min-width:0;padding-top:8px}.tw-article-content>p,.tw-article-content>blockquote{margin:0 0 22px;color:#334352;font-size:17px;line-height:1.88}.tw-article-content>p:first-of-type{margin-top:38px;font-size:19px;line-height:1.8}.tw-article-content h2{scroll-margin-top:108px;margin:58px 0 22px;padding-top:26px;border-top:1px solid var(--tw-line);color:#000;font-size:clamp(27px,2.65vw,38px);font-weight:800;line-height:1.26;letter-spacing:-.025em}.tw-article-content h3{margin:38px 0 16px;color:#000;font-size:21px;font-weight:800;line-height:1.4}.tw-article-content blockquote{padding:20px 24px;border-left:3px solid #b96431;background:rgba(255,255,255,.54);color:#26384a}.tw-article-content a{color:#8d431e}.tw-article-content .tw-source-bold{color:#000;font-weight:800}.tw-article-hero .tw-lede{color:#000;font-weight:800}
.tw-table-wrap{max-width:100%;margin:32px 0;overflow-x:auto;border:1px solid var(--tw-line);border-radius:4px;background:rgba(255,255,255,.62)}.tw-table{width:100%;min-width:820px;border-collapse:collapse;background:transparent;font-size:14px}.tw-table th,.tw-table td{padding:15px 14px;border-right:1px solid var(--tw-line);border-bottom:1px solid var(--tw-line);vertical-align:top;text-align:left;line-height:1.58}.tw-table th{background:#e6ddd0;color:#000;font-size:12px;font-weight:800;letter-spacing:.025em}.tw-table tr:last-child td{border-bottom:0}.tw-table th:last-child,.tw-table td:last-child{border-right:0}
.tw-article-aside{position:sticky;top:84px;align-self:start;max-height:calc(100vh - 84px);padding:54px 24px 48px;overflow-y:auto;border-left:1px solid var(--tw-line);background:#f4efe6}.tw-toc-card>span{display:block;margin-bottom:18px;color:var(--tw-ink);font-size:17px;font-weight:800}.tw-toc-card ol{display:grid;gap:12px;margin:0;padding:0;list-style:none}.tw-toc-card li{position:relative;padding-left:14px}.tw-toc-card li:before{content:"";position:absolute;top:.65em;left:0;width:4px;height:4px;border-radius:50%;background:#a9aeaa}.tw-toc-card a{color:#66717b;font-size:13px;line-height:1.5;text-decoration:none}.tw-toc-card a:hover{color:var(--tw-accent)}.tw-back-link{display:block;margin-top:28px;padding-top:20px;border-top:1px solid var(--tw-line);color:#8b421d;font-size:13px;font-weight:800;line-height:1.5;text-decoration:none}
.tw-article-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:66px 0 0;padding-top:28px;border-top:1px solid var(--tw-line)}.tw-pager-link{display:flex;flex-direction:column;gap:7px;padding:18px 20px;border:1px solid var(--tw-line);border-radius:4px;background:rgba(255,255,255,.45);color:var(--tw-ink);text-decoration:none}.tw-pager-link>span{color:#8c431e;font-size:12px;font-weight:800}.tw-pager-link>strong{font-size:14px;line-height:1.45}.tw-pager-next{text-align:right;grid-column:2}.tw-cta{display:flex;gap:36px;align-items:flex-end;justify-content:space-between;margin-top:44px;padding:34px 36px;border:1px solid var(--tw-line);border-radius:5px;background:rgba(255,255,255,.6)}.tw-cta h2{max-width:650px;margin:9px 0 10px;color:var(--tw-ink);font-size:clamp(25px,2.7vw,36px);font-weight:750;line-height:1.2}.tw-cta p{max-width:680px;margin:0;color:var(--tw-muted);font-size:14px;line-height:1.7}.tw-cta .btn{flex:0 0 auto}
@media(max-width:1450px){.tw-docs-shell-hub{grid-template-columns:270px minmax(0,1fr)}.tw-docs-shell-article{grid-template-columns:250px minmax(0,1fr) 230px}.tw-doc-sidebar{padding-right:22px;padding-left:22px}.tw-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-article-aside{padding-right:18px;padding-left:18px}}
@media(max-width:1180px){.tw-docs-shell-article{grid-template-columns:250px minmax(0,1fr)}.tw-article-aside{display:none}.tw-section-head{grid-template-columns:1fr}.tw-section-head .tw-eyebrow{grid-column:auto}}
@media(max-width:900px){.tw-docs-shell-hub,.tw-docs-shell-article{grid-template-columns:1fr}.tw-doc-sidebar{position:static;height:auto;padding:28px 24px;border-right:0;border-bottom:1px solid var(--tw-line)}.tw-sidebar-home{margin-bottom:20px}.tw-sidebar-search{max-width:460px;margin-bottom:20px}.tw-sidebar-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}.tw-sidebar-all{grid-column:1/-1;margin:0}.tw-sidebar-group{padding:16px 0}.tw-docs-main,.tw-article-main{padding:42px 24px 82px}.tw-breadcrumb{margin-bottom:32px}.tw-hub-hero{padding-bottom:48px}.tw-guides-section{padding-top:48px}.tw-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.tw-sidebar-nav{grid-template-columns:1fr}.tw-card-grid,.tw-article-pager{grid-template-columns:1fr}.tw-card{min-height:0;padding:24px}.tw-hub-hero h1,.tw-article-hero h1{font-size:clamp(34px,11vw,48px)}.tw-article-content>p,.tw-article-content>blockquote{font-size:16px}.tw-article-content>p:first-of-type{font-size:17px}.tw-article-content h2{margin-top:48px}.tw-pager-next{grid-column:auto;text-align:left}.tw-cta{padding:28px 24px}}
@media(prefers-reduced-motion:reduce){.tw-card,.tw-sidebar-link{transition:none}}
