/* 青嶼工作室｜Coastal Atelier · VEL CMS theme 1.0 */

:root{font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif;font-synthesis:none;--ink:#193e40;--muted:#657c78;--deep:#12383a;--sea:#246f6b;--mint:#89a89b;--paper:#fcfbf7;--cream:#f5f1e7;--mist:#eaf1eb;--line:#dde6dd;--gold:#c39c68;--r:18px;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.65}body[data-theme="sand"],body[data-theme="rose"],body[data-theme="blue"],body[data-theme="dark"],body[data-theme="sage"]{--accent:var(--sea);--bg:var(--paper);--soft:var(--mist)}
::selection{background:#cae0d5;color:#143a39}a{color:var(--sea)}a:hover{color:#b08756}img{max-width:100%;height:auto}button,input,textarea{font:inherit}.wrap{width:min(100% - 68px,1220px);margin-inline:auto}.skip-link{position:absolute;left:12px;top:-100px;padding:10px;background:white;z-index:99}.skip-link:focus{top:12px}
.header{position:relative;z-index:5;background:rgba(252,251,247,.96);border-bottom:1px solid var(--line)}.header-inner{min-height:94px;display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--deep);flex-shrink:0}.brand-mark{width:43px;height:43px;display:grid;place-content:center;gap:4px;background:var(--deep);border-radius:50%;transform:rotate(-19deg);overflow:hidden}.brand-mark span{display:block;width:27px;height:4px;background:#d1dfd4;border-radius:50%;transform:skewX(-18deg)}.brand-mark span:nth-child(2){width:22px;opacity:.8}.brand-mark span:nth-child(3){width:17px;opacity:.6}.brand-text{display:grid;gap:0}.brand-text strong{font-size:21px;font-weight:650;letter-spacing:.12em}.brand-text small{font-size:9px;letter-spacing:.24em;color:var(--muted);font-weight:650}.brand>img{max-width:36px;max-height:36px;object-fit:contain;border-radius:50%}.header nav{display:flex;align-items:center;gap:clamp(12px,2.5vw,36px);flex-wrap:wrap}.header nav a{font-size:13px;color:var(--deep);font-weight:600;text-decoration:none;white-space:nowrap;letter-spacing:.04em;transition:color .2s}.header nav a:hover{color:var(--gold)}.header-cta{border:1px solid var(--deep);text-decoration:none;color:var(--deep);padding:12px 20px;font-size:13px;font-weight:650;border-radius:100px;white-space:nowrap;transition:.2s}.header-cta:hover{background:var(--deep);color:white}
main.wrap{padding-top:72px;padding-bottom:110px;min-height:62vh}.columns{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:76px}.maincol{min-width:0}.single .maincol{max-width:1100px;margin-inline:auto}.single.landing{width:100%;max-width:none;padding:0;min-height:0}.single.landing .maincol{max-width:none}.eyebrow{display:block;color:var(--sea);font-size:11px;font-weight:750;letter-spacing:.24em;margin-bottom:18px}.content-heading{padding-bottom:26px}.content-heading h1,.journal-heading h1{font-size:clamp(39px,5.2vw,72px);letter-spacing:-.035em;line-height:1.22;font-weight:550;margin:0 0 22px;color:var(--deep)}.content-heading .lead,.journal-heading .lead{max-width:660px;font-size:17px;line-height:1.95;color:var(--muted)}h1,h2,h3{line-height:1.4}h2{font-size:clamp(25px,3vw,37px);font-weight:600;letter-spacing:-.025em}h3{font-size:19px}p{line-height:1.85}.lead{font-size:17px;color:var(--muted);line-height:1.9}.hero{width:100%;max-height:570px;object-fit:cover;border-radius:12px;display:block;margin:22px 0 38px}.prose{color:#3b5754;font-size:16px;line-height:2.05;overflow-wrap:anywhere}.prose h2{padding:12px 0;margin:42px 0 18px;color:var(--deep);border-bottom:1px solid var(--line)}.prose h3{color:var(--deep);margin:26px 0 12px}.prose p{margin:18px 0}.prose img{max-width:100%;height:auto;border-radius:14px}.prose table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.prose th,.prose td{border-bottom:1px solid var(--line);padding:12px 15px;text-align:left}.prose blockquote{margin:28px 0;padding:22px 30px;background:var(--mist);border-left:3px solid var(--sea)}.prose a{text-underline-offset:4px}.prose ul,.prose ol{padding-left:1.5em}.article-deco{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 0;font-size:10px;color:var(--muted);letter-spacing:.17em}.article-prose{padding-top:22px}.article-end{border-top:1px solid var(--line);padding-top:24px;margin-top:60px;display:flex;justify-content:space-between;gap:20px;align-items:center}.article-end .meta{color:var(--muted);font-size:12px}.text-link{font-size:13px;text-decoration:none;font-weight:650}
.sidebar{padding-top:9px}.sidebar-label{letter-spacing:.16em;color:var(--sea);font-size:10px;font-weight:750;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:18px}.sidebar section{padding:20px 0;border-bottom:1px solid var(--line)}.sidebar h3{font-size:16px;margin:0 0 14px;letter-spacing:.02em}.sidebar p{font-size:13px;color:var(--muted)}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar li{padding:11px 0;border-bottom:1px solid #e9eee8}.sidebar li:last-child{border:0}.sidebar a{font-size:13px;text-decoration:none;color:var(--ink)}.sidebar a:hover{color:var(--sea)}.sidebar-banner{background:var(--deep);padding:32px 24px;margin-top:28px;color:#fff;border-radius:12px}.sidebar-banner>span{font-size:9px;color:#d1e6d8;letter-spacing:.15em}.sidebar-banner p{color:#fff;font-size:21px;font-weight:450;line-height:1.65;margin:19px 0}.sidebar-banner a{color:#e0ebdd;border-bottom:1px solid #92aea7;padding-bottom:5px}
.journal-heading{padding-bottom:25px}.journal-heading h1{position:relative}.heading-spark{color:var(--gold);font-size:.55em;margin-left:20px;vertical-align:top}.journal-rule{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:22px;margin-top:45px;color:var(--muted);font-size:10px;letter-spacing:.17em}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:27px;margin-top:22px}.card{display:block;text-decoration:none;background:#fff;border:1px solid #e9ebe5;padding:15px 15px 24px;color:var(--ink);border-radius:12px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #12383a12}.card img{width:100%;height:240px;object-fit:cover;border-radius:6px}.card small{display:block;margin:20px 8px 0;color:var(--sea);font-size:11px;letter-spacing:.14em}.card h2{font-size:22px;font-weight:600;margin:8px 8px}.card p{font-size:14px;color:var(--muted);margin:8px}.pagination{margin-top:36px;display:flex;justify-content:center;align-items:center;gap:18px}.pagination a{border:1px solid var(--line);padding:10px 18px;border-radius:99px;text-decoration:none}
.button,.vel-btn{display:inline-flex;gap:16px;align-items:center;background:var(--deep);color:#fff!important;padding:14px 23px;border:1px solid var(--deep);border-radius:100px;text-decoration:none;font-size:13px;font-weight:650;letter-spacing:.03em;transition:transform .2s,background .2s}.button:hover,.vel-btn:hover{background:var(--sea);transform:translateY(-2px)}
.footer{background:var(--deep);color:#f1f4ed;padding-top:65px}.footer-top{display:grid;grid-template-columns:1.4fr .6fr;gap:50px;padding-bottom:68px}.footer-kicker{color:#bad1c5;font-size:11px;letter-spacing:.22em}.footer h2{font-size:clamp(35px,4.5vw,65px);line-height:1.25;letter-spacing:-.04em;font-weight:450;margin:25px 0}.footer h2 em{font-style:normal;color:#bbd2c4}.footer p{color:#b6cbc3;font-size:14px}.footer-right{display:flex;flex-direction:column;align-items:flex-start;gap:13px;padding-left:50px}.footer-right a{color:#e9f3ec;text-decoration:none;font-size:13px}.footer-right a:hover{color:#e1bd88}.footer-bottom{padding:21px 0;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:20px;color:#a5c0b5;font-size:11px;letter-spacing:.09em}
/* VEL CMS 模組輸出對應樣式 */
.vel-module-page{display:grid;gap:clamp(60px,8vw,110px)}.vel-block{min-width:0}.vel-block h2{margin:0 0 22px;color:var(--deep)}.vel-block>h2::before{content:'✳';display:inline-block;color:var(--gold);font-size:18px;margin-right:13px;vertical-align:middle}.vel-block>p{font-size:16px;color:var(--muted)}.vel-hero{position:relative;background:var(--deep);border-radius:16px;min-height:520px;display:grid;align-items:center;overflow:hidden;isolation:isolate;color:white}.vel-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 84% 25%,#86b2a342,transparent 36%),linear-gradient(113deg,#12383af2 8%,#12383ac2 52%,#12383a48);z-index:-1}.vel-hero::after{content:'✳';position:absolute;font-size:420px;right:-90px;bottom:-220px;font-weight:200;line-height:1;color:#e0f1e710;pointer-events:none}.vel-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.47;z-index:-2}.vel-hero-text{position:relative;padding:clamp(45px,8vw,92px);max-width:820px}.vel-hero h1{color:#fff;font-size:clamp(40px,5.3vw,72px);line-height:1.26;letter-spacing:-.035em;font-weight:500;margin-bottom:23px}.vel-hero p{color:#e4eee6;max-width:530px;line-height:2;font-size:17px;margin:0 0 24px}.vel-hero .vel-btn{background:#f4efe4;color:var(--deep)!important;border-color:#f4efe4}.vel-hero .vel-btn:hover{background:white}.vel-image-text{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,75px);align-items:center}.vel-image-text.reverse>img{order:2}.vel-image-text>img{display:block;width:100%;height:440px;object-fit:cover;border-radius:9px}.vel-image-text>div{padding:20px 0}.vel-image-text p{font-size:16px;color:var(--muted);line-height:2.05}.vel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,225px),1fr));gap:20px}.vel-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;text-decoration:none;color:var(--ink);margin:0;transition:box-shadow .2s,transform .2s}.vel-card:hover{box-shadow:0 12px 28px #183b3512;transform:translateY(-3px)}.vel-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;margin-bottom:20px}.vel-card h3{font-size:19px;margin:10px 0;color:var(--deep)}.vel-card p{color:var(--muted);font-size:14px}.vel-card a{font-size:13px;color:var(--sea);font-weight:650}.vel-stat{text-align:center;padding:40px 18px;background:var(--mist);border-radius:12px}.vel-stat strong{display:block;font-size:clamp(27px,4vw,46px);font-weight:550;color:var(--sea)}.vel-stat p{margin:6px 0;color:var(--muted)}.vel-faq details{border-bottom:1px solid var(--line);padding:24px 7px}.vel-faq summary{cursor:pointer;font-size:17px;font-weight:650;color:var(--deep)}.vel-faq summary::marker{color:var(--sea)}.vel-faq details p{color:var(--muted);padding:0 12px}.vel-cta,.vel-contact{text-align:center;background:var(--cream);padding:clamp(50px,7vw,95px) 25px;border-radius:12px;position:relative;overflow:hidden}.vel-cta::after,.vel-contact::after{content:'✳';position:absolute;right:3%;bottom:-60px;font-size:220px;line-height:1;color:#d2ddd1;opacity:.55;pointer-events:none}.vel-cta h2,.vel-contact h2{font-size:clamp(31px,4vw,50px);margin:0 0 18px;position:relative;z-index:1}.vel-cta p,.vel-contact p{max-width:630px;margin:0 auto 22px;color:var(--muted);position:relative;z-index:1}.vel-cta a,.vel-contact a{position:relative;z-index:1}.vel-spacer{height:30px}.vel-text .prose{max-width:900px}.vel-text img{max-width:100%}.not-found{text-align:center;padding:50px 10px 90px}.big-404{font-size:clamp(90px,15vw,175px);line-height:1;color:#bbd5c6;letter-spacing:-.08em}.big-404 span{color:var(--gold);font-size:.45em}.not-found h1{font-size:36px}.not-found p{color:var(--muted)}
@media(min-width:1000px){.single:not(.landing) .vel-hero{min-height:580px}.single:not(.landing) .qingyu-modules{width:100%}}
@media(max-width:1050px){.header-inner{gap:16px}.header nav{gap:14px}.header-cta{display:none}.columns{grid-template-columns:minmax(0,1fr) 240px;gap:35px}}
@media(max-width:760px){.wrap{width:min(100% - 34px,1220px)}.header-inner{min-height:78px;flex-wrap:wrap;padding-block:16px}.brand-text strong{font-size:18px}.header nav{width:100%;order:3;overflow-x:auto;flex-wrap:nowrap;gap:22px;padding:5px 0}.header nav a{font-size:12px}.columns{display:block}.sidebar{margin-top:70px}.footer-top{grid-template-columns:1fr;gap:35px}.footer-right{padding:0}.footer-bottom{flex-direction:column;gap:7px}.vel-image-text{grid-template-columns:1fr}.vel-image-text.reverse>img{order:0}.vel-image-text>img{height:350px}.vel-hero{min-height:450px}.vel-hero-text{padding:45px 30px}.vel-module-page{gap:60px}.cards{grid-template-columns:1fr}.card img{height:220px}main.wrap{padding-top:35px;padding-bottom:70px}}
@media(max-width:420px){.vel-grid{grid-template-columns:1fr}.vel-hero h1{font-size:36px}.vel-hero p{font-size:15px}.vel-hero-text{padding:34px 25px}.content-heading h1,.journal-heading h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
