/* 3D contact tiles: glossy rounded icon blocks that float and tilt toward the cursor */
.chan-row{display:flex;flex-wrap:wrap;justify-content:center;gap:34px clamp(22px,4vw,56px);perspective:1000px}
.chan{--rx:0deg;--ry:0deg;--c1:#d0704a;--c2:#8a3a1f;display:grid;justify-items:center;gap:14px;min-width:120px;color:#f6e6cc!important;text-decoration:none!important;text-align:center;cursor:pointer}
.chan-ico{position:relative;width:96px;height:96px;border-radius:28px;display:grid;place-items:center;color:#fff;background:linear-gradient(150deg,var(--c1),var(--c2));
 box-shadow:inset 0 2px 0 #ffffff70,inset 0 -10px 16px #00000047,0 0 0 1px #ffffff22,0 30px 30px -16px #000e,0 10px 16px -8px #0009;
 transform:perspective(700px) rotateX(var(--rx)) rotateY(var(--ry)) translateZ(0);transition:transform .3s cubic-bezier(.2,.75,.25,1),box-shadow .3s;animation:chanFloat 6.5s ease-in-out infinite}
.chan:nth-child(2) .chan-ico{animation-delay:-1.6s}.chan:nth-child(3) .chan-ico{animation-delay:-3.2s}.chan:nth-child(4) .chan-ico{animation-delay:-4.8s}.chan:nth-child(5) .chan-ico{animation-delay:-2.4s}.chan:nth-child(6) .chan-ico{animation-delay:-5.6s}
.chan-ico::before{content:'';position:absolute;inset:6px 6px 52% 6px;border-radius:22px 22px 60% 60%/22px 22px 24px 24px;background:linear-gradient(#ffffff55,#ffffff00);pointer-events:none}
.chan-ico svg{width:44px;height:44px;filter:drop-shadow(0 3px 3px #0006);transform:translateZ(30px)}
.chan:hover .chan-ico,.chan:focus-visible .chan-ico{box-shadow:inset 0 2px 0 #ffffff80,inset 0 -10px 16px #00000047,0 0 0 1px #ffffff40,0 42px 36px -16px #000f,0 14px 20px -8px #000a;filter:brightness(1.08)}
.chan:focus-visible{outline:2px solid #efb875;outline-offset:8px;border-radius:24px}
.chan strong{font:600 16px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:.01em}
.chan small{display:block;margin-top:3px;font-size:12px;color:#d9bd9a;max-width:200px;overflow-wrap:anywhere}
.chan.is-pending{opacity:.55;cursor:default;pointer-events:none}
@keyframes chanFloat{0%,100%{translate:0 0}50%{translate:0 -10px}}
@media(max-width:560px){.chan-row{gap:26px 22px}.chan{min-width:96px}.chan-ico{width:78px;height:78px;border-radius:22px}.chan-ico svg{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){.chan-ico{animation:none;transition:none}}
/* home page: place the channel row in the social scene */

/* ----- contact page ----- */
.contact-head{text-align:center;margin:0 auto 42px;max-width:620px}.contact-head h2,.contact-places h2,.contact-biz h2,.fg-head h2,.fg-sub{font:700 clamp(34px,4.2vw,58px)/1 'Barlow Condensed','Arial Narrow',Impact,sans-serif;color:#fff3df;margin:0 0 12px}
.contact-head p,.fg-head p{color:#dcc3a3;line-height:1.7;margin:0}
.contact-places,.contact-biz{margin-top:70px;text-align:center}
.places-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;max-width:860px;margin:26px auto 0}
.place{padding:28px 24px;border:1px solid #f0c99633;border-radius:22px;background:linear-gradient(165deg,#3a1d12aa,#1b0d08aa);text-align:center;display:grid;justify-items:center;gap:10px}
.place-ico{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(150deg,#e0a458,#9c5a26);color:#fff;box-shadow:inset 0 2px 0 #ffffff66,0 12px 16px -8px #000}.place-ico svg{width:24px;height:24px}
.place h3{margin:0;font-size:20px;color:#fff3df}.place p{margin:0;color:#dcc3a3;line-height:1.6}
.biz-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:22px}
/* ----- factory: photo cards ----- */
.fg-head{text-align:center;max-width:620px;margin:0 auto 34px}
.stage-grid,.fg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px;perspective:1200px}
.m3-tile{position:relative;margin:0;border-radius:22px;overflow:hidden;background:#1b0d08;box-shadow:0 30px 40px -24px #000e,0 0 0 1px #f0c9962e;transform-style:preserve-3d;rotate:var(--ax,0) var(--ay,0) 0 var(--deg,0deg);transition:rotate .45s cubic-bezier(.2,.75,.25,1),box-shadow .3s}
.m3-tile img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transform:scale(1.06) translate3d(calc(var(--tx,0)*-10px),calc(var(--ty,0)*-6px),0);transition:transform .5s cubic-bezier(.2,.75,.25,1)}
.m3-tile:hover{box-shadow:0 44px 50px -26px #000f,0 0 0 1px #f0c99666}
.m3-tile figcaption{position:absolute;inset:auto 0 0 0;padding:44px 20px 18px;background:linear-gradient(transparent,#140a06e6 70%);display:grid;gap:3px;transform:translateZ(30px)}
.stage-num{font:700 12px/1 Arial,sans-serif;letter-spacing:.3em;color:#f0b36a}.m3-tile strong{font:700 26px/1.05 'Barlow Condensed','Arial Narrow',Impact,sans-serif;color:#fff3df}.m3-tile small{color:#e4c9aa;font-size:13px;line-height:1.5}
.fg-sub{text-align:center;margin:70px 0 28px}
@media(prefers-reduced-motion:reduce){.m3-tile{rotate:none!important}.m3-tile img{transform:none!important;transition:none}}
.contact-section .chan-row{max-width:760px;margin-inline:auto}
.m3-tile img{height:auto!important;aspect-ratio:16/11;object-fit:cover}
.fg-lead{text-align:center;color:#dcc3a3;max-width:560px;margin:-10px auto 28px}.fg-note{text-align:center;color:#d9bd9a;margin:26px 0 0}.fg-empty{background:linear-gradient(165deg,#3a1d12,#1b0d08);box-shadow:0 0 0 1px #f0c99633}.fg-ph{aspect-ratio:16/11;display:grid;place-content:center;justify-items:center;gap:10px;color:#e4c9aa;border:1px dashed #f0c99655;border-radius:18px;margin:14px}.fg-ph svg{width:46px;height:46px}.fg-ph span{font-size:13px;letter-spacing:.08em}
.owner-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr))!important}
.owner-card{display:grid;grid-template-columns:minmax(0,clamp(200px,38%,320px)) minmax(0,1fr);column-gap:36px;align-items:center}
.owner-card .company-owner-photo{width:100%;height:auto!important;aspect-ratio:auto 9/16;max-height:min(640px,80vh);object-fit:contain;object-position:center!important;margin-bottom:0}
.owner-card .owner-info{min-width:0}
