
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700&family=Noto+Serif+TC:wght@400;500;600;700;800&display=swap');
:root{--paper:#fff9ef;--ink:#183d56;--blue:#075fae;--orange:#f58b24;--green:#698b52;--butter:#f8e7bb;--sky:#e9f2f7;--line:#deded0;--muted:#526672}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px;scrollbar-gutter:stable;scrollbar-color:#a6b7ba var(--paper);scrollbar-width:thin}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.8 'Noto Sans TC',sans-serif}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button:hover,a:hover{color:var(--blue)}button:active,.button:active{transform:translateY(1px)}h1,h2,h3,p{margin:0}h1,h2,.serif{font-family:'Noto Serif TC',serif}h1{font-size:clamp(44px,4.65vw,68px);font-weight:700;line-height:1.5;letter-spacing:.035em}h2{font-size:38px;line-height:1.65;font-weight:700}h3{font-size:21px;font-weight:600;line-height:1.65}p{color:var(--muted)}.wrap{width:min(1180px,calc(100% - 80px));margin:auto}.eyebrow{font-size:13px;letter-spacing:.16em;color:var(--blue);font-weight:600;display:flex;align-items:center;gap:12px;margin-bottom:18px}.eyebrow:before{content:'';width:25px;height:2px;background:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:13px 24px;background:var(--blue);color:#fff;border:1px solid var(--blue);border-radius:50px;font-size:15px;font-weight:500;min-height:48px;transition:background .15s}.button:hover{color:white;background:#184d79}.button.light{background:transparent;color:var(--ink);border-color:#b6c7cd}.button.light:hover{background:white}.textlink{display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid var(--blue);padding:6px 0;color:var(--blue);font-size:15px}.top-note{font-size:12px;text-align:center;background:#e9f2f7;color:#526672;padding:5px 15px;letter-spacing:.08em}.masthead{position:sticky;top:0;z-index:30;background:#fff9eff5;backdrop-filter:blur(12px);border-bottom:1px solid #deded080}.head-inner{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px}.brand img{width:76px;height:76px;object-fit:contain;background:transparent;border-radius:8px}.brand-name{display:block;font-family:'Noto Serif TC',serif;font-weight:700;letter-spacing:.16em;font-size:23px}.brand-sub{font-size:11px;letter-spacing:.12em;color:var(--muted)}.desktop-nav{display:flex;gap:28px;font-size:14px;align-items:center}.desktop-nav .visit{padding:9px 19px;border:1px solid var(--ink);border-radius:28px}.mobile-menu,.mobile-quick,.mobile-bottom{display:none}.hero{position:relative;overflow:hidden;padding:63px 0 24px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center}.hero h1 em{font-style:normal;color:var(--blue);position:relative;white-space:nowrap}.hero h1 em:after{content:'';height:9px;position:absolute;bottom:5px;left:0;right:0;background:var(--butter);z-index:-1;border-radius:50%}.hero-sub{margin:22px 0 28px;max-width:430px;font-size:16px;line-height:2}.hero-actions{display:flex;gap:15px;align-items:center}.hero-art{position:relative;padding-top:10px}.hero-art svg{width:100%;height:auto;display:block}.illustration-note{font-size:10px;text-align:right;color:#687d86;letter-spacing:.06em}.hero-sign{font-family:'Noto Serif TC',serif;color:var(--green);font-size:17px;letter-spacing:.13em;position:absolute;top:20px;right:16px;transform:rotate(7deg)}.hero-under{display:flex;justify-content:space-between;align-items:center;margin-top:34px;padding-top:19px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);gap:20px}.hero-under strong{font-weight:500;color:var(--ink)}.trustline{display:flex;gap:26px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:8px}.section{padding:92px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.section-head p{max-width:330px;font-size:15px}.about{padding-top:80px}.about-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:80px;align-items:center}.portrait-card{position:relative;background:var(--sky);border-radius:48% 48% 8px 8px;padding:30px 35px 10px;transform:rotate(-2deg)}.portrait-card svg{width:100%;height:auto}.portrait-caption{position:absolute;bottom:20px;left:15px;background:#fffdf7;padding:12px 25px;transform:rotate(2deg);border:1px solid var(--line);font-size:14px;box-shadow:3px 4px 0 #183d5608}.portrait-caption strong{display:block;font-family:'Noto Serif TC',serif;font-size:21px;color:var(--ink)}.about-copy h2{margin-bottom:20px}.about-copy>p{font-size:15px;line-height:2.1}.pharmacist-name{font-size:25px;margin-bottom:18px;font-family:'Noto Serif TC',serif}.pharmacist-name span{font-family:'Noto Sans TC',sans-serif;font-size:12px;color:var(--muted);padding-left:13px}.about-themes{display:flex;gap:20px;margin:24px 0;font-size:13px;color:var(--green)}.about-source{font-size:11px!important;color:#657984!important;margin-top:16px}.review-hint{display:inline-block;font-size:11px;color:#667b81;border-left:2px solid #e1b16a;padding-left:10px;margin-top:18px}.services{background:#f2f1e7;position:relative}.services-grid{display:grid;grid-template-columns:0.82fr 1.18fr;gap:85px}.service-intro svg{width:100%;max-width:310px;margin-top:25px}.service-intro p{font-size:14px;margin-top:16px;max-width:285px}.service-list{border-top:1px solid #b5c5c7}.service-list details{border-bottom:1px solid #b5c5c7}.service-list summary{display:flex;align-items:center;gap:20px;cursor:pointer;list-style:none;padding:24px 0;font-size:20px;font-weight:500}.service-list summary::-webkit-details-marker{display:none}.service-list summary .service-icon{width:45px;height:45px;flex:none}.service-list summary .plus{margin-left:auto;font-size:25px;font-weight:400;color:var(--blue)}.service-list details[open] .plus{transform:rotate(45deg)}.service-list details p{font-size:14px;padding:0 38px 24px 65px;line-height:2}.service-note{font-size:12px;margin-top:20px}.media .section-head{align-items:center}.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:150px 1fr 52px;gap:35px;padding:32px 0;border-bottom:1px solid var(--line);align-items:center}.news-meta{font-size:12px;line-height:2;color:var(--muted)}.news-meta strong{font-weight:500;color:var(--blue);display:block;font-size:14px}.news-item h3{font-family:'Noto Serif TC',serif;font-size:24px;margin-bottom:10px}.news-item p{font-size:14px;max-width:720px}.news-arrow{width:42px;height:42px;border:1px solid #adc2cb;border-radius:50%;display:grid;place-content:center}.news-item:hover h3{color:var(--blue)}.news-note{font-size:11px;margin-top:15px}.community{background:#f8e7bb80;padding:56px 0}.community-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}.community p{font-size:15px;margin:20px 0 25px;max-width:500px}.community svg{width:100%;height:auto}.community-label{font-size:12px;color:#735a2d;border-bottom:1px solid #baaa7b;display:inline-block;padding:4px 0;margin-top:5px}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.visit-title{font-size:38px}.address{font-size:20px;color:var(--ink);margin:24px 0 14px}.phone{font-size:30px;letter-spacing:.05em;color:var(--blue);font-family:'Noto Serif TC',serif;margin-bottom:24px}.hours{margin-top:12px;border-top:1px solid var(--line)}.hours-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:15px 0;font-size:15px}.hours-row strong{font-weight:500;font-variant-numeric:tabular-nums}.holiday-note{font-size:12px;margin:15px 0 26px}.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.copy-button{font-size:12px;color:var(--muted);border:none;background:transparent;padding:8px 0;margin-left:15px;border-bottom:1px dashed #8da3aa}.visit-postcard{background:var(--sky);padding:35px;position:relative;border-radius:4px;align-self:center;border:1px solid #d3e1e6;transform:rotate(2deg)}.visit-postcard:before{content:'';position:absolute;top:-12px;left:calc(50% - 50px);height:25px;width:100px;background:#e9d09ca0;transform:rotate(-4deg)}.visit-postcard svg{width:100%;height:auto}.postcard-note{font-family:'Noto Serif TC',serif;text-align:center;line-height:1.8;font-size:22px;margin-top:15px}.postcard-note span{display:block;font-family:'Noto Sans TC',sans-serif;font-size:12px;letter-spacing:.13em;margin-top:8px}.footer{border-top:1px solid var(--line);padding:32px 0 28px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-brand{display:flex;align-items:center;gap:15px}.footer-brand img{width:65px;height:65px;object-fit:contain;background:transparent;border-radius:5px}.footer-brand p{font-size:12px}.footer-brand strong{display:block;font-size:16px;font-weight:500;color:var(--ink)}.footer-end{font-size:11px;color:var(--muted);text-align:right}.footer-review{display:block;font-size:11px;margin-top:15px;color:#687e89}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:80;padding:12px 24px;background:var(--ink);color:white;border-radius:12px;font-size:14px;box-shadow:0 8px 30px #183d561c}.toast[hidden]{display:none}.skip{position:fixed;top:-100px;left:15px;background:white;padding:12px;z-index:90}.skip:focus{top:10px}.handline{width:80px;height:11px;display:block;margin-top:12px}.mobile-only{display:none}svg text{font-family:'Noto Sans TC',sans-serif}::selection{background:var(--butter);color:var(--ink)}
@media(max-width:1020px){.desktop-nav{gap:15px}.wrap{width:calc(100% - 48px)}.about-grid{gap:45px}.services-grid{gap:40px}.visit-grid{gap:45px}h1{font-size:48px}.hero-grid{gap:0}.hero-actions{gap:10px}.button{padding:12px 19px}.brand-sub{display:none}}
@media(max-width:720px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.top-note{font-size:10px;padding:4px 8px}.head-inner{height:74px;gap:10px}.brand img{width:53px;height:53px}.brand{gap:9px}.brand-name{font-size:19px;letter-spacing:.12em}.brand-sub{display:block;font-size:9px;letter-spacing:.05em}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;list-style:none;border:1px solid #bdc9ca;border-radius:50%;width:42px;height:42px;display:grid;place-content:center;line-height:1.3;font-size:20px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;top:74px;left:0;right:0;padding:15px 20px 24px;background:var(--paper);box-shadow:0 12px 14px #183d5610;border-bottom:1px solid var(--line)}.mobile-menu nav a{display:block;padding:12px 6px;border-bottom:1px solid var(--line);font-size:15px}.hero{padding:25px 0 20px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:4px}.hero .eyebrow{font-size:10px;margin-bottom:12px;letter-spacing:.09em}.hero h1{font-size:36px;line-height:1.5;letter-spacing:.01em}.hero-sub{font-size:14px;line-height:1.9;margin:17px 0 20px;max-width:none}.hero-sub br{display:none}.hero-actions .button{font-size:13px;min-height:45px;padding:10px 18px;gap:16px}.hero-art{margin:0 -4px;max-width:440px;align-self:center;width:100%;padding:0}.hero-sign{font-size:12px;right:10px;top:13px}.illustration-note{font-size:9px;line-height:1.5;padding:0 5px}.mobile-quick{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px 0 0;margin-top:16px;border-top:1px solid var(--line);align-items:center;font-size:12px}.mobile-quick strong{color:var(--ink);display:block;font-weight:500}.mobile-quick .button{padding:8px 17px;min-height:42px;font-size:12px}.hero-under{margin-top:15px;padding-top:13px;align-items:flex-start}.trustline{flex-wrap:wrap;gap:7px 15px;font-size:10px}.hero-under>.place{display:none}.section{padding:56px 0}h2,.visit-title{font-size:28px;line-height:1.65}.eyebrow{font-size:11px;margin-bottom:13px}.about-grid{display:flex;flex-direction:column;gap:30px}.portrait-card{width:82%;max-width:330px;padding:20px 25px 8px;align-self:flex-start;margin-left:5px}.portrait-caption{font-size:11px;padding:8px 15px;left:auto;right:-30px;bottom:18px}.portrait-caption strong{font-size:18px}.about-copy h2{margin-bottom:18px}.about-copy>p{font-size:14px}.pharmacist-name{font-size:23px}.pharmacist-name span{font-size:11px}.about-themes{gap:17px;margin:19px 0;font-size:12px}.services-grid{display:block}.service-intro{position:relative}.service-intro svg{position:absolute;right:0;top:-10px;width:106px;margin:0;opacity:.9}.service-intro h2{padding-right:90px}.service-intro p{font-size:13px;margin-top:16px;max-width:100%}.service-list{margin-top:24px}.service-list summary{font-size:17px;padding:17px 0;gap:14px}.service-list summary .service-icon{width:36px;height:36px}.service-list details p{font-size:13px;padding:0 12px 20px 50px}.section-head{display:block;margin-bottom:24px}.section-head p{font-size:13px;margin-top:15px}.news-item{grid-template-columns:1fr 30px;gap:6px 12px;padding:24px 0}.news-meta{grid-column:1/-1;display:flex;gap:12px;font-size:10px;align-items:center;margin-bottom:6px}.news-meta strong{font-size:11px}.news-item h3{font-size:21px;line-height:1.7}.news-item p{font-size:13px;line-height:1.9}.news-arrow{width:30px;height:30px}.news-note{font-size:10px}.community{padding:38px 0}.community-grid{display:flex;flex-direction:column;gap:10px}.community h2{font-size:27px}.community p{font-size:14px;margin:16px 0 20px}.community svg{max-width:330px;align-self:center}.visit-grid{display:flex;flex-direction:column;gap:35px}.address{font-size:17px;margin-top:20px}.phone{font-size:27px;margin-bottom:18px}.copy-button{margin-left:0;display:block;margin-top:6px}.hours-row{font-size:14px;padding:13px 0}.visit-postcard{padding:25px;width:94%;align-self:center}.postcard-note{font-size:20px}.footer{padding:24px 0 105px}.footer-inner{align-items:flex-start;gap:15px;flex-direction:column}.footer-brand img{width:55px;height:55px}.footer-end{text-align:left}.mobile-bottom{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;z-index:40;background:#fffdf7f8;border-top:1px solid #d5dcd7;padding:8px 8px max(8px,env(safe-area-inset-bottom));backdrop-filter:blur(10px)}.mobile-bottom a,.mobile-bottom button{border:none;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:46px;font-size:11px;color:var(--ink);padding:0}.mobile-bottom svg{width:21px;height:21px;stroke:var(--blue);fill:none;stroke-width:1.7}.toast{bottom:86px;max-width:calc(100% - 30px);width:max-content;font-size:12px}.mobile-only{display:block}.desktop-only{display:none}section[id]{scroll-margin-top:85px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
@media(forced-colors:active){html{scrollbar-color:auto}.button{border:1px solid ButtonText}}

.desktop-nav a[aria-current=page]{color:var(--blue);border-bottom:2px solid var(--orange)}
.page-intro{padding:40px 0 0}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:22px}.breadcrumb a{color:var(--blue)}.page-intro h1{font-size:43px;line-height:1.65}.page-intro>div>p{max-width:720px;font-size:16px;margin-top:15px}.page-intro+.section{padding-top:48px}.editorial{padding:60px 0;background:#f2f1e7}.editorial.white{background:transparent}.editorial h2{font-size:30px;margin-bottom:25px}.columns{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.columns.two{grid-template-columns:repeat(2,1fr)}.columns article{border-top:2px solid #cfbe92;padding-top:24px}.columns article h3{margin-bottom:12px}.columns p{font-size:15px;line-height:2}.columns svg{width:56px;height:56px;margin-bottom:18px}.timeline{padding:0;list-style:none;margin:30px 0}.timeline li{display:grid;grid-template-columns:110px 1fr;gap:24px;border-top:1px solid var(--line);padding:24px 0}.timeline strong{color:var(--blue)}.timeline p{font-size:15px}.faq{max-width:900px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-weight:500;font-size:18px}.faq p{margin-top:15px;font-size:15px;line-height:2}.related{padding:35px 0;background:var(--sky)}.related .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center}.related p{font-size:14px}.home-overview{padding:65px 0}.home-overview h2{font-size:32px;margin-bottom:25px}.home-overview .columns article{display:flex;flex-direction:column;align-items:start}.home-overview .textlink{margin-top:20px}.source-caption{font-size:12px;margin-top:28px}.news-item[hidden]{display:none}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.filter-bar button{border:1px solid #a6bbc2;border-radius:30px;padding:8px 18px;background:transparent;color:var(--ink);font-size:14px}.filter-bar button[aria-pressed=true]{color:white;background:var(--blue);border-color:var(--blue)}.topic{display:inline-block;font-size:11px;padding:3px 10px;border:1px solid #d3c6a8;border-radius:20px;margin-bottom:10px;color:#725c38}.event-empty{border:1px dashed #bfa878;border-radius:10px;padding:25px;margin-top:25px;background:#fffdf7}.event-empty h3{margin-bottom:10px}.event-empty p{font-size:14px}.note-list{padding-left:22px;color:var(--muted);line-height:2.1}.hours-heading{font:600 18px 'Noto Sans TC',sans-serif;margin:20px 0 10px}.page-number{font-size:12px;color:var(--muted);margin-top:18px}.mobile-menu a[aria-current=page]{color:var(--blue);font-weight:700}.site-map{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;margin-top:25px}.reading{max-width:850px}.reading p{margin:16px 0;font-size:16px;line-height:2.1}.reading h2{margin-top:36px}.reading h3{margin-top:28px}.reading .source-caption{font-size:12px}
@media(max-width:720px){.page-intro{padding-top:26px}.page-intro h1{font-size:30px}.page-intro>div>p{font-size:14px}.page-intro+.section{padding-top:30px}.columns,.columns.two{grid-template-columns:1fr;gap:25px}.columns p{font-size:14px}.columns article{padding-top:18px}.editorial{padding:40px 0}.editorial h2{font-size:25px}.related .wrap{display:block}.related .button{margin-top:16px}.timeline li{grid-template-columns:65px 1fr;gap:18px;padding:20px 0}.timeline p{font-size:14px}.faq summary{font-size:16px}.faq p{font-size:14px}.home-overview{padding:40px 0}.home-overview h2{font-size:26px}.news-item{grid-template-columns:1fr 30px}.filter-bar{gap:8px}.filter-bar button{font-size:12px;padding:8px 13px}.reading p{font-size:14px}.site-map{gap:12px 20px}}

@media(max-width:720px){.mobile-bottom{grid-template-columns:repeat(5,1fr)}}
.desktop-nav{gap:18px}.desktop-nav a{white-space:nowrap}

.editorial .columns article p+p{margin-top:14px}.editorial .reading p{margin:16px 0}.reading .note-list{margin:20px 0}.reading strong{font-weight:600;color:var(--ink)}.editorial .columns article .textlink{margin-top:18px}.news-item{transition:background .15s}.news-item:hover{background:#e9f2f733}@media(max-width:720px){.editorial .reading p{line-height:2.05}.reading .note-list{padding-left:22px}}

/* V4 mobile composition: dedicated hierarchy, reading rhythm and task navigation. */
@media(max-width:720px){
 html{scroll-padding-top:92px}body{font-size:16px;line-height:1.85}.wrap{width:calc(100% - 40px)}
 .top-note{display:none}.head-inner{height:76px;gap:18px}.masthead{background:#fff9effa;border-bottom:1px solid #dcded4;backdrop-filter:blur(14px)}
 .brand{gap:10px;min-width:0}.brand img{width:46px;height:46px;border-radius:9px}.brand-name{font-size:20px;letter-spacing:.11em;line-height:1.5}.brand-sub{font-size:10px;line-height:1.6;letter-spacing:.08em;margin-top:2px;color:#526672}
 .mobile-menu summary{width:65px;height:40px;border-radius:10px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:6px;background:#fffdf7;border-color:#b8c7c9}
 .mobile-menu[open] summary{background:var(--ink);border-color:var(--ink);color:white}
 .mobile-menu nav{top:76px;padding:16px 20px 22px;display:grid;grid-template-columns:1fr 1fr;gap:9px;border-radius:0 0 18px 18px;background:#fff9ef;box-shadow:0 15px 25px #183d561c}
 .mobile-menu nav a{border:1px solid #d7dfda;border-radius:9px;padding:13px 12px;font-size:14px;background:#fffdf7;line-height:1.5;min-height:48px}
 .mobile-menu nav a[aria-current=page]{background:var(--sky);border-color:#7eacbd;color:var(--blue)}.mobile-menu nav a:last-child{grid-column:1/-1}
 .hero{padding:24px 0 22px}.hero-grid{display:grid;grid-template-columns:1fr;gap:0}.hero-copy{display:contents}
 .hero .eyebrow{order:0;display:inline-flex;justify-self:start;font-size:11px;letter-spacing:.08em;padding:5px 10px;border-radius:6px;background:var(--sky);margin-bottom:14px}
 .hero .eyebrow:before{width:6px;height:6px;border-radius:50%;background:var(--green)}
 .hero h1{order:1;font-size:clamp(28px,8.4vw,34px);line-height:1.6;letter-spacing:.015em;margin:0;text-wrap:pretty}
 .hero-art{order:2;width:100%;max-width:292px;align-self:center;justify-self:center;margin:2px auto 8px;padding:0}.hero-art svg{width:100%;display:block}.hero-sign{font-size:11px;top:10px;right:0;letter-spacing:.08em}.illustration-note{font-size:9px;text-align:center;letter-spacing:.03em;margin-top:-7px}
 .hero-sub{order:3;margin:9px 0 20px;font-size:15px;line-height:1.9;color:#405b69}.hero-actions{order:4;display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .hero-actions .button{padding:12px 10px;min-height:48px;font-size:13px;gap:10px;border-radius:11px}.hero-actions .button.light{border-color:#a7bec6;background:#fffdf7}
 .mobile-quick{margin-top:22px;padding:16px;border:1px solid #d5dcd5;border-radius:12px;background:#fffdf7;gap:12px;font-size:11px;line-height:1.8}.mobile-quick strong{font-size:13px}.mobile-quick .button{border-radius:8px;padding:9px 12px;font-size:12px}
 .hero-under{border:none;margin-top:13px;padding-top:0}.trustline{width:100%;justify-content:space-between;gap:7px;font-size:10px}.dot{width:5px;height:5px;margin-right:4px}
 .page-intro{padding:24px 0 0}.breadcrumb{font-size:11px;line-height:1.7;margin-bottom:16px;color:#526672}.page-intro h1{font-size:30px;line-height:1.55;font-weight:700;letter-spacing:.02em;text-wrap:pretty}.page-intro>div>p{font-size:15px;line-height:1.9;margin-top:14px;color:#405b69}
 .page-guide{margin-top:22px;border:1px solid #cbd9d8;border-radius:11px;background:#fffdf7;overflow:hidden}.page-guide summary{font-size:13px;font-weight:500;cursor:pointer;list-style:none;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px}.page-guide summary:after{content:'＋';font-size:18px;color:var(--blue)}.page-guide[open] summary:after{content:'−'}.page-guide summary::-webkit-details-marker{display:none}.page-guide ol{list-style:none;padding:0 15px 10px;margin:0}.page-guide li{border-top:1px solid #e0e5de}.page-guide a{display:block;font-size:13px;line-height:1.7;padding:11px 0;color:var(--blue)}
 .page-intro+.section{padding-top:32px}.section{padding:48px 0}.editorial{padding:42px 0}.editorial.white+.editorial.white{border-top:1px solid var(--line)}
 h2,.editorial h2,.home-overview h2,.visit-title{font-size:26px;line-height:1.6;letter-spacing:.015em;font-weight:700;margin-bottom:22px;text-wrap:pretty}h3{font-size:20px;line-height:1.65}.eyebrow{font-size:11px;letter-spacing:.09em;margin-bottom:12px;gap:9px}.eyebrow:before{width:18px}
 p,.reading p,.columns p,.about-copy>p,.service-list details p,.community p,.news-item p,.section-head p{font-size:15px;line-height:1.95;color:#405b69}.reading p{margin:18px 0}.reading h3{margin-top:26px}.columns article p+p{margin-top:14px}.reading .note-list{font-size:15px;line-height:1.95;padding-left:23px}.source-caption,.reading .source-caption,.about-source{font-size:11px!important;line-height:1.8!important;color:#526672!important}
 .columns,.columns.two{display:block}.columns article{padding-top:21px;border-top:2px solid #d9c99f}.columns article+article{margin-top:30px}.columns article h3{margin-bottom:13px}.columns article .textlink{margin-top:15px;font-size:14px}.columns article svg{width:43px;height:43px;margin-bottom:12px}
 .about-grid{gap:0}.about-copy{order:0}.about-copy .eyebrow{display:none}.about-copy h2{font-size:26px;margin-bottom:20px}.pharmacist-name{font-size:25px;display:flex;align-items:baseline;gap:10px;margin-bottom:20px}.pharmacist-name span{font-size:12px;padding:0;letter-spacing:0}.about-themes{padding:15px 0;border-top:1px solid #d9e1da;border-bottom:1px solid #d9e1da;gap:0;justify-content:space-between;margin:23px 0;font-size:12px}.about-themes span+span{border-left:1px solid #cad5cd;padding-left:20px}.review-hint{font-size:11px;line-height:1.8;max-width:100%}
 .portrait-card{order:1;transform:none;width:100%;max-width:none;align-self:stretch;margin:28px 0 0;border-radius:16px;padding:20px 28px 65px}.portrait-card svg{max-width:290px;display:block;margin:auto}.portrait-caption{left:15px;right:15px;bottom:16px;padding:11px 15px;transform:none;box-shadow:none;border-radius:8px;font-size:11px}.portrait-caption strong{font-size:17px;line-height:1.6}
 .services-grid{display:block}.service-intro{display:grid;grid-template-columns:1fr 94px;gap:0 12px;align-items:center}.service-intro>.eyebrow{grid-column:1/-1}.service-intro h2{grid-column:1;padding:0;margin:0;font-size:28px}.service-intro svg{position:static;grid-column:2;grid-row:2;width:94px;margin:0;opacity:1}.service-intro p{grid-column:1/-1;max-width:none;margin-top:18px;font-size:15px}.service-list{margin-top:28px}.service-list summary{gap:12px;font-size:17px;padding:20px 0;line-height:1.6}.service-list summary .service-icon{width:34px;height:34px}.service-list summary .plus{font-size:22px}.service-list details p{padding:0 0 22px;font-size:15px;line-height:2}.service-note{font-size:12px;line-height:1.8;margin-top:18px}
 .timeline{margin:24px 0}.timeline li{grid-template-columns:54px 1fr;gap:16px;padding:22px 0}.timeline strong{font-size:16px}.timeline h3{font-size:18px;margin-bottom:9px}.timeline p{font-size:14px;line-height:1.9}.faq details{padding:21px 0}.faq summary{font-size:17px;line-height:1.7;padding-right:4px}.faq p{font-size:15px;line-height:1.95;margin-top:16px}
 .filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.filter-bar button{padding:9px 13px;border-radius:9px;font-size:12px;min-height:40px}.news-item{padding:25px 0;gap:9px 12px;grid-template-columns:minmax(0,1fr) 30px}.news-meta{margin-bottom:4px;gap:10px;font-size:11px;flex-wrap:wrap}.news-meta strong{font-size:12px}.news-item h3{font-size:22px;line-height:1.6;margin-bottom:13px}.news-item p{font-size:14px;line-height:1.95}.news-arrow{width:30px;height:30px}.news-note,.page-number{font-size:11px;line-height:1.8}.section-head{margin-bottom:28px}.section-head p{margin-top:16px;font-size:15px}
 .related{padding:28px 0}.related h3{font-size:21px}.related p{font-size:14px;line-height:1.9;margin-top:10px}.related .button{width:100%;margin-top:20px;border-radius:10px}
 .visit-grid{gap:30px}.address{font-size:18px;line-height:1.85;margin-top:22px}.phone{font-size:29px;margin:18px 0 24px;letter-spacing:.04em}.copy-button{font-size:12px;padding:5px 0}.hours-row{font-size:15px;padding:17px 0}.hours-row strong{letter-spacing:.03em}.holiday-note{font-size:12px;line-height:1.8}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-actions .button{font-size:13px;padding:12px 8px;gap:7px;border-radius:10px}.visit-postcard{width:100%;padding:25px;transform:none;border-radius:13px;margin-top:8px}.visit-postcard svg{max-width:290px;display:block;margin:auto}.postcard-note{font-size:23px;line-height:1.8}.postcard-note span{font-size:11px}
 .form-actions{gap:12px}.form-actions .textlink{font-size:14px}.app-section{padding:30px 0 45px}.app-section>.wrap>.stack{gap:14px}.form-panel{border-radius:12px;padding:20px 16px}.form-panel input,.form-panel select,.form-panel textarea{font-size:16px;padding:12px;min-height:48px}.form-panel label{font-size:14px;line-height:1.85;margin-top:19px}.form-panel .button{width:100%;border-radius:10px}.form-panel input[type=checkbox]{min-height:20px}.field-help{font-size:12px;line-height:1.85}.order-summary{padding:21px 18px;border-radius:11px}.order-summary h2{font-size:23px!important;line-height:1.7}.order-summary p{font-size:14px;line-height:1.95}.empty-state{padding:25px 20px;margin-top:24px;border:1px solid #d3e2e7;border-radius:12px}.empty-state h2{font-size:24px}.empty-state p{font-size:15px;line-height:1.95}.empty-state .button{width:100%;border-radius:10px;margin-top:12px}
 .catalog{gap:13px;margin-top:24px}.catalog .product-card{border-radius:12px;box-shadow:0 2px 7px #183d5606}.catalog .product-card img,.catalog .image-placeholder{aspect-ratio:1/1}.catalog .product-copy{padding:14px 12px 18px}.catalog .product-copy h2{font-size:18px;line-height:1.65;margin-bottom:9px}.catalog .product-copy p{font-size:12px;line-height:1.8;margin:9px 0}.catalog .product-copy .price{font-size:20px;letter-spacing:-.01em;margin:13px 0 8px}.catalog .product-copy .textlink{font-size:12px;line-height:1.8;gap:4px}.catalog .topic{font-size:10px;padding:2px 7px}.product-detail{gap:25px}.product-detail img{border:1px solid var(--line);border-radius:12px}.product-detail h1{font-size:28px;line-height:1.65}.product-description{font-size:15px;line-height:1.95}.filter-form{gap:10px;flex:1}.filter-form select{max-width:210px;font-size:14px;min-height:44px}.filter-form label{font-size:12px}.pagination{justify-content:space-between;font-size:12px;gap:12px;margin-top:28px}
 .event-card{gap:18px;padding:25px 0}.event-card h2{font-size:23px;line-height:1.65;margin:6px 0 12px}.event-card p{font-size:14px;line-height:1.9}.event-card .topic{margin-bottom:4px}.event-card img,.event-photo{border-radius:12px}.event-card .image-placeholder{aspect-ratio:2/1;border-radius:12px;font-size:26px}
 .cart-table{display:block}.cart-table thead{position:absolute;clip-path:inset(50%);height:1px;width:1px;overflow:hidden}.cart-table tbody{display:block}.cart-table tr{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;border:1px solid var(--line);border-radius:12px;margin-bottom:14px;padding:18px;background:#fffdf7}.cart-table td{display:block;border:none;padding:0;min-width:0}.cart-table td:first-child{grid-column:1/-1;font-size:17px;padding-bottom:15px;border-bottom:1px solid var(--line);margin-bottom:13px}.cart-table td:first-child p{font-size:12px;line-height:1.8;margin-top:5px}.cart-table td:nth-child(2){grid-column:1;grid-row:2;font-size:14px}.cart-table td:nth-child(2):before{content:'單價';display:block;font-size:11px;color:var(--muted);margin-bottom:3px}.cart-table td:nth-child(4){grid-column:2;grid-row:2;text-align:right;font-size:17px;color:var(--blue);font-weight:600}.cart-table td:nth-child(4):before{content:'商品小計';display:block;font-size:11px;font-weight:400;color:var(--muted);margin-bottom:3px}.cart-table td:nth-child(3){grid-column:1/-1;margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:15px}.cart-table td:nth-child(3) label{font-size:12px;line-height:1.7}.table-scroll:has(.cart-table){border:none;overflow:visible}.cart-table input[type=number]{width:80px;min-height:44px;font-size:16px;border-radius:7px;border:1px solid #a6bac1}
 .mobile-bottom{grid-template-columns:repeat(5,minmax(0,1fr));padding:7px 8px max(9px,env(safe-area-inset-bottom));border-top:1px solid #cbd7d4;background:#fffdf8fa;box-shadow:0 -4px 16px #183d5608}.mobile-bottom a,.mobile-bottom button{font-size:10px;line-height:1.5;min-height:49px;gap:4px;border-radius:8px;padding:4px 2px;color:#526672}.mobile-bottom svg{width:21px;height:21px;stroke:#526672;stroke-width:1.65}.mobile-bottom a[aria-current=page]{background:var(--sky);color:var(--blue);font-weight:600}.mobile-bottom a[aria-current=page] svg{stroke:var(--blue);stroke-width:2}
 .footer{padding:28px 0 110px;background:#f5f1e7}.footer-inner{gap:20px}.footer-brand img{width:51px;height:51px}.footer-brand strong{font-size:18px}.footer-brand p{font-size:12px;line-height:1.8}.footer-end{font-size:11px;line-height:1.95}.site-map{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:20px;padding-top:16px;border-top:1px solid #d7dbd0;width:100%}.site-map a{font-size:12px;padding:10px 0;min-height:42px}.footer-review{font-size:10px;line-height:1.8;margin-top:16px}.toast{bottom:86px;font-size:13px;padding:13px 17px;border-radius:10px;max-width:calc(100% - 32px);white-space:normal}
}
@media(max-width:350px){.wrap{width:calc(100% - 32px)}.head-inner{gap:12px}.brand img{width:42px;height:42px}.brand-name{font-size:19px}.mobile-menu summary{width:59px}.hero-actions .button{font-size:12px}.contact-actions{grid-template-columns:1fr}.mobile-quick{padding:13px}.hero-art{max-width:265px}.catalog .product-copy{padding:12px 10px}.catalog .product-copy h2{font-size:16px}}

/* V4.1: keep the two homepage CTA labels on one line. */
.hero-actions .button{white-space:nowrap;flex-wrap:nowrap;min-width:0}.hero-actions .button span{flex-shrink:0}
@media(max-width:720px){.hero-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-actions .button{white-space:nowrap;line-height:1.5}}

/* V4.2: subject-specific medicine illustrations, aligned with section headings. */
.section-heading-art{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading-art h2{margin:0;flex:1;min-width:0}.section-heading-art img{display:block;flex:none;width:120px;height:90px;object-fit:contain}.section-heading-art+.reading>p:first-child{margin-top:0}
@media(max-width:720px){.section-heading-art{gap:14px;margin-bottom:23px;align-items:center}.section-heading-art h2{font-size:25px;line-height:1.65;margin:0}.section-heading-art img{width:80px;height:70px}.section-heading-art+.columns article:first-child{padding-top:18px}}
@media(max-width:350px){.section-heading-art{gap:11px}.section-heading-art img{width:65px;height:60px}.section-heading-art h2{font-size:24px}}

/* V4.3: homepage topic illustrations precede each descriptive heading. */
.topic-title{display:flex;align-items:center;gap:15px;margin-bottom:15px}.topic-title img{display:block;width:76px;height:64px;object-fit:contain;flex:none}.columns article .topic-title h3{margin:0;flex:1;min-width:0}
@media(max-width:720px){.topic-title{gap:12px;margin-bottom:16px}.topic-title img{width:62px;height:55px}.columns article .topic-title h3{font-size:19px;line-height:1.6}}
@media(max-width:350px){.topic-title{gap:10px}.topic-title img{width:54px;height:50px}.columns article .topic-title h3{font-size:18px}}

/* V4.4: sitewide explanatory headings and useful empty-state illustration system. */
.empty-state:before{content:'';display:block;width:100px;height:78px;margin-bottom:14px;background:url('illustrations/medicine-bag.svg') center/contain no-repeat}.empty-state.empty-shop:before{background-image:url('illustrations/healthy-leaves.svg')}.empty-state.empty-community:before{background-image:url('illustrations/yi-lecture.png')}.image-placeholder.illustrated-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px}.image-placeholder.illustrated-placeholder img{width:125px;height:100px;aspect-ratio:auto;object-fit:contain;background:transparent}.image-placeholder.illustrated-placeholder span{font:13px/1.7 'Noto Sans TC',sans-serif;letter-spacing:.06em;color:var(--muted)}.topic-title h2{margin:0!important}.columns article .topic-title{min-height:64px}.section-heading-art .topic-title{margin:0}
@media(max-width:720px){.empty-state:before{width:88px;height:70px;margin-bottom:15px}.image-placeholder.illustrated-placeholder{gap:8px;padding:16px}.image-placeholder.illustrated-placeholder img{width:95px;height:76px}.image-placeholder.illustrated-placeholder span{font-size:11px}.columns article .topic-title{min-height:55px}.form-panel .topic-title{gap:12px}.form-panel .topic-title img{width:58px;height:52px}.form-panel .topic-title h2{font-size:23px!important;line-height:1.65}.admin-shell .columns article .topic-title img{width:60px;height:54px}}
