*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
a{text-decoration:none;color:inherit}
.container{width:min(1180px,calc(100% - 48px));margin:auto}
.section-dark{background:#0c0e11;color:#fff;position:relative;overflow:hidden}
.section-light{background:#f7f7f5}
.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:600;color:#8e9298;margin-bottom:20px}
.section-heading{padding:130px 0 70px}
.section-heading.center{text-align:center}
.section-heading h2{font-size:clamp(38px,5vw,68px);line-height:1.15;font-weight:300;letter-spacing:-.055em}
.section-heading h2 strong{font-weight:700}
.section-heading>p:last-child:not(.eyebrow){color:#777;max-width:auto;margin:22px auto 0;font-size:15px}

/* header */
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:76px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;color:#fff;background:rgba(8,9,11,.65);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.brand{font-size:13px;font-weight:700;letter-spacing:.15em}.brand span{font-weight:300}
.site-header nav{display:flex;gap:34px;font-size:12px;color:#b8bbc0}
.site-header nav a{transition:.3s}.site-header nav a:hover{color:#fff}
.header-btn{font-size:11px;border:1px solid #555b63;padding:8px 17px;border-radius:30px}

/* hero */
.hero{min-height:100svh;display:flex;align-items:center;position:relative;overflow:hidden;background:#0c0e11}
.hero-video-wrap{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:hidden}
.hero-video{width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(0.7) contrast(1.05)}
.hero-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,14,17,0.7) 0%,rgba(12,14,17,0.5) 50%,rgba(12,14,17,0.9) 100%);opacity:0.5;}
.hero-inner{position:relative;z-index:3;padding-top:70px;}
.hero h2{font-size:clamp(44px,7vw,92px);font-weight:300;line-height:1.08;letter-spacing:-0.07em}
.hero h2 em{font-style:normal;font-weight:700}
.hero-copy{margin-top:34px;color:#c2c7ce;font-size:16px}
.hero-link{display:inline-flex;align-items:center;gap:25px;margin-top:48px;font-size:11px;letter-spacing:0.18em;border-bottom:1px solid #727b86;padding-bottom:12px;color:#fff;transition:border-color 0.3s,gap 0.3s}
.hero-link:hover{border-color:#fff;gap:32px}
.hero-link i{font-style:normal;font-size:18px}
.hero-number{position:absolute;right:4vw;bottom:50px;color:rgba(255,255,255,0.08);font-size:150px;font-weight:700;line-height:1;z-index:2;pointer-events:none}
.hero-glow{z-index:2}


/* modes */
.mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:#ddd}
.mode-card{min-height:430px;padding:42px;background:#fff;position:relative;overflow:hidden;transition:.45s}
.mode-card:hover{transform:translateY(-5px);box-shadow:0 18px 50px rgba(0,0,0,.08);z-index:2}
.mode-top{display:flex;justify-content:space-between;color:#92979d;font-size:10px;letter-spacing:.16em}
.mode-icon{width:64px;height:64px;border-radius:50%;border:1px solid #d9dadd;display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:300;margin:55px 0 30px}
.mode-card h3{font-size:28px;line-height:1.3;letter-spacing:-.04em}
.mode-card p{font-size:13px;color:#777;max-width:420px;margin:18px 0}
.mode-card ul{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin-top:25px}
.mode-card li{font-size:10px;border:1px solid #ddd;border-radius:30px;padding:5px 10px;color:#666}

/* stats */
.stats{padding-bottom:125px}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #292d32;border-bottom:1px solid #292d32}
.stat{padding:55px 25px;border-right:1px solid #292d32}
.stat:last-child{border-right:0}
.stat strong{font-size:72px;line-height:1;font-weight:300;letter-spacing:-.06em}
.stat strong small{font-size:22px;letter-spacing:0;color:#858b93}
.stat h3{font-size:14px;margin-top:25px}.stat p{font-size:11px;color:#777f88;margin-top:4px}

/* details */
.details{padding-bottom:130px}
.detail{min-height:600px;border-top:1px solid #ddd;display:grid;grid-template-columns:90px 1fr 42%;align-items:center;gap:45px;padding:70px 0}
.detail.reverse{grid-template-columns:42% 1fr 90px}.detail.reverse .detail-copy{grid-column:2}.detail.reverse .visual{grid-column:1;grid-row:1}.detail.reverse .detail-index{grid-column:3;grid-row:1}
.detail-index{font-size:9px;letter-spacing:.15em;color:#999;writing-mode:vertical-rl}
.detail-copy{max-width:480px}.detail-copy h2{font-size:clamp(38px,4vw,58px);font-weight:300;line-height:1.15;letter-spacing:-.06em}
.detail-copy h2 strong{font-weight:700}.detail-copy>p:not(.eyebrow){font-size:14px;color:#707070;margin-top:25px}
.visual{height:430px;background:#111;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:#fff}
.visual:before{content:"";position:absolute;width:250px;height:250px;border-radius:50%;border:1px solid rgba(255,255,255,.25);box-shadow:0 0 80px rgba(255,255,255,.06)}
.visual span{position:relative;font-size:46px;letter-spacing:-.04em;font-weight:300}.visual span small{font-size:20px}
.visual-glide{background:radial-gradient(circle at 50% 50%,#4d5963,#0c0d0f 65%)}
.visual-scar{background:radial-gradient(circle at 50% 50%,#555052,#0b0b0d 68%)}
.visual-coring{background:radial-gradient(circle at 50% 50%,#515b58,#0b0d0d 68%)}
.visual-ablation{background:radial-gradient(circle at 50% 50%,#625d53,#0b0b0b 68%)}
.mini-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.mini-points span{font-size:10px;border:1px solid #d7d7d7;padding:6px 11px;border-radius:20px}
.depth-meter{margin-top:30px;border-top:1px solid #ccc;position:relative;padding-top:13px}.depth-meter:before{content:"";position:absolute;top:-2px;left:0;width:75%;height:3px;background:#222}.depth-meter b{font-size:10px;letter-spacing:.1em}
.pattern-range{position:relative;margin-top:35px;height:35px;border-top:1px solid #bbb}.pattern-range i{position:absolute;left:0;top:-2px;width:100%;height:3px;background:linear-gradient(90deg,#222 0 10%,#999 10% 90%,#222 90%)}.pattern-range span{font-size:9px;color:#777;position:absolute;top:10px}.pattern-range span:last-child{right:0}

/* comparison */
.comparison{padding-bottom:140px}
.comparison .section-heading h2{font-size:clamp(40px,5vw,70px)}
.coring-compare{display:grid;grid-template-columns:1fr 150px 1fr;align-items:center;border-top:1px solid #2b3035;border-bottom:1px solid #2b3035}
.compare-side{padding:60px 45px}.compare-side.new{background:#15191d}
.compare-label{display:block;color:#7d858d;font-size:10px;letter-spacing:.18em;margin-bottom:18px}
.compare-side strong{font-size:76px;font-weight:300;letter-spacing:-.06em}.compare-side strong small{font-size:20px}
.compare-side ul{list-style:none;margin-top:35px;color:#a7abb0;font-size:12px}.compare-side li{padding:9px 0;border-top:1px solid #292e33}.compare-side li:last-child{border-bottom:1px solid #292e33}
.compare-arrow{text-align:center}.compare-arrow span{font-size:50px;font-weight:200;color:#777}.compare-arrow b{display:block;font-size:11px;color:#9da4aa}

/* mode vs */
.mode-glide{padding-bottom:140px}
.mode-vs{display:grid;grid-template-columns:1fr 90px 1fr;align-items:center}
.vs-card{padding:55px;background:#fff;border:1px solid #dedede;min-height:350px}.vs-card.highlight{background:#111;color:#fff;border-color:#111}
.vs-tag{font-size:10px;letter-spacing:.2em;color:#999}.vs-card h3{font-size:31px;line-height:1.25;letter-spacing:-.05em;margin-top:45px}.vs-card p{font-size:13px;color:#777;margin-top:22px;max-width:450px}.vs-card.highlight p{color:#aaa}.vs-card>strong{display:block;font-size:9px;letter-spacing:.16em;margin-top:35px;color:#888}.vs-center{text-align:center;font-size:12px;color:#999}

/* final */
.final{min-height:650px;display:flex;align-items:center;text-align:center}
.final-inner{position:relative;z-index:2}
.final h2{font-size:clamp(48px,7vw,94px);line-height:1.05;font-weight:300;letter-spacing:-.07em}.final h2 em{font-style:normal;font-weight:700}.final-inner>p:not(.eyebrow){color:#9ba1a8;font-size:15px;margin-top:30px}.outline-btn{display:inline-block;border:1px solid #555c64;padding:12px 22px;border-radius:30px;font-size:10px;letter-spacing:.16em;margin-top:38px}
footer{background:#08090a;color:#777;padding:30px 0;font-size:9px}
footer .container{display:flex;justify-content:space-between;letter-spacing:.1em}

/* reveal */
.reveal{opacity:0;transform:translateY(35px)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}
.js-ready .reveal{transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
.js-ready .reveal.is-visible{opacity:1;transform:none}

/* responsive */
@media(max-width:900px){
 .site-header{padding:0 20px}.site-header nav{display:none}
 .container{width:min(100% - 32px,680px)}
 .hero h2{font-size:clamp(42px,7vw,68px)}
 .mode-grid,.stat-grid{grid-template-columns:1fr 1fr}
 .stat:nth-child(2){border-right:0}.stat:nth-child(1),.stat:nth-child(2){border-bottom:1px solid #292d32}
 .detail,.detail.reverse{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding:60px 0}
 .detail.reverse .detail-copy,.detail.reverse .visual,.detail.reverse .detail-index{order:initial;grid-column:auto;grid-row:auto}
 .detail-index{writing-mode:initial}.visual{height:360px}
 .coring-compare{grid-template-columns:1fr}
 .compare-arrow{padding:20px}
 .compare-arrow span{font-size:32px}
 .compare-side{padding:45px 30px}
 .mode-vs{grid-template-columns:1fr}
 .vs-center{padding:18px}
 .vs-card{min-height:300px}
}
@media(max-width:600px){
 .header-btn{display:none}
 .section-heading{padding:90px 0 50px}
 .section-heading h2{font-size:38px}
 .hero{min-height:780px}
 .hero-copy{font-size:14px}
 .hero-number{font-size:80px}
 .hero h2{font-size:clamp(42px,4vw,68px)}
 .mode-grid,.stat-grid{grid-template-columns:1fr}
 .mode-card{min-height:auto;padding:35px}
 .mode-icon{margin-top:40px}
 .stat{border-right:0!important;border-bottom:1px solid #292d32!important;padding:40px 10px}
 .stat:last-child{border-bottom:0!important}
 .stat strong{font-size:60px}
 .detail-copy h2{font-size:38px}
 .visual{height:300px}
 .visual span{font-size:32px}
 .compare-side strong{font-size:58px}
 .final{min-height:550px}
 footer .container{display:block}footer small{display:block;margin-top:10px}
}
@media(max-width:400px){
 .hero h2{font-size:20px;}
 .final h2{font-size:clamp(40px,6vw,80px);}
 .section-heading h2 strong{display:block;}
}


.geo-wrap { background: #f7f7f5; padding: 130px 0; border-top: 1px solid #e5e5e3; border-bottom: 1px solid #e5e5e3; }
.geo-container { width: min(1200px, calc(100% - 48px)); margin: 0 auto; }
.geo-chunk { padding: 55px 0; border-bottom: 1px solid #ddd; }
.geo-chunk:first-child { padding-top: 0; }
.geo-chunk:last-child { padding-bottom: 0; border-bottom: none; }

.geo-eyebrow { font-size: 11px; letter-spacing: .22em; font-weight: 600; color: #8e9298; margin-bottom: 16px; text-transform: uppercase; }
.geo-title { font-size: clamp(26px, 3.2vw, 36px); font-weight: 300; line-height: 1.3; letter-spacing: -.05em; color: #0c0e11; margin-bottom: 22px; }
.geo-title strong { font-weight: 700; }
.geo-subtitle { font-size: clamp(20px, 2.5vw, 26px); font-weight: 400; line-height: 1.35; letter-spacing: -.04em; color: #0c0e11; margin-bottom: 24px; }
.geo-subtitle strong { font-weight: 700; }

.geo-desc p { font-size: 15px; line-height: 1.8; color: #666; margin-bottom: 14px; word-break: keep-all; }
.geo-desc p:last-child { margin-bottom: 0; }
.geo-desc strong { color: #111; font-weight: 600; }
.geo-desc em { font-style: normal; color: #111; border-bottom: 1px solid #999; }

/* ºñ±³ Å×ÀÌºí & °­Á¶ ÄÃ·³ ½ºÅ¸ÀÏ */
.geo-table-wrap { overflow-x: auto; margin-top: 10px; border-radius: 8px; border: 1px solid #d8d8d6; background: #fff; box-shadow: 0 4px 20px rgba(0,0,0,0.03); }
.geo-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 14px; }
.geo-table th { padding: 20px 22px; font-size: 13px; font-weight: 600; border-bottom: 1px solid #e2e2df; background: #fdfdfd; }
.geo-table td { padding: 18px 22px; border-bottom: 1px solid #eee; color: #666; line-height: 1.6; }
.geo-table tr:last-child td { border-bottom: none; }

.geo-table .col-label { width: 22%; color: #888; background: #fafafa; }
.geo-table .col-featured { width: 40%; background: #0c0e11; color: #fff; position: relative; }
.geo-table .col-sub { width: 38%; color: #777; }
.geo-table .td-label { font-weight: 600; color: #333; background: #fafafa; }

/* ÇÙ½É ¼Ö·ç¼Ç ÇÏÀÌ¶óÀÌÆ® */
.geo-table .td-featured { color: #0c0e11; font-weight: 600; background: #f0f4f8; border-right: 1px solid #e1e7ee; border-left: 1px solid #e1e7ee; }
.badge-featured { display: inline-block; font-size: 9px; letter-spacing: .15em; font-weight: 700; color: #9da4aa; border: 1px solid #444a52; padding: 2px 7px; border-radius: 20px; margin-bottom: 6px; }

/* 3Ä­ ¹Ú½º Ä«µå ±×¸®µå */
.geo-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 10px; }
.geo-card { background: #fff; border: 1px solid #e2e2df; border-radius: 8px; padding: 36px 28px; transition: transform .3s ease, box-shadow .3s ease; position: relative; }
.geo-card:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,.06); }
.geo-card.highlight { border-color: #0c0e11; background: #ffffff; }

.geo-card-icon { width: 44px; height: 44px; border-radius: 50%; border: 1px solid #e2e2df; display: flex; align-items: center; justify-content: center; margin-bottom: 22px; color: #0c0e11; background: #fafafa; }
.geo-card.highlight .geo-card-icon { background: #0c0e11; color: #fff; border-color: #0c0e11; }
.geo-card-icon svg { width: 20px; height: 20px; }

.geo-card h4 { font-size: 17px; font-weight: 700; color: #0c0e11; margin-bottom: 12px; letter-spacing: -.03em; }
.geo-card p { font-size: 13.5px; line-height: 1.7; color: #666; margin: 0; word-break: keep-all; }
.geo-card p strong { color: #111; font-weight: 600; }



@media (max-width: 900px) {
    .geo-wrap { padding: 80px 0; }
    .geo-chunk { padding: 40px 0; }
    .geo-card-grid { grid-template-columns: 1fr; gap: 14px; }
    .geo-card { padding: 28px 22px; }
    .geo-card-icon { margin-bottom: 16px; }
    .geo-table th, .geo-table td { padding: 14px 14px; font-size: 13px; }
}

@media (max-width: 600px) {
    .geo-wrap { padding: 60px 0; }
    .geo-title { font-size: 22px; }
    .geo-subtitle { font-size: 18px; }
    .geo-desc p { font-size: 13.5px; }
    .geo-table { min-width: 540px; }
}