:root{--r91-paper:#f4f0e7;--r91-surface:#fbf9f4;--r91-ink:#1f211e;--r91-muted:#656760;--r91-line:#cbc6ba;--r91-pine:#184c43;--r91-pine-dark:#103932;--r91-celadon:#dbe8dd;--r91-rust:#b44e36;--r91-gold:#c9a860}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.r91-home{margin:0;background:var(--r91-paper);color:var(--r91-ink);font-family:"Pretendard Variable","Pretendard","Noto Sans KR","Malgun Gothic",sans-serif;overflow-x:hidden}
.r91-home main{display:block}
.r91-wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}
.r91-eyebrow,.r91-section-head>p{margin:0 0 22px;color:var(--r91-rust);font-size:.73rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.r91-hero{padding:clamp(68px,10vw,132px) 0 clamp(76px,10vw,126px);border-bottom:1px solid var(--r91-line);background:linear-gradient(125deg,rgba(255,255,255,.38),transparent 56%)}
.r91-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.68fr);gap:clamp(52px,8vw,118px);align-items:center}
.r91-hero-copy h1{max-width:760px;margin:0;font-family:"KoPub Batang","Noto Serif KR","Batang",serif;font-size:clamp(3.15rem,6vw,6.55rem);font-weight:500;line-height:1.07;letter-spacing:-.07em;word-break:keep-all}
.r91-hero-copy h1 em{color:var(--r91-pine);font-style:normal;white-space:nowrap}
.r91-lead{max-width:630px;margin:32px 0 0;color:#4e514b;font-size:clamp(1rem,1.3vw,1.16rem);line-height:1.9;word-break:keep-all}
.r91-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:34px}
.r91-button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:0 22px;border:1px solid var(--r91-ink);color:var(--r91-ink);text-decoration:none;font-size:.9rem;font-weight:800;transition:transform .18s ease,background .18s ease,color .18s ease}
.r91-button:hover{transform:translateY(-2px)}
.r91-button.primary{border-color:var(--r91-pine);background:var(--r91-pine);color:#fff}
.r91-button.text{border-color:transparent;padding-inline:10px}.r91-button.text span{margin-left:12px}
.r91-proof{display:flex;flex-wrap:wrap;gap:10px 22px;margin:27px 0 0;padding:0;color:#73756e;font-size:.76rem;list-style:none}
.r91-proof li{position:relative;padding-left:13px}.r91-proof li:before{position:absolute;left:0;top:.58em;width:4px;height:4px;border-radius:50%;background:var(--r91-rust);content:""}
.r91-question-map{border-top:2px solid var(--r91-ink);border-bottom:1px solid var(--r91-line);background:rgba(251,249,244,.72)}
.r91-map-head{display:flex;justify-content:space-between;gap:24px;padding:26px 6px 30px;border-bottom:1px solid var(--r91-line)}
.r91-map-head span{color:var(--r91-rust);font-size:.64rem;font-weight:850;letter-spacing:.14em}.r91-map-head strong{font-family:"KoPub Batang","Noto Serif KR","Batang",serif;font-size:1.55rem;font-weight:500;line-height:1.3;text-align:right}
.r91-question-map nav a{display:grid;grid-template-columns:1fr auto;gap:20px;padding:20px 6px;border-bottom:1px solid var(--r91-line);color:var(--r91-ink);text-decoration:none}.r91-question-map nav a span{font-size:.88rem}.r91-question-map nav a b{font-size:.78rem}.r91-question-map nav a:hover{padding-inline:12px;background:#fff}
.r91-question-map>p{margin:0;padding:22px 6px;color:#777970;font-size:.72rem;line-height:1.65}
.r91-services{padding:clamp(84px,10vw,132px) 0;background:var(--r91-surface)}
.r91-section-head{display:grid;grid-template-columns:.5fr 1.5fr .8fr;gap:34px;align-items:end;margin-bottom:50px}.r91-section-head>p{align-self:start}.r91-section-head h2{margin:0;font-family:"KoPub Batang","Noto Serif KR","Batang",serif;font-size:clamp(2.6rem,4.7vw,5rem);font-weight:500;line-height:1.12;letter-spacing:-.06em}.r91-section-head>span{color:var(--r91-muted);font-size:.9rem;line-height:1.75;word-break:keep-all}
.r91-service-groups{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--r91-ink);border-left:1px solid var(--r91-line)}
.r91-service-groups>article{display:grid;grid-template-rows:auto 1fr;min-height:470px;border-right:1px solid var(--r91-line);border-bottom:1px solid var(--r91-line);background:#fff}.r91-service-groups>article.featured{background:var(--r91-celadon)}
.r91-service-groups header{padding:30px}.r91-service-groups small{color:var(--r91-rust);font-size:.65rem;font-weight:850;letter-spacing:.13em}.r91-service-groups h3{margin:38px 0 10px;font-family:"KoPub Batang","Noto Serif KR","Batang",serif;font-size:2.35rem;font-weight:500;letter-spacing:-.05em}.r91-service-groups header p{margin:0;color:var(--r91-muted);font-size:.82rem;line-height:1.65}
.r91-service-groups nav{align-self:end}.r91-service-groups nav a{display:flex;justify-content:space-between;gap:14px;padding:21px 30px;border-top:1px solid var(--r91-line);color:var(--r91-ink);text-decoration:none}.r91-service-groups nav a b{font-size:.93rem}.r91-service-groups nav a span{color:var(--r91-muted);font-size:.7rem;text-align:right}.r91-service-groups nav a:hover{background:var(--r91-ink);color:#fff}.r91-service-groups nav a:hover span{color:#ddd}
.r91-signature{padding:clamp(86px,10vw,140px) 0;background:var(--r91-pine);color:#fff}.r91-signature-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(380px,1.08fr);gap:clamp(54px,7vw,96px);align-items:center}.r91-signature-copy h2{margin:0;font-family:"KoPub Batang","Noto Serif KR","Batang",serif;font-size:clamp(2.7rem,4.7vw,5rem);font-weight:500;line-height:1.12;letter-spacing:-.065em}.r91-signature-copy h2 em{color:#e8c87e;font-style:normal}.r91-signature-copy>p:not(.r91-eyebrow){max-width:620px;margin:28px 0 0;color:#d5e0dc;line-height:1.85}.r91-signature-copy .r91-eyebrow{color:#e8c87e}
.r91-signature dl{margin:38px 0 0;border-top:1px solid rgba(255,255,255,.35)}.r91-signature dl div{display:grid;grid-template-columns:80px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.22)}.r91-signature dt{color:#bfcfc9;font-size:.76rem}.r91-signature dd{margin:0;font-size:.84rem;font-weight:750}.r91-button.light{border-color:#fff;background:#fff;color:var(--r91-pine)}.r91-button.dark-text{border-color:rgba(255,255,255,.5);color:#fff}
.r91-flow-card{padding:18px;border:1px solid rgba(255,255,255,.34);background:#f3eee3;box-shadow:24px 24px 0 rgba(7,31,27,.25)}.r91-flow-card img{display:block;width:100%;height:auto}
.r91-standards{padding:clamp(84px,10vw,132px) 0;background:var(--r91-paper)}.r91-section-head.compact{grid-template-columns:.5fr 1.8fr;margin-bottom:46px}.r91-standards ol{margin:0;padding:0;border-top:2px solid var(--r91-ink);list-style:none}.r91-standards li{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--r91-line)}.r91-standards li>span{color:var(--r91-rust);font-size:.7rem;font-weight:850}.r91-standards li strong{font-family:"KoPub Batang","Noto Serif KR","Batang",serif;font-size:1.45rem;font-weight:600}.r91-standards li p{margin:8px 0 0;color:var(--r91-muted);font-size:.88rem;line-height:1.7}.r91-standard-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.r91-standard-links a{padding:11px 15px;border:1px solid var(--r91-line);color:var(--r91-ink);text-decoration:none;font-size:.76rem;font-weight:750;background:rgba(255,255,255,.4)}
.r91-close{padding:clamp(76px,9vw,120px) 0;border-top:1px solid var(--r91-line);background:var(--r91-surface);text-align:center}.r91-close p{margin:0;color:var(--r91-rust);font-size:.76rem;font-weight:800}.r91-close h2{margin:20px 0 0;font-family:"KoPub Batang","Noto Serif KR","Batang",serif;font-size:clamp(2.8rem,5.2vw,5.4rem);font-weight:500;letter-spacing:-.065em}.r91-close .r91-actions{justify-content:center}
.r91-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.r91-reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.r91-wrap{width:min(100% - 36px,720px)}.r91-hero{padding-top:72px}.r91-hero-grid,.r91-signature-grid{grid-template-columns:1fr}.r91-question-map{max-width:620px}.r91-section-head,.r91-section-head.compact{grid-template-columns:1fr;gap:12px}.r91-section-head>p{margin-bottom:8px}.r91-service-groups{grid-template-columns:1fr}.r91-service-groups>article{min-height:0}.r91-service-groups header{min-height:220px}.r91-flow-card{box-shadow:12px 12px 0 rgba(7,31,27,.25)}}
@media(max-width:560px){.r91-wrap{width:calc(100% - 32px)}.r91-hero{padding:58px 0 74px}.r91-hero-copy h1{font-size:clamp(3rem,14.5vw,4.5rem)}.r91-lead{font-size:.98rem;line-height:1.78}.r91-button{width:100%}.r91-button.text{justify-content:flex-start}.r91-proof{display:grid;gap:8px}.r91-map-head{padding-inline:0}.r91-question-map nav a{grid-template-columns:1fr;gap:6px}.r91-question-map nav a b{color:var(--r91-pine)}.r91-services,.r91-signature,.r91-standards{padding:76px 0}.r91-section-head h2,.r91-signature-copy h2{font-size:clamp(2.65rem,13vw,4rem)}.r91-service-groups header{min-height:200px;padding:24px}.r91-service-groups nav a{padding:18px 24px}.r91-signature dl div{grid-template-columns:62px 1fr}.r91-flow-card{padding:9px}.r91-standards li{grid-template-columns:42px 1fr;gap:12px}.r91-close h2{font-size:clamp(2.7rem,13vw,4rem)}.r91-close .r91-actions{display:grid}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.r91-reveal{opacity:1;transform:none;transition:none}}
