:root{
  --ink:#102a3f;--ink2:#31536b;--muted:#6a8192;--line:#dfe9f0;
  --blue:#1676dc;--blue-deep:#0f4f8b;--sky:#eef7ff;--cream:#fbfaf6;
  --yellow:#ffd84b;--white:#fff;--paper:#fbfdff;--navy:#0d2b43;
  --max:1180px;--pad:clamp(20px,4vw,34px);
  --shadow:0 18px 48px rgba(14,43,67,.08);--shadow-lg:0 28px 70px rgba(14,43,67,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR","Segoe UI",sans-serif;letter-spacing:-.025em;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}
.container{width:min(var(--max),100%);margin:auto;padding-inline:var(--pad)}
.section{padding:clamp(76px,8.2vw,116px) 0;position:relative}
.section.soft{background:linear-gradient(180deg,#fbfdff,#f4f8fb)}
.section.warm{background:linear-gradient(180deg,#fff,#fbfaf6)}
.section.navy{background:var(--navy);color:#fff}
.rule{height:1px;background:var(--line)}
.eyebrow{font-size:10px;font-weight:900;letter-spacing:.2em;color:#7098b4;text-transform:uppercase}
.h2{margin:10px 0 14px;font-size:clamp(34px,4.6vw,58px);line-height:1.08;letter-spacing:-.055em}
.lead{margin:0;max-width:760px;font-size:clamp(15px,1.4vw,18px);color:var(--muted);line-height:1.82}
.lead.light{color:#c8d9e6}.small{font-size:13px;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 20px;border-radius:4px;border:1px solid transparent;font-weight:900;transition:.2s ease}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--blue);color:#fff;box-shadow:0 12px 24px rgba(22,118,220,.2)}
.btn.ghost{background:#fff;border-color:var(--line);color:var(--ink)}
.btn.dark{background:#112f47;color:#fff}
.btn.kakao{background:var(--yellow);color:#302700}
.link-arrow{display:inline-flex;align-items:center;gap:7px;font-weight:900;color:#285c82;margin-top:18px}
.link-arrow::after{content:'→'}

/* header */
.promo{background:#0c2a42;color:#fff;text-align:center;padding:8px 14px;font-size:12px}
.promo b{color:#ffe77b}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(223,233,240,.9)}
.header-in{height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand img{width:82px;height:auto}
.nav{display:flex;gap:22px;align-items:center;font-size:13px;font-weight:850;color:#4c6b80}
.nav a{padding:26px 0 22px;border-bottom:2px solid transparent}.nav a:hover,.nav a.active{color:var(--ink);border-bottom-color:var(--blue)}
.header-actions{display:flex;gap:8px;align-items:center}.social{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:900;background:#fff;color:#5a7688}
.menu-btn{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink)}
.mobile-menu{display:none;padding:12px var(--pad) 18px;border-top:1px solid var(--line);background:#fff}.mobile-menu.open{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-menu a{padding:12px 13px;border-radius:4px;background:#f5f9fc;font-size:13px;font-weight:800;color:#527088}

/* hero */
.home-hero{background:linear-gradient(180deg,#f6fbff 0,#fff 100%)}
.home-hero-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:64px;align-items:center;padding:72px 0 52px}
.home-hero h1{font-size:clamp(48px,5.8vw,76px);line-height:1.02;letter-spacing:-.067em;margin:14px 0 18px;max-width:620px}
.home-hero h1 em{font-style:normal;color:var(--blue)}
.hero-sub{font-size:clamp(18px,1.7vw,22px);font-weight:900;color:#2e5269;margin:0 0 10px}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.hero-photo{position:relative;min-height:610px;border-radius:6px;overflow:hidden;box-shadow:var(--shadow-lg)}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(7,31,48,.18))}
.hero-caption{position:absolute;z-index:2;left:18px;bottom:18px;padding:10px 13px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border-radius:4px;font-size:11px;font-weight:850;color:#3e6077}
.hero-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hero-strip>div{padding:24px 20px;border-right:1px solid var(--line)}.hero-strip>div:last-child{border-right:0}.hero-strip small{display:block;color:#87a2b3;font-size:9px;font-weight:900;letter-spacing:.15em}.hero-strip b{display:block;margin-top:6px;font-size:15px}.hero-strip span{display:block;margin-top:3px;font-size:12px;color:#70899b}

/* editorial split */
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(38px,6vw,80px);align-items:center}
.split.reverse{grid-template-columns:1.1fr .9fr}.split.reverse>.media{order:2}
.media{position:relative;min-height:520px;overflow:hidden;border-radius:6px;box-shadow:var(--shadow)}.media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.media-note{position:absolute;left:16px;right:16px;bottom:16px;padding:15px 17px;border-radius:4px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);font-size:13px;color:#547084}.media-note b{display:block;color:var(--ink);font-size:15px;margin-bottom:3px}
.philosophy-flow{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.philosophy-flow span{padding:9px 12px;border:1px solid var(--line);background:#fff;border-radius:4px;font-size:12px;font-weight:850;color:#506f84}.philosophy-flow i{font-style:normal;display:grid;place-items:center;color:#9aafbd}

/* compare */
.compare-wrap{padding:34px;border:1px solid var(--line);border-radius:6px;background:rgba(255,255,255,.82);box-shadow:var(--shadow)}
.compare-head{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end}.compare-photos{display:flex;gap:10px}.compare-photos figure{margin:0;width:118px;background:#fff;padding:8px 8px 13px;box-shadow:0 10px 25px rgba(13,43,67,.12);transform:rotate(-3deg)}.compare-photos figure:nth-child(2){transform:rotate(4deg);margin-bottom:10px}.compare-photos img{width:100%;aspect-ratio:4/5;object-fit:cover}.compare-photos figcaption{font-size:10px;font-weight:900;color:#5a7386;text-align:center;margin-top:7px}
.compare-grid{display:grid;grid-template-columns:1fr 72px 1fr;gap:14px;margin-top:28px}.compare-panel{padding:24px;border:1px solid var(--line);background:#fff}.compare-panel.dim{background:#f5f7f8}.compare-panel h3{margin:0 0 14px;font-size:22px}.compare-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}.compare-panel li{position:relative;padding-left:24px;color:#4f6c80;font-size:14px}.compare-panel li::before{content:'•';position:absolute;left:3px;color:#84949f;font-weight:1000}.compare-panel.good li::before{content:'✓';color:var(--blue)}.vs{display:grid;place-items:center}.vs span{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#143b5c;color:#fff;font-size:12px;font-weight:1000}
.compare-foot{margin-top:20px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:22px;align-items:center}.compare-foot strong{font-size:clamp(21px,2.5vw,32px);line-height:1.35}.compare-foot p{margin:0;max-width:520px;color:var(--muted);font-size:14px}

/* lesson cards */
.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.lesson-card{padding:26px;border-top:3px solid #d8e7f2;background:#fff;border-bottom:1px solid var(--line)}.lesson-card.featured{border-top-color:var(--blue);background:linear-gradient(180deg,#fff,#f8fbff)}.lesson-card small{font-size:10px;font-weight:900;letter-spacing:.16em;color:#86a2b4}.lesson-card h3{margin:8px 0 8px;font-size:34px}.lesson-card p{margin:0;color:var(--muted);font-size:14px}.lesson-card ul{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px}.lesson-card li{font-size:13px;color:#506e82;position:relative;padding-left:14px}.lesson-card li::before{content:'—';position:absolute;left:0;color:#92a9b8}

/* four stage */
.stage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stage{padding:26px 22px;border-right:1px solid var(--line)}.stage:last-child{border-right:0}.stage small{font-size:10px;font-weight:900;color:#87a2b3;letter-spacing:.15em}.stage h3{margin:8px 0 8px;font-size:24px}.stage p{margin:0;font-size:13px;color:var(--muted)}

/* system */
.system-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.system-panel{padding:30px;background:#fff;border:1px solid var(--line)}.system-panel.dark{background:#102f47;color:#fff;border-color:#102f47}.system-panel h3{margin:0 0 10px;font-size:28px;line-height:1.25}.system-panel p{margin:0;color:var(--muted)}.system-panel.dark p{color:#c7d8e4}.system-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}.system-list li{position:relative;padding-left:18px;font-size:14px}.system-list li::before{content:'·';position:absolute;left:2px;font-weight:1000;color:#72b9ef}
.match-types{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.match-types span{padding:8px 10px;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:12px;font-weight:800}

/* teaser grids */
.teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.teaser{position:relative;min-height:320px;overflow:hidden;background:#eaf2f8}.teaser img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.teaser::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,25,39,.04) 30%,rgba(5,25,39,.68))}.teaser-body{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;color:#fff}.teaser-body small{font-size:10px;font-weight:900;letter-spacing:.14em}.teaser-body h3{font-size:25px;line-height:1.2;margin:7px 0}.teaser-body p{font-size:13px;margin:0;color:#e6eef4}

/* pricing */
.price-hero{padding:72px 0 36px;background:linear-gradient(180deg,#f6fbff,#fff)}
.price-summary{display:flex;align-items:end;justify-content:space-between;gap:24px}.price-summary h1{font-size:clamp(44px,5vw,68px);margin:10px 0 8px;line-height:1.04;letter-spacing:-.06em}.price-summary p{max-width:610px;color:var(--muted);margin:0}.price-philosophy{max-width:360px;padding:18px 20px;border-left:3px solid var(--blue);background:#f7fbff;font-size:14px;color:#4e6d81}
.price-table-wrap{margin-top:30px;border:1px solid #cbdbe6;overflow:hidden;background:#fff}.price-table{width:100%;border-collapse:collapse}.price-table th,.price-table td{border-right:1px solid #d9e5ed;border-bottom:1px solid #d9e5ed;padding:17px 16px;text-align:left}.price-table th:last-child,.price-table td:last-child{border-right:0}.price-table tr:last-child td{border-bottom:0}.price-table thead th{background:#eef7fd;font-size:13px;color:#3c6178}.price-table td:first-child{font-weight:950;font-size:18px}.price-table strong{font-size:18px}.price-table .sub{font-size:12px;color:var(--muted)}
.package-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.package{padding:26px;border:1px solid var(--line);background:#fff}.package h3{font-size:26px;margin:0 0 4px}.package .desc{font-size:13px;color:var(--muted);margin-bottom:18px}.package-row{display:grid;grid-template-columns:56px 1fr auto;gap:12px;padding:12px 0;border-top:1px solid var(--line);align-items:center}.package-row b{font-size:14px}.package-row span{font-size:12px;color:var(--muted)}.package-row strong{font-size:18px}
.cost-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.cost-box{padding:24px;border:1px solid var(--line)}.cost-box h3{margin:0 0 12px;font-size:22px}.cost-box ul{margin:0;padding-left:18px;color:#526f82;font-size:14px;display:grid;gap:8px}

/* subpage hero */
.subhero{padding:62px 0 44px;background:linear-gradient(180deg,#f7fbff,#fff)}
.subhero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.subhero h1{font-size:clamp(43px,5vw,66px);line-height:1.04;letter-spacing:-.06em;margin:12px 0 16px}.subhero p{margin:0;color:var(--muted);font-size:17px;max-width:610px}.subhero .media{min-height:430px}
.sub-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}

/* curriculum accordion */
.curr-list{margin-top:30px;border-top:1px solid var(--line)}.curr-item{border-bottom:1px solid var(--line)}.curr-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:90px 1fr auto;gap:18px;align-items:center;padding:24px 4px}.curr-item summary::-webkit-details-marker{display:none}.curr-no{font-size:11px;font-weight:900;color:#82a0b4;letter-spacing:.12em}.curr-item h3{margin:0;font-size:27px}.curr-item summary span:last-child{font-size:28px;color:#7e9aae}.curr-body{padding:0 4px 28px 108px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.curr-body p{margin:0;color:var(--muted)}.tech-list{display:flex;flex-wrap:wrap;gap:7px}.tech-list span{padding:8px 10px;border:1px solid var(--line);background:#f9fbfd;font-size:12px;font-weight:800}.goal{padding:15px 17px;background:#f2f8fc;border-left:3px solid var(--blue);font-size:14px;color:#4b6d82}

/* process / guide */
.process{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:30px}.process article{padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.process small{font-size:10px;font-weight:900;color:#86a2b4;letter-spacing:.14em}.process b{display:block;font-size:18px;margin:7px 0}.process p{margin:0;color:var(--muted);font-size:13px}
.guide-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:28px}.guide-list article{padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.guide-list h3{margin:0 0 6px;font-size:19px}.guide-list p{margin:0;font-size:14px;color:var(--muted)}

/* review / event */
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.review-card{border:1px solid var(--line);background:#fff;overflow:hidden}.review-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.review-body{padding:20px}.review-meta{font-size:11px;font-weight:900;color:#6f91a8;letter-spacing:.05em}.review-body p{color:#526e82;font-size:14px;margin:10px 0 0}.review-placeholder{padding:26px;border:1px dashed #b8cad6;background:#f8fbfd;color:#5d7789;text-align:center;margin-top:24px}
.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.event-card{border:1px solid var(--line);background:#fff;overflow:hidden}.event-card .event-visual{height:230px;position:relative;overflow:hidden}.event-card .event-visual img{width:100%;height:100%;object-fit:cover}.event-card .event-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(8,32,49,.25))}.event-body{padding:22px}.event-body small{font-size:10px;font-weight:900;letter-spacing:.14em;color:#7897ab}.event-body h3{font-size:23px;margin:7px 0}.event-body p{font-size:13px;color:var(--muted);margin:0}.event-status{display:inline-flex;margin-top:15px;padding:6px 9px;border-radius:4px;background:#eef7ff;color:#226fb6;font-size:11px;font-weight:900}

/* faq policy notice */
.faq{margin-top:26px}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;padding:19px 4px;font-weight:900;position:relative;padding-right:34px}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';position:absolute;right:4px;font-size:22px;color:#8099aa}.faq details[open] summary::after{content:'−'}.faq p{margin:0;padding:0 4px 20px;color:#5e788b;font-size:14px;max-width:850px}
.policy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:28px}.policy-grid article{padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.policy-grid h3{margin:0 0 7px;font-size:20px}.policy-grid p{margin:0;color:var(--muted);font-size:14px}
.notice-list{margin-top:28px;border-top:1px solid var(--line)}.notice-row{display:grid;grid-template-columns:90px 1fr 110px;gap:18px;padding:18px 4px;border-bottom:1px solid var(--line);align-items:center}.notice-row small{color:#7f99aa}.notice-row b{font-size:15px}.notice-row time{font-size:12px;color:#7f99aa;text-align:right}

/* contact */
.contact{background:#102f47;color:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px}.contact h2{font-size:clamp(38px,4.5vw,58px);line-height:1.08;margin:10px 0 14px}.contact p{color:#c7d8e4;margin:0}.contact-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.form{background:#fff;color:var(--ink);padding:28px;border-radius:6px}.form h3{margin:0 0 4px;font-size:26px}.form-sub{font-size:13px;color:var(--muted);margin:0 0 18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:6px}.field.full,.agree,.submit,.status{grid-column:1/-1}.field label{font-size:12px;font-weight:900}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:4px;padding:12px 13px;outline:none}.field textarea{min-height:100px;resize:vertical}.agree{font-size:12px;color:#657f91}.submit{display:flex;align-items:center;gap:12px}.status{display:none;padding:12px;border-radius:4px;font-size:13px}.status.success{display:block;background:#edf8f2;color:#177245}.status.error{display:block;background:#fff0f2;color:#b42338}

/* footer + quick */
footer{background:#0a2235;color:#c7d6e0;padding:34px 0 105px}.footer-grid{display:flex;justify-content:space-between;gap:24px}.footer-brand{font-weight:1000;font-size:20px;color:#fff}.footer-links{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}.footer-links a{font-size:13px;color:#e6eef4}
.quick{position:fixed;right:17px;top:50%;transform:translateY(-50%);z-index:40;display:grid;gap:9px}.quick a{width:60px;min-height:60px;border-radius:6px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);display:grid;place-items:center;text-align:center;font-size:11px;font-weight:900;color:#597386}.quick .k{background:#ffe04d;color:#342a00}.quick .c{background:var(--blue);color:#fff}
.mobile-cta{display:none}.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,12px);opacity:0;transition:.2s;background:#102f47;color:#fff;padding:11px 15px;border-radius:4px;font-size:12px;z-index:80}.toast.show{opacity:1;transform:translate(-50%,0)}

/* popup */
.popup-layer{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:18px}.popup-layer[hidden]{display:none}.popup-back{position:absolute;inset:0;background:rgba(5,21,32,.55);backdrop-filter:blur(4px)}.popup{position:relative;z-index:2;width:min(850px,100%);background:#fff;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 30px 80px rgba(0,0,0,.24)}.popup-image{min-height:430px;background:url('kid_orange.webp') center/cover no-repeat}.popup-body{padding:34px}.popup-close{position:absolute;right:12px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:#102f47;color:#fff;font-size:24px;z-index:3}.popup-body small{font-weight:900;color:#6c91aa;letter-spacing:.12em}.popup-body h2{font-size:34px;line-height:1.15;margin:12px 0}.popup-body p{color:var(--muted);font-size:14px}.popup-price{font-size:34px;font-weight:1000;margin:18px 0 4px}.popup-note{font-size:12px;color:#728b9c}.popup-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.hide24{border:0;background:transparent;padding:12px 0 0;color:#728b9c;font-size:12px;font-weight:800}

/* reveal */
.reveal{opacity:1;transform:none}.reveal.in{opacity:1;transform:none}

@media(max-width:1000px){.nav,.header-actions .social,.header-actions .btn{display:none}.menu-btn{display:grid;place-items:center}.home-hero-grid,.subhero-grid,.split,.split.reverse,.contact-grid{grid-template-columns:1fr}.split.reverse>.media{order:0}.hero-photo{min-height:520px}.hero-strip{grid-template-columns:1fr 1fr}.compare-head{grid-template-columns:1fr}.compare-photos{justify-content:flex-start}.compare-grid{grid-template-columns:1fr}.vs{padding:2px}.lesson-grid,.teaser-grid,.event-grid,.review-grid{grid-template-columns:1fr 1fr}.stage-grid{grid-template-columns:1fr 1fr}.stage:nth-child(2){border-right:0}.stage:nth-child(-n+2){border-bottom:1px solid var(--line)}.system-grid,.package-grid,.cost-grid{grid-template-columns:1fr}.process{grid-template-columns:1fr 1fr}.quick{display:none}.mobile-cta{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:45;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid var(--line)}.mobile-cta a{min-height:46px;border-radius:4px;display:grid;place-items:center;font-size:13px;font-weight:900}.mobile-cta a:first-child{border:1px solid var(--line);background:#fff}.mobile-cta a:last-child{background:var(--blue);color:#fff}footer{padding-bottom:100px}}
@media(max-width:680px){:root{--pad:20px}.section{padding:72px 0}.brand img{width:74px}.home-hero-grid{padding:38px 0 34px;gap:30px}.home-hero h1{font-size:44px}.hero-photo{min-height:420px;border-radius:6px}.hero-strip{grid-template-columns:1fr}.hero-strip>div{border-right:0;border-bottom:1px solid var(--line);padding:17px 10px}.hero-strip>div:last-child{border-bottom:0}.h2{font-size:35px}.media{min-height:360px;border-radius:6px}.compare-wrap{padding:22px}.compare-photos figure{width:92px}.compare-foot{display:block}.compare-foot p{margin-top:12px}.lesson-grid,.teaser-grid,.event-grid,.review-grid,.stage-grid{grid-template-columns:1fr}.stage{border-right:0;border-bottom:1px solid var(--line)}.stage:last-child{border-bottom:0}.subhero{padding:38px 0 24px}.subhero h1{font-size:42px}.subhero .media{min-height:340px}.price-summary{display:block}.price-philosophy{margin-top:22px}.price-table{min-width:760px}.price-table-wrap{overflow:auto}.curr-item summary{grid-template-columns:62px 1fr auto;padding:20px 2px}.curr-item h3{font-size:21px}.curr-body{padding:0 2px 24px;grid-template-columns:1fr}.process,.guide-list,.policy-grid{grid-template-columns:1fr}.notice-row{grid-template-columns:70px 1fr}.notice-row time{display:none}.form{padding:20px}.form-grid{grid-template-columns:1fr}.field.full,.agree,.submit,.status{grid-column:auto}.footer-grid{display:grid}.footer-links{justify-content:flex-start}.popup-layer{align-items:end;padding:8px}.popup{grid-template-columns:1fr;max-height:calc(100vh - 16px);overflow:auto}.popup-image{min-height:180px}.popup-body{padding:24px 20px}.popup-body h2{font-size:29px}.compare-photos{overflow:hidden}.compare-photos figure:nth-child(3){display:none}}


/* v35.2 reservation guidance + service/store enhancements */
.reserve-ticker{overflow:hidden;background:#eef7ff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}
.reserve-ticker::before,.reserve-ticker::after{content:"";position:absolute;top:0;bottom:0;width:44px;z-index:2;pointer-events:none}
.reserve-ticker::before{left:0;background:linear-gradient(90deg,#eef7ff,rgba(238,247,255,0))}
.reserve-ticker::after{right:0;background:linear-gradient(270deg,#eef7ff,rgba(238,247,255,0))}
.reserve-track{display:flex;width:max-content;align-items:center;gap:42px;padding:11px 0;animation:tomsTicker 30s linear infinite;will-change:transform}
.reserve-ticker:hover .reserve-track{animation-play-state:paused}
.reserve-item{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:12px;color:#4b6b80;font-weight:750}
.reserve-item b{color:var(--ink);font-weight:950}.reserve-dot{width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px rgba(22,118,220,.08)}
@keyframes tomsTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.service-benefit-strip{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:#fff}
.service-benefit-strip>div{padding:18px 20px;border-right:1px solid var(--line)}.service-benefit-strip>div:last-child{border-right:0}
.service-benefit-strip small{display:block;font-size:9px;font-weight:900;letter-spacing:.14em;color:#88a2b3}.service-benefit-strip b{display:block;margin-top:5px;font-size:15px}.service-benefit-strip span{display:block;margin-top:3px;font-size:11px;color:#70899b}.service-benefit-strip .free{color:var(--blue)}
.btn.store{background:#03c75a;color:#fff;box-shadow:0 12px 24px rgba(3,199,90,.14)}
.btn.store:hover{background:#02b653}
.quick .store{background:#03c75a;color:#fff;border-color:#03c75a}
.mobile-cta .store{background:#03c75a!important;color:#fff!important;border-color:#03c75a!important}
.reserve-nudge{margin-top:22px;padding:14px 16px;border-left:3px solid var(--blue);background:#f7fbff;color:#547084;font-size:13px}.reserve-nudge b{color:var(--ink)}
@media(max-width:1000px){.service-benefit-strip{grid-template-columns:1fr 1fr}.header-actions .store{display:none}}
@media(max-width:680px){.reserve-track{gap:28px;animation-duration:24s}.reserve-item{font-size:11px}.service-benefit-strip{grid-template-columns:1fr 1fr}.service-benefit-strip>div{padding:15px 12px}.service-benefit-strip>div:nth-child(2){border-right:0}.service-benefit-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}

.cost-box li b{color:var(--blue)}
.reserve-nudge{line-height:1.65}


/* v35.5 reviews enhancement */
.review-grid-extended{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.review-grid-home{margin-top:20px}
.review-card{
  background:#fff;
  border:1px solid #dfe6ee;
  border-radius:6px;
  padding:24px 22px;
  box-shadow:0 12px 30px rgba(16,42,63,.05);
}
.review-card h3{
  margin:10px 0 10px;
  font-size:20px;
  line-height:1.35;
  color:#173a59;
}
.review-card p{
  margin:0;
  color:#596c7a;
  line-height:1.7;
  font-size:14px;
}
.stars{
  color:#ff9d00;
  font-weight:800;
  letter-spacing:.04em;
  font-size:14px;
}
.review-meta{
  display:inline-block;
  margin-top:14px;
  font-size:12px;
  color:#6f8290;
  background:#f2f6fa;
  padding:8px 10px;
  border-radius:4px;
}
.photo-review-wrap,
.inline-photo-review{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:center;
  margin-top:28px;
}
.photo-review-image img,
.inline-photo-review__img img{
  width:100%;
  display:block;
  border-radius:6px;
  border:1px solid #dde6ee;
  box-shadow:0 18px 40px rgba(16,42,63,.08);
}
.photo-review-copy,
.inline-photo-review__copy{
  background:#fff;
  border:1px solid #dfe6ee;
  border-radius:6px;
  padding:28px;
  box-shadow:0 12px 30px rgba(16,42,63,.05);
}
.photo-review-copy h3,
.inline-photo-review__copy h3{
  margin:12px 0;
  font-size:28px;
  line-height:1.35;
  color:#173a59;
}
.photo-review-copy p,
.inline-photo-review__copy p{
  color:#596c7a;
  line-height:1.8;
  margin:0;
}
.review-bullets{
  margin:18px 0 0;
  padding-left:18px;
  color:#445866;
}
.review-bullets li{margin:8px 0}
@media (max-width: 960px){
  .review-grid-extended{grid-template-columns:1fr 1fr}
  .photo-review-wrap,
  .inline-photo-review{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .review-grid-extended{grid-template-columns:1fr}
  .photo-review-copy h3,
  .inline-photo-review__copy h3{font-size:22px}
}


/* v35.6 quality positioning */
.quality-check-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:26px;
}
.quality-check-grid article{
  background:#fff;
  border:1px solid #dfe6ee;
  border-radius:6px;
  padding:24px;
}
.quality-check-grid span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  color:#7691a5;
}
.quality-check-grid h3{
  margin:8px 0;
  color:#173a59;
  font-size:20px;
}
.quality-check-grid p{
  margin:0;
  color:#60717f;
  font-size:14px;
  line-height:1.7;
}
.toms-standard-box{
  margin-top:18px;
  padding:26px 28px;
  border-radius:6px;
  background:#eef7ff;
  border:1px solid #d6e8f8;
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:24px;
  align-items:start;
}
.toms-standard-box h3{
  margin:8px 0 0;
  color:#173a59;
  font-size:25px;
  line-height:1.35;
}
.toms-standard-box ul{
  margin:0;
  padding-left:19px;
  columns:2;
  column-gap:28px;
  color:#455b6a;
}
.toms-standard-box li{margin:8px 0;break-inside:avoid}
@media(max-width:760px){
 .quality-check-grid{grid-template-columns:1fr}
 .toms-standard-box{grid-template-columns:1fr}
 .toms-standard-box ul{columns:1}
}


/* v35.7 review screenshot enhancement */
.review-keyword-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:22px;
}
.review-keyword-row span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:4px;
  background:#fff;
  border:1px solid #dfe6ee;
  color:#4d6678;
  font-size:13px;
  font-weight:700;
}
.review-shot-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
  align-items:start;
}
.review-shot-grid-home{
  margin-top:24px;
}
.review-shot-card{
  background:#fff;
  border:1px solid #dfe6ee;
  border-radius:6px;
  overflow:hidden;
  box-shadow:0 12px 30px rgba(16,42,63,.06);
}
.review-shot-card img{
  width:100%;
  display:block;
}
.review-proof-box{
  margin-top:20px;
  padding:26px 28px;
  border-radius:6px;
  background:#fff;
  border:1px solid #dfe6ee;
  display:grid;
  grid-template-columns:.85fr 1.15fr auto;
  gap:22px;
  align-items:center;
}
.review-proof-box h3{
  margin:8px 0 0;
  color:#173a59;
  font-size:25px;
  line-height:1.35;
}
.review-proof-box ul{
  margin:0;
  padding-left:18px;
  color:#4a6070;
}
.review-proof-box li{margin:8px 0}
.proof-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
}
.proof-card{
  background:#fff;
  border:1px solid #dfe6ee;
  border-radius:6px;
  padding:24px;
  box-shadow:0 12px 30px rgba(16,42,63,.05);
}
.proof-card span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  color:#7691a5;
}
.proof-card h3{
  margin:8px 0 10px;
  color:#173a59;
  font-size:22px;
  line-height:1.35;
}
.proof-card p{
  margin:0;
  color:#60717f;
  font-size:14px;
  line-height:1.75;
}
@media(max-width:980px){
  .review-shot-grid{grid-template-columns:1fr 1fr}
  .review-proof-box{grid-template-columns:1fr}
}
@media(max-width:700px){
  .review-shot-grid,
  .proof-grid{grid-template-columns:1fr}
  .review-proof-box h3{font-size:22px}
}


/* v35.8 copy + real review presentation */
.compact-head{align-items:end}
.short-copy{max-width:430px;font-size:16px!important;font-weight:750;line-height:1.55!important;color:#577184!important}
.review-screenshot-feature{margin-top:28px;background:#fff;border:1px solid #dce5ec;border-radius:6px;padding:12px;box-shadow:0 18px 42px rgba(16,42,63,.08)}
.review-screenshot-feature img{width:100%;display:block;border-radius:4px}
.review-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.review-mini{background:#fff;border:1px solid #dfe6ee;border-radius:4px;padding:20px 18px}
.review-mini p{margin:9px 0 8px;font-size:16px;line-height:1.5;font-weight:800;color:#173a59}
.review-mini small{color:#7a8e9e}
.review-real-section{padding-top:54px}
.review-real-list{display:grid;grid-template-columns:1fr;gap:26px}
.review-real-card{width:100%;background:#fff;border:1px solid #dce5ec;border-radius:6px;padding:16px;box-shadow:0 18px 44px rgba(16,42,63,.07)}
.review-real-label{margin:2px 4px 12px;color:#7891a3;font-size:10px;font-weight:900;letter-spacing:.14em}
.review-real-card img{width:100%;display:block;border-radius:4px}
.review-real-card:not(.review-real-photo) img{min-height:220px;object-fit:contain;object-position:left center;background:#fff}
.review-real-photo img{max-height:none;object-fit:contain}
.review-quote-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px}
.review-quote{background:#fff;border:1px solid #dfe6ee;border-radius:4px;padding:21px 19px}
.review-quote blockquote{margin:10px 0 12px;color:#173a59;font-size:17px;line-height:1.55;font-weight:850}
.review-quote span{display:inline-flex;padding:6px 9px;border-radius:4px;background:#f1f6fa;color:#71899a;font-size:11px;font-weight:800}
@media(max-width:980px){.review-mini-grid,.review-quote-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.review-mini-grid,.review-quote-grid{grid-template-columns:1fr}.review-real-card{padding:8px;border-radius:4px}.review-real-card img{border-radius:4px}.review-real-card:not(.review-real-photo) img{min-height:0}.short-copy{font-size:15px!important}}


/* v35.9 concise reviews */
.compact-head{align-items:end}
.short-copy{max-width:430px;font-size:16px!important;font-weight:750;line-height:1.55!important;color:#577184!important}
.review-home-feature{margin-top:28px;background:#fff;border:1px solid #dce5ec;border-radius:6px;padding:14px;box-shadow:0 18px 42px rgba(16,42,63,.08)}
.review-home-feature img{width:100%;display:block;border-radius:4px}
.review-mini-grid-home{margin-top:18px}
.review-note-box{margin-top:18px;background:#fff;border:1px solid #dfe6ee;border-radius:6px;padding:22px 24px;box-shadow:0 12px 30px rgba(16,42,63,.05)}
.review-note-box strong{display:block;color:#173a59;font-size:20px;line-height:1.4}
.review-note-box p{margin:9px 0 0;color:#60717f;line-height:1.7}
.review-real-section{padding-top:54px}
.review-real-list{display:grid;grid-template-columns:1fr;gap:26px;margin-top:10px}
.review-real-card{width:100%;background:#fff;border:1px solid #dce5ec;border-radius:6px;padding:16px;box-shadow:0 18px 44px rgba(16,42,63,.07)}
.review-real-label{margin:2px 4px 12px;color:#7891a3;font-size:10px;font-weight:900;letter-spacing:.14em}
.review-real-card img{width:100%;display:block;border-radius:4px}
.review-real-card:not(.review-real-photo) img{min-height:240px;object-fit:contain;object-position:left center;background:#fff}
.review-real-photo img{object-fit:contain}
.review-quote-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px}
.review-quote{background:#fff;border:1px solid #dfe6ee;border-radius:4px;padding:21px 19px}
.review-quote blockquote{margin:10px 0 12px;color:#173a59;font-size:17px;line-height:1.55;font-weight:850}
.review-quote span{display:inline-flex;padding:6px 9px;border-radius:4px;background:#f1f6fa;color:#71899a;font-size:11px;font-weight:800}
.review-proof-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.review-proof-strip article{background:#fff;border:1px solid #dfe6ee;border-radius:6px;padding:22px 20px;box-shadow:0 12px 30px rgba(16,42,63,.05)}
.review-proof-strip strong{display:block;color:#173a59;font-size:18px;margin-bottom:8px}
.review-proof-strip span{display:block;color:#60717f;line-height:1.7}
@media(max-width:980px){.review-quote-grid{grid-template-columns:1fr 1fr}.review-proof-strip{grid-template-columns:1fr}.review-mini-grid-home{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.short-copy{font-size:15px!important}.review-real-card{padding:8px;border-radius:4px}.review-real-card img{border-radius:4px}.review-real-card:not(.review-real-photo) img{min-height:0}.review-quote-grid,.review-mini-grid-home{grid-template-columns:1fr}}


/* v35.10 review wall layout */
.review-wall{display:grid;gap:18px;align-items:start}
.review-wall-home{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px}
.review-wall-full{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:26px}
.wall-card{position:relative;background:#fff;border:1px solid #dce5ec;border-radius:6px;padding:14px;box-shadow:0 18px 44px rgba(16,42,63,.08);transition:transform .2s ease, box-shadow .2s ease}
.wall-card:hover{transform:translateY(-3px) rotate(0deg)!important;box-shadow:0 24px 52px rgba(16,42,63,.12)}
.wall-card img{width:100%;display:block;border-radius:4px}
.wall-pin{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:14px;height:14px;border-radius:50%;background:linear-gradient(180deg,#ffb3b3,#ef6b6b);box-shadow:0 2px 4px rgba(0,0,0,.18)}
.tilt-left{transform:rotate(-2deg)}
.tilt-right{transform:rotate(2deg)}
.feature-card{grid-row:span 2}
.wide-card{grid-column:span 1}
.medium-card,.small-card{grid-column:span 1}
.review-wall-full .feature-card img{min-height:420px;object-fit:cover;object-position:top center}
.review-wall-full .wide-card img,.review-wall-full .medium-card img{min-height:250px;object-fit:contain;object-position:left top;background:#fff}
.review-wall-home .feature-card img{min-height:330px;object-fit:cover;object-position:top center}
.review-wall-home .small-card img{min-height:190px;object-fit:contain;object-position:left top;background:#fff}
.compact-mini-grid{margin-top:18px}
.compact-mini-grid .review-mini p{font-size:15px}
@media(max-width:980px){
  .review-wall-home,.review-wall-full{grid-template-columns:1fr 1fr}
  .review-wall-full .feature-card{grid-row:auto}
}
@media(max-width:680px){
  .review-wall-home,.review-wall-full{grid-template-columns:1fr}
  .tilt-left,.tilt-right{transform:none}
  .review-wall-full .feature-card img,.review-wall-home .feature-card img,.review-wall-home .small-card img,.review-wall-full .wide-card img,.review-wall-full .medium-card img{min-height:0}
}


/* v35.11 readable review wall */
.review-wall-readable{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px;align-items:start}
.readable-wall{grid-template-columns:1.05fr .95fr;gap:22px;align-items:start}
.home-feature-card{grid-row:span 2}
.home-feature-card img{min-height:360px;object-fit:cover;object-position:top center}
.home-wide-card img{min-height:250px;object-fit:contain;object-position:left top;background:#fff}
.readable-card img{min-height:300px;object-fit:contain;object-position:left top;background:#fff}
.readable-photo-card img{min-height:520px;object-fit:cover;object-position:top center;background:#fff}
.review-wall-readable .wall-card,
.readable-wall .wall-card{padding:16px;border-radius:6px}
.review-wall-readable .wall-card img,
.readable-wall .wall-card img{border-radius:4px}
.review-wall-readable .wall-card:hover,
.readable-wall .wall-card:hover{transform:translateY(-3px) rotate(0deg)!important}
@media(max-width:1100px){
  .review-wall-readable{grid-template-columns:1fr}
  .readable-wall{grid-template-columns:1fr}
  .home-feature-card{grid-row:auto}
}
@media(max-width:680px){
  .readable-card img,.readable-photo-card img,.home-feature-card img,.home-wide-card img{min-height:0}
}


/* v35.12 full-readable review gallery */
.home-review-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px;align-items:start}
.review-paper{position:relative;background:#fff;border:1px solid #dce5ec;border-radius:6px;padding:12px;box-shadow:0 14px 34px rgba(16,42,63,.07);break-inside:avoid;margin:0 0 20px}
.review-paper:nth-child(4n+1){transform:rotate(-.45deg)}
.review-paper:nth-child(4n+2){transform:rotate(.45deg)}
.review-paper:nth-child(4n+3){transform:rotate(-.25deg)}
.review-paper:nth-child(4n){transform:rotate(.25deg)}
.review-paper img{width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;display:block;border-radius:4px;background:#fff}
.paper-pin{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:11px;height:11px;border-radius:50%;background:#f27a7a;box-shadow:0 2px 5px rgba(0,0,0,.18);z-index:2}
.review-masonry{column-count:2;column-gap:22px;margin-top:28px}
.review-masonry .review-paper{display:inline-block;width:100%}
.review-highlight-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.review-highlight-strip span{background:#fff;border:1px solid #dfe6ee;border-radius:4px;padding:10px 13px;color:#496476;font-size:13px;font-weight:800}
@media(max-width:820px){.home-review-showcase{grid-template-columns:1fr}.review-masonry{column-count:1}.review-paper{transform:none!important}}


/* v35.13 team, YAHO project, guide, policy */
.team-lead{max-width:500px;color:#61798a;font-weight:700;line-height:1.7}
.team-standard-strip{display:grid;grid-template-columns:repeat(4,1fr);margin:28px 0 22px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#f8fbfd}
.team-standard-strip span{padding:16px;text-align:center;font-size:13px;font-weight:850;color:#486a80;border-right:1px solid var(--line)}
.team-standard-strip span:last-child{border-right:0}
.coach-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.coach-card{display:grid;grid-template-columns:170px 1fr;gap:22px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:6px;padding:18px;box-shadow:0 14px 34px rgba(16,42,63,.05)}
.coach-card img{width:170px;height:205px;object-fit:cover;border-radius:4px;filter:grayscale(100%)}
.coach-copy small{font-size:10px;letter-spacing:.13em;font-weight:900;color:#839aab}.coach-copy h3{margin:6px 0 12px;font-size:23px;color:var(--ink)}.coach-copy h3 em{font-size:13px;font-style:normal;color:#7c91a0;margin-left:5px}.coach-copy ul{margin:0;padding-left:17px;color:#607380;font-size:13px}.coach-copy li{margin:6px 0}
.education-band{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:center;margin-top:18px;padding:25px 27px;background:#102f47;color:#fff;border-radius:6px}.education-band small{font-size:10px;letter-spacing:.13em;color:#8fc3e8;font-weight:900}.education-band h3{margin:7px 0 0;font-size:23px}.education-flow{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.education-flow span{padding:8px 11px;border:1px solid rgba(255,255,255,.25);border-radius:4px;font-size:12px;font-weight:800}.education-flow i{font-style:normal;color:#8fc3e8}
.yaho-hero{padding:76px 0 54px;background:linear-gradient(135deg,#f8fbff 0%,#eef7ff 58%,#fff8d7 100%)}.yaho-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:52px;align-items:center}.yaho-hero h1{font-size:clamp(52px,7vw,86px);line-height:.98;letter-spacing:-.06em;margin:8px 0 18px;color:#123249}.yaho-hero p{font-size:19px;font-weight:800;color:#526e80}.yaho-badge{display:inline-flex;background:#ffd84b;color:#16364c;padding:8px 15px;border-radius:4px;font-size:16px;font-weight:1000;transform:rotate(-3deg);margin-top:16px}.yaho-events{background:#fffdf3}.yaho-oneplus{display:grid;grid-template-columns:1.12fr .88fr;gap:30px;margin-top:26px;padding:34px;border:1px solid #efe2a5;border-radius:6px;background:#fff;box-shadow:0 18px 46px rgba(16,42,63,.06)}.yaho-oneplus-copy small,.yaho-pass small{font-size:10px;letter-spacing:.13em;font-weight:900;color:#9d8320}.yaho-oneplus-copy h3{font-size:42px;margin:6px 0;color:#173a59}.yaho-oneplus-copy strong{font-size:23px}.yaho-oneplus-copy p{color:#607380}.event-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}.event-tags span{padding:8px 11px;background:#fff9dd;border:1px solid #f0e2a4;border-radius:4px;font-size:12px;font-weight:800;color:#6d5c1e}.yaho-math{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;padding:25px;background:#102f47;color:#fff;border-radius:6px;text-align:center}.yaho-math div{padding:15px 8px}.yaho-math b{display:block;font-size:32px}.yaho-math span{font-size:11px;color:#bdd0dc}.yaho-math i{font-size:30px;font-style:normal;color:#ffd84b}.yaho-math>strong{grid-column:1/4;padding-top:12px;border-top:1px solid rgba(255,255,255,.18);font-size:18px;color:#ffd84b}.event-fine{font-size:12px;color:#7b8790;margin-top:13px}.yaho-pass-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}.yaho-pass{padding:29px;border:1px solid var(--line);border-radius:6px;background:#fff}.yaho-pass.featured{border:2px solid #efc72d}.yaho-pass h3{font-size:30px;margin:7px 0 10px;color:#173a59}.yaho-pass p{color:#607380}.yaho-pass ul{padding-left:18px;color:#4c6372}.yaho-pass li{margin:8px 0}.yaho-nudge{margin-top:20px}
.price-event-banner{margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border:1px solid #eadc93;border-radius:6px;background:#fffbea}.price-event-banner small{display:block;font-size:9px;letter-spacing:.13em;font-weight:900;color:#967c1f}.price-event-banner b{display:block;margin:5px 0;font-size:19px;color:#173a59}.price-event-banner span{font-size:12px;color:#6c7d88}
.lesson-day-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}.lesson-day-grid article{border:1px solid var(--line);border-radius:6px;padding:22px;background:#fff}.lesson-day-grid small{font-size:10px;font-weight:900;color:#7d98aa}.lesson-day-grid h3{margin:7px 0;font-size:19px;color:#173a59}.lesson-day-grid p{margin:0;color:#607380;font-size:13px}.equipment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:25px}.equipment-grid article{padding:26px;border:1px solid var(--line);border-radius:6px;background:#fff}.equipment-grid h3{margin:0 0 7px;font-size:15px;color:#7590a2}.equipment-grid strong{display:block;font-size:22px;color:#173a59}.equipment-grid p{color:#607380;font-size:13px}.equipment-free{border:2px solid #2d8fe8!important}.guide-note{margin-top:16px;color:#6b7f8d}
.refund-table{max-width:760px;margin-top:24px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.refund-row{display:grid;grid-template-columns:1fr 180px;border-bottom:1px solid var(--line);background:#fff}.refund-row:last-child{border-bottom:0}.refund-row span,.refund-row b,.refund-row strong{padding:16px 19px}.refund-row strong{border-left:1px solid var(--line);text-align:center;color:#173a59}.refund-row.head{background:#eef6fb;font-size:12px;font-weight:900;color:#59758a}.policy-note{font-size:12px;color:#728592;margin-top:12px}
.adult-lesson{padding-top:34px}.adult-lesson-box{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:center;padding:32px;border:1px solid var(--line);border-radius:6px;background:#f8fafb}.adult-levels{display:grid;grid-template-columns:1fr 1fr;gap:10px}.adult-levels span{padding:13px;background:#fff;border:1px solid var(--line);border-radius:4px;font-size:13px;font-weight:800;color:#48677b}.kids-focus-note{display:inline-block;margin:18px 0 0;padding:8px 11px;background:#eef6fb;color:#537287;border-radius:4px;font-size:12px;font-weight:800}
@media(max-width:900px){.coach-grid{grid-template-columns:1fr}.team-standard-strip{grid-template-columns:1fr 1fr}.team-standard-strip span{border-bottom:1px solid var(--line)}.education-band,.yaho-hero-grid,.yaho-oneplus,.adult-lesson-box{grid-template-columns:1fr}.yaho-pass-grid{grid-template-columns:1fr}.lesson-day-grid{grid-template-columns:1fr 1fr}.equipment-grid{grid-template-columns:1fr}.education-flow{justify-content:flex-start}}
@media(max-width:620px){.coach-card{grid-template-columns:110px 1fr;gap:14px;padding:13px}.coach-card img{width:110px;height:145px}.coach-copy h3{font-size:19px}.coach-copy li{font-size:12px}.team-standard-strip{grid-template-columns:1fr}.yaho-hero{padding-top:44px}.yaho-hero h1{font-size:50px}.yaho-oneplus{padding:22px 18px}.yaho-oneplus-copy h3{font-size:34px}.lesson-day-grid{grid-template-columns:1fr}.refund-row{grid-template-columns:1fr 110px}.price-event-banner{display:block}.price-event-banner .btn{margin-top:14px}.adult-levels{grid-template-columns:1fr}}


/* v35.14 YAHO PROJECT event upgrade */
.yaho-hero-v2{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 18%,rgba(255,216,75,.45),transparent 23%),linear-gradient(135deg,#f7fbff 0%,#eaf6ff 55%,#fff4bc 100%)}
.yaho-hero-v2:before{content:"YAHO";position:absolute;right:-3vw;top:-45px;font-size:clamp(130px,20vw,300px);font-weight:1000;line-height:1;color:rgba(255,255,255,.42);letter-spacing:-.08em;pointer-events:none}
.yaho-badge-v2{background:#102f47;color:#ffd84b;transform:none;letter-spacing:.06em;font-size:12px;padding:9px 14px}
.yaho-hero-visual{position:relative;min-width:0}.yaho-hero-visual>img{width:100%;height:520px;object-fit:cover;border-radius:6px;box-shadow:0 26px 65px rgba(16,42,63,.15)}
.yaho-stamp{position:absolute;right:-12px;top:28px;width:108px;height:108px;border-radius:50%;display:grid;place-items:center;text-align:center;background:#ffd84b;color:#15354c;font-size:10px;font-weight:900;line-height:1.1;box-shadow:0 12px 30px rgba(16,42,63,.18);transform:rotate(8deg)}.yaho-stamp b{font-size:23px}
.event-urgency-line{display:flex;align-items:center;gap:10px;margin:24px 0 0;font-size:13px;color:#4e697b}.event-urgency-line span{padding:6px 8px;border-radius:4px;background:#ffd84b;color:#173a59;font-size:9px;font-weight:1000;letter-spacing:.08em}.event-urgency-line b{font-size:13px}
.event-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px}.event-limited{flex:0 0 auto;padding:16px 20px;border:2px solid #173a59;border-radius:6px;text-align:center;font-size:9px;letter-spacing:.13em;font-weight:900;color:#173a59;transform:rotate(2deg)}.event-limited b{display:block;font-size:34px;letter-spacing:-.04em;color:#e9bd17}
.yaho-oneplus-v2{border:2px solid #efd158;background:linear-gradient(135deg,#fff 0%,#fffdf3 100%);box-shadow:0 24px 60px rgba(16,42,63,.09)}
.yaho-math-v2{background:linear-gradient(150deg,#102f47,#173f5d);box-shadow:0 18px 42px rgba(16,42,63,.18)}.yaho-math-v2>small{grid-column:1/4;color:#fff;font-weight:900;margin-top:-4px}.event-alert{margin-top:20px;padding:14px 15px;border-radius:4px;background:#f6f9fb;border:1px solid var(--line)}.event-alert b{display:block;font-size:11px;color:#173a59}.event-alert span{display:block;margin-top:4px;font-size:12px;color:#607380}
.event-cta-band{margin-top:22px;padding:22px 24px;border-radius:6px;background:#fff2b3;border:1px solid #eed46d;display:flex;align-items:center;justify-content:space-between;gap:20px}.event-cta-band small{display:block;font-size:9px;font-weight:1000;letter-spacing:.12em;color:#8b731a}.event-cta-band b{display:block;margin:5px 0 3px;font-size:18px;color:#173a59}.event-cta-band span{font-size:12px;color:#687b88}.event-cta-band.dark{background:#102f47;border-color:#102f47}.event-cta-band.dark small{color:#ffd84b}.event-cta-band.dark b{color:#fff}.event-cta-band.dark span{color:#c3d2dc}
.pass-badge{display:inline-flex;padding:7px 10px;border-radius:4px;background:#f0f5f8;color:#678093;font-size:10px;font-weight:1000;letter-spacing:.08em}.pass-badge.hot{background:#ffd84b;color:#173a59}.yaho-pass.featured{position:relative;background:linear-gradient(180deg,#fffdf3,#fff)}
.popup{border-radius:6px;overflow:hidden}.popup-image{position:relative;background-image:linear-gradient(180deg,transparent 45%,rgba(9,32,49,.42)),url('kid_orange.webp')}.popup-image:after{content:"YAHO PROJECT";position:absolute;left:22px;bottom:20px;color:#fff;font-size:24px;font-weight:1000;letter-spacing:-.03em}.popup-body{position:relative;background:linear-gradient(155deg,#fff 0%,#fffdf3 100%)}.popup-campaign-tag{display:inline-flex;padding:6px 9px;border-radius:4px;background:#173a59;color:#ffd84b;font-size:9px;font-weight:1000;letter-spacing:.1em}.popup-event-name{display:inline-flex;margin:4px 0 12px;padding:8px 13px;border-radius:4px;background:#ffd84b;color:#173a59;font-size:18px;font-weight:1000;transform:rotate(-1deg)}.popup-benefit{margin:16px 0;padding:16px;border-radius:4px;background:#102f47;color:#fff}.popup-benefit b{display:block;font-size:12px;color:#c8d8e3}.popup-benefit strong{display:block;margin-top:3px;color:#ffd84b;font-size:27px}.popup-benefit span{display:block;margin-top:5px;color:#bccbd5;font-size:10px}.popup-note-strong{padding:12px 13px;background:#fff3b7;border-radius:4px;color:#66561c;font-weight:800;line-height:1.6}
@media(max-width:900px){.event-section-head{align-items:start}.event-cta-band{display:block}.event-cta-band .btn{margin-top:14px}.yaho-hero-visual>img{height:430px}}
@media(max-width:620px){.event-section-head{display:block}.event-limited{display:inline-block;margin:8px 0 18px}.event-urgency-line{align-items:flex-start}.yaho-hero-visual>img{height:330px}.yaho-stamp{right:7px;top:13px;width:88px;height:88px}.event-cta-band{padding:18px}.popup{border-radius:6px}.popup-image:after{font-size:18px}}


/* v35.15 YAHO early booking focus */
.yaho-hero-v3{background:radial-gradient(circle at 82% 18%,rgba(255,216,75,.48),transparent 24%),linear-gradient(135deg,#f7fbff 0%,#eaf6ff 55%,#fff4bc 100%)}
.yaho-hero-v3 h1 em{font-style:normal;color:#1676dc}.yaho-badge-v3{background:#102f47;color:#ffd84b;transform:none;font-size:12px;letter-spacing:.08em}
.early-booking-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.early-booking-chips span{padding:8px 11px;border-radius:4px;background:#fff;border:1px solid #dce7ef;color:#45697f;font-size:10px;font-weight:1000;letter-spacing:.06em}
.event-urgency-line.strong{padding:13px 14px;border-left:3px solid #e6bb19;background:rgba(255,255,255,.66);border-radius:0 13px 13px 0}.event-urgency-line.strong b{font-size:14px;color:#173a59}
.yaho-hero-dual{position:relative}.dual-offer{position:absolute;padding:13px 15px;border-radius:4px;box-shadow:0 14px 30px rgba(16,42,63,.16);backdrop-filter:blur(10px)}.dual-offer small{display:block;font-size:9px;font-weight:1000;letter-spacing:.1em}.dual-offer b{display:block;font-size:18px;margin:2px 0}.dual-offer span{display:block;font-size:10px}.dual-offer-one{left:-14px;top:34px;background:#ffd84b;color:#173a59}.dual-offer-pass{right:-12px;top:126px;background:rgba(16,47,71,.94);color:#fff}.dual-offer-pass small,.dual-offer-pass span{color:#c9dae5}
.event-focus-oneplus{background:#fffdf4}.event-limited-v3{background:#fff;box-shadow:0 10px 26px rgba(16,42,63,.06)}.dark-ticket{background:#102f47;color:#fff;border-color:#102f47}.dark-ticket b{color:#ffd84b}.yaho-oneplus-v3{border:2px solid #efd158;box-shadow:0 24px 58px rgba(16,42,63,.08)}.yaho-math-v3{background:linear-gradient(150deg,#102f47,#1d4a68)}
.event-cta-band-v3{box-shadow:0 12px 28px rgba(16,42,63,.05)}
.program-lead{margin:14px 0 0;max-width:790px}.program-lead b{color:#173a59}.yaho-pass-grid-v3{margin-top:28px}.yaho-pass-v3{position:relative;overflow:hidden}.yaho-pass-v3:before{content:"";position:absolute;right:-36px;top:-44px;width:120px;height:120px;border-radius:50%;background:rgba(255,216,75,.18)}.pass-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.pass-topline>span{font-size:9px;font-weight:1000;letter-spacing:.09em;color:#88a0af}.actioncam-benefit{font-weight:900;color:#173a59}.actioncam-benefit:before{content:"★ ";color:#e6b918}
.shooting-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:stretch;margin-top:24px}.shooting-basic,.shooting-action{padding:25px 24px;border-radius:6px;border:1px solid #dfe7ed;background:#fff}.shooting-basic small,.shooting-action small{font-size:9px;font-weight:1000;letter-spacing:.1em;color:#7893a5}.shooting-basic h3,.shooting-action h3{font-size:23px;margin:6px 0 8px;color:#173a59}.shooting-basic p,.shooting-action p{margin:0;color:#607380;font-size:13px}.shooting-action{background:linear-gradient(145deg,#102f47,#194563);border-color:#102f47}.shooting-action small,.shooting-action p{color:#c9d8e1}.shooting-action h3,.shooting-action p b{color:#fff}.shooting-arrow{display:grid;place-items:center;font-size:28px;font-weight:900;color:#e3b81c}
.actioncam-bonus-box{margin-top:18px;padding:21px 24px;border-radius:6px;background:#fff6c9;border:1px solid #ecd36c;display:flex;align-items:center;justify-content:space-between;gap:22px}.actioncam-bonus-box small{display:block;font-size:9px;font-weight:1000;letter-spacing:.1em;color:#8a721c}.actioncam-bonus-box b{display:block;margin:5px 0 3px;font-size:18px;color:#173a59}.actioncam-bonus-box span{font-size:12px;color:#677986}.actioncam-icon{flex:0 0 auto;width:86px;height:86px;border-radius:50%;display:grid;place-items:center;text-align:center;background:#102f47;color:#fff;font-size:10px;font-weight:900;line-height:1.05}.actioncam-icon strong{font-size:21px;color:#ffd84b}.actioncam-bonus-box.compact{margin-top:18px}.actioncam-bonus-box.compact b{font-size:16px}
.event-booking-summary{background:#102f47;color:#fff}.event-booking-summary .eyebrow{color:#ffd84b}.event-booking-summary .h2{color:#fff}.booking-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}.booking-summary-grid article{padding:28px;border-radius:6px;background:#fff;color:#173a59}.booking-summary-grid article.featured{background:#fff4b8}.booking-summary-grid article>span{font-size:11px;font-weight:1000;color:#8ba0ae}.booking-summary-grid h3{font-size:30px;margin:7px 0}.booking-summary-grid p{color:#607380}.event-final-nudge{text-align:center;margin:22px 0 0;color:#c6d5df;font-weight:800;font-size:13px}
/* popup v3 */
.popup-v3{width:min(930px,100%)}.popup-image-v3{background-image:linear-gradient(180deg,transparent 38%,rgba(9,32,49,.58)),url('kids_pair.webp')}.popup-image-v3:after{display:none}.popup-image-copy{position:absolute;left:24px;right:24px;bottom:24px;color:#fff}.popup-image-copy small{display:block;font-size:10px;letter-spacing:.12em;font-weight:1000;color:#e5f0f6}.popup-image-copy b{display:block;font-size:42px;line-height:.92;margin:5px 0 8px}.popup-image-copy span{font-size:12px;color:#e2edf3}.popup-body-v3 h2{margin-bottom:16px}.popup-two-offers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.popup-offer{padding:15px;border-radius:4px;border:1px solid #dfe7ed;background:#fff}.popup-offer.oneplus{background:#fff8d7;border-color:#efd86f}.popup-offer.season{background:#102f47;border-color:#102f47;color:#fff}.popup-offer small{font-size:8px}.popup-offer h3{font-size:19px;margin:4px 0 6px}.popup-offer strong{display:block;font-size:14px}.popup-offer p{margin:5px 0 0;font-size:11px;line-height:1.5}.popup-offer.season small,.popup-offer.season p{color:#c8d8e2}.popup-offer.season h3,.popup-offer.season strong{color:#fff}.popup-loyalty{margin-top:10px;padding:10px 12px;border-radius:4px;background:#eef7ff}.popup-loyalty b,.popup-loyalty span{display:block}.popup-loyalty b{font-size:11px;color:#173a59}.popup-loyalty span{font-size:11px;color:#607380;margin-top:2px}
@media(max-width:900px){.shooting-compare,.booking-summary-grid{grid-template-columns:1fr}.shooting-arrow{transform:rotate(90deg);min-height:32px}.popup-two-offers{grid-template-columns:1fr}.dual-offer{position:static;display:inline-block;margin:8px 6px 0 0}.yaho-hero-dual{display:block}.actioncam-bonus-box{align-items:flex-start}.actioncam-icon{width:72px;height:72px}}
@media(max-width:620px){.actioncam-bonus-box{display:block}.actioncam-icon{margin-top:14px}.booking-summary-grid article{padding:22px}.popup-image-copy b{font-size:34px}}


/* v35.16 YAHO event copy polish */
.yaho-hero-v3 h1 em{color:var(--blue);font-style:normal}
.popup-v3 h2 em{font-style:normal;color:var(--blue)}
.popup-image-copy span{font-weight:900;letter-spacing:.04em}
.event-urgency-line.strong{border-left:4px solid var(--blue);padding-left:14px}
.event-booking-summary .h2{letter-spacing:-.045em}
@media(max-width:680px){
  .popup-v3 h2{font-size:30px;line-height:1.15}
  .yaho-hero-v3 h1{font-size:42px}
}


/* v35.17 curriculum, pricing, event refinements */
.event-request-help{grid-column:1/-1;padding:14px 16px;border-radius:4px;background:#f2f8ff;border:1px solid #d7e9f8;color:#4d6e83;display:grid;gap:3px;font-size:12px}.event-request-help b{color:#145a96;font-size:13px}.event-request-help strong{color:#173a59}
.event-request-note{margin-top:24px;margin-bottom:24px;padding:18px 22px;border:1px solid #d7e7f3;border-left:4px solid var(--blue);background:#f8fbff;display:flex;justify-content:space-between;gap:18px;align-items:center}.event-request-note b{color:#173a59}.event-request-note span{font-size:13px;color:#5e788b}
.curriculum-pro{background:linear-gradient(180deg,#fff,#fbfdff)}.curr-intro{margin:0 0 8px;color:#6d8291;font-size:15px}.curr-intro b{color:#245875}.curr-list-pro{margin-top:26px}.curr-list-pro .curr-item summary{border-left:4px solid transparent;padding-left:14px}.curr-stage-1 summary{border-left-color:#2e7dc0!important}.curr-stage-2 summary{border-left-color:#2d9a88!important}.curr-stage-3 summary{border-left-color:#7a6bc2!important}.curr-stage-4 summary{border-left-color:#b56c78!important}.curr-list-pro .curr-no{font-weight:950;color:#45728f}.curr-list-pro h3{color:#173a59}.curr-list-pro h3 em{font-style:normal;font-size:14px;font-weight:700;color:#7590a2;margin-left:8px}.curr-body-pro{grid-template-columns:1.1fr .9fr;align-items:start}.curr-content>p{color:#5f7687;font-size:15px;line-height:1.78}.tech-title{margin-top:16px;margin-bottom:8px;font-size:11px;font-weight:950;letter-spacing:.12em;color:#7895a8}.curr-list-pro .tech-list span{background:#f6faff;border-color:#d9e8f2;color:#3d6680}.stage-goal{padding:20px 22px;border-radius:6px;background:#102f47;color:#fff;box-shadow:0 14px 30px rgba(16,47,71,.12)}.stage-goal small{font-size:9px;font-weight:950;letter-spacing:.15em;color:#85bee7}.stage-goal h4{margin:7px 0 13px;font-size:20px;line-height:1.35}.stage-goal ul{margin:0;padding-left:18px;color:#d2e0e9;font-size:13px;display:grid;gap:6px}
.adult-lesson-refined{padding-top:52px}.adult-refined-box{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center;padding:34px;border:1px solid var(--line);background:linear-gradient(135deg,#f7fbff,#fff)}.adult-copy h2{font-size:34px;line-height:1.2;margin:8px 0 10px;color:#173a59}.adult-copy p{margin:0;color:#627b8c;max-width:670px}.adult-review-quote{margin-top:16px;padding:13px 15px;border-left:3px solid var(--blue);background:#fff;color:#335b74;font-weight:850}.adult-review-quote small{display:block;margin-top:4px;color:#8296a4;font-weight:700}.adult-skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.adult-skill-grid span{padding:15px;border-radius:4px;background:#fff;border:1px solid #dce8f0;color:#476a80;font-size:13px;font-weight:800}
.price-subsection{margin-top:58px;padding-top:54px;border-top:1px solid var(--line)}.price-sublead{margin:0;color:#647d8e}.program-package-grid{margin-top:26px}.program-package{position:relative;border-radius:6px;padding-top:36px}.program-package.featured{border:2px solid #1b75c8;box-shadow:0 18px 42px rgba(22,118,220,.09)}.program-badge{position:absolute;top:0;right:0;padding:8px 11px;background:#eaf5ff;color:#1c69a7;font-size:10px;font-weight:950;letter-spacing:.1em}.program-extra{margin-top:14px;padding:11px 12px;border-radius:4px;background:#102f47;color:#fff;font-size:12px;font-weight:850;text-align:center}.actioncam-loyalty-v17{margin-top:34px;padding:28px 30px;border-radius:6px;background:linear-gradient(135deg,#0f2f48,#174d72);color:#fff;display:flex;justify-content:space-between;gap:20px;align-items:center}.actioncam-loyalty-v17 small{font-size:9px;font-weight:950;letter-spacing:.15em;color:#89c6ef}.actioncam-loyalty-v17 h3{font-size:26px;line-height:1.35;margin:7px 0 5px}.actioncam-loyalty-v17 p{margin:0;color:#c6dae7;font-size:13px}.actioncam-count{display:grid;place-items:center;min-width:92px;height:92px;border-radius:50%;background:#fff;color:#0f4f8b;font-size:34px;font-weight:1000}.actioncam-showcase-v17{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center;margin-top:22px;padding:30px;border:1px solid var(--line);background:#fff}.actioncam-preview-visual{position:relative;overflow:hidden;border-radius:6px;min-height:390px;background:#dce8f0}.actioncam-preview-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.actioncam-preview-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,25,39,.02),rgba(5,25,39,.5))}.play-mark{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.94);display:grid;place-items:center;color:#176fb8;font-size:24px;padding-left:4px;box-shadow:0 10px 35px rgba(0,0,0,.18)}.video-caption{position:absolute;z-index:2;left:18px;right:18px;bottom:18px;color:#fff}.video-caption b{display:block;font-size:20px}.video-caption span{font-size:12px;color:#e5eef4}.actioncam-copy h2{font-size:34px;line-height:1.2;margin:8px 0 12px;color:#173a59}.actioncam-copy>p{color:#60798a;margin:0}.shoot-difference{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.shoot-difference>div{padding:16px;border:1px solid #dce7ef;background:#f8fbfd}.shoot-difference small{display:block;font-size:9px;color:#7c98aa;font-weight:950}.shoot-difference b{display:block;margin:5px 0;color:#1d4d6c}.shoot-difference span{font-size:12px;color:#687f8f}.video-source-note{margin-top:12px;font-size:11px;color:#899aa6}.price-cost-v17{margin-top:30px}.price-event-banner-v17{margin-top:30px}.price-event-banner-v17 b{font-size:18px}
@media(max-width:850px){.curr-body-pro,.adult-refined-box,.actioncam-showcase-v17{grid-template-columns:1fr}.adult-skill-grid{grid-template-columns:1fr 1fr}.event-request-note{display:block}.event-request-note span{display:block;margin-top:4px}.actioncam-loyalty-v17{align-items:flex-start}.actioncam-count{min-width:72px;height:72px;font-size:26px}.shoot-difference{grid-template-columns:1fr}.actioncam-preview-visual{min-height:300px}}
@media(max-width:600px){.curr-list-pro h3 em{display:block;margin:3px 0 0}.adult-skill-grid{grid-template-columns:1fr}.actioncam-loyalty-v17{display:block}.actioncam-count{margin-top:16px}.actioncam-showcase-v17{padding:18px}.actioncam-copy h2{font-size:28px}}


/* v35.18 iPhone / mobile polish */
html.popup-open,html.popup-open body{overflow:hidden}

@media(max-width:680px){
  :root{--pad:18px}
  html{scroll-padding-top:76px}
  body{font-size:15px;line-height:1.66;overflow-x:hidden}
  .container{padding-inline:18px}

  /* tighter, consistent mobile rhythm */
  .section{padding:56px 0}
  .section.section-gap{padding-top:56px;padding-bottom:56px}
  .price-hero{padding:42px 0 24px}
  .subhero{padding:30px 0 18px}
  .subhero-grid{gap:24px}
  .subhero h1{font-size:38px;line-height:1.08;margin:10px 0 12px}
  .subhero p{font-size:15px;line-height:1.7}
  .subhero .media{min-height:285px;border-radius:6px}
  .h2{font-size:31px;line-height:1.12;margin:8px 0 12px}
  .lead{font-size:15px;line-height:1.72}
  .eyebrow{font-size:9px;letter-spacing:.16em}

  /* header + menu */
  .promo{padding:7px 12px;font-size:11px;line-height:1.45}
  .header-in{height:66px}
  .brand img{width:70px}
  .mobile-menu{padding:10px 18px 14px;gap:7px}
  .mobile-menu a{padding:11px 12px;font-size:12px}

  /* home hero */
  .home-hero-grid{padding:30px 0 26px;gap:22px}
  .home-hero h1{font-size:39px;line-height:1.04;margin:11px 0 14px}
  .hero-sub{font-size:17px;margin-bottom:8px}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}
  .hero-actions .btn{width:100%;min-height:47px;padding:0 12px;font-size:13px}
  .hero-actions .store{grid-column:1/-1}
  .hero-photo{min-height:350px;border-radius:6px}
  .hero-caption{left:12px;right:12px;bottom:12px;font-size:10px}
  .hero-strip>div{padding:14px 8px}
  .hero-strip b{font-size:14px}
  .hero-strip span{font-size:10px}
  .service-benefit-strip>div{padding:14px 10px}
  .service-benefit-strip b{font-size:14px}
  .service-benefit-strip span{font-size:10px;line-height:1.5}

  /* cards / editorial blocks */
  .split,.split.reverse{gap:25px}
  .media{min-height:310px;border-radius:6px}
  .media-note{left:12px;right:12px;bottom:12px;padding:11px 12px;font-size:11px}
  .compare-wrap{padding:20px 17px;border-radius:6px}
  .compare-head{gap:18px}
  .compare-photos{margin-top:4px}
  .compare-photos figure{width:84px;padding:6px 6px 10px}
  .compare-panel{padding:19px 17px}
  .compare-panel h3{font-size:19px}
  .compare-panel li{font-size:12px;line-height:1.6}
  .compare-foot{padding-top:18px}
  .lesson-grid,.teaser-grid,.event-grid,.stage-grid,.system-grid,.package-grid,.cost-grid{gap:12px;margin-top:22px}
  .lesson-card{padding:21px 19px}
  .lesson-card h3{font-size:30px}
  .teaser{min-height:275px;border-radius:4px}
  .teaser-body{left:17px;right:17px;bottom:17px}
  .teaser-body h3{font-size:22px}
  .system-panel{padding:22px 19px}
  .system-panel h3{font-size:23px}
  .process{margin-top:22px}
  .process article{padding:20px 18px}
  .process b{font-size:17px}

  /* team section */
  .coach-grid{gap:12px}
  .coach-card{grid-template-columns:92px 1fr;gap:13px;padding:12px;border-radius:4px}
  .coach-card img{width:92px;height:124px;border-radius:4px}
  .coach-copy h3{font-size:18px;margin:4px 0 8px;line-height:1.3}
  .coach-copy h3 em{display:block;margin:2px 0 0;font-size:11px}
  .coach-copy ul{font-size:11px;line-height:1.55;padding-left:15px}
  .coach-copy li{margin:3px 0}
  .team-standard-strip{margin-top:14px}

  /* curriculum */
  .curriculum-pro{padding-top:50px;padding-bottom:50px}
  .curr-intro{font-size:14px;line-height:1.7}
  .curr-list-pro{margin-top:20px}
  .curr-list-pro .curr-item summary{grid-template-columns:48px 1fr auto;gap:9px;padding:17px 7px 17px 11px}
  .curr-list-pro h3{font-size:19px;line-height:1.35}
  .curr-list-pro h3 em{font-size:11px;margin-left:0}
  .curr-body-pro{gap:15px;padding:0 4px 22px 12px}
  .curr-content>p{font-size:14px;line-height:1.72}
  .tech-title{margin-top:13px}
  .tech-list{gap:6px}
  .tech-list span{padding:7px 9px;font-size:11px}
  .stage-goal{padding:17px 17px;border-radius:4px}
  .stage-goal h4{font-size:18px;margin:5px 0 10px}
  .stage-goal ul{font-size:12px;line-height:1.55;gap:5px}
  .adult-lesson-refined{padding-top:48px;padding-bottom:52px}
  .adult-refined-box{padding:22px 18px;gap:20px;border-radius:6px}
  .adult-copy h2{font-size:27px}
  .adult-copy p{font-size:14px;line-height:1.7}
  .adult-review-quote{font-size:13px;line-height:1.6}
  .adult-skill-grid span{padding:13px;font-size:12px}

  /* price */
  .price-summary{gap:14px}
  .price-philosophy{margin-top:13px;font-size:13px}
  .price-table-wrap{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .price-table{min-width:700px}
  .price-subsection{margin-top:42px;padding-top:40px}
  .program-package-grid{margin-top:20px}
  .program-package{padding:28px 18px 20px}
  .actioncam-loyalty-v17{margin-top:24px;padding:22px 18px;border-radius:6px}
  .actioncam-loyalty-v17 h3{font-size:22px}
  .actioncam-count{min-width:64px;width:64px;height:64px;font-size:24px}
  .actioncam-showcase-v17{margin-top:16px;padding:16px;border-radius:6px;gap:18px}
  .actioncam-preview-visual{min-height:245px;border-radius:4px}
  .play-mark{width:58px;height:58px;font-size:20px}
  .video-caption{left:14px;right:14px;bottom:14px}
  .video-caption b{font-size:17px}
  .actioncam-copy h2{font-size:26px;margin:6px 0 9px}
  .shoot-difference{margin-top:15px}
  .shoot-difference>div{padding:14px}
  .price-cost-v17,.price-event-banner-v17{margin-top:24px}

  /* event */
  .yaho-hero{padding-top:32px}
  .yaho-hero h1{font-size:43px;line-height:1.02}
  .yaho-hero-visual>img{height:290px;border-radius:6px}
  .yaho-stamp{width:78px;height:78px;right:8px;top:10px}
  .yaho-stamp b{font-size:18px}
  .yaho-oneplus{padding:20px 16px;border-radius:6px}
  .yaho-oneplus-copy h3{font-size:29px}
  .yaho-math{padding:18px 10px;border-radius:4px;gap:4px}
  .yaho-math div{padding:10px 2px}
  .yaho-math b{font-size:25px}
  .yaho-math>strong{font-size:15px}
  .yaho-pass{padding:22px 18px;border-radius:6px}
  .yaho-pass h3{font-size:25px}
  .event-request-note{margin-top:18px;margin-bottom:0;padding:15px 16px;border-radius:4px}
  .event-request-note b{font-size:13px;line-height:1.5}
  .event-request-note span{font-size:12px;line-height:1.55}

  /* guide / faq / form */
  .lesson-day-grid{gap:10px;margin-top:20px}
  .lesson-day-grid article,.equipment-grid article{padding:19px 17px}
  .equipment-grid{gap:10px;margin-top:20px}
  .equipment-grid strong{font-size:19px}
  .faq{margin-top:18px}
  .faq summary{padding:16px 2px;padding-right:32px;font-size:14px;line-height:1.55}
  .faq p{font-size:13px;line-height:1.7;padding:0 2px 17px}
  .contact-grid{gap:26px}
  .contact h2{font-size:34px}
  .contact-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
  .contact-links .btn{width:100%;padding:0 10px}
  .form{padding:18px 16px;border-radius:6px}
  .form h3{font-size:23px}
  .reserve-nudge{margin-top:14px;padding:12px 13px;font-size:12px}
  .form-sub{margin-bottom:14px}
  .form-grid{gap:11px}
  .field input,.field select,.field textarea{font-size:16px;padding:11px 12px}
  .event-request-help{padding:13px!important;border-radius:4px!important}
  .event-request-help b{font-size:12px!important}
  .event-request-help span{font-size:11px!important;line-height:1.55!important}
  .submit .btn{width:100%}

  /* footer / fixed CTA */
  footer{padding:28px 0 calc(92px + env(safe-area-inset-bottom))}
  .footer-grid{gap:15px}
  .footer-links{gap:10px}
  .footer-links a{font-size:12px}
  .mobile-cta{gap:7px;padding:7px 10px calc(7px + env(safe-area-inset-bottom))}
  .mobile-cta a{min-height:44px;font-size:12px}

  /* iPhone-safe popup: layer itself scrolls, no clipped CTA */
  .popup-layer{
    display:block;
    height:100vh;
    height:100dvh;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    touch-action:pan-y;
    padding:max(10px,env(safe-area-inset-top)) 10px max(18px,calc(10px + env(safe-area-inset-bottom)));
  }
  .popup-back{position:fixed;inset:0}
  .popup{
    display:block;
    width:100%;
    max-width:480px;
    max-height:none;
    overflow:visible;
    margin:0 auto;
    border-radius:6px;
  }
  .popup-image{min-height:148px;height:148px}
  .popup-image-copy{left:18px;right:60px;bottom:15px}
  .popup-image-copy b{font-size:29px;line-height:.95}
  .popup-image-copy span{font-size:10px}
  .popup-close{position:absolute;right:10px;top:10px;width:38px;height:38px;z-index:8}
  .popup-body{clear:both;padding:18px 16px 17px}
  .popup-body-v3 h2{font-size:26px;line-height:1.16;margin:9px 0 13px}
  .popup-campaign-tag{font-size:8px}
  .popup-two-offers{gap:8px}
  .popup-offer{padding:12px 13px;border-radius:4px}
  .popup-offer h3{font-size:17px;margin:3px 0 4px}
  .popup-offer strong{font-size:13px}
  .popup-offer p{font-size:10.5px;margin-top:4px}
  .popup-loyalty{margin-top:8px;padding:9px 11px}
  .popup-note-strong{margin-top:8px;padding:10px 11px;font-size:11px;line-height:1.5}
  .popup-actions{display:grid;grid-template-columns:1fr;gap:7px;margin-top:13px}
  .popup-actions .btn{width:100%;min-height:46px;font-size:13px}
  .hide24{display:block;width:100%;padding:11px 0 3px;text-align:center;font-size:11px}
}

@media(max-width:380px){
  :root{--pad:16px}
  .container{padding-inline:16px}
  .home-hero h1{font-size:36px}
  .subhero h1{font-size:35px}
  .h2{font-size:29px}
  .hero-actions{grid-template-columns:1fr}
  .hero-actions .store{grid-column:auto}
  .service-benefit-strip{grid-template-columns:1fr}
  .service-benefit-strip>div{border-right:0!important;border-bottom:1px solid var(--line)!important}
  .service-benefit-strip>div:last-child{border-bottom:0!important}
  .coach-card{grid-template-columns:80px 1fr}
  .coach-card img{width:80px;height:108px}
  .popup-layer{padding-left:7px;padding-right:7px}
}

@media(max-width:680px){.mobile-scroll-hint{display:block;margin:10px 0 8px;color:#7890a0;font-size:11px;font-weight:800}.mobile-scroll-hint::before{content:'↔ ';color:#1676dc}}
@media(min-width:681px){.mobile-scroll-hint{display:none}}


/* v35.22 gratitude */
.gratitude-section{padding:0 0 clamp(72px,8vw,108px);background:#f4f8fb}
.gratitude-card{position:relative;overflow:hidden;padding:clamp(36px,6vw,66px);border-radius:6px;background:linear-gradient(135deg,#102f47 0%,#173f5f 64%,#1f5b87 100%);color:#fff;box-shadow:0 24px 64px rgba(14,43,67,.14)}
.gratitude-card:after{content:"";position:absolute;right:-70px;top:-90px;width:280px;height:280px;border-radius:50%;border:1px solid rgba(255,255,255,.12)}
.gratitude-card:before{content:"";position:absolute;right:38px;bottom:-110px;width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.035)}
.gratitude-mark{font-size:10px;font-weight:950;letter-spacing:.22em;color:#98caee}
.gratitude-small{margin:12px 0 6px;font-size:15px;font-weight:850;color:#d6e7f3}
.gratitude-card h2{position:relative;z-index:1;margin:8px 0 16px;max-width:850px;font-size:clamp(30px,4vw,50px);line-height:1.16;letter-spacing:-.05em}
.gratitude-card h2 em{font-style:normal;color:#9fd4f5}
.gratitude-copy{position:relative;z-index:1;margin:0;max-width:760px;font-size:clamp(14px,1.4vw,17px);line-height:1.8;color:#d6e4ee}
.gratitude-reviews{padding-top:20px;background:#fff}
.gratitude-card.compact{padding:clamp(32px,5vw,50px)}
.gratitude-card.compact h2{font-size:clamp(28px,3.6vw,44px)}
@media(max-width:680px){
 .gratitude-section{padding-bottom:56px}
 .gratitude-card{border-radius:6px;padding:30px 22px}
 .gratitude-small{font-size:13px}
 .gratitude-card h2{font-size:30px}
 .gratitude-copy{font-size:14px}
}


/* v35.23 actual action-cam video */
.actioncam-video-card{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:28px;align-items:center;margin-top:24px;padding:24px;border-radius:6px;background:linear-gradient(145deg,#f7fbff,#fff);border:1px solid rgba(14,53,82,.10);box-shadow:0 18px 42px rgba(13,43,67,.09)}
.actioncam-video-shell,.event-video-shell{position:relative;width:min(100%,320px);margin:0 auto;border-radius:6px;overflow:hidden;background:#071522;box-shadow:0 20px 50px rgba(4,20,32,.22)}
.actioncam-video{display:block;width:100%;height:auto;aspect-ratio:406/720;object-fit:cover;background:#071522}
.actioncam-video-info{display:flex;flex-direction:column;gap:9px}
.actioncam-video-info small,.event-actioncam-copy small{font-size:11px;font-weight:900;letter-spacing:.16em;color:#2b78a6}
.actioncam-video-info b{font-size:clamp(20px,2.2vw,30px);line-height:1.25;color:#0d2b43}
.actioncam-video-info span{font-size:15px;line-height:1.7;color:#657789;max-width:620px}
.event-actioncam-demo{display:grid;grid-template-columns:1fr minmax(250px,320px);gap:34px;align-items:center;margin:30px 0 12px;padding:30px;border-radius:6px;background:linear-gradient(135deg,#0d2b43,#123c5d);color:#fff;overflow:hidden}
.event-actioncam-copy h3{font-size:clamp(26px,3vw,40px);line-height:1.15;margin:10px 0 12px;color:#fff}
.event-actioncam-copy p{margin:0;max-width:620px;color:rgba(255,255,255,.78);line-height:1.75}
.event-actioncam-copy p b{color:#fff}
.event-actioncam-demo .event-video-shell{box-shadow:0 20px 48px rgba(0,0,0,.30)}
@media(max-width:760px){
  .actioncam-video-card{grid-template-columns:1fr;gap:18px;padding:18px;border-radius:6px}
  .actioncam-video-shell,.event-video-shell{width:min(76vw,290px)}
  .actioncam-video-info{text-align:center;align-items:center}
  .actioncam-video-info span{font-size:14px}
  .event-actioncam-demo{grid-template-columns:1fr;gap:22px;padding:22px 18px;border-radius:6px;text-align:center}
  .event-actioncam-copy p{font-size:14px}
}

/* v35.24 business identity */
.business-info{max-width:1180px;margin:0 auto;padding:22px 20px 26px;border-top:1px solid rgba(127,153,170,.18);color:#7f99aa;font-size:12px;line-height:1.75}
.business-brandline{margin-bottom:10px;color:#617f92;font-size:12.5px}
.business-brandline strong{color:#345a72}
.business-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:3px}
.business-meta span{white-space:nowrap}
.business-info b{font-weight:800;color:#57778a}
.business-address{margin-top:3px}
@media(max-width:680px){
  .business-info{padding:18px 18px calc(92px + env(safe-area-inset-bottom));font-size:11.5px;line-height:1.7}
  .business-brandline{font-size:12px;line-height:1.6}
  .business-meta{display:grid;grid-template-columns:1fr;gap:1px}
  .business-meta span{white-space:normal}
  .business-address{margin-top:5px}
}


/* v35.26 actioncam visibility */
.actioncam-watch-intro{margin-top:24px;padding:20px 22px;border-radius:6px;background:linear-gradient(135deg,#eef7ff,#f9fcff);border:1px solid #cfe5f5;display:flex;align-items:center;justify-content:space-between;gap:20px}
.actioncam-watch-intro small,.event-video-titlebar small{display:block;font-size:10px;font-weight:950;letter-spacing:.14em;color:#2475a8}
.actioncam-watch-intro h3{margin:5px 0 4px;font-size:22px;line-height:1.3;color:#0d2b43}
.actioncam-watch-intro p{margin:0;color:#6d8191;font-size:13px}
.actioncam-watch-btn{flex:0 0 auto;text-decoration:none;padding:13px 17px;border-radius:4px;background:#0d2b43;color:#fff;font-weight:900;font-size:13px;box-shadow:0 9px 22px rgba(13,43,67,.15)}
.actioncam-video-shell,.event-video-shell{position:relative}
.video-real-badge{position:absolute;z-index:3;left:12px;top:12px;padding:7px 10px;border-radius:4px;background:rgba(9,31,47,.88);backdrop-filter:blur(7px);color:#fff;font-size:10px;font-weight:950;letter-spacing:.08em;pointer-events:none}
.event-video-titlebar{margin:28px 0 -12px;padding:0 4px;text-align:center}
.event-video-titlebar b{display:block;margin:6px 0 4px;font-size:24px;line-height:1.25;color:#0d2b43}
.event-video-titlebar span{font-size:13px;color:#718493}
@media(max-width:680px){
  .actioncam-watch-intro{display:block;padding:18px}
  .actioncam-watch-btn{display:inline-flex;margin-top:14px}
  .actioncam-watch-intro h3{font-size:20px}
  .event-video-titlebar{margin-top:24px}
  .event-video-titlebar b{font-size:21px}
}


/* v35.27 HOME action-cam showcase */
.home-actioncam-section{padding-top:18px;padding-bottom:84px;background:#fff}
.home-actioncam-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(270px,.85fr);gap:48px;align-items:center;padding:48px 54px;border-radius:6px;background:linear-gradient(135deg,#0b2a41 0%,#103d5e 62%,#135477 100%);box-shadow:0 26px 66px rgba(13,43,67,.17)}
.home-actioncam-card:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;right:-170px;top:-205px;background:rgba(255,255,255,.06);pointer-events:none}
.home-actioncam-card:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;left:-115px;bottom:-155px;background:rgba(143,195,232,.08);pointer-events:none}
.home-actioncam-copy,.home-actioncam-media{position:relative;z-index:1}
.home-actioncam-eyebrow{color:#91c9ea!important}
.home-actioncam-copy h2{margin:10px 0 15px;color:#fff;font-size:clamp(31px,4vw,50px);line-height:1.12;letter-spacing:-.035em}
.home-actioncam-copy h2 em{font-style:normal;color:#a8d9f4}
.home-actioncam-copy>p{margin:0;max-width:650px;color:rgba(255,255,255,.76);font-size:15px;line-height:1.78}
.home-actioncam-points{display:grid;gap:9px;margin:24px 0 17px}
.home-actioncam-points span{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.82);font-size:13px}
.home-actioncam-points span:before{content:"✓";display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:rgba(166,220,249,.14);color:#a8d9f4;font-weight:950}
.home-actioncam-points b{color:#fff}
.home-actioncam-note{margin:8px 0 20px;color:#fff;font-size:14px;font-weight:850}
.home-actioncam-link{display:inline-flex;align-items:center;text-decoration:none;color:#fff;font-size:13px;font-weight:900;border-bottom:1px solid rgba(255,255,255,.38);padding-bottom:4px}
.home-actioncam-media{text-align:center}
.home-actioncam-video-shell{position:relative;width:min(100%,300px);margin:0 auto;border-radius:6px;overflow:hidden;background:#071522;border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 52px rgba(0,0,0,.30)}
.home-actioncam-video{display:block;width:100%;height:auto;aspect-ratio:406/720;object-fit:cover;background:#071522}
.home-actioncam-media>small{display:block;margin-top:12px;color:rgba(255,255,255,.57);font-size:11px;line-height:1.5}
@media(max-width:860px){
  .home-actioncam-section{padding-top:8px;padding-bottom:58px}
  .home-actioncam-card{grid-template-columns:1fr;gap:28px;padding:34px 26px;border-radius:6px}
  .home-actioncam-copy{text-align:center}
  .home-actioncam-copy>p{margin-left:auto;margin-right:auto}
  .home-actioncam-points{width:min(100%,430px);margin:22px auto 16px;text-align:left}
  .home-actioncam-note{font-size:13px}
  .home-actioncam-video-shell{width:min(72vw,285px)}
}
@media(max-width:520px){
  .home-actioncam-section{padding-left:0;padding-right:0}
  .home-actioncam-card{padding:28px 18px 24px;border-radius:6px;gap:22px}
  .home-actioncam-copy h2{font-size:29px}
  .home-actioncam-copy>p{font-size:14px;line-height:1.72}
  .home-actioncam-points span{font-size:12.5px;align-items:flex-start}
  .home-actioncam-video-shell{width:min(74vw,270px);border-radius:6px}
}

/* v35.28 HOME actioncam visibility */
.home-actioncam-section{padding-top:34px!important;padding-bottom:54px!important;background:linear-gradient(180deg,#fff 0%,#f6f9fb 100%)!important}
.home-actioncam-card{position:relative}
.home-video-topbadge{position:absolute;left:28px;top:22px;z-index:3;padding:7px 11px;border-radius:4px;background:#fff;color:#0d2b43;font-size:10px;font-weight:950;letter-spacing:.08em;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.home-actioncam-copy{padding-top:24px}
.home-actioncam-video-shell{outline:1px solid rgba(255,255,255,.18)}
.home-actioncam-video{display:block!important;visibility:visible!important;opacity:1!important}
@media(max-width:680px){.home-actioncam-section{padding-top:22px!important;padding-bottom:38px!important}.home-video-topbadge{left:18px;top:16px}.home-actioncam-copy{padding-top:30px}.home-actioncam-video-shell{width:min(78vw,300px)!important}}


/* v35.29 HOME visual rhythm + actioncam rebalance */
.home-page .home-actioncam-section{
  padding:56px 0 76px!important;
  background:linear-gradient(180deg,#fff 0%,#f7fafc 100%)!important;
}
.home-page .home-actioncam-card{
  width:min(1080px,100%);
  margin:0 auto;
  display:grid!important;
  grid-template-columns:minmax(240px,300px) minmax(0,1fr)!important;
  grid-template-areas:"media copy";
  gap:clamp(42px,5vw,68px)!important;
  align-items:center!important;
  padding:44px clamp(42px,5vw,64px)!important;
  min-height:0!important;
  border-radius:6px!important;
  background:linear-gradient(135deg,#0c2c43 0%,#103b59 58%,#155476 100%)!important;
  box-shadow:0 22px 56px rgba(13,43,67,.14)!important;
}
.home-page .home-actioncam-card:before{
  width:300px;height:300px;right:-150px;top:-150px;background:rgba(255,255,255,.055)
}
.home-page .home-actioncam-card:after{
  width:190px;height:190px;left:-105px;bottom:-120px;background:rgba(143,195,232,.07)
}
.home-page .home-actioncam-media{
  grid-area:media;
  align-self:center;
  justify-self:center;
  width:100%;
  text-align:center;
}
.home-page .home-actioncam-video-shell{
  width:min(100%,258px)!important;
  margin:0 auto!important;
  border-radius:6px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  outline:0!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
}
.home-page .home-actioncam-video{width:100%!important;aspect-ratio:406/720!important;object-fit:cover!important}
.home-page .home-actioncam-media>small{
  max-width:270px;margin:11px auto 0!important;color:rgba(255,255,255,.54)!important;font-size:10.5px!important;line-height:1.5!important
}
.home-page .home-actioncam-copy{
  grid-area:copy;
  align-self:center;
  padding:0!important;
  max-width:620px;
}
.home-page .home-actioncam-kicker{
  display:inline-flex;align-items:center;min-height:28px;padding:0 11px;border-radius:4px;
  background:rgba(168,217,244,.12);border:1px solid rgba(168,217,244,.18);
  color:#a8d9f4;font-size:9px;font-weight:950;letter-spacing:.13em
}
.home-page .home-actioncam-copy h2{
  margin:16px 0 14px!important;
  max-width:620px;
  color:#fff!important;
  font-size:clamp(34px,3.25vw,46px)!important;
  line-height:1.09!important;
  letter-spacing:-.045em!important;
}
.home-page .home-actioncam-copy h2 em{font-style:normal;color:#a8d9f4}
.home-page .home-actioncam-copy>p{
  margin:0!important;max-width:590px!important;color:rgba(255,255,255,.74)!important;
  font-size:14px!important;line-height:1.72!important
}
.home-page .home-actioncam-points{
  display:grid!important;grid-template-columns:1fr 1fr;gap:8px 12px!important;
  width:100%;margin:22px 0 16px!important
}
.home-page .home-actioncam-points span{
  min-height:38px;padding:8px 10px;border-radius:4px;background:rgba(255,255,255,.055);
  color:rgba(255,255,255,.8)!important;font-size:12px!important;line-height:1.45
}
.home-page .home-actioncam-points span:last-child{grid-column:1/-1;width:calc(50% - 6px)}
.home-page .home-actioncam-points span:before{
  flex:0 0 18px!important;width:18px!important;height:18px!important;font-size:10px!important
}
.home-page .home-actioncam-note{margin:0 0 17px!important;color:#fff!important;font-size:13px!important;font-weight:850!important}
.home-page .home-actioncam-link{gap:7px;font-size:12px!important;padding-bottom:3px!important}
.home-page .home-actioncam-link span{transition:transform .18s ease}
.home-page .home-actioncam-link:hover span{transform:translateX(3px)}

/* HOME section rhythm: less empty space, clearer grouping */
@media(min-width:1001px){
  .home-page > .section:not(.home-actioncam-section){padding-top:88px;padding-bottom:88px}
  .home-page > .section.team-section{padding-top:94px;padding-bottom:94px}
  .home-page #review-highlights{padding-top:82px;padding-bottom:72px}
  .home-page .gratitude-section{padding-bottom:82px}
  .home-page .lesson-grid,.home-page .teaser-grid,.home-page .event-grid,.home-page .stage-grid{margin-top:26px}
}

@media(max-width:900px){
  .home-page .home-actioncam-section{padding:42px 0 56px!important}
  .home-page .home-actioncam-card{
    grid-template-columns:1fr!important;
    grid-template-areas:"copy" "media";
    gap:26px!important;
    padding:34px 30px 30px!important;
    border-radius:6px!important;
  }
  .home-page .home-actioncam-copy{max-width:680px;margin:0 auto;text-align:left!important}
  .home-page .home-actioncam-copy>p{margin:0!important}
  .home-page .home-actioncam-video-shell{width:min(60vw,265px)!important}
  .home-page .home-actioncam-points{width:100%!important;margin:20px 0 15px!important;text-align:left!important}
}
@media(max-width:680px){
  .home-page .home-actioncam-section{padding:32px 0 44px!important}
  .home-page .home-actioncam-card{padding:27px 20px 24px!important;gap:22px!important;border-radius:6px!important}
  .home-page .home-actioncam-kicker{min-height:26px;padding:0 9px;font-size:8px}
  .home-page .home-actioncam-copy h2{font-size:29px!important;line-height:1.12!important;margin:13px 0 11px!important}
  .home-page .home-actioncam-copy>p{font-size:13px!important;line-height:1.68!important}
  .home-page .home-actioncam-points{grid-template-columns:1fr!important;gap:7px!important;margin:17px 0 13px!important}
  .home-page .home-actioncam-points span,.home-page .home-actioncam-points span:last-child{grid-column:auto;width:100%;min-height:0;padding:8px 9px;font-size:11.5px!important}
  .home-page .home-actioncam-note{font-size:12px!important;margin-bottom:14px!important}
  .home-page .home-actioncam-video-shell{width:min(72vw,248px)!important;border-radius:6px!important}
  .home-page .home-actioncam-media>small{font-size:10px!important;margin-top:9px!important}
}
@media(max-width:420px){
  .home-page .home-actioncam-card{padding-left:17px!important;padding-right:17px!important}
  .home-page .home-actioncam-copy h2{font-size:27px!important}
  .home-page .home-actioncam-video-shell{width:min(74vw,238px)!important}
}


/* v35.30 copy + layout refinement */
.match-card{background:#fff;border:1px solid #dbe6ee;border-top:4px solid #7ca8c4;color:#123149;box-shadow:0 12px 28px rgba(20,53,76,.05)}
.match-card:nth-child(2){border-top-color:#5f96bd}.match-card:nth-child(3){border-top-color:#2f709e}.match-card-final{background:linear-gradient(180deg,#f5faff,#eef6fb);border-top-color:#173f5f}
.match-card h3{font-size:25px}.match-card p{color:#60788a}.match-kicker{display:block;margin-bottom:9px;font-size:9px;font-weight:950;letter-spacing:.14em;color:#7d9caf}
.match-card .match-types span{background:#f8fbfd;border-color:#d8e5ee;color:#47677d}.match-card-final .match-types span{background:#fff}
.curriculum-principles .lead{max-width:820px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}.principle-grid article{padding:28px;background:#fff;border:1px solid #dce7ef;border-top:4px solid #2e7dc0}.principle-grid article:nth-child(2){border-top-color:#2d9a88}.principle-grid article:nth-child(3){border-top-color:#7a6bc2}.principle-grid small{font-weight:950;color:#86a0b2;letter-spacing:.12em}.principle-grid h3{margin:8px 0 10px;font-size:24px;color:#173a59}.principle-grid p{margin:0;color:#617989;line-height:1.72}
.adult-pro-box{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;padding:42px;border:1px solid #dce7ef;background:linear-gradient(180deg,#fbfdff,#f5f9fc)}.adult-pro-box h2{margin:8px 0 14px;font-size:42px;line-height:1.12;letter-spacing:-.045em}.adult-pro-box p{color:#60788a;line-height:1.75}.adult-program-grid{display:grid;grid-template-columns:1fr;gap:12px;align-self:center}.adult-program-grid article{padding:22px 24px;background:#fff;border:1px solid #d9e5ed;border-left:4px solid #2e7dc0}.adult-program-grid article:nth-child(2){border-left-color:#2d9a88}.adult-program-grid article:nth-child(3){border-left-color:#7a6bc2}.adult-program-grid small{font-size:9px;font-weight:950;letter-spacing:.14em;color:#7b98aa}.adult-program-grid h3{margin:6px 0 4px;font-size:23px}.adult-program-grid p{margin:0;font-size:14px}.adult-review-quote{margin-top:20px}
.price-hero-clean{padding:52px 0 34px;background:linear-gradient(180deg,#f7fbff,#fff);border-bottom:1px solid #edf2f6}.price-hero-row{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:6px}.price-hero-clean h1{font-size:clamp(46px,5vw,68px);margin:6px 0 8px;line-height:1;letter-spacing:-.06em}.price-hero-clean p{margin:0;color:#637b8b;font-size:16px}.price-hero-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:520px}.price-hero-chips span{padding:10px 13px;border:1px solid #d9e6ef;background:#fff;border-radius:4px;font-size:12px;font-weight:850;color:#42647b}
.actioncam-section-v30{margin-top:34px;padding:34px;border-radius:6px;background:linear-gradient(180deg,#f8fbfd,#fff);border:1px solid #dce7ef}.actioncam-section-head{display:grid;grid-template-columns:1fr .9fr;gap:36px;align-items:end;margin-bottom:26px}.actioncam-section-head small{font-size:10px;font-weight:950;letter-spacing:.16em;color:#6e94ad}.actioncam-section-head h2{margin:8px 0 0;font-size:clamp(32px,3.5vw,48px);line-height:1.08;letter-spacing:-.05em;color:#123149}.actioncam-section-head p{margin:0;color:#61798a;line-height:1.75}.actioncam-layout-v30{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:28px;align-items:center}.actioncam-layout-v30 .actioncam-video-shell{width:100%;max-width:360px;margin:0 auto;border-radius:6px;overflow:hidden;position:relative;box-shadow:0 20px 40px rgba(22,55,79,.12)}.actioncam-layout-v30 .actioncam-video{display:block;width:100%;aspect-ratio:406/720;object-fit:cover}.actioncam-detail-v30{display:grid;grid-template-columns:1fr 1fr;gap:14px}.actioncam-feature{padding:24px;border:1px solid #d8e5ee;background:#fff}.actioncam-feature.featured{border-color:#98c9ec;background:#f4faff}.actioncam-feature small{font-size:9px;font-weight:950;letter-spacing:.12em;color:#7897aa}.actioncam-feature h3{margin:8px 0 8px;font-size:24px;color:#173a59}.actioncam-feature p{margin:0;color:#61798a;line-height:1.7}.actioncam-note-v30{grid-column:1/-1;padding:16px 18px;background:#102f47;color:#d8e7f1;border-radius:4px;font-size:13px;line-height:1.65}.actioncam-note-v30::before{content:'✓ ';color:#8dc9f0;font-weight:900}
@media(max-width:1000px){.principle-grid{grid-template-columns:1fr}.adult-pro-box{grid-template-columns:1fr}.price-hero-row{display:block}.price-hero-chips{justify-content:flex-start;margin-top:20px}.actioncam-section-head{grid-template-columns:1fr}.actioncam-layout-v30{grid-template-columns:1fr}.actioncam-detail-v30{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.match-card{padding:22px}.match-card h3{font-size:22px}.principle-grid{margin-top:22px}.principle-grid article{padding:22px}.adult-pro-box{padding:24px 20px;gap:24px}.adult-pro-box h2{font-size:32px}.price-hero-clean{padding:38px 0 24px}.price-hero-clean h1{font-size:44px}.price-hero-chips{gap:6px}.price-hero-chips span{font-size:11px;padding:8px 10px}.actioncam-section-v30{padding:22px 18px;border-radius:6px;margin-top:26px}.actioncam-section-head{gap:12px;margin-bottom:20px}.actioncam-section-head h2{font-size:32px}.actioncam-layout-v30{gap:20px}.actioncam-detail-v30{grid-template-columns:1fr}.actioncam-feature{padding:20px}.actioncam-note-v30{grid-column:auto}.actioncam-layout-v30 .actioncam-video-shell{max-width:310px}}

/* v35.33 Kakao channel */
.footer-links a[data-link="kakao"]{color:#ffe76b;font-weight:800}
.contact-links .btn.kakao{box-shadow:0 12px 24px rgba(254,229,0,.12)}
@media(max-width:680px){.contact-links{grid-template-columns:1fr 1fr}.contact-links .btn.kakao{grid-column:1/-1}}


/* v35.34 floating contact rail */
.quick{gap:8px}
.quick a{width:62px;min-height:58px;line-height:1.25}
.quick .k{background:#FEE500;color:#191600;border-color:#FEE500}


/* v35.35 MOBILE-FIRST POLISH — iPhone 390 baseline */
@media(max-width:680px){
  :root{--pad:16px}
  html{scroll-padding-top:66px}
  body{font-size:14px;line-height:1.62;padding-bottom:calc(66px + env(safe-area-inset-bottom));background:#fff}
  .container{padding-left:16px!important;padding-right:16px!important}

  /* compact top chrome */
  .promo{padding:6px 10px!important;font-size:10px!important;line-height:1.35!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .header-in{height:58px!important}
  .brand img{width:64px!important}
  .menu-btn{width:38px!important;height:38px!important;border-radius:4px!important}
  .header-actions .social{display:none}
  .mobile-menu{padding:9px 16px 12px!important;gap:6px!important;max-height:70dvh;overflow:auto}
  .mobile-menu a{padding:10px 11px!important;font-size:12px!important;border-radius:4px}

  /* consistent mobile rhythm */
  .section,.section.section-gap{padding:44px 0!important}
  .section-head,.compact-head{display:block!important;margin-bottom:0!important}
  .section-head>p,.compact-head>p,.team-lead{margin:10px 0 0!important;max-width:none!important;font-size:13px!important;line-height:1.65!important}
  .h2,.section-head h2,.compact-head h2{font-size:29px!important;line-height:1.12!important;letter-spacing:-.04em!important;margin:7px 0 0!important}
  .lead{font-size:14px!important;line-height:1.67!important}
  .eyebrow{font-size:8px!important;letter-spacing:.13em!important}

  /* HOME hero — shorter first screen */
  .home-hero-grid{padding:23px 0 20px!important;gap:18px!important}
  .home-hero h1{font-size:34px!important;line-height:1.05!important;margin:9px 0 11px!important;letter-spacing:-.045em}
  .hero-sub{font-size:15px!important;margin-bottom:6px!important}
  .home-hero .lead{font-size:13px!important;line-height:1.65!important}
  .hero-actions{grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:17px!important}
  .hero-actions .btn{min-height:43px!important;font-size:12px!important;border-radius:4px!important}
  .hero-actions .primary{grid-column:1/-1}
  .hero-actions .store{grid-column:auto!important}
  .hero-photo{min-height:285px!important;height:285px!important;border-radius:4px!important}
  .hero-caption{left:10px!important;right:10px!important;bottom:10px!important;font-size:9px!important}

  /* 4-point summary: 2x2 instead of four long rows */
  .hero-strip{grid-template-columns:1fr 1fr!important;margin-top:0!important}
  .hero-strip>div{padding:13px 9px!important;border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;min-height:91px}
  .hero-strip>div:nth-child(2n){border-right:0!important}
  .hero-strip>div:nth-last-child(-n+2){border-bottom:0!important}
  .hero-strip small{font-size:7px!important}
  .hero-strip b{font-size:13px!important;margin-top:3px}
  .hero-strip span{font-size:9.5px!important;line-height:1.4!important}
  .service-benefit-strip{grid-template-columns:1fr 1fr!important;margin-top:12px!important}
  .service-benefit-strip>div{padding:13px 10px!important;min-height:92px}
  .service-benefit-strip small{font-size:7px!important}
  .service-benefit-strip b{font-size:13px!important}
  .service-benefit-strip span{font-size:9.5px!important;line-height:1.4!important}

  /* actioncam HOME: compact, balanced, video not oversized */
  .home-page .home-actioncam-section{padding:30px 0 38px!important}
  .home-page .home-actioncam-card{padding:22px 17px 20px!important;gap:18px!important;border-radius:6px!important}
  .home-page .home-actioncam-copy h2{font-size:26px!important;line-height:1.13!important;margin:10px 0 9px!important}
  .home-page .home-actioncam-copy>p{font-size:12.5px!important;line-height:1.62!important}
  .home-page .home-actioncam-points{grid-template-columns:1fr 1fr!important;gap:6px!important;margin:14px 0 12px!important}
  .home-page .home-actioncam-points span,.home-page .home-actioncam-points span:last-child{grid-column:auto!important;width:100%!important;padding:8px!important;font-size:10.5px!important;min-height:50px;align-items:flex-start!important}
  .home-page .home-actioncam-points span:last-child{grid-column:1/-1!important;min-height:0!important}
  .home-page .home-actioncam-note{font-size:11.5px!important;margin-bottom:11px!important}
  .home-page .home-actioncam-video-shell{width:min(64vw,226px)!important;border-radius:6px!important}
  .home-page .home-actioncam-media>small{font-size:9px!important}

  /* generic content cards */
  .split,.split.reverse{gap:20px!important}
  .media{min-height:250px!important;border-radius:4px!important}
  .compare-wrap{padding:18px 15px!important;border-radius:4px!important}
  .compare-panel{padding:17px 15px!important}
  .compare-panel h3{font-size:18px!important}
  .lesson-grid,.teaser-grid,.event-grid,.system-grid,.package-grid,.cost-grid{gap:10px!important;margin-top:18px!important}
  .lesson-card{padding:18px 16px!important}
  .lesson-card h3{font-size:27px!important;margin:5px 0 6px!important}
  .lesson-card p,.lesson-card li{font-size:12px!important;line-height:1.55!important}

  /* curriculum preview 2x2 */
  .stage-grid{grid-template-columns:1fr 1fr!important;gap:8px!important;border:0!important;margin-top:20px!important}
  .stage{padding:17px 14px!important;border:1px solid var(--line)!important;border-radius:4px!important;background:#fff;min-height:145px}
  .stage small{font-size:7.5px!important}
  .stage h3{font-size:20px!important;margin:5px 0 6px!important}
  .stage p{font-size:11.5px!important;line-height:1.55!important}

  /* team: compact but readable */
  .team-standard-strip{display:flex!important;overflow-x:auto;gap:6px!important;margin:14px -16px 16px!important;padding:0 16px 4px!important;scrollbar-width:none}
  .team-standard-strip::-webkit-scrollbar{display:none}
  .team-standard-strip span{flex:0 0 auto;padding:8px 10px!important;font-size:10px!important;border-radius:4px!important}
  .coach-grid{gap:9px!important}
  .coach-card{grid-template-columns:78px 1fr!important;gap:11px!important;padding:10px!important;border-radius:4px!important}
  .coach-card img{width:78px!important;height:108px!important;border-radius:4px!important}
  .coach-copy small{font-size:7px!important}
  .coach-copy h3{font-size:16px!important;margin:3px 0 5px!important}
  .coach-copy h3 em{font-size:9px!important;display:inline!important}
  .coach-copy ul{font-size:10px!important;line-height:1.45!important;padding-left:13px!important}
  .coach-copy li{margin:2px 0!important}
  .education-band{display:block!important;padding:19px 16px!important;border-radius:4px!important}
  .education-band h3{font-size:20px!important;margin:6px 0 13px!important}
  .education-flow{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
  .education-flow i{display:none!important}
  .education-flow span{padding:8px!important;font-size:10px!important;text-align:center!important}

  /* season/photo teasers shorter */
  .teaser{min-height:205px!important;border-radius:4px!important}
  .teaser-body{left:14px!important;right:14px!important;bottom:14px!important}
  .teaser-body h3{font-size:20px!important;margin:4px 0!important}
  .teaser-body p{font-size:11px!important;line-height:1.45!important}

  /* reviews: screenshots must remain readable */
  .review-wall-home,.review-wall-full,.review-wall-readable{grid-template-columns:1fr!important;gap:13px!important;margin-top:20px!important}
  .wall-card{padding:9px!important;border-radius:4px!important;transform:none!important}
  .wall-card img{border-radius:4px!important}
  .review-mini-grid,.review-mini-grid-home,.review-quote-grid{gap:8px!important}
  .review-mini{padding:16px!important}
  .gratitude-section{padding:31px 0!important}
  .gratitude-section h2{font-size:24px!important;line-height:1.25!important}

  /* curriculum page */
  .subhero{padding:27px 0 16px!important}
  .subhero h1{font-size:33px!important;line-height:1.08!important;margin:8px 0 10px!important}
  .subhero p{font-size:13px!important;line-height:1.65!important}
  .subhero .media{min-height:245px!important}
  .curriculum-pro{padding:40px 0!important}
  .curr-list-pro{margin-top:16px!important}
  .curr-list-pro .curr-item summary{grid-template-columns:40px 1fr auto!important;padding:14px 5px 14px 9px!important}
  .curr-list-pro h3{font-size:17px!important}
  .curr-body-pro{padding:0 3px 18px 9px!important;gap:12px!important}
  .stage-goal{padding:15px!important;border-radius:4px!important}
  .principle-grid{gap:9px!important;margin-top:18px!important}
  .principle-grid article{padding:18px 16px!important}
  .principle-grid h3{font-size:20px!important}
  .adult-pro-box{padding:20px 16px!important;gap:17px!important;border-radius:4px!important}
  .adult-pro-box h2{font-size:28px!important}
  .adult-program-grid article{padding:17px 16px!important}
  .adult-program-grid h3{font-size:19px!important}

  /* PRICE: real mobile cards instead of wide horizontal table */
  .price-hero-clean{padding:27px 0 18px!important}
  .price-hero-clean h1{font-size:38px!important;margin:5px 0 6px!important}
  .price-hero-clean p{font-size:13px!important}
  .price-hero-chips{flex-wrap:nowrap!important;overflow-x:auto!important;margin:14px -16px 0!important;padding:0 16px 5px!important;gap:6px!important;scrollbar-width:none}
  .price-hero-chips::-webkit-scrollbar{display:none}
  .price-hero-chips span{flex:0 0 auto;font-size:10px!important;padding:7px 9px!important}
  .price-main-v17{padding-top:35px!important}
  .price-table-wrap{margin:18px 0 0!important;padding:0!important;border:0!important;overflow:visible!important;background:transparent!important}
  .price-table{min-width:0!important;width:100%!important;display:block!important}
  .price-table thead{display:none!important}
  .price-table tbody{display:grid!important;gap:9px!important}
  .price-table tr{display:grid!important;grid-template-columns:.62fr 1fr 1fr!important;gap:0!important;padding:15px 14px!important;background:#fff;border:1px solid #dbe7ef;border-radius:4px!important;overflow:hidden}
  .price-table td{display:block!important;padding:0 8px!important;border:0!important;text-align:left!important;min-width:0!important}
  .price-table td:first-child{font-size:20px!important;display:flex!important;align-items:center!important;padding-left:0!important;color:#173a59}
  .price-table td:nth-child(2)::before,.price-table td:nth-child(3)::before{display:block;margin-bottom:3px;font-size:8px;font-weight:900;letter-spacing:.08em;color:#8ba0ae}
  .price-table td:nth-child(2)::before{content:'2시간'}
  .price-table td:nth-child(3)::before{content:'4시간'}
  .price-table td strong{font-size:15px!important;white-space:nowrap}
  .price-table .sub{font-size:9px!important;margin-top:2px}
  .price-table td:nth-child(4){grid-column:1/-1;margin-top:11px;padding:10px 0 0!important;border-top:1px solid #e7eef3!important;font-size:11px!important;color:#657c8b}
  .mobile-scroll-hint{display:none!important}
  .price-subsection{margin-top:34px!important;padding-top:32px!important}
  .program-package-grid{gap:10px!important;margin-top:16px!important}
  .program-package{padding:26px 16px 18px!important;border-radius:4px!important}
  .actioncam-loyalty-v17{padding:18px 16px!important;margin-top:20px!important;border-radius:4px!important}
  .actioncam-loyalty-v17 h3{font-size:20px!important}
  .actioncam-section-v30{padding:18px 14px!important;border-radius:4px!important;margin-top:22px!important}
  .actioncam-section-head h2{font-size:27px!important}
  .actioncam-layout-v30 .actioncam-video-shell{max-width:236px!important;border-radius:4px!important}
  .actioncam-feature{padding:16px!important}
  .actioncam-feature h3{font-size:20px!important}

  /* EVENT: reduce oversized hero and repeated vertical space */
  .yaho-hero{padding:25px 0 30px!important}
  .yaho-hero h1{font-size:34px!important;line-height:1.04!important}
  .yaho-hero-visual>img{height:235px!important;border-radius:4px!important}
  .yaho-stamp{width:66px!important;height:66px!important}
  .yaho-stamp b{font-size:15px!important}
  .yaho-oneplus{grid-template-columns:1fr!important;gap:15px!important;padding:18px 15px!important;margin-top:18px!important;border-radius:4px!important}
  .yaho-oneplus-copy h3{font-size:26px!important}
  .yaho-oneplus-copy strong{font-size:19px!important}
  .yaho-math{padding:14px 8px!important;border-radius:4px!important}
  .yaho-math b{font-size:21px!important}
  .yaho-pass-grid{grid-template-columns:1fr!important;gap:9px!important;margin-top:18px!important}
  .yaho-pass{padding:19px 16px!important;border-radius:4px!important}
  .yaho-pass h3{font-size:23px!important}
  .event-request-note{padding:13px 14px!important;margin-top:14px!important}

  /* contact / FAQ / footer */
  .contact-grid{gap:20px!important}
  .contact h2{font-size:29px!important}
  .contact-links{grid-template-columns:1fr 1fr!important;gap:7px!important}
  .contact-links .btn{font-size:11px!important;min-height:42px!important}
  .contact-links .btn.kakao{grid-column:1/-1!important}
  .form{padding:16px 14px!important;border-radius:4px!important}
  .form h3{font-size:21px!important}
  footer{padding:25px 0 calc(78px + env(safe-area-inset-bottom))!important}
  .footer-grid{gap:12px!important}
  .footer-links{gap:8px!important}
  .footer-links a{font-size:10.5px!important}

  /* one mobile contact dock; no duplicated right rail */
  .quick{display:none!important}
  .mobile-contact-dock{display:grid!important;grid-template-columns:.78fr 1fr 1.35fr!important;gap:5px!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:70!important;padding:6px 8px calc(6px + env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.96)!important;border-top:1px solid #dce7ef!important;box-shadow:0 -8px 24px rgba(16,42,63,.08)!important;backdrop-filter:blur(12px)}
  .mobile-contact-dock a{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:5px 6px!important;border-radius:4px!important;text-decoration:none!important;background:#f4f7f9!important;color:#18384f!important;font-size:9px!important;line-height:1.2!important}
  .mobile-contact-dock a span{opacity:.7;font-weight:700!important}
  .mobile-contact-dock a b{font-size:11px!important;margin-top:2px!important;font-weight:900!important;white-space:nowrap}
  .mobile-contact-dock .kakao{background:#FEE500!important;color:#211d00!important}
  .mobile-contact-dock .store{background:#03C75A!important;color:#fff!important}

  /* popup safely fits short iPhone viewport */
  .popup-layer{padding:max(8px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))!important}
  .popup{border-radius:4px!important}
  .popup-image{height:130px!important;min-height:130px!important}
  .popup-body{padding:15px 14px!important}
  .popup-body-v3 h2{font-size:23px!important;margin:7px 0 10px!important}
  .popup-offer{padding:10px 11px!important}
  .popup-actions .btn{min-height:43px!important}
}

@media(max-width:375px){
  .home-hero h1{font-size:31px!important}
  .h2,.section-head h2,.compact-head h2{font-size:27px!important}
  .home-page .home-actioncam-video-shell{width:min(68vw,215px)!important}
  .price-table tr{padding:13px 11px!important}
  .price-table td{padding:0 5px!important}
  .price-table td strong{font-size:14px!important}
}

/* v35.35 dock label cleanup */
@media(max-width:680px){.mobile-contact-dock a b{font-size:10.5px!important;margin:0!important}.mobile-contact-dock a span{display:none!important}}

/* v35.36 MOBILE HERO BREATHING PASS — restore container gutters + section-end space */
@media(max-width:680px){
  /* The hero grid is also a .container. Earlier shorthand padding zeroed its side gutters. */
  .home-page .home-hero-grid{
    padding:34px 20px 34px!important;
    gap:30px!important;
  }
  .home-page .home-hero-grid>div:first-child{
    padding:0!important;
  }
  .home-page .home-hero .eyebrow{
    margin-bottom:10px!important;
  }
  .home-page .home-hero h1{
    margin:0 0 20px!important;
    font-size:34px!important;
    line-height:1.07!important;
    letter-spacing:-.045em!important;
  }
  .home-page .hero-sub{
    margin:0 0 13px!important;
    font-size:15px!important;
    line-height:1.55!important;
  }
  .home-page .home-hero .lead{
    margin:0!important;
    font-size:13px!important;
    line-height:1.72!important;
  }
  .home-page .hero-actions{
    margin-top:26px!important;
    gap:9px!important;
  }
  .home-page .hero-actions .btn{
    min-height:47px!important;
    border-radius:4px!important;
  }
  .home-page .hero-photo{
    margin:2px 0 0!important;
    min-height:300px!important;
    height:300px!important;
    border-radius:6px!important;
  }
  .home-page .hero-caption{
    left:13px!important;
    right:13px!important;
    bottom:13px!important;
  }
  /* leave a clear visual break before the compact summary cards */
  .home-page .hero-strip{
    margin-top:6px!important;
  }
  .home-page .service-benefit-strip{
    margin-top:16px!important;
    margin-bottom:18px!important;
  }

  /* top chrome: slightly more air without wasting the first screen */
  .home-page .header-in{
    height:64px!important;
  }
  .home-page .brand img{
    width:67px!important;
  }

  /* keep all page-top container gutters intact on mobile */
  .subhero-grid,.yaho-hero-grid,.contact-grid,.footer-grid{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}

@media(max-width:375px){
  .home-page .home-hero-grid{padding:30px 18px 30px!important;gap:26px!important}
  .home-page .home-hero h1{font-size:31px!important;margin-bottom:18px!important}
  .home-page .hero-actions{margin-top:23px!important}
  .home-page .hero-photo{height:285px!important;min-height:285px!important}
}


/* v35.37 conversion-flow refinement */
.home-core-section{padding-top:62px;padding-bottom:68px;background:#fff}
.home-core-head{align-items:end}
.home-core-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.home-core-grid article{padding:26px 24px;border:1px solid #dfe7ed;border-radius:6px;background:linear-gradient(180deg,#fff,#f8fbfd)}
.home-core-grid article span{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e9f3ff;color:#2874cf;font-size:11px;font-weight:1000}
.home-core-grid h3{font-size:22px;margin:16px 0 8px;color:#102f47}.home-core-grid p{margin:0;color:#5f7788;line-height:1.7;font-size:14px}.home-core-grid b{display:block;margin-top:16px;color:#2874cf;font-size:12px}
.home-review-summary,.review-context-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 26px}
.home-review-summary article,.review-context-grid article{padding:22px;border-radius:6px;background:#fff;border:1px solid #dfe7ed}
.home-review-summary small,.review-context-grid small{font-size:10px;font-weight:1000;letter-spacing:.08em;color:#6e8fa5}.home-review-summary h3,.review-context-grid h3{font-size:18px;line-height:1.35;margin:9px 0 7px;color:#102f47}.home-review-summary p,.review-context-grid p{margin:0;color:#61798a;font-size:13px;line-height:1.65}
.review-source-link{display:inline-flex;margin-left:16px;color:#03a94f;font-size:13px;font-weight:900}.block-source{margin:0 0 22px}
.home-price-cost-note,.price-immediate-note{margin-top:16px;padding:15px 17px;border-radius:4px;background:#fff7d8;border:1px solid #f1dc82;display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#5c4c17}
.home-price-cost-note b,.price-immediate-note b{color:#102f47}.home-price-cost-note span,.price-immediate-note span{font-weight:900}.home-price-cost-note small,.price-immediate-note small{width:100%;color:#7a692b;line-height:1.5}
.compact-form-grid .field textarea{min-height:82px}.field-help{font-size:11px;color:#6c8495;line-height:1.5}.contact-payment-note{margin-top:12px!important;color:#8fb0c7!important;font-size:12px!important}
.event-condition-card{margin:18px 0 24px;padding:24px;border-radius:6px;background:#fff;border:1px solid #dfe7ed}.condition-title small{font-size:9px;font-weight:1000;letter-spacing:.1em;color:#7494a8}.condition-title h3{font-size:22px;margin:5px 0 18px;color:#102f47}.condition-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #e2e9ee;border-left:1px solid #e2e9ee}.condition-grid div{display:grid;grid-template-columns:92px 1fr;border-right:1px solid #e2e9ee;border-bottom:1px solid #e2e9ee;padding:12px 13px;gap:8px}.condition-grid b{font-size:12px;color:#102f47}.condition-grid span{font-size:12px;color:#5f7788;line-height:1.55}.event-condition-card>p{margin:13px 0 0;color:#778e9d;font-size:11px;line-height:1.6}.event-form-note{margin-bottom:24px;padding:16px 18px;border-radius:4px;background:#eaf5ff;border:1px solid #cfe5f8}.event-form-note b,.event-form-note span{display:block}.event-form-note b{font-size:14px;color:#102f47}.event-form-note span{margin-top:4px;color:#58758a;font-size:12px}
/* better home flow */
.home-page #review-highlights{order:unset}.home-page .home-actioncam-section{padding-top:72px;padding-bottom:72px}
.home-page .home-hero .hero-actions .store{display:none!important}

@media(max-width:900px){.home-core-grid,.home-review-summary,.review-context-grid{grid-template-columns:1fr}.condition-grid{grid-template-columns:1fr}.condition-grid div{grid-template-columns:88px 1fr}.review-source-link{margin-left:0;margin-top:12px}}
@media(max-width:680px){
  .home-core-section{padding-top:48px;padding-bottom:52px}.home-core-grid{gap:10px;margin-top:18px}.home-core-grid article{padding:19px 17px;border-radius:4px}.home-core-grid h3{font-size:18px;margin:12px 0 6px}.home-core-grid p{font-size:12px}.home-review-summary,.review-context-grid{gap:10px;margin:18px 0 20px}.home-review-summary article,.review-context-grid article{padding:17px 15px;border-radius:4px}.home-review-summary h3,.review-context-grid h3{font-size:16px}.home-review-summary p,.review-context-grid p{font-size:12px}.home-price-cost-note,.price-immediate-note{align-items:flex-start;gap:5px;padding:13px 14px}.home-price-cost-note b,.home-price-cost-note span,.price-immediate-note b,.price-immediate-note span{width:100%}.event-condition-card{padding:18px 15px;border-radius:4px}.condition-grid div{grid-template-columns:78px 1fr;padding:11px 10px}.compact-form-grid{gap:11px}.contact-payment-note{margin-top:10px!important}.home-page .home-hero h1{font-size:31px!important;line-height:1.08!important;letter-spacing:-.04em!important}.home-page .home-hero h1 em{white-space:nowrap}.home-page .hero-actions{grid-template-columns:1fr 1fr!important}.home-page .hero-actions .primary{grid-column:auto!important}.home-page .hero-photo img{object-position:center 38%}}
@media(max-width:370px){.home-page .home-hero h1{font-size:29px!important}.home-page .home-hero h1 em{white-space:normal}}


/* v35.38 — free rental emphasis + season visual */
.rental-core-card{
  position:relative;
  overflow:hidden;
}
.rental-core-card::after{
  content:"FREE RENTAL";
  position:absolute;
  right:18px;
  top:18px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  color:#2674d8;
  background:#eef6ff;
  padding:7px 9px;
  border-radius:4px;
}
.rental-media{position:relative}
.rental-media-note{
  display:flex!important;
  flex-direction:column;
  align-items:flex-start;
  gap:7px;
  padding:20px 22px!important;
}
.rental-media-note small{
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
  color:#2674d8;
}
.rental-media-note b{
  font-size:20px;
  line-height:1.3;
  color:#0d2b43;
}
.rental-media-note p{
  margin:0;
  font-size:13px;
  line-height:1.6;
  color:#5e7384;
}
.rental-media-note em{
  font-style:normal;
  font-size:12px;
  font-weight:800;
  color:#0d2b43;
}
.rental-cost-box{
  border:2px solid #d6e9ff!important;
  background:linear-gradient(180deg,#f7fbff 0%,#fff 100%)!important;
}
.free-rental-head{
  margin:-2px -2px 22px;
  padding:22px;
  border-radius:6px 12px 12px 12px;
  background:#0d2b43;
  color:#fff;
  display:flex;
  flex-direction:column;
  gap:5px;
}
.free-rental-head small{
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
  color:#8fc3e8;
}
.free-rental-head strong{
  font-size:22px;
  line-height:1.25;
}
.free-rental-head span{
  font-size:14px;
  font-weight:800;
  color:#d9ecff;
}
.season-visual-feature{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);
  gap:0;
  overflow:hidden;
  border:1px solid #d9e5ee;
  border-radius:6px;
  background:#0d2b43;
  text-decoration:none;
  margin-top:26px;
  box-shadow:0 18px 45px rgba(13,43,67,.08);
}
.season-visual-image{
  background:#091f31;
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.season-visual-image img{
  width:100%;
  height:100%;
  max-height:520px;
  object-fit:cover;
  display:block;
}
.season-visual-copy{
  color:#fff;
  padding:42px 38px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.season-visual-copy small{
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  color:#8fc3e8;
}
.season-visual-copy h3{
  margin:12px 0 12px;
  font-size:34px;
  line-height:1.18;
}
.season-visual-copy p{
  margin:0 0 24px;
  color:#d6e5ef;
  line-height:1.7;
}
.season-visual-copy span{
  font-weight:900;
  color:#fff;
}
.season-link-grid{margin-top:20px}

@media(max-width:760px){
  .rental-core-card::after{right:14px;top:14px;font-size:9px}
  .rental-media-note{padding:16px 17px!important}
  .rental-media-note b{font-size:18px}
  .free-rental-head{padding:18px}
  .free-rental-head strong{font-size:19px}
  .season-visual-feature{
    grid-template-columns:1fr;
    border-radius:6px;
    margin-top:20px;
  }
  .season-visual-image{
    min-height:0;
    aspect-ratio:1/1;
  }
  .season-visual-image img{
    max-height:none;
    object-fit:contain;
  }
  .season-visual-copy{
    padding:24px 20px 26px;
  }
  .season-visual-copy h3{
    font-size:27px;
    margin-top:9px;
  }
  .season-visual-copy p{font-size:14px;margin-bottom:18px}
}

/* =========================================================
   v35.39 HOME restructuring — clarity, differentiation, mobile
   ========================================================= */
.home-hero-v39{background:linear-gradient(180deg,#f7fbff 0%,#fff 100%)}
.home-hero-v39 .home-hero-grid{align-items:center;gap:54px;padding-top:66px;padding-bottom:70px}
.home-hero-v39 .home-hero-copy{min-width:0}
.home-hero-v39 .eyebrow{color:#58758d;letter-spacing:.15em;font-weight:900}
.home-hero-v39 h1{max-width:650px;font-size:64px;line-height:1.04;letter-spacing:-.055em;margin:14px 0 21px;color:#102d43}
.home-hero-v39 h1 em{font-style:normal;color:#3478d5}
.home-hero-v39 .hero-sub{font-size:20px;line-height:1.5;font-weight:850;color:#244c68;margin:0 0 13px}
.home-hero-v39 .lead{max-width:620px;font-size:16px;line-height:1.75;color:#6c8192}
.home-hero-v39 .hero-actions{margin-top:29px;display:flex;gap:10px}
.hero-proof-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px;max-width:650px}
.hero-proof-row span{padding:13px 14px;border:1px solid #dbe6ee;border-radius:4px;background:#fff;display:flex;flex-direction:column;gap:3px}
.hero-proof-row b{font-size:13px;color:#12334c}
.hero-proof-row small{font-size:10px;color:#718899;line-height:1.35}
.hero-photo-v39{height:565px;min-height:565px;border-radius:6px;overflow:hidden;box-shadow:0 24px 70px rgba(17,50,73,.14);position:relative;background:#eaf3f9}
.hero-photo-v39 img{width:100%;height:100%;object-fit:cover;object-position:center 35%}
.hero-photo-v39 .hero-caption{background:rgba(8,35,55,.80);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.17)}

.return-section{padding-top:84px;padding-bottom:88px;background:#fff}
.return-head{align-items:end}
.return-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.return-card{position:relative;min-height:350px;padding:30px 26px 28px;border:1px solid #dce6ed;border-radius:6px;background:#fff;overflow:hidden;box-shadow:0 13px 34px rgba(17,50,73,.055)}
.return-card::after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-65px;top:-65px;background:#edf6ff;z-index:0}
.return-card>*{position:relative;z-index:1}
.return-no{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#112f47;color:#fff;font-size:11px;font-weight:950}
.return-icon{margin-top:31px;font-size:12px;font-weight:1000;letter-spacing:.05em;color:#307bd9}
.return-card h3{font-size:24px;line-height:1.27;letter-spacing:-.035em;color:#102f47;margin:10px 0 12px}
.return-card strong{display:block;font-size:15px;line-height:1.55;color:#2775d4;margin-bottom:12px}
.return-card p{font-size:13px;line-height:1.78;color:#62798a;margin:0}
.return-card small{display:block;margin-top:20px;padding-top:15px;border-top:1px solid #e6edf2;color:#536f82;font-size:11px;line-height:1.55;font-weight:750}
.return-rental{background:linear-gradient(180deg,#f7fbff,#fff)}
.return-coach{background:linear-gradient(180deg,#102f47,#173f5d);border-color:#173f5d}
.return-coach::after{background:rgba(94,170,240,.10)}
.return-coach .return-no{background:#fff;color:#173f5d}
.return-coach .return-icon,.return-coach strong{color:#91c9ff}
.return-coach h3{color:#fff}
.return-coach p{color:#d4e3ed}
.return-coach small{color:#bad1df;border-top-color:rgba(255,255,255,.14)}
.return-kids .return-icon{font-size:24px;line-height:1;color:#e04c78}

.home-review-v39{padding-top:80px;padding-bottom:84px}
.review-voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0 28px}
.review-voice-grid article{padding:25px 23px;border:1px solid #dce6ed;border-radius:6px;background:#fff}
.review-voice-grid small{font-size:10px;font-weight:900;letter-spacing:.06em;color:#67869a}
.review-voice-grid h3{font-size:20px;line-height:1.42;letter-spacing:-.025em;color:#102f47;margin:10px 0 9px}
.review-voice-grid p{font-size:13px;line-height:1.65;color:#6b8192;margin:0}
.review-proof-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:start}
.review-proof-strip .review-paper{margin:0!important;transform:none!important;min-width:0}
.review-proof-strip .review-paper img{width:100%;height:auto;display:block}
.section-links-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:22px}
.section-links-row .review-source-link{margin:0}

.lesson-price-section{padding-top:84px;padding-bottom:88px;background:#fff}
.lesson-price-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:22px;margin-top:28px;align-items:stretch}
.lesson-mini-area{display:flex;flex-direction:column}
.lesson-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;flex:1}
.lesson-mini{padding:25px 22px;border:1px solid #dce6ed;border-radius:6px;background:#f8fbfd;min-height:220px}
.lesson-mini.featured{background:#eef6ff;border-color:#cfe3f8}
.lesson-mini small{font-size:10px;font-weight:900;color:#618198;letter-spacing:.05em}
.lesson-mini h3{font-size:36px;letter-spacing:-.04em;color:#102f47;margin:14px 0 11px}
.lesson-mini p{margin:0;color:#60798b;font-size:13px;line-height:1.65}
.lesson-mini-area .link-arrow{margin-top:22px}
.price-focus-card{padding:29px 28px;border-radius:6px;background:#102f47;color:#fff;box-shadow:0 18px 45px rgba(16,47,71,.15)}
.price-focus-card>small{font-size:10px;color:#97b8ce;font-weight:900;letter-spacing:.12em}
.price-focus-title{font-size:17px;font-weight:900;color:#d8e8f2;margin-top:15px}
.price-focus-value{font-size:41px;font-weight:1000;letter-spacing:-.045em;margin:5px 0 20px}
.price-focus-card ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.price-focus-card li{font-size:13px;line-height:1.55;color:#d7e6ef;padding-left:18px;position:relative}
.price-focus-card li::before{content:"✓";position:absolute;left:0;color:#86c8ff;font-weight:1000}
.price-focus-card li b{color:#fff}
.price-extra{margin:22px 0 21px;padding:15px 16px;border-radius:4px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:4px}
.price-extra b{font-size:11px;color:#97c8ed}.price-extra span{font-size:13px;font-weight:850}.price-extra small{font-size:10px;line-height:1.5;color:#bfd2df}
.full-btn{width:100%;justify-content:center}

.lesson-flow-section{padding-top:80px;padding-bottom:82px}
.process-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:27px}
.process-grid article{position:relative;padding:22px 16px 20px;border-radius:6px;background:#fff;border:1px solid #dfe8ee;min-width:0}
.process-grid article:not(:last-child)::after{content:"→";position:absolute;right:-9px;top:29px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#e8f3fd;color:#3175c9;font-size:10px;font-weight:1000;z-index:2}
.process-grid span{display:block;font-size:9px;font-weight:950;color:#3980d5;letter-spacing:.08em;margin-bottom:12px}
.process-grid b{display:block;font-size:16px;color:#102f47;margin-bottom:7px}
.process-grid p{margin:0;font-size:11px;line-height:1.55;color:#6c8292}
.flow-note{margin:17px 0 0;padding:14px 16px;border-radius:4px;background:#eaf5ff;color:#58778d;font-size:12px;line-height:1.65}
.flow-note b{color:#102f47}.flow-note span{padding:0 7px;color:#93a8b7}

.curriculum-home-section{padding-top:82px;padding-bottom:84px;background:#fff}
.curriculum-compact-wrap{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr);gap:42px;align-items:center;padding:38px 40px;border:1px solid #dce6ed;border-radius:6px;background:linear-gradient(135deg,#f8fbfd,#fff)}
.curriculum-copy h2{font-size:36px;line-height:1.15;letter-spacing:-.04em;color:#102f47;margin:9px 0 13px}
.curriculum-copy p{font-size:14px;line-height:1.7;color:#657d8e;margin:0 0 18px}
.curriculum-steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:8px}
.curriculum-steps article{padding:21px 16px;border-radius:6px;background:#fff;border:1px solid #dce6ed;text-align:center}
.curriculum-steps span{font-size:9px;font-weight:950;color:#3d80d3}.curriculum-steps b{display:block;margin:8px 0 5px;font-size:18px;color:#102f47}.curriculum-steps small{font-size:10px;color:#738898;line-height:1.4}.curriculum-steps i{font-style:normal;color:#75a8cf;font-weight:1000}

.home-actioncam-v39{padding-top:80px;padding-bottom:80px;background:#102f47}
.actioncam-grid-v39{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:50px;align-items:center;max-width:1000px;margin:auto}
.actioncam-video-wrap{position:relative;max-width:330px;margin:auto;width:100%}
.actioncam-video-wrap .home-actioncam-video{width:100%;display:block;border-radius:6px;box-shadow:0 24px 55px rgba(0,0,0,.25);background:#000;aspect-ratio:406/720;object-fit:cover}
.actioncam-label{position:absolute;left:14px;top:14px;z-index:2;background:rgba(255,255,255,.92);color:#113047;border-radius:4px;padding:7px 10px;font-size:9px;font-weight:950}
.light-kicker{color:#83bae2!important}
.actioncam-copy-v39 h2{font-size:40px;line-height:1.12;letter-spacing:-.04em;color:#fff;margin:10px 0 16px}
.actioncam-copy-v39>p{font-size:14px;line-height:1.8;color:#c4d6e1;max-width:590px}
.actioncam-benefits-v39{display:grid;gap:9px;margin:23px 0 24px}
.actioncam-benefits-v39 span{padding:13px 15px;border-radius:4px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.1);color:#cfe1ec;font-size:12px}
.actioncam-benefits-v39 b{color:#fff}
.actioncam-copy-v39 .home-actioncam-link{color:#fff}

.team-system-v39{padding-top:84px;padding-bottom:88px;background:#fff}
.team-system-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:46px;align-items:center}
.team-system-copy h2{font-size:39px;line-height:1.17;letter-spacing:-.04em;color:#102f47;margin:10px 0 18px}
.team-system-copy>p{font-size:14px;line-height:1.75;color:#647c8d;max-width:640px}
.team-system-copy .team-important{padding:15px 17px;border-left:4px solid #2e7bd8;background:#eef6ff;color:#274d68;border-radius:0 12px 12px 0;margin:0 0 14px}
.team-system-copy .team-important b{color:#102f47}
.team-standard-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}
.team-standard-list span{padding:11px 12px;border:1px solid #dce6ed;border-radius:4px;background:#fafcfd;color:#47677d;font-size:11px;font-weight:800}
.team-people-compact{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.team-people-compact article{display:grid;grid-template-columns:58px 1fr;grid-template-rows:auto auto;column-gap:13px;align-items:center;padding:13px;border:1px solid #dce6ed;border-radius:4px;background:#f9fbfc}
.team-people-compact article img{grid-row:1/3;width:58px;height:70px;object-fit:cover;border-radius:4px;filter:grayscale(.05)}
.team-people-compact article b{align-self:end;font-size:14px;color:#102f47}.team-people-compact article small{align-self:start;font-size:10px;color:#7590a2;margin-top:2px}
.team-more-note{grid-column:1/-1;padding:16px 17px;border-radius:4px;background:#102f47;color:#fff;display:flex;flex-direction:column;gap:4px}
.team-more-note b{font-size:13px}.team-more-note span{font-size:10px;line-height:1.55;color:#c6d9e5}

.yaho-home-section{padding-top:82px;padding-bottom:88px;background:#f3f8fc}
.yaho-home-grid{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.15fr);gap:0;border-radius:6px;overflow:hidden;background:#102f47;box-shadow:0 20px 55px rgba(16,47,71,.12)}
.yaho-home-image{background:#071d2c;min-height:530px}.yaho-home-image img{width:100%;height:100%;display:block;object-fit:cover}
.yaho-home-copy{padding:48px 44px;color:#fff;display:flex;flex-direction:column;justify-content:center}
.yaho-home-copy .section-kicker{color:#88c2eb}.yaho-home-copy h2{font-size:41px;line-height:1.1;letter-spacing:-.04em;margin:9px 0 8px}.yaho-home-lead{font-size:17px;font-weight:850;color:#d7e7f0;margin:0 0 25px}
.yaho-offer-mini{display:grid;gap:10px}.yaho-offer-mini article{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:4px;background:rgba(255,255,255,.06)}
.yaho-offer-mini small{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#fff;color:#102f47;font-weight:950}.yaho-offer-mini b,.yaho-offer-mini span{display:block}.yaho-offer-mini b{font-size:15px;color:#fff;margin-bottom:4px}.yaho-offer-mini span{font-size:11px;line-height:1.5;color:#bed3e0}
.yaho-fine{font-size:10px;line-height:1.6;color:#a9c2d2;margin:16px 0 22px}.yaho-actions{display:flex;gap:10px;flex-wrap:wrap}.yaho-actions .ghost{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.05)}

.price-top-benefit{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:15px 0 19px;padding:14px 16px;border:1px solid #cfe2f5;background:#eef6ff;border-radius:4px}.price-top-benefit b{color:#1261b3}.price-top-benefit span{font-size:12px;color:#55758b;font-weight:800}

@media(max-width:1000px){
  .home-hero-v39 .home-hero-grid{gap:32px}
  .home-hero-v39 h1{font-size:53px}
  .return-grid,.review-voice-grid{grid-template-columns:1fr 1fr}
  .return-grid .return-card:last-child,.review-voice-grid article:last-child{grid-column:1/-1}
  .lesson-price-layout{grid-template-columns:1fr}.price-focus-card{max-width:none}
  .process-grid{grid-template-columns:repeat(3,1fr)}.process-grid article:nth-child(3)::after{display:none}
  .curriculum-compact-wrap,.team-system-grid{grid-template-columns:1fr;gap:28px}
  .yaho-home-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:760px){
  .home-hero-v39 .home-hero-grid{padding:38px 20px 42px!important;gap:30px!important}
  .home-hero-v39 h1{font-size:38px!important;line-height:1.08!important;margin:10px 0 18px!important;letter-spacing:-.045em!important}
  .home-hero-v39 .hero-sub{font-size:15px!important;line-height:1.55!important;margin-bottom:10px!important}
  .home-hero-v39 .lead{font-size:13px!important;line-height:1.7!important}
  .home-hero-v39 .hero-actions{margin-top:23px!important;display:grid!important;grid-template-columns:1.12fr .88fr!important;gap:9px!important}
  .hero-proof-row{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:16px}
  .hero-proof-row span{padding:10px 8px;border-radius:4px;text-align:center;align-items:center}
  .hero-proof-row b{font-size:10px}.hero-proof-row small{font-size:8px}
  .hero-photo-v39{height:330px!important;min-height:330px!important;border-radius:6px!important;margin-top:0!important}
  .hero-photo-v39 img{object-position:center 30%}

  .return-section,.home-review-v39,.lesson-price-section,.lesson-flow-section,.curriculum-home-section,.team-system-v39,.yaho-home-section{padding-top:54px;padding-bottom:58px}
  .return-head,.section-head{display:block}.short-copy{margin-top:8px!important}
  .return-grid{grid-template-columns:1fr;gap:11px;margin-top:20px}.return-grid .return-card:last-child{grid-column:auto}
  .return-card{min-height:0;padding:22px 19px 21px;border-radius:6px}.return-icon{margin-top:20px}.return-card h3{font-size:20px;margin-top:8px}.return-card strong{font-size:13px}.return-card p{font-size:12px}.return-card small{margin-top:15px;padding-top:12px;font-size:10px}

  .review-voice-grid{grid-template-columns:1fr;gap:9px;margin:18px 0 20px}.review-voice-grid article:last-child{grid-column:auto}.review-voice-grid article{padding:18px 16px;border-radius:4px}.review-voice-grid h3{font-size:17px;margin:7px 0 6px}.review-voice-grid p{font-size:11px}
  .review-proof-strip{grid-template-columns:1fr;gap:12px}.review-proof-strip .review-paper{max-width:100%}
  .section-links-row{margin-top:16px;gap:8px;align-items:flex-start;flex-direction:column}

  .lesson-price-layout{margin-top:20px;gap:15px}.lesson-mini-grid{grid-template-columns:repeat(3,1fr);gap:7px}.lesson-mini{min-height:150px;padding:16px 11px;border-radius:4px}.lesson-mini small{font-size:8px}.lesson-mini h3{font-size:27px;margin:10px 0 7px}.lesson-mini p{font-size:10px;line-height:1.5}.lesson-mini-area .link-arrow{margin-top:14px}.price-focus-card{padding:23px 19px;border-radius:6px}.price-focus-title{font-size:14px}.price-focus-value{font-size:34px;margin-bottom:17px}.price-focus-card li{font-size:12px}.price-extra{margin:17px 0 18px}

  .process-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.process-grid article{padding:17px 14px;border-radius:4px}.process-grid article::after{display:none!important}.process-grid b{font-size:14px}.process-grid p{font-size:10px}.flow-note{font-size:10px;padding:12px 13px}.flow-note span{display:none}.flow-note b:nth-of-type(2)::before{content:" · ";color:#94a9b8}

  .curriculum-compact-wrap{grid-template-columns:1fr;padding:24px 19px;border-radius:6px;gap:22px}.curriculum-copy h2{font-size:28px}.curriculum-copy p{font-size:12px}.curriculum-steps{grid-template-columns:1fr 1fr;gap:8px}.curriculum-steps i{display:none}.curriculum-steps article{padding:15px 10px;border-radius:4px}.curriculum-steps b{font-size:16px}.curriculum-steps small{font-size:9px}

  .home-actioncam-v39{padding-top:55px;padding-bottom:58px}.actioncam-grid-v39{grid-template-columns:1fr;gap:26px}.actioncam-video-wrap{max-width:260px}.actioncam-copy-v39{text-align:left}.actioncam-copy-v39 h2{font-size:29px}.actioncam-copy-v39>p{font-size:12px}.actioncam-benefits-v39{margin:18px 0}.actioncam-benefits-v39 span{font-size:10px;padding:11px 12px}

  .team-system-grid{gap:22px}.team-system-copy h2{font-size:29px}.team-system-copy>p{font-size:12px}.team-standard-list{grid-template-columns:1fr 1fr;gap:6px}.team-standard-list span{font-size:9px;padding:10px}.team-people-compact{gap:8px}.team-people-compact article{grid-template-columns:46px 1fr;padding:10px}.team-people-compact article img{width:46px;height:58px;border-radius:4px}.team-people-compact article b{font-size:12px}.team-more-note{padding:14px}

  .yaho-home-grid{grid-template-columns:1fr;border-radius:6px}.yaho-home-image{min-height:0;aspect-ratio:1/1}.yaho-home-image img{object-fit:contain}.yaho-home-copy{padding:25px 19px 27px}.yaho-home-copy h2{font-size:29px}.yaho-home-lead{font-size:14px;margin-bottom:18px}.yaho-offer-mini article{padding:13px 12px}.yaho-offer-mini b{font-size:12px}.yaho-offer-mini span{font-size:10px}.yaho-actions{display:grid;grid-template-columns:1fr 1fr}.yaho-actions .btn{min-width:0;padding-left:10px;padding-right:10px;font-size:11px}
}

@media(max-width:390px){
  .home-hero-v39 h1{font-size:35px!important}
  .hero-proof-row b{font-size:9px}.hero-proof-row small{font-size:7.5px}
  .lesson-mini-grid{grid-template-columns:1fr}.lesson-mini{min-height:0;display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto;column-gap:11px;align-items:center}.lesson-mini small{grid-column:1/-1}.lesson-mini h3{grid-row:2;font-size:25px;margin:7px 0}.lesson-mini p{grid-row:2;margin:7px 0}
  .team-standard-list{grid-template-columns:1fr}
}

.staffing-policy-note{margin:15px 0 22px;padding:16px 18px;border-radius:4px;background:#eef6ff;border:1px solid #cfe2f5;display:flex;flex-direction:column;gap:5px}.staffing-policy-note b{color:#102f47;font-size:14px}.staffing-policy-note span{font-size:12px;line-height:1.65;color:#58758b}@media(max-width:680px){.staffing-policy-note{padding:14px 15px}.staffing-policy-note b{font-size:13px}.staffing-policy-note span{font-size:11px}}


/* =========================================================
   v35.40 — visibility, staff credibility, utility navigation
   ========================================================= */
.nav-guide{position:relative;align-self:stretch;display:flex;align-items:center}
.nav-guide-btn{appearance:none;border:0;background:transparent;color:#4c6b80;font:inherit;font-weight:850;padding:26px 0 22px;cursor:pointer;border-bottom:2px solid transparent;display:flex;align-items:center;gap:5px}
.nav-guide-btn span{font-size:10px;transition:transform .2s}
.nav-guide:hover .nav-guide-btn,.nav-guide:focus-within .nav-guide-btn{color:var(--ink);border-bottom-color:var(--blue)}
.nav-guide:hover .nav-guide-btn span,.nav-guide:focus-within .nav-guide-btn span{transform:rotate(180deg)}
.nav-guide-menu{position:absolute;z-index:70;top:calc(100% - 5px);right:-34px;width:290px;padding:10px;border:1px solid #dbe6ed;border-radius:4px;background:#fff;box-shadow:0 20px 50px rgba(13,43,67,.16);opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s}
.nav-guide:hover .nav-guide-menu,.nav-guide:focus-within .nav-guide-menu{opacity:1;visibility:visible;transform:translateY(0)}
.nav .nav-guide-menu a{display:block;padding:12px 13px;border:0!important;border-radius:4px;color:#17384f}
.nav .nav-guide-menu a:hover{background:#f1f7fb;color:#17384f;border:0!important}
.nav-guide-menu b,.nav-guide-menu small{display:block}
.nav-guide-menu b{font-size:13px}
.nav-guide-menu small{margin-top:3px;color:#78909f;font-size:10px;font-weight:600;line-height:1.45}
.mobile-guide-label{padding:13px 18px 7px;margin-top:4px;border-top:1px solid #e3ebf0;color:#7890a0;font-size:9px;font-weight:950;letter-spacing:.13em}
.mobile-menu .mobile-contact-link{margin-top:5px;color:#176dcc;font-weight:950}

.actioncam-v40{padding:78px 0 82px!important;background:linear-gradient(180deg,#fff 0%,#f5f9fc 100%)!important}
.actioncam-head-v40{align-items:end;margin-bottom:26px}
.actioncam-head-v40 .h2{margin-bottom:0;color:#102f47}
.actioncam-head-v40 .section-kicker{color:#357db2}
.actioncam-card-v40{width:min(1080px,100%);margin:0 auto;grid-template-columns:minmax(250px,310px) minmax(0,1fr)!important;grid-template-areas:"media copy";gap:clamp(40px,5vw,66px)!important;padding:44px clamp(40px,5vw,62px)!important;border-radius:6px!important;background:linear-gradient(135deg,#0b2b42 0%,#103d5c 62%,#145576 100%)!important;box-shadow:0 24px 58px rgba(13,43,67,.16)!important}
.actioncam-card-v40 .home-actioncam-media{grid-area:media}
.actioncam-card-v40 .home-actioncam-copy{grid-area:copy;padding-top:0!important}
.actioncam-card-v40 .home-actioncam-video-shell{width:min(100%,270px)!important}
.actioncam-copy-label{display:block;color:#8ec6e9;font-size:10px;font-weight:950;letter-spacing:.15em;margin-bottom:8px}
.actioncam-copy-v40 h3{margin:0 0 15px;color:#fff;font-size:clamp(32px,3.9vw,48px);line-height:1.12;letter-spacing:-.04em}
.actioncam-copy-v40>p{margin:0;color:#c9dce7;font-size:15px;line-height:1.78;max-width:610px}
.actioncam-card-v40 .home-actioncam-points{margin:23px 0 24px;gap:10px}
.actioncam-card-v40 .home-actioncam-points span{font-size:13px;color:#d5e5ee}
.actioncam-card-v40 .home-actioncam-points span:before{background:rgba(255,255,255,.11);color:#9bd3f3}
.actioncam-cta-v40{display:inline-flex;align-items:center;gap:9px;text-decoration:none;padding:13px 17px;border-radius:4px;background:#fff;color:#12334a;font-size:13px;font-weight:950;box-shadow:0 10px 24px rgba(0,0,0,.14)}
.actioncam-card-v40 .home-actioncam-media>small{font-size:11px;color:#b9cfdb}

.team-section-v40{padding:86px 0 90px;background:#fff}
.team-head-v40{align-items:end}
.staffing-policy-v40{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:center;margin:26px 0 20px;padding:22px 24px;border:1px solid #cfe2f5;border-radius:6px;background:linear-gradient(135deg,#edf6ff,#f9fcff)}
.staffing-policy-mark{display:grid;place-items:center;min-height:72px;border-radius:4px;background:#102f47;color:#fff;font-size:10px;font-weight:950;letter-spacing:.13em}
.staffing-policy-v40 strong{display:block;color:#102f47;font-size:20px;line-height:1.35}
.staffing-policy-v40 p{margin:6px 0 0;color:#58758a;font-size:13px;line-height:1.7}
.team-standard-v40{margin-bottom:22px}
.coach-grid-v40{margin-top:0}
.education-band-v40{margin-top:22px}
.team-more-v40{margin-top:12px;padding:15px 18px;border-radius:4px;background:#f5f8fa;border:1px solid #e0e8ed;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.team-more-v40 b{font-size:12px;color:#102f47}
.team-more-v40 span{font-size:11px;color:#6e8493}

.event-main-title{margin:11px 0 17px!important}
.event-main-title span,.event-main-title em{display:block}
.event-main-title span{white-space:nowrap}
.event-main-title em{font-style:normal;color:var(--blue);margin-top:5px}

.customer-guide-v40{padding:68px 0 72px;background:#fff;border-top:1px solid #edf2f5}
.customer-guide-head{align-items:end}
.customer-guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.customer-guide-grid>a{display:grid;grid-template-columns:38px 1fr auto;gap:14px;align-items:center;padding:20px 21px;border:1px solid #dce6ed;border-radius:6px;background:#fafcfd;text-decoration:none;transition:.18s}
.customer-guide-grid>a:hover{transform:translateY(-2px);background:#f2f8fd;border-color:#bfd8e9}
.customer-guide-grid>a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e9f3ff;color:#2875cb;font-size:10px;font-weight:950}
.customer-guide-grid b{display:block;color:#102f47;font-size:17px;margin-bottom:4px}
.customer-guide-grid p{margin:0;color:#6b8190;font-size:11px;line-height:1.55}
.customer-guide-grid i{font-style:normal;color:#3e80b1;font-size:19px;font-weight:900}

@media(max-width:1000px){.nav-guide{display:none}}

@media(max-width:760px){
  .actioncam-v40{padding:54px 0 58px!important}
  .actioncam-head-v40{display:block;margin-bottom:18px}
  .actioncam-head-v40 .short-copy{margin-top:8px!important;font-size:12px}
  .actioncam-card-v40{grid-template-columns:1fr!important;grid-template-areas:"media" "copy";gap:25px!important;padding:25px 18px 24px!important;border-radius:6px!important}
  .actioncam-card-v40 .home-actioncam-video-shell{width:min(74vw,270px)!important}
  .actioncam-copy-v40{text-align:left!important}
  .actioncam-copy-v40 h3{font-size:29px;line-height:1.14}
  .actioncam-copy-v40>p{font-size:13px;line-height:1.72}
  .actioncam-card-v40 .home-actioncam-points{margin:18px 0 20px}
  .actioncam-card-v40 .home-actioncam-points span{font-size:12px;align-items:flex-start}
  .actioncam-cta-v40{width:100%;justify-content:center;min-height:46px}

  .team-section-v40{padding:56px 0 60px}
  .team-head-v40{display:block}
  .team-head-v40 .team-lead{margin-top:8px}
  .staffing-policy-v40{grid-template-columns:1fr;gap:11px;margin:20px 0 16px;padding:17px}
  .staffing-policy-mark{min-height:0;padding:9px 12px;width:max-content}
  .staffing-policy-v40 strong{font-size:17px}
  .staffing-policy-v40 p{font-size:11.5px}
  .team-standard-v40{grid-template-columns:1fr 1fr!important}
  .coach-grid-v40{grid-template-columns:1fr!important}
  .coach-grid-v40 .coach-card{grid-template-columns:96px 1fr!important;gap:15px!important;padding:13px!important}
  .coach-grid-v40 .coach-card img{width:96px!important;height:128px!important}
  .coach-grid-v40 .coach-copy h3{font-size:18px!important}
  .coach-grid-v40 .coach-copy li{font-size:11px!important;line-height:1.45}
  .education-band-v40{display:block!important;padding:18px!important}
  .education-band-v40 .education-flow{margin-top:13px;justify-content:flex-start}
  .team-more-v40{align-items:flex-start;flex-direction:column;gap:3px}

  .customer-guide-v40{padding:52px 0 56px}
  .customer-guide-head{display:block}
  .customer-guide-grid{grid-template-columns:1fr;gap:8px;margin-top:18px}
  .customer-guide-grid>a{grid-template-columns:34px 1fr auto;padding:16px 15px;border-radius:4px}
  .customer-guide-grid>a>span{width:34px;height:34px}
  .customer-guide-grid b{font-size:15px}
  .customer-guide-grid p{font-size:10px}

  .yaho-hero-v3 .yaho-hero-grid{padding-left:20px!important;padding-right:20px!important}
  .event-main-title{font-size:36px!important;line-height:1.02!important;letter-spacing:-.045em!important}
  .event-main-title span,.event-main-title em{white-space:nowrap!important;word-break:keep-all!important}
  .yaho-hero-v3 p{font-size:14px!important;line-height:1.55!important}
  .early-booking-chips{gap:6px!important}
  .early-booking-chips span{font-size:9px!important}
}
@media(max-width:390px){
  .event-main-title{font-size:33px!important}
  .team-standard-v40{grid-template-columns:1fr!important}
}


/* v35.40 final mobile YAHO hero fix */
@media(max-width:900px){
  .yaho-hero-dual{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .yaho-hero-dual>img{order:1;width:100%!important}
  .yaho-hero-dual .dual-offer{
    position:static!important;
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    margin:10px 0 0!important;
    padding:14px 15px!important;
  }
  .yaho-hero-dual .dual-offer-one{order:2}
  .yaho-hero-dual .dual-offer-pass{order:3}
  .yaho-hero-dual .dual-offer b{
    font-size:16px!important;
    line-height:1.35!important;
    white-space:normal!important;
    word-break:keep-all!important;
  }
  .yaho-hero-dual .dual-offer span{
    font-size:10px!important;
    line-height:1.45!important;
  }
  .yaho-hero-dual .media-note{
    order:4!important;
    position:static!important;
    inset:auto!important;
    margin:10px 0 0!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
}


/* v35.41 photo integration */
.home-hero img[src$="hero_clean.webp"]{
  width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block;
}
.teacher-child-feature-v41{padding:66px 0 72px;background:linear-gradient(180deg,#f6fafc 0%,#fff 100%)}
.teacher-child-card-v41{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:0;overflow:hidden;border-radius:6px;background:#0e2f47;box-shadow:0 22px 52px rgba(13,43,67,.12)}
.teacher-child-image-v41{min-height:500px;background:#0b2234}
.teacher-child-image-v41 img{width:100%;height:100%;object-fit:cover;object-position:center 54%;display:block}
.teacher-child-copy-v41{padding:48px 46px;display:flex;flex-direction:column;justify-content:center;color:#fff}
.teacher-child-copy-v41 .section-kicker{color:#8fc6ea;margin-bottom:10px}
.teacher-child-copy-v41 h2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.04em;margin:0 0 18px}
.teacher-child-copy-v41 p{font-size:15px;line-height:1.8;color:#d7e5ed;margin:0 0 26px}
.teacher-child-quote-v41{font-size:22px;font-weight:900;line-height:1.45;padding:18px 20px;border-radius:4px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16)}
.teacher-child-copy-v41 small{margin-top:12px;color:#9fb6c4;font-size:10px;line-height:1.6}
@media(max-width:760px){
  .home-hero img[src$="hero_clean.webp"]{object-position:56% 46%}
  .teacher-child-feature-v41{padding:50px 0 56px}
  .teacher-child-card-v41{grid-template-columns:1fr;border-radius:6px}
  .teacher-child-image-v41{min-height:0;aspect-ratio:4/5}
  .teacher-child-image-v41 img{object-position:center 58%}
  .teacher-child-copy-v41{padding:26px 20px 28px}
  .teacher-child-copy-v41 h2{font-size:31px}
  .teacher-child-copy-v41 p{font-size:13px;line-height:1.7}
  .teacher-child-quote-v41{font-size:18px;padding:15px 16px}
}


/* =========================================================
   v35.42 — hero balance, typography visibility, warm accents
   ========================================================= */

/* Hero image: less dominant, slightly calmer tone */
.home-hero-v39 .home-hero-grid{
  grid-template-columns:1.08fr .92fr;
  gap:48px;
}
.hero-photo-v39{
  height:505px;
  min-height:505px;
  border-radius:6px;
  box-shadow:0 20px 54px rgba(17,50,73,.12);
}
.hero-photo-v39 img{
  filter:brightness(.86) saturate(.90) contrast(.98);
  transform:scale(1.005);
}
.hero-photo-v39::after{
  background:
    linear-gradient(180deg,rgba(8,31,47,.04) 0%,rgba(8,31,47,.02) 48%,rgba(8,31,47,.34) 100%);
}
.hero-photo-v39 .hero-caption{
  left:20px;
  bottom:20px;
  right:auto;
  max-width:calc(100% - 40px);
  padding:12px 15px;
  border-radius:4px;
  background:rgba(8,35,55,.90)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1.35;
  font-weight:900;
  letter-spacing:-.015em;
  box-shadow:0 7px 20px rgba(0,0,0,.16);
}

/* Larger supporting type on HOME */
.home-page .section-kicker,
.home-page .eyebrow{
  font-size:11px;
  line-height:1.4;
}
.home-page .short-copy{
  font-size:16px!important;
  line-height:1.65!important;
  color:#4c697d!important;
}
.return-card p{font-size:14px;line-height:1.72}
.return-card small{font-size:12px;line-height:1.6}
.review-voice-grid small{font-size:11px}
.review-voice-grid p{font-size:14px;line-height:1.68}
.yaho-offer-mini span{font-size:12px}
.team-more-v40 b{font-size:13px}
.team-more-v40 span{font-size:12px;line-height:1.55}
.customer-guide-grid p{font-size:12px;line-height:1.6}
.actioncam-card-v40 .home-actioncam-media>small{font-size:12px}
.actioncam-copy-v40>p{font-size:16px}
.actioncam-card-v40 .home-actioncam-points span{font-size:14px}

/* Section accent symbols */
.section-symbol{
  display:inline-grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  margin-right:6px;
  vertical-align:-5px;
  font-size:12px;
  font-weight:1000;
  letter-spacing:0;
}
.section-symbol.heart{background:#fff0f4;color:#e04c78}
.section-symbol.star{background:#fff7dd;color:#a87a00}
.section-symbol.sparkle{background:#edf7ff;color:#2878bc}
.section-symbol.check{background:#ecf8f0;color:#218652}

.return-icon-round{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  font-size:18px!important;
  margin-top:26px!important;
  letter-spacing:0!important;
}
.return-icon-round.check{background:#eaf8ef;color:#218652}
.return-icon-round.heart{background:#fff0f4;color:#e04c78}
.return-coach .return-icon-round.star{
  background:rgba(255,255,255,.12);
  color:#ffd763;
  border:1px solid rgba(255,255,255,.14);
}

/* Teacher/child emotional visual: softer and less oversized */
.teacher-child-feature-v41{padding:58px 0 64px}
.teacher-child-card-v41{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  max-width:1080px;
  margin:0 auto;
}
.teacher-child-image-v41{min-height:440px}
.teacher-child-image-v41 img{
  filter:brightness(.90) saturate(.92);
}
.teacher-child-copy-v41 p{font-size:16px}
.teacher-child-copy-v41 small{font-size:11px}

/* Small decorative callout under the hero proof row */
.hero-proof-row span{
  position:relative;
  overflow:hidden;
}
.hero-proof-row span::after{
  position:absolute;
  right:8px;
  top:7px;
  font-size:11px;
  opacity:.72;
}
.hero-proof-row span:nth-child(1)::after{content:"✓";color:#218652}
.hero-proof-row span:nth-child(2)::after{content:"✓";color:#218652}
.hero-proof-row span:nth-child(3)::after{content:"♥";color:#e04c78}

/* Tablet / mobile */
@media(max-width:1000px){
  .home-hero-v39 .home-hero-grid{grid-template-columns:1fr}
  .hero-photo-v39{
    width:min(100%,590px);
    justify-self:center;
    height:430px;
    min-height:430px;
  }
}

@media(max-width:760px){
  .home-hero-v39 .home-hero-grid{
    padding:36px 20px 42px!important;
    gap:25px!important;
  }
  .hero-photo-v39{
    width:100%;
    height:292px!important;
    min-height:292px!important;
    border-radius:6px!important;
  }
  .hero-photo-v39 img{
    object-position:56% 43%!important;
    filter:brightness(.86) saturate(.90) contrast(.98);
  }
  .hero-photo-v39 .hero-caption{
    left:13px!important;
    bottom:13px!important;
    right:auto!important;
    max-width:calc(100% - 26px)!important;
    padding:9px 11px!important;
    font-size:11px!important;
    line-height:1.35!important;
  }

  .home-page .section-kicker,
  .home-page .eyebrow{font-size:10px}
  .home-page .short-copy{font-size:14px!important}
  .hero-proof-row b{font-size:11px!important}
  .hero-proof-row small{font-size:9px!important}
  .return-card p{font-size:13px!important}
  .return-card small{font-size:11px!important}
  .review-voice-grid small{font-size:10.5px!important}
  .review-voice-grid p{font-size:12.5px!important}
  .yaho-offer-mini span{font-size:11px!important}
  .customer-guide-grid p{font-size:11px!important}
  .team-more-v40 b{font-size:12px!important}
  .team-more-v40 span{font-size:11px!important}
  .actioncam-head-v40 .short-copy{font-size:13px!important}
  .actioncam-copy-v40>p{font-size:13.5px!important}
  .actioncam-card-v40 .home-actioncam-points span{font-size:12.5px!important}

  .section-symbol{
    width:20px;height:20px;font-size:11px;vertical-align:-4px;margin-right:5px;
  }

  .teacher-child-feature-v41{padding:48px 0 54px}
  .teacher-child-card-v41{grid-template-columns:1fr}
  .teacher-child-image-v41{min-height:0;aspect-ratio:5/4}
  .teacher-child-image-v41 img{object-position:center 53%}
  .teacher-child-copy-v41{padding:24px 19px 27px}
  .teacher-child-copy-v41 p{font-size:13.5px}
  .teacher-child-copy-v41 small{font-size:10.5px}
}

/* ===== v43: 26/27 결정사항 반영 컴포넌트 ===== */
.stat-strip-v43{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:22px 0 6px;border:1px solid #dce7ef;border-radius:6px;background:#fff;overflow:hidden}
.stat-strip-v43 div{padding:18px 20px;border-right:1px solid #dce7ef}
.stat-strip-v43 div:last-child{border-right:0}
.stat-strip-v43 b{display:block;font-size:clamp(24px,3vw,32px);letter-spacing:-.04em;color:#102f47;line-height:1.1}
.stat-strip-v43 span{font-size:12px;color:#607380}
.stat-strip-v43 small{display:block;padding:10px 20px;font-size:11px;color:#7d98aa;grid-column:1/-1;border-top:1px solid #dce7ef}
.findus-grid-v43{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:26px}
.findus-grid-v43 article{background:#fff;border:1px solid #dce7ef;border-radius:6px;overflow:hidden}
.findus-grid-v43 img{display:block;width:100%;aspect-ratio:712/324;object-fit:cover}
.findus-grid-v43 div{padding:18px 20px 22px}
.findus-grid-v43 small{font-size:11px;font-weight:900;color:#2e7dc0}
.findus-grid-v43 h3{margin:6px 0 8px;font-size:19px;color:#173a59;letter-spacing:-.03em}
.findus-grid-v43 p{margin:0;font-size:14px;color:#607380;line-height:1.6}
.grade-grid-v43{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:26px}
.grade-grid-v43 article{background:#fff;border:1px solid #dce7ef;border-radius:4px;padding:18px}
.grade-grid-v43 article.after{background:#102f47;border-color:#102f47;color:#fff}
.grade-grid-v43 h3{margin:0 0 4px;font-size:17px;color:#173a59}
.grade-grid-v43 article.after h3{color:#ffd84b}
.grade-grid-v43 small{font-size:11px;color:#7d98aa;font-weight:800}
.grade-grid-v43 ul{margin:10px 0 0;padding:0;list-style:none;font-size:13px;line-height:1.7}
.grade-grid-v43 ul span{color:#7d98aa;font-size:12px}
.grade-grid-v43 article.after ul span{color:#a9c3d6}
.grade-notes-v43{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}
.grade-notes-v43 div{background:#f4f8fb;border-radius:4px;padding:14px 16px;font-size:13px;color:#173a59}
.grade-notes-v43 b{display:block;font-size:11px;color:#2e7dc0;margin-bottom:4px}
.kid-words-v43{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}
.kid-words-v43 div{background:#fff;border:1px solid #dce7ef;border-radius:4px;padding:16px;text-align:center}
.kid-words-v43 small{display:block;font-size:11px;color:#7d98aa;margin-bottom:6px}
.kid-words-v43 b{font-size:15px;color:#102f47}
.report-card-v43{margin-top:24px;background:#fff;border:1px solid #dce7ef;border-radius:6px;padding:22px}
.report-card-v43 .report-top{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #102f47;padding-bottom:10px;margin-bottom:14px}
.report-card-v43 .report-top b{font-size:18px;color:#102f47}
.report-card-v43 .report-top small{font-size:11px;color:#7d98aa}
.report-grid-v43{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.report-grid-v43 div{background:#f7fbff;border-radius:4px;padding:14px}
.report-grid-v43 small{font-size:11px;font-weight:900;color:#2e7dc0}
.report-grid-v43 p{margin:4px 0 0;font-size:13px;color:#173a59;line-height:1.6}
.question-grid-v43{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}
.question-grid-v43 article{background:#fff;border:1px solid #dce7ef;border-radius:4px;padding:18px}
.question-grid-v43 small{font-size:11px;font-weight:900;color:#2e7dc0}
.question-grid-v43 h3{margin:6px 0 8px;font-size:16px;color:#173a59;line-height:1.4}
.question-grid-v43 p{margin:0;font-size:13px;color:#607380;line-height:1.6}
.timetable-v43{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.timetable-v43 article{background:#fff;border:1px solid #dce7ef;border-radius:6px;padding:20px}
.timetable-v43 h3{margin:0 0 12px;font-size:18px;color:#173a59}
.timetable-v43 ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:14px}
.timetable-v43 li{display:flex;justify-content:space-between;border-bottom:1px dashed #dce7ef;padding:5px 0}
.timetable-v43 li span{color:#7d98aa;font-size:12px}
.timetable-v43 .night{margin-top:12px;font-size:13px;color:#102f47;font-weight:800}
.arrival-v43{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}
.arrival-v43 div{background:#f4f8fb;border-radius:4px;padding:16px}
.arrival-v43 b{display:block;font-size:22px;color:#102f47;letter-spacing:-.03em}
.arrival-v43 span{font-size:13px;color:#607380}
.review-event-v43{margin-top:28px;display:flex;gap:18px;align-items:center;justify-content:space-between;background:#102f47;color:#fff;border-radius:6px;padding:24px 26px}
.review-event-v43 small{font-size:11px;font-weight:900;color:#ffd84b;letter-spacing:.12em}
.review-event-v43 h3{margin:6px 0;font-size:22px;letter-spacing:-.03em}
.review-event-v43 p{margin:0;font-size:14px;color:#c7d8e4}
.review-event-v43 strong{font-size:30px;color:#ffd84b;white-space:nowrap}
.price-table .oneplus-row td{background:#fffbe6}
.price-table .oneplus-row td:first-child b{display:block}
.price-table .oneplus-row .was{display:block;font-size:12px;color:#9aa9b4;text-decoration:line-through}
@media(max-width:860px){
 .grade-grid-v43{grid-template-columns:1fr 1fr}
 .kid-words-v43,.question-grid-v43{grid-template-columns:1fr 1fr}
 .timetable-v43{grid-template-columns:1fr}
}
@media(max-width:560px){
 .findus-grid-v43,.grade-notes-v43,.report-grid-v43,.arrival-v43{grid-template-columns:1fr}
 .stat-strip-v43 div{padding:14px 12px}
 .review-event-v43{flex-direction:column;align-items:flex-start}
}

/* ===== v43 motion ===== */
.hero-slides{position:absolute;inset:0}
.hero-slides figure{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.2s ease}
.hero-slides figure.is-on{opacity:1}
.hero-slides img{width:100%;height:100%;object-fit:cover;object-position:center 35%;transform:scale(1.02);transition:transform 6s ease-out}
.hero-slides figure.is-on img{transform:scale(1.09)}
.hero-slides figcaption{display:none}
.hero-photo-v39 .hero-caption{z-index:3}
.hero-caption.swap{animation:capIn .6s ease}
@keyframes capIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.hero-dots{position:absolute;z-index:3;right:18px;top:18px;display:flex;gap:6px}
.hero-dots button{width:8px;height:8px;border-radius:4px;border:0;padding:0;background:rgba(255,255,255,.55);cursor:pointer;transition:width .3s,background .3s}
.hero-dots button.on{width:22px;background:#fff}
.snow-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.yaho-hero-visual{position:relative}
.review-marquee{margin-top:24px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.review-track{display:flex;gap:16px;width:max-content;padding:8px 0 18px}
.review-marquee .review-paper{flex:0 0 auto;width:min(280px,72vw);margin:0;transform:none!important;transition:transform .3s}
.review-marquee .review-paper img{display:block;width:100%;height:auto;border-radius:4px}
.review-marquee.running .review-track{animation:marquee 70s linear infinite}
.review-marquee.running:hover .review-track,.review-marquee.running:active .review-track{animation-play-state:paused}
.review-marquee .review-paper:hover{transform:translateY(-4px)!important}
.review-marquee.static{overflow-x:auto}
@keyframes marquee{to{transform:translateX(calc(-50% - 8px))}}
.dday{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:4px;background:#ffd84b;color:#102f47;font-style:normal;font-size:.82em;font-weight:900;letter-spacing:.02em;vertical-align:1px}
.dday.soon{background:#ff5a5f;color:#fff;animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.08)}}
.btn.talktalk{background:#03c75a;color:#fff}
.contact-links .btn.talktalk{grid-column:1/-1!important}
.contact-phones{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.contact-phones a{flex:1;min-width:140px;text-align:center;padding:11px 10px;border:1px solid rgba(255,255,255,.28);border-radius:4px;color:#fff;font-weight:800;font-size:14px;text-decoration:none}
.package-row.oneplus{background:#fffbe6;border-radius:4px}
.stagger{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.stagger.shown{opacity:1;transform:none}
.return-card,.coach-card,.lesson-card,.package,.findus-grid-v43 article,.question-grid-v43 article{transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
@media(hover:hover){.return-card.shown:hover,.coach-card.shown:hover,.lesson-card.shown:hover,.findus-grid-v43 article.shown:hover,.question-grid-v43 article.shown:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(16,42,63,.10)}}
/* calculator */
.calc-v43{margin:44px 0 10px;border-radius:6px;background:#102f47;color:#fff;padding:clamp(22px,4vw,40px);overflow:hidden;position:relative}
.calc-v43:before{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,216,75,.18),transparent 70%)}
.calc-head h2{margin:8px 0 4px;font-size:clamp(24px,3.2vw,34px);letter-spacing:-.04em}
.calc-head p{margin:0;color:#a9c3d6;font-size:14px}
.calc-body{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin-top:22px;position:relative}
.calc-group{margin-bottom:14px}
.calc-group>span{display:block;font-size:12px;color:#a9c3d6;font-weight:800;margin-bottom:7px}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg button{flex:1;min-width:72px;padding:12px 8px;border-radius:4px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:background .2s,color .2s,transform .15s}
.seg button small{font-size:11px;color:#ffd84b;margin-left:2px}
.seg button:active{transform:scale(.97)}
.seg button.on{background:#fff;color:#102f47;border-color:#fff}
.seg button.on small{color:#2e7dc0}
.calc-result{background:#fff;color:#102f47;border-radius:6px;padding:20px}
.calc-result>small{font-size:12px;color:#607380;font-weight:800}
.calc-total{margin:6px 0 2px;font-size:16px;font-weight:800}
.calc-total b{font-size:clamp(34px,4.4vw,44px);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.calc-result>p{margin:0 0 10px;font-size:13px;color:#607380}
.calc-result ul{margin:0 0 14px;padding:0;list-style:none;font-size:13px;line-height:1.8}
.calc-result li:before{content:"✓";color:#2e7dc0;font-weight:900;margin-right:6px}
.calc-note{font-size:11px!important;color:#7d98aa!important;margin-top:10px!important}
@media(max-width:760px){.calc-body{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hero-slides figure,.hero-slides img,.stagger{transition:none}.stagger{opacity:1;transform:none}}
.price-table .oneplus-row td:first-child small{display:block;font-size:11px;font-weight:900;color:#b08900;letter-spacing:0;line-height:1.2;margin-top:2px}
/* v43.1 lesson mini cards: fill height with useful info */
.lesson-mini{display:flex;flex-direction:column}
.lesson-mini .mini-points{margin:16px 0 0;padding:14px 0 0;border-top:1px solid #dce6ed;list-style:none;font-size:13px;color:#33536b;line-height:1.55}
.lesson-mini .mini-points li{position:relative;padding-left:16px;margin-bottom:6px}
.lesson-mini .mini-points li:before{content:"";position:absolute;left:2px;top:.6em;width:6px;height:6px;border-radius:50%;background:#2e7dc0}
.lesson-mini .mini-price{margin-top:auto;padding-top:16px;display:grid;gap:8px}
.lesson-mini .mini-price span{display:flex;justify-content:space-between;align-items:baseline;gap:8px;background:#fff;border:1px solid #dce6ed;border-radius:4px;padding:10px 12px}
.lesson-mini .mini-price em{font-style:normal;font-size:11px;color:#7d98aa;font-weight:800}
.lesson-mini .mini-price b{font-size:17px;color:#102f47;letter-spacing:-.03em}
.lesson-mini .mini-badge{font-style:normal;font-size:12px;font-weight:800;color:#8a6a00;background:#fff6cf;border-radius:4px;padding:8px 10px;text-align:center}
@media(max-width:900px){.lesson-mini .mini-points{display:none}.lesson-mini .mini-price{padding-top:10px;grid-column:1/-1}.lesson-mini .mini-price b{font-size:15px}}
@media(max-width:560px){.lesson-mini .mini-price{grid-template-columns:1fr 1fr;grid-row:3}.lesson-mini .mini-badge{grid-column:1/-1}}
.lesson-mini .mini-badge.blue{color:#1f5f99;background:#e6f1fb}
.review-track{align-items:flex-start}
.review-marquee .review-paper{width:min(340px,78vw);padding:10px}
/* v43.1 polish */
h1,h2,h3,h4,p,li,blockquote,.lead,.short-copy{word-break:keep-all;overflow-wrap:break-word}
.cam-steps-v43{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px;max-width:520px;counter-reset:cam}
.cam-steps-v43 li{counter-increment:cam;display:grid;grid-template-columns:34px 56px 1fr;align-items:center;gap:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:4px;background:rgba(255,255,255,.05);text-align:left}
.cam-steps-v43 li:before{content:counter(cam,decimal-leading-zero);font-size:12px;font-weight:900;color:#ffd84b}
.cam-steps-v43 b{color:#fff;font-size:15px}
.cam-steps-v43 span{color:rgba(255,255,255,.75);font-size:13px;line-height:1.5}
.cam-cta-v43{margin-top:20px}
/* v43.2 mobile fixes: stop horizontal overflow (iOS zoom-out), tidy spacing */
html,body{overflow-x:hidden;max-width:100%}
@supports(overflow:clip){html,body{overflow-x:clip}}
.review-marquee{contain:paint;width:100%;max-width:100%}
.review-marquee .review-paper{height:260px;overflow:hidden}
.review-marquee .review-paper img{height:100%;width:100%;object-fit:cover;object-position:top}
.lesson-mini .mini-price em{white-space:nowrap}
.lesson-mini .mini-price b{white-space:nowrap}
@media(max-width:900px){.lesson-mini .mini-price{grid-template-columns:1fr}}
@media(max-width:560px){.review-marquee .review-paper{height:220px}}
@media(max-width:560px){.lesson-mini .mini-price{grid-template-columns:1fr 1fr}}
.price-table .oneplus-row td:first-child{flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:2px}
@media(max-width:560px){
 .team-standard-strip.team-standard-v40{display:grid!important;grid-template-columns:1fr 1fr!important;overflow:hidden!important;flex-wrap:wrap}
 .team-standard-strip.team-standard-v40 span{white-space:normal!important;padding:12px 8px!important;font-size:12px!important}
}
/* v43.2 review slider: wide short review captures, no cropping */
.review-track{align-items:center}
.review-marquee .review-paper{height:auto!important;width:min(440px,86vw)}
.review-marquee .review-paper img{height:auto!important;object-fit:contain}
.home-actioncam-points{grid-template-columns:1fr!important}
.home-actioncam-points span,.home-page .home-actioncam-points span:last-child{grid-column:auto!important;width:100%!important}
.home-page .home-actioncam-section .home-actioncam-points{grid-template-columns:1fr!important}
.home-page .home-actioncam-section .home-actioncam-points span{min-height:0!important;align-items:center!important}
.section.navy .lead{color:#d6e4ee!important}
.section.navy .lead b{color:#fff}
.form .form-sub{color:#607380!important}
@media(max-width:480px){.question-grid-v43{grid-template-columns:1fr}.question-grid-v43 h3{font-size:15px}}

/* ===== v44 typography: Pretendard ===== */
body,button,input,select,textarea{font-family:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR","Segoe UI",sans-serif}
body{letter-spacing:-.015em}
h1,h2,.h2{letter-spacing:-.035em!important}
h3{letter-spacing:-.025em}
.eyebrow,.section-kicker,small{letter-spacing:.06em}
p,li{line-height:1.7}

/* ===== v44 components ===== */
.to-top{position:fixed;right:16px;bottom:92px;z-index:60;width:44px;height:44px;border-radius:50%;border:1px solid #dce6ed;background:#fff;color:#102f47;font-size:18px;font-weight:900;box-shadow:0 10px 24px rgba(16,42,63,.14);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s,transform .25s;cursor:pointer}
.to-top.show{opacity:1;transform:none;pointer-events:auto}
@media(min-width:861px){.to-top{bottom:28px;right:96px}}
.share-btn{background:#fff;color:#102f47;border:1px solid #dce6ed}
.share-btn:before{content:"↗";margin-right:6px}
.level-cta{display:inline-flex;margin-left:14px;padding:8px 14px;border-radius:4px;background:#102f47;color:#fff!important;font-size:13px;font-weight:800;text-decoration:none}
@media(max-width:560px){.level-cta{margin:12px 0 0}}
.level-finder-v44{padding-top:40px!important}
.lf-box{border-radius:6px;background:linear-gradient(160deg,#f4f9ff,#eaf3fb);border:1px solid #dce7ef;padding:clamp(22px,4vw,40px)}
.lf-head .lead{margin-bottom:0}
.lf-form{display:grid;gap:18px;margin-top:22px}
.lf-form fieldset{border:0;margin:0;padding:0}
.lf-form legend{font-size:15px;font-weight:800;color:#102f47;margin-bottom:10px}
.lf-form legend b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#102f47;color:#fff;font-size:12px;margin-right:6px}
.lf-opts{display:flex;flex-wrap:wrap;gap:8px}
.lf-opts button{padding:11px 15px;border-radius:4px;border:1px solid #cfdde8;background:#fff;color:#173a59;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s}
.lf-opts button:hover{border-color:#2e7dc0}
.lf-opts button.on{background:#102f47;border-color:#102f47;color:#fff}
.lf-sub{margin-top:8px}
.lf-sub button{font-size:13px;padding:8px 12px;border-style:dashed}
.lf-result{margin-top:24px;background:#102f47;color:#fff;border-radius:6px;padding:22px 24px}
.lf-result.pop{animation:capIn .45s ease}
.lf-result small{color:#ffd84b;font-weight:900;font-size:11px;letter-spacing:.12em}
.lf-result h3{margin:6px 0 6px;font-size:clamp(22px,3vw,28px);color:#fff}
.lf-result p{margin:0 0 10px;color:#c7d8e4}
.lf-result ul{margin:0 0 16px;padding-left:18px;color:#e6eef4;font-size:14px}
.lf-actions{display:flex;gap:8px;flex-wrap:wrap}
.lf-actions .btn.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
.lf-hint{margin:16px 0 0;font-size:13px;color:#607380}
.faq-search{margin:0 0 18px}
.faq-search input{width:100%;box-sizing:border-box;padding:15px 18px;border-radius:4px;border:1px solid #cfdde8;font:inherit;font-size:15px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23607380' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat right 16px center}
.faq-search input:focus{outline:2px solid #2e7dc0;outline-offset:1px}
.faq-empty{margin:12px 2px 0;color:#607380;font-size:14px}
.privacy-v44 .policy-grid p{font-size:14px;line-height:1.75;color:#33536b}
.privacy-v44 .lead{max-width:860px}

/* ===== v44 consistency pass ===== */
body{word-break:keep-all;overflow-wrap:break-word}
/* 섹션 라벨 통일 */
.section-kicker{font-size:11px!important;font-weight:900!important;letter-spacing:.18em!important;text-transform:uppercase;color:#5f8db0!important;display:flex;align-items:center;gap:8px}
.section.navy .section-kicker,.contact .section-kicker,.lf-result small{color:#8fc6ea!important}
/* 제목 크기 통일 */
@media(min-width:861px){
 .h2,.section-head h2,.compact-head h2,.section-head .h2{font-size:clamp(34px,3.3vw,46px)!important;line-height:1.16!important;margin:8px 0 12px!important}
 .page-hero h1{font-size:clamp(38px,4vw,54px);line-height:1.12;margin:10px 0 12px}
}
@media(max-width:860px){
 .h2,.section-head h2,.compact-head h2,.section-head .h2{font-size:28px!important;line-height:1.22!important;margin:6px 0 10px!important}
 .page-hero h1{font-size:32px;line-height:1.18}
}
.page-hero{padding:clamp(44px,7vw,96px) 0 clamp(10px,2vw,24px)}
/* 푸터 정렬 */
.business-info{width:min(var(--max),100%)!important;max-width:none!important;box-sizing:border-box;padding-left:var(--pad)!important;padding-right:var(--pad)!important}
@media(min-width:861px){footer{padding-bottom:0!important}.business-info{padding-bottom:34px!important}}
/* 상세 다듬기 */
.grade-grid-v43 article.after{background:#102f47!important;border-color:#102f47!important}
.form .form-sub{margin:12px 0 16px!important;line-height:1.6}
@media(max-width:560px){
 .yaho-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
 .yaho-actions .share-btn{grid-column:1/-1}
 .curr-item summary{display:grid!important;grid-template-columns:1fr auto;row-gap:2px;align-items:center}
 .curr-item summary .curr-no{grid-column:1;grid-row:1;white-space:nowrap}
 .curr-item summary h3{grid-column:1;grid-row:2;margin:0}
 .curr-item summary>span:last-child{grid-column:2;grid-row:1/3}
 .kid-words-v43 b{font-size:14px}
}
@media(max-width:560px){.lf-opts{gap:6px}.lf-opts button{padding:9px 12px;font-size:13.5px}.lf-form legend{font-size:14.5px}}
.cta-pair{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}@media(max-width:560px){.cta-pair{width:100%}.cta-pair .btn{flex:1}}
@media(min-width:861px){.footer-grid{padding-bottom:24px}}

/* v44.1 mobile overflow guards */
@media(max-width:760px){
 .contact-grid{grid-template-columns:minmax(0,1fr)!important}
 .contact-grid>*,.lesson-price-layout>*,.lesson-mini-grid>*{min-width:0}
 .container [class*="grid"]>*{min-width:0}
}
@media(max-width:640px){
 .lesson-mini-grid{grid-template-columns:1fr!important;gap:10px!important}
 .lesson-mini{padding:18px 16px!important;min-height:0!important}
 .lesson-mini h3{font-size:30px!important;margin:6px 0!important}
 .lesson-mini p{font-size:13px!important}
 .lesson-mini .mini-price{grid-template-columns:1fr 1fr!important}
 .lesson-mini .mini-price span{padding:10px!important;flex-direction:column;align-items:flex-start!important;gap:2px!important}
 .lesson-mini .mini-price b{font-size:16px!important}
}
.form input,.form select,.form textarea{max-width:100%;box-sizing:border-box}
.form .agree{display:flex!important;gap:8px;align-items:flex-start;max-width:100%;box-sizing:border-box}
.form .agree input{width:auto!important;flex:0 0 auto;margin-top:4px}
.form .field{min-width:0}.form .field>*{min-width:0}.form .field input,.form .field select,.form .field textarea{width:100%}
/* ===== v45 맞춤 코스 찾기 ===== */
.lf-progress{height:6px;border-radius:4px;background:#d9e6f0;margin-top:18px;overflow:hidden}
.lf-progress span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#2e7dc0,#46a6e8);transition:width .35s ease}
.lf-count{display:block;margin-top:7px;font-size:12.5px;font-weight:800;color:#5b7488}
.lf-form fieldset{transition:opacity .2s}
.lf-form fieldset.lf-off .lf-opts{opacity:.35;pointer-events:none}
.lf-skip{margin:8px 0 0;font-size:12.5px;color:#2e7dc0;font-weight:700}
.lf-goal{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px!important}
.lf-goal button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;padding:13px 14px!important;min-width:0}
.lf-goal button b{font-size:14.5px;font-weight:900}
.lf-goal button span{font-size:12.5px;font-weight:600;color:#5b7488;line-height:1.4}
.lf-goal button.on span{color:#c7d8e4}
.lf-result{padding:clamp(20px,3.4vw,32px)!important}
.lf-r-head h3{margin:6px 0 10px!important;line-height:1.3;word-break:keep-all}
.lf-r-head p{background:rgba(255,255,255,.07);border-radius:4px;padding:11px 14px;color:#eaf2f8!important;font-size:14.5px;line-height:1.55;word-break:keep-all}
.lf-r-head p b{color:#ffd84b;font-size:12px;font-weight:900;margin-right:6px;letter-spacing:.02em}
.lf-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}
.lf-tile{background:#fff;color:#102f47;border-radius:4px;padding:14px 15px;min-width:0}
.lf-tile small{display:block;color:#2e7dc0!important;font-size:11.5px!important;letter-spacing:.04em!important}
.lf-tile b{display:block;margin:4px 0 6px;font-size:17px;font-weight:900;line-height:1.3;word-break:keep-all}
.lf-tile p{margin:0!important;color:#4d6476!important;font-size:13px;line-height:1.5;word-break:keep-all}
.lf-plan{border:1px solid rgba(255,255,255,.16);border-radius:4px;padding:14px 16px;margin-bottom:12px}
.lf-plan>b{font-size:14px;color:#fff}
.lf-plan ol{margin:10px 0 0;padding:0;list-style:none;counter-reset:lfp;display:grid;gap:8px}
.lf-plan li{counter-increment:lfp;display:flex;gap:10px;align-items:flex-start;color:#dde8f0;font-size:14px;line-height:1.5;word-break:keep-all}
.lf-plan li::before{content:counter(lfp);flex:0 0 22px;height:22px;border-radius:50%;background:#2e7dc0;color:#fff;font-size:12px;font-weight:900;display:grid;place-items:center;margin-top:1px}
.lf-extra{display:grid;gap:10px;margin-bottom:12px}
.lf-x{background:rgba(255,255,255,.08);border-left:3px solid #46a6e8;border-radius:4px;padding:13px 15px}
.lf-x-grade{border-left-color:#ffd84b}
.lf-x-safe{border-left-color:#5fd39a}
.lf-x b{display:block;margin:3px 0 5px;color:#fff;font-size:15px}
.lf-x p{margin:0!important;font-size:13.5px;line-height:1.55;word-break:keep-all}
.lf-x a{color:#ffd84b;font-weight:800;white-space:nowrap}
.lf-x ul{margin:6px 0 0!important;padding-left:18px!important;display:grid;grid-template-columns:1fr 1fr;gap:3px 18px;font-size:13.5px!important}
.lf-safe{font-size:13px!important;color:#b8cddc!important;margin:0 0 16px!important;line-height:1.55}
.lf-safe b{color:#5fd39a;margin-right:6px}
.lf-note{margin:12px 0 0!important;font-size:12.5px!important;color:#93abbd!important}
@media(max-width:900px){.lf-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.lf-goal{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.lf-tiles{grid-template-columns:1fr}.lf-tile{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:10px;align-items:start}.lf-tile small{grid-row:1/3;padding-top:3px}.lf-tile b{margin-top:0;font-size:16px}.lf-x ul{grid-template-columns:1fr}.lf-actions .btn{flex:1 1 100%;text-align:center}.lf-box{padding:20px 16px!important}.lf-result{padding:18px 16px!important}}
.team-assign-v45{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:14px 22px!important;align-items:center!important;background:#fff!important;border:1px solid #d9e6f0!important;padding:18px 20px!important}
.team-assign-v45 b{display:block;font-size:15px!important;color:#102f47;margin-bottom:4px}
.team-assign-v45 span{display:block;font-size:13px!important;line-height:1.6;color:#5b7488}
.team-assign-v45 ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.team-assign-v45 li{font-size:12.5px;font-weight:800;color:#173a59;background:#eef5fb;border:1px solid #d6e5f1;border-radius:4px;padding:6px 11px}
@media(max-width:760px){.team-assign-v45{grid-template-columns:1fr}}
.adult-points-v45{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.adult-points-v45 li{font-size:14px;line-height:1.6;color:inherit;opacity:.92;padding-left:14px;border-left:2px solid #46a6e8;word-break:keep-all}
.adult-points-v45 b{display:block;font-size:14.5px;margin-bottom:1px;opacity:1}
/* v45 모바일 강습가격 카드 정렬 */
@media(max-width:640px){
.lesson-mini{display:grid!important;grid-template-columns:auto minmax(0,1fr);column-gap:14px;align-items:center!important;text-align:left!important}
.lesson-mini>small{grid-column:1/-1;justify-self:start;font-size:11.5px!important}
.lesson-mini h3{grid-column:1;margin:2px 0 0!important;line-height:1}
.lesson-mini>p{grid-column:2;margin:0!important;text-align:left!important;line-height:1.5;word-break:keep-all}
.lesson-mini .mini-price{grid-column:1/-1!important;grid-row:auto!important;width:100%;justify-self:stretch;padding-top:14px!important}
.lesson-mini .mini-badge{text-align:left!important}
}
.package-row.oneplus{padding:12px 10px!important;margin-top:4px}
@media(max-width:400px){.package-row{grid-template-columns:44px minmax(0,1fr) auto;gap:8px}.package-row strong{font-size:16px;letter-spacing:-.02em}}
/* ===== v46 메인: 강습 스타일 찾기 티저 ===== */
.hero-finder-link{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:8px 14px 8px 8px;border-radius:4px;background:#eef5fb;border:1px solid #d6e5f1;color:#173a59;font-size:13.5px;font-weight:700;text-decoration:none;transition:background .15s,transform .15s}
.hero-finder-link span{background:#102f47;color:#ffd84b;font-size:10.5px;font-weight:900;letter-spacing:.06em;border-radius:4px;padding:3px 8px}
.hero-finder-link b{color:#1f6fb3;font-weight:900}
.hero-finder-link:hover{background:#e2eef9;transform:translateY(-1px)}
.finder-teaser-v46{padding-top:56px!important;padding-bottom:56px!important}
.ft-box{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);align-items:center;background:linear-gradient(135deg,#102f47 0%,#16456a 100%);border-radius:6px;padding:clamp(24px,4.5vw,52px);color:#fff;position:relative;overflow:hidden}
.ft-box:after{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(70,166,232,.35),transparent 70%);pointer-events:none}
.ft-copy .eyebrow{color:#8fc6ea!important}
.ft-copy h2{margin:8px 0 12px;font-size:clamp(26px,3.4vw,38px);line-height:1.22;color:#fff;letter-spacing:-.03em;word-break:keep-all}
.ft-copy>p{margin:0;color:#c7d8e4;font-size:15px;line-height:1.65;word-break:keep-all}
.ft-sample{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:8px}
.ft-sample li{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;align-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:10px 13px}
.ft-sample small{grid-row:1/3;font-size:10.5px;font-weight:900;color:#102f47;background:#ffd84b;border-radius:4px;padding:3px 6px}
.ft-sample b{font-size:14px;color:#fff}
.ft-sample span{font-size:12.5px;color:#a9c3d6}
.ft-q{background:#fff;color:#102f47;border-radius:6px;padding:clamp(20px,3vw,28px);box-shadow:0 18px 40px rgba(4,20,34,.28);position:relative;z-index:1}
.ft-step{font-size:12px;font-weight:800;color:#7d98aa}
.ft-step b{color:#2e7dc0;font-size:14px}
.ft-q h3{margin:6px 0 14px;font-size:21px;letter-spacing:-.02em}
.ft-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ft-opts a{display:block;padding:13px 14px;border-radius:4px;border:1px solid #cfdde8;background:#f7fafc;color:#173a59;font-size:14.5px;font-weight:800;text-decoration:none;transition:all .15s}
.ft-opts a:last-child{grid-column:1/-1}
.ft-opts a:hover{background:#102f47;border-color:#102f47;color:#fff;transform:translateY(-1px)}
.ft-start{display:inline-block;margin-top:14px;font-size:13.5px;font-weight:800;color:#2e7dc0;text-decoration:none}
@media(max-width:860px){.ft-box{grid-template-columns:1fr}}
@media(max-width:520px){.finder-teaser-v46{padding-top:36px!important;padding-bottom:36px!important}.ft-box{border-radius:6px;padding:22px 16px}.ft-q{padding:18px 16px}.ft-copy>p{font-size:14px}}
/* v49 상담폼 날짜 입력 */
.form input[type="date"]{-webkit-appearance:none;appearance:none;min-height:46px;width:100%;max-width:100%;box-sizing:border-box;background:#fff;color:#173a59;font:inherit;display:block}
.form input[type="date"]::-webkit-date-and-time-value{text-align:left}
.form input[type="date"]:invalid::-webkit-datetime-edit{color:#9aabb8}
/* v51 모바일 팝업: 화면 안에 들어오게 + 버튼 하단 고정 */
@media(max-width:640px){
.popup-layer{padding:8px!important;align-items:end!important}
.popup.popup-v3{display:flex!important;flex-direction:column;max-height:calc(100vh - 16px)!important;max-height:calc(100dvh - 16px)!important;overflow:hidden!important}
.popup-image-v3{min-height:118px!important;flex:0 0 auto}
.popup-image-v3 .popup-image-copy b{font-size:30px!important;line-height:1}
.popup-body-v3{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 16px 0!important}
.popup-body-v3 h2{font-size:21px!important;margin:6px 0 10px!important}
.popup-v3 .popup-offer{padding:12px 14px!important}
.popup-v3 .popup-offer h3{font-size:19px!important;margin:2px 0!important}
.popup-v3 .popup-offer strong{font-size:14px!important}
.popup-v3 .popup-offer p{font-size:12px!important;margin:3px 0 0!important}
.popup-v3 .popup-two-offers{gap:8px!important}
.popup-v3 .popup-loyalty{padding:10px 12px!important;margin-top:8px!important}
.popup-v3 .popup-note-strong{font-size:12px!important;padding:9px 11px!important;margin-top:8px!important}
.popup-v3 .popup-actions{position:sticky;bottom:0;margin:10px -16px 0!important;padding:10px 16px 6px;background:linear-gradient(180deg,rgba(255,253,243,.85),#fffdf3 30%);display:grid!important;grid-template-columns:1.4fr 1fr;gap:8px}
.popup-v3 .popup-actions .btn{min-height:46px;padding:10px 8px;font-size:14px;text-align:center;justify-content:center}
.popup-v3 .popup-actions{z-index:2;box-shadow:0 -8px 14px rgba(255,253,243,.9)}
.popup-v3 .hide24{position:static!important;display:block;width:100%;margin:0;padding:8px 0 14px;background:transparent;font-size:12px}
}
.footer-seo{margin:0 0 10px;color:#7f99aa;font-size:12px;line-height:1.7;word-break:keep-all}
.footer-seo a{display:inline-block;margin:4px 12px 0 0;color:#8fb0c4;text-decoration:none;border-bottom:1px solid rgba(143,176,196,.35)}
.footer-seo a:hover{color:#fff}
/* v53 모바일 하단 바로가기 4칸 (상담신청 추가) */
.mobile-contact-dock{grid-template-columns:.9fr 1fr 1.15fr 1.05fr!important}
.mobile-contact-dock .apply{background:#1f6fb3!important;color:#fff!important}
/* ===== v57 링크 버튼 통일 ===== */
.link-arrow{display:inline-flex!important;align-items:center;gap:6px;margin-top:20px;padding:11px 18px;border-radius:4px;background:#fff;border:1px solid #d3e2ee;color:#173a59!important;font-size:15px!important;font-weight:800;text-decoration:none;line-height:1.2;transition:border-color .2s,background .2s,transform .2s}
.link-arrow::after{content:'→';transition:transform .2s}
.link-arrow:hover{border-color:#2e7dc0;background:#f3f8fd}
.link-arrow:hover::after{transform:translateX(3px)}
.section-links-row{display:flex!important;flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px}
.section-links-row>a{margin:0!important}
.review-source-link{display:inline-flex!important;align-items:center;gap:6px;padding:11px 18px;border-radius:4px;background:#fff;border:1px solid #bfe8cf;color:#049a48!important;font-size:15px!important;font-weight:800;line-height:1.2;text-decoration:none;transition:background .2s,border-color .2s}
.review-source-link:hover{background:#effbf4;border-color:#03c75a}
.curriculum-copy .link-arrow+.level-cta{margin:10px 0 0 8px!important}
.level-cta{display:inline-flex!important;align-items:center;gap:6px;padding:11px 18px!important;font-size:15px!important;line-height:1.2;border:1px solid #102f47}
.ft-start{font-size:14.5px!important}
@media(max-width:640px){.link-arrow,.review-source-link,.level-cta{font-size:14px!important;padding:10px 15px!important}.curriculum-copy .link-arrow+.level-cta{margin:8px 0 0 0!important}}

/* ===== v57 강습 찾기 진입 버튼 ===== */
.finder-chip{display:inline-flex;align-items:center;gap:7px;margin-right:8px;padding:6px 14px 6px 6px;border-radius:4px;background:#fff7d6;border:1px solid #f2d76a;color:#102f47;font-size:13.5px;font-weight:800;text-decoration:none;white-space:nowrap;transition:transform .2s,box-shadow .2s}
.finder-chip i{font-style:normal;display:grid;place-items:center;min-width:34px;height:26px;padding:0 6px;border-radius:4px;background:#102f47;color:#ffd84b;font-size:11px;font-weight:900}
.finder-chip:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(242,200,60,.35)}
.finder-chip .fc-short{display:none}
.header-actions{display:flex;align-items:center}
@media(max-width:1240px){.finder-chip .fc-long{display:none}.finder-chip .fc-short{display:inline}}
@media(max-width:980px){.finder-chip{margin-right:6px;padding:5px 11px 5px 5px;font-size:12.5px}.finder-chip i{min-width:30px;height:24px;font-size:10.5px}}

.mobile-finder-link{grid-column:1/-1;display:flex!important;flex-direction:column;gap:2px;background:#fff7d6!important;border:1px solid #f2d76a;color:#102f47!important}
.mobile-finder-link b{font-size:13.5px}
.mobile-finder-link small{font-size:11.5px;font-weight:600;color:#6b6440}
.finder-strip-wrap{padding:18px 0 0}
.finder-strip{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:6px;background:linear-gradient(120deg,#102f47,#17466c);color:#fff;text-decoration:none;box-shadow:0 12px 30px rgba(16,47,71,.18);transition:transform .2s}
.finder-strip:hover{transform:translateY(-2px)}
.fs-ico{flex:0 0 auto;display:grid;place-items:center;width:52px;height:52px;border-radius:4px;background:#ffd84b;color:#102f47;font-weight:900;font-size:15px}
.fs-copy{flex:1;min-width:0}
.fs-copy b{display:block;font-size:17px;letter-spacing:-.02em;word-break:keep-all}
.fs-copy small{display:block;margin-top:3px;font-size:13px;color:#b9cfdf;word-break:keep-all}
.fs-go{flex:0 0 auto;padding:10px 16px;border-radius:4px;background:#fff;color:#102f47;font-size:14px;font-weight:900}
@media(max-width:640px){.finder-strip{padding:14px;gap:12px;flex-wrap:wrap}.fs-ico{width:44px;height:44px;font-size:13px}.fs-copy b{font-size:15px}.fs-copy small{font-size:12px}.fs-go{width:100%;text-align:center}}
.curriculum-copy .link-arrow,.curriculum-copy .level-cta{display:flex!important;width:fit-content}
.curriculum-copy .link-arrow+.level-cta{margin:10px 0 0 0!important}
.link-arrow{align-self:flex-start;width:fit-content;max-width:100%}
@media(max-width:640px){.section-links-row{flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;gap:8px!important}}

/* =====================================================================
   v58 TOMS 에디토리얼 정리 — 세리프 제목 · 한글 라벨 · 각진 모서리 · 실제 사진
   ===================================================================== */
:root{--toms-navy:#0f2a40;--toms-ink:#1c3247;--toms-paper:#fbfaf7;--toms-line:#e4ded3;--label:#94744a;--serif:"Noto Serif KR","Noto Serif CJK KR","Nanum Myeongjo","AppleMyungjo",serif}
h1,h2{font-family:var(--serif)!important;font-weight:700!important;letter-spacing:-.015em!important;word-break:keep-all}
h1 em,h2 em{font-style:normal}

/* 섹션 라벨: 영어 대문자 → 한글 + 가는 선 */
.eyebrow,.section-kicker,.match-kicker,.actioncam-copy-label,.pv5-eyebrow{display:inline-flex!important;align-items:center;gap:10px;text-transform:none!important;letter-spacing:.01em!important;font-size:13px!important;font-weight:700!important;color:var(--label)!important;line-height:1.4}
.eyebrow::before,.section-kicker::before,.pv5-eyebrow::before{content:"";flex:0 0 auto;width:22px;height:1px;background:currentColor;opacity:.7}
.section-symbol{display:none!important}
.contact,.ft-box,.teacher-child-feature-v41,.yaho-home-section,.actioncam-v40,.home-actioncam-section,.event-booking-summary,.footer,.lf-result,.team-edu,.dark-ticket{--label:#d6bd8a}
@media(max-width:640px){.eyebrow,.section-kicker,.match-kicker,.actioncam-copy-label{font-size:12px!important}}

/* 상단 띠: 카운트다운 없이 한 줄 안내 */
.promo{display:flex!important;justify-content:center;align-items:center;gap:14px;background:var(--toms-navy)!important;color:rgba(255,255,255,.82)!important;padding:9px 16px!important;font-size:12.5px!important;letter-spacing:.01em;white-space:nowrap;overflow:hidden}
.promo span{overflow:hidden;text-overflow:ellipsis}
.promo b{color:#fff!important;font-weight:700;margin-right:10px;padding-right:10px;border-right:1px solid rgba(255,255,255,.25)}
.promo a{flex:0 0 auto;color:#e2cc9c!important;text-decoration:none;border-bottom:1px solid rgba(226,204,156,.5);font-weight:600}
.promo a:hover{color:#fff!important}
@media(max-width:640px){.promo{font-size:11.5px!important;padding:8px 14px!important;gap:10px;justify-content:space-between}.promo b{margin-right:8px;padding-right:8px}}

/* D-day: 노란 배지 대신 조용한 텍스트 */
.dday{display:inline!important;margin-left:6px!important;padding:0 0 0 7px!important;border-radius:0!important;background:none!important;border-left:1px solid currentColor;color:inherit!important;font-size:.92em!important;font-weight:700!important;letter-spacing:0!important;animation:none!important;opacity:.85}
.dday.soon{color:#c0392b!important;opacity:1}

/* 버튼: 알약 → 단정한 사각 */
.btn,.link-arrow,.review-source-link,.level-cta,.fs-go,.finder-chip,.hero-finder-link{border-radius:4px!important}
.header .btn.primary,.home-hero .btn.primary,.pv5-actions .btn.primary{background:var(--toms-navy)!important;border-color:var(--toms-navy)!important;color:#fff!important;box-shadow:none!important}
.header .btn.primary:hover,.home-hero .btn.primary:hover,.pv5-actions .btn.primary:hover{background:#17405f!important}
.finder-chip{background:#fff!important;border:1px solid #d9cfbd!important}
.finder-chip i{border-radius:2px!important;background:var(--toms-navy)!important;color:#e2cc9c!important}
.hero-finder-link span{border-radius:2px!important;background:var(--toms-navy)!important;color:#e2cc9c!important}

/* ---------- 실제 사진 밴드 ---------- */
.season-film{padding:96px 0 0;background:var(--toms-paper)}
.sf-head{display:grid;grid-template-columns:1fr minmax(0,420px);gap:40px;align-items:end;margin-bottom:34px}
.sf-head h2{margin:12px 0 0;font-size:clamp(28px,3.4vw,42px);line-height:1.22;color:var(--toms-navy)}
.sf-head p{margin:0;color:#56697a;font-size:15px;line-height:1.75;word-break:keep-all}
.sf-track{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}
.sf-track figure{margin:0;overflow:hidden;background:#dfe6ec;aspect-ratio:3/4}
.sf-track img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .4s}
.sf-track figure:hover img{transform:scale(1.04)}
@media(max-width:980px){.sf-head{grid-template-columns:1fr;gap:14px}.sf-track{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.season-film{padding:64px 0 0}.sf-head{margin-bottom:22px}.sf-head p{font-size:14px}
.sf-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:3px;padding:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.sf-track::-webkit-scrollbar{display:none}.sf-track figure{flex:0 0 62%;scroll-snap-align:start}}

/* ---------- 사전예약 팝업 (v58) ---------- */
.pv5-layer{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px}
.pv5-layer[hidden]{display:none}
.pv5-back{position:absolute;inset:0;background:rgba(8,20,30,.58);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity .35s}
.pv5-layer.is-in .pv5-back{opacity:1}
.pv5-card{position:relative;z-index:1;width:min(880px,100%);max-height:calc(100vh - 48px);display:grid;grid-template-columns:.82fr 1.18fr;background:var(--toms-paper);border-radius:4px;overflow:hidden;box-shadow:0 40px 90px rgba(6,20,32,.38);opacity:0;transform:translateY(18px);transition:opacity .4s ease,transform .5s cubic-bezier(.2,.75,.2,1);outline:none}
.pv5-layer.is-in .pv5-card{opacity:1;transform:none}
.pv5-handle{display:none}
.pv5-close{position:absolute;top:14px;right:14px;z-index:3;width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:2px;background:transparent;cursor:pointer}
.pv5-close svg{width:20px;height:20px;fill:none;stroke:var(--toms-navy);stroke-width:1.6;stroke-linecap:round}
.pv5-close:hover{background:rgba(15,42,64,.06)}
.pv5-visual{position:relative;margin:0;min-height:520px;background:#cfdbe5}
.pv5-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pv5-visual::after{content:"";position:absolute;inset:auto 0 0 0;height:40%;background:linear-gradient(transparent,rgba(8,20,30,.55))}
.pv5-visual figcaption{position:absolute;left:24px;bottom:22px;z-index:1;display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.92);font-size:12px;letter-spacing:.02em}
.pv5-visual figcaption::before{content:"";width:20px;height:1px;background:currentColor}
.pv5-body{padding:46px 46px 26px;display:flex;flex-direction:column;overflow-y:auto}
.pv5-body h2{margin:16px 0 0;font-size:34px;line-height:1.28;color:var(--toms-navy)}
.pv5-lead{margin:14px 0 0;font-size:15px;line-height:1.7;color:#4c6173;word-break:keep-all}
.pv5-count{margin:18px 0 0;font-size:13.5px;font-weight:600;color:var(--toms-navy)}
.pv5-count[hidden]{display:none}
.pv5-count span:not(:empty){margin-left:10px;padding-left:10px;border-left:1px solid #cdbfa5;color:var(--label);font-weight:700}
.pv5-offers{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--toms-navy)}
.pv5-offers li{display:grid;grid-template-columns:116px minmax(0,1fr) auto;gap:14px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--toms-line)}
.pv5-offers li[hidden],.pv5-lead[hidden]{display:none}
.pv5-offers b{font-size:14px;font-weight:700;color:var(--toms-navy);white-space:nowrap}
.pv5-offers span{font-size:13.5px;color:#5d7081;line-height:1.5;word-break:keep-all}
.pv5-offers em{font-style:normal;font-size:13px;font-weight:700;color:var(--label);white-space:nowrap}
.pv5-actions{display:flex;align-items:center;gap:22px;margin-top:26px}
.pv5-actions .btn{min-height:52px;padding:0 28px;font-size:15px;font-weight:700;border-radius:2px!important;cursor:pointer;justify-content:center}
.pv5-more{display:inline-flex;align-items:center;gap:8px;color:var(--toms-navy);font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(15,42,64,.35);padding-bottom:2px}
.pv5-more::after{content:"→";transition:transform .2s}
.pv5-more:hover::after{transform:translateX(3px)}
.pv5-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:22px}
.pv5-foot button{border:0;background:none;padding:4px 0;font:inherit;font-size:12.5px;color:#7a8794;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(122,135,148,.45)}
.pv5-foot button:hover{color:var(--toms-navy)}
.pv5-foot span{font-size:12px;color:#9a8f80;text-align:right}
/* 다시 열기 탭 */
.pv5-chip{position:fixed;left:18px;bottom:18px;z-index:60;display:flex;align-items:stretch;background:var(--toms-navy);color:#fff;border-radius:2px;box-shadow:0 14px 34px rgba(6,20,32,.28);transition:opacity .3s,transform .3s}
.pv5-chip[hidden]{display:none}
.pv5-chip.is-hiding{opacity:0;transform:translateY(16px)}
.pv5-chip-open{display:flex;align-items:center;gap:10px;border:0;background:none;color:inherit;font:inherit;padding:12px 6px 12px 16px;cursor:pointer}
.pv5-chip-open::before{content:"";width:16px;height:1px;background:#e2cc9c}
.pv5-chip-open b{font-size:13px;font-weight:700}
.pv5-chip-open small:empty{display:none}
.pv5-chip-x{display:grid;place-items:center;border:0;background:none;padding:0 12px;cursor:pointer;border-left:1px solid rgba(255,255,255,.14)}
.pv5-chip-x svg{width:14px;height:14px;fill:none;stroke:rgba(255,255,255,.65);stroke-width:1.6;stroke-linecap:round}
@media(max-width:860px){.pv5-body{padding:40px 30px 22px}.pv5-body h2{font-size:29px}.pv5-offers li{grid-template-columns:104px minmax(0,1fr) auto}}
@media(max-width:640px){
.pv5-layer{padding:0;place-items:end stretch}
.pv5-card{width:100%;max-height:calc(100dvh - 40px);grid-template-columns:1fr;grid-template-rows:170px minmax(0,1fr);border-radius:10px 10px 0 0;transform:translateY(40px)}
.pv5-layer.is-in .pv5-card{transform:translateY(var(--pv-drag,0px))}
.pv5-card.is-dragging{transition:none}
.pv5-handle{display:block;position:absolute;top:8px;left:50%;z-index:3;width:38px;height:4px;margin-left:-19px;border-radius:2px;background:rgba(255,255,255,.75)}
.pv5-close{top:10px;right:10px}
.pv5-close svg{stroke:#fff}
.pv5-visual{min-height:0}
.pv5-visual img{object-position:center 55%}
.pv5-visual figcaption{left:20px;bottom:14px}
.pv5-body{padding:22px 20px 0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.pv5-body h2{margin-top:12px;font-size:25px}
.pv5-lead{font-size:14px;margin-top:10px}
.pv5-count{margin-top:12px;font-size:13px}
.pv5-offers{margin-top:16px}
.pv5-offers li{grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:12px 0}
.pv5-offers span{grid-column:1/-1;grid-row:2;font-size:13px}
.pv5-actions{position:sticky;bottom:0;flex-direction:column;align-items:stretch;gap:12px;margin:16px -20px 0;padding:14px 20px 4px;background:var(--toms-paper);box-shadow:0 -12px 18px rgba(251,250,247,.95)}
.pv5-actions .btn{width:100%}
.pv5-more{align-self:center}
.pv5-foot{margin:0;padding:10px 0 calc(12px + env(safe-area-inset-bottom))}
.pv5-foot span{display:none}
.pv5-chip{left:12px;bottom:calc(72px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.pv5-card,.pv5-back,.pv5-chip,.sf-track img{transition:none}}

/* ===== v59 작은 라벨 보정 · 평점 별 · 쿠폰 ===== */
.staffing-policy-mark{font-size:16px!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:none!important}
.coach-copy small,.education-band small,.actioncam-loyalty-v17 small,.stage-goal small,.event-urgency-line span,.review-event-v43 small,.match-kicker{font-size:12.5px!important;letter-spacing:.02em!important;text-transform:none!important}
.gratitude-mark{font-size:13px!important;letter-spacing:.06em!important;text-transform:none!important}
.early-booking-chips span{font-size:12.5px!important;letter-spacing:0!important;text-transform:none!important}
.event-limited{font-size:12.5px!important;letter-spacing:.02em!important;line-height:1.35!important;text-transform:none!important}
.price-table .sub{font-size:11.5px!important}
.dday{font-size:max(.92em,11.5px)!important}
.actioncam-icon{font-size:13px!important;letter-spacing:0!important}
@media(max-width:640px){.staffing-policy-mark{font-size:13.5px!important}.coach-copy small{font-size:11.5px!important}.early-booking-chips span,.event-limited{font-size:11.5px!important}}
/* 평점 앞 별 */
.stat-strip-v43>div:first-child b::before{content:"★";display:inline-block;margin-right:.18em;color:#f2373d;font-size:.78em;transform:translateY(-.06em)}
/* 홈 쿠폰 띠 */
.cp-strip-wrap{padding-top:40px}
.cp-strip{display:flex;align-items:center;gap:18px;padding:16px 22px;border:1px solid #e4d7bd;background:#fffaf0;border-radius:4px;text-decoration:none;color:var(--toms-navy);transition:border-color .2s}
.cp-strip:hover{border-color:#c9ab72}
.cp-strip-amt{flex:0 0 auto;font-family:var(--serif);font-weight:700;font-size:22px;color:#b0482b;padding-right:18px;border-right:1px dashed #d8c69f}
.cp-strip-copy{flex:1;min-width:0}.cp-strip-copy b{display:block;font-size:15.5px}.cp-strip-copy small{display:block;margin-top:2px;font-size:12.5px;color:#7b6f5c}
.cp-strip-go{flex:0 0 auto;font-size:13.5px;font-weight:700;border-bottom:1px solid rgba(15,42,64,.35);padding-bottom:2px}
.cp-strip-go::after{content:" →"}
@media(max-width:640px){.cp-strip-wrap{padding-top:28px}.cp-strip{gap:12px;padding:14px 16px;flex-wrap:wrap}.cp-strip-amt{font-size:19px;padding-right:12px}.cp-strip-copy b{font-size:14.5px}.cp-strip-go{width:100%;text-align:right}}
/* 쿠폰 섹션 */
.toms-coupon{background:var(--toms-paper)}
.cp-head{display:grid;grid-template-columns:1fr minmax(0,420px);gap:40px;align-items:end;margin-bottom:30px}
.cp-head h2{margin:12px 0 0;font-size:clamp(28px,3.2vw,40px);line-height:1.25;color:var(--toms-navy)}
.cp-head p{margin:0;color:#56697a;font-size:15px;line-height:1.75;word-break:keep-all}
.cp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cp-ticket{position:relative;display:grid;grid-template-columns:1fr auto;background:#fff;border:1px solid #e4ded3;border-radius:4px;overflow:hidden}
.cp-main{padding:22px 20px 22px 22px;border-right:1px dashed #d8cdb8}
.cp-main small{display:block;font-size:12.5px;font-weight:700;color:var(--label)}
.cp-main h3{margin:8px 0 8px;font-size:18px;color:var(--toms-navy)}
.cp-main p{margin:0;font-size:13.5px;line-height:1.65;color:#5d7081;word-break:keep-all}
.cp-link{display:inline-block;margin-top:12px;font-size:13.5px;font-weight:700;color:var(--toms-navy)!important;text-decoration:none;border-bottom:1px solid rgba(15,42,64,.35)}
.cp-link::after{content:" →"}
.cp-amt{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0;width:112px;background:#fbf6ec;text-align:center}
.cp-amt b{font-family:var(--serif);font-size:24px;line-height:1.1;color:#b0482b}
.cp-amt span{margin-top:4px;font-size:12px;font-weight:700;color:#7b6f5c}
.cp-ticket::before,.cp-ticket::after{content:"";position:absolute;right:105px;width:14px;height:14px;border-radius:50%;background:var(--toms-paper);border:1px solid #e4ded3}
.cp-ticket::before{top:-8px}.cp-ticket::after{bottom:-8px}
.cp-rules{margin:22px 0 0;padding:16px 20px;list-style:none;border-top:1px solid var(--toms-navy);border-bottom:1px solid #e4ded3}
.cp-rules li{position:relative;padding:5px 0 5px 16px;font-size:14px;color:#3f5466;word-break:keep-all}
.cp-rules li::before{content:"";position:absolute;left:0;top:14px;width:6px;height:1px;background:#94744a}
@media(max-width:980px){.cp-head{grid-template-columns:1fr;gap:12px}.cp-grid{grid-template-columns:1fr}}
@media(max-width:640px){.cp-main{padding:18px 16px}.cp-amt{width:96px}.cp-amt b{font-size:21px}.cp-ticket::before,.cp-ticket::after{right:89px}.cp-rules{padding:12px 4px}.cp-rules li{font-size:13.5px}}
/* v59b 쿠폰 바로가기: PC 우측 퀵메뉴 맨 위 + 모바일 우측 탭 */
.quick .cp-q{background:#fffaf0!important;border:1px solid #e4cfa6!important;color:#b0482b!important;gap:0;align-content:center}
.quick .cp-q small{display:block;font-size:11px;font-weight:800;color:#7b6f5c}
.quick .cp-q b{display:block;font-family:var(--serif);font-size:15px;line-height:1.1}
.quick .cp-q:hover{border-color:#c9ab72!important}
.cp-edge{display:none}
@media(max-width:980px){
.cp-edge{position:fixed;right:0;top:46%;z-index:45;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 7px 10px 9px;background:#fffaf0;border:1px solid #e4cfa6;border-right:0;border-radius:6px 0 0 6px;box-shadow:0 8px 22px rgba(15,42,64,.16);text-decoration:none;color:#b0482b}
.cp-edge span{font-size:11px;font-weight:800;color:#7b6f5c;writing-mode:vertical-rl;letter-spacing:.1em}
.cp-edge b{font-family:var(--serif);font-size:12.5px;line-height:1.1;writing-mode:vertical-rl;text-orientation:upright;letter-spacing:-.05em}
html.popup-open .cp-edge{display:none}
}
#coupon{scroll-margin-top:90px}
/* v64 가벼운 문의 폼 */
.contact-finder{display:inline-block;margin-top:18px;color:#cfe4f3;font-size:14px;text-decoration:none;border-bottom:1px solid rgba(207,228,243,.4);padding-bottom:2px}
.contact-finder b{color:#fff;font-weight:700}
#bookingForm .opt{font-size:11px;font-weight:500;color:#8a94a0;margin-left:4px}
#bookingForm .more-info{grid-column:1/-1;border-top:1px solid #e3e7ec;border-bottom:1px solid #e3e7ec;padding:0}
#bookingForm .more-info>summary{cursor:pointer;list-style:none;padding:14px 0;font-size:14px;font-weight:600;color:#33404d;display:flex;align-items:center;gap:6px}
#bookingForm .more-info>summary::-webkit-details-marker{display:none}
#bookingForm .more-info>summary::before{content:'+';display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;border:1px solid #b9c2cc;font-size:13px;line-height:1;color:#55616d}
#bookingForm .more-info[open]>summary::before{content:'−'}
#bookingForm .more-info>.form-grid{padding:4px 0 16px}
#bookingForm .form-safe{grid-column:1/-1;margin:2px 0 0;text-align:left;font-size:13px;color:#5b6773}
/* v66 자격증 신뢰 섹션 */
.cert-trust{margin:22px 0 26px;padding:0;overflow:hidden;border:1px solid #dfe6ee;background:#eef3f9}
.cert-trust img{display:block;width:100%;height:auto}
.m-only{display:none!important}
/* v66 모바일 보완 */
@media (max-width:640px){
  .m-only{display:inline-flex!important}
  /* 1. 너무 작은 글씨 최소 12px */
  .hero-proof-row small{font-size:11.5px!important;letter-spacing:-.01em}
  .hero-proof-row b{font-size:13px!important}
  .mini-price em,.price-row small,.price-table small,.ft-sample span,.coach-copy li,.flow-grid p,.process-grid p{font-size:12.5px!important}
  .section p,.section li{font-size:max(13px,1em)}
  small{font-size:max(12px,.85em)}
  /* 2. 섹션 여백 통일 */
  .section{padding-top:56px!important;padding-bottom:56px!important}
  .section-head,.section-head.compact-head{margin-bottom:22px!important}
  /* 3. 중복 줄이기 */
  .staffing-policy-v40{display:none!important}
  .curriculum-copy .level-cta{display:none!important}
  .price-focus-card{display:none!important}
  /* 4. 자격증 */
  .cert-trust{margin:4px -16px 22px;border-left:0;border-right:0}
  /* 5. 탭 영역 키우기 */
  .footer a,footer a{display:inline-block;padding:6px 2px;min-height:32px}
  .link-arrow{min-height:44px;align-items:center}
  /* 6. 강사 카드 정돈 */
  .coach-copy h3{font-size:19px!important}
  .coach-copy small{font-size:12px!important}
}
@media (max-width:640px){
  .link-arrow.m-only{margin-left:8px}
  a.link-arrow[href="lessons.html"]{display:inline-flex!important}
  a.link-arrow[href="lessons.html"],.link-arrow.m-only{font-size:13px!important;padding-left:12px!important;padding-right:12px!important}
}
@media (min-width:641px){.cert-trust{max-width:880px;margin:26px auto 30px}}
@media (max-width:640px){
  .lesson-mini-area{display:flex!important;flex-wrap:wrap;gap:8px;flex-direction:row!important}
  .lesson-mini-area>*:not(.link-arrow){flex:1 1 100%}
  .lesson-mini-area>.link-arrow{flex:1 1 0;justify-content:center;margin:0!important}
}
/* v67 첫 화면 혜택 4칸 */
.hero-perks{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px;max-width:620px}
.hero-perks .hp{display:flex;flex-direction:column;gap:2px;padding:12px 12px 11px;background:#fff;border:1px solid #dbe3ec;text-decoration:none;color:#102a3f;min-width:0}
.hero-perks .hp small{font-size:11.5px;font-weight:600;color:#6b7785;letter-spacing:-.01em}
.hero-perks .hp b{font-size:15px;font-weight:800;letter-spacing:-.02em;color:#102a3f;white-space:nowrap}
.hero-perks .hp em{font-style:normal;font-size:11.5px;color:#7b8794}
.hero-perks .hp-cp{background:#fffaf0;border-color:#f0dfb8}
.hero-perks .hp-cp b{color:#b4471f}
.hero-perks .hp-ev{background:#f1f7fd;border-color:#cfe0f1}
.hero-perks .hp-ev b{color:#1d63b5}
.hero-perks a.hp em{color:#55616d;font-weight:600}
.hero-perks a.hp:hover{border-color:#102a3f}
@media (max-width:640px){
  .hero-perks{grid-template-columns:1fr 1fr;gap:6px;margin-top:16px}
  .hero-perks .hp{padding:10px 12px}
  .hero-perks .hp b{font-size:15px}
  .hero-perks .hp small,.hero-perks .hp em{font-size:12px}
}
