/* Web page portfolio browser (wp-): one tabbed section right after the hero.
   Live websites grid + quick view, and the Figma / Wix / Squarespace collections as tabs. */
.wp-hero h1{font-size:clamp(44px,8vw,128px);line-height:.88;margin-bottom:clamp(22px,2.6vw,36px)}
.wp-hl{display:flex;flex-direction:column;gap:22px;min-width:0}
.wp-hl .lede{max-width:44ch}
.wp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,max-content));gap:0;margin:6px 0 0;border-top:var(--line)}
.wp-stats div{padding:14px 28px 0 0}
.wp-stats div+div{padding-left:28px;border-left:1px solid rgba(17,18,21,.18)}
.wp-stats dt{font:400 clamp(30px,3vw,46px)/1 var(--kd);letter-spacing:-.03em}
.wp-stats dd{margin:6px 0 0;font:700 10.5px/1.3 var(--km);text-transform:uppercase;color:var(--ink-2)}

.wp{scroll-margin-top:90px;padding-bottom:clamp(56px,6vw,96px)}
.wp-tabs{position:sticky;top:92px;z-index:20;display:flex;gap:4px;width:max-content;max-width:100%;margin:0 0 clamp(20px,2.4vw,32px);padding:5px;border-radius:999px;background:var(--ink);box-shadow:0 14px 30px -18px rgba(17,18,21,.7);overflow-x:auto;scrollbar-width:none}
.wp-tabs::-webkit-scrollbar{display:none}
.wp-tabs button{flex:none;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;color:#fff;font:700 12px/1 var(--km);text-transform:uppercase;letter-spacing:-.02em;transition:background .2s,color .2s}
.wp-tabs button i{font-size:19px}
.wp-tabs button span{padding:4px 6px;border-radius:999px;background:rgba(255,255,255,.14);font-size:10.5px}
.wp-tabs button:hover{background:rgba(255,255,255,.12)}
.wp-tabs button[aria-selected="true"]{background:#fff;color:var(--ink)}
.wp-tabs button[aria-selected="true"] span{background:var(--cobalt);color:#fff}
.wp-tabs button:focus-visible{outline:3px solid #8C98FF;outline-offset:-3px}
.wp-panel[hidden],.wp-tabs button[hidden]{display:none}
.wp-lead{margin:0 0 clamp(18px,2vw,26px);max-width:62ch;color:var(--ink-2);font-size:15.5px;line-height:1.55}

/* industry chips */
.wp-inds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:clamp(18px,2vw,26px)}
.wp-inds button{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;border:2px solid var(--ink);border-radius:999px;background:var(--paper);font:700 11.5px/1 var(--km);text-transform:uppercase;letter-spacing:-.02em;transition:background .2s,color .2s}
.wp-inds button i{font-size:17px;color:var(--cobalt)}
.wp-inds button small{font-size:10.5px;color:var(--ink-2)}
.wp-inds button:hover{background:#EEF0FF}
.wp-inds button[aria-pressed="true"]{background:var(--ink);color:#fff}
.wp-inds button[aria-pressed="true"] i{color:#8C98FF}
.wp-inds button[aria-pressed="true"] small{color:rgba(255,255,255,.7)}

/* live site cards */
.wp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3vw,44px) clamp(16px,1.8vw,26px)}
.wp-card{display:flex;flex-direction:column;min-width:0}
.wp-card[hidden]{display:none}
.wp-shot{display:block;width:100%;padding:0;text-align:left;border:2px solid var(--ink);border-radius:14px;overflow:hidden;background:#fff;cursor:zoom-in;transition:transform .25s,box-shadow .25s}
.wp-bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-bottom:1.5px solid var(--ink);background:var(--paper-2)}
.wp-bar i{width:7px;height:7px;border-radius:50%;background:#C9CBC4}
.wp-bar i:first-child{background:var(--cobalt)}
.wp-bar b{margin-inline:auto;font:700 10px/1 var(--km);text-transform:lowercase;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%}
.wp-vp{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--paper-2)}
.wp-vp img{display:block;width:100%;height:auto;transform:translateY(0);transition:transform var(--t,.9s) cubic-bezier(.45,0,.55,1)}
.wp-zoom{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;background:var(--ink);color:#fff;font:700 10.5px/1 var(--km);text-transform:uppercase;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s}
.wp-zoom i{font-size:15px}
@media (hover:hover){
  .wp-shot:hover{transform:translateY(-3px);box-shadow:6px 6px 0 var(--ink)}
  .wp-shot:hover .wp-vp img{transform:translateY(calc(-1 * var(--dist,0px)))}
  .wp-shot:hover .wp-zoom{opacity:1;transform:none}
}
.wp-shot:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px}
.wp-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:14px}
.wp-meta>div{min-width:0}
.wp-meta .wp-credit{white-space:normal;color:var(--cobalt)}
.wp-side .wp-credit{font-weight:700;color:var(--cobalt)}
.wp-meta h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;font:400 clamp(19px,1.6vw,24px)/1 var(--kd);text-transform:uppercase;letter-spacing:-.03em}
.wp-meta p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:6px 0 0;font:700 10.5px/1.3 var(--km);text-transform:uppercase;color:var(--ink-2)}
.wp-go{flex:none;display:grid;place-items:center;width:38px;height:38px;border:2px solid var(--ink);border-radius:50%;font-size:17px;transition:background .2s,color .2s,border-color .2s}
.wp-go:hover{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
.wp-more{display:flex;justify-content:center;padding-top:clamp(28px,3vw,44px)}
.wp-more[hidden]{display:none}

/* collections inside tabs: tighter than their old full sections */
.wp-panel .pc-grid{gap:clamp(28px,3vw,44px) clamp(16px,1.8vw,26px)}
.wp-panel .fg-app{margin-top:0}

/* quick view */
.wp-dlg{width:min(1240px,calc(100vw - 32px));height:min(860px,calc(100svh - 32px));max-width:none;max-height:none;margin:auto;padding:0;border:2px solid var(--ink);border-radius:18px;background:#fff;color:var(--ink);box-shadow:10px 10px 0 var(--ink);overflow:hidden}
.wp-dlg::backdrop{background:rgba(17,18,21,.62);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.wp-dlg[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.wp-dh{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 18px;border-bottom:2px solid var(--ink);background:var(--paper)}
.wp-dh .wp-host{flex:1;min-width:0;display:flex;align-items:center;gap:8px;font:700 12px/1 var(--km);text-transform:lowercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wp-dh .wp-host i{font-size:16px;color:#0B7A50}
.wp-dev{display:flex;padding:2px;border:2px solid var(--ink);border-radius:999px;flex:none}
.wp-dev button{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:999px;font:700 10.5px/1 var(--km);text-transform:uppercase}
.wp-dev button i{font-size:16px}
.wp-dev button[aria-pressed="true"]{background:var(--cobalt);color:#fff}
.wp-ib{flex:none;display:grid;place-items:center;width:40px;height:40px;border:2px solid var(--ink);border-radius:50%;background:#fff;font-size:18px;transition:background .2s,color .2s}
.wp-ib:hover{background:var(--ink);color:#fff}
.wp-db{display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:0}
.wp-stage{min-height:0;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(circle,rgba(17,18,21,.12) 1px,transparent 1.2px) 0 0/16px 16px,#F4F5F1;scrollbar-width:thin}
.wp-stage img{display:block;margin:0 auto;width:100%;height:auto}
.wp-stage.mob{padding:24px 0}
.wp-stage.mob img{width:min(390px,86%);border:8px solid var(--ink);border-radius:30px}
.wp-side{display:flex;flex-direction:column;gap:14px;min-height:0;overflow-y:auto;padding:22px;border-left:2px solid var(--ink)}
.wp-side .k{display:inline-flex;align-items:center;gap:8px;font:700 11px/1.3 var(--km);text-transform:uppercase;color:var(--ink-2)}
.wp-side .k i{font-size:20px;color:var(--cobalt)}
.wp-side h3{margin:0;font:400 clamp(28px,2.4vw,38px)/.95 var(--kd);text-transform:uppercase;letter-spacing:-.03em}
.wp-side p{margin:0;font-size:15px;line-height:1.55;color:#3d4048}
.wp-chips{display:flex;flex-wrap:wrap;gap:6px}
.wp-chips span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#EEF0FF;color:var(--cobalt);font:700 10.5px/1 var(--km);text-transform:uppercase}
.wp-side>*{flex:none}
.wp-side .btn{justify-content:center;margin-top:auto}
.wp-nav{display:flex;gap:8px}
.wp-nav .wp-ib{flex:1;border-radius:999px;width:auto;gap:8px;display:flex;justify-content:center;align-items:center;font:700 11px/1 var(--km);text-transform:uppercase}
.wp-count{font:700 11px/1 var(--km);color:var(--ink-2);text-align:center}

@media (max-width:1100px){.wp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){
  .wp-db{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}
  .wp-side{border-left:0;border-top:2px solid var(--ink);max-height:42svh;padding:16px}
  .wp-side .btn{margin-top:4px}
  .wp-dev button span{display:none}
}
@media (max-width:620px){
  .wp-grid{grid-template-columns:minmax(0,1fr)}
  .wp-tabs{top:80px;width:100%}
  .wp-inds{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);scrollbar-width:none}.wp-inds::-webkit-scrollbar{display:none}.wp-inds button{flex:none}
  .wp-tabs button{padding:0 13px;font-size:11px}
  .wp-tabs button i{display:none}
  .wp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wp-stats div{padding:12px 10px 12px 0}.wp-stats div+div{padding-left:10px}
  .wp-stats div:nth-child(3){padding-left:0;border-left:0}.wp-stats div:nth-child(n+3){border-top:1px solid rgba(17,18,21,.18)}
  .wp-dlg{width:100vw;height:100svh;border:0;border-radius:0;box-shadow:none}
  .wp-side p{font-size:14px}
}
@media (prefers-reduced-motion:reduce){.wp-vp img,.wp-shot,.wp-zoom{transition:none}}
