/* Everything in Korea family look: same frame on every family site, each site in its own colour. */
.family-look{padding:8px 0 44px;margin-bottom:38px;border-bottom:1px solid rgba(173,202,250,.18);color:#e8eeff}
.family-head{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:26px}
.family-mark{display:flex;align-items:center;gap:12px;font:600 12px/1.4 var(--small);letter-spacing:.16em;text-transform:uppercase;color:#adcafa}
.family-mark span{width:34px;height:2px;background:linear-gradient(90deg,#268cff,#ada5ff,#e8a93a,#ed562f)}
.family-head h2{font:400 clamp(1.7rem,2.5vw,2.35rem)/1.15 var(--serif);letter-spacing:-.02em;color:#f5f7fa;text-wrap:balance}
.family-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.family-site{--site:#268cff;position:relative;display:flex;flex-direction:column;padding:18px 18px 16px;border:1px solid rgba(173,202,250,.16);border-top:3px solid var(--site);border-radius:6px;background:linear-gradient(160deg,color-mix(in srgb,var(--site) 13%,#0b1424),#081020 70%);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.family-site:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--site) 55%,transparent);box-shadow:0 12px 30px -16px var(--site)}
.family-site.is-current{border-color:var(--site);box-shadow:0 0 0 1px var(--site),0 16px 34px -18px var(--site)}
.family-top{display:flex;align-items:center;gap:12px;min-height:50px}
.family-top img{width:44px;height:44px;border-radius:11px;flex:none;object-fit:contain}
.family-monogram{width:44px;height:44px;border-radius:11px;flex:none;display:grid;place-items:center;background:var(--site);color:#081020;font:600 22px/1 var(--serif)}
.family-top>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.family-name{font:600 16px/1.2 var(--serif);color:#f5f7fa;overflow-wrap:normal}
.family-name span{color:#8f9bb0;font-weight:400;white-space:nowrap}
.family-name:hover{color:var(--site)}
.family-here{align-self:flex-start;font:600 9.5px/1 var(--small);letter-spacing:.12em;text-transform:uppercase;color:#081020;background:var(--site);padding:4px 7px 3px;border-radius:20px}
.family-site>p{font-size:14.5px;line-height:1.5;color:#c9d3e6;margin:12px 0 10px;text-wrap:balance}
.family-links{list-style:none;margin:auto 0 0;padding:10px 0 0;border-top:1px solid rgba(173,202,250,.13);display:flex;flex-direction:column;gap:2px}
.family-links a{display:flex;align-items:center;min-height:30px;font-size:13.5px;color:#e8eeff;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--site) 70%,transparent);text-underline-offset:4px}
.family-links a:hover{color:var(--site)}
.family-companies{margin-top:30px}
.family-companies h3{font:600 11px/1.4 var(--small);letter-spacing:.14em;text-transform:uppercase;color:#8f9bb0;margin-bottom:12px}
.family-companies ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.family-companies a{height:100%;display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid rgba(173,202,250,.12);border-radius:6px;background:rgba(8,16,32,.6);transition:border-color .25s ease}
.family-companies a:hover{border-color:rgba(173,202,250,.45)}
.family-companies img{width:36px;height:36px;border-radius:9px;flex:none;object-fit:contain;background:#fff}
.family-companies b{display:block;font:600 14px/1.25 var(--serif);color:#e8eeff;overflow-wrap:anywhere}
.family-companies b i{font-style:normal;font-weight:400;color:#8f9bb0}
.family-companies strong{display:block;font:600 13px/1.35 var(--serif);color:#adcafa;margin-top:4px}
.family-companies small{display:block;text-wrap:balance;font-size:12.5px;line-height:1.45;color:#8f9bb0;margin-top:3px}
:lang(ja) .family-look :is(h2,p,small,strong,.family-links a){word-break:auto-phrase}
@media(max-width:1150px){.family-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.family-companies ul{grid-template-columns:1fr}}
@media(max-width:520px){.family-grid{grid-template-columns:1fr;gap:8px}.family-site{padding:12px 14px 10px}.family-top{min-height:40px;gap:10px}.family-top img,.family-monogram{width:36px;height:36px;border-radius:9px}.family-site>p{margin:6px 0 4px;font-size:14px}.family-links{padding-top:6px}.family-links{flex-direction:row;flex-wrap:wrap;gap:0 16px}}
@media(prefers-reduced-motion:reduce){.family-site,.family-companies a{transition:none}.family-site:hover{transform:none}}
@media print{.family-look{display:none}}
