/* Sicreto v2: product layer on top of style.css tokens */
.v2 main{display:block}
.v2 .w{width:min(1240px,100% - 2*var(--gut))}
.kick{font:400 .74rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mut);display:inline-flex;align-items:center;gap:10px;margin:0 0 22px}
.kick i{width:8px;height:8px;border-radius:50%;background:var(--ac);display:inline-block;box-shadow:0 0 0 4px rgba(181,50,26,.14)}
.h-xl{font-family:var(--serif);font-weight:400;font-size:clamp(2.9rem,7.4vw,6.6rem);line-height:.94;letter-spacing:-.022em;text-wrap:balance;margin:0}
.h-xl em,.h-l em{color:var(--ac)}
.h-l{font-family:var(--serif);font-size:clamp(2.2rem,4.6vw,4rem);line-height:1;letter-spacing:-.015em;text-wrap:balance}
.lede{font-size:clamp(1.06rem,1.5vw,1.28rem);line-height:1.55;color:var(--mut);max-width:40em;margin:26px 0 0}
.lede b{color:var(--ink);font-weight:600}
.sec{padding:var(--sec) 0}
.sec.tight{padding:clamp(48px,6vw,88px) 0}
.sec.alt{background:var(--paper2)}
.sec.ink{background:var(--ink);color:var(--paper)}
.sec.ink a:not(.btn){color:var(--paper)}
.sec.ink .kick,.sec.ink .lede,.sec.ink .mut{color:var(--inkmut)}
.mut{color:var(--mut)}
.shd{display:grid;gap:18px;max-width:52rem;margin-bottom:clamp(36px,5vw,64px)}
.shd p{margin:0}
/* hero */
.hero2{padding:clamp(40px,7vw,96px) 0 clamp(56px,7vw,104px);position:relative;overflow:hidden}
.hero2 .grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,72px);align-items:center}
.hero2 .cta{margin-top:34px}
.hero2:before{content:"";position:absolute;inset:auto -10% -40% 40%;height:70%;background:radial-gradient(closest-side,rgba(181,50,26,.10),transparent 70%);pointer-events:none}
.paths{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:38px}
.path{position:relative;display:flex;flex-direction:column;gap:8px;padding:22px 22px 20px;border:1px solid var(--ink);border-radius:4px;text-decoration:none;color:var(--ink);background:var(--card);transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,background .25s}
.path:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(26,24,20,.45);color:var(--ink)}
.path.dk{background:var(--ink);color:var(--paper)}.path.dk:hover{color:var(--paper)}
.path .pk{font:400 .7rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;opacity:.7}
.path b{font-family:var(--serif);font-weight:400;font-size:1.7rem;line-height:1.05}
.path span.d{font-size:.94rem;opacity:.85;line-height:1.45}
.path .go{margin-top:8px;font-weight:600;font-size:.92rem;display:inline-flex;gap:8px;align-items:center}
.path .go svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .25s}.path:hover .go svg{transform:translateX(4px)}
/* stacked product preview */
.stack{position:relative;min-height:460px}
.stack .pcard{position:absolute;width:min(380px,92%)}
.stack .pcard:nth-child(1){top:0;right:0;transform:rotate(1.6deg)}
.stack .pcard:nth-child(2){bottom:0;left:0;transform:rotate(-2deg)}
.stack .tag{position:absolute;left:0;top:-4px;font:400 .66rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.pcard{background:var(--card);border:1px solid var(--ink);border-radius:6px;padding:18px 18px 16px;box-shadow:0 30px 60px -40px rgba(26,24,20,.55)}
.pcard .ph{display:flex;justify-content:space-between;align-items:center;font:400 .66rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut);padding-bottom:12px;border-bottom:1px solid var(--rule)}
.pcard h5{font-family:var(--serif);font-weight:400;font-size:1.45rem;margin:12px 0 2px;line-height:1.1}
.pcard .meta{font-size:.82rem;color:var(--mut)}
.pcard dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:12px 0 0;font-size:.84rem}
.pcard dt{font:400 .66rem/1.7 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--mut)}
.pcard dd{margin:0}
.pcard .row{display:flex;gap:14px;align-items:center;margin-top:12px}
.pill{display:inline-flex;align-items:center;gap:6px;font:400 .7rem/1 var(--mono);letter-spacing:.04em;padding:.45em .7em;border:1px solid var(--rule);border-radius:999px;background:var(--paper);white-space:nowrap}
.pill.ac{border-color:var(--ac);color:var(--ac)}
.pill.ok{border-color:#2F6B3A;color:#2F6B3A}
.pill.dk{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.pills{display:flex;flex-wrap:wrap;gap:6px}
/* score ring */
.ring{--p:0;--c:var(--ac);width:var(--s,84px);height:var(--s,84px);border-radius:50%;background:conic-gradient(var(--c) calc(var(--p)*1%),var(--rule) 0);display:grid;place-items:center;flex:none;transition:--p 1s}
.ring>span{width:calc(100% - 12px);height:calc(100% - 12px);border-radius:50%;background:var(--card);display:grid;place-items:center;font-family:var(--serif);font-size:calc(var(--s,84px)*.38);line-height:1}
.ring small{display:block;font:400 .6rem/1 var(--mono);color:var(--mut);letter-spacing:.08em;margin-top:2px}
@property --p{syntax:"<number>";inherits:false;initial-value:0}
/* pillars */
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--ink)}
.pillar{padding:clamp(28px,4vw,52px) clamp(0px,3vw,44px) clamp(28px,4vw,52px) 0}
.pillar+.pillar{border-left:1px solid var(--ink);padding-left:clamp(20px,3vw,44px)}
.pillar .n{font:400 .74rem/1 var(--mono);letter-spacing:.12em;color:var(--ac)}
.pillar h3{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.02;margin:14px 0 14px}
.pillar ul{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:0}
.pillar li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid var(--rule);font-size:.96rem}
.pillar li span:last-child{font:400 .74rem/1.6 var(--mono);color:var(--mut);text-align:right}
.note{font-size:.86rem;color:var(--mut);border-left:2px solid var(--ac);padding:4px 0 4px 12px;margin:18px 0 0}
.sec.ink .note{color:var(--inkmut)}
/* flow / steps */
.flow4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;counter-reset:f;border-top:1px solid currentColor}
.flow4>div{padding:24px 22px 8px 0;position:relative}
.flow4>div+div{padding-left:22px;border-left:1px solid rgba(189,182,165,.35)}
.flow4 .sn{font:400 .72rem/1 var(--mono);letter-spacing:.1em;color:var(--acl)}
.sec:not(.ink) .flow4 .sn{color:var(--ac)}
.flow4 h3{font-size:1.4rem;margin:14px 0 10px}
.flow4 p{font-size:.94rem;opacity:.85}
.who{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:14px;margin-top:44px;padding:22px;border:1px dashed rgba(189,182,165,.5);border-radius:6px}
.who div{text-align:center}.who b{display:block;font-family:var(--serif);font-weight:400;font-size:1.4rem}.who small{font:400 .7rem/1.3 var(--mono);letter-spacing:.06em;color:var(--inkmut);text-transform:uppercase}
.who .ar{font:400 .7rem/1.3 var(--mono);color:var(--acl);text-align:center;white-space:nowrap}
.who .mid b{color:var(--acl)}
/* tiles */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.tile{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--rule);background:var(--card);border-radius:4px;text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s}
a.tile:hover{border-color:var(--ink);transform:translateY(-2px);color:var(--ink)}
.tile .k{font:400 .68rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ac)}
.tile b{font-family:var(--serif);font-weight:400;font-size:1.35rem;line-height:1.1}
.tile span{font-size:.9rem;color:var(--mut);line-height:1.45}
/* founder */
.founder{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,48px);align-items:start}
.mono-av{width:clamp(88px,12vw,140px);aspect-ratio:1;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-family:var(--serif);font-size:clamp(2.2rem,4vw,3.4rem)}
.quote{font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.18;margin:0;text-wrap:pretty}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-top:44px}
.facts div{padding:18px 18px 18px 0}.facts div+div{border-left:1px solid var(--rule);padding-left:18px}
.facts b{display:block;font-family:var(--serif);font-weight:400;font-size:1.35rem;line-height:1.1}
.facts span{font-size:.84rem;color:var(--mut)}
/* catalogue */
.cat{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,4vw,56px);align-items:start}
.envs{display:flex;flex-direction:column;border-top:1px solid var(--ink)}
.env{all:unset;cursor:pointer;display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 4px;border-bottom:1px solid var(--rule);font-family:var(--serif);font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.1;transition:color .2s,padding .25s}
.env small{font:400 .7rem/1 var(--mono);color:var(--mut);letter-spacing:.08em}
.env:hover{color:var(--ac)}
.env[aria-selected=true]{color:var(--ac);padding-left:14px;border-bottom-color:var(--ac)}
.env:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.envp{background:var(--card);border:1px solid var(--ink);border-radius:6px;padding:clamp(20px,3vw,34px);position:sticky;top:96px}
.envp h3{font-size:clamp(1.8rem,3vw,2.5rem);margin:10px 0 8px}
.envp .cols{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}
.envp h4{color:var(--mut);margin-bottom:10px}
.envp ul{margin:0;padding-left:1.1em;font-size:.95rem}
.envp li{margin:0 0 5px}
.viz{height:120px;border-radius:4px;background:repeating-linear-gradient(90deg,transparent 0 22px,rgba(26,24,20,.06) 22px 23px),linear-gradient(180deg,var(--paper2),var(--paper));border:1px solid var(--rule);position:relative;overflow:hidden;margin-top:6px}
.viz i{position:absolute;bottom:0;width:2px;background:var(--ac);opacity:.75;animation:bar 2.4s ease-in-out infinite}
@keyframes bar{0%,100%{height:var(--a)}50%{height:var(--b)}}
.viz .lbl{position:absolute;left:10px;top:8px;font:400 .62rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
@media (prefers-reduced-motion:reduce){.viz i{animation:none}}
.sectors{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--rule)}
.sector{padding:20px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.sector b{font-family:var(--serif);font-weight:400;font-size:1.3rem;display:block;margin-bottom:6px}
.sector span{font-size:.9rem;color:var(--mut)}
.chain{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:8px}
.chain>div{border-top:2px solid var(--acl);padding-top:14px;font-size:.88rem}
.chain b{display:block;font-family:var(--serif);font-weight:400;font-size:1.15rem;line-height:1.15;margin-bottom:6px;color:var(--paper)}
.chain span{color:var(--inkmut)}
.chain .sn{font:400 .66rem/1 var(--mono);color:var(--acl);letter-spacing:.1em;display:block;margin-bottom:8px}
/* app */
.app{display:grid;grid-template-columns:240px minmax(0,1fr);gap:0;background:var(--card);border:1px solid var(--ink);border-radius:8px;overflow:hidden;box-shadow:0 40px 80px -60px rgba(26,24,20,.6)}
.app aside{background:var(--ink);color:var(--paper);padding:26px 22px;display:flex;flex-direction:column;gap:4px}
.app aside .t{font:400 .68rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--inkmut);margin-bottom:14px}
.sbtn{all:unset;cursor:pointer;display:flex;gap:12px;align-items:center;padding:10px 8px;border-radius:4px;font-size:.93rem;color:var(--inkmut)}
.sbtn i{width:24px;height:24px;border-radius:50%;border:1px solid currentColor;display:grid;place-items:center;font:normal 400 .66rem/1 var(--mono);flex:none}
.sbtn[aria-current=step]{color:var(--paper);background:rgba(243,238,227,.08)}
.sbtn[aria-current=step] i{background:var(--acl);border-color:var(--acl);color:var(--ink)}
.sbtn.done{color:var(--paper)}.sbtn.done i{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.sbtn:disabled,.sbtn[aria-disabled=true]{cursor:default;opacity:.5}
.sbtn:focus-visible{outline:2px solid var(--acl)}
.app aside .priv{margin-top:auto;padding-top:22px;font-size:.78rem;color:var(--inkmut);line-height:1.45}
.app .pane{padding:clamp(22px,4vw,44px);min-height:560px;display:flex;flex-direction:column}
.pbar{height:3px;background:var(--rule);border-radius:3px;overflow:hidden;margin-bottom:26px}.pbar i{display:block;height:100%;background:var(--ac);transition:width .4s cubic-bezier(.2,.7,.2,1)}
.pane h3{font-size:clamp(1.7rem,3vw,2.4rem);margin:0 0 8px}
.pane .sub{color:var(--mut);margin:0 0 26px;max-width:40em}
.fgrid2{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.fgrid2 .full{grid-column:1/-1}
.fld{display:flex;flex-direction:column;gap:7px;font-size:.88rem;font-weight:600}
.fld>span small{font-weight:400;color:var(--mut)}
.fld input,.fld select{font:inherit;font-weight:400;font-size:1rem;padding:.78em .85em;border:1px solid var(--rule);border-radius:4px;background:#fff;color:var(--ink);min-height:48px}
.fld input:focus,.fld select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(181,50,26,.15)}
.fld.bad input,.fld.bad select{border-color:var(--ac)}
.grp{border:0;padding:0;margin:0 0 24px}
.grp legend{font-weight:600;font-size:.95rem;margin-bottom:10px;padding:0}
.grp legend small{display:block;font-weight:400;color:var(--mut);font-size:.84rem;margin-top:2px}
.opts2{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.opts2.wide{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.o{position:relative;display:flex}
.o input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.o span{flex:1;display:flex;flex-direction:column;gap:3px;padding:12px 13px;border:1px solid var(--rule);border-radius:4px;background:#fff;font-size:.92rem;line-height:1.3;transition:border-color .12s,box-shadow .12s}
.o span small{color:var(--mut);font-size:.78rem}
.o input:hover+span{border-color:var(--ink)}
.o input:checked+span{border-color:var(--ink);background:var(--ink);color:var(--paper)}
.o input:checked+span small{color:var(--inkmut)}
.o input:focus-visible+span{box-shadow:0 0 0 3px rgba(181,50,26,.3)}
.navrow{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:28px}
.err{color:var(--ac);font-size:.9rem;margin:10px 0 0}
.qrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;align-items:center;padding:14px 0;border-top:1px solid var(--rule)}
.qrow p{margin:0;font-size:.95rem}.qrow p small{display:block;color:var(--mut);font-size:.8rem;margin-top:2px}
.seg{display:inline-flex;border:1px solid var(--ink);border-radius:999px;overflow:hidden;flex-wrap:wrap}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg span{display:block;padding:.5em .85em;font-size:.82rem;border-left:1px solid var(--rule);white-space:nowrap}
.seg label:first-child span{border-left:0}
.seg input:checked+span{background:var(--ink);color:var(--paper)}
.seg input:focus-visible+span{box-shadow:inset 0 0 0 2px var(--ac)}
.filmopt{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px dashed var(--ink);border-radius:6px;margin-top:18px;background:var(--paper)}
.filmopt input{width:20px;height:20px;accent-color:var(--ac);margin-top:2px;flex:none}
/* result */
.res{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,36px);align-items:start}
.prof{background:var(--paper);border:1px solid var(--ink);border-radius:8px;padding:22px;position:relative}
.prof .ph{display:flex;justify-content:space-between;font:400 .66rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut);padding-bottom:14px;border-bottom:1px solid var(--rule)}
.prof h4{font-family:var(--serif);text-transform:none;letter-spacing:-.01em;font-size:1.9rem;line-height:1.05;margin:16px 0 4px}
.prof .top2{display:flex;gap:18px;align-items:center;justify-content:space-between}
.prof .band{font-weight:600;font-size:.98rem;margin-top:8px}
.prof .kv{display:grid;grid-template-columns:110px 1fr;gap:9px 14px;margin:18px 0 0;font-size:.88rem;padding-top:16px;border-top:1px solid var(--rule)}
.prof .kv dt{font:400 .64rem/1.8 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--mut)}
.prof .kv dd{margin:0}
.fit{display:grid;gap:8px;margin-top:6px}
.fit div{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.9rem}
.dots{display:inline-flex;gap:3px}.dots i{width:9px;height:9px;border-radius:50%;background:var(--rule)}.dots i.on{background:var(--ac)}
.prof .fine{font-size:.72rem;color:var(--mut);margin:16px 0 0;padding-top:12px;border-top:1px solid var(--rule);line-height:1.45}
.gaps{list-style:none;padding:0;margin:0;counter-reset:g}
.gaps li{counter-increment:g;display:grid;grid-template-columns:28px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--rule);font-size:.93rem}
.gaps li:before{content:counter(g,decimal-leading-zero);font:400 .7rem/1.8 var(--mono);color:var(--ac)}
.gaps li b{display:block}
.gaps li span{color:var(--mut)}
.acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.ctxbox{margin-top:22px;padding:16px;border:1px solid var(--rule);border-radius:6px;background:var(--paper);font-size:.84rem;color:var(--mut)}
.ctxbox b{color:var(--ink)}
.sendbox{margin-top:26px;padding:22px;border:1px solid var(--ink);border-radius:8px;background:var(--paper)}
.sendbox h4{font-family:var(--serif);text-transform:none;letter-spacing:0;font-size:1.5rem;margin-bottom:8px}
.sendbox .pn{margin-top:12px}
.sendbox .chk{display:flex;gap:10px;font-size:.88rem;margin-top:12px;align-items:flex-start}
.lgsw{display:inline-flex;gap:4px;margin-left:6px}
.lgsw button{font:400 .7rem/1 var(--mono);letter-spacing:.06em;border:1px solid var(--rule);background:transparent;padding:.55em .7em;border-radius:999px;cursor:pointer;color:var(--ink)}
.lgsw button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.faq2 details{border-top:1px solid var(--rule);padding:18px 0}
.faq2 summary{cursor:pointer;font-family:var(--serif);font-size:1.35rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq2 summary:after{content:"+";font-family:var(--mono);color:var(--ac)}
.faq2 details[open] summary:after{content:"–"}
.faq2 details p{margin:12px 0 0;color:var(--mut);max-width:46em}
.shared-banner{background:var(--ink);color:var(--paper);padding:12px 0;font-size:.9rem}
.shared-banner a{color:var(--acl)}
@media (max-width:1000px){
 .hero2 .grid{grid-template-columns:1fr}
 .stack{min-height:420px;max-width:520px}
 .flow4{grid-template-columns:1fr 1fr}.flow4>div:nth-child(3){border-left:0;padding-left:0}
 .chain{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}
 .cat{grid-template-columns:1fr}.envp{position:static}
 .res{grid-template-columns:1fr}
 .facts{grid-template-columns:1fr 1fr}.facts div:nth-child(3){border-left:0;padding-left:0}
}
@media (max-width:760px){
 .paths{grid-template-columns:1fr}
 .pillars{grid-template-columns:1fr}.pillar+.pillar{border-left:0;border-top:1px solid var(--ink);padding-left:0}
 .pillar{padding-right:0}
 .flow4{grid-template-columns:1fr}.flow4>div+div{border-left:0;padding-left:0;border-top:1px solid rgba(189,182,165,.35)}
 .who{grid-template-columns:1fr;text-align:center}.who .ar{transform:rotate(90deg);margin:4px 0}
 .app{grid-template-columns:1fr}
 .app aside{flex-direction:row;overflow-x:auto;padding:12px;gap:2px;scrollbar-width:none}
 .app aside .t,.app aside .priv{display:none}
 .sbtn{padding:8px;white-space:nowrap;font-size:.82rem}.sbtn b{display:none}.sbtn[aria-current=step] b{display:inline}
 .app .pane{min-height:0}
 .fgrid2{grid-template-columns:1fr}
 .envp .cols{grid-template-columns:1fr}
 .qrow{grid-template-columns:1fr}
 .stack{min-height:500px}
 .stack .pcard{width:94%}
 .founder{grid-template-columns:1fr}
}
@media print{
 body *{visibility:hidden}
 .prof,.prof *{visibility:visible}
 .prof{position:absolute;left:0;top:0;width:100%;border:1px solid #000}
 .top,footer,.cookie,#sic-cookie{display:none}
}
