/* ============================================================
   BK bio Technology & R&D page.
   Loads after bk-elevated.css and reuses the V3 tokens, mast,
   proof, band, cta, footer, button, grain and reveal primitives.
   ============================================================ */

.rnd-mast .deck{display:block;max-width:66ch;}
.rnd-mast .deck .cta{display:flex;flex-direction:row;gap:12px;flex-wrap:wrap;margin-top:26px;justify-self:start;}
.rnd-mast .eyebrow .est b{color:var(--accent-l);font-weight:500;}
.rnd-mast .deck p.rnd-note{font-family:var(--ff-b);font-size:13px;line-height:1.6;letter-spacing:0;text-transform:none;color:var(--ink-3);margin-top:14px;max-width:52ch;}
.rnd-note b{color:var(--accent-d);font-weight:500;}

/* R&D hero masthead: the LEFT text block flows EXACTLY as the original single-
   column mast (top-aligned, full-width text, .deck capped at 66ch). The Bio-
   Labtory diagram lives ONLY in the previously-empty RIGHT area as an absolutely
   positioned figure, so it never reflows or narrows the text. It sits directly
   over the .mglow green glow with NO white card; the transparent PNG floats on
   the cream surface and a soft drop-shadow gives it depth. .mast is already
   position:relative, so the figure anchors to it. Scoped to .rnd-mast so other
   .mast pages are unaffected. .mglow/.mframe stay absolute (z-index:0) below. */
.rnd-mast .rnd-mast-text{position:relative;z-index:1;}
.rnd-mast .rnd-hero-fig{position:absolute;z-index:1;top:calc(clamp(58px,8vh,104px) + 50px);right:clamp(40px,5vw,72px);width:min(38vw,560px);margin:0;background:none;border:0;padding:0;}
.rnd-mast .rnd-hero-fig img{display:block;width:100%;height:auto;filter:drop-shadow(0 26px 46px rgba(22,20,18,.22));}
/* DESKTOP: the left text block alone is SHORTER than the diagram, so on wide screens
   the hero would collapse and the absolutely-centred figure droops below the cream band
   (and gets clipped by .mast overflow:hidden). A min-height guarantees the hero always
   frames the diagram with breathing room, vertically centred against the text. */
@media(min-width:1300px){.rnd-mast{min-height:clamp(440px,28vw,472px);}}
@media(max-width:1299px){
  .rnd-mast{min-height:0;}
  .rnd-mast .rnd-hero-fig{position:static;transform:none;width:100%;max-width:560px;margin-top:clamp(26px,5vw,38px);order:2;}
}

.rnd-proof .pc .v{font-variant-numeric:tabular-nums;}

/* Core technology source list */
.rnd-core{padding:clamp(60px,8vh,104px) 56px;background:var(--paper);}
.rnd-section-h{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;border-bottom:2px solid var(--ink);padding-bottom:18px;}
.rnd-section-h h2{font-family:var(--ff-d);font-weight:600;font-size:clamp(30px,3.4vw,50px);line-height:1.02;letter-spacing:-.022em;margin:12px 0 0;}
.rnd-section-h h2 em{font-style:italic;color:var(--green);font-weight:500;}
.rnd-section-h p{max-width:54ch;font-size:13.5px;line-height:1.62;color:var(--ink-2);margin:0;}
.rnd-core-groups{margin-top:26px;border-top:1px solid var(--ink);}
.rnd-core-group{display:grid;grid-template-columns:minmax(220px,.42fr) 1fr;gap:30px;padding:24px 0;border-bottom:1px solid var(--rule);}
.rnd-core-head{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:start;}
.rnd-core-index{font-family:var(--ff-m);font-size:12px;color:var(--accent-d);font-variant-numeric:tabular-nums;}
.rnd-core-head h3{font-family:var(--ff-d);font-weight:600;font-size:24px;line-height:1.1;letter-spacing:-.014em;margin:0;}
.rnd-core-count{font-family:var(--ff-d);font-size:30px;font-weight:600;line-height:.9;color:var(--ink);font-variant-numeric:tabular-nums;}
/* Owner: the machine-translation "Draft EN" badge/note is rendered by rnd.js for
   English titles; hide it on the public site (EN + KO) without touching the JS. */
