.title-mark{display:flex;align-items:center;gap:12px;color:var(--blue);margin-bottom:28px}
.title-mark svg{width:24px;height:24px}
.title-mark span{font-size:12px;letter-spacing:.16em;font-weight:700}
.ambient{position:relative;height:min(58vw,610px);min-height:420px;margin:0;overflow:hidden;background:var(--black)}
.ambient:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(15,16,20,.78))}
.ambient img{width:100%;height:100%;object-fit:cover}
.ambient figcaption{position:absolute;z-index:1;left:6vw;right:6vw;bottom:42px;color:#fff;font:600 clamp(26px,3vw,46px)/1.05 'Plus Jakarta Sans';letter-spacing:-.035em}
.image-placeholder{width:100%;height:100%;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;background:linear-gradient(145deg,#f6f7fa,#e9ecf3);color:#707684}
.image-placeholder span{width:58px;height:58px;display:grid;place-items:center;border:1px solid #c9ced9;color:var(--blue)}
.image-placeholder svg{width:28px;height:28px}
.image-placeholder b{font:600 18px/1.2 'Plus Jakarta Sans'}
.image-placeholder small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#8c919d}
.detail.text-only{display:block}
.detail.text-only .section-title{max-width:980px}
.detail>*{min-width:0}
.pagehero>*{min-width:0}
.pagehero.context-hero figure img{object-fit:cover}
.pagehero.product-hero figure img{object-fit:contain}
.pagehero h1,.detail h2{overflow-wrap:break-word}
html,body{max-width:100%;overflow-x:clip}
body{padding-top:80px}
header{position:fixed;inset:0 0 auto 0;width:100%;box-shadow:0 8px 30px rgba(17,24,39,.08)}
.process-navigation{padding:72px 6vw 82px;background:#fff;border-bottom:1px solid var(--line)}
.process-heading{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1fr);column-gap:6vw;align-items:end;margin-bottom:38px}
.process-heading .tag{grid-column:1/-1;margin:0 0 10px}
.process-heading h2{font:600 clamp(36px,4.3vw,64px)/1 'Plus Jakarta Sans',serif;letter-spacing:-.045em;margin:0}
.process-heading>p:last-child{color:var(--muted);font-size:17px;max-width:520px;margin:0 0 5px}
.process-list{display:grid;grid-template-columns:repeat(9,minmax(105px,1fr));gap:12px}
.process-list>a{min-width:0;padding:20px 10px 16px;text-align:center;border:1px solid #e0e3eb;background:#f8f9fc;transition:.2s;display:flex;flex-direction:column;align-items:center}
.process-list>a:hover,.process-list>a:focus-visible{background:var(--blue);border-color:var(--blue);color:#fff;transform:translateY(-4px);outline:0}
.process-icon{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:#eef0ff;color:var(--blue);margin-bottom:14px;transition:.2s}
.process-icon svg{width:34px;height:34px;stroke-width:1.35}
.process-list>a:hover .process-icon,.process-list>a:focus-visible .process-icon{background:#fff;color:var(--blue)}
.process-list strong{font-size:14px;line-height:1.2}
.process-list small{font-size:11px;margin-top:8px;color:var(--muted)}
.process-list small b{color:var(--blue)}
.process-list>a:hover small,.process-list>a:focus-visible small,.process-list>a:hover small b,.process-list>a:focus-visible small b{color:#fff}
.detail.card-composition{grid-template-columns:31% 1fr}
.detail.card-composition .info-grid article:nth-child(3n+2){background:#f4f6ff}
.detail.dark-section.card-composition .info-grid article:nth-child(3n+2){background:#272725}
.detail.column-composition{grid-template-columns:44% 1fr}
.detail.flow-composition .section-title{max-width:680px}
.detail.flow-composition .flow{align-content:center}
.category-grid a h3{margin-top:auto}
.category-grid a:nth-child(even){background:#f7f8fb}
.category-grid a:nth-child(even):hover{background:var(--blue)}
.detail.editorial-split{grid-template-columns:minmax(0,1fr) minmax(340px,46%);gap:5vw;align-items:stretch;padding-right:0}
.editorial-split .editorial-copy{padding:10px 0;min-width:0}
.editorial-split .section-body{margin-top:42px}
.editorial-split figure{margin:-105px 0;min-height:640px;overflow:hidden;background:#dfe2e8}
.editorial-split figure img{width:100%;height:100%;object-fit:cover}
.editorial-split .section-title>p:not(.tag){max-width:680px;font-size:17px;line-height:1.72}
.editorial-split .section-body{max-width:760px}
.editorial-split:nth-of-type(even) figure{order:-1}
.editorial-split:nth-of-type(even){padding-left:0;padding-right:6vw}
.editorial-split:nth-of-type(even) .editorial-copy{padding-left:0}
.editorial-split.dark-section figure{box-shadow:inset 1px 0 #ffffff20}
@media(min-width:1001px){
  .detail:nth-of-type(even):not(.card-composition):not(.text-only) .section-title{order:2}
  .detail:nth-of-type(even):not(.card-composition):not(.text-only) .section-body{order:1}
  .detail:nth-of-type(even):not(.card-composition):not(.text-only){grid-template-columns:1fr 38%}
}
@media(max-width:760px){
  body{padding-top:68px}
  .process-navigation{padding:54px 0 58px}
  .process-heading{display:block;padding:0 6vw;margin-bottom:28px}
  .process-heading h2{margin-bottom:14px}
  .process-list{display:flex;overflow-x:auto;gap:12px;padding:4px 6vw 18px;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:thin}
  .process-list>a{flex:0 0 128px;scroll-snap-align:start}
  .ambient{height:440px;min-height:0}
  .ambient figcaption{bottom:26px}
  .detail.card-composition,.detail.column-composition{grid-template-columns:1fr}
  .detail.editorial-split{grid-template-columns:1fr;padding-right:6vw;gap:42px}
  .editorial-split:nth-of-type(even){padding-left:6vw}
  .editorial-split:nth-of-type(even) figure{order:initial}
  .editorial-split figure{margin:0 -6vw -72px;min-height:360px;max-height:520px}
}
@media(min-width:761px) and (max-width:1000px){
  .detail.editorial-split{grid-template-columns:1fr;padding-right:6vw}
  .editorial-split figure{margin:0 -6vw -105px;min-height:520px}
}
.modal-open{overflow:hidden}
.quote-dialog{width:min(1180px,calc(100% - 42px));height:min(760px,calc(100vh - 42px));max-width:none;max-height:none;padding:0;border:0;background:#fff;color:var(--ink);box-shadow:0 40px 120px #080b1690;overflow:hidden}
.quote-dialog[open]{animation:quote-in .32s ease-out}
.quote-dialog::backdrop{background:rgba(10,12,18,.8);backdrop-filter:blur(8px)}
@keyframes quote-in{from{opacity:0;transform:translateX(35px)}to{opacity:1;transform:none}}
.quote-shell{display:grid;grid-template-columns:38% 62%;height:100%}
.quote-aside{position:relative;overflow:hidden;padding:50px;background:linear-gradient(145deg,#15171d 0%,#202b55 72%,#405cf5 145%);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.quote-aside:after{content:'';position:absolute;width:380px;height:380px;border:1px solid #ffffff18;border-radius:50%;right:-220px;bottom:-170px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff05}
.quote-aside>*{position:relative;z-index:1}.quote-aside>img{width:160px}.quote-kicker{font-size:11px;letter-spacing:.18em;color:#93a4ff;font-weight:700}
.quote-aside h2{font:600 clamp(35px,3.3vw,52px)/1 'Plus Jakarta Sans';letter-spacing:-.05em;margin:18px 0 22px}.quote-aside>div>p:last-child{color:#c8ccd8;font-size:16px}
.section-title h3,.quote-aside h2{font-family:'Unna',serif;font-weight:700;letter-spacing:-.015em}
.quote-aside ol{list-style:none;padding:0;margin:0;display:grid;gap:13px}.quote-aside li{display:flex;align-items:center;gap:14px;font-size:13px;color:#d7dae4}.quote-aside li span{color:#7f94ff;font:600 11px 'Plus Jakarta Sans'}
.quote-main{position:relative;padding:46px 7%;overflow:auto}.quote-close{position:absolute;top:24px;right:26px;width:42px;height:42px;border:1px solid #d7dbe4;background:#fff;color:var(--ink);font-size:27px;line-height:1;cursor:pointer;transition:.2s}.quote-close:hover{background:var(--black);color:#fff;border-color:var(--black)}
.quote-intro{margin-bottom:28px}.quote-intro h3{font:600 38px/1 'Plus Jakarta Sans';letter-spacing:-.04em;margin:7px 55px 8px 0}.quote-intro>p:last-child{margin:0;color:var(--muted)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px}.quote-dialog label{display:grid;gap:7px;font-size:13px;font-weight:700}.quote-dialog label>span{color:#353944}
.quote-dialog input,.quote-dialog select,.quote-dialog textarea{width:100%;border:0;border-bottom:1px solid #cfd3dc;background:#f6f7fa;color:var(--ink);padding:12px 13px;font:15px/1.4 'Plus Jakarta Sans';border-radius:0}.quote-dialog input::placeholder,.quote-dialog textarea::placeholder{color:#979ca8}
.quote-dialog input:focus,.quote-dialog select:focus,.quote-dialog textarea:focus{outline:0;border-color:var(--blue);box-shadow:inset 0 -2px var(--blue)}.quote-dialog textarea{resize:vertical}.requirements-field{margin-top:18px}
.privacy-consent{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:flex-start;gap:10px!important;margin-top:16px;font-weight:400!important;line-height:1.45}.privacy-consent input{width:18px!important;height:18px;min-width:18px;margin:1px 0 0;padding:0;accent-color:var(--blue);box-shadow:none!important}.privacy-consent span{font-size:12px;color:var(--muted)!important}
.quote-footer{display:flex;align-items:center;gap:20px;margin-top:22px}.quote-submit{border:0;background:var(--blue);color:#fff;padding:15px 20px;font:700 14px 'Plus Jakarta Sans';cursor:pointer;white-space:nowrap}.quote-submit span{margin-left:20px}.form-note,.form-status{font-size:12px;color:var(--muted);margin:0;line-height:1.4}.form-status{color:var(--blue);font-weight:700;margin-top:10px}
@media(max-width:860px){.quote-dialog{width:100%;height:100%;max-height:100vh}.quote-shell{grid-template-columns:1fr}.quote-aside{display:none}.quote-main{padding:70px 7% 40px}.quote-close{top:18px;right:18px}.form-grid{grid-template-columns:1fr}.quote-footer{align-items:flex-start;flex-direction:column}.quote-dialog input,.quote-dialog select,.quote-dialog textarea{font-size:16px}}
