/* 客戶 Figma 改版的共用樣式，所有內容規則限定在頁面 wrapper。 */
.smrv-page{--smrv-ink:#122b32;--smrv-body:#314b52;--smrv-muted:#536d74;--smrv-line:#e5ebee;--smrv-soft:#f2f5f7;--smrv-accent:#fa9138;--smrv-brand:#5d8390;--smrv-green:#06c755;color:var(--smrv-body);max-width:1290px;margin:0 auto;line-height:1.8}
.smrv-page :where(article,section,div,a,button,img,dl,li){box-sizing:border-box}
.smrv-page.smrv-page :is(h1,h2,h3,h4,p,ul,ol,dl,dt,dd,figure,blockquote){margin:0}
.smrv-page.smrv-page :is(ul,ol){padding:0;list-style:none}
.smrv-page h1,.smrv-page h2,.smrv-page h3{color:var(--smrv-ink);font-weight:650;letter-spacing:.04em;line-height:1.5}
.smrv-page h2{font-size:clamp(24px,2.3vw,32px)}
.smrv-page h3{font-size:20px}
.smrv-page p{font-size:16px;line-height:1.85}
.smrv-page img{display:block;max-width:100%;object-fit:cover}
.smrv-page a{text-decoration:none}
.smrv-page :is(a,button,summary,[tabindex]):focus-visible{outline:3px solid #fa9138;outline-offset:4px}
.smrv-section{position:relative;padding:58px 0}
.smrv-heading{display:flex;flex-direction:column;gap:10px;padding-bottom:30px}
.smrv-heading p{color:var(--smrv-muted)}
.smrv-section-title{display:flex;align-items:center;gap:14px}
.smrv-section-title:before{content:"";display:block;width:25px;height:25px;flex:0 0 25px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FA9138' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h4l2-3h4l2 3h4v13H4z'/%3E%3Ccircle cx='12' cy='13' r='4'/%3E%3C/svg%3E")}
.smrv-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 22px;border:1px solid transparent;border-radius:8px;background:var(--smrv-green);color:#fff;font-size:15px;font-weight:650;line-height:1.55;letter-spacing:.04em;transition:background-color .18s}
.smrv-page .smrv-btn:hover{background:#03a947;color:#fff}
.smrv-page .smrv-btn--brand{background:var(--smrv-brand)}
.smrv-page .smrv-btn--brand:hover{background:var(--smrv-ink)}
.smrv-page .smrv-btn--outline{background:transparent;border-color:var(--smrv-muted);color:var(--smrv-ink);min-height:38px;padding:6px 15px}
.smrv-page .smrv-btn--outline:hover{background:#fff;color:var(--smrv-ink)}
.smrv-hero{position:relative;isolation:isolate;min-height:600px;overflow:hidden;border-radius:16px;background:var(--smrv-ink);display:flex;align-items:center}
.smrv-page .smrv-hero-image{position:absolute;inset:0;width:100%;height:100%;object-position:center}
.smrv-hero:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(8,29,34,.9),rgba(8,29,34,.58) 44%,rgba(8,29,34,.05) 76%),linear-gradient(0deg,rgba(8,29,34,.38),transparent 50%);pointer-events:none}
.smrv-hero-copy{position:relative;z-index:1;padding:64px;display:flex;flex-direction:column;align-items:flex-start;gap:23px;width:65%;color:#fff}
.smrv-page .smrv-hero h1{color:#fff;font-size:clamp(40px,4vw,60px);font-weight:700;line-height:1.35;max-width:11em}
.smrv-page .smrv-eyebrow{color:#d2e1e5;font-size:14px;letter-spacing:.15em}
.smrv-page .smrv-hero-lead{max-width:28em;font-size:21px;color:#fff}
.smrv-tags{display:flex;flex-wrap:wrap;gap:10px}
.smrv-tags li,.smrv-tag{display:inline-flex;align-items:center;padding:5px 13px;border-radius:999px;background:#fff4e8;color:#75502f;font-size:13px;line-height:1.6}
.smrv-fit{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:72px}
.smrv-page .smrv-fit-image{width:100%;height:450px;border-radius:12px;object-position:center}
.smrv-page[data-course-page="retouching"] .smrv-fit-image{object-fit:contain;background:var(--smrv-soft)}
.smrv-fit-list{display:flex;flex-direction:column;gap:0}
.smrv-fit-list li{display:grid;grid-template-columns:50px 1fr;gap:20px;padding:23px 0;border-bottom:1px solid var(--smrv-line)}
.smrv-fit-list li:last-child{border-bottom:0}
.smrv-fit-list li>span{font-size:30px;font-weight:600;color:#9bb0b6;line-height:1.5}
.smrv-fit-list h3{padding-bottom:6px}
.smrv-fit-list p{font-size:15px}
.smrv-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.smrv-four h3{padding:8px 0}
.smrv-four p{font-size:15px}
.smrv-small{display:block;color:#9d4400;font-size:13px;font-weight:650;letter-spacing:.08em}
.smrv-learn article{padding:12px 20px 16px 0;border-right:1px solid var(--smrv-line)}
.smrv-learn article:last-child{border:0;padding-right:0}
.smrv-flow-card img{width:100%;height:210px;border-radius:10px;margin-bottom:18px}
.smrv-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.smrv-page .smrv-topic{display:grid;grid-template-columns:160px 1fr;gap:22px;padding:18px;border:1px solid var(--smrv-line);background:#fff;border-radius:12px;color:var(--smrv-body);transition:border-color .18s,box-shadow .18s}
.smrv-topic img{width:160px;height:200px;border-radius:8px}
.smrv-topic h3{display:flex;justify-content:space-between;gap:12px;padding:6px 0 10px}
.smrv-topic h3 span{color:var(--smrv-muted)}
.smrv-topic p{font-size:14px}
.smrv-topic .smrv-tag{margin-top:10px}
.smrv-page .smrv-topic:hover{border-color:#85a0a8;box-shadow:0 8px 24px rgba(18,43,50,.06)}
.smrv-formats{padding:30px;background:var(--smrv-brand);border-radius:12px;color:#fff;margin:28px 0}
.smrv-page .smrv-formats>h2{color:#fff;padding-bottom:24px;font-size:26px}
.smrv-formats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.smrv-format{display:grid;grid-template-columns:minmax(0,1fr) 155px;gap:18px;padding:24px;background:#fff;color:var(--smrv-body);border-radius:9px}
.smrv-format>div{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.smrv-format ul{display:flex;flex-direction:column;gap:9px;font-size:14px}
.smrv-format li:before{content:"— ";color:var(--smrv-brand)}
.smrv-format img{height:100%;max-height:245px;width:155px;border-radius:8px}
.smrv-format .smrv-btn{margin-top:auto;font-size:14px;padding:10px 14px}
.smrv-private{padding:34px 38px;background:#e7eef1;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin:26px 0}
.smrv-private h2{padding-bottom:20px}
.smrv-private ul{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-weight:600}
.smrv-private li:before{content:"✓ ";color:var(--smrv-brand)}
.smrv-teacher{display:grid;grid-template-columns:230px 1fr;gap:40px;padding:34px;background:#e5ecef;border-radius:12px;margin:28px 0;align-items:center}
.smrv-teacher-image{width:230px;height:290px;border-radius:10px;object-position:center 30%}
.smrv-teacher-copy{display:flex;flex-direction:column;gap:10px}
.smrv-teacher-heading{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.smrv-teacher h2{font-size:27px}
.smrv-teacher p{font-size:15px}
.smrv-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-top:18px}
.smrv-stats dt{font-weight:700;color:var(--smrv-ink);font-size:30px;line-height:1.4}
.smrv-stats dd{font-size:13px;color:var(--smrv-muted)}
.smrv-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.smrv-info>div{display:flex;flex-direction:column;gap:12px;padding:26px;background:#fff;border:1px solid var(--smrv-line);border-radius:10px}
.smrv-info dt{font-size:14px;color:var(--smrv-muted)}
.smrv-info dd{font-weight:600;font-size:16px;color:var(--smrv-ink)}
.smrv-slider{position:relative}
.smrv-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b5c5ca transparent;padding:4px 2px 18px;overscroll-behavior-x:contain}
.smrv-track>*{scroll-snap-align:start;flex-shrink:0}
.smrv-arrows{display:flex;gap:10px;justify-content:flex-end;padding-bottom:16px}
.smrv-arrows button{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #bccbd0;border-radius:50%;background:#fff;color:var(--smrv-ink);font-size:20px;cursor:pointer}
.smrv-arrows button:disabled{opacity:.35;cursor:default}
.smrv-review{display:flex;flex-direction:column;gap:18px;background:#fff;border:1px solid var(--smrv-line);border-radius:11px;padding:28px;width:calc((100% - 44px)/3);box-shadow:0 8px 22px rgba(18,43,50,.035)}
.smrv-stars{color:var(--smrv-brand);letter-spacing:.12em;font-size:16px}
.smrv-review blockquote{font-size:15px;line-height:1.9;flex:1}
.smrv-page .smrv-review-author{font-size:13px;border-top:1px solid var(--smrv-line);padding-top:16px;color:var(--smrv-muted)}
.smrv-gallery-card{width:calc((100% - 66px)/4)}
.smrv-gallery-card img{width:100%;height:300px;border-radius:10px}
.smrv-faq{display:flex;flex-direction:column;gap:14px}
.smrv-faq details{background:#fff;border:1px solid var(--smrv-line);border-radius:10px;overflow:hidden}
.smrv-faq summary{display:flex;justify-content:space-between;gap:20px;align-items:center;list-style:none;cursor:pointer;padding:22px 25px;font-weight:650;color:var(--smrv-ink);font-size:17px}
.smrv-faq summary::-webkit-details-marker{display:none}
.smrv-faq summary span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--smrv-line);border-radius:50%;flex-shrink:0;font-size:17px;font-weight:400}
.smrv-faq details[open] summary span{font-size:0}
.smrv-faq details[open] summary span:after{content:"−";font-size:17px}
.smrv-page .smrv-faq details>p{padding:0 25px 23px;max-width:1000px;font-size:15px}
.smrv-finder{padding:34px;border:1px solid var(--smrv-line);background:#edf3f4;border-radius:14px;margin:18px 0 34px}
.smrv-finder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.smrv-finder-choice{display:flex;flex-direction:column;gap:0;overflow:hidden;padding:0;background:#fff;border:2px solid transparent;border-radius:12px;text-align:left;color:var(--smrv-ink);font:inherit;cursor:pointer;transition:border-color .18s}
.smrv-finder-choice img{width:100%;height:160px}
.smrv-finder-choice span{padding:15px 18px;font-size:18px;font-weight:600;display:flex;align-items:center;justify-content:space-between;width:100%}
.smrv-finder-choice[aria-pressed="true"]{border-color:#56876b}
.smrv-finder-choice[aria-pressed="true"] span:after{content:"✓";color:#56876b}
.smrv-result{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--smrv-ink);color:#fff;border-radius:12px;padding:28px;margin-top:24px}
.smrv-page .smrv-result h3{color:#fff;font-size:25px;padding:5px 0}
.smrv-result p{font-size:14px;max-width:580px;color:#d5e1e5}
.smrv-result-actions{display:flex;flex-wrap:wrap;gap:12px;flex-shrink:0}
.smrv-page .smrv-result .smrv-btn--outline{border-color:#fff;background:#fff;color:var(--smrv-ink)}
.smrv-footer-cta{display:grid;grid-template-columns:1fr 160px;gap:40px;align-items:center;padding:42px 48px;background:var(--smrv-ink);color:#fff;border-radius:14px;margin:30px 0 55px}
.smrv-page .smrv-footer-cta h2{color:#fff;font-size:30px}
.smrv-footer-cta p{padding:14px 0 23px;color:#d0dee2;font-size:16px}
.smrv-footer-cta img{width:160px;height:160px;border-radius:10px}
.smrv-legal{display:block;padding-top:10px;font-size:13px}
#footer .ct-social-box{--icon-size:22px;--items-spacing:18px}
#footer .ct-social-box a{min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}
.smrv-menu-badge{display:inline-block;padding:2px 7px;background:#fff0e1;color:#9d4400;border-radius:5px;font-size:11px;line-height:1.5;white-space:nowrap}
.smrv-menu-parent>a{background:transparent;border-radius:7px}
.smrv-menu-parent>a:focus-visible{outline:3px solid #fa9138;outline-offset:-3px}
.smrv-menu-latest>a{background:#122b32;color:#fff!important}
.smrv-menu-private{border-top:1px solid #d9e3e6}
.smrv-menu-private>a{background:#eef4f5;font-weight:650}
.sub-menu .menu-item>a:has(.smrv-menu-badge){display:flex;align-items:center;justify-content:space-between;gap:12px}
.smrv-home-method .smrv-btn{margin-top:18px}
.smrv-home .smct-heading h2{display:flex;align-items:center;gap:14px}
.smrv-home .smct-heading h2:before{content:"";width:25px;height:25px;flex:0 0 25px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FA9138' stroke-width='1.5'%3E%3Cpath d='M4 7h4l2-3h4l2 3h4v13H4z'/%3E%3Ccircle cx='12' cy='13' r='4'/%3E%3C/svg%3E")}
.smrv-home .smls-card__metric{display:none}
.smrv-home .smls-card__rank{background:#fff5e9;color:#9d4400;border-radius:7px;padding:5px 10px;font-size:13px}
.smrv-home .smls-card__desc{font-size:15px;line-height:1.85}
.smrv-home .smls-card__img{height:260px}
.smrv-home .smls-topics--home .smls-card--featured .smls-card__img{height:320px}
.smrv-home .smls-card__cta{display:flex;justify-content:center;align-items:center;min-height:46px;border:1px solid #dde6e9;border-radius:7px;background:#f2f6f7;text-decoration:none;color:#122b32}
@media(max-width:1000px){.smrv-fit{gap:35px}.smrv-format{grid-template-columns:1fr 110px;padding:20px}.smrv-format img{width:110px}.smrv-topic{grid-template-columns:120px 1fr}.smrv-topic img{width:120px}.smrv-result{align-items:flex-start;flex-direction:column}.smrv-four{gap:20px}.smrv-page h3{font-size:18px}}
@media(max-width:767px){.smrv-section{padding:38px 0}.smrv-heading{padding-bottom:23px}.smrv-page h2{font-size:25px}.smrv-page h3{font-size:20px}.smrv-page p{font-size:15px}.smrv-hero{min-height:0;display:flex;flex-direction:column;border-radius:12px;align-items:stretch}.smrv-page .smrv-hero-image{position:static;order:2;height:265px;object-position:center 35%}.smrv-hero:after{display:none}.smrv-hero-copy{width:100%;padding:30px 25px;gap:18px}.smrv-page .smrv-hero h1{font-size:34px;line-height:1.45}.smrv-page .smrv-hero-lead{font-size:17px}.smrv-tags{gap:8px}.smrv-tags li{font-size:12px;padding:4px 10px}.smrv-fit{grid-template-columns:1fr;gap:26px}.smrv-fit>img{order:2}.smrv-page .smrv-fit-image{height:320px}.smrv-fit-list li{padding:18px 0;gap:15px;grid-template-columns:38px 1fr}.smrv-fit-list li>span{font-size:25px}.smrv-four{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}.smrv-four h3{font-size:18px}.smrv-four p{font-size:14px}.smrv-learn article{border:0;padding:0}.smrv-flow-card img{height:140px}.smrv-topics{grid-template-columns:1fr;gap:16px}.smrv-page .smrv-topic{grid-template-columns:100px 1fr;gap:16px;padding:15px}.smrv-topic img{width:100px;height:160px}.smrv-topic h3{font-size:18px}.smrv-topic p{font-size:13px}.smrv-formats{padding:23px 18px;margin:15px 0}.smrv-formats-grid{grid-template-columns:1fr;gap:18px}.smrv-format{grid-template-columns:1fr 95px;padding:20px 17px;gap:12px}.smrv-format img{width:95px;height:210px}.smrv-format ul{font-size:13px}.smrv-format h3{font-size:20px}.smrv-format .smrv-btn{font-size:13px;padding:10px 12px}.smrv-private{grid-template-columns:1fr;gap:28px;padding:25px}.smrv-private ul{gap:15px;font-size:14px}.smrv-teacher{grid-template-columns:95px 1fr;align-items:start;gap:18px;padding:25px 20px;margin:20px 0}.smrv-teacher-image{width:95px;height:132px}.smrv-teacher-heading{gap:12px}.smrv-teacher h2{font-size:22px}.smrv-teacher p{font-size:13px}.smrv-teacher-copy{gap:12px}.smrv-teacher .smrv-btn{font-size:12px;min-height:34px;padding:5px 12px}.smrv-stats{grid-template-columns:1fr;gap:12px;padding-top:4px}.smrv-stats>div{display:flex;align-items:center;justify-content:space-between;gap:15px}.smrv-stats dt{font-size:23px}.smrv-stats dd{font-size:12px}.smrv-info{grid-template-columns:1fr;gap:12px}.smrv-info>div{padding:20px;gap:8px}.smrv-review{width:87%;padding:24px;gap:15px}.smrv-review blockquote{font-size:14px}.smrv-gallery-card{width:75%}.smrv-gallery-card img{height:310px}.smrv-arrows{padding-bottom:15px;gap:8px}.smrv-arrows button{width:40px;height:40px}.smrv-faq summary{font-size:15px;padding:19px 18px}.smrv-page .smrv-faq details>p{padding:0 18px 20px;font-size:14px}.smrv-finder{padding:24px 17px;margin:8px 0 22px}.smrv-finder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.smrv-finder-choice img{height:95px}.smrv-finder-choice span{font-size:15px;padding:12px}.smrv-result{gap:18px;padding:22px 18px;margin-top:18px}.smrv-page .smrv-result h3{font-size:22px}.smrv-result-actions{width:100%;gap:10px;flex-shrink:1}.smrv-result-actions .smrv-btn{font-size:13px;padding:10px 13px;flex:1}.smrv-footer-cta{grid-template-columns:1fr;padding:30px 25px;gap:25px;margin-bottom:35px}.smrv-page .smrv-footer-cta h2{font-size:25px}.smrv-footer-cta img{width:115px;height:115px}.smrv-footer-cta p{font-size:14px}.smrv-section-title{gap:10px}.smrv-section-title:before{width:21px;height:21px;flex-basis:21px}.smrv-home .smls-card__img,.smrv-home .smls-topics--home .smls-card--featured .smls-card__img{height:230px}.smrv-home .smls-card__desc{font-size:14px}}
@media(prefers-reduced-motion:reduce){.smrv-page :is(a,button){transition:none}}

/* 驗收修正：單一課程按鈕全寬，社群圖示實際放大，首屏避免孤字。 */
.smrv-home .smls-card__cta{width:100%}.smrv-home .smls-card__description{font-size:15px;line-height:1.85}#footer .ct-social-box svg{width:22px;height:22px}#footer .ct-social-box a{min-width:44px;min-height:44px}#gspb_heading-id-gsbp-69ce485,.smrv-home .gsbp-45ad240{text-wrap:balance}

/* #3：授課資訊移入課程區；#6：放大最新開課的器材與程度提示。 */
.smrv-home .smrv-course-meta{align-items:center;color:var(--smrv-body)}
.smrv-home .smrv-course-meta span{display:inline-block;padding:9px 14px;border-radius:8px;background:#eef3f5;font-size:14px;line-height:1.65;font-weight:500}
.smrv-page[data-course-page="latest-courses"] .smrv-hero .smrv-tags li{font-size:16px;padding:7px 16px;font-weight:600;min-height:40px}
@media(max-width:767px){.smrv-home .smrv-course-meta span{width:100%;font-size:14px}.smrv-page[data-course-page="latest-courses"] .smrv-hero .smrv-tags li{font-size:14px;padding:6px 12px;min-height:36px}}

/* 選課引導定位，避免固定頁首遮住區塊標題。 */
.smrv-finder{scroll-margin-top:100px}

/* 依截圖統一頁尾與課程選單；保留44px社群觸控區。 */
#footer .ct-footer-copyright>p{margin:0}
#footer .smrv-legal{display:flex;flex-wrap:wrap;gap:4px 8px;padding-top:4px;line-height:1.6}
#footer [data-row="bottom"]>.ct-container{align-items:center}
#footer [data-column]{align-self:center}
#footer .ct-social-box{display:flex;align-items:center;gap:4px;--items-spacing:4px}
#footer .ct-social-box a{margin:0;align-items:center;justify-content:center}
.smrv-page .smls-faq-block .smls-faq__lead{margin-bottom:20px}
.smrv-menu-caption{display:block;font-size:12px;font-weight:600;color:#85a0a8;padding:12px 10px 4px;margin-top:10px;border-top:1px solid #e1e8ea}
.smrv-menu-badge{min-width:60px;text-align:center;font-size:11px;padding:4px 8px;border-radius:10px;flex-shrink:0}
.smrv-menu-arrow{font-size:18px;margin-left:auto;font-weight:400;line-height:1}
.smrv-menu-star{font-size:18px;line-height:1}
.smrv-menu-latest>a,.smrv-menu-private>a{display:flex;align-items:center;gap:10px;border-radius:8px;font-weight:650}
.smrv-menu-private{border-top:0;margin-top:12px}
.smrv-menu-private>a{color:#122b32;background:#e8eff0}
#header .smrv-menu-parent>.sub-menu{width:360px;padding:16px;background:#fff;border:1px solid #e6eaed;border-radius:12px;box-shadow:0 8px 24px #122b3212}
#header .smrv-menu-parent>.sub-menu>.menu-item>a{padding:9px 10px;font-size:14px;min-height:44px;justify-content:space-between}
#header .smrv-menu-parent>.sub-menu>.smrv-menu-latest>a{padding:10px 14px;background:#2f5053;min-height:44px}
#header .smrv-menu-parent>.sub-menu>.smrv-menu-private>a{padding:10px 14px;font-size:14px;min-height:44px}
#offcanvas .smrv-menu-caption{padding-left:0}
#offcanvas .smrv-menu-badge{min-width:60px;font-size:11px;padding:4px 8px}
#offcanvas .smrv-menu-parent .sub-menu>.menu-item>a{display:flex;gap:8px;justify-content:space-between}
@media(max-width:767px){.smrv-page .smls-faq-block .smls-faq__lead{margin-bottom:16px}#footer .smrv-legal{justify-content:center}}

/* 課程主題標示獨立一列，不與第一個課程擠在同一行。 */
.smrv-menu-parent .sub-menu>.menu-item:has(>.smrv-menu-caption){display:block}
.smrv-menu-caption{width:100%;white-space:nowrap}
#header .smrv-menu-parent>.sub-menu>.menu-item>a{font-weight:650;line-height:1.5}
#header .smrv-menu-parent>.sub-menu>.menu-item{margin:0;padding:0}

/* 細微互動僅在支援hover的裝置，避免手機點擊留下放大狀態。 */
:where(.smrv-page,.smab-page,.smsv-page,.smen-page,.samq-page) :is(a,button,summary){transition:color .18s,box-shadow .2s,transform .2s}
:where(.smrv-page,.smab-page,.smsv-page,.smen-page,.samq-page) :is(a,button,summary):focus-visible{outline:3px solid #fa9138;outline-offset:4px}
@media(hover:hover) and (pointer:fine){
:where(.smrv-page,.smab-page,.smsv-page,.smen-page,.samq-page) :is(.smrv-topic,.smls-card,.smab-card,.smsv-card,.smen-topic,.smrv-finder-choice,.samq-item){transition:box-shadow .22s,transform .22s}
:where(.smrv-page,.smab-page,.smsv-page,.smen-page,.samq-page) :is(.smrv-topic,.smls-card,.smab-card,.smsv-card,.smen-topic,.smrv-finder-choice,.samq-item):hover{transform:translateY(-3px);box-shadow:0 12px 28px #122b3217}
.smrv-page :is(.smrv-btn,.smls-card__cta):hover,.smsv-page .sama-cta__btn:hover,.smen-page .sama-cta__btn:hover{transform:translateY(-2px);box-shadow:0 7px 18px #122b3220}
:where(.smrv-page,.smab-page,.smsv-page,.smen-page) :is(.smrv-gallery-card img,.smab-shot__img,.smen-shot__img){transition:transform .3s;transform-origin:center}
:where(.smrv-page,.smab-page,.smsv-page,.smen-page) :is(.smrv-gallery-card,.smab-shot,.smen-shot){overflow:hidden}
:where(.smrv-page,.smab-page,.smsv-page,.smen-page) :is(.smrv-gallery-card img,.smab-shot__img,.smen-shot__img):hover{transform:scale(1.025)}
#footer :is(.smrv-legal a,.ct-footer-copyright a):hover{color:#b75d18;text-decoration:underline;text-underline-offset:4px}
#footer .ct-social-box a:hover{transform:translateY(-2px)}
#header .smrv-menu-parent>.sub-menu>.menu-item>a:hover{box-shadow:0 3px 9px #122b320c}
}
body.page-id-3 .entry-content a{transition:color .18s,text-decoration-color .18s}body.page-id-3 .entry-content a:hover{color:#b75d18;text-decoration:underline}
@media(prefers-reduced-motion:reduce){:where(.smrv-page,.smab-page,.smsv-page,.smen-page,.samq-page,#footer,#header) :is(a,button,summary,img,article,details){transition:none!important;transform:none!important}}

/* 目前頁面的原生白字不能套在淺色課程入口上。 */
.smrv-menu-parent .sub-menu>.menu-item:not(.smrv-menu-latest)>a{color:#122b32!important}

/* 桌面選單固定內部盒模型，避免主題或裝置樣式把行高、留白與寬度撐大。 */
#header .smrv-menu-parent>.sub-menu{box-sizing:border-box!important;width:360px!important;min-width:0!important;max-width:calc(100vw - 32px)!important;padding:16px!important;max-height:calc(100dvh - 96px);overflow-y:auto;overflow-x:hidden}
#header .smrv-menu-parent>.sub-menu>.menu-item{display:block!important;box-sizing:border-box!important;margin:0!important;padding:0!important;height:auto!important;min-height:0!important}
#header .smrv-menu-parent>.sub-menu>.menu-item>a{box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between;gap:10px!important;width:100%;height:44px!important;min-height:44px!important;max-height:44px!important;font-size:14px!important;line-height:21px!important;margin:0!important;padding:8px 10px!important}
#header .smrv-menu-parent>.sub-menu>.menu-item>a .smrv-menu-name{font-size:14px!important;line-height:21px!important;margin:0!important;padding:0!important;white-space:nowrap}
#header .smrv-menu-parent .smrv-menu-caption{box-sizing:border-box;font-size:12px!important;line-height:18px!important;margin:10px 0 0!important;padding:12px 10px 4px!important}
#header .smrv-menu-parent .smrv-menu-badge{box-sizing:border-box!important;font-size:11px!important;line-height:16px!important;min-width:60px!important;margin:0!important;padding:4px 8px!important}
#header .smrv-menu-parent :is(.smrv-menu-arrow,.smrv-menu-star){font-size:18px!important;line-height:18px!important;margin-top:0!important;margin-bottom:0!important}

/* 手機與平板維持 Header 間隔，課程按鈕文字及箭頭保留左右內距。 */
#header [data-device="mobile"] [data-row="middle"]>.ct-container{grid-template-columns:minmax(0,1fr) auto;column-gap:12px}
#header [data-device="mobile"] [data-column="start"],#header [data-device="mobile"] [data-column="start"] [data-items]{min-width:0}
#header [data-device="mobile"] .site-branding{min-width:0;width:100%;margin:0!important}
#header [data-device="mobile"] .site-logo-container{min-width:0;max-width:220px;width:100%}
#header [data-device="mobile"] .site-logo-container img{width:100%;height:auto;max-width:220px}
#header [data-device="mobile"] [data-column="end"] [data-items]{gap:8px}
#header [data-device="mobile"] :is(.ct-header-cta,.ct-header-trigger){margin:0!important;flex-shrink:0}
#header [data-device="mobile"] .ct-header-cta .ct-button{font-size:12px;line-height:18px;letter-spacing:0;white-space:nowrap;min-height:40px;padding:8px 10px;gap:6px}
#header [data-device="mobile"] .ct-header-cta .ct-icon{width:16px;height:16px;flex-shrink:0}
#header [data-device="mobile"] .ct-header-trigger{width:40px;min-width:40px;height:44px;justify-content:center;padding:0}
#offcanvas .smrv-menu-parent .sub-menu>.menu-item>a{box-sizing:border-box;padding:8px 12px!important;min-height:44px;align-items:center}
#offcanvas .smrv-menu-caption{padding-left:12px;padding-right:12px}

/* 網路字型尚未載入時，Safari 仍使用系統黑體，不落入瀏覽器預設明體。 */
:root{--smrv-font-sans:"Noto Sans TC",-apple-system,BlinkMacSystemFont,"PingFang TC","Microsoft JhengHei",Arial,sans-serif;--theme-font-family:var(--smrv-font-sans);--theme-button-font-family:var(--smrv-font-sans);--theme-form-font-family:var(--smrv-font-sans)}
h1,h2,h3,h4,h5,h6,.wp-block-pullquote,pre,code,samp,kbd{--theme-font-family:var(--smrv-font-sans)}

/* 照片只在固定圓角視窗內放大，說明文字與外框尺寸維持不變。 */
:where(.smab-page,.smen-page) .smrv-photo-frame{display:block;width:100%;border-radius:12px;overflow:hidden;isolation:isolate}
.smrv-page .smrv-gallery-card{border-radius:10px;overflow:hidden}

/* FAQ 與共用 CTA 之間只保留一組間距，避免主題容器與段落留白疊加。 */
body.page:has(#main :is(.smls-faq,.smrv-faq)) #main>.ct-container-full{padding-bottom:0}
#main .smrv-page>section:last-child:has(:is(.smls-faq,.smrv-faq)){padding-bottom:24px}
body.page:has(#main :is(.smls-faq,.smrv-faq)) .smrv-footer-cta{margin-top:24px}
@media(max-width:767px){
 #main .smrv-page>section:last-child:has(:is(.smls-faq,.smrv-faq)){padding-bottom:16px}
 body.page:has(#main :is(.smls-faq,.smrv-faq)) .smrv-footer-cta{margin-top:16px}
}
