/* v3d: icon link, demos alignment, case study layout, contact form spacing */
.meet-more{line-height:1}
.meet-more .mm-ic{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid rgba(var(--rb-ac-rgb),.45);transition:transform .25s,background .25s,border-color .25s}
.meet-more .mm-ic svg{display:block}
.meet-more:hover{color:#fff}.meet-more:hover .mm-ic{transform:translateX(3px);background:rgba(var(--rb-ac-rgb),.18);border-color:var(--ac)}
.meet-more:focus{outline:none}.meet-more:focus-visible{outline:2px solid rgba(var(--rb-ac-rgb),.6);outline-offset:4px;border-radius:6px}

/* demos row: receptionist card matches the board height and sits level with it */
@media(min-width:861px){
 #showcase .grid>.c-4:has(#recep){align-self:end}
 #recep{height:400px}
}
#recep .mic-orb{margin:20px 0}
#recep>p{margin-bottom:28px}
#recep .recep-btns{margin-top:auto;padding-top:4px}
@media(max-width:860px){#recep .recep-btns{margin-top:0}}

/* case study: top aligned stack on the right */
.case-feature .cf-r{align-items:flex-start;padding-top:56px}
.case-feature .cf-r .psr{display:flex;flex-direction:column;gap:28px}
.case-feature .cf-r .psr div{display:flex;flex-direction:column;gap:10px}
.case-feature .cf-r .psr dt{font:500 12px/1.4 'JetBrains Mono',monospace;letter-spacing:.1em}
.case-feature .cf-r .psr dd{font-size:17px;line-height:1.6;color:var(--rb-mut);max-width:42ch}
@media(max-width:860px){.case-feature .cf-r{padding-top:0}.case-feature .cf-r .psr{gap:20px}.case-feature .cf-r .psr dd{font-size:15px}}
.case-link{gap:10px;color:var(--fg);text-decoration:none;border:0;outline:none;background:none;box-shadow:none;transition:color .2s}
.case-link .ico-arrow{flex:none;transition:transform .25s cubic-bezier(.2,.8,.2,1),color .2s}
.case-link:hover,.case-link:hover .ico-arrow{color:var(--rb-ac)}.case-link:hover .ico-arrow{transform:translateX(4px)}
.case-link:focus{outline:none;box-shadow:none}
.case-link:focus-visible{outline:2px solid rgba(var(--rb-ac-rgb),.55);outline-offset:4px;border-radius:6px}

/* contact: balanced columns, roomier form */
@media(min-width:1200px){#contact .final .grid{column-gap:48px}}
#contact .ct-l,#contact .ct-r{min-width:0}
#contact .cform{padding:36px;gap:20px;width:100%;max-width:none}
#contact .cform label>input,#contact .cform label>textarea,#contact .cform label>.phone-row{margin-top:10px}
#contact .ftools-c{gap:8px}
@media(min-width:861px) and (max-width:1199px){#contact .final{padding:64px 40px}#contact .final .grid{column-gap:32px}#contact .cform{padding:32px}}
@media(min-width:1200px){#contact .final{padding:72px 56px}}
@media(max-width:860px){#contact .ct-l,#contact .ct-r{grid-column:1/-1}#contact .cform{padding:28px}}
@media(max-width:600px){#contact .cform{padding:24px 20px;gap:18px}}
.case-link span{color:inherit!important;transform:none!important}
#contact .ftools{margin:0}
@media(max-width:860px){#contact .final .grid{grid-template-columns:minmax(0,1fr);column-gap:0}}
@media(max-width:400px){#contact .final{padding:36px 14px}#contact .cform{padding:22px 16px}}