.rnd-draft,.rnd-dnote{display:none!important;}
.rnd-core-items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 26px;}
.rnd-core-items li{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--rule);font-size:14px;line-height:1.45;color:var(--ink-2);}
.rnd-core-items li span::before{content:'';display:inline-block;width:5px;height:5px;background:var(--accent);margin:0 9px 2px 0;}
.rnd-core-items a{font-family:var(--ff-m);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-d);white-space:nowrap;border-bottom:1px solid rgba(206,74,24,.45);}

/* Searchable R&D index */
.rnd-index{padding:clamp(60px,8vh,104px) 56px;background:var(--bg);}
.rnd-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:24px;}
.rnd-search{display:flex;align-items:center;gap:10px;border:1px solid var(--rule);background:var(--paper);padding:0 14px;flex:1;min-width:240px;max-width:420px;}
.rnd-search:focus-within{border-color:var(--ink);outline:2px solid var(--accent);outline-offset:2px;}
.rnd-search svg{width:16px;height:16px;color:var(--ink-3);flex-shrink:0;}
.rnd-search input{border:0;background:none;outline:0;width:100%;padding:13px 0;font-family:var(--ff-b);font-size:14px;color:var(--ink);}
.rnd-tabs{display:flex;gap:8px;flex-wrap:wrap;}
.rnd-tab{min-height:44px;border:1px solid var(--rule);background:var(--paper);color:var(--ink-2);font-family:var(--ff-m);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;padding:12px 15px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:border-color .14s,background .14s,color .14s,transform .12s cubic-bezier(.16,1,.3,1);}
.rnd-tab:hover{border-color:var(--ink);}
.rnd-tab:active{transform:translateY(1px);}
.rnd-tab.on{background:var(--pine);border-color:var(--pine);color:#fff;}
.rnd-tab em{font-style:normal;color:var(--ink-3);font-variant-numeric:tabular-nums;}
.rnd-tab.on em{color:rgba(255,255,255,.72);}
.rnd-result-count{font-family:var(--ff-m);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);}
.rnd-list{margin-top:28px;min-height:440px;}
.rnd-group{border-bottom:1px solid var(--rule);}
.rnd-group:first-child{border-top:1px solid var(--ink);}
.rnd-group-head{display:grid;grid-template-columns:46px minmax(170px,1.2fr) minmax(220px,2fr) 76px 22px;gap:20px;width:100%;align-items:baseline;text-align:left;background:none;border:0;color:inherit;font:inherit;padding:22px 4px;cursor:pointer;transition:background .14s;}
.rnd-group-head:hover{background:var(--bg-2);}
.rnd-group.open .rnd-group-head{background:var(--bg-2);}
.rnd-group-index{font-family:var(--ff-m);font-size:12px;color:var(--accent-d);font-variant-numeric:tabular-nums;}
.rnd-group-title{font-family:var(--ff-d);font-weight:600;font-size:21px;line-height:1.1;letter-spacing:-.012em;}
.rnd-group-lead{font-size:12.5px;line-height:1.5;color:var(--ink-3);}
.rnd-group-count{font-family:var(--ff-d);font-weight:600;font-size:30px;line-height:1;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;}
.rnd-group-chev{font-family:var(--ff-m);font-size:14px;color:var(--ink-3);justify-self:center;align-self:center;transition:transform .2s,color .2s;}
.rnd-group.open .rnd-group-chev{transform:rotate(90deg);color:var(--accent-d);}
.rnd-group-body{display:none;padding:0 4px 24px;}
.rnd-group.open .rnd-group-body{display:block;}
.rnd-row{display:grid;grid-template-columns:1fr auto 44px;gap:10px;align-items:stretch;border-bottom:1px solid var(--rule);}
.rnd-row:last-child{border-bottom:0;}
.rnd-row-main{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(260px,1fr);gap:18px;align-items:baseline;text-align:left;background:none;border:0;color:inherit;font:inherit;padding:14px 8px;cursor:pointer;}
.rnd-row-main:hover{background:var(--paper);}
.rnd-row-title{font-size:14.5px;font-weight:500;line-height:1.4;color:var(--ink);}
.rnd-row-meta{display:flex;gap:10px 16px;flex-wrap:wrap;font-family:var(--ff-m);font-size:11px;line-height:1.5;color:var(--ink-3);font-variant-numeric:tabular-nums;}
.rnd-row-meta b{font-weight:500;color:var(--ink-2);}
.rnd-pdf{align-self:center;justify-self:end;font-family:var(--ff-m);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-d);border:1px solid rgba(206,74,24,.42);padding:9px 10px;min-width:44px;text-align:center;}
.rnd-pdf:hover{background:rgba(206,74,24,.08);border-color:var(--accent-d);}
.rnd-row-go{width:44px;border:0;background:none;color:var(--ink-3);font-family:var(--ff-m);font-size:16px;cursor:pointer;}
.rnd-row-go:hover{color:var(--accent-d);background:var(--paper);}
.rnd-empty{font-family:var(--ff-m);font-size:13px;color:var(--ink-3);padding:36px 0;}

