/* Social link hub. Shared header, footer and contact widgets stay unchanged. */
body.thinkbrick-links { margin: 0; background: #fffdf8; }
.tbLinks { position: relative; isolation: isolate; overflow: hidden; padding: 74px 28px 105px; background-color: var(--paper); background-image: linear-gradient(rgba(23,38,44,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,38,44,.035) 1px,transparent 1px); background-size: 64px 64px; }
.tbLinksInner { position: relative; z-index: 1; width: min(100%,660px); margin: auto; }
.tbLinksIntro { text-align: center; margin-bottom: 72px; }
.tbLinksKicker { display: inline-block; padding: 10px 17px; border: 1.5px solid var(--ink); background: var(--paper); box-shadow: 5px 5px 0 var(--teal-light); transform: rotate(-1.3deg); font-size: 15px; font-weight: 650; line-height: 1.2; }
.tbLinks h1 { margin: 25px -15px 0; color: var(--ink); font-size: clamp(36px,5.1vw,66px); font-weight: 820; line-height: 1.02; letter-spacing: -.055em; }
.tbLinks h1 em { font-style: normal; color: var(--teal-dark); }
.tbLinksList { display: grid; gap: 25px; width: calc(100% - 38px); margin: auto; }
.tbLinksCard { position: relative; display: flex; justify-content: center; align-items: center; min-height: 79px; padding: 18px 18px; border: 2px solid var(--ink); background: var(--paper); box-shadow: 6px 6px 0 var(--teal); color: var(--ink); font-size: clamp(21px,2.5vw,30px); font-weight: 560; line-height: 1.2; text-align: center; letter-spacing: -.025em; transform: translateX(var(--offset,0px)) rotate(var(--tilt,0deg)); transition: transform .22s ease,box-shadow .22s ease,background .22s ease; }
.tbLinksWorkshop { --offset: 0px; --tilt: .2deg; animation: tbLinksNudge 11s ease-in-out 3s infinite; }
.tbLinksCardFeatured { background: #94dcd5; box-shadow: 7px 7px 0 var(--ink); font-weight: 620; }
.tbLinksList > .tbLinksCard:nth-child(2) { --offset: -12px; --tilt: -.55deg; }
.tbLinksList > .tbLinksCard:nth-child(3) { --offset: 12px; --tilt: .4deg; }
.tbLinksList > .tbLinksCard:nth-child(4) { --offset: -3px; --tilt: -.25deg; }
.tbLinksList > .tbLinksCard:nth-child(5) { --offset: 12px; --tilt: .35deg; }
.tbLinksList > .tbLinksCard:nth-child(6) { --offset: 1px; --tilt: -.35deg; }
.tbLinksList > .tbLinksCard:nth-child(7) { --offset: -9px; --tilt: .25deg; }
.tbLinksNew { position: absolute; display: grid; place-items: center; width: 52px; height: 52px; left: -22px; top: -26px; border: 1.5px solid var(--ink); border-radius: 50%; background: #f1d14b; color: var(--ink); box-shadow: 2px 3px 0 var(--ink); transform: rotate(-15deg); font-size: 14px; font-weight: 850; text-transform: uppercase; letter-spacing: -.02em; }
.tbLinksCard:focus-visible,.tbLinksDialog a:focus-visible,.tbLinksDialog button:focus-visible { outline: 3px solid var(--teal-dark); outline-offset: 7px; }
.tbLinksWorkshop:hover,.tbLinksWorkshop:focus-within { animation-play-state: paused; }
@media (hover:hover) { .tbLinksCard:hover { transform: translate(var(--offset,0px),-4px) rotate(0); box-shadow: 8px 10px 0 var(--teal-dark); background: var(--teal-light); } .tbLinksCardFeatured:hover { box-shadow: 8px 10px 0 var(--ink); background: #a4e4de; } }
@keyframes tbLinksNudge { 0%,92%,100% { transform: rotate(0); } 93.5% { transform: rotate(-1.15deg); } 95% { transform: rotate(1.15deg); } 96.5% { transform: rotate(-.7deg); } 98% { transform: rotate(.4deg); } }
.tbLinksDecor { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.tbLinksCross { position: absolute; width: 43px; height: 43px; transform: rotate(-8deg); }
.tbLinksCross::before,.tbLinksCross::after { content:""; position:absolute; background:var(--teal); opacity:.7; }
.tbLinksCross::before { top:20px; left:0; width:100%; height:3px; }
.tbLinksCross::after { top:0; left:20px; width:3px; height:100%; }
.tbLinksCrossOne { top:240px; left:calc(50% - 440px); }
.tbLinksCrossTwo { bottom:140px; right:calc(50% - 425px); transform:rotate(12deg) scale(.7); }
.tbLinksSlashes { position:absolute; top:520px; right:calc(50% - 460px); color:var(--teal-dark); font:28px ui-monospace,monospace; letter-spacing:9px; opacity:.55; }
.tbLinksTrace { position:absolute; bottom:39px; left:calc(50% - 180px); width:360px; height:1px; background:repeating-linear-gradient(90deg,var(--teal-light) 0 22px,transparent 22px 39px); }
.tbLinksTrace i { position:absolute; top:-5px; right:45px; height:11px; width:11px; border:2px solid var(--teal-dark); border-radius:50%; background:var(--paper); }
.tbLinksDialog { width:min(640px,calc(100% - 36px)); max-height:calc(100dvh - 48px); margin:auto; padding:36px; border:2px solid var(--ink); background:var(--paper); color:var(--ink); box-shadow:8px 8px 0 var(--teal); font-family:var(--font-geist),Arial,sans-serif; }
.tbLinksDialog::backdrop { background:rgba(13,29,34,.75); backdrop-filter:blur(3px); }
.tbLinksClose { position:absolute; top:10px; right:10px; width:40px; height:40px; padding:0; border:0; background:transparent; cursor:pointer; font-size:30px; }
.tbLinksDialogKicker { display:block; padding-right:25px; color:var(--teal-dark); text-transform:uppercase; letter-spacing:.12em; font:700 11px ui-monospace,monospace; }
.tbLinksDialog h2 { margin:16px 0 20px; font-size:28px; line-height:1.1; letter-spacing:-.035em; }
.tbLinksDialog p { margin:0 0 15px; font-size:15px; line-height:1.6; }
.tbLinksPrivacy { display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:21px; }
.page .tbLinksPrivacy a { text-decoration:underline; text-underline-offset:3px; font-size:13px; }
.tbLinksDialogActions { display:flex; justify-content:flex-end; flex-wrap:wrap; align-items:center; gap:16px; margin-top:28px; }
.tbLinksDialogActions button,.tbLinksDialogActions a { padding:13px 20px; border:1px solid var(--ink); font-size:15px; font-weight:650; cursor:pointer; }
.tbLinksDialogActions button { background:transparent; }
.page .tbLinksDialogActions a { background:var(--ink); color:var(--paper); box-shadow:4px 4px 0 var(--teal); }
@media(max-width:700px) {
 .tbLinks { padding:48px 24px 80px; background-size:48px 48px; }
 .tbLinksIntro { margin-bottom:53px; }
 .tbLinksKicker { font-size:13px; padding:9px 13px; }
 .tbLinks h1 { font-size:clamp(34px,7.8vw,52px); margin:25px -6px 0; }
 .tbLinksList { width:calc(100% - 20px); gap:20px; }
 .tbLinksCard { min-height:64px; padding:16px 12px; font-size:clamp(19px,4.7vw,28px); box-shadow:5px 5px 0 var(--teal); }
 .tbLinksCardFeatured { box-shadow:5px 5px 0 var(--ink); }
 .tbLinksNew { width:43px; height:43px; left:-17px; top:-22px; font-size:12px; }
 .tbLinksCrossOne { left:16px; top:205px; transform:scale(.55) rotate(-8deg); }
 .tbLinksCrossTwo { right:6px; bottom:24px; }
 .tbLinksSlashes { display:none; }
 .tbLinksTrace { left:calc(50% - 90px); width:180px; bottom:29px; }
 .tbLinksDialog { padding:29px 23px; }
 .tbLinksDialog h2 { font-size:25px; }
 .tbLinksDialogActions { gap:12px; }
}
@media(prefers-reduced-motion:reduce) { .tbLinksWorkshop { animation:none; } .tbLinksCard { transition:none; } }

/* The social hub has only its seven main links and the standard footer. */
.thinkbrick-links .floatingContact { display:none; }
