/* =========================================================================
   Rent Internet Thailand — site.css
   รวมจาก _design/site.css + inline <style> ทุกหน้า
   โครง: (1) GLOBAL core ใช้ทุกหน้า  (2) บล็อกเฉพาะหน้า scope ใต้ body class
   กันคลาสชนกันข้ามหน้า (.ov/.statrow/.out/.feat/.chan/.wcard ฯลฯ)
   ========================================================================= */

/* ============================ TOKENS + BASE ============================ */
:root{--ink:#0B1220;--ink2:#101a30;--paper:#fff;--mist:#f5f7fb;--line:#e6eaf2;--accent:#1f5bff;--accent2:#00cf88;--muted:#5b6577;--txt:#141a26}
*{box-sizing:border-box}
body{margin:0}
.site{font-family:'IBM Plex Sans Thai',system-ui,sans-serif;color:var(--txt);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased}
.site h1,.site h2,.site h3,.site h4{margin:0;line-height:1.12;letter-spacing:-.01em}
.site p{margin:0}
/* ใช้ :where() ลด specificity ของ base link (เหลือ 0,1,0) เพื่อไม่ให้ทับสีปุ่ม/คอมโพเนนต์
   (.btn-*, .brand, .langbtn, .navcta, .plink ฯลฯ ที่เป็น <a> class เดียว) */
.site :where(a){color:var(--accent);text-decoration:none}
.site :where(a):hover{color:#1748d6}
.mono{font-family:'IBM Plex Mono',monospace;font-weight:600;letter-spacing:.06em}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.sec{padding:104px 0}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.h1{font-size:clamp(38px,5.4vw,68px);font-weight:700}
.h2{font-size:clamp(30px,4vw,46px);font-weight:700}
.lead{font-size:19px;color:var(--muted);max-width:640px;text-wrap:pretty}
.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:#fff;color:var(--ink);padding:12px 18px;border-radius:0 0 10px 0}
.skip-link:focus{left:0}

/* fallback รูป (แทน image-slot ที่ไม่มีรูปจริง) */
.rit-ph{background:#eef1f7;position:absolute;inset:0;display:block}
.rit-imgwrap{position:absolute;inset:0}
.rit-imgwrap img{width:100%;height:100%;object-fit:cover}

/* ================================ BUTTONS ================================ */
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 26px;border-radius:11px;font-family:inherit;font-weight:600;font-size:15.5px;cursor:pointer;border:1.5px solid transparent;transition:.18s;white-space:nowrap;text-decoration:none}
.btn svg{width:18px;height:18px}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:#1748d6;transform:translateY(-1px);color:#fff}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.28)}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.06);color:#fff}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#1c283f;transform:translateY(-1px);color:#fff}
.btn-outline{background:#fff;color:var(--ink);border-color:var(--line)}
.btn-outline:hover{border-color:#c7d3ef;color:var(--ink)}
.btn-line{background:#06c755;color:#fff}
.btn-line:hover{background:#05b34c;transform:translateY(-1px);color:#fff}

/* ================================== NAV ================================== */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;padding-top:0;padding-bottom:0}
.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:17.5px;letter-spacing:-.01em;color:var(--ink)}
.brand:hover{color:var(--ink)}
.brandmark{width:34px;height:34px;border-radius:9px;background:var(--ink);display:grid;place-items:center;color:#fff;flex-shrink:0}
.brandmark svg{width:19px;height:19px}
.brandmark img{width:34px;height:34px;border-radius:9px;object-fit:cover}
.navlinks{display:flex;align-items:center;gap:30px}
.navlinks a{color:#3a4353;font-weight:500;font-size:15px}
.navlinks a:hover{color:var(--ink)}
.navlinks a.active,.navlinks .current-menu-item>a{color:var(--ink);font-weight:600}
.navr{display:flex;align-items:center;gap:14px}
.langbtn{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:13px;letter-spacing:.05em;color:#3a4353;background:var(--mist);border:1px solid var(--line);padding:8px 13px;border-radius:9px;cursor:pointer;text-decoration:none}
.langbtn:hover{border-color:#c9d1e0;color:#3a4353}
.navcta{background:var(--ink);color:#fff;padding:11px 20px;border-radius:9px;font-weight:600;font-size:14.5px}
.navcta:hover{background:#1c283f;color:#fff}

/* hamburger + off-canvas (เพิ่มใหม่ — ดีไซน์เดิมแค่ซ่อน .navlinks) */
.navtoggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border-radius:9px;background:var(--mist);border:1px solid var(--line);color:var(--ink);cursor:pointer}
.navtoggle svg{width:22px;height:22px}
.mobile-menu{position:fixed;inset:0;z-index:60;visibility:hidden;pointer-events:none}
.mobile-menu[aria-hidden="false"]{visibility:visible;pointer-events:auto}
.mobile-menu .mm-backdrop{position:absolute;inset:0;background:rgba(11,18,32,.5);opacity:0;transition:.2s}
.mobile-menu[aria-hidden="false"] .mm-backdrop{opacity:1}
.mm-panel{position:absolute;top:0;right:0;height:100%;width:min(84vw,340px);background:#fff;box-shadow:-20px 0 60px -30px rgba(11,18,32,.5);transform:translateX(100%);transition:transform .22s ease;display:flex;flex-direction:column;padding:22px 24px;gap:6px;overflow-y:auto}
.mobile-menu[aria-hidden="false"] .mm-panel{transform:translateX(0)}
.mm-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.mm-close{width:40px;height:40px;border-radius:9px;background:var(--mist);border:1px solid var(--line);color:var(--ink);cursor:pointer;display:grid;place-items:center}
.mm-close svg{width:20px;height:20px}
.mm-panel a.mm-link{display:block;color:#3a4353;font-weight:500;font-size:16px;padding:13px 8px;border-bottom:1px solid var(--line)}
.mm-panel a.mm-link:hover{color:var(--ink)}
.mm-foot{margin-top:18px;display:flex;flex-direction:column;gap:12px}

/* =============================== SECTION HEAD ============================ */
.sechead{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.sechead .h2{margin-top:14px}

/* =============================== PAGE HERO =============================== */
.pagehero{background:radial-gradient(900px 460px at 82% -30%,rgba(31,91,255,.34),transparent 60%),var(--ink);color:#fff;padding:64px 0 72px}
.crumb{font-family:'IBM Plex Mono',monospace;font-size:12.5px;letter-spacing:.08em;color:#8fa4c8;display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.crumb a{color:#8fa4c8}.crumb a:hover{color:#fff}
.pagehero h1{font-size:clamp(34px,4.6vw,54px);font-weight:700;max-width:18ch;margin:22px 0 18px;line-height:1.06}
.pagehero .lead{color:#c3ccdd}
.pagehero .hcta{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}

/* ============================ CTA BAND / CARD =========================== */
.ctaband{background:radial-gradient(900px 500px at 80% -20%,rgba(31,91,255,.5),transparent 60%),var(--ink);border-radius:26px;padding:60px 56px;color:#fff;display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center}
.ctaband .h2{color:#fff}.ctaband .lead{color:#c3ccdd;margin-top:16px}
.ctaband .row{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}

/* ================================ FOOTER ================================ */
.foot{background:var(--ink);color:#fff;padding:70px 0 34px;border-top:1px solid rgba(255,255,255,.08)}
.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:40px}
.foot .brand{color:#fff}
.foot .brandmark{background:rgba(255,255,255,.1)}
.footcol h4{font-size:13px;font-family:'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#7a869e;margin:0 0 16px;font-weight:600}
.footcol a{display:block;color:#c3ccdd;font-size:14.5px;margin-bottom:11px}
.footcol a:hover{color:#fff}
.footdesc{color:#9aa6bd;font-size:14.5px;margin-top:16px;max-width:34ch;text-wrap:pretty}
.footbar{display:flex;justify-content:space-between;align-items:center;margin-top:52px;padding-top:26px;border-top:1px solid rgba(255,255,255,.08);color:#7a869e;font-size:13.5px;flex-wrap:wrap;gap:12px}

/* ============================ SHARED: chips ============================ */
.chips{display:flex;gap:11px;flex-wrap:wrap;margin-top:44px}
.chip{font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:600;letter-spacing:.03em;padding:10px 18px;border-radius:100px;border:1px solid var(--line);background:#fff;color:#3a4353;cursor:pointer;transition:.16s;text-decoration:none}
.chip:hover{border-color:#c7d3ef}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}

/* ================================================================= *
 *  HOME  (body.home)                                                *
 * ================================================================= */
.home .hero{position:relative;overflow:hidden;background:radial-gradient(1100px 560px at 74% -12%,rgba(31,91,255,.42),transparent 58%),radial-gradient(760px 460px at 6% 116%,rgba(0,207,136,.14),transparent 60%),var(--ink);color:#fff}
.home .gridlines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:radial-gradient(1000px 600px at 60% 20%,#000,transparent 75%);mask-image:radial-gradient(1000px 600px at 60% 20%,#000,transparent 75%)}
.home .herowrap{position:relative;padding-top:118px}
.home .hero-eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:'IBM Plex Mono',monospace;font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#9fc0ff;background:rgba(31,91,255,.16);border:1px solid rgba(120,160,255,.28);padding:8px 15px;border-radius:100px}
.livedot{width:8px;height:8px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 4px rgba(0,207,136,.22);animation:pulse 1.8s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(0,207,136,0)}}
.home .hero .h1{font-size:clamp(38px,5.4vw,68px);font-weight:700;line-height:1.05;max-width:14ch;margin:26px 0 22px}
.home .hero .h1 .accent{color:#7fa6ff}
.home .herolead{font-size:20px;color:#c3ccdd;max-width:600px;text-wrap:pretty}
.home .herocta{display:flex;gap:14px;margin:38px 0 0;flex-wrap:wrap}
.home .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;margin-top:74px}
.home .stat{background:linear-gradient(180deg,rgba(255,255,255,.03),transparent);padding:28px 26px}
.home .stat .num{font-family:'IBM Plex Mono',monospace;font-size:34px;font-weight:600;color:#fff;letter-spacing:-.02em}
.home .stat .lbl{font-size:14px;color:#9aa6bd;margin-top:6px}
.home .herofoot{height:118px}
/* use cases */
.home .usegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:56px}
.usecard{border:1px solid var(--line);border-radius:16px;padding:30px 26px;transition:.2s;background:#fff}
.usecard:hover{border-color:#c7d3ef;box-shadow:0 18px 40px -24px rgba(20,40,90,.28);transform:translateY(-3px)}
.iconbox{width:50px;height:50px;border-radius:12px;background:var(--mist);display:grid;place-items:center;color:var(--accent);margin-bottom:20px}
.iconbox svg{width:24px;height:24px}
.usecard h3{font-size:20px;font-weight:600;margin-bottom:9px}
.usecard p{font-size:15px;color:var(--muted)}
/* equipment section (home) */
.home .equip{background:var(--mist)}
.home .pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:56px}
.home .pfull{background:var(--ink);color:#fff;border-color:transparent}
.home .pfull .pimg{aspect-ratio:auto}
.home .pfull .ptag{color:#7fa6ff}
.home .pfull .pdesc{color:#b9c3d6}
.home .pfull .pspec{background:rgba(255,255,255,.08);color:#cdd6e6}
.home .pfull .plink{color:#fff}
.home .installicon{padding:40px;display:grid;place-items:center;color:#7fa6ff}
.home .installicon svg{width:80px;height:80px}
/* why */
.home .whygrid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
.home .featlist{display:flex;flex-direction:column;gap:4px;margin-top:40px}
.home .feat{display:flex;gap:18px;padding:22px 0;border-top:1px solid var(--line)}
.home .feat:last-child{border-bottom:1px solid var(--line)}
.home .featnum{font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:600;color:var(--accent);padding-top:3px;min-width:34px}
.home .feat h3{font-size:19px;font-weight:600;margin-bottom:6px}
.home .feat p{font-size:15px;color:var(--muted)}
.home .whyimg{aspect-ratio:4/5;border-radius:20px;overflow:hidden;position:relative}
/* process */
.home .process{background:var(--ink);color:#fff}
.home .pstep-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:56px}
.home .process .pstep{position:relative;padding-top:28px;border-top:1px solid rgba(255,255,255,.16)}
.home .process .pstep .st{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--accent2);font-weight:600}
.home .process .pstep h3{font-size:20px;font-weight:600;margin:18px 0 10px}
.home .process .pstep p{font-size:14.5px;color:#a9b4c9}
/* works */
.home .worksgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:56px}
.home .workcard{position:relative;aspect-ratio:16/10;border-radius:18px;overflow:hidden}
.home .workcard .cap{position:absolute;left:0;right:0;bottom:0;padding:56px 26px 24px;background:linear-gradient(transparent,rgba(8,14,28,.86));color:#fff;pointer-events:none}
.home .workcard .cap .k{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#8fb3ff;font-weight:600}
.home .workcard .cap h3{font-size:22px;font-weight:600;margin-top:7px}
.home .logos{margin-top:64px;text-align:center}
.home .logos .k{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.home .logorow{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:26px}
.logoslot{aspect-ratio:2/1;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;position:relative}
/* contact */
.home .contact{background:var(--mist)}
.home .ctacard{background:radial-gradient(900px 500px at 80% -20%,rgba(31,91,255,.5),transparent 60%),var(--ink);border-radius:26px;padding:66px 60px;color:#fff;display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}
.home .ctacard .h2{color:#fff}
.home .ctacard .lead{color:#c3ccdd;margin-top:18px}
.home .channels{display:flex;flex-direction:column;gap:16px}
.home .channels .chan{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:20px 22px;transition:.18s}
.home .channels .chan:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.24)}
.home .channels .chanic{width:48px;height:48px;border-radius:11px;display:grid;place-items:center;flex-shrink:0}
.home .channels .chanic.line{background:#06c755;color:#fff}
.home .channels .chanic.tel{background:var(--accent);color:#fff}
.home .channels .chanic svg{width:24px;height:24px}
.home .channels .chan .cl{font-size:13px;color:#9aa6bd}
.home .channels .chan .cv{font-size:20px;font-weight:600;color:#fff;font-family:'IBM Plex Mono',monospace}

/* ==================== SHARED PRODUCT CARD (.pcard) ==================== */
/* ใช้ทั้ง Home และ Equipment archive — นิยามกลางครั้งเดียว */
.pcard{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:.2s}
.pcard:hover{box-shadow:0 24px 50px -28px rgba(20,40,90,.3);transform:translateY(-4px)}
.pimg{aspect-ratio:16/11;background:#eef1f7;position:relative}
.pbody{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
.ptag{font-family:'IBM Plex Mono',monospace;font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.pcard h3{font-size:21px;font-weight:600;margin:9px 0 10px}
.pdesc{font-size:14.5px;color:var(--muted);flex:1;text-wrap:pretty}
.pspec{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:#3a4353;background:var(--mist);border-radius:8px;padding:9px 12px;margin:18px 0 0;display:inline-block;width:fit-content}
.plink{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:14.5px;color:var(--ink)}
.plink svg{width:16px;height:16px;transition:.18s}
.plink:hover{color:var(--accent)}
.plink:hover svg{transform:translateX(3px)}
.pact{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.pask{font-size:14px;font-weight:600;color:var(--muted)}
.pask:hover{color:var(--accent)}
.pimg{display:block}

/* ================================================================= *
 *  EQUIPMENT ARCHIVE  (body.post-type-archive-rit_equipment)        *
 * ================================================================= */
.post-type-archive-rit_equipment .pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.post-type-archive-rit_equipment .helpbar{display:flex;align-items:center;gap:18px;margin-top:26px;padding:22px 26px;background:var(--mist);border:1px solid var(--line);border-radius:16px;flex-wrap:wrap}
.post-type-archive-rit_equipment .helpbar p{font-size:15px;color:var(--muted);flex:1;min-width:220px}

/* ================================================================= *
 *  EQUIPMENT DETAIL  (body.single-rit_equipment)                    *
 * ================================================================= */
.single-rit_equipment .crumbbar{border-bottom:1px solid var(--line);background:#fff}
.single-rit_equipment .crumbbar .wrap{padding-top:20px;padding-bottom:20px}
.single-rit_equipment .crumbbar .crumb{color:var(--muted)}
.single-rit_equipment .crumbbar .crumb a{color:var(--muted)}
.single-rit_equipment .crumbbar .crumb a:hover{color:var(--ink)}
.single-rit_equipment .pd{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;padding:64px 0 96px}
.single-rit_equipment .gmain{aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#eef1f7;position:relative}
.single-rit_equipment .thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}
.single-rit_equipment .thumb{aspect-ratio:1;border-radius:12px;overflow:hidden;background:#eef1f7;position:relative}
.single-rit_equipment .info .ptag{font-size:12px}
.single-rit_equipment .info h1{font-size:clamp(32px,4vw,46px);font-weight:700;margin:12px 0 16px}
.single-rit_equipment .info .desc{font-size:17px;color:var(--muted);text-wrap:pretty}
.single-rit_equipment .keyspec{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-direction:column;gap:14px}
.single-rit_equipment .keyspec li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px}
.single-rit_equipment .keyspec svg{width:20px;height:20px;color:var(--accent2);flex-shrink:0;margin-top:2px}
.single-rit_equipment .rentcard{margin-top:30px;border:1px solid var(--line);border-radius:16px;padding:24px 26px;background:var(--mist)}
.single-rit_equipment .rentcard .rl{font-size:13.5px;color:var(--muted)}
.single-rit_equipment .rentcard .rv{font-size:24px;font-weight:700;color:var(--ink);margin-top:4px}
.single-rit_equipment .rentcard .rv small{font-size:14px;font-weight:500;color:var(--muted)}
.single-rit_equipment .btnrow{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}
.single-rit_equipment .specsec{background:var(--mist)}
.single-rit_equipment .spectbl{margin-top:44px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.single-rit_equipment .specrow{display:grid;grid-template-columns:280px 1fr;gap:24px;padding:20px 28px;border-bottom:1px solid var(--line)}
.single-rit_equipment .specrow:last-child{border-bottom:none}
.single-rit_equipment .specrow .sk{font-weight:600;color:var(--ink);font-size:15px}
.single-rit_equipment .specrow .sv{color:var(--muted);font-size:15px}
.single-rit_equipment .hl{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.single-rit_equipment .hlcard{border:1px solid var(--line);border-radius:16px;padding:28px 26px;background:#fff}
.single-rit_equipment .hlic{width:46px;height:46px;border-radius:11px;background:var(--mist);display:grid;place-items:center;color:var(--accent);margin-bottom:18px}
.single-rit_equipment .hlic svg{width:23px;height:23px}
.single-rit_equipment .hlcard h3{font-size:18px;font-weight:600;margin-bottom:8px}
.single-rit_equipment .hlcard p{font-size:14.5px;color:var(--muted)}
.single-rit_equipment .rel{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.single-rit_equipment .relcard{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;transition:.2s}
.single-rit_equipment .relcard:hover{box-shadow:0 20px 44px -28px rgba(20,40,90,.3);transform:translateY(-3px)}
.single-rit_equipment .relimg{aspect-ratio:16/10;background:#eef1f7;position:relative}
.single-rit_equipment .relbody{padding:20px 22px}
.single-rit_equipment .relbody .ptag{font-size:11px}
.single-rit_equipment .relbody h3{font-size:18px;font-weight:600;margin:7px 0 0}

/* ================================================================= *
 *  SOLUTIONS ARCHIVE  (body.post-type-archive-rit_solution)         *
 * ================================================================= */
.post-type-archive-rit_solution .solrow{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:64px 0;border-top:1px solid var(--line)}
.post-type-archive-rit_solution .solrow:first-of-type{border-top:none}
.post-type-archive-rit_solution .solimg{aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#eef1f7;position:relative}
.post-type-archive-rit_solution .solnum{font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:600;letter-spacing:.14em;color:var(--accent)}
.post-type-archive-rit_solution .soltext h2{font-size:clamp(26px,3.2vw,38px);font-weight:700;margin:14px 0 16px}
.post-type-archive-rit_solution .soltext p{font-size:17px;color:var(--muted);text-wrap:pretty}
.post-type-archive-rit_solution .gear{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0 0}
.post-type-archive-rit_solution .gear span{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:600;color:#3a4353;background:var(--mist);border:1px solid var(--line);padding:7px 13px;border-radius:100px}
.post-type-archive-rit_solution .out{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:12px}
.post-type-archive-rit_solution .out li{display:flex;gap:11px;align-items:flex-start;font-size:15.5px}
.post-type-archive-rit_solution .out svg{width:19px;height:19px;color:var(--accent2);flex-shrink:0;margin-top:2px}
.post-type-archive-rit_solution .sollink{display:inline-flex;align-items:center;gap:7px;margin-top:26px;font-weight:600;font-size:15px;color:var(--ink)}
.post-type-archive-rit_solution .sollink svg{width:16px;height:16px;transition:.18s}
.post-type-archive-rit_solution .sollink:hover{color:var(--accent)}
.post-type-archive-rit_solution .sollink:hover svg{transform:translateX(3px)}
.post-type-archive-rit_solution .entband{margin-top:24px;background:var(--ink);color:#fff;border-radius:24px;padding:52px 54px;display:grid;grid-template-columns:1.2fr 1fr;gap:44px;align-items:center}
.post-type-archive-rit_solution .entband h2{font-size:30px;font-weight:700;color:#fff;margin-bottom:14px}
.post-type-archive-rit_solution .entband p{color:#c3ccdd;font-size:16.5px;text-wrap:pretty}
.post-type-archive-rit_solution .entband .gear span{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#cdd6e6}

/* ================================================================= *
 *  SOLUTION DETAIL  (body.single-rit_solution)                      *
 * ================================================================= */
.single-rit_solution .shero{max-width:1136px;margin:-40px auto 0;position:relative;z-index:2}
.single-rit_solution .sheroimg{aspect-ratio:16/6.5;border-radius:22px;overflow:hidden;background:#eef1f7;position:relative;box-shadow:0 40px 80px -50px rgba(11,18,32,.6)}
.single-rit_solution .ov{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.single-rit_solution .ov h2{font-size:clamp(26px,3.2vw,38px);font-weight:700;margin-bottom:18px}
.single-rit_solution .ov p{font-size:17px;color:var(--muted);text-wrap:pretty;margin-bottom:18px}
.single-rit_solution .out{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}
.single-rit_solution .out li{display:flex;gap:13px;align-items:flex-start}
.single-rit_solution .out svg{width:22px;height:22px;color:var(--accent2);flex-shrink:0;margin-top:2px}
.single-rit_solution .out b{display:block;font-size:16.5px;font-weight:600;color:var(--ink);margin-bottom:3px}
.single-rit_solution .out span.d{font-size:14.5px;color:var(--muted)}
.single-rit_solution .gearsec{background:var(--mist)}
.single-rit_solution .gcards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.single-rit_solution .gcard{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.2s;display:flex;flex-direction:column}
.single-rit_solution .gcard:hover{box-shadow:0 22px 46px -28px rgba(20,40,90,.3);transform:translateY(-4px)}
.single-rit_solution .gimg{aspect-ratio:16/10;background:#eef1f7;position:relative}
.single-rit_solution .gbody{padding:22px 24px 24px}
.single-rit_solution .gbody .ptag{font-size:11px}
.single-rit_solution .gbody h3{font-size:19px;font-weight:600;margin:8px 0 8px}
.single-rit_solution .gbody p{font-size:14px;color:var(--muted)}
.single-rit_solution .pstep-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:44px}
.single-rit_solution .pstep{padding-top:24px;border-top:2px solid var(--line)}
.single-rit_solution .pstep .st{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--accent);font-weight:600}
.single-rit_solution .pstep h3{font-size:18px;font-weight:600;margin:14px 0 9px}
.single-rit_solution .pstep p{font-size:14px;color:var(--muted)}
.single-rit_solution .statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:8px}
.single-rit_solution .statcell{background:#fff;padding:34px 30px}
.single-rit_solution .statcell .n{font-family:'IBM Plex Mono',monospace;font-size:38px;font-weight:600;color:var(--ink);letter-spacing:-.02em}
.single-rit_solution .statcell .l{font-size:14.5px;color:var(--muted);margin-top:8px}
.single-rit_solution .other{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
.single-rit_solution .ocard{border:1px solid var(--line);border-radius:16px;padding:26px 24px;background:#fff;transition:.18s}
.single-rit_solution .ocard:hover{border-color:#c7d3ef;transform:translateY(-3px)}
.single-rit_solution .ocard .k{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;color:var(--accent);font-weight:600}
.single-rit_solution .ocard h3{font-size:19px;font-weight:600;margin:10px 0 0}

/* ================================================================= *
 *  WORKS ARCHIVE  (body.post-type-archive-rit_work)                 *
 * ================================================================= */
.post-type-archive-rit_work .wfeat{position:relative;margin-top:36px;border-radius:24px;overflow:hidden;aspect-ratio:21/8;display:block}
.post-type-archive-rit_work .wfeat .cap{position:absolute;left:0;right:0;bottom:0;padding:120px 48px 44px;background:linear-gradient(transparent,rgba(8,14,28,.9));color:#fff;pointer-events:none}
.post-type-archive-rit_work .wfeat .k{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#8fb3ff;font-weight:600}
.post-type-archive-rit_work .wfeat h2{font-size:clamp(26px,3.2vw,40px);font-weight:700;margin:10px 0 10px;max-width:20ch}
.post-type-archive-rit_work .wfeat p{font-size:16px;color:#c3ccdd;max-width:52ch}
.post-type-archive-rit_work .wgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
.post-type-archive-rit_work .wcard{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/3;display:block;transition:.2s}
.post-type-archive-rit_work .wcard:hover{transform:translateY(-4px);box-shadow:0 26px 52px -30px rgba(11,18,32,.6)}
.post-type-archive-rit_work .wcard .cap{position:absolute;left:0;right:0;bottom:0;padding:64px 24px 22px;background:linear-gradient(transparent,rgba(8,14,28,.9));color:#fff;pointer-events:none}
.post-type-archive-rit_work .wcard .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#8fb3ff;font-weight:600}
.post-type-archive-rit_work .wcard h3{font-size:20px;font-weight:600;margin-top:7px;line-height:1.2}
.post-type-archive-rit_work .logos{margin-top:80px;text-align:center}
.post-type-archive-rit_work .logos .k{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.post-type-archive-rit_work .logorow{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:26px}
.post-type-archive-rit_work .statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:80px}
.post-type-archive-rit_work .statcell{background:#fff;padding:34px 30px}
.post-type-archive-rit_work .statcell .n{font-family:'IBM Plex Mono',monospace;font-size:36px;font-weight:600;color:var(--ink);letter-spacing:-.02em}
.post-type-archive-rit_work .statcell .l{font-size:14px;color:var(--muted);margin-top:8px}

/* ================================================================= *
 *  WORK DETAIL  (body.single-rit_work)                              *
 * ================================================================= */
.single-rit_work .whero{max-width:1136px;margin:-40px auto 0;position:relative;z-index:2}
.single-rit_work .wheroimg{aspect-ratio:16/6.5;border-radius:22px;overflow:hidden;background:#eef1f7;position:relative;box-shadow:0 40px 80px -50px rgba(11,18,32,.6)}
.single-rit_work .facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:48px}
.single-rit_work .factcell{background:#fff;padding:26px 28px}
.single-rit_work .factcell .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}
.single-rit_work .factcell .v{font-size:18px;font-weight:600;color:var(--ink);margin-top:8px}
.single-rit_work .ov{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:8px}
.single-rit_work .ovcol h3{font-size:14px;font-family:'IBM Plex Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.single-rit_work .ovcol p{font-size:16px;line-height:1.7;color:#2a3342;text-wrap:pretty}
.single-rit_work .gearsec{background:var(--mist)}
.single-rit_work .gchips{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.single-rit_work .gchips a{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);padding:14px 20px;border-radius:12px;transition:.16s}
.single-rit_work .gchips a:hover{border-color:#c7d3ef;transform:translateY(-2px)}
.single-rit_work .gchips a .d{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.single-rit_work .gallery{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-top:44px}
.single-rit_work .gcol{display:grid;gap:16px}
.single-rit_work .gbig{aspect-ratio:16/10;border-radius:18px;overflow:hidden;background:#eef1f7;position:relative}
.single-rit_work .gsm{aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:#eef1f7;position:relative}
.single-rit_work .statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:8px}
.single-rit_work .statcell{background:#fff;padding:34px 30px}
.single-rit_work .statcell .n{font-family:'IBM Plex Mono',monospace;font-size:40px;font-weight:600;color:var(--ink);letter-spacing:-.02em}
.single-rit_work .statcell .l{font-size:14.5px;color:var(--muted);margin-top:8px}
.single-rit_work .quote{max-width:860px;margin:0 auto;text-align:center}
.single-rit_work .quote p{font-size:clamp(22px,2.6vw,30px);font-weight:600;line-height:1.45;color:var(--ink);text-wrap:pretty}
.single-rit_work .quote .who{margin-top:26px;font-family:'IBM Plex Mono',monospace;font-size:13.5px;letter-spacing:.06em;color:var(--muted)}
.single-rit_work .other{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.single-rit_work .wcard{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/3;display:block;transition:.2s}
.single-rit_work .wcard:hover{transform:translateY(-4px);box-shadow:0 26px 52px -30px rgba(11,18,32,.6)}
.single-rit_work .wcard .cap{position:absolute;left:0;right:0;bottom:0;padding:56px 22px 20px;background:linear-gradient(transparent,rgba(8,14,28,.9));color:#fff;pointer-events:none}
.single-rit_work .wcard .k{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#8fb3ff;font-weight:600}
.single-rit_work .wcard h3{font-size:18px;font-weight:600;margin-top:6px}

/* ================================================================= *
 *  ARTICLES ARCHIVE  (body.blog, body.archive category/tag)         *
 * ================================================================= */
.rit-articles .feat{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;margin-top:36px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff}
.rit-articles .featimg{aspect-ratio:16/11;background:#eef1f7;position:relative;height:100%}
.rit-articles .featbody{padding:48px 48px 48px 8px}
.rit-articles .atag{font-family:'IBM Plex Mono',monospace;font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.rit-articles .feat h2{font-size:clamp(26px,3vw,36px);font-weight:700;margin:14px 0 14px;line-height:1.15}
.rit-articles .feat p{font-size:16.5px;color:var(--muted);text-wrap:pretty}
.rit-articles .meta{display:flex;align-items:center;gap:14px;margin-top:24px;font-size:13.5px;color:var(--muted);font-family:'IBM Plex Mono',monospace}
.rit-articles .meta .dot{width:3px;height:3px;border-radius:50%;background:#c2cad8}
.rit-articles .agrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px}
.rit-articles .acard{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;transition:.2s;display:flex;flex-direction:column}
.rit-articles .acard:hover{box-shadow:0 22px 46px -28px rgba(20,40,90,.3);transform:translateY(-4px)}
.rit-articles .aimg{aspect-ratio:16/10;background:#eef1f7;position:relative}
.rit-articles .abody{padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}
.rit-articles .acard h3{font-size:19px;font-weight:600;margin:10px 0 10px;line-height:1.25}
.rit-articles .acard p{font-size:14.5px;color:var(--muted);flex:1;text-wrap:pretty}
.rit-articles .acard .meta{margin-top:20px;font-size:12.5px}
.rit-articles .subwrap{margin-top:24px;background:var(--mist);border:1px solid var(--line);border-radius:22px;padding:52px 54px;display:grid;grid-template-columns:1.2fr 1fr;gap:44px;align-items:center}
.rit-articles .subwrap h2{font-size:28px;font-weight:700;margin-bottom:12px}
.rit-articles .subwrap p{color:var(--muted);font-size:16px}
.rit-articles .subform{display:flex;gap:10px}
.rit-articles .subform input{flex:1;border:1px solid var(--line);border-radius:11px;padding:14px 16px;font-family:inherit;font-size:15px;background:#fff}
.rit-articles .subform input:focus{outline:none;border-color:var(--accent)}

/* ================================================================= *
 *  ARTICLE SINGLE  (body.single-post)                               *
 * ================================================================= */
.single-post .ahead{max-width:760px;margin:0 auto;text-align:center;padding:60px 0 40px}
.single-post .atag{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.single-post .ahead h1{font-size:clamp(30px,4.2vw,50px);font-weight:700;line-height:1.12;margin:18px 0 22px}
.single-post .ameta{display:inline-flex;align-items:center;gap:14px;font-size:14px;color:var(--muted);font-family:'IBM Plex Mono',monospace}
.single-post .ameta .dot{width:3px;height:3px;border-radius:50%;background:#c2cad8}
.single-post .ahero{max-width:1000px;margin:0 auto 8px;aspect-ratio:16/8;border-radius:22px;overflow:hidden;background:#eef1f7;position:relative}
.single-post .prose{max-width:720px;margin:0 auto;padding:52px 0 0}
.single-post .prose p{font-size:18px;line-height:1.78;color:#2a3342;margin-bottom:24px;text-wrap:pretty}
.single-post .prose h2{font-size:27px;font-weight:700;margin:44px 0 16px;color:var(--ink)}
.single-post .prose h3{font-size:22px;font-weight:700;margin:34px 0 12px;color:var(--ink)}
.single-post .prose .lede{font-size:20px;line-height:1.7;color:var(--muted)}
.single-post .prose ul{margin:0 0 24px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:13px}
.single-post .prose ul li{display:flex;gap:12px;font-size:17.5px;line-height:1.6;color:#2a3342}
.single-post .prose ul svg{width:20px;height:20px;color:var(--accent2);flex-shrink:0;margin-top:3px}
.single-post .prose img{border-radius:16px;margin:8px 0 24px}
.single-post .prose a{text-decoration:underline}
.single-post .pull{border-left:3px solid var(--accent);padding:6px 0 6px 26px;margin:36px 0;font-size:22px;line-height:1.5;font-weight:600;color:var(--ink)}
.single-post .tags{max-width:720px;margin:44px auto 0;display:flex;gap:10px;flex-wrap:wrap;padding-top:32px;border-top:1px solid var(--line)}
.single-post .tags span,.single-post .tags a{font-family:'IBM Plex Mono',monospace;font-size:12.5px;font-weight:600;color:#3a4353;background:var(--mist);border:1px solid var(--line);padding:8px 14px;border-radius:100px}
.single-post .rel{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.single-post .acard{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;transition:.2s;display:flex;flex-direction:column}
.single-post .acard:hover{box-shadow:0 22px 46px -28px rgba(20,40,90,.3);transform:translateY(-4px)}
.single-post .aimg{aspect-ratio:16/10;background:#eef1f7;position:relative}
.single-post .abody{padding:22px 22px 24px}
.single-post .acard h3{font-size:18px;font-weight:600;margin:9px 0 0;line-height:1.25}
.single-post .atag{display:inline-block}

/* ================================================================= *
 *  CONTACT  (body.rit-contact)                                      *
 * ================================================================= */
.rit-contact .cwrap{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:start;padding:64px 0 40px}
.rit-contact .form{border:1px solid var(--line);border-radius:22px;padding:40px;background:#fff}
.rit-contact .form h2{font-size:24px;font-weight:700;margin-bottom:6px}
.rit-contact .form .sub{font-size:15px;color:var(--muted);margin-bottom:26px}
.rit-contact .frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rit-contact .field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}
.rit-contact .field label{font-size:13.5px;font-weight:600;color:var(--ink)}
.rit-contact .field input,.rit-contact .field select,.rit-contact .field textarea{border:1px solid var(--line);border-radius:11px;padding:13px 15px;font-family:inherit;font-size:15px;background:#fff;color:var(--txt)}
.rit-contact .field input:focus,.rit-contact .field select:focus,.rit-contact .field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,91,255,.12)}
.rit-contact .field textarea{resize:vertical;min-height:110px}
.rit-contact .form button{width:100%;justify-content:center;margin-top:8px}
.rit-contact .note{font-size:13px;color:var(--muted);margin-top:14px;text-align:center}
.rit-contact .hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.rit-contact .formmsg{border-radius:12px;padding:14px 18px;margin-bottom:20px;font-size:15px}
.rit-contact .formmsg.ok{background:rgba(0,207,136,.1);border:1px solid rgba(0,207,136,.35);color:#0b7a54}
.rit-contact .formmsg.err{background:rgba(255,80,80,.08);border:1px solid rgba(255,80,80,.3);color:#b3261e}
.rit-contact .side{display:flex;flex-direction:column;gap:16px}
.rit-contact .side .chan{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:16px;padding:22px 24px;transition:.18s;background:#fff}
.rit-contact .side .chan:hover{border-color:#c7d3ef;transform:translateY(-2px)}
.rit-contact .side .chanic{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;flex-shrink:0;color:#fff}
.rit-contact .side .chanic.line{background:#06c755}
.rit-contact .side .chanic.tel{background:var(--accent)}
.rit-contact .side .chanic svg{width:26px;height:26px}
.rit-contact .side .chan .cl{font-size:13px;color:var(--muted)}
.rit-contact .side .chan .cv{font-size:20px;font-weight:700;color:var(--ink);font-family:'IBM Plex Mono',monospace;margin-top:2px}
.rit-contact .infocard{border:1px solid var(--line);border-radius:16px;padding:24px;background:var(--mist)}
.rit-contact .inforow{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.rit-contact .inforow:last-child{border-bottom:none;padding-bottom:0}
.rit-contact .inforow:first-child{padding-top:0}
.rit-contact .inforow svg{width:20px;height:20px;color:var(--accent);flex-shrink:0;margin-top:2px}
.rit-contact .inforow .k{font-size:13px;color:var(--muted)}
.rit-contact .inforow .v{font-size:15.5px;font-weight:600;color:var(--ink);margin-top:2px}
.rit-contact .mapwrap{aspect-ratio:21/7;border-radius:22px;overflow:hidden;background:#eef1f7;position:relative;margin-top:8px}
.rit-contact .mapwrap iframe{width:100%;height:100%;border:0;display:block}

/* ================================ PAGINATION ============================ */
.rit-pagination{display:flex;gap:8px;justify-content:center;margin-top:56px;flex-wrap:wrap}
.rit-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;color:#3a4353;font-weight:600;font-size:14.5px;background:#fff}
.rit-pagination .page-numbers:hover{border-color:#c7d3ef}
.rit-pagination .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink)}

/* ============================== 404 / simple ============================ */
.rit-simple{padding:120px 0;text-align:center}
.rit-simple h1{font-size:clamp(40px,6vw,80px);font-weight:700;margin-bottom:16px}
.rit-simple .lead{margin:0 auto 28px}

/* =============================== RESPONSIVE ============================= */
@media(max-width:960px){
	.navlinks{display:none}
	.navr .navcta{display:none}
	.navtoggle{display:inline-flex}
	.footgrid{grid-template-columns:1fr 1fr}
	.ctaband{grid-template-columns:1fr;padding:44px 32px}
	.ctaband .row{justify-content:flex-start}
	/* home */
	.home .usegrid,.home .pgrid,.home .pstep-grid,.home .logorow{grid-template-columns:repeat(2,1fr)}
	.home .whygrid,.home .ctacard,.home .worksgrid{grid-template-columns:1fr}
	.home .stats{grid-template-columns:repeat(2,1fr)}
	.home .ctacard{padding:44px 32px}
	.home .pfull{grid-template-columns:1fr!important}
	/* equipment */
	.post-type-archive-rit_equipment .pgrid{grid-template-columns:repeat(2,1fr)}
	.single-rit_equipment .pd{grid-template-columns:1fr;gap:36px}
	.single-rit_equipment .specrow{grid-template-columns:1fr;gap:6px}
	.single-rit_equipment .hl,.single-rit_equipment .rel{grid-template-columns:1fr}
	/* solutions */
	.post-type-archive-rit_solution .solrow{grid-template-columns:1fr;gap:32px}
	.post-type-archive-rit_solution .solimg{order:-1}
	.post-type-archive-rit_solution .entband{grid-template-columns:1fr;padding:40px 32px}
	.single-rit_solution .ov,.single-rit_solution .gcards,.single-rit_solution .pstep-grid,.single-rit_solution .other{grid-template-columns:1fr}
	.single-rit_solution .statrow{grid-template-columns:1fr}
	.single-rit_solution .gcards{grid-template-columns:repeat(2,1fr)}
	/* works */
	.post-type-archive-rit_work .wgrid{grid-template-columns:repeat(2,1fr)}
	.post-type-archive-rit_work .logorow{grid-template-columns:repeat(3,1fr)}
	.post-type-archive-rit_work .statrow{grid-template-columns:repeat(2,1fr)}
	.post-type-archive-rit_work .wfeat .cap{padding:80px 28px 28px}
	.single-rit_work .facts{grid-template-columns:repeat(2,1fr)}
	.single-rit_work .ov,.single-rit_work .statrow,.single-rit_work .other{grid-template-columns:1fr}
	.single-rit_work .gallery{grid-template-columns:1fr}
	/* articles */
	.rit-articles .feat,.rit-articles .subwrap{grid-template-columns:1fr}
	.rit-articles .featbody{padding:32px}
	.rit-articles .agrid{grid-template-columns:repeat(2,1fr)}
	.single-post .rel{grid-template-columns:1fr}
	/* contact */
	.rit-contact .cwrap{grid-template-columns:1fr;gap:32px}
	.rit-contact .form{padding:30px}
	.rit-contact .frow{grid-template-columns:1fr}
	.rit-contact .mapwrap{aspect-ratio:16/10}
}
@media(max-width:640px){
	.footgrid{grid-template-columns:1fr}
	.post-type-archive-rit_equipment .pgrid{grid-template-columns:1fr}
	.post-type-archive-rit_work .wgrid{grid-template-columns:1fr}
	.rit-articles .agrid{grid-template-columns:1fr}
	.rit-articles .subform{flex-direction:column}
}

/* =========================== reduced motion ============================ */
@media(prefers-reduced-motion:reduce){
	*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
	.livedot{animation:none}
}