/* Drawer */
.rnd-scrim{position:fixed;inset:0;background:rgba(9,26,18,.52);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;z-index:60;}
.rnd-scrim.on{opacity:1;visibility:visible;}
.rnd-drawer{position:fixed;top:0;right:0;width:min(460px,92vw);height:100%;background:var(--paper);transform:translateX(101%);transition:transform .32s cubic-bezier(.16,1,.3,1);z-index:70;overflow-y:auto;box-shadow:-34px 0 64px -34px rgba(9,26,18,.52);}
.rnd-drawer.on{transform:none;}
.rnd-dclose{position:absolute;top:16px;right:18px;width:44px;height:44px;border:1px solid var(--rule);background:var(--paper);color:var(--ink-3);font-size:20px;line-height:1;cursor:pointer;}
.rnd-dclose:hover{background:var(--ink);border-color:var(--ink);color:#fff;}
.rnd-dc{padding:34px 30px 42px;min-height:100%;display:flex;flex-direction:column;}
.rnd-dcat{font-family:var(--ff-m);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-d);padding-right:46px;}
.rnd-drawer h2{font-family:var(--ff-d);font-weight:600;font-size:27px;line-height:1.12;letter-spacing:-.018em;margin:14px 0 18px;padding-bottom:18px;border-bottom:1px solid rgba(200,162,78,.42);}
.rnd-drow{display:flex;gap:16px;padding:13px 0;border-bottom:1px solid var(--rule);}
.rnd-dk{font-family:var(--ff-m);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);min-width:108px;padding-top:2px;}
.rnd-dv{font-size:14px;line-height:1.5;color:var(--ink);}
.rnd-dnote{font-size:12.5px;line-height:1.6;color:var(--ink-2);margin:18px 0 22px;padding-top:6px;}
.rnd-dnote span{font-family:var(--ff-m);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-d);margin-right:6px;}
.rnd-dpdf{justify-content:center;margin-top:auto;}

.band .bc p.rnd-band-note{font-family:var(--ff-m);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:rgba(239,234,222,.74);max-width:none;}
/* Owner: KO band heading "기술과 연구 성과를 나란히." must sit on ONE line at desktop.
   The shared rule caps it at max-width:20ch which wraps Korean glyphs; widen it and
   keep it on one line above the mobile breakpoint only. */
:lang(ko) .band .bc h2{max-width:none;}
@media(min-width:901px){:lang(ko) .band .bc h2{white-space:nowrap;font-size:clamp(25px,2.7vw,42px)!important;}}

@media(max-width:900px){
  .rnd-core-group{grid-template-columns:1fr;gap:16px;}
  .rnd-core-items{grid-template-columns:1fr;}
  .rnd-row-main{grid-template-columns:1fr;}
}

@media(max-width:720px){
  .rnd-core,.rnd-index{padding:54px 22px;}
  .rnd-section-h{align-items:flex-start;}
  .rnd-tools{align-items:flex-start;}
  .rnd-search{max-width:none;width:100%;}
  .rnd-tabs{width:100%;}
  .rnd-tab{flex:1;justify-content:center;}
  .rnd-group-head{grid-template-columns:34px 1fr 56px;gap:12px;}
  .rnd-group-lead,.rnd-group-chev{display:none;}
  .rnd-row{grid-template-columns:1fr auto;}
  .rnd-row-main{grid-column:1/-1;padding:14px 4px;}
  .rnd-pdf{justify-self:start;margin:0 0 12px 4px;}
  .rnd-row-go{grid-column:2;grid-row:2;margin-bottom:8px;}
}

@media(prefers-reduced-motion:reduce){
  .rnd-scrim,.rnd-drawer,.rnd-tab,.rnd-group-head,.rnd-group-chev{transition:none;}
}
