/* First-scene subsets preserve the existing Pretendard/Roboto glyphs and weights. */
@font-face{font-family:'FF Hero Pretendard';src:url('fonts/hero/Pretendard-hero.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-FFFF}
@font-face{font-family:'FF Hero Roboto';src:url('fonts/hero/Roboto-hero.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF}
@font-face{font-family:'Bookk Myungjo';src:url('fonts/bookk/BookkMyungjo-Bd.woff2') format('woff2'),url('fonts/bookk/BookkMyungjo_Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Bookk Myungjo';src:url('fonts/bookk/BookkMyungjo-Lt.woff2') format('woff2'),url('fonts/bookk/BookkMyungjo_Light.ttf') format('truetype');font-weight:300 400;font-style:normal;font-display:swap}
@font-face{font-family:'Jeju Myeongjo';src:url('fonts/jeju-myeongjo/JejuMyeongjoOTF.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+002B-0039,U+AC00-D7A3}
@font-face{font-family:'FF AmeriGarmnd BT';src:url('fonts/amerigarmnd-bt/AMRGARAB.TTF') format('truetype');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0020-007E}
.ff-main{--u:calc(100vw / 1920);font-family:'Roboto','Pretendard',sans-serif;color:#1a1a1a;background:#fff;overflow:hidden;font-size:calc(20 * var(--u));line-height:1.4}
.ff-main *{box-sizing:border-box}.ff-main :is(h1,h2,h3,p){margin:0}.ff-main a{color:inherit;text-decoration:none}.ff-main img{display:block;max-width:100%}.ff-container{width:calc(1400 * var(--u));margin:auto}.ff-main strong{color:#e97f1d;font-weight:500}.ff-main .ff-heading h2{font-size:calc(43 * var(--u));font-weight:300;line-height:1.4;letter-spacing:-.02em}.ff-heading{display:flex;flex-direction:column;gap:calc(25 * var(--u));margin-bottom:calc(60 * var(--u))}.ff-heading>p{font-size:calc(20 * var(--u));font-weight:300}.ff-heading .ff-kicker,.ff-kicker{font-weight:600;font-size:calc(20 * var(--u))}.ff-centered{text-align:center;align-items:center}.ff-centered .ff-kicker{color:#ab6309}.ff-centered strong{color:#ab6309}.ff-dark{color:#fff;background-color:#1c1309;background-size:100% 100%;background-repeat:no-repeat}.ff-pill{display:inline-flex;align-items:center;justify-content:center;gap:calc(25 * var(--u));border:1px solid currentColor;border-radius:999px;padding:calc(9 * var(--u)) calc(28 * var(--u));font-size:calc(18 * var(--u));line-height:1.2;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}.ff-pill:hover,.ff-pill:focus-visible{background:#e97f1d;color:#fff;border-color:#e97f1d}
.ff-hero{height:calc(990 * var(--u));position:relative;background:#1a1109 url('assets/family-main/hero.png') center/100% 100% no-repeat;color:#fff}.ff-hero-copy{position:absolute;top:calc(330 * var(--u));left:0;width:100%;text-align:center}.ff-hero-tag{display:inline-flex;border:1px solid #fff;border-radius:999px;padding:calc(10 * var(--u)) calc(32 * var(--u));font-size:calc(20 * var(--u));line-height:1.4;letter-spacing:-.04em}.ff-main .ff-hero h1{margin-top:calc(40 * var(--u));font-size:calc(53 * var(--u));line-height:1.4;font-weight:300;letter-spacing:-.02em}.ff-hero h1 strong{font-weight:600}.ff-scroll{position:absolute;top:calc(900 * var(--u));left:50%;transform:translateX(-50%);width:calc(62 * var(--u));height:calc(61 * var(--u))}.ff-scroll img{width:100%;height:100%;object-fit:contain}
.ff-fields{height:calc(990 * var(--u));background-image:url('assets/family-main/fields-bg.png');display:flex;align-items:center;padding-top:calc(40 * var(--u))}.ff-fields-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(25 * var(--u))}.ff-field{position:relative;height:calc(250 * var(--u));border-radius:calc(20 * var(--u));overflow:hidden;display:block}.ff-field>img{position:absolute;inset:0;width:100%;height:100%}.ff-field-default{position:relative;padding:calc(22 * var(--u)) calc(25 * var(--u));height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:calc(20 * var(--u))}.ff-field-default>span{border:.5px solid #fff;border-radius:999px;padding:calc(7 * var(--u)) calc(15 * var(--u));font-size:calc(18 * var(--u));line-height:1.2}.ff-main .ff-field h3{font-size:calc(28 * var(--u));font-weight:500;line-height:1.4}.ff-field-default p{font-size:calc(16 * var(--u));line-height:1.4;font-weight:300}.ff-field-hover{position:absolute;inset:0;background:#e97f1d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(25 * var(--u));opacity:0;transition:opacity .2s}.ff-field:is(:hover,:focus-visible) .ff-field-hover{opacity:1}.ff-urgent{position:relative;height:calc(234 * var(--u));margin-top:calc(20 * var(--u));padding:calc(40 * var(--u)) calc(25 * var(--u));display:flex;align-items:center;justify-content:space-between;border-radius:calc(20 * var(--u));overflow:hidden}.ff-urgent-bg{position:absolute;inset:0;width:100%;height:100%;z-index:0}.ff-urgent>div,.ff-urgent>a{position:relative}.ff-urgent-label{font-size:calc(18 * var(--u));border:1px solid #e9241d;color:#e9241d;border-radius:999px;padding:calc(5 * var(--u)) calc(15 * var(--u))}.ff-main .ff-urgent h3{font-size:calc(36 * var(--u));font-weight:500;margin:calc(20 * var(--u)) 0}.ff-urgent p{font-size:calc(16 * var(--u));font-weight:300}.ff-inline-contact{display:flex;align-items:center;gap:calc(20 * var(--u));font-size:calc(23.5 * var(--u));padding:calc(9 * var(--u)) calc(20 * var(--u)) calc(9 * var(--u)) calc(9 * var(--u));background:rgba(255,255,255,.3);border-radius:calc(20 * var(--u));white-space:nowrap}.ff-inline-contact img{width:calc(73 * var(--u));height:calc(73 * var(--u))}.ff-field-note{margin:calc(30 * var(--u)) 0!important;font-size:calc(18 * var(--u));font-weight:300}
.ff-stories{height:calc(990 * var(--u));background-image:url('assets/family-main/stories-bg.png');display:flex;align-items:center}.ff-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(23.5 * var(--u))}.ff-story{position:relative;height:calc(540 * var(--u));border-radius:calc(20 * var(--u));overflow:hidden;background:#fff;color:#1a1a1a}.ff-story-image{width:100%;height:calc(200 * var(--u));object-fit:cover}.ff-story-chapter{position:absolute;top:calc(180 * var(--u));left:calc(30 * var(--u));background:#f6f1e9;color:#ab6309;border-radius:999px;padding:calc(5 * var(--u)) calc(16 * var(--u));font-size:calc(16 * var(--u))}.ff-story-body{height:calc(340 * var(--u));padding:calc(30 * var(--u)) calc(30 * var(--u)) calc(25 * var(--u));display:flex;flex-direction:column;gap:calc(25 * var(--u))}.ff-main .ff-story h3{font-family:'Bookk Myungjo',serif;font-size:calc(28 * var(--u));line-height:1.5;font-weight:700;min-height:calc(126 * var(--u))}.ff-story p{font-size:calc(20 * var(--u));font-weight:300;line-height:1.4}.ff-story .ff-pill{align-self:flex-end;margin-top:auto}.ff-story:is(:hover,:focus-within) .ff-pill{background:#e97f1d;border-color:#e97f1d;color:white}.ff-story-note{text-align:right;font-size:calc(14 * var(--u));margin-top:calc(30 * var(--u))!important;font-weight:300}
.ff-team{height:calc(1763 * var(--u));padding:calc(80 * var(--u)) 0}.ff-team .ff-heading{height:calc(226 * var(--u))}.ff-team-image{width:100%;height:calc(600 * var(--u));object-fit:contain}.ff-lawyer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(25 * var(--u));margin-top:calc(60 * var(--u))}.ff-lawyer{height:calc(347 * var(--u));position:relative}.ff-lawyer>img{position:absolute;width:100%;height:100%;inset:0}.ff-lawyer-copy{position:absolute;inset:0;padding:calc(39 * var(--u)) calc(25 * var(--u))}.ff-main .ff-lawyer h3{font-size:calc(30 * var(--u));font-weight:500;white-space:nowrap}.ff-lawyer small{font-size:calc(18 * var(--u));font-weight:300;margin-left:calc(8 * var(--u))}.ff-lawyer p{margin-top:calc(35 * var(--u));font-size:calc(16 * var(--u));display:flex;flex-direction:column;gap:calc(10 * var(--u));letter-spacing:-.05em}.ff-lawyer p b{font-size:calc(18 * var(--u));color:#e97f1d;font-weight:500}.ff-lawyer .ff-pill{position:absolute;left:calc(25 * var(--u));bottom:calc(45 * var(--u))}.ff-lawyer:is(:hover,:focus-within) .ff-pill{background:#e97f1d;border-color:#e97f1d;color:#fff}.ff-stats{position:relative;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;height:calc(250 * var(--u));margin-top:calc(60 * var(--u));color:#f7f7f7}.ff-stats>img{position:absolute;inset:0;width:100%;height:100%}.ff-stats>div{z-index:1;text-align:center;border-right:.5px solid #dedede;display:flex;flex-direction:column;gap:calc(20 * var(--u))}.ff-stats>div:last-child{border:0}.ff-stats strong{font-family:'FF AmeriGarmnd BT','Jeju Myeongjo',serif;font-weight:700;font-size:calc(69.98 * var(--u));line-height:1.05}.ff-stats span{font-size:calc(16 * var(--u));font-weight:300}
.ff-records{height:calc(2516 * var(--u));background-color:#fff;background-image:url('assets/family-main/records-bg.png');background-position:center;background-size:cover;background-repeat:no-repeat}.ff-cases{padding-top:calc(100 * var(--u))}.ff-carousel{position:relative;width:100%}.ff-track{display:flex;align-items:center;gap:calc(24 * var(--u));overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:calc(30 * var(--u)) calc((100vw - 350 * var(--u)) / 2);}.ff-track::-webkit-scrollbar{display:none}.ff-case{flex:0 0 calc(350 * var(--u));padding:calc(20 * var(--u));border-radius:calc(15 * var(--u));background:#fff;scroll-snap-align:center;transition:transform .2s;display:flex;flex-direction:column;gap:calc(25 * var(--u));min-height:calc(740 * var(--u))}.ff-case:hover,.ff-case:focus-visible{transform:translateY(calc(-20 * var(--u)))}.ff-case-category{display:block;background:#e97f1d;color:#fff;text-align:center;font-size:calc(24 * var(--u));font-weight:600;padding:calc(8 * var(--u));border-radius:calc(6 * var(--u))}.ff-case-thumb,.ff-case-placeholder{width:100%;height:calc(420 * var(--u));object-fit:cover;border-radius:calc(8 * var(--u))}.ff-case-placeholder{background:#eee9e1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:calc(30 * var(--u));text-align:center}.ff-case-placeholder strong{font-size:calc(32 * var(--u));color:#ab6309}.ff-case-placeholder span{font-size:calc(16 * var(--u));color:#9d9a94}.ff-main .ff-case h3{font-size:calc(25 * var(--u));font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ff-case>p{font-size:calc(17.5 * var(--u));font-weight:300;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ff-case-meta{display:flex;align-items:center;gap:calc(10 * var(--u));font-size:calc(15 * var(--u));color:#9d9a94;margin-top:auto}.ff-case-meta img{width:calc(41 * var(--u));height:calc(41 * var(--u))}.ff-case-meta time{margin-left:auto;font-size:calc(12 * var(--u))}.ff-main :is(.ff-prev,.ff-next){position:absolute;top:50%;transform:translateY(-50%);width:calc(70 * var(--u));height:calc(46 * var(--u));border:0;padding:0;background:none;cursor:pointer;z-index:2}.ff-prev{left:calc(115 * var(--u))}.ff-next{right:calc(115 * var(--u))}.ff-main :is(.ff-prev,.ff-next) img{width:100%;height:100%}.ff-more{display:flex;width:max-content;margin:calc(50 * var(--u)) auto 0}.ff-reviews{padding-top:calc(85 * var(--u))}.ff-review-line{width:calc(24 * var(--u));height:calc(184 * var(--u));object-fit:contain}.ff-review{flex:0 0 calc(350 * var(--u));height:calc(540 * var(--u));background:#fff;border-radius:calc(15 * var(--u));padding:calc(20 * var(--u));position:relative;overflow:hidden;scroll-snap-align:center}.ff-review-label{display:block;text-align:center;background:#ab6309;color:#fff;font-size:calc(22 * var(--u));font-weight:500;padding:calc(12 * var(--u));border-radius:calc(6 * var(--u));position:relative;z-index:2}.ff-review-label small{display:block;font-size:calc(11 * var(--u));font-weight:300}.ff-review-normal>img,.ff-review-placeholder{width:100%;height:calc(225 * var(--u));object-fit:cover;margin:calc(20 * var(--u)) 0}.ff-review-placeholder{background:#f3ede5;color:#ab6309;display:flex;align-items:center;justify-content:center;text-align:center;font-family:'Bookk Myungjo',serif}.ff-main .ff-review h3{font-size:calc(24 * var(--u));font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ff-review p{font-size:calc(17 * var(--u));line-height:1.4;font-weight:300;margin-top:calc(25 * var(--u));display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ff-review-hover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(95 * var(--u)) calc(25 * var(--u)) calc(30 * var(--u));background:#ab6309;color:#fff;opacity:0;transition:opacity .2s;text-align:center}.ff-review-hover .ff-pill{margin-top:auto}.ff-review:hover .ff-review-hover,.ff-review:focus-visible .ff-review-hover{opacity:1}.ff-review:hover .ff-review-label,.ff-review:focus-visible .ff-review-label{background:#bc7d32}
.ff-guide{height:calc(682.83 * var(--u));padding-bottom:calc(40 * var(--u))}.ff-guide-banner{height:calc(491.6 * var(--u));background:url('assets/family-main/guide.png') center/100% 100% no-repeat;text-align:center;padding:calc(80 * var(--u)) calc(60 * var(--u)) calc(60 * var(--u));display:flex;flex-direction:column;align-items:center;gap:calc(40 * var(--u));border:.3px solid #dedede}.ff-guide .ff-kicker{color:#ab6309}.ff-main .ff-guide h2{font-size:calc(53 * var(--u));line-height:1.4;letter-spacing:-.02em;color:#ab6309}.ff-main .ff-guide h2 b{font-weight:500}.ff-main .ff-guide h2 span{font-weight:300}.ff-guide-banner>p:not(.ff-kicker){font-size:calc(24 * var(--u));line-height:1.4;font-weight:300}.ff-guide-banner>p:not(.ff-kicker) span{font-weight:300}.ff-guide-banner>p:not(.ff-kicker) b{font-weight:400}.ff-guide-banner>.ff-pill{width:calc(186 * var(--u));height:calc(41 * var(--u));margin-top:calc(20 * var(--u));padding:calc(10 * var(--u)) calc(28 * var(--u));font-size:calc(18 * var(--u))}.ff-guide-actions{display:flex;width:calc(754.21 * var(--u));height:calc(91.23 * var(--u));justify-content:center;gap:calc(60 * var(--u));margin:calc(60 * var(--u)) auto 0}.ff-guide-actions a{display:flex;width:calc(355.11 * var(--u));height:calc(91.23 * var(--u));align-items:center;gap:calc(25 * var(--u));border:1px solid #dedede;border-radius:999px;padding:calc(9.12 * var(--u)) calc(20 * var(--u)) calc(9.12 * var(--u)) calc(9.12 * var(--u));font-size:calc(23.5 * var(--u));line-height:1.2;transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}.ff-guide-actions img{width:calc(73 * var(--u));height:calc(73 * var(--u));transition:transform .25s ease}.ff-guide-actions a:hover,.ff-guide-actions a:focus-visible{color:#fff;border-color:#e97f1d;background:#e97f1d;box-shadow:0 calc(10 * var(--u)) calc(24 * var(--u)) rgba(171,99,9,.2);transform:translateY(calc(-4 * var(--u)))}.ff-guide-actions a:nth-child(2):hover,.ff-guide-actions a:nth-child(2):focus-visible{border-color:#ab6309;background:#ab6309}.ff-guide-actions a:hover>img:first-child,.ff-guide-actions a:focus-visible>img:first-child{transform:scale(1.06)}.ff-guide-actions a:hover .ff-arrow,.ff-guide-actions a:focus-visible .ff-arrow{filter:none}
@media(max-width:1024px){
.ff-main{--u:calc(100vw / 780);font-size:16px}.ff-container{width:calc(100% - 40px)}.ff-hero{height:680px;max-height:100svh;min-height:520px;background-size:cover}.ff-hero-copy{top:35%}.ff-main .ff-hero h1{font-size:clamp(24px,6vw,44px);margin-top:28px}.ff-hero-tag{font-size:14px;padding:8px 20px}.ff-scroll{top:auto;bottom:30px;width:45px;height:auto}.ff-fields,.ff-stories,.ff-team,.ff-records,.ff-guide{height:auto;padding:60px 0}.ff-fields,.ff-stories{background-size:cover}.ff-heading{gap:15px;margin-bottom:30px}.ff-main .ff-heading h2{font-size:26px}.ff-heading>p,.ff-heading .ff-kicker{font-size:14px}.ff-fields-grid,.ff-story-grid,.ff-lawyer-grid{grid-template-columns:1fr;gap:20px}.ff-field{height:auto;aspect-ratio:1.8}.ff-field-default{padding:18px 20px;gap:12px}.ff-field-default>span{font-size:12px;padding:5px 10px}.ff-main .ff-field h3{font-size:22px}.ff-field-default p{font-size:12px}.ff-pill{font-size:13px;padding:8px 18px}.ff-urgent{height:auto;min-height:240px;flex-direction:column;align-items:flex-start;gap:20px;padding:24px 20px}.ff-urgent-bg{object-fit:cover}.ff-main .ff-urgent h3{font-size:22px}.ff-urgent p,.ff-field-note{font-size:12px}.ff-urgent-label{font-size:12px}.ff-inline-contact{font-size:15px}.ff-inline-contact img{width:44px;height:44px}.ff-story{height:auto;border-radius:15px}.ff-story-image{height:auto;aspect-ratio:2.255}.ff-story-chapter{top:calc((100vw - 40px) / 2.255 - 12px);left:20px;font-size:12px;padding:4px 12px}.ff-story-body{height:auto;min-height:260px;padding:25px;gap:20px}.ff-main .ff-story h3{font-size:23px;min-height:0}.ff-story p{font-size:14px}.ff-story .ff-pill{margin-top:10px}.ff-story-note{font-size:10px}.ff-team .ff-heading{height:auto}.ff-team-image{height:auto}.ff-lawyer-grid{margin-top:30px}.ff-lawyer{height:auto;aspect-ratio:450/347}.ff-lawyer-copy{padding:30px 20px}.ff-main .ff-lawyer h3{font-size:24px}.ff-lawyer small{font-size:13px}.ff-lawyer p{font-size:12px;margin-top:25px}.ff-lawyer p b{font-size:14px}.ff-lawyer .ff-pill{left:20px;bottom:30px}.ff-stats{height:220px;margin-top:30px;grid-template-columns:repeat(2,1fr)}.ff-stats>img{object-fit:cover;border-radius:15px}.ff-stats strong{font-size:32px}.ff-stats span{font-size:12px}.ff-stats>div{gap:10px}.ff-records{background-size:cover}.ff-cases{padding-top:0}.ff-track{gap:20px;padding:20px calc((100vw - 280px)/2)}.ff-case{flex-basis:280px;min-height:620px;padding:16px;gap:20px}.ff-case-category{font-size:19px;padding:8px}.ff-case-thumb,.ff-case-placeholder{height:330px}.ff-main .ff-case h3{font-size:19px}.ff-case>p{font-size:14px}.ff-case-meta{font-size:12px}.ff-case-meta img{width:32px;height:32px}.ff-case-meta time{font-size:10px}.ff-main :is(.ff-prev,.ff-next){width:45px;height:30px}.ff-prev{left:10px}.ff-next{right:10px}.ff-more{margin-top:25px}.ff-reviews{padding-top:50px}.ff-review-line{width:18px;height:130px}.ff-review{flex-basis:280px;height:440px;padding:16px}.ff-review-label{font-size:17px;padding:10px}.ff-review-label small{font-size:10px}.ff-review-normal>img,.ff-review-placeholder{height:180px;margin:15px 0}.ff-main .ff-review h3{font-size:18px}.ff-review p{font-size:14px;margin-top:15px}.ff-review-hover{padding:85px 20px 25px}.ff-guide{padding:0 0 40px}.ff-guide-banner{height:auto;min-height:360px;background-size:cover;padding:50px 20px;gap:25px}.ff-main .ff-guide h2{font-size:28px}.ff-guide-banner>p:not(.ff-kicker){font-size:16px}.ff-guide .ff-kicker{font-size:14px}.ff-guide-actions{gap:12px;margin-top:30px;padding:0 15px}.ff-guide-actions a{font-size:12px;gap:8px;padding:5px 10px 5px 5px}.ff-guide-actions img{width:35px;height:35px}
}
@media(prefers-reduced-motion:reduce){.ff-main *{scroll-behavior:auto!important;transition:none!important}}

.ff-main :is(h1,h2,h3){display:block}.ff-main .ff-urgent-label{display:inline-block}

/* Keep legacy a:link/a:focus resets from overriding the main design. */
.ff-main .ff-pill{border:1px solid currentColor;border-radius:999px;display:inline-flex}
.ff-main .ff-pill:is(:hover,:focus-visible){border-color:#e97f1d}
.ff-main .ff-field{border-radius:calc(20 * var(--u))}
.ff-main :is(.ff-case,.ff-review){border-radius:calc(15 * var(--u))}
.ff-main .ff-inline-contact{border-radius:calc(20 * var(--u))}
.ff-main .ff-guide-actions a{border:1px solid #dedede;border-radius:999px}
.ff-main a:focus-visible{outline:2px solid #e97f1d;outline-offset:4px}

/* Records card structure: judgment overlay and exact two-part section geometry. */
.ff-case-judgment{position:relative;width:100%;height:calc(420 * var(--u));flex:none;overflow:hidden;border-radius:calc(8 * var(--u))}.ff-case-judgment>.ff-case-thumb,.ff-case-judgment>.ff-case-placeholder{width:100%;height:100%;border-radius:0}.ff-case-judgment:after{content:"";position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.6)}.ff-case-judgment>strong{position:absolute;left:50%;top:50%;z-index:2;display:flex;width:75%;min-height:28%;align-items:center;justify-content:center;padding:0 8%;transform:translate(-50%,-50%);border-width:0 calc(2 * var(--u));border-style:solid;border-color:#e7c873;color:#e7c873;font-size:calc(36 * var(--u));font-weight:500;line-height:1.4;text-align:center;word-break:keep-all}.ff-case-copy{display:flex;flex-direction:column;gap:calc(20 * var(--u));overflow:hidden}.ff-case-copy>p{font-size:calc(17.5 * var(--u));font-weight:300;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}

@media(min-width:1025px){
 .ff-case-judgment{width:calc(316.53 * var(--u));height:calc(418.74 * var(--u));border-radius:calc(10.9905 * var(--u))}.ff-case-judgment>strong{width:calc(269.95 * var(--u));min-height:calc(116 * var(--u));padding:0 calc(27.4761 * var(--u));border-width:0 calc(2.19809 * var(--u));font-size:calc(41.7637 * var(--u))}
 .ff-case-copy{width:calc(316.53 * var(--u));height:calc(170.72 * var(--u));gap:calc(21.98 * var(--u))}.ff-case-copy>p{height:calc(52.75 * var(--u));font-size:calc(17.5847 * var(--u));line-height:1.4;-webkit-line-clamp:2}
 .ff-reviews{height:calc(1083.42 * var(--u));margin-top:calc(-45 * var(--u))}
}

.ff-main .ff-more{display:flex}

/* Entrance, counter and continuous record streams. */
.ff-hero-copy>*{opacity:0;transform:translateY(calc(28 * var(--u)));transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)}
.ff-hero-copy .ff-hero-tag{transition-delay:.12s}.ff-hero-copy h1{transition-delay:.3s}.ff-scroll{opacity:0;transition:opacity .7s ease .85s}
.ff-main.is-ff-ready .ff-hero-copy>*,.ff-main.is-ff-ready .ff-scroll{opacity:1;transform:none}
.ff-track[data-ff-stream-ready="true"]{width:max-content;max-width:none;overflow:visible;scroll-snap-type:none;animation:ff-record-stream 72s linear infinite;will-change:transform}
.ff-reviews .ff-track[data-ff-stream-ready="true"]{animation-duration:66s}
.ff-carousel:hover .ff-track[data-ff-stream-ready="true"],.ff-carousel:focus-within .ff-track[data-ff-stream-ready="true"]{animation-play-state:paused}
@keyframes ff-record-stream{to{transform:translateX(calc(-50% - (12 * var(--u))))}}
@media(prefers-reduced-motion:reduce){.ff-hero-copy>*,.ff-scroll{opacity:1!important;transform:none!important;transition:none!important}.ff-track[data-ff-stream-ready="true"]{animation:none!important}}

/* 2026-09-19 section detailing from the supplied 1920px references. */
.ff-main .ff-arrow{width:calc(17 * var(--u));height:calc(10 * var(--u));max-width:none;object-fit:contain;filter:brightness(0)}
.ff-main .ff-external{width:calc(15 * var(--u));height:calc(15 * var(--u));max-width:none;object-fit:contain}
.ff-main :is(.ff-pill:hover,.ff-pill:focus-visible,.ff-field-hover .ff-pill,.ff-fields-more,.ff-inline-contact,.ff-review-hover .ff-pill) .ff-arrow{filter:none}
.ff-hero{height:100svh;background-size:cover}
.ff-hero-copy{top:33.333%}
.ff-scroll{top:auto;bottom:calc(29 * var(--u))}

@media(min-width:1025px){
 .ff-guide-actions a{font-size:calc(23.7 * var(--u));white-space:nowrap}
 .ff-cases{height:calc(1416.39 * var(--u));padding-top:calc(100 * var(--u))}
 .ff-cases>.ff-heading{height:calc(166 * var(--u));margin-bottom:calc(40 * var(--u))}
 .ff-cases .ff-carousel{height:calc(907.39 * var(--u))}
 .ff-cases .ff-track{height:100%;align-items:flex-end;gap:calc(60 * var(--u));padding:0}
 .ff-case{flex-basis:calc(360.49 * var(--u));width:calc(360.49 * var(--u));height:calc(826.39 * var(--u));min-height:0;padding:calc(21.9809 * var(--u));gap:calc(32.97 * var(--u));border:calc(1.09905 * var(--u)) solid #dedede;border-radius:calc(17.5847 * var(--u));background:rgba(255,255,255,.85)}
 .ff-case-category{height:calc(52.85 * var(--u));padding:calc(7.92335 * var(--u)) calc(23.7701 * var(--u));border-radius:calc(8.79237 * var(--u));font-size:calc(26.3771 * var(--u));line-height:1.4}
 .ff-case-thumb,.ff-case-placeholder{height:calc(418.74 * var(--u));border-radius:calc(10.9905 * var(--u))}
 .ff-main .ff-case h3{height:calc(74 * var(--u));font-size:calc(26.3771 * var(--u));line-height:1.4}
 .ff-case>p{height:calc(52.75 * var(--u));font-size:calc(17.5847 * var(--u));line-height:1.4;-webkit-line-clamp:2}
 .ff-case-meta{height:calc(41.21 * var(--u));font-size:calc(19.7828 * var(--u))}.ff-case-meta img{width:calc(41.21 * var(--u));height:calc(41.21 * var(--u))}.ff-case-meta time{font-size:calc(13.1886 * var(--u))}
 .ff-cases .ff-more{width:calc(274 * var(--u));height:calc(43 * var(--u));margin-top:calc(60 * var(--u));font-size:calc(20 * var(--u))}
 .ff-reviews{height:calc(1083.42 * var(--u));margin-top:calc(-45 * var(--u));padding-top:0;display:flex;flex-direction:column;align-items:center;gap:calc(60 * var(--u))}
 .ff-reviews>.ff-heading{height:calc(382 * var(--u));margin:0;gap:calc(25 * var(--u))}
 .ff-reviews .ff-carousel{width:100%;height:calc(538.42 * var(--u))}
 .ff-reviews .ff-track{height:100%;gap:calc(35 * var(--u));padding:0}
 .ff-review{flex-basis:calc(400 * var(--u));width:calc(400 * var(--u));height:calc(538.42 * var(--u));padding:calc(20 * var(--u));border:1px solid #9d9a94;border-radius:calc(16 * var(--u))}
 .ff-review-label{width:calc(360 * var(--u));height:calc(69.42 * var(--u));padding:calc(7.2093 * var(--u)) calc(21.6279 * var(--u));font-size:calc(24 * var(--u));line-height:1.4;border-radius:calc(8 * var(--u))}
 .ff-review-normal>img,.ff-review-placeholder{width:calc(360 * var(--u));height:calc(215 * var(--u));margin:calc(25 * var(--u)) 0}
 .ff-main .ff-review h3{height:calc(68 * var(--u));font-size:calc(24 * var(--u));line-height:1.4;text-align:center}
 .ff-review p{height:calc(66 * var(--u));margin-top:calc(15 * var(--u));padding-top:calc(15 * var(--u));border-top:.7px dashed #9d9a94;font-size:calc(16 * var(--u));line-height:1.4;text-align:center}
 .ff-reviews .ff-more{width:calc(274 * var(--u));height:calc(43 * var(--u));margin:0;font-size:calc(20 * var(--u))}
 .ff-track[data-ff-stream-ready="true"]{animation-name:ff-record-stream-desktop}
 @keyframes ff-record-stream-desktop{to{transform:translateX(calc(-50% - (30 * var(--u))))}}
 .ff-fields{padding:calc(40 * var(--u)) 0 0;justify-content:center}
 .ff-fields .ff-container{display:flex;flex-direction:column;align-items:flex-start}
 .ff-fields .ff-heading{width:calc(562 * var(--u));height:calc(166 * var(--u));margin-bottom:calc(60 * var(--u))}
 .ff-fields-content{width:100%;height:calc(503.6 * var(--u));display:flex;flex-direction:column;gap:calc(20 * var(--u))}
 .ff-fields-grid{grid-template-columns:repeat(3,calc(450 * var(--u)));gap:calc(25 * var(--u));height:calc(250 * var(--u))}
 .ff-field{width:calc(450 * var(--u));height:calc(250 * var(--u));border:.3px solid #dedede}
 .ff-field-default{gap:calc(20 * var(--u))}
 .ff-field-default>span{padding:calc(10 * var(--u)) calc(15 * var(--u)) calc(7 * var(--u));font-size:calc(18 * var(--u));line-height:calc(21 * var(--u))}
 .ff-field-default p{display:none}
 .ff-field-hover{gap:calc(20 * var(--u));padding:calc(22 * var(--u)) calc(20 * var(--u))}
 .ff-field-hover h3{font-size:calc(30 * var(--u));letter-spacing:-.02em;text-align:center}
 .ff-field-hover .ff-pill{width:calc(164 * var(--u));height:calc(41 * var(--u));gap:calc(5 * var(--u));padding:calc(10 * var(--u)) calc(28 * var(--u))}
 .ff-urgent{height:calc(233.6 * var(--u));margin-top:0;padding:calc(40 * var(--u)) calc(55 * var(--u)) calc(40 * var(--u)) calc(25 * var(--u));align-items:flex-end;border:.3px solid #dedede}
 .ff-urgent>div{width:calc(518 * var(--u));height:calc(153 * var(--u));display:flex;flex-direction:column;align-items:flex-start;gap:calc(20 * var(--u))}
 .ff-urgent-label{height:calc(38 * var(--u));padding:calc(10 * var(--u)) calc(15 * var(--u)) calc(7 * var(--u));font-size:calc(18 * var(--u));line-height:calc(21 * var(--u))}
 .ff-main .ff-urgent h3{font-size:calc(38 * var(--u));line-height:1.4;margin:0;white-space:nowrap}
 .ff-urgent p{font-size:calc(16 * var(--u));line-height:1.4;white-space:nowrap}
 .ff-inline-contact{box-sizing:border-box;width:calc(355.11 * var(--u));height:calc(91.23 * var(--u));gap:calc(25 * var(--u));padding:calc(9.12281 * var(--u)) calc(20 * var(--u)) calc(9.12281 * var(--u)) calc(9.12281 * var(--u));background:rgba(255,255,255,.3);border:1px solid #dedede;border-radius:calc(20 * var(--u));-webkit-backdrop-filter:blur(calc(45.614 * var(--u)));backdrop-filter:blur(calc(45.614 * var(--u)));font-size:calc(23.7193 * var(--u));line-height:1.2}
 .ff-inline-contact img:not(.ff-arrow){width:calc(72.98 * var(--u));height:calc(72.98 * var(--u));flex:none}
 .ff-inline-contact .ff-arrow{width:calc(15 * var(--u));height:calc(8 * var(--u));margin-left:auto}
 .ff-field-note{height:calc(28 * var(--u));margin:calc(30 * var(--u)) 0 0!important;color:#dedede;font-size:calc(20 * var(--u));line-height:1.4;white-space:nowrap}
 .ff-field-note b{font-weight:600;color:#dedede}
 .ff-fields-more{width:calc(251 * var(--u));height:calc(43 * var(--u));margin-top:calc(30 * var(--u));padding:calc(10 * var(--u)) calc(28 * var(--u));gap:calc(25 * var(--u));font-size:calc(20 * var(--u));line-height:calc(23 * var(--u))}

 .ff-stories .ff-heading{height:calc(113 * var(--u));margin-bottom:calc(60 * var(--u))}
 .ff-story-grid{grid-template-columns:repeat(3,calc(451 * var(--u)));gap:calc(23.5 * var(--u));height:calc(540 * var(--u))}
 .ff-story{width:calc(451 * var(--u));height:calc(540 * var(--u));border:.3px solid #dedede}
 .ff-story-image{width:calc(451 * var(--u));height:calc(200 * var(--u))}
 .ff-story-body{width:100%;height:calc(340 * var(--u));padding:calc(30 * var(--u)) calc(30 * var(--u)) calc(25 * var(--u));gap:calc(25 * var(--u));justify-content:space-between}
 .ff-main .ff-story h3{width:calc(391 * var(--u));height:calc(126 * var(--u));min-height:calc(126 * var(--u))}
 .ff-story p{width:calc(391 * var(--u));min-height:calc(56 * var(--u))}
 .ff-story-chapter{top:calc(178 * var(--u));left:calc(30 * var(--u));height:calc(38 * var(--u));padding:0 calc(20 * var(--u));display:flex;align-items:center;gap:.25em;border-radius:calc(20 * var(--u)) calc(20 * var(--u)) 0 0;background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(calc(25 * var(--u)));backdrop-filter:blur(calc(25 * var(--u)));color:#a8723e;font-size:calc(18 * var(--u));line-height:calc(21 * var(--u));z-index:2}
 .ff-story-chapter span{font-weight:400}.ff-story-chapter b{font-weight:600}
 .ff-story .ff-pill{width:calc(223 * var(--u));height:calc(41 * var(--u));padding:calc(10 * var(--u)) calc(28 * var(--u));gap:calc(25 * var(--u));font-size:calc(18 * var(--u));line-height:calc(21 * var(--u))}
 .ff-story-note{width:calc(952 * var(--u));height:calc(22 * var(--u));margin:calc(30 * var(--u)) 0 0 auto!important;font-size:calc(16 * var(--u));line-height:1.4;white-space:nowrap}
}

@media(max-width:1024px){
 .ff-hero{height:100svh;min-height:0;max-height:none;background-size:cover}
 .ff-main .ff-arrow{width:17px;height:10px}.ff-main .ff-external{width:15px;height:15px}
 .ff-fields-content{display:flex;flex-direction:column;gap:20px}
 .ff-field-note{margin:25px 0!important}
 .ff-fields-more{margin-top:0}
 .ff-story-chapter{display:flex;gap:.25em}.ff-story-chapter b{font-weight:600}
}

/* Final card detailing and the civil-main-inspired opening sequence. */
.ff-lawyer{overflow:hidden;border:1px solid #dedede;border-radius:calc(15 * var(--u));background:#f7f7f7}
.ff-lawyer>img{object-fit:cover}
.ff-lawyer-career{display:flex;align-items:center;gap:calc(7 * var(--u));font-weight:500}
.ff-lawyer-career>img{width:calc(20 * var(--u));height:calc(20 * var(--u));object-fit:contain;flex:none}
.ff-main .ff-inline-contact{border:1px solid #dedede;transition:transform .4s cubic-bezier(.16,1,.3,1),background-color .3s ease,border-color .3s ease,box-shadow .3s ease}
.ff-main .ff-inline-contact:is(:hover,:focus-visible){transform:translateY(calc(-5 * var(--u)));background:rgba(233,127,29,.92);border-color:#e97f1d;box-shadow:0 calc(14 * var(--u)) calc(34 * var(--u)) rgba(0,0,0,.22)}
.ff-inline-contact img:not(.ff-arrow){transition:transform .4s cubic-bezier(.16,1,.3,1)}.ff-inline-contact:is(:hover,:focus-visible) img:not(.ff-arrow){transform:scale(1.06) rotate(-3deg)}
.ff-inline-contact .ff-arrow{transition:transform .3s ease}.ff-inline-contact:is(:hover,:focus-visible) .ff-arrow{transform:translateX(calc(5 * var(--u)))}
.ff-case{transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s ease}
.ff-case:hover,.ff-case:focus-visible{transform:translateY(calc(-81 * var(--u)));box-shadow:0 calc(18 * var(--u)) calc(42 * var(--u)) rgba(55,39,20,.16)}
.ff-case-copy>p{border-top:calc(.8 * var(--u)) dashed #9d9a94;padding-top:calc(16 * var(--u))}
.ff-case-lawyers{display:flex;align-items:center;min-width:0}
.ff-case-avatars{display:flex;align-items:center;flex:none}
.ff-case-avatars img{position:relative;width:calc(41.21 * var(--u));height:calc(41.21 * var(--u));border-radius:50%;border:calc(2 * var(--u)) solid #fff;object-fit:cover}
.ff-case-avatars img+img{margin-left:calc(-14 * var(--u))}
.ff-case-lawyers b{display:flex;align-items:center;gap:calc(8 * var(--u));margin-left:calc(10 * var(--u));font-weight:400;color:#9d9a94;white-space:nowrap}
.ff-case-lawyers b strong{color:#9d9a94;font-weight:500}.ff-case-lawyers b em{font-style:normal}.ff-case-lawyers b small{font-size:calc(13 * var(--u));font-weight:300}
.ff-review-normal{display:grid}.ff-review-copy{display:flex;flex-direction:column}.ff-review-copy h3{border:0;padding:0}.ff-review-divider{display:block;width:100%;height:0;flex:none;border-top:.7px dashed #9d9a94}.ff-review-copy p{padding-top:0;border:0}
.ff-review-hover{z-index:1;justify-content:flex-start;align-items:center;padding:calc(114.42 * var(--u)) calc(20 * var(--u)) calc(30 * var(--u));gap:0}
.ff-review-hover h3{width:100%;height:calc(68 * var(--u))!important;padding:0;border:0;display:flex!important;align-items:center;justify-content:center}
.ff-review-hover .ff-review-divider{margin-top:calc(15 * var(--u));border-color:rgba(255,255,255,.7)}
.ff-review-hover p{width:100%;height:calc(66 * var(--u));margin:calc(15 * var(--u)) 0 0;padding:0;border:0;font-size:calc(16 * var(--u));line-height:1.375;-webkit-line-clamp:3}
.ff-review-hover .ff-pill{width:calc(181 * var(--u));height:calc(41 * var(--u));margin-top:auto;padding:calc(10 * var(--u)) calc(28 * var(--u));gap:calc(25 * var(--u));border-color:#fff;color:#fff;font-size:calc(18 * var(--u));line-height:calc(21 * var(--u))}
.ff-hero{overflow:hidden;animation:ff-hero-scene-in 6.4s cubic-bezier(.25,.46,.45,.94) both,ff-hero-light-in 2.8s cubic-bezier(.16,1,.3,1) both}
.ff-hero-copy>*{opacity:1;transform:none;transition:none}
/* Leave room for the scene, then reveal context, setup, and emphasis in uneven beats. */
.ff-hero-copy .ff-hero-tag{animation:ff-hero-context-in 1.2s cubic-bezier(.22,1,.36,1) 1.1s both}
.ff-main .ff-hero h1{display:flex;flex-direction:column;align-items:center}
.ff-hero h1>span{animation:ff-hero-context-in 2.2s cubic-bezier(.25,.46,.45,.94) 1.95s both}
.ff-hero h1>strong{transform-origin:center bottom;animation:ff-hero-context-in 2.6s cubic-bezier(.22,1,.36,1) 3.8s both,ff-hero-focus-glow 6.2s ease-in-out 6.8s infinite}
.ff-scroll{opacity:1;transition:none;animation:ff-hero-scroll-in 1.1s ease 5.95s both}
@keyframes ff-hero-scene-in{from{background-size:108% auto}to{background-size:100% auto}}
@keyframes ff-hero-light-in{from{filter:brightness(.72)}to{filter:brightness(1)}}
@keyframes ff-hero-context-in{from{opacity:0;clip-path:inset(-60px 100% -60px 0);transform:translate3d(18px,0,0);filter:blur(4px)}to{opacity:1;clip-path:inset(-60px);transform:none;filter:blur(0)}}
@keyframes ff-hero-focus-in{0%{opacity:0;clip-path:inset(100% -60px -60px -60px);transform:translate3d(0,30px,0) scale(.94);filter:blur(11px) brightness(.76)}58%{opacity:1;clip-path:inset(-60px);transform:translate3d(0,2px,0) scale(1.012);filter:blur(0) brightness(1)}100%{opacity:1;clip-path:none;transform:none;filter:blur(0) brightness(1)}}
@keyframes ff-hero-focus-glow{0%,100%{text-shadow:0 3px 22px rgba(0,0,0,.68),0 0 24px rgba(255,255,255,.12)}50%{text-shadow:0 3px 24px rgba(0,0,0,.62),0 0 38px rgba(255,255,255,.42)}}
@keyframes ff-hero-scroll-in{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}

@media(min-width:1025px){
 .ff-lawyer{width:calc(450 * var(--u));height:calc(347 * var(--u))}
 .ff-review-hover{justify-content:center;padding:calc(55 * var(--u)) calc(20 * var(--u))}
 .ff-review-hover .ff-pill{position:absolute;bottom:calc(30 * var(--u));margin-top:0}
 .ff-lawyer .ff-pill{width:calc(181 * var(--u));height:calc(41 * var(--u));padding:calc(10 * var(--u)) calc(28 * var(--u));gap:calc(25 * var(--u))}
 .ff-case-copy>p{height:calc(69 * var(--u));-webkit-line-clamp:2}
 .ff-case-meta{margin-top:auto}
 .ff-review-normal{grid-template-rows:calc(215 * var(--u)) calc(164 * var(--u));gap:calc(25 * var(--u));margin-top:calc(25 * var(--u))}
 .ff-review-normal>img,.ff-review-placeholder{margin:0}
 .ff-review-copy{height:calc(164 * var(--u));gap:calc(15 * var(--u))}
 .ff-review-copy h3{height:calc(68 * var(--u));padding:0}
 .ff-review-copy p{height:calc(66 * var(--u));margin:0;line-height:1.375;-webkit-line-clamp:3}
}

@media(max-width:1024px){
 .ff-lawyer-career{gap:6px}.ff-lawyer-career>img{width:16px;height:16px}
 .ff-case:hover,.ff-case:focus-visible{transform:translateY(-22px)}
 .ff-case-copy>p{padding-top:12px}
 .ff-case-avatars img{width:32px;height:32px}.ff-case-lawyers b{margin-left:7px;font-size:11px}.ff-case-lawyers b small{font-size:10px}
 .ff-review-normal{grid-template-rows:180px auto;gap:15px;margin-top:15px}.ff-review-normal>img,.ff-review-placeholder{margin:0}.ff-review-copy{gap:10px}.ff-review-copy h3{height:auto;padding:0}.ff-review-copy p{height:58px;margin:0;line-height:1.38;-webkit-line-clamp:3}
 .ff-main .ff-inline-contact:is(:hover,:focus-visible){transform:translateY(-3px)}
 .ff-review-hover{padding:85px 16px 22px}.ff-review-hover h3{height:68px!important;padding:0}.ff-review-hover .ff-review-divider{margin-top:10px}.ff-review-hover p{height:58px;margin-top:10px;font-size:14px}.ff-review-hover .ff-pill{width:auto;height:auto;font-size:13px;padding:8px 18px;gap:18px}
 @keyframes ff-hero-scene-in{from{background-size:auto 108%}to{background-size:auto 100%}}
}

@media(prefers-reduced-motion:reduce){.ff-hero,.ff-hero-copy .ff-hero-tag,.ff-hero h1>span,.ff-hero h1>strong,.ff-scroll{animation:none!important;opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}}

/* Mobile assets are complete composites. Geometry follows the 390px reference. */
@font-face{font-family:'FF Mobile Jeju';src:url('fonts/jeju-myeongjo/JejuMyeongjoOTF.otf') format('opentype');font-weight:400;font-display:swap;unicode-range:U+002B-0039,U+AC00-D7A3}
.ff-main .ff-mobile-copy,.ff-main .ff-mobile-story-link,.ff-main .ff-case-line{display:none}
.ff-field>picture,.ff-field>picture img,.ff-lawyer>picture,.ff-lawyer>picture img{position:absolute;inset:0;width:100%;height:100%;display:block}
.ff-team-picture{display:block}.ff-lawyer>picture img{object-fit:cover}
@media(max-width:1024px){
 .ff-main{--m:calc(100vw / 390);font-size:calc(16 * var(--m))}
 .ff-main .ff-mobile-copy{display:inline}.ff-main .ff-pc-copy{display:none}
 .ff-main .ff-container{width:calc(350 * var(--m))}
 .ff-main .ff-heading{gap:calc(15 * var(--m));margin:0}
 .ff-main .ff-heading h2{font-size:calc(28 * var(--m));line-height:1.4;letter-spacing:0;font-weight:300}
 .ff-main .ff-heading h2 strong{font-weight:600}
 .ff-main .ff-heading>p{font-size:calc(16 * var(--m));line-height:1.6;font-weight:300}
 .ff-main .ff-pill{height:calc(36 * var(--m));padding:0 calc(28 * var(--m));gap:calc(25 * var(--m));font-size:calc(14 * var(--m));line-height:1;border-width:1px;flex:none}
 .ff-main .ff-arrow{width:calc(17 * var(--m));height:calc(10 * var(--m));flex:none}
 .ff-hero{height:100vh;height:100svh;min-height:0;max-height:none;animation:ff-mobile-hero-scene-in 5.65s cubic-bezier(.25,.46,.45,.94) both;filter:none;background-image:url('assets/family-main/mobile-hero.png');background-size:100% 100%;background-position:center}
 @keyframes ff-mobile-hero-scene-in{from{background-size:108% 108%}to{background-size:100% 100%}}
 .ff-hero-copy{top:calc(300 / 844 * 100%);left:0;width:100%}
 .ff-hero-tag{width:calc(144.9 * var(--m));height:calc(30.59 * var(--m));padding:calc(5.2966 * var(--m)) calc(16.9492 * var(--m));font-size:calc(14 * var(--m));border-width:.53px;justify-content:center;white-space:nowrap}
 .ff-main .ff-hero h1{margin-top:calc(21.19 * var(--m));font-size:calc(30 * var(--m));line-height:1.4;letter-spacing:.02em}
 .ff-hero h1>*{white-space:nowrap}.ff-hero h1>strong{animation:ff-hero-context-in 1.85s cubic-bezier(.22,1,.36,1) 3.8s both;text-shadow:none}
 @keyframes ff-mobile-copy-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
 .ff-scroll{display:none}
 .ff-fields{height:calc(844 * var(--m));padding:calc(60 * var(--m)) 0;display:block;background-image:url('assets/family-main/mobile-fields-bg.png');background-size:100% 100%;background-position:center}
 .ff-fields .ff-container{height:100%;display:flex;flex-direction:column;align-items:center;gap:0}
 .ff-fields .ff-heading{width:calc(350 * var(--m));height:calc(119 * var(--m));text-align:center;align-items:center;flex:none}
 .ff-fields .ff-heading .ff-kicker{display:none}
 .ff-fields .ff-heading h2{height:calc(78 * var(--m));white-space:nowrap;letter-spacing:.025em}
 .ff-fields-content{display:block;width:100%;height:calc(410 * var(--m));margin-top:calc(43 * var(--m));flex:none}
 .ff-fields-grid{display:flex;flex-direction:column;gap:calc(25 * var(--m))}
 .ff-main .ff-field{width:100%;height:calc(120 * var(--m));aspect-ratio:auto;border:0;border-radius:calc(15.56 * var(--m))}
 .ff-field>picture img{object-fit:fill}
 .ff-field-default{padding:calc(16 * var(--m)) calc(20 * var(--m)) 0;gap:calc(12 * var(--m));justify-content:flex-start}
 .ff-field-default>span{height:calc(23 * var(--m));border:.39px solid #e7c873;color:#e7c873;background:none;border-radius:999px;padding:calc(4 * var(--m)) calc(11.67 * var(--m));font-size:calc(12 * var(--m));line-height:calc(14 * var(--m));white-space:nowrap}
 .ff-main .ff-field h3{font-size:calc(18 * var(--m));line-height:1.4;font-weight:500;white-space:nowrap;letter-spacing:.04em}
 .ff-field-default p,.ff-field-hover,.ff-urgent{display:none}
 .ff-main .ff-field-note{margin:calc(25 * var(--m)) 0 0!important;width:100%;height:calc(50 * var(--m));font-size:calc(18 * var(--m));line-height:1.4;text-align:center;color:#dedede;flex:none}
 .ff-field-note b{font-weight:600}
 .ff-main .ff-fields-more{width:calc(205 * var(--m));margin-top:calc(41 * var(--m));color:#fff}
 .ff-stories{height:calc(844 * var(--m));padding:calc(60 * var(--m)) 0;display:block;background-image:none}
 .ff-stories .ff-container{height:100%;display:flex;flex-direction:column;align-items:center}
 .ff-stories .ff-heading{width:calc(300 * var(--m));height:calc(78 * var(--m));text-align:center;flex:none}
 .ff-stories .ff-heading h2 strong{display:block}.ff-stories .ff-kicker{display:none}
 .ff-story-grid{width:100%;display:flex;flex-direction:column;gap:calc(25 * var(--m));margin-top:calc(45 * var(--m))}
 .ff-story{width:100%;height:calc(166 * var(--m));min-height:0;border:0;border-radius:calc(15.56 * var(--m));background:#1c1309;color:#fff}
 .ff-story>picture,.ff-story>picture img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:fill}
 .ff-story-chapter{top:calc(25 * var(--m));left:50%;transform:translateX(-50%);height:calc(25 * var(--m));padding:calc(4 * var(--m)) calc(11.67 * var(--m));border:.39px solid #e7c873;border-radius:999px;background:none;color:#e7c873;font-size:calc(14 * var(--m));line-height:calc(16 * var(--m));white-space:nowrap;align-items:center}
 .ff-story-body{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;gap:0}
 .ff-main .ff-story h3{position:absolute;top:calc(60 * var(--m));left:0;width:100%;height:calc(56 * var(--m));min-height:0;font-family:'Roboto','Pretendard',sans-serif;font-size:calc(20 * var(--m));line-height:1.4;font-weight:500;letter-spacing:.02em;text-align:center;white-space:nowrap}
 .ff-story-body>p{display:none}
 .ff-main .ff-story .ff-pill{position:absolute;bottom:0;left:0;width:100%;height:calc(35 * var(--m));padding:0;margin:0;gap:calc(6 * var(--m));border:.3px solid #9d9a94;border-radius:0 0 calc(15.56 * var(--m)) calc(15.56 * var(--m));background:#1c1309;color:#fff;font-size:calc(14.53 * var(--m));font-weight:400}
 .ff-story .ff-pill .ff-arrow{display:none}.ff-main .ff-mobile-story-link{display:block;width:calc(11.67 * var(--m));height:calc(11.67 * var(--m));object-fit:contain}
 .ff-story-note{width:100%;height:calc(28 * var(--m));margin:calc(25 * var(--m)) 0 0!important;text-align:center;white-space:normal;font-size:calc(10 * var(--m));line-height:1.4;letter-spacing:0}
 .ff-team{height:calc(1075 * var(--m));padding:calc(25 * var(--m)) 0 calc(29 * var(--m));background:linear-gradient(to bottom,#fdfdfd 0,#fdfdfd calc(115 * var(--m)),#f7f7f7 calc(145 * var(--m)),#f7f7f7 100%)}
 .ff-team .ff-container{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;gap:0}
 .ff-team-picture{order:0;display:block;width:calc(225 * var(--m));height:calc(134 * var(--m));flex:none}
 .ff-team-image{width:100%;height:100%;object-fit:contain}
 .ff-team .ff-heading{order:1;flex:none;width:calc(225 * var(--m));height:calc(78 * var(--m));margin-top:calc(8 * var(--m));text-align:center}
 .ff-team .ff-heading>p{display:none}.ff-main .ff-team .ff-heading h2{font-size:calc(28 * var(--m));line-height:1.4;letter-spacing:0;color:#1a1a1a;white-space:nowrap}
 .ff-team .ff-heading b{font-weight:700}
 .ff-stats{order:2;flex:none;width:100%;height:calc(100 * var(--m));margin:calc(20 * var(--m)) 0 0;grid-template-columns:117fr 157fr 116fr;color:#1c1309;align-items:stretch}
 .ff-stats>img{display:none}.ff-stats>div{height:100%;gap:0;border-right:.3px solid #9d9a94;justify-content:flex-start;padding-top:calc(5 * var(--m));position:relative}
 .ff-stats>div:nth-of-type(3){display:none}.ff-stats>div:last-child{border:0}
 .ff-stats .ff-stat-icon{display:block;width:calc(29.19 * var(--m));height:calc(29.19 * var(--m));object-fit:contain;order:0;margin:0 auto calc(2.43 * var(--m))}
 .ff-stats>div>span{order:1;margin-top:calc(31.62 * var(--m));font-size:calc(10 * var(--m));line-height:1.35;color:#1c1309;font-weight:400}
 .ff-stats>div:has(.ff-stat-icon)>span{margin-top:0}
 .ff-stats strong{order:2;margin-top:calc(10 * var(--m));font-family:'FF AmeriGarmnd BT','Jeju Myeongjo',serif;font-size:calc(32 * var(--m));line-height:calc(33 * var(--m));color:#ab6309;font-weight:700}
 .ff-lawyer-grid{order:3;flex:none;width:calc(350 * var(--m));margin-top:calc(30 * var(--m));display:flex;flex-direction:column;gap:calc(15 * var(--m))}
 .ff-main .ff-lawyer{width:100%;height:calc(207 * var(--m));aspect-ratio:auto;border:0;border-radius:calc(15.56 * var(--m));background:none}
 .ff-lawyer>picture img{object-fit:fill}
 .ff-lawyer-copy{padding:calc(20 * var(--m))}
 .ff-main .ff-lawyer h3{font-size:calc(20 * var(--m));line-height:1.4;font-weight:500}
 .ff-lawyer small{font-size:calc(14 * var(--m));line-height:1.4;margin-left:calc(3.89 * var(--m))}
 .ff-lawyer p{margin-top:calc(15 * var(--m));gap:calc(7.78 * var(--m));font-size:calc(14 * var(--m));line-height:1.4;letter-spacing:-.05em}
 .ff-lawyer p b{font-size:calc(14 * var(--m));font-weight:600}.ff-lawyer-career{gap:calc(1.56 * var(--m));white-space:nowrap}
 .ff-lawyer-career>img{width:calc(20.22 * var(--m));height:calc(19.53 * var(--m))}
 .ff-lawyer-exam{font-weight:500}
 .ff-main .ff-lawyer .ff-pill{left:calc(20 * var(--m));bottom:calc(16 * var(--m));height:calc(31.56 * var(--m));width:calc(141.22 * var(--m));padding:0 calc(21.78 * var(--m));gap:calc(19.44 * var(--m));font-size:calc(14 * var(--m));border-width:.5px}
 .ff-lawyer .ff-pill .ff-arrow{width:calc(13.22 * var(--m));height:calc(7.78 * var(--m))}
 .ff-lawyer:not(:first-child) .ff-pill{bottom:calc(30 * var(--m))}
 .ff-records{height:calc(1408.4 * var(--m));padding:0 0 calc(50 * var(--m));background:#fff url('assets/family-main/mobile-records-bg.png') center/100% 100% no-repeat}
 .ff-cases{height:calc(740.37 * var(--m));padding:0;display:flex;flex-direction:column;align-items:center}
 .ff-cases>.ff-heading{width:100%;height:calc(247.88 * var(--m));padding:0;gap:calc(15 * var(--m));justify-content:flex-start;flex:none}
 .ff-cases .ff-kicker{display:none}
 .ff-main .ff-case-line,.ff-review-line{display:block;width:calc(13.88 * var(--m));height:calc(113.88 * var(--m));object-fit:fill;flex:none}
 .ff-cases .ff-heading h2{height:calc(78 * var(--m));text-align:center;white-space:nowrap}
 .ff-cases .ff-heading h2 strong{display:block}
 .ff-cases .ff-carousel{width:100%;height:calc(401.49 * var(--m));margin-top:calc(35 * var(--m));flex:none}
 .ff-main .ff-track[data-ff-stream-ready="true"]{width:100%;max-width:100%;animation:none!important;transform:none!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;will-change:auto}
 .ff-main .ff-track>[aria-hidden="true"]{display:none}
 .ff-cases .ff-track{height:100%;gap:calc(20 * var(--m));padding:0 calc(114 * var(--m));align-items:stretch}
 .ff-cases .ff-track[data-ff-stream-ready="true"]{scroll-snap-type:none;touch-action:auto}
 .ff-cases .ff-track>[aria-hidden="true"]{display:flex}
 .ff-main .ff-case{flex:0 0 calc(162 * var(--m));width:calc(162 * var(--m));height:calc(401.49 * var(--m));min-height:0;padding:calc(9.878 * var(--m));gap:calc(14.82 * var(--m));border:.49px solid #dedede;border-radius:calc(7.9 * var(--m));background:rgba(255,255,255,.85);transform:none;box-shadow:none}
 .ff-case-category{height:calc(27.12 * var(--m));padding:calc(3.56 * var(--m)) 0;font-size:calc(14 * var(--m));line-height:1.4;border-radius:calc(3.95 * var(--m));flex:none}
 .ff-case-judgment{height:calc(188.18 * var(--m));border-radius:calc(4.94 * var(--m))}
 .ff-case-judgment>strong{width:calc(117.7 * var(--m));min-height:calc(50 * var(--m));padding:0 calc(12.35 * var(--m));font-size:calc(18 * var(--m));border-width:0 calc(.988 * var(--m));line-height:1.4}
 .ff-case-copy{width:100%;height:calc(103.46 * var(--m));gap:calc(9.88 * var(--m));flex:none}
 .ff-main .ff-case h3{height:calc(60 * var(--m));font-size:calc(14 * var(--m));line-height:1.4;font-weight:600;-webkit-line-clamp:3;flex:none;text-align:center}
 .ff-case-copy>p{height:calc(33.59 * var(--m));padding-top:calc(9.88 * var(--m));font-size:calc(8 * var(--m));line-height:1.4;-webkit-line-clamp:2;border-width:.4px;text-align:center}
 .ff-case-meta{height:calc(18.52 * var(--m));min-height:calc(18.52 * var(--m));gap:calc(4.45 * var(--m));margin-top:auto}
 .ff-case-avatars img{width:calc(18.52 * var(--m));height:calc(18.52 * var(--m));border-width:1px}.ff-case-avatars img+img{margin-left:calc(-6 * var(--m))}
 .ff-case-lawyers b{margin-left:calc(4.45 * var(--m));font-size:calc(8 * var(--m));gap:0}
 .ff-case-lawyers b em{display:inline}.ff-case-lawyers b small{display:inline;margin-left:calc(2 * var(--m));font-size:calc(7 * var(--m))}.ff-case-meta time{font-size:calc(6 * var(--m))}
 .ff-main .ff-cases .ff-more{width:calc(231 * var(--m));margin-top:calc(20 * var(--m))}
 .ff-reviews{height:auto;padding:0;margin-top:calc(20 * var(--m));display:flex;flex-direction:column;align-items:center;gap:0}
 .ff-reviews>.ff-heading{width:100%;height:calc(240.88 * var(--m));margin:0;gap:calc(15 * var(--m));flex:none}
 .ff-reviews .ff-heading h2{height:calc(78 * var(--m));flex:none}
 .ff-reviews .ff-heading>p{width:calc(350 * var(--m));height:calc(19 * var(--m));font-size:calc(14 * var(--m));line-height:1.35;letter-spacing:-.045em;white-space:nowrap}
 .ff-reviews .ff-carousel{width:100%;height:calc(266.14 * var(--m));margin-top:calc(35 * var(--m));flex:none}
 .ff-reviews .ff-track{height:100%;gap:calc(16.94 * var(--m));padding:0 calc(98.19 * var(--m))}
 .ff-main .ff-review{flex:0 0 calc(193.62 * var(--m));width:calc(193.62 * var(--m));height:calc(266.14 * var(--m));padding:calc(9.681 * var(--m));border:.48px solid #9d9a94;border-radius:calc(7.74 * var(--m))}
 .ff-review-label{height:calc(36.98 * var(--m));padding:calc(3.49 * var(--m)) 0;font-size:calc(14 * var(--m));line-height:1.4;border-radius:calc(3.87 * var(--m))}
 .ff-review-label small{font-size:calc(7 * var(--m));line-height:1.4}
 .ff-review-normal{grid-template-rows:calc(104.07 * var(--m)) calc(81.52 * var(--m));gap:calc(12.1 * var(--m));margin-top:calc(12.1 * var(--m))}
 .ff-review-normal>img,.ff-review-placeholder{height:calc(104.07 * var(--m));margin:0}
 .ff-review-copy{height:calc(81.52 * var(--m));gap:calc(7.26 * var(--m))}
 .ff-main .ff-review-copy h3{height:calc(34 * var(--m));flex:none;font-size:calc(12 * var(--m));line-height:1.4;text-align:center;-webkit-line-clamp:2}
 .ff-review-copy p{height:calc(33 * var(--m));flex:none;font-size:calc(8 * var(--m));line-height:1.4;text-align:center;margin:0}
 .ff-review-divider{border-width:.34px}.ff-review-hover{display:none}
 .ff-main .ff-reviews .ff-more{margin-top:calc(20 * var(--m));width:calc(221 * var(--m))}
 .ff-main :is(.ff-prev,.ff-next){display:block;width:calc(33.88 * var(--m));height:calc(22.27 * var(--m));top:50%}
 .ff-prev{left:calc(10 * var(--m))}.ff-next{right:calc(10 * var(--m))}
 .ff-guide{height:calc(660.19 * var(--m));padding:0 0 calc(50 * var(--m))}
 .ff-guide-banner{width:100%;height:calc(418.6 * var(--m));min-height:0;position:relative;padding:calc(50 * var(--m)) 0;gap:0;background:url('assets/family-main/mobile-guide.png') center/100% 100% no-repeat;border:0}
 .ff-guide .ff-kicker{font-size:calc(14 * var(--m));height:calc(20 * var(--m));line-height:1.4;flex:none}
 .ff-main .ff-guide h2{width:calc(241 * var(--m));height:calc(78 * var(--m));margin-top:calc(40 * var(--m));font-size:calc(28 * var(--m));line-height:1.4;letter-spacing:-.02em;flex:none}
 .ff-guide-banner>p:not(.ff-kicker){height:calc(44 * var(--m));margin-top:calc(40 * var(--m));font-size:calc(16 * var(--m));line-height:1.4;font-weight:300;flex:none}
 .ff-guide-banner>p:not(.ff-kicker) b{font-weight:400}
 .ff-main .ff-guide-banner>.ff-pill{width:calc(166 * var(--m));height:calc(36 * var(--m));margin-top:calc(60 * var(--m));padding:0 calc(28 * var(--m));font-size:calc(14 * var(--m))}
 .ff-guide-actions{width:calc(250.26 * var(--m));height:calc(156.59 * var(--m));margin:calc(35 * var(--m)) auto 0;padding:0;flex-direction:column;gap:calc(25 * var(--m));align-items:center}
 .ff-main .ff-guide-actions a{width:calc(250.26 * var(--m));height:calc(64.33 * var(--m));flex:none;padding:calc(6.433 * var(--m)) calc(14.1 * var(--m)) calc(6.433 * var(--m)) calc(6.433 * var(--m));gap:calc(7.05 * var(--m));font-size:calc(16.73 * var(--m));font-weight:400;line-height:1.2;border-width:.705px;white-space:nowrap}
 .ff-guide-actions img:not(.ff-arrow){width:calc(51.47 * var(--m));height:calc(51.47 * var(--m));flex:none}
.ff-guide-actions .ff-arrow{margin-left:auto;width:calc(10.58 * var(--m));height:calc(5.64 * var(--m))}
 .ff-main .ff-pill{font-weight:400}
.ff-main .ff-guide h2 .ff-mobile-copy b{font-weight:600}
}

/* Keep the desktop case and review cards proportional while preserving track gaps. */
@media(min-width:1025px){
 .ff-cases .ff-case,.ff-reviews .ff-review{zoom:.7}
 .ff-records{height:calc((2516 - 826.39 * .3 - 538.42 * .3) * var(--u))}
 .ff-cases{height:calc((1416.39 - 826.39 * .3) * var(--u))}
 .ff-cases .ff-carousel{height:calc((907.39 - 826.39 * .3) * var(--u))}
 .ff-reviews{height:calc((1083.42 - 538.42 * .3) * var(--u))}
 .ff-reviews .ff-carousel{height:calc(538.42 * .7 * var(--u))}
 .ff-main .ff-guide-actions a{gap:calc(12.5 * var(--u))}
}

/* Keep the desktop opening readable as soon as the popup is dismissed. */
@media(min-width:1025px){
 .ff-hero{animation:ff-hero-scene-in 4.5s cubic-bezier(.25,.46,.45,.94) both,ff-hero-light-in 3s cubic-bezier(.25,.46,.45,.94) both}
 .ff-main .ff-hero h1{font-family:'Bookk Myungjo',serif;letter-spacing:-.04em}
 .ff-main .ff-hero h1>span{font-weight:300;animation:ff-hero-context-in 1.6s cubic-bezier(.45,0,.25,1) .85s both}
 .ff-main .ff-hero h1>strong{font-weight:700;animation:ff-hero-context-in 2.1s cubic-bezier(.45,0,.25,1) 1.95s both,ff-hero-focus-glow 6.2s ease-in-out 4.5s infinite}
 .ff-hero-copy .ff-hero-tag{animation:ff-hero-context-in 1.1s cubic-bezier(.45,0,.25,1) .25s both}
 .ff-scroll{animation:ff-hero-scroll-in .9s ease 4s both}
}

/* Let both mobile strips move again as soon as the finger is lifted. */
@media(max-width:1024px){
 .ff-reviews .ff-track>[aria-hidden="true"]{display:flex}
 .ff-reviews .ff-track[data-ff-stream-ready="true"]{scroll-snap-type:none;touch-action:auto}
 .ff-case-lawyers{flex:1 1 auto;min-width:0;overflow:hidden}
 .ff-case-lawyers b{min-width:0;max-width:100%;overflow:hidden}
 .ff-case-lawyers b span{min-width:0;overflow:hidden;text-overflow:ellipsis}
 .ff-case-meta time{flex:none;white-space:nowrap}
 .ff-review-label{display:flex;align-items:center;justify-content:center}
}
@media(min-width:1025px){.ff-review-label{display:flex;align-items:center;justify-content:center}}

/* Desktop team film, with the supplied amber overlay. */
.ff-team-video{display:none}
@media(min-width:1025px){
 .ff-team .ff-team-picture{display:none}
 .ff-team-video{display:block;position:relative;width:100%;height:calc(600 * var(--u));border-radius:20px;overflow:hidden}
 .ff-team-video .ff-team-image{display:block;width:100%;height:100%;object-fit:cover}
 .ff-team-video::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(171,99,9,0) 47.33%,rgba(171,99,9,.63) 100%)}
}

/* Hold the first scene at its initial frame until its own font faces settle.
   The head sets this gate only when JavaScript and the Font Loading API are available. */
.ff-hero-font-gate .ff-main:not(.is-ff-ready) .ff-hero-tag,
.ff-hero-font-gate .ff-main:not(.is-ff-ready) #ff-main-title>span,
.ff-hero-font-gate .ff-main:not(.is-ff-ready) #ff-main-title>strong,
.ff-hero-font-gate .ff-main:not(.is-ff-ready) .ff-scroll{animation-play-state:paused!important}
.ff-hero-font-gate .ff-main:not(.is-ff-ready) .ff-hero-copy,
.ff-hero-font-gate .ff-main:not(.is-ff-ready) .ff-scroll{visibility:hidden}

/* Start the backdrop immediately; ready text follows without the old idle gaps. */
.ff-main .ff-hero-tag{font-family:'FF Hero Roboto','FF Hero Pretendard','Roboto','Pretendard',sans-serif;animation-delay:0s}
.ff-main #ff-main-title>span{animation-delay:.12s}
.ff-main #ff-main-title>strong{animation-delay:.55s,3.1s}
.ff-main .ff-scroll{animation-delay:1.4s}
@media(max-width:1024px){
 .ff-main #ff-main-title{font-family:'FF Hero Roboto','FF Hero Pretendard','Roboto','Pretendard',sans-serif}
 .ff-main #ff-main-title>strong{animation-delay:.55s}
}

/* Mobile copy arrives in a calm sequence after its small fonts are ready. */
@keyframes ff-mobile-hero-copy-in{
 from{opacity:0;transform:translate3d(0,4px,0);filter:none;clip-path:inset(-60px)}
 to{opacity:1;transform:none;filter:none;clip-path:inset(-60px)}
}
@media(max-width:1024px) and (prefers-reduced-motion:no-preference){
 .ff-main .ff-hero-tag{animation:ff-mobile-hero-copy-in 1.25s cubic-bezier(.4,0,.2,1) .1s both}
 .ff-main #ff-main-title>span{animation:ff-mobile-hero-copy-in 1.9s cubic-bezier(.4,0,.2,1) .65s both}
 .ff-main #ff-main-title>strong{animation:ff-mobile-hero-copy-in 2.3s cubic-bezier(.4,0,.2,1) 2.15s both}
 .ff-main .ff-scroll{animation:ff-hero-scroll-in 1.1s ease 3.9s both}
}
