@font-face{font-family:"Gabarito";src:url(/assets/font-7ybgl3x2-gabarito-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Gabarito";src:url(/assets/font-7ybgl3x2-gabarito-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Literata";src:url(/assets/font-7ybgl3x2-literata-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Literata";src:url(/assets/font-7ybgl3x2-literata-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}

/* palette: taken from one broccoli floret and its cut stalk, plus one charcoal neutral for the bands */
:root{
  --paper:#F1F4E0;--paper-2:#E3EAC4;--paper-3:#D2E0A4;--ink:#14201A;--ink-2:#3B493E;--rule:#6E7F66;
  --leaf:#1F4D2B;--leaf-2:#2F7236;--leaf-deep:#12281A;--bud:#A5DA7B;--bloom:#4F8B78;--bloom-l:#BFE0D2;--violet:#5C3F70;--violet-l:#D9C8E6;
  --band:#161B17;--band-ink:#EAF0D8;--band-ink-2:#B9C6A9;--band-rule:#47544A;
  --head:"Gabarito","Trebuchet MS",Verdana,sans-serif;--body:"Literata",Georgia,serif;
  --measure:66ch;--maxw:1240px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0938rem/1.68 var(--body)}
::selection{background:var(--leaf);color:var(--band-ink)}
img{max-width:100%;height:auto;display:block}
a{color:var(--leaf);text-underline-offset:.2em;text-decoration-thickness:1.5px}
a:hover{color:var(--violet);text-decoration-thickness:3px}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px}
h1,h2,h3{font-family:var(--head);font-weight:800;line-height:1.1;margin:0 0 .5em;letter-spacing:-.012em;text-wrap:balance}
h1{font-size:clamp(2rem,4.2vw,3.1rem)}
h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
h3{font-size:1.3rem;font-weight:600;letter-spacing:0}
p{margin:0 0 1em;max-width:var(--measure)}
.sop2z-wrap{width:min(100% - 2rem,var(--maxw));margin-inline:auto}
.sop2z-skip{position:absolute;left:12px;top:-80px;background:var(--bud);color:var(--leaf-deep);padding:.7rem 1rem;z-index:99;font:800 1rem var(--head)}
.sop2z-skip:focus{top:8px}.sop2z-skip:hover{color:var(--leaf-deep)}

/* header: a ruled band; every control is a band item and the hovered one takes the floret green */
.sop2z-head{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:2px solid var(--ink);box-shadow:0 5px 0 var(--leaf)}
.sop2z-nav{display:flex;align-items:stretch;justify-content:space-between;gap:1rem;min-height:66px;width:min(100% - 2rem,var(--maxw));margin-inline:auto}
.sop2z-brand{display:inline-flex;align-items:center;gap:.7rem;font:800 1.3rem/1.05 var(--head);letter-spacing:-.01em;color:var(--ink);text-decoration:none;min-height:44px}
.sop2z-brand:hover{color:var(--leaf)}
.sop2z-brand img{width:34px;height:34px;border-radius:0;filter:hue-rotate(112deg) saturate(.75) brightness(.8)}
.sop2z-links{display:flex;align-items:stretch}
.sop2z-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 1.15rem;color:var(--ink);text-decoration:none;font:600 1rem var(--head);letter-spacing:.02em;border-left:1px solid var(--rule)}
.sop2z-links a:hover{background:var(--bud);color:var(--leaf-deep);text-decoration:none}
.sop2z-links a.sop2z-cta{background:var(--leaf);color:var(--band-ink)!important;border-left:1px solid var(--ink);padding:0 1.4rem;font-weight:800;border-radius:0}
.sop2z-links a.sop2z-cta:hover{background:var(--violet)}
.sop2z-menu{display:none;align-self:center;align-items:center;justify-content:center;width:48px;height:48px;background:none;border:2px solid var(--ink);color:var(--ink);cursor:pointer;padding:0;border-radius:0}
.sop2z-menu:hover{background:var(--ink);color:var(--paper)}
@media (max-width:820px){
  .sop2z-menu{display:inline-flex}
  .sop2z-links{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);flex-direction:column;align-items:stretch;padding:.3rem 1rem 1.2rem;border-bottom:5px solid var(--leaf);border-top:2px solid var(--ink)}
  .sop2z-links[data-open]{display:flex}
  .sop2z-links a{min-height:54px;font-size:1.15rem;border-left:0;border-bottom:1px solid var(--rule)}
  .sop2z-links a.sop2z-cta{margin-top:.8rem;justify-content:center;border:0}
}

