/* Homepage only: navigation, authentication and map styles remain independent. */
#nearby-section{padding-top:48px;background:var(--paper)}
#nearby-section h2,#nearby-section h3,#nearby-section strong,#nearby-section button,#nearby-section .section-more{font-family:system-ui,-apple-system,"Noto Sans KR",sans-serif;letter-spacing:-.035em}
#nearby-section h2{font-size:27px;font-weight:700}






#nearby-section .home-section-head{margin-bottom:24px}
#nearby-section .course-card{border-radius:20px;border:1px solid var(--line);overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}
#nearby-section .course-card .card-visual{height:190px}
#nearby-section .course-card .card-body{padding:20px}
#nearby-section .course-card h3{font-size:18px;font-weight:650}
#nearby-section .course-card .course-metrics strong{font-size:16px;font-variant-numeric:tabular-nums}
#nearby-section .home-service-intro{padding:32px;border-radius:22px;background:var(--sand);border-color:transparent;box-shadow:none}
#nearby-section .service-intro-heading h2{font-size:29px;line-height:1.45}
#nearby-section .service-intro-item strong{font-size:17px}
#nearby-section .home-region-links{border-top:1px solid var(--line);margin-top:32px;padding-top:28px!important}
#nearby-section .home-region-links .chip{border-radius:10px;font:500 13px/1.6 system-ui,sans-serif;padding:10px 13px}
#nearby-section .home-ai-banner{border-radius:18px;box-shadow:none}
@media(hover:hover){#nearby-section .course-card:hover{box-shadow:0 14px 30px #203a2812;transform:translateY(-3px)}}
@media(max-width:700px){#nearby-section{padding-top:34px}#nearby-section h2{font-size:24px}#nearby-section .home-course-grid{grid-auto-columns:85%;gap:16px}#nearby-section .course-card .card-visual{height:180px}#nearby-section .course-card .card-body{padding:18px}#nearby-section .home-service-intro{padding:24px 20px}#nearby-section .service-intro-heading h2{font-size:25px}#nearby-section .home-region-links form{gap:8px!important}#nearby-section .home-region-links form label{width:100%;font-size:14px}#nearby-section .home-region-links form input{min-width:130px!important}#nearby-section .home-region-links form select{max-width:125px;font-size:13px!important}}

#nearby-section :is(a,button,input,select):focus-visible{outline:3px solid #bd8c42;outline-offset:4px}
@media(prefers-reduced-motion:reduce){#nearby-section .course-card{transition:none;transform:none}}


/* Service introduction: a quieter reading surface, scoped to this section. */
#nearby-section .home-service-intro{padding:40px;border:1px solid #e3d9cd;border-radius:26px;background:linear-gradient(135deg,#f4efe7,#eeede5);box-shadow:0 12px 38px rgba(62,49,33,.045);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px 36px;color:#283a30;font-family:"Noto Sans KR",sans-serif}
#nearby-section .home-service-intro :is(h2,strong,p,span,a){font-family:"Noto Sans KR",sans-serif}
#nearby-section .home-service-intro .service-intro-eyebrow{display:inline-block;color:#8a573b;font-size:12px;font-weight:600;line-height:1.7;letter-spacing:.015em}
#nearby-section .service-intro-heading h2{margin:14px 0 18px;color:#283a30;font-size:clamp(27px,2.4vw,32px);font-weight:700;line-height:1.5;letter-spacing:-.035em;word-break:keep-all}
#nearby-section .service-intro-heading p{color:#62675f;font-size:14px;font-weight:400;line-height:1.95;letter-spacing:-.015em;word-break:keep-all}
#nearby-section .service-intro-list{gap:12px;align-content:start}
#nearby-section .service-intro-item,#nearby-section .service-intro-item:first-child,#nearby-section .service-intro-item:last-child{padding:18px;border:1px solid #e7dfd4;background:rgba(255,255,255,.8);border-radius:16px;gap:14px;align-items:flex-start;transition:background .18s,border-color .18s}
#nearby-section .service-intro-number{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:9px;background:#f4e9dc;color:#966346;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}
#nearby-section .service-intro-item strong{color:#283a30;font-size:16px;font-weight:600;line-height:1.7;letter-spacing:-.02em;word-break:keep-all}
#nearby-section .service-intro-description{margin:7px 0 10px;color:#62675f;font-size:13px;font-weight:400;line-height:1.85;letter-spacing:-.012em;word-break:keep-all}
#nearby-section .service-intro-action{color:#925738;font-size:12px;font-weight:600;letter-spacing:-.01em}
#nearby-section .service-intro-note{padding-top:20px;border-color:#ddd6ca;color:#62675f;font-size:12px;font-weight:400;line-height:1.9;letter-spacing:-.01em;word-break:keep-all}
@media(hover:hover){#nearby-section .service-intro-item:hover{background:#fff;border-color:#ccb79f}}
@media(max-width:700px){#nearby-section .home-service-intro{padding:26px 18px;border-radius:22px;grid-template-columns:1fr;gap:24px;margin-top:32px}#nearby-section .service-intro-heading h2{font-size:27px;line-height:1.48;margin:12px 0 15px}#nearby-section .service-intro-heading p{font-size:14px;line-height:1.85}#nearby-section .service-intro-item,#nearby-section .service-intro-item:first-child,#nearby-section .service-intro-item:last-child{padding:16px 14px;gap:11px}#nearby-section .service-intro-item strong{font-size:15px}#nearby-section .service-intro-note{padding-top:18px}}
html[data-theme="dark"] #nearby-section .home-service-intro{background:linear-gradient(135deg,#242b25,#202722);border-color:#3e483e;color:#edf3ee;box-shadow:none}
html[data-theme="dark"] #nearby-section .service-intro-item{background:#19221c;border-color:#3e483e}
html[data-theme="dark"] #nearby-section :is(.service-intro-heading h2,.service-intro-item strong){color:#edf3ee}
html[data-theme="dark"] #nearby-section :is(.service-intro-heading p,.service-intro-description,.service-intro-note){color:#bac5ba}
html[data-theme="dark"] #nearby-section :is(.service-intro-eyebrow,.service-intro-action){color:#e2b895}
html[data-theme="dark"] #nearby-section .service-intro-number{background:#343a30;color:#e2b895}
@media(prefers-reduced-motion:reduce){#nearby-section .service-intro-item{transition:none}}

/* Useful preparation advice; affiliate buttons appear only for configured links. */
#nearby-section .walk-shopping{padding:28px 0 0;margin:36px 0;border:0;border-top:1px solid var(--finish-line);border-radius:0;background:transparent;}
#walk-shopping{scroll-margin-top:100px}
.walk-shopping-heading>span{color:var(--finish-muted);font-size:11px;font-weight:500;letter-spacing:.04em}
.walk-shopping-heading h2{font-size:24px;line-height:1.45;margin:8px 0}
.walk-shopping-heading p{font-size:13px;color:var(--muted-text);line-height:1.8;margin:0 0 18px}
.walk-shopping-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.walk-shopping-card{display:flex;flex-direction:column;min-width:0;background:var(--finish-surface);overflow:hidden;padding:0;border-radius:16px;border:1px solid var(--finish-line)}
.walk-shopping-body{display:flex;flex:1;flex-direction:column;padding:18px}
.walk-shopping-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;background:#fff;border-bottom:1px solid var(--line);padding:14px;box-sizing:border-box}
.walk-shopping-photo img{display:block;width:100%;height:100%;max-width:212px;max-height:212px;object-fit:contain}
.walk-shopping-photo .walk-shopping-icon{margin:0;font-size:40px}
.walk-shopping-icon{font-size:26px;color:var(--pine-deep);margin-bottom:10px}
.walk-shopping-card small{font-size:11px;color:var(--muted-text);line-height:1.6}
.walk-shopping-card h3{font-size:17px;margin:7px 0 10px;line-height:1.6;word-break:keep-all;overflow-wrap:anywhere}
.walk-shopping-card p{font-size:13px;line-height:1.85;margin:0 0 12px}
.walk-shopping-card .walk-shopping-check{font-size:12px;color:var(--muted-text);margin-bottom:18px}
.walk-shopping-card .walk-shopping-option,.walk-shopping-terms{font-size:12px;color:var(--muted-text);line-height:1.75}
.walk-shopping-card .walk-shopping-option{padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:12px}
.walk-shopping-terms{margin:14px 0 0}
.walk-shopping-link{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:auto;padding:8px 10px;border-radius:12px;background:var(--pine-deep);color:var(--paper);font-size:13px;font-weight:700;text-decoration:none;text-align:center}
.walk-shopping-disclosure{font-size:14px;font-weight:600;line-height:1.8;color:var(--pine-deep);background:var(--sand);padding:12px 14px;border:1px solid var(--line);border-radius:12px;margin:0 0 18px}
.walk-shopping-disclosure[hidden]{display:none!important}
.walk-shopping-guide{display:inline-flex;align-items:center;min-height:44px;margin-top:14px;color:var(--pine-deep);font-size:13px;font-weight:700}
.walk-shopping-featured{position:relative;border:1px solid var(--finish-line)}
.walk-shopping-photo{position:relative;aspect-ratio:auto;height:220px;padding:52px 20px 18px}
.walk-shopping-photo-badges{position:absolute;top:12px;left:10px;right:10px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.walk-shopping-badge{padding:5px 7px;border-radius:6px;font-size:10px;font-weight:600;line-height:1.5;letter-spacing:0;white-space:nowrap}
.walk-shopping-buyers-badge{background:#edf2ec;color:#365340;border:1px solid #dce5d9}
.walk-shopping-review-badge{background:#f5f5f1;color:#596358;border:1px solid #e4e5dc}
.walk-shopping-card .walk-shopping-proof-date{font-size:11px;line-height:1.7;color:var(--muted-text);margin-bottom:12px}
@media(max-width:360px){.walk-shopping-photo{height:220px;padding-top:66px}}
.walk-shopping-selection{font-size:12px;line-height:1.8;color:var(--muted-text);margin:0 0 16px}
.walk-shopping-swipe-hint{display:none;font-size:12px;color:var(--muted-text);margin:8px 0}
@media(max-width:600px){.walk-shopping-swipe-hint{display:block}}
.walk-shopping :is(a,button):focus-visible{outline:3px solid var(--clay);outline-offset:4px}
@media(max-width:600px){#nearby-section .walk-shopping{padding:24px 0 0}.walk-shopping-heading h2{font-size:21px}.walk-shopping-items{display:flex;overflow-x:auto;gap:12px;padding-bottom:8px;scroll-snap-type:x mandatory}.walk-shopping-card{flex:0 0 min(82%,300px);box-sizing:border-box;scroll-snap-align:center}.walk-shopping-link{min-height:48px}}

/* Photo-led region navigation, scoped to the homepage. */
#nearby-section .home-region-guides{margin:28px 0;padding:30px;border:1px solid var(--experience-line);border-radius:28px;background:var(--paper)}
#nearby-section .home-region-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--experience-muted)}
.home-region-eyebrow:before{content:'';width:6px;height:6px;border-radius:50%;background:#829778}
#nearby-section .home-region-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin:12px 0 24px}
#nearby-section .home-region-heading h2{font-size:30px;line-height:1.4;letter-spacing:-.04em;margin:0 0 10px;font-weight:700;color:var(--experience-text)}
#nearby-section .home-region-heading p{font-size:14px;line-height:1.8;color:var(--experience-muted);margin:0;max-width:520px}
#nearby-section .home-all-regions{display:inline-flex;align-items:center;gap:12px;min-height:44px;text-decoration:none;white-space:nowrap;font-size:13px;font-weight:600;color:var(--experience-text)}
.home-all-regions span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--experience-line);border-radius:50%;background:var(--experience-soft);font-size:17px}
.home-region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-region-card{display:block;min-width:0;text-decoration:none;background:var(--paper);border:1px solid var(--experience-line);border-radius:19px;overflow:hidden;box-shadow:0 4px 14px #263e3005;transition:transform .2s,box-shadow .2s;color:var(--experience-text)}
.home-region-card{padding:0;width:100%;text-align:left;font:inherit;cursor:pointer;appearance:none}
.home-region-card[aria-pressed="true"]{border-color:var(--pine-deep);box-shadow:0 0 0 2px var(--experience-soft)}
.home-region-guides [hidden]{display:none!important}
.home-region-select-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid var(--experience-line)}
.home-region-select-row label{font-size:13px;color:var(--experience-muted)}
.home-region-select-row select{min-height:46px;max-width:100%;padding:10px 12px;border:1px solid var(--experience-line);border-radius:11px;background:var(--paper);color:var(--experience-text);font:16px var(--experience-font)}
#nearby-section button.home-all-regions{border:0;background:transparent;padding:0;cursor:pointer;font-family:var(--experience-font)}
.home-course-results{margin-top:24px;padding-top:24px;border-top:1px solid var(--experience-line)}
.home-course-results #nearby-title{scroll-margin-top:90px}
.home-result-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#nearby-section .home-result-actions .home-all-regions{font-size:13px;min-height:44px}
#nearby-section .home-result-actions .home-all-regions span{display:none}
.home-region-fallback{display:flex;gap:10px;flex-wrap:wrap}
#nearby-section .home-course-results .home-section-head{margin-bottom:18px}
.home-course-filter-form{padding:18px;border:1px solid var(--experience-line);border-radius:16px;background:var(--experience-soft)}
.home-course-filter-form label{font-size:13px;color:var(--experience-text)}
.home-query-row>label{display:block;margin-bottom:8px}
.home-query-row>div{display:flex;gap:8px}
.home-course-filter-form input[type="search"]{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid var(--experience-line);border-radius:10px;background:var(--paper);color:var(--experience-text);font:16px var(--experience-font)}
.home-course-filter-form button,.home-results-more{min-height:46px;flex:none;border:1px solid var(--experience-line);border-radius:10px;padding:10px 15px;background:var(--pine-deep);color:var(--paper);font:600 13px var(--experience-font);cursor:pointer}
.home-filter-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;margin-top:14px;align-items:end}
.home-filter-row label{display:grid;gap:6px}
.home-filter-row select{width:100%;min-height:46px;min-width:0;padding:10px;border:1px solid var(--experience-line);border-radius:10px;background:var(--paper);color:var(--experience-text);font:16px var(--experience-font)}
.home-course-filter-form #home-filters-clear{background:var(--paper);color:var(--experience-text)}
.home-comfort-options{margin-top:14px;border-top:1px solid var(--experience-line)}
.home-comfort-options summary{cursor:pointer;min-height:44px;padding-top:8px;font-size:13px;color:var(--experience-text)}
.home-comfort-options fieldset{display:flex;flex-wrap:wrap;gap:8px 18px;border:0;padding:4px 0;margin:0}
.home-comfort-options legend{font-size:12px;color:var(--experience-muted);margin-bottom:4px}
.home-comfort-options label{display:flex;align-items:center;gap:8px;min-height:40px;cursor:pointer}
.home-comfort-options input{width:18px;height:18px;accent-color:var(--pine-deep);margin:0;flex:none}
#nearby-section .home-comfort-options p,#nearby-section .home-region-selection-note{font-size:12px;line-height:1.8;color:var(--experience-muted);margin:8px 0 0}
#nearby-section .home-result-count{font-size:13px;font-weight:600;line-height:1.7;color:var(--experience-text);margin:18px 0 12px}
.home-results-more{display:block;margin:12px auto 0;background:var(--experience-soft);color:var(--experience-text);min-width:160px}
.home-region-photo{position:relative;height:140px;overflow:hidden;background:var(--experience-soft)}
.home-region-photo img{width:100%;height:100%;object-fit:cover;display:block}
.home-region-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#182e285c)}
.home-photo-label{position:absolute;bottom:12px;left:14px;right:14px;z-index:1;color:#fff;font-size:11px;line-height:1.5;text-shadow:0 1px 3px #0008;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.home-region-body{padding:15px 17px 17px}
.home-region-title{display:flex;justify-content:space-between;align-items:center;gap:8px}
#nearby-section .home-region-title h3{font-size:21px;line-height:1.5;letter-spacing:-.025em;font-weight:700;margin:0;color:var(--experience-text)}
.home-region-arrow{display:grid;place-items:center;width:30px;height:30px;flex:none;background:var(--experience-soft);border-radius:50%;font-size:17px;color:var(--experience-text)}
#nearby-section .home-region-body p{font-size:13px;line-height:1.7;color:var(--experience-muted);margin:5px 0 12px}
.home-region-link{display:block;border-top:1px solid var(--experience-line);padding-top:10px;font-size:12px;color:var(--experience-muted)}
#nearby-section .home-region-note{display:flex;align-items:flex-start;gap:8px;padding-top:20px;font-size:12px;line-height:1.8;color:var(--experience-muted);margin:0}
.home-region-note b{display:grid;place-items:center;flex:none;border:1px solid var(--experience-line);border-radius:50%;width:17px;height:17px;font-size:11px;font-weight:500;margin-top:3px}
.home-region-credits{margin:16px 0 0;color:var(--experience-muted);font-size:12px;line-height:1.8}
.home-region-credits summary{cursor:pointer;min-height:36px;display:flex;align-items:center;gap:8px;list-style:none}
.home-region-credits summary::-webkit-details-marker{display:none}
.home-region-credits summary:before{content:'＋';font-size:16px}.home-region-credits[open] summary:before{content:'−'}
.home-region-credits ul{padding-left:18px;margin:0}.home-region-credits li+li{margin-top:8px}
.home-region-guides :is(a,summary):focus-visible{outline:3px solid var(--experience-accent);outline-offset:4px}
@media(hover:hover){.home-region-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #263e3010}}
@media(max-width:650px){
 #nearby-section .home-region-guides{padding:20px 16px;border-radius:23px}
 #nearby-section .home-region-heading{display:block;margin:12px 0 18px}
 #nearby-section .home-region-heading h2{font-size:24px;max-width:270px;word-break:keep-all}
 #nearby-section .home-region-heading p{font-size:13px}
 #nearby-section .home-all-regions{margin-top:10px;font-size:12px}
 .home-all-regions span{width:26px;height:26px}.home-region-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .home-region-photo{height:112px}.home-region-body{padding:12px}
 #nearby-section .home-region-title h3{font-size:18px}.home-region-arrow{width:25px;height:25px;font-size:15px}
 #nearby-section .home-region-body p{font-size:12px;word-break:keep-all;min-height:41px;margin:4px 0 8px}
 .home-region-link{font-size:12px;line-height:1.7;word-break:keep-all;min-height:48px}
 .home-photo-label{font-size:11px;left:10px;bottom:9px}
 .home-region-select-row{display:block}.home-region-select-row select{display:block;width:100%;margin-top:8px}
 .home-course-filter-form{padding:14px}.home-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-filter-row #home-filters-clear{grid-column:1/-1}
 .home-comfort-options fieldset{display:grid;gap:0}
 #nearby-section .home-region-note{padding-top:16px}
}
@media(prefers-reduced-motion:reduce){.home-region-card{transition:none}.home-region-card:hover{transform:none}}
#home-explore{scroll-margin-top:90px}
#home-explore[data-view="results"] .home-course-results{margin-top:0;padding-top:0;border-top:0}
#nearby-section .home-result-actions #home-region-reselect{min-height:48px;padding:12px 18px;border:1px solid var(--experience-text);border-radius:12px;background:var(--experience-text);color:var(--experience-paper,#fffaf3);font-size:14px;font-weight:700;line-height:1.5;white-space:nowrap;margin-top:0}
#home-region-reselect:focus-visible{outline:3px solid var(--experience-accent);outline-offset:4px}
footer.site-footer .footer-links{gap:6px 18px}
footer.site-footer .footer-links :is(a,button){min-height:44px;display:inline-flex;align-items:center;white-space:nowrap;font-size:14px;font-weight:600}
@media(max-width:400px){footer.site-footer .footer-links{gap:6px 14px}footer.site-footer .footer-links :is(a,button){font-size:13px}}
