/* Inner pages (about / products / capacity / technology / contact): same system as the main page.
   site-structure.css supplies header, buttons, footer, tokens; detail-premium-neutral.css is the handoff sheet with blue -> ink/grey.
   This sheet: light canvas, centered hero + one tile, centered section heads, soft cards, closing CTA. Text content unchanged. */
.premium-detail,body.visual-site{background:var(--c-canvas)}
.premium-detail{color:var(--c-ink)}
.premium-detail h1,.premium-detail h2,.premium-detail h3{color:var(--c-ink)!important;font-weight:700!important;letter-spacing:-.02em}
.premium-detail p{color:var(--c-mute)}
.premium-detail .d-eyebrow,.premium-detail .d-figure-note{display:none!important}
.premium-detail .d-footnote{color:var(--c-ash)!important;font-size:0.8667rem;text-align:center;max-width:50.6667rem;margin:2.1333rem auto 0}

/* ---------- hero: centered title, lead, button, then the art tile ---------- */
.premium-detail .d-hero,.premium-detail .d-catalog-hero,.premium-detail .d-contact-hero{background:var(--c-canvas)!important;color:var(--c-ink)!important;min-height:0!important;width:auto!important;margin:0!important;display:block!important;overflow:visible!important;padding:3.2rem max(1.3333rem,calc((100vw - var(--wrap))/2)) 4.8rem!important}
.d-breadcrumb{max-width:var(--wrap);margin:0 auto 2.6667rem;font-size:0.9333rem;color:var(--c-ash);display:flex;gap:0.5333rem}
.d-breadcrumb a{color:var(--c-mute)}.d-breadcrumb a:hover{color:var(--c-ink)}
.premium-detail .d-hero-grid,.premium-detail .contact-hero-inner{display:block!important;text-align:center;max-width:57.3333rem;min-height:0!important;margin:0 auto!important}
.premium-detail h1,html[lang=ko] .premium-detail .technology-hero h1{font-size:clamp(2.4rem,5vw,4rem)!important;line-height:1.16!important;margin:0!important;text-wrap:balance}
.premium-detail .d-lead,.premium-detail .catalog-heading p{font-size:1.2667rem;line-height:1.6;color:var(--c-mute)!important;max-width:41.3333rem;margin:var(--od-title-gap,1.3333rem) auto 0!important}
.premium-detail .d-hero .d-button,.premium-detail .catalog-heading .d-button{margin-top:1.8667rem}
.catalog-heading{max-width:57.3333rem;margin:0 auto;text-align:center}
.d-hero-art{margin:3.7333rem auto 0;max-width:var(--wrap)}

/* ---------- buttons / links (same as main: ink, 4px, 36px) ---------- */
.premium-detail .d-button,.premium-detail .d-button.light{display:inline-flex;align-items:center;gap:0.5333rem;height:2.4rem;min-height:2.4rem;padding:0.2667rem 1.3333rem!important;border-radius:0.2667rem!important;background:var(--c-ink)!important;border:1px solid var(--c-ink)!important;color:var(--c-canvas)!important;font-size:1.0667rem!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
.premium-detail .d-button:hover{background:var(--c-primary-deep)!important}
.premium-detail .d-button.light{background:var(--c-canvas)!important;color:var(--c-ink)!important;border-color:var(--c-mute)!important}
.d-link{color:var(--c-ink)!important;border-bottom:1px solid var(--c-ink)!important;font-size:1rem;font-weight:500}

/* ---------- sub navigation: pill tab row ---------- */
.d-subnav{justify-content:center;gap:0.5333rem;padding:0.8rem 1.3333rem!important;background:rgba(253,252,252,.92)!important;border-bottom:1px solid var(--c-hair)!important;backdrop-filter:blur(0.8rem);top:4.2667rem!important}
.d-subnav a{padding:0.5333rem 1.0667rem;border-radius:66.6rem;font-size:1rem!important;font-weight:600;color:var(--c-mute)!important;letter-spacing:0}
.d-subnav a:hover{background:var(--c-card);color:var(--c-ink)!important}
.d-subnav a.active,.d-subnav a[aria-current]{background:var(--c-ink);color:var(--c-canvas)!important}

/* ---------- sections: centered head, light surfaces ---------- */
.premium-detail .d-section{padding:var(--sec) max(1.3333rem,calc((100vw - var(--wrap))/2))!important;max-width:none;margin:0;background:var(--c-canvas)}
.premium-detail .d-soft{background:var(--c-soft)!important}
.premium-detail .d-dark{background:var(--c-canvas)!important;color:var(--c-ink)!important;border-top:1px solid var(--c-hair)}
.premium-detail .d-dark h2,.premium-detail .d-dark h3{color:var(--c-ink)!important}
.premium-detail .d-dark p{color:var(--c-mute)!important}
.d-section-head{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:var(--od-title-gap,1.3333rem)!important;margin:0 auto 3.7333rem!important;max-width:50.6667rem}
.d-section-head h2,.premium-detail h2{font-size:clamp(2rem,3.6vw,2.9333rem)!important;line-height:1.2!important;margin:0}
.d-section-head p{font-size:1.2rem;line-height:1.6;max-width:42.6667rem;margin:0!important}

/* ---------- about ---------- */
.d-disciplines{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3333rem}
.d-disciplines article{background:var(--c-soft);border-radius:1.6rem;padding:2.1333rem 1.8667rem 2.4rem;display:flex;flex-direction:column;gap:0.8rem}
.discipline-art{background:none!important;border:0!important;height:auto!important;min-height:0!important;padding:0!important}
.discipline-art svg{display:none!important}
.discipline-art>span{position:static!important;font-size:0.9333rem;font-weight:500;color:var(--c-mute)!important}
.d-disciplines h3{font-size:1.3333rem;margin:0}.d-disciplines p{font-size:1rem;line-height:1.65;margin:0}
.d-editorial-rows article{padding:1.8667rem 0}
.d-editorial-rows article>span{color:var(--c-mute)!important}
.d-related{display:flex;gap:1.6rem;justify-content:center;margin-top:2.6667rem}
/* ecosystem diagram: light */
.d-ecosystem{background:var(--c-soft)!important;border-radius:1.8667rem;padding:2.6667rem;border:0!important}
.d-gridlines{display:none!important}
.eco-top,.eco-bottom>div,.eco-side,.model-counterparties>div,.model-partner,.eco-center,.model-core,.model-stages>div,.model-brand>span{background:var(--c-card)!important;border:0!important;color:var(--c-ink)!important;box-shadow:none!important;border-radius:0.8rem}
.eco-center b,.model-brand,.model-core *{color:var(--c-ink)!important}
.eco-center,.model-core{border-radius:1.6rem!important}
.d-model .model-counterparties>span,.model-foundation>span{color:var(--c-mute)!important}
.model-foundation{border-top:1px solid var(--c-hair)!important;color:var(--c-mute)!important}

/* ---------- products ---------- */
.d-catalog-mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:1.0667rem;max-width:var(--wrap);margin:3.7333rem auto 0}
.d-catalog-mosaic>a{background:var(--c-soft)!important;border:0!important;border-radius:1.3333rem;padding:1.6rem;display:flex;flex-direction:column;gap:0.8rem;min-height:0!important;color:var(--c-ink)}
.d-catalog-mosaic>a:hover{background:var(--c-card)!important}
.d-catalog-mosaic svg{display:none!important}
.d-catalog-mosaic>a>span{color:var(--c-mute)!important;font-size:0.9333rem}.d-catalog-mosaic b{color:var(--c-ink)!important;font-size:1.2rem}
.d-catalog-layout{gap:3.2rem}
.d-line-menu{border:0!important;border-top:1px solid var(--c-hair)!important}
.d-line-menu button{color:var(--c-mute)!important;border-bottom:1px solid var(--c-hair)!important;background:transparent!important}
.d-line-menu button[aria-selected=true]{background:var(--c-card)!important;color:var(--c-ink)!important;font-weight:700}
.parametric-chart,.affinity-visual{background:var(--c-soft)!important;color:var(--c-ink)!important;border-radius:1.6rem}
.d-solutions{display:grid;gap:1.0667rem}

/* ---------- capacity ---------- */
.d-capacity-statement{max-width:50.6667rem}
.d-capacity-facts{border-color:var(--c-hair)!important}
.d-capacity-facts strong{color:var(--c-ink)!important;font-size:3.2rem;letter-spacing:-.03em}
.d-capacity-facts small,.d-capacity-facts span{color:var(--c-mute)!important}
.d-rating-orbit,.rating-orbit{display:none!important}
.d-framework,.d-partnership{gap:4.2667rem}
.d-rules,.partnership-agenda{background:var(--c-soft)!important;border:0!important;border-radius:1.6rem}
.framework-caption{color:var(--c-mute)!important}

/* ---------- technology ---------- */
.d-tech-ribbon{background:var(--c-soft)!important;border:0!important;justify-content:center;gap:2.6667rem}
.d-tech-ribbon small,.d-tech-ribbon>div>span:last-child{color:var(--c-mute)!important}
.d-feature-story{gap:4.8rem}
.d-screen,.d-data-transform,.d-price-visual,.d-bordereaux{border:0!important;border-radius:1.6rem!important;background:var(--c-soft)!important;box-shadow:none!important;color:var(--c-body)}
.d-feature-story+.d-feature-story{border-top:1px solid var(--c-hair)!important}
.d-check-list{color:var(--c-ink)!important}
.d-governance-note{border-left:2px solid var(--c-ink)!important;color:var(--c-mute)!important}