/* weather: a charcoal strip above the exhibition */
.sop2z-wx{background:var(--band);color:var(--band-ink);border-bottom:1px solid var(--band-rule)}
.sop2z-wx-row{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.6rem;padding:.65rem 0}
.sop2z-wx-photo{display:inline-flex;align-items:center;gap:.7rem;background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;min-height:44px}
.sop2z-wx-photo img{width:52px;height:52px;border-radius:0;object-fit:cover;border:2px solid var(--band-ink-2)}
.sop2z-wx-photo span{font:600 .85rem var(--head);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--band-ink-2);padding:.35rem .7rem}
.sop2z-wx-photo:hover span,.sop2z-wx-photo[aria-expanded=true] span{background:var(--bud);border-color:var(--bud);color:var(--leaf-deep)}
.sop2z-wx-now{display:flex;align-items:center;gap:.6rem}
.sop2z-wx-now strong{font:800 2rem/1 var(--head)}
.sop2z-wx-now span{font-size:.98rem}.sop2z-wx-now small{display:block;font-size:.85rem;color:var(--band-ink-2)}
.sop2z-wx-icon{display:inline-flex;color:var(--bud)}
.sop2z-wx-days{display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:0;padding:0}
.sop2z-wx-days li{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:.55rem;align-items:center;border-left:1px solid var(--band-rule);padding:.3rem .9rem;font-size:.85rem;min-width:124px}
.sop2z-wx-day{font:800 .9rem var(--head);grid-column:1;letter-spacing:.04em}
.sop2z-wx-glyph{grid-row:1/3;grid-column:2;color:var(--bud)}.sop2z-wx-glyph svg{width:22px;height:22px}
.sop2z-wx-hl{grid-column:1}.sop2z-wx-hl strong{font-size:.98rem}.sop2z-wx-hl em{font-style:normal;color:var(--band-ink-2);margin-left:.3rem}
.sop2z-wx-cond{grid-column:1/3;font-size:.8rem;color:var(--band-ink-2);max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sop2z-wx-source{margin-left:auto;font-size:.82rem;color:var(--band-ink-2)}
.sop2z-wx-panel{padding:0 0 1rem}.sop2z-wx-panel img{max-width:600px;width:100%;background:#0b1020;border:2px solid var(--band-ink-2)}.sop2z-wx-panel p{font-size:.85rem;color:var(--band-ink-2);margin:.5rem 0 0}
.sop2z-wx a{color:var(--bud)}
@media (max-width:700px){.sop2z-wx-source{margin-left:0;width:100%}.sop2z-wx-now strong{font-size:1.7rem}.sop2z-wx-days li{border-left:0;border-top:1px solid var(--band-rule);flex:1 1 40%;padding:.4rem .2rem}}

/* hero: one cropped floret fills the stage, the title sits small in the lower-left corner */
.sop2z-hero{background:var(--paper)}
.sop2z-stage{position:relative;min-height:clamp(540px,78vh,760px);overflow:hidden;background:var(--leaf-deep)}
.sop2z-stage>svg.crop{position:absolute;inset:0;width:100%;height:100%;transform-origin:63% 37%;animation:sop2z-push 38s ease-in-out infinite alternate}
@keyframes sop2z-push{from{transform:scale(1)}to{transform:scale(1.07)}}
.sop2z-plate{position:absolute;left:0;bottom:0;width:min(470px,100%);background:var(--paper);padding:1.7rem 1.8rem 1.1rem;border-top:8px solid var(--leaf)}
.sop2z-plate h1{font-size:clamp(1.65rem,2.5vw,2.15rem);line-height:1.08;margin-bottom:.55em}
.sop2z-plate .sop2z-lead{font-size:1.02rem;line-height:1.6;color:var(--ink-2);margin-bottom:.9rem}
.sop2z-dateline{border-top:1px solid var(--ink);padding-top:.5rem}
.sop2z-dateline .sop2z-eyebrow{margin:0}
.sop2z-eyebrow{font:600 .86rem/1.3 var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--violet);margin:0 0 .5rem}
.sop2z-eyebrow:has(+h1){text-transform:none;letter-spacing:.01em;font-size:1.08rem;color:var(--leaf)}
.sop2z-lead{font-size:1.18rem;line-height:1.6;color:var(--ink-2)}
@media (max-width:760px){
  .sop2z-stage{min-height:0;display:flex;flex-direction:column}
  .sop2z-stage>svg.crop{position:relative;inset:auto;height:clamp(230px,62vw,330px);flex:none}
  .sop2z-plate{position:relative;width:100%;padding:1.4rem 1rem 1rem}
}
.sop2z-band{background:var(--band);color:var(--band-ink);border-top:1px solid var(--band-rule);border-bottom:6px solid var(--leaf-2)}
.sop2z-band-row{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:space-between;gap:0}
.sop2z-trust{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;font:600 .98rem/1.35 var(--head);flex:1 1 560px}
.sop2z-trust li{display:flex;align-items:center;gap:.6rem;padding:.9rem 1.3rem .9rem 1rem;border-left:1px solid var(--band-rule);min-height:64px}
.sop2z-trust li:first-child{border-left:0;padding-left:0}
.sop2z-trust li::before{content:"";flex:none;width:.7rem;height:.7rem;background:var(--bud);border-radius:50%}
.sop2z-acts{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;margin:0;padding:.7rem 0;max-width:none}
.sop2z-acts .sop2z-btn--primary{background:var(--bud);color:var(--leaf-deep)}
.sop2z-acts .sop2z-btn--primary:hover{background:var(--band-ink);color:var(--leaf-deep)}
.sop2z-acts .sop2z-btn--ghost{border-color:var(--band-ink);color:var(--band-ink)}
.sop2z-acts .sop2z-btn--ghost:hover{background:var(--band-ink);color:var(--band)}
@media (max-width:760px){.sop2z-trust li{flex:1 1 100%;border-left:0;border-top:1px solid var(--band-rule);padding:.65rem 0;min-height:48px}.sop2z-trust li:first-child{border-top:0}.sop2z-band-row{padding-bottom:.5rem}}

/* shared section frame */
.sop2z-sec{padding:4.2rem 0}
.sop2z-section{padding:3.4rem 0}
.sop2z-section--soft{background:var(--paper-2);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.sop2z-section--deep{background:var(--leaf-deep);color:var(--band-ink)}
.sop2z-section--deep h2,.sop2z-section--deep a{color:var(--band-ink)}
.sop2z-head2{display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr);gap:.4rem 2rem;align-items:start;border-top:3px solid var(--ink);padding-top:1rem;margin-bottom:2rem}
.sop2z-head2 .sop2z-eyebrow{margin:.55rem 0 0}
.sop2z-head2 h2{margin:0;max-width:22ch}
@media (max-width:760px){.sop2z-head2{grid-template-columns:1fr}.sop2z-head2 .sop2z-eyebrow{margin:0 0 .3rem}}

.sop2z-cols{display:grid;gap:0;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.sop2z-card{background:transparent;border:0;border-radius:0;padding:1.3rem}
.sop2z-num{display:block;width:auto;height:auto;background:none;color:var(--violet);font:800 4.2rem/.9 var(--head);margin:0 0 .7rem;border-radius:0}

/* how it works: a ruled schedule of three */
.sop2z-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.sop2z-steps .sop2z-card{border-left:1px solid var(--rule);padding:.4rem 1.6rem 1rem}
.sop2z-steps .sop2z-card:first-child{border-left:0;padding-left:0}
.sop2z-steps h3{font-size:1.4rem}
@media (max-width:860px){.sop2z-steps{grid-template-columns:1fr}.sop2z-steps .sop2z-card{border-left:0;border-top:1px solid var(--rule);padding:1.2rem 0}.sop2z-steps .sop2z-card:first-child{border-top:0}}

.sop2z-strip{height:clamp(70px,11vw,150px);overflow:hidden;background:var(--leaf-deep);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.sop2z-strip svg{width:100%;height:100%}

/* buttons */
.sop2z-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:2px solid transparent;border-radius:0;padding:.7rem 1.4rem;min-height:48px;font:800 1.02rem var(--head);letter-spacing:.015em;cursor:pointer;text-decoration:none}
.sop2z-btn--primary{background:var(--leaf);color:var(--band-ink)}
.sop2z-btn--primary:hover{background:var(--violet);color:var(--band-ink);text-decoration:none}
.sop2z-btn--ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.sop2z-btn--ghost:hover{background:var(--ink);color:var(--paper);text-decoration:none}
.sop2z-btn[disabled]{opacity:.65;cursor:progress}

/* quote engine on the stalk cross-section */
.sop2z-panel{position:relative;background:var(--paper-2);overflow:hidden;border-bottom:2px solid var(--ink)}
.sop2z-panel>svg.crop{position:absolute;inset:0;width:100%;height:100%}
.sop2z-panel-in{position:relative}
.sop2z-quote{background:var(--paper);border:2px solid var(--ink);border-top:10px solid var(--leaf);border-radius:0;padding:1.6rem 1.6rem 1.4rem;max-width:660px}
.sop2z-quote h2{font-size:1.5rem}
.sop2z-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.1rem}
@media (max-width:520px){.sop2z-fields{grid-template-columns:1fr}}
.sop2z-field{display:flex;flex-direction:column;gap:.3rem}
.sop2z-field>span{font:600 .95rem var(--head);letter-spacing:.02em}
.sop2z-field input,.sop2z-field select,.sop2z-field textarea{font:inherit;font-size:1.02rem;min-height:46px;padding:.6rem .75rem;border:2px solid var(--ink);border-radius:0;background:#FBFCF3;color:var(--ink);width:100%}
.sop2z-field input:focus,.sop2z-field select:focus,.sop2z-field textarea:focus{outline:3px solid var(--violet);outline-offset:1px}
.sop2z-field--wide{grid-column:1/-1}
.sop2z-seg{display:flex;flex-wrap:wrap;gap:.45rem}
.sop2z-seg label{position:relative;display:inline-flex;border:2px solid var(--ink);border-radius:0;padding:0;cursor:pointer;background:#FBFCF3;font-size:1rem}
.sop2z-seg input{position:absolute;opacity:0;width:0;height:0}
.sop2z-seg label>span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.35rem .95rem;font:600 .98rem var(--head)}
.sop2z-seg label:hover>span{background:var(--paper-3)}
.sop2z-seg input:checked+span{background:var(--leaf);color:var(--band-ink);margin:0;padding:.35rem .95rem;display:inline-flex;border-radius:0}
.sop2z-seg label:has(input:checked){background:var(--leaf);color:var(--band-ink);border-color:var(--leaf)}
.sop2z-seg input:focus-visible+span{outline:3px solid var(--violet);outline-offset:2px}
.sop2z-note{font-size:.92rem;color:var(--ink-2);margin-top:.7rem}
.sop2z-status{margin-top:.8rem;font-weight:700;min-height:1.4em}
.sop2z-status[data-tone=error]{color:#9B1C1C}
.sop2z-results{margin-top:1.4rem;max-width:860px}
.sop2z-results:not(:empty){background:var(--paper);border:2px solid var(--ink);padding:1.3rem 1.3rem .8rem}
.sop2z-summary{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;align-items:baseline;margin-bottom:1rem;font-size:1rem}
.sop2z-result{display:grid;grid-template-columns:1fr auto;gap:.6rem 1.2rem;align-items:center;border:1.5px solid var(--ink);border-left-width:6px;border-radius:0;padding:1rem 1.1rem;margin-bottom:.7rem;background:#FBFCF3}
.sop2z-result--best{border-left-color:var(--leaf);background:var(--paper-3);box-shadow:none}
.sop2z-result strong{font:800 1.12rem var(--head)}
.sop2z-result small{display:block;color:var(--ink-2);font-size:.9rem}
.sop2z-price{font:800 1.9rem/1 var(--head);text-align:right}
.sop2z-price small{display:block;font:600 .82rem var(--head);text-align:right;margin-top:.25rem}
.sop2z-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}
.sop2z-tag{font:600 .8rem var(--head);letter-spacing:.03em;padding:.15rem .55rem;border-radius:0;background:var(--paper-2);border:1px solid var(--rule);color:var(--ink)}
.sop2z-tag--now{background:var(--violet);color:#fff;border-color:var(--violet);font-weight:800}
.sop2z-group{font-size:1.2rem;margin:1.4rem 0 .4rem}
.sop2z-applicant{margin:.2rem 0 1rem;border-color:var(--leaf)}
.sop2z-result .sop2z-btn{grid-column:1/-1;justify-self:start}
@media (min-width:640px){.sop2z-result{grid-template-columns:1fr auto auto}.sop2z-result .sop2z-btn{grid-column:auto}}
.sop2z-disclosure{font-size:.88rem;color:var(--ink-2);border-top:1px solid var(--rule);padding-top:.9rem;margin-top:1rem}
details.sop2z-more{margin-top:.5rem;font-size:.92rem}details.sop2z-more summary{cursor:pointer;color:var(--leaf);font-weight:700;min-height:44px;display:flex;align-items:center}

/* rates schedule */
.sop2z-rates{background:var(--paper)}
.sop2z-table-wrap{overflow-x:auto;border:2px solid var(--ink);background:#FBFCF3}
.sop2z-table{width:100%;border-collapse:collapse;font-size:1.02rem}
.sop2z-table th,.sop2z-table td{padding:.8rem 1rem;border-bottom:1px solid var(--rule);text-align:left}
.sop2z-table thead th{background:var(--band);color:var(--band-ink);font:600 .86rem var(--head);text-transform:uppercase;letter-spacing:.1em;border-bottom:0}
.sop2z-table td{font-variant-numeric:tabular-nums}
.sop2z-table td:first-child{font:800 1.05rem var(--head)}
.sop2z-table tbody tr:last-child td{border-bottom:0}
.sop2z-table tbody tr:hover td{background:var(--paper-3)}
.sop2z-rates p[data-copy]{font-size:1rem;color:var(--ink-2);max-width:78ch;margin-bottom:1.4rem}

/* why: deep floret green, with the three local plates ruled beside the text */
.sop2z-why{background:var(--leaf-deep);color:var(--band-ink)}
.sop2z-why .sop2z-head2{border-top-color:var(--bud)}
.sop2z-why .sop2z-eyebrow{color:var(--bud)}
.sop2z-why h2{color:var(--band-ink)}
.sop2z-why a{color:var(--bud)}.sop2z-why a:hover{color:#fff}
.sop2z-why :focus-visible{outline-color:var(--bud)}
.sop2z-why-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:start}
.sop2z-why-body p{color:#DCE6C9}
.sop2z-hl{border-top:1px solid var(--band-rule);padding-top:1rem;margin-top:1.4rem}
.sop2z-hl p{font-size:.98rem;color:var(--band-ink-2);max-width:none}
@media (max-width:900px){.sop2z-why-grid{grid-template-columns:1fr;gap:2rem}}
.sop2z-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:0;border:2px solid var(--band-ink);background:var(--band-ink)}
.sop2z-mosaic a{position:relative;display:block;overflow:hidden;background:var(--band);aspect-ratio:8/5;border-top:2px solid var(--band-ink);margin:0;color:var(--band-ink)}
.sop2z-mosaic a:nth-child(1){grid-column:1/-1;aspect-ratio:16/10;border-top:0}
.sop2z-mosaic a:nth-child(3){border-left:2px solid var(--band-ink)}
.sop2z-mosaic img{width:100%;height:100%;object-fit:cover;transition:transform 1.6s}
.sop2z-mosaic a:hover img{transform:scale(1.05)}
.sop2z-mosaic span{position:absolute;left:0;right:0;bottom:0;padding:.55rem .8rem;background:var(--band);color:var(--band-ink);font:600 .92rem/1.25 var(--head);border-top:3px solid var(--bud)}
.sop2z-mosaic a:hover span{background:var(--bud);color:var(--leaf-deep)}

/* learn: an index of ruled rows */
.sop2z-learn{background:var(--paper)}
.sop2z-learn-list{display:block;border-bottom:2px solid var(--ink)}
.sop2z-learn-list .sop2z-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:.2rem 2rem;align-items:baseline;padding:1.1rem .8rem;border-top:1px solid var(--rule);color:var(--ink);text-decoration:none;min-height:64px}
.sop2z-learn-list .sop2z-card:first-child{border-top:2px solid var(--ink)}
.sop2z-learn-list .sop2z-card h3{margin:0;font-size:1.35rem}
.sop2z-learn-list .sop2z-card p{margin:0;color:var(--ink-2)}
.sop2z-learn-list .sop2z-card:hover{background:var(--bud);color:var(--leaf-deep)}
.sop2z-learn-list .sop2z-card:hover p{color:var(--leaf-deep)}
@media (max-width:700px){.sop2z-learn-list .sop2z-card{grid-template-columns:1fr}}

/* articles and inner pages */
.sop2z-article{max-width:var(--measure);margin-inline:auto}
.sop2z-wrap.sop2z-article{width:min(100% - 2rem,var(--measure))}
.sop2z-article h1{font-size:clamp(2.1rem,4.4vw,3.2rem);border-top:3px solid var(--ink);padding-top:.8rem}
.sop2z-article h2{margin-top:1.6em;font-size:clamp(1.5rem,2.6vw,2rem)}
.sop2z-article figure{margin:0 0 1.6rem;border:2px solid var(--ink);background:var(--band)}
.sop2z-article figcaption{font-size:.85rem;color:var(--band-ink-2);padding:.5rem .8rem;border-top:3px solid var(--bud)}
.sop2z-article figcaption a{color:var(--bud)}
.sop2z-article img{border-radius:0}
.sop2z-article .sop2z-lead{font-size:1.22rem}
.sop2z-calc{background:var(--paper-3);border:2px solid var(--ink);border-top:10px solid var(--leaf)}
.sop2z-calc output{font:800 2.2rem/1.1 var(--head);display:block;margin-top:.7rem;color:var(--leaf)}
.sop2z-sources{font-size:.95rem;border-top:2px solid var(--ink);padding-top:1rem;margin-top:2rem}.sop2z-sources ol{padding-left:1.3rem}
.sop2z-faq{border-top:2px solid var(--ink)}
.sop2z-faq details{border-bottom:1px solid var(--rule);padding:.2rem 0}
.sop2z-faq summary{cursor:pointer;font:800 1.15rem/1.3 var(--head);min-height:52px;display:flex;align-items:center;padding:.5rem 0;list-style:none;gap:1rem}
.sop2z-faq summary::-webkit-details-marker{display:none}
.sop2z-faq summary::after{content:"+";margin-left:auto;flex:none;font:800 1.6rem/1 var(--head);color:var(--violet)}
.sop2z-faq details[open] summary::after{content:"\2212"}
.sop2z-faq details[open] summary{color:var(--leaf)}
.sop2z-faq details p{padding-bottom:.6rem}
.sop2z-apply-shell{background:#fff;border:2px solid var(--ink);border-top:10px solid var(--leaf);border-radius:0;padding:1rem;min-height:600px;color:#111}
.sop2z-apply-shell iframe{width:100%;border:0}

/* footer: the ruled band of dates and venue */
.sop2z-foot{background:var(--band);color:var(--band-ink);border-top:8px solid var(--leaf-2);padding:2.6rem 0 2rem;font-size:1rem}
.sop2z-foot a{color:var(--band-ink)}.sop2z-foot a:hover{color:var(--bud)}
.sop2z-foot :focus-visible{outline-color:var(--bud)}
.sop2z-foot-grid{display:grid;gap:0;grid-template-columns:2fr 1fr 1fr}
.sop2z-foot-grid>*{padding:0 1.6rem;border-left:1px solid var(--band-rule)}
.sop2z-foot-grid>*:first-child{padding-left:0;border-left:0}
.sop2z-foot .sop2z-brand{color:var(--band-ink);margin-bottom:.8rem}
.sop2z-foot .sop2z-brand img{filter:hue-rotate(112deg) saturate(.75) brightness(1.1)}
.sop2z-foot nav strong{display:block;font:600 .86rem var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--band-ink-2);margin-bottom:.7rem}
.sop2z-foot nav a{display:flex;align-items:center;min-height:44px;margin-bottom:0;text-decoration:none;border-bottom:1px solid var(--band-rule)}
.sop2z-foot nav a:hover{text-decoration:underline}
.sop2z-foot p{color:var(--band-ink);max-width:48ch}
.sop2z-foot [data-copy=legal]{font-size:.9rem!important;color:var(--band-ink-2);border-top:1px solid var(--band-rule);padding-top:1.2rem;max-width:none}
@media (max-width:760px){.sop2z-foot-grid{grid-template-columns:1fr;gap:1.6rem}.sop2z-foot-grid>*{padding:0;border-left:0}.sop2z-foot-grid>*+*{border-top:1px solid var(--band-rule);padding-top:1.4rem}}

/* no-exam highlight */
.sop2z-noexam{background:var(--paper-3);border:2px solid var(--ink);border-left:10px solid var(--leaf);border-radius:0;padding:1rem 1rem .4rem;margin:0 0 1.4rem;box-shadow:none}
.sop2z-group--noexam{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:0;font-size:1.3rem}
.sop2z-noexam-badge{display:inline-block;background:var(--leaf);color:var(--band-ink);font:800 .85rem var(--head);letter-spacing:.1em;text-transform:uppercase;padding:.35rem .7rem;border-radius:0}
.sop2z-noexam-note{margin-bottom:.9rem;color:var(--ink)}
.sop2z-result--noexam{border-left-color:var(--leaf);background:var(--paper)}
.sop2z-tag--noexam{background:var(--leaf);color:var(--band-ink);border-color:var(--leaf)}
.sop2z-tag--usually{background:var(--bloom-l);color:var(--ink);border-color:var(--bloom)}
.sop2z-noexam-note+.sop2z-noexam-note{margin-top:1rem;padding-top:.9rem;border-top:1px dashed var(--ink)}

[data-reveal]{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sop2z-stage>svg.crop{animation:none}.sop2z-mosaic img{transition:none}}
