/* Offerings follows the chosen reference's grid, compact index and preview rail. */
.offerings-page{--index-row:32px}
.offerings-main{overflow:visible}
.pixel-arrow{display:block;width:6px;height:8px;fill:currentColor;flex:none}
.quick-toolbar{position:sticky;top:0;z-index:70;border-block:1px solid var(--line);background:var(--surface)}
.quick-toggle{position:relative;border:0;row-gap:0;align-items:center;min-height:var(--control);background:var(--ink);color:var(--paper);cursor:pointer;text-align:left}
.quick-toggle:hover{background:#2b2b2b}
.quick-toggle .label{font-size:8px;line-height:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick-heading{grid-column:1}
.quick-toggle-arrow{position:absolute;grid-column:2;left:calc(-1 * var(--gap));top:0;width:var(--gap);height:100%;display:grid;place-items:center;color:var(--red);border-inline:1px solid #393939}
.quick-toggle-arrow svg{transform:rotate(90deg);transition:transform .25s ease}
.quick-toggle.is-floating-open .quick-toggle-arrow svg{transform:rotate(-90deg)}
.active-category{display:none}
.active-offering{grid-column:2/span 2}
.quick-index-shell{position:relative;min-height:0;height:var(--index-height,auto)}
.quick-index-shell.is-collapsed{height:0;overflow:hidden}
.quick-panel{position:relative;background:var(--surface);border-bottom:1px solid var(--line)}
.quick-panel.is-floating{position:fixed;top:calc(var(--control) + 2px);left:0;right:0;z-index:65;max-height:calc(100dvh - var(--control) - 2px);overflow-y:auto;box-shadow:0 12px 16px #00000010;animation:index-open .25s cubic-bezier(.2,.7,.3,1) both}
.quick-layout{row-gap:0}
.quick-introduction{grid-column:1/-1;display:flex;align-items:flex-end;border-inline:1px solid var(--line);border-bottom:1px solid var(--line)}
.quick-introduction p{padding:24px 20px;color:var(--red);max-width:330px}
.quick-links{grid-column:1/-1;position:relative;min-width:0;padding-bottom:var(--gap);border-inline:1px solid var(--line)}
.quick-links ul{padding:0;margin:0;list-style:none}
.quick-group+.quick-group{border-top:1px solid var(--line)}
.quick-row{display:grid;grid-template-columns:1fr 1.8fr;column-gap:var(--gap);min-height:var(--index-row);position:relative;align-items:center}
.quick-row:not(:last-child){border-bottom:1px solid var(--line)}
.quick-row:before{content:'';position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .28s cubic-bezier(.2,.7,.3,1);pointer-events:none}
.quick-row.is-pointing:before,.quick-row.is-chosen:before{transform:scaleX(1)}
.quick-links:has(.is-pointing) .quick-row.is-chosen:not(.is-pointing):before{transform:scaleX(0)}
.quick-row a,.quick-category{position:relative;z-index:1;font:400 8px/1.3 var(--font-meta);letter-spacing:.02em;text-transform:uppercase;min-width:0;align-self:stretch;display:flex;align-items:center;padding:4px;overflow-wrap:anywhere}
.quick-category{grid-column:1}
.quick-offering{grid-column:2}
.quick-pointer{position:absolute;top:0;left:calc(-1 * var(--gap) - 1px);height:var(--index-row);width:var(--gap);display:grid;place-items:center;transition:transform .22s ease;pointer-events:none;color:var(--ink)}
.offering-group,.service-row,.anchor-alias{scroll-margin-top:calc(var(--control) + 18px)}
.anchor-alias{display:block;height:0}
.offering-title{border-block:1px solid var(--line);row-gap:0}
.offering-title .type-band{grid-column:1/-1;min-width:0;border-block:0;border-inline:1px solid var(--line);font:500 64px/.94 var(--font-display);letter-spacing:-.045em;padding:16px 0;contain:paint}
.offerings-page .marquee-track{animation-duration:60s}
.offerings-page .marquee-group{gap:0;padding-right:0}
.offerings-page .marquee-group>span{margin-inline:36px}
.offerings-page .marquee-dot{color:transparent;font-size:1em;width:.15em;height:.15em;display:block;flex-shrink:0;border:.018em solid var(--ink);border-radius:50%;overflow:hidden}
.service-row{position:relative;border-bottom:1px solid var(--line)}
.service-row .service-content{position:relative;row-gap:0;align-items:stretch}
.service-copy,.service-examples,.service-row .service-visual{grid-column:1/-1;border-inline:1px solid var(--line);position:relative;min-width:0}
.service-row .strip{min-height:var(--control);height:var(--control);font-size:8px;line-height:12px;overflow:hidden;white-space:nowrap}
.service-number{position:absolute;top:0;left:calc(-1 * var(--gap) - 1px);display:grid;place-items:center;width:var(--gap);height:var(--control);font-size:8px}
.offering-copy{max-width:330px;padding:calc(var(--gap) * 2) var(--gap)}
.offering-copy h3{font-size:28px;line-height:1.12;letter-spacing:-.035em;margin-bottom:var(--gap)}
.offering-copy p{font-size:14px;line-height:1.4}
.service-scope{list-style:none;padding:0;margin:24px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}
.service-examples>.strip{background:#8e8e8e}
.examples-list{padding:var(--gap);position:relative;display:flex;flex-direction:column;align-items:stretch}
.example-choice{border:0;background:transparent;color:var(--ink);text-align:left;font:400 9px/1.4 var(--font-meta);letter-spacing:.02em;text-transform:uppercase;cursor:pointer;padding:4px 0;min-height:28px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.example-choice:hover,.example-choice:focus-visible,.example-choice[aria-pressed=true]{color:var(--red)}
.example-choice[aria-pressed=true]{text-decoration:underline;text-underline-offset:3px}
.example-pointer{position:absolute;top:0;left:calc(-1 * var(--gap) - 1px);width:var(--gap);height:28px;color:var(--red);display:grid;place-items:center;transition:transform .2s ease;pointer-events:none}
.service-row .service-visual{padding-bottom:0;display:flex;flex-direction:column}
.service-row .service-visual .strip{flex:none}
.preview-label{overflow:hidden;text-overflow:ellipsis;min-width:0;margin-left:8px}
.preview-stack{aspect-ratio:1;position:relative;overflow:hidden;background:#171717}
.preview-frame{position:absolute;inset:0;display:block;opacity:0;transform:scale(1.035);pointer-events:none;transition:opacity .22s ease,transform .35s ease;z-index:0}
.preview-frame.is-active{opacity:1;transform:scale(1);pointer-events:auto;z-index:1}
.preview-frame img{width:100%;height:100%;object-fit:cover}
.preview-frame[data-fit=contain] img{object-fit:contain}
.preview-frame.is-active:hover{transform:scale(1.025)}
@keyframes index-open{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@media(min-width:834px){
 .quick-heading{grid-column:1/span 3}.quick-toggle-arrow{grid-column:4}
 .active-category{display:block;grid-column:4/span 2}.active-offering{grid-column:6/span 3}
 .quick-introduction{grid-column:1/span 3;border-bottom:0;padding-bottom:var(--gap)}
 .quick-introduction p{max-width:none}
 .quick-links{grid-column:4/span 5}
 .quick-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap)}
 .quick-category{grid-column:1/span 2}.quick-offering{grid-column:3/span 3}
 .offering-title .type-band{font-size:100px}
 .service-copy{grid-column:1/span 4;grid-row:1}
 .service-examples{grid-column:1/span 4;grid-row:2}
 .service-row .service-visual{grid-column:5/span 4;grid-row:1/span 2}
 .offering-copy h3{font-size:32px}
 .service-row .preview-stack{flex:1;min-height:0}
}
@media(min-width:1440px){
 .offerings-page{--index-row:22px}
 .quick-heading{grid-column:1/span 4}.quick-toggle-arrow{grid-column:5}
 .active-category{grid-column:5/span 2}.active-offering{grid-column:7/span 6}
 .quick-introduction{grid-column:1/span 4}.quick-links{grid-column:5/span 8}
 .quick-row{grid-template-columns:repeat(8,minmax(0,1fr))}
 .quick-category{grid-column:1/span 2}.quick-offering{grid-column:3/span 6}
 .offering-title .type-band{font-size:147px;padding:25px 0}
 .offerings-page .marquee-group>span{margin-inline:50px}
 .service-copy{grid-column:1/span 6;grid-row:1}
 .service-examples{grid-column:7/span 2;grid-row:1}
 .service-row .service-visual{grid-column:9/span 4;grid-row:1}
 .offering-copy h3{font-size:34px;line-height:1.195}
 .example-choice,.example-pointer{height:var(--control);min-height:var(--control);padding-block:2px}
 .example-choice{font-size:9px}
 .service-row .service-visual .strip{background:transparent}
 .service-row .service-visual .strip span{visibility:hidden}
 .service-row .preview-stack{flex:none}
}
@media(prefers-reduced-motion:reduce){
 .preview-frame,.preview-frame.is-active:hover{transform:none}
 .quick-row:before,.quick-pointer,.example-pointer,.preview-frame,.quick-toggle-arrow svg{transition:none}
 .quick-panel.is-floating{animation:none}
}
/* An unmatched future service keeps its copy rather than borrowing unrelated work. */
.service-row.no-project-previews .service-examples,.service-row.no-project-previews .service-visual{display:none}
.service-row.no-project-previews .service-copy{grid-column:1/-1}
