:root{--green:#0f3d2e;--green2:#1f6b43;--mint:#e3f1df;--ivory:#eff7ec;--gold:#d2a84e;--ink:#10261b;--muted:#637367;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Noto Sans KR',sans-serif;background:var(--ivory);line-height:1.5}a{text-decoration:none;color:inherit}.site-header{height:78px;padding:0 max(28px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(239,247,236,.92);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:900;color:var(--green)}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:var(--green);color:#fff;border-radius:12px;font-size:11px;letter-spacing:-1px}.desktop-nav{display:flex;gap:34px;font-size:14px;font-weight:700;color:var(--muted)}.desktop-nav a:hover,.text-link:hover{color:var(--green2)}.header-cta{background:var(--green);color:#fff;padding:11px 18px;border-radius:999px;font-size:13px;font-weight:800}.section-shell{max-width:1160px;margin:auto;padding-left:28px;padding-right:28px}.hero{min-height:660px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:40px;padding-top:62px;padding-bottom:76px}.eyebrow{margin:0 0 18px;color:var(--green2);font-size:12px;font-weight:900;letter-spacing:1.3px}.eyebrow-dot{display:inline-block;width:8px;height:8px;background:var(--gold);border-radius:50%;margin-right:8px}.hero h1{font-size:clamp(42px,5.4vw,70px);line-height:1.16;letter-spacing:-4px;margin:0 0 24px;font-weight:900}.hero h1 em{font-style:normal;color:var(--green2)}.hero-description{font-size:17px;color:var(--muted);line-height:1.8;margin:0}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:16px 22px;border-radius:999px;font-weight:800;font-size:14px;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 10px 25px #0f3d2e24}.button-primary{background:var(--green);color:#fff}.button-primary span,.button-light span{font-size:21px;line-height:0}.text-link{font-size:13px;font-weight:800;color:var(--green2)}.text-link span{margin-left:7px}.trust-line{margin-top:26px;color:var(--muted);font-size:12px;font-weight:700}.trust-line span{color:var(--green2);margin-right:7px}.hero-visual{height:520px;position:relative;display:grid;place-items:center}.sun-glow{position:absolute;width:410px;height:410px;background:#d4ebcb;border-radius:50%;filter:blur(2px)}.course-card{position:relative;width:min(360px,80%);height:420px;padding:28px;background:#fff;border-radius:29px;box-shadow:0 24px 60px #0f3d2e22;overflow:hidden;transform:rotate(4deg)}.course-top,.course-bottom{display:flex;justify-content:space-between;font-size:11px;font-weight:800;color:var(--muted)}.weather{color:var(--gold)}.course-card h2{font-size:26px;line-height:1.35;letter-spacing:-1.5px;margin:38px 0 0}.course-card h2 strong{color:var(--green2)}.course-art{height:184px;position:relative;margin-top:10px;background:linear-gradient(155deg,#d9efcf,#a9d18e);border-radius:20px;overflow:hidden}.course-art:before,.course-art:after{content:'';position:absolute;border-radius:50%;background:#8fc172}.course-art:before{width:240px;height:190px;right:-60px;bottom:-75px}.course-art:after{width:180px;height:140px;left:-70px;bottom:-60px;background:#b6dc96}.flag{position:absolute;top:37px;right:75px;color:var(--green);font-size:30px;z-index:2}.hole{position:absolute;width:24px;height:12px;border-radius:50%;background:#4a7d43;z-index:2}.hole-one{right:70px;top:77px}.hole-two{left:58px;bottom:38px}.ball{position:absolute;width:13px;height:13px;background:#fff;border-radius:50%;left:125px;top:107px;box-shadow:0 2px 4px #0003;z-index:3}.course-bottom{position:absolute;left:28px;right:28px;bottom:28px;padding-top:18px;border-top:1px solid #dfe9dc}.course-bottom b{color:var(--green2)}.floating-note{position:absolute;bottom:38px;right:4px;display:flex;align-items:center;gap:10px;background:#fff;padding:13px 17px;border-radius:16px;box-shadow:0 13px 28px #0f3d2e22;transform:rotate(-2deg);font-size:11px}.note-icon{display:grid;place-items:center;width:33px;height:33px;background:#ffefd0;border-radius:11px;color:#b98517}.floating-note b,.floating-note small{display:block}.floating-note b{font-size:12px}.floating-note small{color:var(--muted);margin-top:2px}.feature-intro{padding-top:105px;padding-bottom:115px}.section-heading{display:inline-block}.section-heading h2,.access-copy h2{font-size:43px;line-height:1.25;letter-spacing:-2.5px;margin:0}.section-heading h2 span,.access-copy h2 span{color:var(--green2)}.section-lead{display:inline-block;margin:0 0 0 100px;color:var(--muted);font-size:15px;line-height:1.8}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:52px}.feature-card{min-height:266px;padding:26px 24px;border-radius:25px;position:relative;transition:transform .2s}.feature-card:hover{transform:translateY(-5px)}.feature-green{background:var(--green);color:#fff}.feature-cream{background:#fff3d6}.feature-sky{background:#eaf6ff}.feature-gold{background:#ead8a8}.feature-icon{font-size:28px;margin-bottom:33px}.feature-card p{font-size:12px;font-weight:800;margin:0 0 10px;opacity:.72}.feature-card h3{font-size:20px;letter-spacing:-1.2px;line-height:1.45;margin:0}.card-arrow{position:absolute;right:23px;bottom:22px;font-size:22px}.flow-section{background:var(--green);color:#fff}.flow-inner{min-height:445px;padding-top:82px;padding-bottom:82px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.eyebrow.light{color:#b6d6a9}.flow-inner h2,.start-inner h2{font-size:40px;line-height:1.3;letter-spacing:-2px;margin:0 0 18px}.flow-inner p:not(.eyebrow),.start-inner p:not(.eyebrow){font-size:15px;line-height:1.8;color:#b8d0c1}.steps{display:grid;gap:13px}.step{display:flex;align-items:center;gap:17px;background:#fff10;border:1px solid #ffffff2b;border-radius:18px;padding:17px 20px}.step>b{color:#b7d7aa;font-size:11px}.step-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#2b7450;font-size:20px}.step strong,.step small{display:block}.step strong{font-size:14px}.step small{color:#b8d0c1;font-size:11px;margin-top:2px}.access-section{display:grid;grid-template-columns:1fr 1fr;gap:120px;align-items:center;padding-top:120px;padding-bottom:120px}.access-copy>p:not(.eyebrow){max-width:460px;color:var(--muted);font-size:15px;line-height:1.9}.access-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.access-tags span{background:#fff;padding:8px 12px;border-radius:99px;color:var(--green2);font-size:11px;font-weight:800}.access-panel{background:#fff;border-radius:28px;padding:27px 30px;box-shadow:0 20px 45px #0f3d2e12;max-width:390px;justify-self:center;width:100%}.panel-top,.setting-row{display:flex;align-items:center;justify-content:space-between}.panel-top{font-weight:900;font-size:17px;padding-bottom:22px;border-bottom:1px solid #e5eee3}.setting-row{padding:20px 0;border-bottom:1px solid #edf2ec;font-size:13px;font-weight:700}.toggle{width:42px;height:24px;border-radius:99px;background:#d5e1d3;display:inline-block;position:relative}.toggle:after{content:'';width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0002}.toggle.on{background:var(--green2)}.toggle.on:after{left:21px}.font-options{display:flex;gap:8px}.font-options b{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#eef5eb;font-size:12px}.font-options b:first-child{font-size:10px}.font-options b:last-child{font-size:16px}.font-options .selected{background:var(--green);color:#fff}.panel-message{margin-top:21px;background:var(--mint);border-radius:16px;padding:17px;color:var(--green2);font-size:13px;line-height:1.6}.panel-message strong{font-size:17px}.start-section{background:var(--green2);color:#fff}.start-inner{min-height:310px;display:flex;align-items:center;justify-content:space-between;gap:40px}.button-light{background:#fff;color:var(--green);padding:17px 23px}.site-footer{background:#09291f;color:#b8d0c1;padding:35px 28px 22px;font-size:12px}.footer-inner{max-width:1104px;margin:auto;display:flex;align-items:center;gap:30px}.footer-brand{color:#fff}.footer-brand .brand-mark{background:#2b7450}.footer-inner p{margin:0}.footer-inner>div{margin-left:auto;display:flex;gap:20px}.footer-inner a:hover{color:#fff}.copyright{max-width:1104px;margin:30px auto 0!important;color:#739383;font-size:10px}@media(max-width:800px){.desktop-nav{display:none}.site-header{height:68px;padding:0 20px}.header-cta{padding:9px 13px;font-size:11px}.section-shell{padding-left:20px;padding-right:20px}.hero{grid-template-columns:1fr;padding-top:64px;gap:30px}.hero h1{letter-spacing:-2.5px}.hero-description{font-size:15px}.hero-visual{height:430px}.course-card{height:360px}.course-art{height:145px}.feature-intro{padding-top:75px;padding-bottom:75px}.section-heading h2,.access-copy h2{font-size:34px}.section-lead{display:block;margin:22px 0 0;font-size:14px}.feature-grid{grid-template-columns:repeat(2,1fr);gap:11px;margin-top:35px}.feature-card{min-height:220px;padding:19px}.feature-icon{margin-bottom:25px}.feature-card h3{font-size:16px}.flow-inner,.access-section{grid-template-columns:1fr;gap:48px}.flow-inner{padding-top:65px;padding-bottom:65px}.flow-inner h2,.start-inner h2{font-size:32px}.access-section{padding-top:75px;padding-bottom:75px;gap:35px}.start-inner{padding-top:58px;padding-bottom:58px;display:block}.start-inner .button{margin-top:28px}.footer-inner{display:block}.footer-inner>div{margin:22px 0 0}.footer-inner p{margin-top:16px}}
.course-modal{display:none;position:fixed;inset:0;z-index:30}.course-modal.is-open{display:block}.modal-backdrop{position:absolute;inset:0;background:#09291fcc;backdrop-filter:blur(5px)}.course-dialog{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(540px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:28px;padding:34px;box-shadow:0 25px 80px #061d1455}.modal-close{position:absolute;right:20px;top:16px;border:0;background:transparent;font-size:28px;color:var(--muted);cursor:pointer}.course-dialog h2{font-size:29px;letter-spacing:-1.5px;margin:0 0 8px}.modal-description{font-size:13px;color:var(--muted);margin:0 0 22px}.course-search{display:flex;gap:8px}.course-search input{min-width:0;flex:1;border:1px solid #dbe7d8;border-radius:13px;padding:13px 14px;font:inherit;font-size:13px;outline:none}.course-search button,.location-button{border:0;border-radius:13px;background:var(--green);color:#fff;font:inherit;font-weight:800;font-size:13px;padding:0 17px;cursor:pointer}.location-button{width:100%;height:46px;margin-top:10px;background:var(--mint);color:var(--green2)}.location-button span{font-size:20px;vertical-align:-2px;margin-right:5px}.location-status{font-size:11px;color:var(--muted);margin:12px 0 15px}.course-results{display:grid;gap:10px}.course-result{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px;background:var(--ivory);border-radius:16px}.course-result h3{font-size:14px;margin:0 0 4px}.course-result p{font-size:11px;color:var(--muted);margin:0}.course-distance{color:var(--green2);font-size:12px;font-weight:900;white-space:nowrap}.empty-result{text-align:center;color:var(--muted);font-size:13px;padding:22px}@media(max-width:800px){.course-dialog{padding:28px 20px}.course-search button{padding:0 13px}}
.detail-modal{display:none;position:fixed;inset:0;z-index:31}.detail-modal.is-open{display:block}.detail-button{border:0;border-radius:9px;background:var(--green);color:#fff;padding:8px 10px;font:inherit;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}.detail-dialog h2{font-size:28px;margin:0 0 5px;letter-spacing:-1px}.detail-meta{font-size:12px;color:var(--green2);font-weight:800}.detail-box,.api-details{margin-top:18px;border-radius:16px;padding:17px;background:var(--ivory);font-size:13px}.detail-box p,.api-details p{color:var(--muted);font-size:12px;line-height:1.7;margin:7px 0 0}.api-details{background:var(--mint)}.api-details img{display:block;width:100%;max-height:190px;object-fit:cover;border-radius:12px;margin-top:12px}.api-details a{display:inline-block;margin-top:12px;color:var(--green2);font-weight:800;font-size:12px}.loading-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);margin-right:7px;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.3}}