/* ---------- contact ---------- */
.contact-orbit{display:none!important}
.d-contact-content{gap:4.2667rem}
.d-enquiry-card{background:var(--c-soft)!important;border:0!important;border-radius:1.6rem}
.d-enquiry-card input,.d-enquiry-card select,.d-enquiry-card textarea{background:#fff!important;border:1px solid var(--c-hair)!important;border-radius:0.2667rem!important;color:var(--c-ink)!important;font-family:var(--font)}
.d-enquiry-card label{color:var(--c-ink)!important;font-weight:600}
.d-preview-note{background:var(--c-card)!important;border:0!important;border-radius:0.5333rem}
.d-preview-note p,.d-preview-note>span{color:var(--c-mute)!important}
.contact-route{border-top:1px solid var(--c-hair)!important}
.contact-route>span{color:var(--c-mute)!important}.contact-route button{color:var(--c-ink)!important;font-weight:600}
.d-contact-office{border-top:1px solid var(--c-hair)!important}
.d-contact-office>p:first-of-type{color:var(--c-ink)!important}.d-contact-office>span{color:var(--c-mute)!important}

/* ---------- responsive ---------- */
@media(max-width:1000px){
  .d-disciplines,.d-catalog-mosaic{grid-template-columns:1fr 1fr}
  .d-catalog-layout,.d-feature-story,.d-framework,.d-partnership,.d-contact-content,.d-model{grid-template-columns:1fr!important}
}
@media(max-width:640px){
  .d-disciplines,.d-catalog-mosaic{grid-template-columns:1fr}
  .d-subnav{justify-content:flex-start;overflow-x:auto}
  .premium-detail .d-hero,.premium-detail .d-catalog-hero,.premium-detail .d-contact-hero{padding-bottom:3.2rem!important}
}


.premium-detail{font-size:1.0667rem;line-height:1.55}

/* products: tile numbers, panel illustration, chart accents */
.d-catalog-mosaic>a>span{position:static!important;display:block;order:-1}
.line-panel-top svg{display:none!important}
.parametric-chart svg *,.affinity-visual svg *{stroke:var(--c-ink)!important}
.parametric-chart svg [fill]:not([fill=none]),.affinity-visual svg [fill]:not([fill=none]){fill:var(--c-ink)!important}
.d-capacity-statement{margin-bottom:3.7333rem!important}

/* chart / illustration accents inside inner pages: blue -> ink / grey */
.premium-detail svg [stroke*="2357" i],.premium-detail svg [stroke*="7d9cf9" i],.premium-detail svg [stroke*="6c7ae0" i]{stroke:var(--c-ink)!important}
.premium-detail svg [fill*="2357" i],.premium-detail svg [fill*="7d9cf9" i]{fill:var(--c-ink)!important}
.premium-detail svg stop{stop-color:var(--c-mute)!important}
.d-price-visual svg path,.d-price-visual svg polyline,.parametric-chart svg path,.parametric-chart svg polyline{stroke:var(--c-ink)!important}

/* =====================================================================
   Products explorer: pill tab list above, one large rounded card with a gradient background,
   the selected line shown on a small paper panel in the middle of the card
   ===================================================================== */
.d-catalog-layout{display:block!important;position:relative;max-width:var(--wrap);margin:0 auto}
.d-catalog-layout .d-line-menu{display:flex;flex-wrap:nowrap;align-items:center;gap:0;width:max-content;max-width:100%;margin:0 0 1.3333rem auto;padding:0!important;border:0!important;border-radius:999px;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.22);overflow-x:auto;scrollbar-width:none;background:transparent}
.d-catalog-layout .d-line-menu::-webkit-scrollbar{display:none}
.d-catalog-layout .d-line-menu button{flex:none;display:flex;align-items:center;justify-content:center;gap:0;height:2.9333rem;padding:0 1.3333rem!important;border:0!important;border-radius:999px;background:transparent!important;color:var(--c-mute)!important;font-size:1.0667rem;font-weight:400;white-space:nowrap;box-shadow:none;transition:color .2s,background .2s,box-shadow .2s;position:relative}
.d-catalog-layout .d-line-menu button small,.d-catalog-layout .d-line-menu button>span:last-child{display:none!important}
.d-catalog-layout .d-line-menu button:hover{color:var(--c-ink)!important;background:var(--c-card)!important}
.d-catalog-layout .d-line-menu button[aria-selected=true]{background:#fff!important;color:var(--c-ink)!important;font-weight:500;box-shadow:0 0 0 .5px rgba(0,0,0,.125),0 1px 1px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.04)}
/* the card */
.d-line-panels{position:relative;isolation:isolate;display:grid;place-items:center;min-height:33rem;padding:2.1333rem;border-radius:1.6rem;overflow:hidden;background:#a9d8d6 url(assets/capacity-bg2.jpg) center/cover no-repeat;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.075)}
.d-line-panel{width:100%;max-width:49rem;background:var(--c-canvas);border-radius:1.0667rem;padding:2.1333rem 2.4rem 2.1rem;box-shadow:0 0 0 .5px rgba(0,0,0,.125),0 1px 1px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.04)}
.d-line-panel[hidden]{display:none!important}
.line-panel-top{display:block!important;border:0!important;padding:0!important;margin:0 0 1.3333rem}
.line-panel-top>div:first-child{max-width:none}
.line-panel-top h2{font-size:1.5333rem!important;line-height:1.3!important;margin:0 0 .6rem!important}
.line-panel-top p{font-size:1rem;line-height:1.6;color:var(--c-mute)!important;margin:0!important}
.line-panel-top>div:last-child,.line-panel-top svg{display:none!important}
.d-product-entries{border-top:1px solid var(--c-hair)}
.d-product-entries>div{padding:1rem 0!important}
.d-product-entries>div>span{color:var(--c-ash)!important}
.d-line-panel .d-button{margin-top:1.4667rem}
@media(max-width:820px){
  .d-catalog-layout .d-line-menu{margin-left:0}
  .d-line-panels{padding:1.0667rem;min-height:0}
  .d-line-panel{padding:1.4667rem 1.2rem}
}
.d-catalog-layout .d-line-menu{flex-direction:row!important;position:static!important;top:auto!important;height:auto!important;grid-column:auto!important}
.d-catalog-layout .d-line-menu button{width:auto!important;flex-direction:row!important;text-align:center}

/* ---------- about: hero centred; content grid (3 cells, hairline dividers, dots at crossings) ---------- */
.premium-detail .d-hero-grid>div:first-child,.premium-detail .d-hero-grid h1,.premium-detail .d-hero-grid .d-lead{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
.premium-detail .d-hero{padding-top:6rem!important}
.ag-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:0!important;max-width:var(--wrap);margin:0 auto;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.075);border-radius:1.0667rem;overflow:visible}
.ag-grid article{position:relative;background:var(--c-soft)!important;border-radius:0!important;padding:3.2rem 3.2rem 3.2rem!important;gap:0!important;display:flex;flex-direction:column;min-height:19rem}
.ag-grid article:first-child{border-radius:1.0667rem 0 0 1.0667rem!important}
.ag-grid article:last-child{border-radius:0 1.0667rem 1.0667rem 0!important}
.ag-grid article+article{box-shadow:inset 1px 0 0 rgba(0,0,0,.05)}
.ag-ic{display:flex;align-items:center;justify-content:center;width:2.6667rem;height:2.6667rem;border-radius:.6667rem;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);color:var(--c-ink);margin-bottom:auto}
.ag-ic svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ag-grid h3{font-size:1.6rem!important;line-height:1.3!important;margin:2rem 0 .9rem!important;font-weight:600!important}
.ag-grid p{font-size:1rem!important;line-height:1.65;color:var(--c-mute)!important;margin:0!important;max-width:none}
.ag-dot{position:absolute;right:0;width:2px;height:2px;border-radius:50%;background:#000;z-index:5;transform:translate(50%,-50%)}
.ag-dot.t{top:0}.ag-dot.b{top:100%}
@media(max-width:900px){
  .ag-grid{grid-template-columns:1fr}
  .ag-grid article{border-radius:0!important;min-height:0;padding:2rem!important}
  .ag-grid article:first-child{border-radius:1.0667rem 1.0667rem 0 0!important}.ag-grid article:last-child{border-radius:0 0 1.0667rem 1.0667rem!important}
  .ag-grid article+article{box-shadow:inset 0 1px 0 rgba(0,0,0,.05)}
  .ag-dot{display:none}
}

/* ---- about grid, matched to the reference: cells have NO fill / radius / ring; the page colour shows through.
   1px 5% lines: a full-viewport-wide line above and below the row, dividers between cells; 2px black dot at every crossing ---- */
.ag-grid{position:relative;max-width:calc(var(--wrap) + 56px)!important;box-shadow:none!important;border-radius:0!important;background:transparent!important}
.ag-grid:before,.ag-grid:after{content:'';position:absolute;left:calc(50% - 50vw);width:100vw;height:1px;background:rgba(0,0,0,.05);z-index:2;pointer-events:none}
.ag-grid:before{top:0}.ag-grid:after{bottom:0}
.ag-grid article,.ag-grid article:first-child,.ag-grid article:last-child{background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:3rem 3rem 3rem!important;min-height:16.9333rem}
.ag-grid article+article{box-shadow:inset 1px 0 0 rgba(0,0,0,.05)!important}
.ag-ic{background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.ag-grid h3{font-size:1.4rem!important;font-weight:500!important}
.ag-dot{right:auto!important;transform:translate(-50%,-50%);width:2px;height:2px}
.ag-dot.l{left:0}.ag-dot.r{left:100%}
.ag-dot.t{top:0}.ag-dot.b{top:100%}
@media(max-width:900px){.ag-grid{max-width:100%!important}.ag-grid article+article{box-shadow:inset 0 1px 0 rgba(0,0,0,.05)!important}.ag-dot{display:none}.ag-grid article{padding:2rem!important;min-height:0}}
.ag-grid{margin-left:-28px!important;margin-right:-28px!important;max-width:none!important;width:calc(100% + 56px)}
@media(max-width:1200px){.ag-grid{margin-left:0!important;margin-right:0!important;width:100%}}

/* about rows: same line language as the grid (1px rgba(0,0,0,.05), dot at each end), equal row height */
.d-editorial-rows{position:relative;margin-left:-28px!important;margin-right:-28px!important;width:calc(100% + 56px);max-width:none!important;border-bottom:1px solid rgba(0,0,0,.05)}
.d-editorial-rows article{position:relative;display:grid!important;grid-template-columns:5rem 1fr 1fr!important;align-items:center;gap:2rem!important;height:8.2rem;min-height:8.2rem;padding:0 3rem!important;border-top:1px solid rgba(0,0,0,.05)!important;box-sizing:border-box}
.d-editorial-rows article:before,.d-editorial-rows article:after,.d-editorial-rows:after{content:'';position:absolute;top:-1.5px;width:2px;height:2px;border-radius:50%;background:#000;z-index:3}
.d-editorial-rows article:before{left:-1px}.d-editorial-rows article:after{right:-1px}
.d-editorial-rows article>span{font-size:.9333rem!important;color:var(--c-mute)!important;align-self:center}
.d-editorial-rows h3{font-size:1.4rem!important;font-weight:500!important;margin:0!important;align-self:center}
.d-editorial-rows p{font-size:1rem!important;line-height:1.6;margin:0!important;align-self:center;color:var(--c-mute)!important}
.d-editorial-rows:after{top:auto;bottom:-1.5px;left:-1px}
@media(max-width:1200px){.d-editorial-rows{margin-left:0!important;margin-right:0!important;width:100%}.d-editorial-rows article:before,.d-editorial-rows article:after,.d-editorial-rows:after{display:none}}
@media(max-width:900px){.d-editorial-rows article{grid-template-columns:3rem 1fr!important;height:auto;min-height:8.2rem;padding:1.4rem 1rem!important;gap:.4rem 1rem!important}.d-editorial-rows p{grid-column:2}}
.d-editorial-rows:before{content:'';position:absolute;bottom:-1.5px;right:-1px;width:2px;height:2px;border-radius:50%;background:#000;z-index:3}
@media(max-width:1200px){.d-editorial-rows:before{display:none}}

/* =====================================================================
   About diagrams in the site's diagram language: hairline circle + ring, soft pill labels, thin connectors, no illustration
   ===================================================================== */
/* --- hero: ecosystem --- */
.d-ecosystem{position:relative;background:none!important;padding:1rem 0 0!important;display:flex;flex-direction:column;align-items:center;gap:0;min-height:0}
.eco-top{position:relative;order:0;width:auto!important;min-width:13rem;padding:.9rem 1.6rem!important;border-radius:.8rem!important;background:var(--c-card)!important;text-align:center;font-size:1rem!important;font-weight:500;color:var(--c-ink)!important;margin:0 0 2.2rem!important;display:inline-flex!important;justify-content:center}
.eco-top i{display:none!important}
.eco-top:after{content:'';position:absolute;left:50%;top:100%;width:1px;height:2.2rem;background:var(--c-hair)}
.eco-middle{display:flex!important;align-items:center;justify-content:center;gap:2.4rem;width:100%;background:none!important}
.eco-center{position:relative;flex:none;width:13.3333rem!important;height:13.3333rem!important;border-radius:50%!important;background:var(--c-card)!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:0!important;color:var(--c-ink)!important}
.eco-center:before{content:'';position:absolute;inset:-.6667rem;border-radius:50%;border:1.5px solid var(--c-hair-soft)}
.eco-center:after{content:'';position:absolute;inset:-.7333rem;border-radius:50%;background:conic-gradient(from 200deg,var(--od-point,#30d158) 0 70deg,transparent 70deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px))}
.eco-s{width:2.6667rem!important;height:2.6667rem!important;border-radius:.8rem!important;background:var(--c-ink)!important;color:var(--c-canvas)!important;display:grid;place-items:center;font-weight:700}
.eco-center b{font-size:1.6rem!important;letter-spacing:-.03em;color:var(--c-ink)!important}
.eco-center>span:last-child,.eco-center .d-eyebrow{font-size:.9333rem!important;color:var(--c-mute)!important}
.eco-side{position:relative;flex:none;min-width:8rem;padding:.9rem 1.4rem!important;border-radius:.8rem!important;background:var(--c-card)!important;text-align:center;font-size:1rem!important;font-weight:500;color:var(--c-ink)!important;display:flex!important;flex-direction:column;align-items:center;gap:.3rem}
.eco-side>span:not([data-en]){display:none!important}
.eco-side:first-child:after,.eco-side:last-child:before{content:'→';position:absolute;top:50%;transform:translateY(-50%);color:var(--c-ash);font-size:1.2rem}
.eco-side:first-child:after{left:100%;margin-left:.6rem}
.eco-side:last-child:before{right:100%;margin-right:.6rem;content:'←'}
.eco-bottom{position:relative;display:flex!important;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:2.4rem!important;background:none!important;border:0!important;padding:0!important}
.eco-bottom:before{content:'';position:absolute;left:50%;bottom:100%;width:1px;height:2.4rem;background:var(--c-hair)}
.eco-bottom>div{padding:.7rem 1.2rem!important;border-radius:.8rem!important;background:var(--c-card)!important;font-size:.9333rem!important;font-weight:500;color:var(--c-ink)!important;border:0!important}

/* --- business model: counterparties -> core -> capacity, with arrows --- */
.d-model{display:grid!important;grid-template-columns:1fr auto 1.9fr auto 1fr!important;align-items:center;gap:0!important;max-width:var(--wrap);margin:0 auto;padding:1rem 0!important;background:none!important}
.model-counterparties{display:flex;flex-direction:column;align-items:stretch;gap:.6rem}
.model-counterparties>span{align-self:center;color:var(--c-ash);font-size:1.2rem}
.model-counterparties>div,.model-partner{background:var(--c-card)!important;border:0!important;border-radius:1rem!important;padding:1.2rem 1.4rem!important;color:var(--c-ink)!important;display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:1rem}
.model-counterparties>div p,.model-partner p{font-size:.9333rem!important;font-weight:400;color:var(--c-mute)!important;margin:0!important}
.d-model:before,.d-model:after{content:none}
.model-core{position:relative;background:transparent!important;border:0!important;border-radius:1.4rem!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);padding:1.8rem 2rem!important;display:flex;flex-direction:column;gap:1.4rem;color:var(--c-ink)!important;margin:0 2.2rem}
.model-core:before,.model-core:after{position:absolute;top:50%;transform:translateY(-50%);color:var(--c-ash);font-size:1.2rem;line-height:1}
.model-core:before{content:'→';left:-1.9rem}.model-core:after{content:'→';right:-1.9rem}
.model-brand{display:flex;justify-content:space-between;align-items:center;font-size:1.8rem!important;font-weight:700;letter-spacing:-.03em;color:var(--c-ink)!important}
.model-brand>span{border:1px solid var(--c-mute)!important;color:var(--c-ink)!important;border-radius:999px;font-size:.8667rem;font-weight:500;padding:.25rem .8rem;letter-spacing:0}
.model-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}
.model-stages>div{position:relative;background:var(--c-card)!important;border:0!important;border-radius:.8rem;padding:.8rem 1rem;display:flex;flex-direction:column;gap:.2rem;color:var(--c-ink)!important}
.model-stages>div:not(:last-child):after{content:'→';position:absolute;right:-.62rem;top:50%;transform:translateY(-50%);color:var(--c-ash);font-size:.9rem;background:var(--c-canvas);line-height:1;z-index:1}
.model-stages small{font-size:.8667rem;color:var(--c-mute)!important}
.model-stages b{font-size:1rem;font-weight:600;color:var(--c-ink)!important}
.model-foundation{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--c-hair)!important;padding-top:1rem;font-size:.9333rem;color:var(--c-mute)!important}
.model-foundation>span{color:var(--c-ink)!important;font-weight:500}
@media(max-width:1000px){
  .d-model{grid-template-columns:1fr!important;gap:1rem!important}
  .model-core{margin:1.6rem 0}
  .model-core:before{content:'↓';left:50%;top:-1.5rem;transform:translateX(-50%)}
  .model-core:after{content:'↓';left:50%;right:auto;top:auto;bottom:-1.5rem;transform:translateX(-50%)}
  .model-stages{grid-template-columns:1fr 1fr}
  .model-stages>div:after{display:none}
}
.eco-bottom:before{top:auto!important;bottom:100%!important;height:2.4rem!important;background:var(--c-hair)!important;width:1px!important;left:50%!important}
.eco-bottom:after{display:none!important}
.eco-center:after{background:conic-gradient(from 300deg,var(--od-point,#30d158) 0 80deg,transparent 80deg)!important}
.eco-top:after{height:2.2rem!important}
.d-model{grid-template-columns:minmax(15rem,1fr) auto minmax(0,2.2fr) auto minmax(14rem,1fr)!important}
@media(max-width:700px){
  .eco-middle{flex-direction:column;gap:2.2rem}
  .eco-side:first-child:after{content:'↓';left:50%;top:100%;transform:translateX(-50%);margin:.5rem 0 0}
  .eco-side:last-child:before{content:'↑';right:auto;left:50%;top:auto;bottom:100%;transform:translateX(-50%);margin:0 0 .5rem}
  .eco-middle .eco-side:last-child{order:2}.eco-middle .eco-center{order:1}.eco-middle .eco-side:first-child{order:0}
  .d-model>*{min-width:0}
  .model-core{padding:1.4rem 1.2rem!important}
  .model-brand{font-size:1.5rem!important}
  .model-foundation{flex-direction:column;gap:.3rem}
  .d-model{grid-template-columns:minmax(0,1fr)!important}
}

/* =====================================================================
   About diagrams, tokens: ink #0c0a09, body #4e4e4e, muted #777169, hairline #e7e5e4, surface #fff / #f0efed,
   radii 12-24, pastel orbs (mint #a7e5d3, peach #f4c5a8, lavender #c8b8e0, sky #a8c8e8, rose #e8b8c4) as the only colour
   ===================================================================== */
:root{--el-ink:#0c0a09;--el-body:#4e4e4e;--el-muted:#777169;--el-hair:#e7e5e4;--el-strong:#f0efed;--el-mint:#a7e5d3;--el-peach:#f4c5a8;--el-lav:#c8b8e0;--el-sky:#a8c8e8;--el-rose:#e8b8c4;
  --el-card-shadow:0 0 0 .5px rgba(0,0,0,.125),0 1px 1px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.04)}
.eco-top,.eco-side,.eco-bottom>div,.model-counterparties>div,.model-partner{background:#fff!important;box-shadow:var(--el-card-shadow)!important;color:var(--el-ink)!important;border-radius:.8rem!important}
.model-counterparties>div p,.model-partner p,.model-foundation,.model-stages small{color:var(--el-muted)!important}
/* the orb */
.eco-center{background:
  radial-gradient(60% 60% at 24% 26%,var(--el-mint),rgba(167,229,211,0) 70%),
  radial-gradient(55% 55% at 80% 24%,var(--el-sky),rgba(168,200,232,0) 70%),
  radial-gradient(60% 60% at 76% 80%,var(--el-peach),rgba(244,197,168,0) 70%),
  radial-gradient(55% 55% at 22% 80%,var(--el-lav),rgba(200,184,224,0) 70%),
  radial-gradient(40% 40% at 50% 50%,var(--el-rose),rgba(232,184,196,0) 75%),#f6f3f0!important;
  box-shadow:var(--el-card-shadow)!important;animation:el-orb 14s ease-in-out infinite alternate;background-size:130% 130%}
@keyframes el-orb{0%{background-position:0 0}100%{background-position:100% 100%}}
.eco-center:before{border:1px solid var(--el-hair)!important}
.eco-center:after{display:none!important}
.eco-center b,.eco-center>span:last-child{color:var(--el-ink)!important}
.eco-s{background:var(--el-ink)!important}
.eco-top:after,.eco-bottom:before{background:var(--el-hair)!important}
/* model */
.model-core{box-shadow:var(--el-card-shadow)!important;background:#fff!important}
.model-stages>div{background:var(--el-strong)!important}
.model-core:before,.model-core:after,.model-stages>div:not(:last-child):after,.model-counterparties>span,.eco-side:first-child:after,.eco-side:last-child:before{color:var(--el-muted)!important}
.model-stages>div:not(:last-child):after{background:var(--el-strong)!important}
.model-brand>span{border-color:var(--el-muted)!important}
.model-foundation{border-top-color:var(--el-hair)!important}
@media(prefers-reduced-motion:reduce){.eco-center{animation:none}}
.eco-logo{display:block;width:8.4rem;height:auto;margin:0 0 .2rem}

/* =====================================================================
   About: abilities — icon tab list left, one large card right
   ===================================================================== */
.sv{padding-top:var(--sec)!important}
.sv-top{display:grid;grid-template-columns:1fr 1fr;gap:4.8rem;align-items:start;max-width:var(--wrap);margin:0 auto 3rem}
.sv-top h2{margin:0!important;font-size:clamp(1.9rem,3vw,2.6rem)!important}
.sv-top p{margin:0!important;font-size:1.1333rem;line-height:1.6;color:var(--c-body)!important}
.sv-body{display:grid;grid-template-columns:1fr 1fr;gap:4.8rem;max-width:var(--wrap);margin:0 auto;align-items:stretch}
.sv-left{display:flex;flex-direction:column;justify-content:space-between;min-height:30rem}
.sv-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}
.sv-tab{appearance:none;border:0;background:transparent;display:flex;align-items:center;gap:1rem;padding:.4rem 0;font:inherit;font-size:1.2rem;color:var(--c-ash);cursor:pointer;transition:color .2s;text-align:left}
.sv-tab:hover{color:var(--c-ink)}
.sv-tab[aria-selected=true]{color:var(--c-ink)}
.sv-ic{width:2.6667rem;height:2.6667rem;border-radius:.8rem;display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);background:#fff;color:inherit;transition:box-shadow .2s}
.sv-tab[aria-selected=true] .sv-ic{box-shadow:inset 0 0 0 1px rgba(0,0,0,.22)}
.sv-ic svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sv-nav{display:flex;gap:.6rem}
.sv-nav button{width:2.6667rem;height:2.6667rem;border-radius:50%;border:0;background:#fff;box-shadow:var(--el-card-shadow,0 0 0 .5px rgba(0,0,0,.125));font-size:1.3rem;line-height:1;cursor:pointer;color:var(--c-ink)}
.sv-card{position:relative;border-radius:1.0667rem;background:var(--el-strong,#f0efed);box-shadow:inset 0 0 0 .5px rgba(0,0,0,.075);min-height:30rem;overflow:hidden;display:grid}
.sv-panel{grid-area:1/1;display:flex;flex-direction:column;justify-content:space-between;padding:1.6rem 2rem 2rem;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .35s,transform .35s,visibility .35s}
.sv-panel.on{opacity:1;visibility:visible;transform:none}
.sv-vis{flex:1;display:flex;flex-direction:column;justify-content:center;gap:0;margin:2.4rem 0 1.6rem;background:#fff;border-radius:.8rem;box-shadow:var(--el-card-shadow,0 0 0 .5px rgba(0,0,0,.125));overflow:hidden}
.sv-h,.sv-r{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;align-items:center;gap:.8rem;padding:0 1.2rem;height:3.2rem;border-bottom:1px solid #F1F3F5;font-size:.9333rem}
.sv-h{background:#F8F9FA;color:#495057;font-weight:700;font-size:.9333rem}
.sv-r .n{font-weight:500}.sv-r .r,.sv-h .r{text-align:right;justify-self:end;white-space:nowrap}
.sv-r:last-child{border-bottom:0}
/* capacity panel: same table look; rows grow when a label wraps so nothing is cut */
.sv-panel,.sv-vis{min-width:0}
.sv-h.sv-cap3,.sv-r.sv-cap3{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1.2fr);gap:.6rem;height:auto;min-height:3.2rem;padding-top:.6rem;padding-bottom:.6rem;line-height:1.3}
.sv-r.sv-cap3 span:last-child{color:var(--c-mute)}
/* phones: the authority table and the AI panel were wider than the card and clipped (Approve button cut off) */
@media(max-width:600px){
  .sv-vis .sv-h,.sv-vis .sv-r{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr) minmax(0,1.1fr);gap:.4rem;padding:.5rem .8rem;height:auto;min-height:3.2rem}
  .sv-vis .sv-r .r,.sv-vis .sv-h .r{white-space:normal;display:flex;flex-wrap:wrap;gap:.3rem;justify-content:flex-end}
  .sv-vis .oa-btn{height:1.8rem;padding:0 .6rem;font-size:.8rem}.sv-vis .oa-btn+.oa-btn{margin-left:0}
  .sv-vis .oa-chip{white-space:normal}
  .sv-vis .sv-ai{grid-template-columns:minmax(0,1fr);gap:.6rem;padding:1rem}
  .sv-vis .sv-ai .sv-arrow{transform:rotate(90deg);justify-self:center}
}
.sv-vis .oa-chip{justify-self:start}
.sv-vis .oa-btn{height:2rem;padding:0 .8rem;font-size:.9333rem}.sv-vis .oa-btn+.oa-btn{margin-left:.4rem}
.sv-ai{display:grid;grid-template-columns:1fr auto 1.2fr;align-items:center;gap:1rem;padding:1.4rem}
.sv-file{background:#F8F9FA;border-radius:.6rem;padding:1rem}
.sv-file b{display:block;font-size:.9333rem;margin-bottom:.8rem;font-weight:600;color:var(--c-ink)}
.sv-file u{display:block;height:.5rem;border-radius:.3rem;background:#E9ECEF;margin:.7rem 0;text-decoration:none}
.sv-file u.w60{width:60%}.sv-file u.w80{width:80%}.sv-file u.hl{background:rgba(77,171,247,.35)}
.sv-arrow{color:var(--c-ash);font-size:1.3rem}
.sv-fields>div{display:flex;flex-direction:column;gap:.1rem;padding:.6rem 0;border-bottom:1px solid #F1F3F5}
.sv-fields>div:last-child{border-bottom:0}
.sv-fields small{font-size:.9333rem;color:#868E96}.sv-fields b{font-size:1rem;font-weight:600;color:var(--c-ink)}
.sv-cap h3{margin:0 0 .5rem!important;font-size:1.0667rem!important;font-weight:500!important}
.sv-cap p{margin:0!important;font-size:.9333rem;line-height:1.6;color:var(--c-mute)!important}
.sv-go{position:absolute;top:1rem;right:1rem;width:2.6667rem;height:2.6667rem;border-radius:50%;background:#fff;box-shadow:var(--el-card-shadow,0 0 0 .5px rgba(0,0,0,.125));display:grid;place-items:center;color:var(--c-ink);font-size:1.1rem}
@media(max-width:900px){.sv-top,.sv-body{grid-template-columns:1fr;gap:1.6rem}.sv-left{min-height:0;gap:1.4rem}.sv-list{flex-direction:row;flex-wrap:wrap}.sv-card{min-height:26rem}}

/* abilities inside the hero: replaces the diagram */
.premium-detail .d-hero .d-hero-grid{max-width:none!important}
.premium-detail .d-hero .d-hero-grid>div:first-child{max-width:860px;margin:0 auto!important}
.premium-detail .d-hero .d-hero-art{margin-top:4rem;max-width:var(--wrap);width:100%}
.sv-in{padding:0!important;text-align:left}
.sv-in .sv-left{min-height:28rem}
.sv-in .sv-card{min-height:28rem}

/* =====================================================================
   Business structure as a simple timeline (measured: bar 12px, dots 12px black, drop line 2x92px dotted rgba(0,0,0,.15))
   ===================================================================== */
.d-model.tl-wrap{display:block!important;padding:0!important;max-width:var(--wrap);margin:0 auto}
.tl{position:relative;display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:0}
.tl-bar{position:absolute;left:0;right:0;top:0;height:.8rem;border-radius:999px;background:#ece9e6}
.tl-col{position:relative;display:flex;flex-direction:column;padding-top:.8rem;min-width:0}
.tl-dot{position:absolute;top:0;width:.8rem;height:.8rem;border-radius:50%;background:#000;z-index:2}
.tl-col.l .tl-dot{left:0}.tl-col.c .tl-dot{left:50%;transform:translateX(-50%)}.tl-col.r .tl-dot{right:0}
.tl-drop{display:block;position:relative;width:2px;height:5.75rem;margin:.5rem 0 .5rem;background-image:repeating-radial-gradient(circle,rgba(0,0,0,.15) 0 1px,transparent 1px 6px);background-size:100% 6px}
.tl-col.l .tl-drop{margin-left:.3rem}.tl-col.c .tl-drop{margin-left:auto;margin-right:auto}.tl-col.r .tl-drop{margin-left:auto;margin-right:.3rem}
.tl-txt{display:flex;flex-direction:column;gap:.9rem}
.tl-col.l .tl-txt{align-items:flex-start;text-align:left}
.tl-col.c .tl-txt{align-items:center;text-align:center}
.tl-col.r .tl-txt{align-items:flex-end;text-align:right}
/* text blocks lose their card styling here */
.tl .model-counterparties>div,.tl .model-partner,.tl .model-core{background:none!important;box-shadow:none!important;padding:0!important;border-radius:0!important;margin:0!important}
.tl .model-counterparties>div,.tl .model-partner{gap:.2rem}
.tl .model-partner{display:flex;flex-direction:column;align-items:flex-end}
.tl .model-counterparties>div{font-size:1.0667rem;font-weight:500}
.tl .model-partner{font-size:1.0667rem;font-weight:500}
.tl .model-counterparties>div p,.tl .model-partner p{font-size:1rem!important;color:var(--c-mute)!important}
.tl .model-brand{display:flex;gap:.8rem;justify-content:center;align-items:center;font-size:1.0667rem!important;font-weight:500!important}
.tl .model-brand>span{font-size:.8667rem;padding:.15rem .6rem}
.tl .model-stages{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}
.tl .model-stages>div{padding:.4rem .8rem;flex-direction:row;gap:.4rem;align-items:baseline}
.tl .model-stages>div:after{display:none!important}
.tl .model-stages small{font-size:.8667rem}.tl .model-stages b{font-size:.9333rem}
.tl .model-foundation{border:0!important;padding:0!important;justify-content:center;flex-direction:column;gap:.2rem;text-align:center}
.tl .model-core:before,.tl .model-core:after{content:none!important}
@media(max-width:900px){
  .tl{grid-template-columns:1fr;gap:2.4rem;padding-left:2rem}
  .tl-bar{right:auto;left:0;top:0;bottom:0;width:.8rem;height:auto}
  .tl-col{padding-top:0;padding-left:1rem}
  .tl-dot,.tl-col.c .tl-dot,.tl-col.l .tl-dot,.tl-col.r .tl-dot{left:-2rem;right:auto;top:.3rem;transform:none}
  .tl-drop{display:none}
  .tl-col .tl-txt{align-items:flex-start!important;text-align:left!important}
  .tl .model-partner{align-items:flex-start}
  .tl .model-stages,.tl .model-brand{justify-content:flex-start}
}
.tl{grid-template-columns:1fr 1.7fr 1fr}
.tl .model-stages>div{white-space:nowrap}
.tl .model-stages{gap:.4rem}
.tl .model-stages>div{padding:.4rem .6rem}
.tl-logo{display:block;height:1.2rem;width:auto}
@media(max-width:900px){.tl{grid-template-columns:1fr!important}.tl .model-stages{flex-wrap:wrap}}

/* timeline text cleanup: every column = title (ink, 17px) + grey description lines; centre stages read as one flow line */
.tl-txt{gap:.7rem}
.tl-col.c .tl-txt{gap:.9rem}
.tl .model-stages{display:flex!important;flex-wrap:wrap;justify-content:center;align-items:center;gap:.3rem .5rem;background:none!important}
.tl .model-stages>div{background:none!important;padding:0!important;border-radius:0!important;display:inline-flex!important;flex-direction:row!important;gap:.35rem;align-items:baseline;white-space:nowrap}
.tl .model-stages small{font-size:.9333rem;color:var(--c-ash)!important}
.tl .model-stages b{font-size:1rem;font-weight:500;color:var(--c-ink)!important}
.tl .model-stages>div:not(:last-child):after{content:'→'!important;display:inline!important;position:static!important;transform:none!important;background:none!important;color:var(--c-ash)!important;margin-left:.3rem;font-size:.9333rem}
.tl .model-foundation{display:flex;flex-direction:column;align-items:center;gap:.15rem;font-size:1rem;color:var(--c-mute)!important;line-height:1.6}
.tl .model-foundation>span{color:var(--c-mute)!important;font-weight:400}
.tl .model-counterparties>div,.tl .model-partner{font-size:1.0667rem;font-weight:500;color:var(--c-ink)!important}
.tl .model-counterparties>div p,.tl .model-partner p{font-size:1rem!important;line-height:1.2;font-weight:400}
.tl .tl-txt p{line-height:1.2!important}   /* the left (Insurers / Brokers) texts sit outside .model-counterparties after the timeline rebuild */
.d-model+.d-footnote,.d-footnote{margin-top:2.4rem}
@media(max-width:900px){.tl .model-stages,.tl .model-foundation{justify-content:flex-start;align-items:flex-start}}
.tl .model-stages small{display:none!important}
.tl .model-stages>div:not(:last-child):after{margin:0 0 0 .5rem!important;left:auto!important;right:auto!important;top:auto!important;width:auto!important;height:auto!important;padding:0!important}
.tl .model-stages{gap:.2rem .4rem!important}
/* stage arrows: one clean separator before every item after the first (no pseudo-element overlap) */
.tl .model-stages>div:after{display:none!important;content:none!important}
.tl .model-stages>div:before{content:none!important;display:none!important}
.tl .model-stages>div+div:before{display:inline!important;content:'→'!important;position:static!important;margin:0 .5rem 0 .1rem;color:var(--c-ash)!important;font-size:.9333rem;font-weight:400;background:none!important;width:auto!important;height:auto!important;transform:none!important}
.tl .model-stages{gap:.2rem 0!important}
.tl .model-stages>div:not(:last-child):after,.tl .model-stages>div:not(:last-child)::after{content:none!important;display:none!important}
.tl .model-stages>div:before,.tl .model-stages>div:after,.tl .model-stages>div+div:before,.tl .model-stages>div:not(:last-child):after{content:none!important;display:none!important}
.tl-sep{font-style:normal;color:var(--c-ash);font-size:.9333rem;margin:0 .6rem}
.tl .model-stages{gap:.2rem 0!important;align-items:baseline!important}
.tl .model-stages>div{width:auto!important;min-width:0!important;flex:none!important;overflow:visible!important}
.tl .model-stages>div b{white-space:nowrap}
/* mobile spacing: far between groups, close within a group */
@media(max-width:900px){
  .tl{gap:3.6rem!important}
  .tl-col .tl-txt{gap:.9rem!important}
  .tl-col.c .tl-txt{gap:.5rem!important}
  .tl .model-counterparties{gap:.9rem!important}
  .tl .model-counterparties>div,.tl .model-partner{gap:.15rem!important}
  .tl .model-brand,.tl .model-stages,.tl .model-foundation{margin:0!important}
  .tl .model-foundation{gap:0!important}
  .tl-col{padding-top:0}
  .tl-dot{top:.35rem}
}
/* products: hero without the tile row; tab list centred */
.d-catalog-layout .d-line-menu{margin:0 auto 1.3333rem!important}
.premium-detail .d-catalog-hero{padding-bottom:3rem!important}
@media(max-width:820px){.d-catalog-layout .d-line-menu{margin:0 0 1.3333rem!important;justify-content:flex-start}}
/* no breadcrumb on any inner page */
.d-breadcrumb{display:none!important}
.premium-detail .d-hero,.premium-detail .d-catalog-hero,.premium-detail .d-contact-hero{padding-top:6rem!important}

/* products card: every tab shows in the same stacked cell, so the green card keeps the height of the tallest tab */
.d-line-panels{display:grid!important;align-items:center;justify-items:center}
.d-line-panel,.d-line-panel[hidden]{grid-area:1/1;display:block!important;width:100%}
.d-line-panel[hidden]{visibility:hidden;pointer-events:none;opacity:0}
.d-line-panel{transition:opacity .25s}

/* one hero type for every page */
.premium-detail h1,html[lang=ko] .premium-detail h1,html[lang=ko] .premium-detail .technology-hero h1,.premium-detail .catalog-heading h1,.premium-detail .contact-hero-inner h1{font-size:60px!important;line-height:1.16!important;letter-spacing:-3.5px!important;font-weight:700!important}
.visual-site .clobe-hero h1,html[lang=ko] .visual-site .clobe-hero h1{letter-spacing:-3.5px!important}
.premium-detail .d-hero,.premium-detail .d-catalog-hero,.premium-detail .d-contact-hero{padding:6rem max(20px,calc((100vw - var(--wrap))/2)) 4.5rem!important}
.premium-detail .d-hero .d-hero-grid>div:first-child,.premium-detail .catalog-heading,.premium-detail .contact-hero-inner{max-width:860px;margin-left:auto;margin-right:auto;text-align:center}
.premium-detail .d-lead,.premium-detail .catalog-heading p,.premium-detail .contact-hero-inner .d-lead{font-size:19px;line-height:1.6;max-width:620px;margin:20px auto 0!important;text-align:center}
@media(max-width:640px){.premium-detail h1,html[lang=ko] .premium-detail h1,html[lang=ko] .premium-detail .technology-hero h1,.visual-site .clobe-hero h1,html[lang=ko] .visual-site .clobe-hero h1{font-size:34px!important;letter-spacing:-2px!important}}

/* =====================================================================
   Products: "beyond a single product" as a content grid: 2 cells, hairlines + dots, 160px graphic on top,
   title + grey description; on hover the cell shows the gradient image with white type and a white graphic
   ===================================================================== */
.d-solutions.sol-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:0!important;margin-left:-28px!important;margin-right:-28px!important;width:calc(100% + 56px);max-width:none!important;position:relative}
.sol-grid article{position:relative;isolation:isolate;overflow:hidden;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:0 3rem 3rem!important;display:flex;flex-direction:column;gap:.9rem;min-height:26rem;color:var(--c-ink)}
.sol-grid article+article{box-shadow:inset 1px 0 0 rgba(0,0,0,.05)!important}
.sol-grid article:before{content:'';position:absolute;inset:0;z-index:-1;background:#a9d8d6 url(assets/capacity-bg2.jpg) center/cover no-repeat;opacity:0;transition:opacity .3s}
.sol-grid article:hover:before{opacity:1}
.sol-grid .parametric-chart,.sol-grid .affinity-visual{background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;height:10rem;margin:3rem 0 1.6rem;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:0!important}
.sol-grid .chart-grid{display:none!important}
.sol-grid .parametric-chart svg{width:12rem;height:auto;overflow:visible;position:static}
.sol-grid .parametric-chart svg path{stroke:var(--c-ink)!important;transition:stroke .3s}
.sol-grid .parametric-chart svg path+path{stroke:var(--c-ash)!important}
.sol-grid .affinity-visual>div:first-child{background:none!important;box-shadow:none!important;border:0!important;padding:0!important}
.sol-logo{display:block;height:1.1rem;width:auto}
.sol-grid .affinity-visual>span{color:var(--c-ash)!important;font-size:1rem;margin:.5rem 0}
.sol-grid .affinity-nodes{display:flex;gap:.5rem}
.sol-grid .affinity-nodes i{width:1.6rem;height:1.6rem;border-radius:.45rem;background:none!important;border:1.5px solid var(--c-ink)!important;transition:border-color .3s}
.sol-grid .affinity-visual>span:last-child{margin-top:.8rem;font-size:.9333rem;color:var(--c-mute)!important}
.sol-grid h3{margin:0!important;font-size:1.0667rem!important;font-weight:500!important;color:var(--c-ink)!important;transition:color .3s}
.sol-grid p{margin:0!important;font-size:1rem;line-height:1.6;color:var(--c-mute)!important;transition:color .3s}
.sol-grid article:hover h3,.sol-grid article:hover p,.sol-grid article:hover .affinity-visual>span{color:#fff!important}
.sol-grid article:hover .parametric-chart svg path{stroke:#fff!important}
.sol-grid article:hover .affinity-nodes i{border-color:#fff!important}
.sol-grid article:hover .sol-logo{filter:brightness(0) invert(1)}
/* hairlines + dots (same language as the about grid) */
.sol-grid:before,.sol-grid:after{content:'';position:absolute;left:calc(50% - 50vw);width:100vw;height:1px;background:rgba(0,0,0,.05);z-index:3;pointer-events:none}
.sol-grid:before{top:0}.sol-grid:after{bottom:0}
.sol-grid .ag-dot.l2{left:0;right:auto;transform:translate(-50%,-50%)}
.sol-grid .ag-dot.r2{left:100%;right:auto;transform:translate(-50%,-50%)}
.sol-grid .ag-dot.rr{left:100%;right:auto;transform:translate(-50%,-50%)}
@media(max-width:1200px){.d-solutions.sol-grid{margin-left:0!important;margin-right:0!important;width:100%}.sol-grid .ag-dot{display:none}}
@media(max-width:900px){.d-solutions.sol-grid{grid-template-columns:1fr}.sol-grid article{min-height:0;padding:0 1.6rem 2rem!important}.sol-grid article+article{box-shadow:inset 0 1px 0 rgba(0,0,0,.05)!important}}
.d-soft{background:var(--c-canvas)!important}
.sol-grid .parametric-chart,.sol-grid .affinity-visual{height:12rem;overflow:visible!important;margin:2.6rem 0 1.4rem}
.sol-grid .affinity-visual>div:first-child{height:auto!important;width:auto!important;overflow:visible!important}
.sol-logo{height:1.3rem!important}
.sol-grid .parametric-chart svg{width:15rem}
.sol-grid article{padding-left:3rem!important}
.premium-detail .d-hero-grid,.premium-detail .catalog-heading,.premium-detail .contact-hero-inner{min-height:0!important;align-items:start!important;margin-top:0!important;padding-top:0!important}
.premium-detail .d-catalog-hero,.premium-detail .d-contact-hero{display:block!important;justify-content:flex-start!important}

/* products card panel: calmer type (min 14px) */
.d-line-panel{padding:1.6rem 1.8rem 1.6rem!important;max-width:44rem}
.d-line-panel .line-panel-top h2{font-size:1.3333rem!important;margin:0 0 .4rem!important}
.d-line-panel .line-panel-top p{font-size:.9333rem!important;line-height:1.55}
.d-line-panel .line-panel-top{margin:0 0 1rem!important}
.d-line-panel .d-product-entries>div{padding:.75rem 0!important;gap:1rem}
.d-line-panel .d-product-entries h3{font-size:1.0667rem!important;font-weight:600!important}
.d-line-panel .d-product-entries p,.d-line-panel .d-product-entries>div p{font-size:.9333rem!important;line-height:1.5}
.d-line-panel .d-product-entries>div>span{font-size:.9333rem!important}
.d-line-panel .d-button{height:2.4rem!important;min-height:2.4rem!important;font-size:.9333rem!important;padding:0 1.1rem!important;margin-top:1rem}
.d-line-panels{min-height:0}

/* hover: plain light-grey fill, text and graphics keep their colour */
.sol-grid article:before{background:#f0efed!important;background-image:none!important}
.sol-grid article:hover h3{color:var(--c-ink)!important}
.sol-grid article:hover p,.sol-grid article:hover .affinity-visual>span{color:var(--c-mute)!important}
.sol-grid article:hover .parametric-chart svg path{stroke:var(--c-ink)!important}
.sol-grid article:hover .parametric-chart svg path+path{stroke:var(--c-ash)!important}
.sol-grid article:hover .affinity-nodes i{border-color:var(--c-ink)!important}
.sol-grid article:hover .sol-logo{filter:none}
.sol-tree{width:13rem;height:auto;overflow:visible}
.sol-tree .hub{fill:var(--c-ink)}
.sol-tree .ln{fill:none;stroke:var(--c-ash);stroke-width:1.2;stroke-linejoin:round}
.sol-tree .nd{fill:none;stroke:var(--c-ink);stroke-width:1.5}
.sol-grid .affinity-visual>span{margin-top:.6rem!important}
/* technical line drawings: 1px ink outlines + dotted construction lines (reference style) */
.sol-draw{width:15rem;height:auto;overflow:visible}
.sol-draw .dt{fill:none;stroke:var(--c-ash);stroke-width:.7;stroke-dasharray:1 2.4;stroke-linecap:round}
.sol-draw .dsh{fill:none;stroke:var(--c-mute);stroke-width:.8;stroke-dasharray:3 3}
.sol-draw .sl{fill:none;stroke:var(--c-ink);stroke-width:1;stroke-linejoin:round;stroke-linecap:round}
.sol-draw .sl.cross{stroke-width:.8}
.sol-draw .pl{fill:rgba(15,0,0,.03);stroke:var(--c-ink);stroke-width:1;stroke-linejoin:round}
.sol-draw .pl.mid,.sol-draw .pl.sm{fill:rgba(255,255,255,.85)}
.sol-draw .pt{fill:var(--c-ash)}
.sol-grid .parametric-chart svg path,.sol-grid .parametric-chart svg path+path{stroke:inherit}
.sol-grid .parametric-chart .sol-draw path.sl{stroke:var(--c-ink)!important}
.sol-grid .parametric-chart .sol-draw path.dt{stroke:var(--c-ash)!important}
.sol-grid .parametric-chart .sol-draw path.dsh{stroke:var(--c-mute)!important}

/* each cell centred; one divider line between the two cells */
.sol-grid article{align-items:center;text-align:center;box-shadow:none!important}
.sol-grid article+article{box-shadow:none!important}
.sol-grid article:first-child{border-right:1px solid rgba(0,0,0,.08)}
.sol-grid .parametric-chart,.sol-grid .affinity-visual{align-self:center;width:100%}
.sol-grid h3,.sol-grid p{text-align:center;max-width:30rem}
@media(max-width:900px){.sol-grid article:first-child{border-right:0;border-bottom:1px solid rgba(0,0,0,.08)}}
/* products: one heading only (the hero); the explorer starts right under it */
.d-explorer{padding-top:3.2rem!important}
.premium-detail .d-catalog-hero{padding-bottom:2.4rem!important}
/* "다양한 구조에도…" section on a white background */
.premium-detail section.d-soft{background:#fff!important}
.premium-detail section.d-soft .sol-grid article{background:transparent!important}
.sol-grid article:before{background:#f6f5f4!important}

/* responsive: products page */
@media(max-width:900px){
  .d-explorer{padding-top:2rem!important}
  .d-catalog-layout .d-line-menu{max-width:100%;margin:0 0 1rem!important;justify-content:flex-start;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 2rem),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 2rem),transparent)}
  .d-line-panels{padding:.8rem!important;border-radius:1.2rem}
  .d-line-panel{padding:1.2rem 1.1rem!important;max-width:none}
  .d-line-panel .d-product-entries>div{grid-template-columns:2rem 1fr!important;gap:.5rem!important}
  .d-line-panel .line-panel-top h2{font-size:1.2rem!important}
  .sol-grid article{padding:0 1.2rem 1.6rem!important;min-height:0}
  .sol-grid .parametric-chart,.sol-grid .affinity-visual{height:9rem;margin:1.6rem 0 1rem}
  .sol-draw{width:12rem}
  .premium-detail section.d-soft{padding-top:3rem!important;padding-bottom:3rem!important}
  .d-section-head h2{font-size:1.8rem!important}
}
@media(max-width:560px){
  .premium-detail .d-catalog-hero{padding-top:4rem!important;padding-bottom:1.6rem!important}
  .d-line-panel .d-button{width:100%;justify-content:center}
}

/* =====================================================================
   Capacity page, built from the same pieces as the rest of the site
   ===================================================================== */
.premium-detail section.d-section,.premium-detail section.d-soft{background:#fff!important}
.d-capacity-statement{margin-bottom:3rem!important}
.d-capacity-statement p{font-size:1.1333rem;line-height:1.7;color:var(--c-body)!important}
/* facts: head card = gradient image, white type (same as the main capacity card) */
.d-capacity-facts.od-chain>.od-chain-head{background:#9fd6d4 url(assets/capacity-bg3.jpg) center/cover no-repeat!important;color:#fff;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.075)}
.d-capacity-facts.od-chain>.od-chain-head small,.d-capacity-facts.od-chain>.od-chain-head span{color:rgba(255,255,255,.92)!important;text-shadow:0 1px 10px rgba(10,50,120,.4)}
.d-capacity-facts.od-chain>.od-chain-head strong{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 2px 20px rgba(10,50,120,.25)}
.d-capacity-facts.od-chain>.od-chain-step{background:#fff!important;box-shadow:0 0 0 .5px rgba(0,0,0,.125),0 1px 1px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.04)!important}
.d-capacity-facts.od-chain>.od-chain-step.od-lit:after{display:none!important}
.d-capacity-facts.od-chain>.od-chain-step strong{font-size:1.4rem!important;font-weight:600}
/* framework: UI card + hairline rows */
.d-rules{background:#fff!important;border:0!important;border-radius:1.0667rem!important;box-shadow:0 0 0 .5px rgba(0,0,0,.125),0 1px 1px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.04)!important}
.cp-logo{display:block;height:1rem;width:auto}
.rule-head{gap:.8rem}
.d-live{background:#f1f3f5!important;color:#495057!important;border-radius:4px}
.framework-caption{display:none}
.framework-steps{display:flex;flex-direction:column;position:relative}
.framework-steps article{position:relative;display:grid!important;grid-template-columns:3.4rem 1fr;gap:0 1rem;align-items:start;padding:1.6rem 0!important;border:0!important;border-top:1px solid rgba(0,0,0,.05)!important}
.framework-steps article:last-child{border-bottom:1px solid rgba(0,0,0,.05)!important}
.framework-steps article>span{color:var(--c-mute)!important;font-size:.9333rem!important}
.framework-steps h3{font-size:1.4rem!important;font-weight:500!important;margin:0 0 .5rem!important;grid-column:2}
.framework-steps p{grid-column:2;font-size:1rem!important;line-height:1.6;margin:0!important;color:var(--c-mute)!important}
.framework-steps .ag-dot{display:none}
/* partnership: hairline list, no card */
.partnership-agenda{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
.partnership-agenda h3{font-size:1.0667rem!important;font-weight:600!important;margin:0 0 1rem!important}
.partnership-agenda>div{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0!important;border-top:1px solid rgba(0,0,0,.05)!important;font-size:1.0667rem;color:var(--c-ink)!important}
.partnership-agenda>div:last-child{border-bottom:1px solid rgba(0,0,0,.05)}
.partnership-agenda small{color:var(--c-ash)!important;font-size:.9333rem!important}
.partnership-agenda>div>span:last-child{color:var(--c-ash)!important}
.d-partnership h2{font-size:clamp(1.9rem,3vw,2.6rem)!important}
.d-partnership p{font-size:1.0667rem!important;color:var(--c-mute)!important}
@media(max-width:1000px){
  .d-framework,.d-partnership{grid-template-columns:1fr!important;gap:2.4rem!important}
  .framework-steps article{padding:1.2rem 0!important}
}

/* =====================================================================
   Asset rotator: cream card, one screen bleeding off the bottom, three tabs with progress bars
   ===================================================================== */
.d-framework.rt-wrap{display:block!important;max-width:var(--wrap);margin:0 auto}
.rt-card{position:relative;isolation:isolate;overflow:hidden;border-radius:1.0667rem;background:#f0efed;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.075);padding:2.6rem 4rem 0}
.rt-stage{position:relative;aspect-ratio:11/6;border-radius:1.0667rem 1.0667rem 0 0;overflow:hidden;background:#fff;box-shadow:0 0 0 .5px rgba(0,0,0,.1),0 8px 24px -12px rgba(15,0,0,.12)}
.rt-screen{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .45s,visibility .45s}
.rt-screen.on{opacity:1;visibility:visible}
.rt-screen .oa{transform:scale(var(--k,.7))}
.rt-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem;margin-top:1.6rem;padding:0 .5rem}
.rt-tab{appearance:none;border:0;background:transparent;text-align:left;padding:0;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;color:var(--c-ink)}
.rt-bar{display:block;position:relative;height:4px;width:100%;border-radius:4px;background:#e5e7eb;overflow:hidden}
.rt-bar i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:4px;background:#000}
.rt-tab.on .rt-bar i{animation:rt-fill 6s linear forwards}
@keyframes rt-fill{from{width:0}to{width:100%}}
.rt-tab b{display:block;margin-top:1.4rem;font-size:1.0667rem;font-weight:600;color:var(--c-ink)}
.rt-tab p{margin:.8rem 0 0;font-size:.9333rem;line-height:1.6;color:var(--c-mute)}
.rt-tab:not(.on) b{color:var(--c-ink)}
@media(prefers-reduced-motion:reduce){.rt-tab.on .rt-bar i{animation:none;width:100%}}
@media(max-width:900px){
  .rt-card{padding:1.2rem 1rem 0}
  .rt-stage{aspect-ratio:3/2}
  .rt-tabs{gap:.6rem;margin-top:1.2rem}
  .rt-tab p{display:none}
  .rt-tab.on p{display:block;position:absolute;left:0;right:0;margin-top:.4rem}
  .rt-tabs{position:relative;padding-bottom:6rem}
  .rt-tab b{font-size:.9333rem;margin-top:.8rem}
}
.rt-stage{aspect-ratio:11/5.1}
@media(max-width:900px){
  .rt-stage{aspect-ratio:3/1.9}
  .rt-tabs{grid-template-columns:1fr!important;gap:1.2rem!important;padding:0!important;position:static!important}
  .rt-tab p,.rt-tab.on p{position:static!important;margin:.5rem 0 0!important}
  .rt-tab p{display:none}.rt-tab.on p{display:block}
  .rt-tab b{margin-top:.7rem}
}

/* "초기 협의 항목" is an agenda (checklist), not steps: no numbers, no link arrows, a quiet check marker instead */
.partnership-agenda>div{justify-content:flex-start!important;gap:.9rem!important}
.partnership-agenda>div small,.partnership-agenda>div>span:last-child{display:none!important}
.partnership-agenda>div:before{content:'';flex:none;width:1.1rem;height:1.1rem;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--c-ash);background:none}
.partnership-agenda>div>span:nth-of-type(1){color:var(--c-ink)!important}

/* about: section head above the 3-cell grid laid out like the reference — title left, description right, sitting between the hairlines */
.d-section:has(.ag-grid) .d-section-head{display:grid!important;grid-template-columns:1fr 1fr;align-items:end;text-align:left!important;gap:3rem!important;max-width:calc(var(--wrap) + 56px)!important;margin:0 auto!important;padding:5rem 3rem 3rem!important}
.d-section:has(.ag-grid) .d-section-head>div,.d-section:has(.ag-grid) .d-section-head h2{align-items:flex-start;text-align:left!important}
.d-section:has(.ag-grid) .d-section-head h2{font-size:clamp(1.9rem,3vw,2.6rem)!important;margin:0!important;max-width:none}
.d-section:has(.ag-grid) .d-section-head p{text-align:left!important;margin:0!important;max-width:none;font-size:1.0667rem;line-height:1.7}
.d-section:has(.ag-grid){padding-top:0!important}
@media(max-width:900px){.d-section:has(.ag-grid) .d-section-head{grid-template-columns:1fr;gap:1.2rem!important;padding:3rem 1rem 2rem!important}}

/* capacity facts: same hairline cells as the about grid — 4 columns, the A-or-above card takes two */
.d-capacity-facts.od-chain.od-cells{position:relative;grid-template-columns:repeat(4,1fr);gap:0;max-width:none;margin:0 -28px 2.4rem;width:calc(100% + 56px)}
@media(max-width:1200px){.d-capacity-facts.od-chain.od-cells{margin-left:0;margin-right:0;width:100%}}
.d-capacity-facts.od-chain.od-cells:before,.d-capacity-facts.od-chain.od-cells:after{content:'';position:absolute;left:calc(50% - 50vw);width:100vw;height:1px;background:rgba(0,0,0,.05);z-index:2;pointer-events:none}
.d-capacity-facts.od-chain.od-cells:before{top:0}.d-capacity-facts.od-chain.od-cells:after{bottom:0}
.d-capacity-facts.od-chain.od-cells>div{border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:3rem!important;min-height:16.9333rem;justify-content:flex-start;gap:.5rem}
.d-capacity-facts.od-chain.od-cells>.od-chain-step+.od-chain-step,.d-capacity-facts.od-chain.od-cells>.od-chain-step{box-shadow:inset 1px 0 0 rgba(0,0,0,.05)!important}
.d-capacity-facts.od-chain.od-cells>.od-chain-step:before{display:none!important}
.d-capacity-facts.od-chain.od-cells>.od-chain-head{grid-column:span 2;background:#9fd6d4 url(assets/capacity-bg3.jpg) center/cover no-repeat!important;justify-content:flex-end;padding:3rem 3.2rem!important}
.d-capacity-facts.od-chain.od-cells>.od-chain-head strong{font-size:5.3333rem!important}
.d-capacity-facts.od-chain.od-cells>.od-chain-step .ag-ic{margin-bottom:1.6rem}
.d-capacity-facts.od-chain.od-cells>.od-chain-step small{font-size:.9333rem;font-weight:500}
.d-capacity-facts.od-chain.od-cells>.od-chain-step strong{font-size:1.4rem!important;font-weight:500;margin-top:.2rem}
.d-capacity-facts.od-chain.od-cells .ag-dot{position:absolute}
@media(max-width:900px){
  .d-capacity-facts.od-chain.od-cells{grid-template-columns:1fr;max-width:100%}
  .d-capacity-facts.od-chain.od-cells>div{padding:2rem!important;min-height:0}
  .d-capacity-facts.od-chain.od-cells>.od-chain-head{grid-column:auto;min-height:13rem}
  .d-capacity-facts.od-chain.od-cells>.od-chain-step,.d-capacity-facts.od-chain.od-cells>.od-chain-step+.od-chain-step{box-shadow:inset 0 1px 0 rgba(0,0,0,.05)!important}
  .d-capacity-facts.od-chain.od-cells .ag-dot{display:none}
  .d-capacity-facts.od-chain.od-cells>.od-chain-head strong{font-size:3.6rem!important}
}

/* partnership: the starting-point list sits below the button, one column */
.d-partnership{grid-template-columns:1fr!important;gap:3rem!important;max-width:44rem}
.d-partnership .partnership-agenda{max-width:none;width:100%}

/* =====================================================================
   Singulare AI page: same pieces as the rest of the site
   ===================================================================== */
.premium-technology .d-hero-art{margin-top:4rem}
.tk-card{padding:2.6rem 4rem 0}
.tk-card .rt-stage{aspect-ratio:11/6}
.tk-hero.tk-card .rt-stage{aspect-ratio:11/6.15}
/* workflow band: five hairline cells instead of a grey bar */
.premium-technology .d-tech-ribbon{display:grid!important;grid-template-columns:repeat(5,1fr);gap:0!important;max-width:calc(var(--wrap) + 56px);margin:0 auto!important;padding:0!important;background:transparent!important;position:relative;width:100%}
.premium-technology .d-tech-ribbon:before,.premium-technology .d-tech-ribbon:after{content:'';position:absolute;left:calc(50% - 50vw);width:100vw;height:1px;background:rgba(0,0,0,.05);pointer-events:none}
.premium-technology .d-tech-ribbon:before{top:0}.premium-technology .d-tech-ribbon:after{bottom:0}
.premium-technology .d-tech-ribbon>div{position:relative;display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center;gap:.5rem!important;min-width:0!important;flex:none;padding:1.8rem 2rem!important;font-size:1.0667rem!important;font-weight:500;color:var(--c-ink)}
.premium-technology .d-tech-ribbon>div+div{box-shadow:inset 1px 0 0 rgba(0,0,0,.05)}
.premium-technology .d-tech-ribbon small{font-size:.9333rem!important;font-weight:400;color:var(--c-ash)!important}
.premium-technology .d-tech-ribbon>div>span:nth-of-type(2){display:none!important}
.premium-technology .d-tech-ribbon .ag-dot{position:absolute}
/* feature blocks: copy on top (title left, text right), the screen below */
.premium-technology .d-feature-story.tk-story{grid-template-columns:1fr!important;gap:2.6667rem!important;max-width:var(--wrap);margin-left:auto;margin-right:auto}
.premium-technology .d-feature-story.tk-story+.d-feature-story{margin-top:6rem!important;padding-top:6rem!important}
.tk-story .feature-story-copy{order:-1!important;display:grid;grid-template-columns:1fr 1fr;column-gap:4rem;row-gap:1.2rem;align-items:start;text-align:left}
.tk-story .feature-story-copy>*{grid-column:2;margin:0!important;max-width:none}
.tk-story .feature-story-copy>h2{grid-column:1;grid-row:1/span 4;font-size:clamp(1.9rem,3vw,2.6rem)!important;line-height:1.2!important}
.tk-story .feature-story-copy>.d-eyebrow{display:none!important}
.tk-story .feature-story-copy>p{font-size:1.0667rem!important;line-height:1.7;color:var(--c-mute)!important}
.tk-story .d-check-list{display:flex;flex-direction:column;gap:.7rem;padding:0;margin:.4rem 0 0!important;font-size:1.0667rem}
.tk-story .d-governance-note{font-size:1.0667rem;line-height:1.7;margin-top:.4rem!important}
.premium-technology .d-section-head{max-width:50.6667rem}
@media(max-width:900px){
  .tk-card{padding:1.2rem 1rem 0}
  .tk-card .rt-stage,.tk-hero.tk-card .rt-stage{aspect-ratio:3/2}
  .premium-technology .d-tech-ribbon{grid-template-columns:1fr 1fr;max-width:100%}
  .premium-technology .d-tech-ribbon>div{padding:1.2rem 1rem!important;box-shadow:inset 0 1px 0 rgba(0,0,0,.05)!important}
  .premium-technology .d-tech-ribbon .ag-dot{display:none}
  .tk-story .feature-story-copy{grid-template-columns:1fr;row-gap:1rem}
  .tk-story .feature-story-copy>*,.tk-story .feature-story-copy>h2{grid-column:1;grid-row:auto}
  .premium-technology .d-feature-story.tk-story+.d-feature-story{margin-top:3.5rem!important;padding-top:3.5rem!important}
}

/* hero headline: the block itself sits in the middle (it has a max-width, so margins must be auto) */
.premium-detail .d-hero-grid h1,html[lang=ko] .premium-detail .technology-hero h1{margin-left:auto!important;margin-right:auto!important}

/* Singulare AI carousel (side by side): text left, screen right; frame = page hairlines + dots; nav sits on the bottom line */
.sx-host{max-width:calc(var(--wrap) + 56px);margin:0 -28px;width:calc(100% + 56px)}
@media(max-width:1200px){.sx-host{margin:0;width:100%;max-width:100%}}
.sx{position:relative;margin-bottom:2.4rem}
.sx:before,.sx:after{content:'';position:absolute;left:calc(50% - 50vw);width:100vw;height:1px;background:rgba(0,0,0,.05);z-index:3;pointer-events:none}
.sx:before{top:0}.sx:after{bottom:0}
.sx .ag-dot{position:absolute;z-index:4}
.sx-slides{display:grid}
.sx-slide{grid-area:1/1;display:grid;grid-template-columns:36fr 64fr;opacity:0;visibility:hidden;transition:opacity .45s,visibility .45s}
.sx-slide.on{opacity:1;visibility:visible}
.sx-left{padding:3.2rem 2.6rem 4rem 3rem;border-right:1px solid rgba(0,0,0,.05);display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.sx-left h3{font-size:clamp(1.6rem,2.4vw,2.1333rem);line-height:1.25;font-weight:700;letter-spacing:-.02em;color:var(--c-ink);margin:0}
.sx-left>p{margin:var(--od-title-gap,1.3333rem) 0 0;font-size:1.0667rem;line-height:1.7;color:var(--c-mute)}
.sx-left .rt-x{margin-top:1.6rem}
.sx-right{background:#faf9f8;display:flex;padding:2.4rem 0 0 2.4rem;min-height:31rem}
.sx-stage{position:relative;flex:1;overflow:hidden;border-radius:1rem 0 0 0;background:#fff;box-shadow:0 0 0 .5px rgba(0,0,0,.1),0 8px 24px -12px rgba(15,0,0,.12)}
.sx-stage .oa{position:absolute;left:0;top:0;transform:scale(var(--k,.5))}
.sx-nav{position:absolute;left:50%;bottom:0;transform:translate(-50%,50%);z-index:5;display:flex;align-items:center;gap:.5rem}
.sx-arrow{appearance:none;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;border:1px solid rgba(0,0,0,.08);background:#fdfcfc;color:#000;cursor:pointer;padding:0}
.sx-arrow:hover{background:#faf9f8}
.sx-arrow svg{width:1rem;height:1rem;opacity:.6}
.sx-dots{display:flex;gap:.5rem;padding:.75rem 1.5rem;border-radius:66.6rem;border:1px solid rgba(0,0,0,.08);background:#fdfcfc}
.sx-dot{appearance:none;width:.5rem;height:.5rem;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.1);cursor:pointer;transition:background .3s}
.sx-dot:hover{background:rgba(0,0,0,.8)}.sx-dot.on{background:#000}
.sx-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rt-x{display:flex;flex-direction:column;gap:.6rem;font-size:1rem;line-height:1.5;color:var(--c-ink)}
.rt-list>span{position:relative;padding-left:1.4rem}
.rt-list>span:before{content:'';position:absolute;left:.1rem;top:.35em;width:.4rem;height:.7rem;border:solid var(--c-mute);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.rt-note{padding-left:.9rem;border-left:2px solid var(--c-ink);color:var(--c-mute)}
.premium-technology .d-feature-story{display:none}
@media(max-width:900px){
  .sx-slide{grid-template-columns:1fr;align-content:start}
  .sx-left{padding:2rem 1rem 1.6rem;border-right:0;border-bottom:1px solid rgba(0,0,0,.05)}
  .sx-right{padding:1.2rem 0 0 1rem;min-height:0}
  .sx-stage{aspect-ratio:4/3;flex:none;width:100%}
  .sx .ag-dot{display:none}
}

/* heading size must not depend on the language: the mobile size has to beat every per-page heading rule in both KO and EN */
@media(max-width:640px){
  body .premium-detail h1,body .premium-detail .d-hero-grid h1,body .premium-detail .catalog-heading h1,body .premium-detail .contact-hero-inner h1,html[lang=en] body .premium-detail h1{font-size:34px!important;letter-spacing:-2px!important}
}

/* product pills: English labels are longer; tighter padding keeps all eight on one row at desktop widths (below that the row scrolls, as in Korean) */
@media(min-width:1100px){
  html[lang=en] .d-catalog-layout .d-line-menu button{padding:0 .8667rem!important;font-size:1rem}
}

/* About top cards: titles start at the same height right under the icon (they were pushed to the bottom, so each title sat at a different height) */
.d-disciplines.ag-grid .ag-ic{margin-bottom:0}
.d-disciplines.ag-grid article{justify-content:flex-start}
@media(max-width:900px){.d-disciplines.ag-grid article,.d-disciplines.ag-grid article:first-child,.d-disciplines.ag-grid article:last-child{padding:2rem!important}}
/* About top cards: icon / title / description rows are shared by the three cards (subgrid), so the title area has the same height and the descriptions start at the same line */
@media(min-width:901px){
  .d-disciplines.ag-grid{grid-template-rows:auto auto 1fr}
  .d-disciplines.ag-grid article{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start}
}

/* Careers "How we hire": the About timeline (bar, black dots, dotted drop lines) with four steps.
   Dots sit at 0 / 1/3 / 2/3 / 100% of the bar: columns 1fr 2fr 2fr 1fr (left text, two centred texts, right text) */
.tl-hire{max-width:var(--wrap);margin:0 auto;padding-top:1rem}
.tl-hire .tl-caption{font-size:.9333rem;color:var(--c-mute);margin:0 0 1.6rem}
.tl.tl-4{grid-template-columns:1fr 2fr 2fr 1fr}
.tl-4 .tl-txt{gap:.5rem}
.tl-4 .tl-n{font-size:.9333rem;color:var(--c-ash);font-variant-numeric:tabular-nums}
.tl-4 .tl-step{font-size:1.0667rem;font-weight:500;color:var(--c-ink);line-height:1.3;max-width:15rem}
@media(max-width:900px){.tl.tl-4{grid-template-columns:1fr!important}.tl-4 .tl-step{max-width:none}}
.tl.tl-4 .tl-col .tl-txt{gap:.5rem!important}   /* same title height in every column (centre columns had a larger gap) */


/* Careers benefits: intro on the left, three rows of two items on the right,
   each item = icon tile + title on one line, grey description below */
.cr-ben-grid{display:grid;grid-template-columns:17.75rem minmax(0,1fr);gap:4rem;align-items:start;max-width:var(--wrap);margin:0 auto;padding:5rem 0}
.cr-ben-intro{display:flex;flex-direction:column;gap:1.2rem;text-align:left}
.cr-ben-intro .d-eyebrow{text-align:left}
.cr-ben-intro h2{margin:0!important;text-align:left!important;font-size:clamp(1.6rem,2.4vw,2rem)!important;line-height:1.2!important}
.cr-ben-intro p{margin:0!important;text-align:left!important;color:var(--c-mute)!important;font-size:1rem;line-height:1.6}
.cr-ben-rows{display:flex;flex-direction:column}
.cr-ben-row{display:grid;grid-template-columns:1fr 1fr;gap:0 5rem;padding:1.6rem 0;border-top:.5px solid rgba(0,0,0,.1)}
.cr-ben-row:first-child{border-top:0;padding-top:0}
.cr-ben-row:last-child{padding-bottom:0}
.cr-ben-item{display:flex;flex-direction:column;gap:1rem}
.cr-ben-head{display:flex;align-items:center;gap:.8rem}
.cr-ben-ic{flex:none;width:2.4rem;height:2.4rem;border-radius:.6667rem;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);display:grid;place-items:center;color:var(--c-ink)}
.cr-ben-ic svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cr-ben-item h3{margin:0!important;font-size:1.1333rem!important;line-height:1.3!important;font-weight:600!important;color:var(--c-ink)}
.cr-ben-item p{margin:0!important;font-size:.9333rem!important;line-height:1.6!important;color:var(--c-mute)!important;max-width:24rem}
@media(max-width:1000px){.cr-ben-grid{grid-template-columns:1fr;gap:2.4rem;padding:3.5rem 0}}
@media(max-width:700px){.cr-ben-row{grid-template-columns:1fr;gap:1.6rem 0}.cr-ben-row .cr-ben-item+.cr-ben-item{border-top:.5px solid rgba(0,0,0,.1);padding-top:1.6rem}}

/* Careers compensation: three cards, one open at a time.
   Closed = icon, label and title only; open = the card grows and the description appears.
   Background pictures: set --cr-img on a card and add class has-img (see the note at the end of this block). */
.cr-comp{display:flex;gap:.8rem;height:27rem;max-width:var(--wrap);margin:2.4rem auto 0}
.cr-card{position:relative;isolation:isolate;flex:1 1 0;min-width:0;border-radius:1.0667rem;overflow:hidden;background:var(--el-strong,#f0efed);box-shadow:inset 0 0 0 .5px rgba(0,0,0,.075);transition:flex-grow .55s cubic-bezier(.22,.61,.36,1)}
.cr-card.on{flex-grow:2.6}
.cr-card:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--cr-img,none) center/cover no-repeat;transform:scale(1.04);transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.cr-card.on:before{transform:none}
.cr-card-hd{position:absolute;inset:0;width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1.6rem 1.6rem 0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.cr-card-hd:focus-visible{outline:2px solid var(--c-ink);outline-offset:-4px;border-radius:1.0667rem}
.cr-ic{width:2.6667rem;height:2.6667rem;border-radius:.6667rem;background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);display:grid;place-items:center;color:var(--c-ink);margin-bottom:1rem}
.cr-ic svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cr-lbl{font-size:.9333rem;color:var(--c-mute)}
.cr-ttl{font-size:1.4rem;font-weight:500;line-height:1.25;color:var(--c-ink);max-width:16rem}
.cr-desc{position:absolute;left:1.6rem;right:1.6rem;bottom:1.6rem;margin:0!important;max-width:24rem;font-size:1rem!important;line-height:1.6!important;color:var(--c-body,#4e4e4e)!important;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .35s,transform .45s,visibility .35s}
.cr-card.on .cr-desc{opacity:1;visibility:visible;transform:none;transition-delay:.18s,.18s,.18s}
/* with a background picture: white text and a soft shade at the bottom for the description */
.cr-card.has-img{color:#FFF}
.cr-card.has-img .cr-lbl,.cr-card.has-img .cr-ttl,.cr-card.has-img .cr-desc{color:#FFF!important;text-shadow:0 1px 14px rgba(0,0,0,.35)}
.cr-card.has-img:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,0) 40%,rgba(0,0,0,.42))}
/* phones / tablets: stacked, closed cards show the header only */
@media(max-width:900px){
  .cr-comp{flex-direction:column;height:auto}
  .cr-card{flex:none;height:8.6rem;transition:height .5s cubic-bezier(.22,.61,.36,1)}
  .cr-card.on{height:17rem}
  .cr-card-hd{flex-direction:row;flex-wrap:wrap;align-items:center;align-content:flex-start;gap:.2rem 1rem;padding:1.4rem}
  .cr-ic{margin-bottom:0}
  .cr-lbl{flex-basis:calc(100% - 3.67rem)}
  .cr-ttl{flex-basis:100%;margin-top:.4rem}
  .cr-desc{left:1.4rem;right:1.4rem;bottom:1.4rem}
}
@media(prefers-reduced-motion:reduce){.cr-card,.cr-card:before,.cr-desc{transition:none}}
/* Careers compensation cards: background pictures (blue / green / orange), text #FFF */
.cr-card[data-i="0"]{--cr-img:url(assets/careers-compensation.jpg)}
.cr-card[data-i="1"]{--cr-img:url(assets/careers-bonus.jpg)}
.cr-card[data-i="2"]{--cr-img:url(assets/careers-equity.jpg)}

/* contact: privacy notice and consent */
.d-privacy{margin:0.5333rem 0 1.0667rem;padding-top:1.0667rem;border-top:1px solid var(--c-hair)}
.d-privacy h3{margin:0 0 0.5333rem;font-size:1rem;font-weight:600;color:var(--c-ink)}
.d-privacy p{white-space:normal!important;margin:0 0 0.5333rem;font-size:0.8667rem;line-height:1.5;color:var(--c-mute)}
.d-enquiry-card label.d-consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:0.6667rem;margin:0.8rem 0 0;font-weight:500;font-size:0.9333rem;line-height:1.45;cursor:pointer}
.d-enquiry-card label.d-consent span{white-space:normal!important;display:block}
.d-enquiry-card label.d-consent input{flex:none;width:1.2rem!important;height:1.2rem;margin:0.1rem 0 0!important;padding:0!important;accent-color:var(--c-ink)}
