@charset "UTF-8";
/*
  OnGyeol Rhymix document pages
  Consolidated from 9 HTML files on 2026-06-16.
  Required external assets: Pretendard Variable, Font Awesome 6 Free.
*/

@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css");

:root{
  --max:1480px;
  --bg:#F5F8FA;
  --bg-sub:#E9EFF3;
  --card:#FFFFFF;
  --ink:#26323A;
  --ink-soft:#52616B;
  --ink-faint:#8FA4B0;
  --line:#DCE5EB;
  --gold:#C7916B;
  --gold-deep:#A87A4F;
  --gold-soft:rgba(199,145,107,.13);
  --dark:#222C33;
  --dark-2:#2E3A42;
  --dark-3:#3E4E58;
  --success:#1FA356;
  --secY:clamp(64px,7vw,104px);
  --shadow-sm:0 10px 30px -20px rgba(34,44,51,.4);
  --shadow:0 30px 70px -40px rgba(34,44,51,.5);
  --green:var(--gold);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
#page{font-size:16px;background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;letter-spacing:-.01em;word-break: keep-all;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px;}
.eyebrow{display:inline-flex;align-items:center;font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--gold);text-transform:uppercase}
h1,h2,h3{letter-spacing:-.025em;line-height:1.2;font-weight:700}
section{position:relative}
.hero{position:relative;overflow:hidden;background:radial-gradient(125% 130% at 78% 8%,var(--dark-3) 0%,var(--dark-2) 48%,var(--dark) 100%);color:#fff;height: 570px;display: flex; align-items: center;}
.hero::before{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.hero .wrap{position:relative; z-index: 4;width: 100%;}
.hero .eyebrow{color:var(--gold);margin-bottom:22px}
.hero h1{font-size:clamp(26px,4vw,64px);font-weight:800;letter-spacing:-.03em;line-height:1.14;max-width:900px}
.hero h1 b{color:var(--gold)}
.hero p{margin-top:22px;max-width:640px;color:rgba(255,255,255,.74);font-size:clamp(13px,1.8vw,19px);line-height:1.8}
.hero .crumb{margin-top:30px;display:flex;gap:10px;align-items:center;font-size:13px;color:rgba(255,255,255,.5);font-weight:600}
.hero .crumb i{font-size:9px}
.hero .crumb b{color:var(--gold);font-weight:700}
.page-bg{
  width: 110%;
  height: 110%;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  background-color: #333;
  position: absolute;
  bottom: 0;
  left: 0;
  will-change: transform;
  z-index: 1;
  animation: atani 20s linear infinite alternate;
}
.sec{padding:var(--secY) 0 0}
.sec:has(+ .linked),.sec:has(+ .consult){padding-bottom:var(--secY)}
.sec-head{margin-bottom:clamp(30px,4vw,52px);max-width:100%}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head .eyebrow{margin-bottom:14px}
.sec-head h2{font-size:clamp(26px,3.6vw,40px);font-weight:800}
.sec-head p{margin-top:14px;color:var(--ink-soft);font-size:15px;line-height:1.75;}
.steps{display:grid;gap:18px}
.steps.cols-3{grid-template-columns:repeat(3,1fr)}
.steps.cols-4{grid-template-columns:repeat(4,1fr)}
.scard{position:relative;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px 28px;transition:.28s;overflow:hidden}
.scard:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--gold)}
.scard .s-no{font-size:13px;font-weight:800;letter-spacing:.14em;color:var(--gold);text-transform:uppercase}
.scard .s-ic{width:54px;height:54px;border-radius:14px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;font-size:22px;margin:16px 0 18px}
.scard h3{font-size:18px;font-weight:800;line-height:1.4}
.scard p{margin-top:9px;font-size:14px;color:var(--ink-soft);line-height:1.7}
.scard .s-big{position:absolute;top:10px;right:22px;font-size:58px;font-weight:800;color:var(--bg-sub);letter-spacing:-.04em;z-index:0}
.scard>*{position:relative}
.flist{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fitem{display:flex;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px 26px;transition:.25s}
.fitem:hover{box-shadow:var(--shadow-sm);border-color:var(--gold)}
.fitem .fi-ic{width:46px;height:46px;flex-shrink:0;border-radius:12px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;font-size:19px}
.fitem h3{font-size:16.5px;font-weight:800}
.fitem p{margin-top:6px;font-size:13.5px;color:var(--ink-soft);line-height:1.65}
.linked{
  color:#fff;
  padding:var(--secY) 0;
  width: 100%;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
}
.linked::after{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.linked .sec-head{margin-left:auto;margin-right:auto;text-align:center;display:flex;flex-direction:column;align-items:center; position: relative; z-index: 4;}
.linked .sec-head .eyebrow{color:var(--gold)}
.linked .sec-head h2{color:#fff}
.linked-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px; position: relative; z-index: 4;}
.lcard{position:relative;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:30px 28px;overflow:hidden;transition:.28s}
.lcard:hover{background:rgba(255,255,255,.08);border-color:rgba(199,145,107,.6);transform:translateY(-4px)}
.lcard .lc-ic{width:44px;height:44px;border-radius:11px;background:var(--gold-soft);color:var(--gold);display:grid;place-items:center;font-size:18px;margin-bottom:16px}
.lcard h3{font-size:18px;font-weight:800;color:#fff;line-height:1.4;position:relative}
.lcard p{margin-top:10px;font-size:14px;color:rgba(255,255,255,.62);line-height:1.65;position:relative}
.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-sm)}
.panel .p-head{display:flex;align-items:center;gap:13px;padding:20px 28px;background:linear-gradient(90deg,var(--gold-soft),rgba(199,145,107,0));border-bottom:1px solid var(--line)}
.panel .p-head .ph-ic{width:42px;height:42px;border-radius:11px;background:#fff;border:1px solid var(--line);color:var(--gold-deep);display:grid;place-items:center;font-size:18px}
.panel .p-head h3{font-size:18px;font-weight:800}
.panel .p-body{padding:26px 28px}
.panel .p-body p{color:var(--ink-soft);font-size:14.5px;line-height:1.85}
.panel ul.checks{list-style:none;display:grid;gap:13px}
.panel ul.checks li{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;color:var(--ink-soft);font-weight:600;line-height:1.55}
.panel ul.checks li i{width:22px;height:22px;border-radius:7px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;font-size:11px;flex-shrink:0;margin-top:1px}
.faq{display:flex;flex-direction:column;gap:12px;max-width:880px;margin:0 auto}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.2s}
.faq details[open]{border-color:var(--gold);box-shadow:var(--shadow-sm)}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:22px 26px;font-size:16px;font-weight:700;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .q{width:28px;height:28px;flex-shrink:0;border-radius:8px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;font-size:13px;font-weight:800}
.faq summary .chev{margin-left:auto;color:var(--ink-faint);transition:.25s}
.faq details[open] summary .chev{transform:rotate(180deg);color:var(--gold)}
.faq .a{padding:0 26px 24px 68px;color:var(--ink-soft);font-size:14.5px;line-height:1.85}
.cardlist{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cardlist.col4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.clcard{display:flex;align-items:center;gap:15px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px 24px;transition:.25s}
.clcard:hover{box-shadow:var(--shadow-sm);border-color:var(--gold);transform:translateY(-3px)}
.clcard .cl-ic{width:46px;height:46px;flex-shrink:0;border-radius:12px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;font-size:18px}
.clcard span{font-size:15px;font-weight:700;color:var(--ink);line-height:1.45}
.consult{padding:var(--secY) 0 clamp(72px,8vw,110px);text-align:center;background:var(--bg-sub);border-top:1px solid var(--line)}
.badge{display:inline-flex;align-items:center;gap:9px;background:rgba(31,163,86,.12);color:var(--success);font-size:13px;font-weight:700;padding:9px 18px;border-radius:999px;margin-bottom:22px;border:1px solid rgba(31,163,86,.3)}
.badge .dot{width:7px;height:7px;border-radius:50%;background:var(--success);display:inline-block;box-shadow:0 0 0 0 rgba(31,163,86,.5);animation:bpulse 2s infinite}
.consult .c-lead{font-size:clamp(16px,2vw,20px);color:var(--ink-soft);font-weight:600}
.consult .c-tel{font-size:clamp(46px,8vw,84px);font-weight:800;letter-spacing:-.04em;color:var(--ink);margin:24px 0 2px;display:inline-flex;align-items:center;gap:18px; line-height: 1.1;}
.consult .c-tel i{font-size:.6em;color:var(--gold)}
.consult .c-tel a{color:inherit;text-decoration:none}
.consult .c-cap{font-size:14px;color:var(--ink-faint);font-weight:600; display: none;}
.consult .c-note{max-width:100%;margin:24px auto 0;color:var(--ink-faint);font-size:14px;line-height:1.8}
.consult .c-btn{margin-top:30px;display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:#fff;font-size:16px;font-weight:700;padding:16px 34px;border-radius:14px;text-decoration:none;transition:.25s}
.consult .c-btn:hover{transform:translateY(-3px);box-shadow:0 20px 40px -18px rgba(199,145,107,.7)}
.gtable{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.gtable th,.gtable td{padding:16px 22px;text-align:left;font-size:14.5px;border-bottom:1px solid var(--line)}
.gtable th{background:var(--bg-sub);color:var(--ink);font-weight:800;width:34%}
.gtable td{color:var(--ink-soft)}
.gtable tr:last-child th,.gtable tr:last-child td{border-bottom:none}
.topintro{position:relative;overflow:hidden;background:radial-gradient(125% 130% at 78% 8%,var(--dark-3) 0%,var(--dark-2) 48%,var(--dark) 100%);color:#fff;height: 570px;display: flex;align-items: center;}
.topintro::before{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.topintro .wrap{position:relative; z-index: 4;width: 100%;}
.topintro .eyebrow{margin-bottom:22px;color:var(--gold)}
.topintro h2{font-size:clamp(34px,6vw,68px);font-weight:800;letter-spacing:-.03em;line-height:1.12}
.topintro p{margin:20px 0 0;max-width:620px;color:rgba(255,255,255,.74);font-size:clamp(15px,1.8vw,19px);line-height:1.75}
.masthead{padding:var(--secY) 0 0}
.mh-left .eyebrow{margin-bottom:20px}
.mh-left h1{font-size:clamp(34px,5.4vw,62px);font-weight:800}
.mh-left h1 b{color:var(--gold)}
.mh-left p{margin-top:22px;color:var(--ink-soft);font-size:clamp(15px,1.5vw,17px);}
.spec{padding:var(--secY) 0 0}
.spec-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(28px,4vw,64px);align-items:start}
.spec-aside{position:sticky;top:130px; background-repeat: no-repeat; background-position: center; background-size: cover; border-radius:24px;padding:40px 34px;color:#fff;overflow:hidden}
.spec-aside::before{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.spec-aside::after{content:"\f0b1";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;right:-18px;bottom:-26px;font-size:150px;color:rgba(255,255,255,.05)}
.spec-aside .sa-eye{font-size:12px;letter-spacing:.18em;color:var(--gold);font-weight:700; position: relative; z-index: 4;}
.spec-aside h2{font-size:clamp(32px,4.4vw,42px);font-weight:800;margin:10px 0 6px;letter-spacing:-.03em; position: relative; z-index: 4;}
.spec-aside .sa-sub{color:rgba(255,255,255,.7);font-size:14px; position: relative; z-index: 4;}
.spec-aside .sa-price{margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16); position: relative; z-index: 4;}
.spec-aside .sa-price small{font-size:13px;color:rgba(255,255,255,.6);font-weight:600;display:block;margin-bottom:2px}
.spec-aside .sa-price b{font-size:34px;font-weight:800}
.spec-aside .sa-price em{font-style:normal;font-size:15px;color:rgba(255,255,255,.6);margin-left:3px}
.spec-aside .sa-btn{margin-top:24px;display:inline-flex;align-items:center;gap:9px;background:var(--gold);color:#fff;font-size:15px;font-weight:700;padding:14px 24px;border-radius:12px;text-decoration:none;transition:.25s; position: relative; z-index: 4;}
.spec-aside .sa-btn:hover{background:#fff;color:var(--dark)}
.spec-aside .sa-help{margin-top:12px;font-size:12.5px;color:rgba(255,255,255,.55); position: relative; z-index: 4;}
.spec-list{display:flex;flex-direction:column;gap:18px}
.spec-block{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:0;overflow:hidden;box-shadow:var(--shadow-sm);transition:.25s}
.spec-block:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.spec-block .sb-head{display:flex;align-items:center;gap:14px;padding:18px 26px;background:linear-gradient(90deg,var(--gold-soft),rgba(199,145,107,0));border-bottom:1px solid var(--line)}
.spec-block .sb-ic{width:42px;height:42px;border-radius:11px;background:#fff;border:1px solid var(--line);color:var(--gold-deep);display:grid;place-items:center;font-size:18px;flex-shrink:0}
.spec-block .sb-head h3{font-size:18px;font-weight:800}
.spec-block ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:11px 24px;padding:22px 26px 24px}
.spec-block li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-soft);font-weight:600}
.spec-block li i{width:21px;height:21px;border-radius:6px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;font-size:10px;flex-shrink:0}
.gallery{padding:var(--secY) 0 0}
.gallery .g-eye{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--gold);text-transform:uppercase;margin-bottom:18px}
.gallery .g-eye::before{content:"";width:24px;height:1px;background:var(--gold)}
.ggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gs-img{
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--line);
  display: flex;
  transition:.25s
}
.gs-img img{
  width: 100%;
}
.gs-img:hover{border-color:var(--gold)}
.gslot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.gslot .gph{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;color:var(--ink-faint);font-size:13px;font-weight:600}
.gslot .gph i{font-size:30px;color:var(--gold-deep);opacity:.55}
.banner{padding:var(--secY) 0 0}
.banner-inner{position:relative;border-radius:28px;overflow:hidden; background-repeat: no-repeat; background-position: center; background-size: cover; padding:clamp(56px,8vw,96px) 24px;text-align:center}
.banner-oc{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.banner-inner::before,.banner-inner::after{content:"\f256";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;color:rgba(255,255,255,.045);font-size:clamp(140px,22vw,300px);pointer-events:none}
.banner-inner::before{left:-40px;top:50%;transform:translateY(-50%) scaleX(-1)}
.banner-inner::after{right:-40px;top:50%;transform:translateY(-50%)}
.banner-inner .bn-eye{position:relative;font-size:13px;letter-spacing:.5em;color:rgba(255,255,255,.55);font-weight:600;padding-left:.5em; z-index: 4;}
.banner-inner .bn-price{position:relative;margin:14px 0 24px;color:#fff;font-size:clamp(38px,6.5vw,72px);font-weight:800;line-height: 1.1; z-index: 4;}
.banner-inner .bn-price span{color:var(--gold)}
.banner-inner .bn-price em{font-style:normal;font-size:.4em;font-weight:600;color:rgba(255,255,255,.65)}
.banner-inner .bn-desc{position:relative;z-index: 4;color:rgba(255,255,255,.78);font-size:clamp(15px,1.7vw,18px)}
.banner-inner .bn-btn{position:relative;z-index: 4;margin-top:30px;display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:#fff;font-size:clamp(15px,1.7vw,17px);font-weight:700;padding:16px 32px;border-radius:14px;text-decoration:none;transition:.25s}
.banner-inner .bn-btn:hover{transform:translateY(-3px);box-shadow:0 20px 40px -18px rgba(199,145,107,.7)}
.feature{padding:var(--secY) 0 0}
.feature:has(+ .linked){padding-bottom:var(--secY)}
.points{display:grid;gap:18px}
.points.cols-2{grid-template-columns:repeat(2,1fr)}
.points.cols-3{grid-template-columns:repeat(3,1fr)}
.points.cols-4{grid-template-columns:repeat(4,1fr)}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px 28px;transition:.28s;position:relative;overflow:hidden}
.pcard:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--gold)}
.pcard .pc-no{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--gold);text-transform:uppercase}
.pcard h3{font-size:18px;font-weight:800;margin:8px 0 0;line-height:1.4}
.pcard .pc-sub{font-size:13.5px;color:var(--ink-soft);margin-top:6px;font-weight:600}
.pcard .pc-visual{
  margin-top:24px;
  border-radius:14px;
  border:1px solid var(--line);
  display: flex;
  overflow: hidden;
}
.pcard .pc-visual img{
  width: 100%;
}
.checkpoint{margin-top:clamp(26px,3vw,34px);background:var(--card);border:1px solid var(--line);border-radius:18px;padding:0;overflow:hidden;box-shadow:var(--shadow-sm);transition:.25s}
.checkpoint:hover{box-shadow:var(--shadow)}
.checkpoint .cp-label{display:flex;align-items:center;gap:13px;padding:18px 26px;background:linear-gradient(90deg,var(--gold-soft),rgba(199,145,107,0));border-bottom:1px solid var(--line)}
.checkpoint .cp-ic{width:42px;height:42px;border-radius:11px;background:#fff;border:1px solid var(--line);color:var(--gold-deep);display:grid;place-items:center;font-size:18px;flex-shrink:0}
.checkpoint .cp-tt{display:flex;flex-direction:column;gap:2px}
.checkpoint .cp-eye{font-size:11px;letter-spacing:.18em;color:var(--gold);font-weight:700}
.checkpoint .cp-label b{font-size:18px;font-weight:800;color:var(--ink)}
.checkpoint ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:22px 26px 24px}
.checkpoint li{display:inline-flex;align-items:center;font-size:14px;color:var(--gold-deep);font-weight:700;background:var(--gold-soft);border:1px solid rgba(199,145,107,.28);border-radius:999px;padding:9px 16px;line-height:1.3;transition:.2s}
.checkpoint li:hover{background:#fff;border-color:var(--gold)}
.checkpoint li i{display:none}
.checkpoint li::before{content:"#";color:var(--gold);font-weight:800;margin-right:2px}
.checkpoint.single .cp-text{font-size:14.5px;color:var(--ink-soft);line-height:1.85;padding:22px 26px 24px}
.checkpoint.single .cp-text b{color:var(--ink);font-weight:700}
.checkpoint .cp-tags{display:flex;flex-wrap:wrap;gap:10px;padding:22px 26px 24px}
.checkpoint .cp-tags span{display:inline-flex;align-items:center;font-size:14px;color:var(--gold-deep);font-weight:700;background:var(--gold-soft);border:1px solid rgba(199,145,107,.28);border-radius:999px;padding:9px 16px;transition:.2s}
.checkpoint .cp-tags span:hover{background:#fff;border-color:var(--gold)}
.checkpoint .cp-tags span::before{content:"#";color:var(--gold);font-weight:800;margin-right:2px}
.lcard .lc-no{position:absolute;top:14px;right:22px;font-size:54px;font-weight:800;color:rgba(255,255,255,.06);letter-spacing:-.04em}
.pcard .pc-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.pcard .pc-tags span{font-size:12px;font-weight:700;color:var(--gold-deep);background:var(--gold-soft);border-radius:999px;padding:5px 11px}
.u-mb-18{margin-bottom:18px}
.u-mb-34{margin-bottom:34px}
.section-subtext-light{color:rgba(255,255,255,.7)}
.subheading-inline{font-size:18px;font-weight:800;margin-bottom:16px;color:var(--ink)}

.guide-hero{padding:clamp(56px,8vw,96px) 0 0;background:var(--card)}
.gh-eye{display:inline-flex;align-items:center;font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--gold);text-transform:uppercase}
.gh-title{font-size:clamp(34px,5.4vw,62px);font-weight:800;letter-spacing:-.025em;color:var(--ink);margin:16px 0 clamp(26px,3.5vw,40px);line-height:1.2}
.gh-title span{color:var(--gold)}
.gh-sub{margin-bottom:clamp(34px,4.5vw,52px);font-size:clamp(22px,2.7vw,32px);font-weight:800;color:var(--ink);letter-spacing:-.035em;line-height:1.4}
.gh-text{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(24px,4vw,64px)}
.gh-text .col p{color:var(--ink-soft);font-size:clamp(15px,1.5vw,17px);line-height:1.7;letter-spacing:-.01em}
.gh-text .col{display:flex;flex-direction:column}
.gh-text .col p + p{margin-top:22px}
.gh-text .col-img{margin-top:clamp(32px,4vw,48px);position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--line); display: flex;}
.gh-text .col-img img{width: 100%;}
.gh-text .col-img .gph{display:flex;align-items:center;gap:8px;color:var(--ink-faint);font-size:13px;font-weight:600}
.gh-text .col-img .gph i{color:var(--gold-deep)}
.gh-divider{border:0;border-top:1px solid var(--line);margin:clamp(48px,6vw,74px) 0 clamp(24px,3vw,32px)}
.gh-region{background:var(--card);border:1px solid var(--line);border-right:none;border-radius:18px;padding:clamp(24px,3vw,34px);box-shadow:var(--shadow-sm)}
.gh-region .rg-head{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.gh-region .rg-ic{width:42px;height:42px;border-radius:11px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;font-size:17px;flex-shrink:0}
.gh-region .rg-tt{display:flex;flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:6px 12px}
.gh-region .rg-tt b{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-.01em}
.gh-region .rg-tt small{font-size:12.5px;color:var(--ink-faint);font-weight:600}
.gh-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}
.gh-chips span{display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--ink-soft);background:var(--gold-soft);border:1px solid rgba(199,145,107,.22);border-radius:10px;padding:12px 6px;letter-spacing:-.01em;transition:.2s}
.gh-chips span:hover{background:var(--gold);border-color:var(--gold);color:#fff;transform:translateY(-2px)}
.gh-banner{margin-top:clamp(40px,5vw,64px);position:relative; display: flex;}
.gh-banner img{width:100%;}
.gh-banner .gph{position:relative;display:flex;align-items:center;gap:9px;color:var(--ink-faint);font-size:13px;font-weight:600}
.gh-banner .gph i{color:var(--gold-deep)}

/* ===== 협약 기관 로고 스트립 ===== */
.partners{padding:clamp(48px,6vw,80px) 0 0}
.partners .p-eye{display:flex;align-items:center;justify-content:center;gap:9px;font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--green);text-transform:uppercase;padding-bottom:28px}
.partners .p-eye::before,.partners .p-eye::after{content:"";width:26px;height:1px;background:var(--green)}
.plogos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.plogo{min-height:78px;padding:14px 16px;border:1px solid var(--line);border-right:none;border-radius:12px;background:var(--card);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--ink-soft);filter:grayscale(1);opacity:.78;transition:.25s}
.plogo i{font-size:22px;color:var(--gold-deep)}
.plogo span{font-size:13.5px;font-weight:800;letter-spacing:-.03em;line-height:1.35}
.plogo:hover{filter:grayscale(0);opacity:1;border-color:var(--green);color:var(--ink);transform:translateY(-3px)}

.py-0{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

@media(max-width:1100px){
.spec-grid{grid-template-columns:1fr}
.spec-aside{position:static}
.spec-aside::after{display:none}
.hero .eyebrow{
  margin-bottom: 1rem;
}
.hero p{
  margin-top: 1rem;
  line-height: 1.6;
}
.hero .crumb{
  margin-top: 20px;
}
.hero{
  height: 500px;
}
.topintro .eyebrow{
  margin-bottom: 1rem;
}
.topintro p{
  margin-top: 1rem;
  line-height: 1.6;
}
.topintro .crumb{
  margin-top: 20px;
}
.topintro{
  height: 500px;
}
}

@media(max-width:980px){
.cardlist{grid-template-columns:1fr 1fr}
.steps.cols-4{grid-template-columns:1fr 1fr}
.steps.cols-3{grid-template-columns:1fr 1fr}
.linked-grid{grid-template-columns:1fr 1fr}
.cardlist.col4{grid-template-columns:1fr;}

}

@media(max-width:900px){
.ggrid{grid-template-columns:1fr 1fr}
.points.cols-4{grid-template-columns:1fr 1fr}
.linked-grid{grid-template-columns:1fr 1fr}
.points.cols-2{grid-template-columns:1fr 1fr}
.points.cols-3{grid-template-columns:1fr 1fr}
}

@media(max-width:880px){
  .gh-text{grid-template-columns:1fr;gap:20px}
  .hero{
    height: 360px;
  }
  .topintro{
    height: 360px;
  }
}

@media(max-width:640px){
.points.cols-2, .points.cols-3,.points.cols-4{grid-template-columns:1fr}
.linked-grid{grid-template-columns:1fr}
.spec-block ul{grid-template-columns:1fr;gap:9px;padding-top:18px;padding-bottom:20px;padding:18px 22px 20px}
.spec-block .sb-head,.checkpoint .cp-label{padding:16px 22px}
.spec-block ul{padding-left:22px;padding-right:22px}
.checkpoint ul,.checkpoint .cp-tags,.checkpoint.single .cp-text{padding:18px 22px 20px}
.consult .c-tel{gap:10px}
.checkpoint .cp-tags,.checkpoint.single .cp-text{padding:18px 22px 20px}
}

@media(max-width:620px){
.cardlist{grid-template-columns:1fr}
.steps.cols-3,.steps.cols-4{grid-template-columns:1fr}
.flist{grid-template-columns:1fr}
.linked-grid{grid-template-columns:1fr}
.gtable th{width:40%}
}


@media(max-width:520px){
.ggrid{grid-template-columns:1fr}
.gh-text .col p + p{margin-top:14px}
.hero .eyebrow{
  margin-bottom: 8px;
}
.hero p{
  margin-top: 12px;
  line-height: 1.5;
}
.hero .crumb{
  margin-top: 1rem;
  gap: 6px;
  font-size: 12px;
}
.hero .crumb i{
  font-size: 7px;
}
.topintro .eyebrow{
  margin-bottom: 8px;
}
.topintro p{
  margin-top: 12px;
  line-height: 1.5;
}
.topintro .crumb{
  margin-top: 1rem;
  gap: 6px;
  font-size: 12px;
}
.topintro .crumb i{
  font-size: 7px;
}
.faq summary{
  padding: 20px 1rem;
}
.faq .a{
  padding: 0 16px 20px 60px;
}
}

@media(max-width:380px){
.spec-aside{padding:30px 24px}
.pcard{padding:24px 22px}
.checkpoint li,.checkpoint .cp-tags span{font-size:13px;padding:8px 13px}
.checkpoint .cp-tags span{font-size:13px;padding:8px 13px}
}

@keyframes bpulse{0%{box-shadow:0 0 0 0 rgba(31,163,86,.45)}70%{box-shadow:0 0 0 7px rgba(31,163,86,0)}100%{box-shadow:0 0 0 0 rgba(31,163,86,0)}}

@keyframes atani{
    0% {
      transform: translateX(0);
    }
    100% {
        transform: translateX(-5%);
    }
}
