@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700&family=Noto+Serif+TC:wght@400;500;600&display=swap');
:root{--ink:#19221f;--muted:#69716b;--paper:#f8f8f5;--line:#dce0d9;--accent:#b79a6d;--dark:#17201d;--serif:'Noto Serif TC',serif;--sans:'Noto Sans TC',sans}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.75}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.35}h2{font-family:var(--serif);font-weight:500;letter-spacing:.04em;font-size:clamp(2rem,3vw,3rem)}h3{font-family:var(--serif);font-weight:500}.container{width:min(100% - 72px,1320px);margin-inline:auto}.section-pad{padding:clamp(84px,9vw,138px) 0}.eyebrow{font-size:.79rem;letter-spacing:.22em;font-weight:600;color:#8a7657;margin-bottom:24px}.eyebrow.light{color:#e4d3b8}.skip-link{position:absolute;z-index:100;top:-100px;left:12px;background:#fff;padding:8px}.skip-link:focus{top:12px}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.site-header{height:86px;background:#fbfbf8;position:relative;z-index:10}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1}.brand-mark{font-family:var(--serif);font-size:1.74rem;letter-spacing:.18em;font-weight:600}.brand-point{color:var(--accent);margin-left:-.08em}.brand-sub{font-size:.58rem;letter-spacing:.28em;margin-top:8px;color:#7b827b}.main-nav{display:flex;align-items:center;gap:clamp(24px,3.5vw,56px)}.main-nav a{font-size:.9rem;letter-spacing:.1em;transition:color .2s}.main-nav a:hover{color:#9a7c51}.menu-toggle{display:none;background:transparent;border:0;padding:10px}.menu-toggle span{display:block;width:25px;height:1px;background:var(--ink);margin:6px 0}
.hero{height:min(760px,calc(100svh - 86px));min-height:570px;position:relative;background:#49544c;color:#fff;overflow:hidden}.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;transform:scale(1.04);transition:opacity 1s ease,transform 7s ease}.hero-slide.is-active{opacity:1;transform:scale(1)}.hero-shade{background:linear-gradient(90deg,rgba(12,20,16,.68),rgba(12,20,16,.2) 65%,rgba(12,20,16,.06)),linear-gradient(0deg,rgba(12,20,16,.3),transparent 34%)}.hero-content{position:relative;z-index:1;padding-top:clamp(140px,20vh,210px)}.hero-content h1{font-family:var(--serif);font-weight:500;font-size:clamp(2.8rem,5.4vw,5.6rem);letter-spacing:.08em;margin:0 0 26px;line-height:1.45}.hero-lead{font-size:1.06rem;letter-spacing:.08em;color:#f4f4ed;margin-bottom:36px}.hero-link{display:inline-flex;align-items:center;gap:52px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.65);font-size:.9rem;letter-spacing:.15em}.hero-link span{font-size:1.4rem}.hero-controls{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:15px;font-size:.8rem;letter-spacing:.12em}.progress-track{width:120px;height:1px;background:rgba(255,255,255,.45)}.progress-fill{display:block;width:33.333%;height:1px;background:#fff;transition:transform .4s}.slide-total{opacity:.7}.slide-button{border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;margin-left:10px;transition:background .2s}.slide-button:hover{background:rgba(255,255,255,.2)}
.intro{background:#f8f8f5}.intro-grid{display:grid;grid-template-columns:1fr .8fr;gap:12%;align-items:end}.intro h2{margin-bottom:0}.intro-copy{max-width:560px;font-size:1.1rem;line-height:2.1;color:#4b554e}.intro-copy p{margin-bottom:0}.intro-copy .intro-note,.portfolio-note{font-size:.82rem;color:#828a82;margin-top:22px;line-height:1.7}
.portfolio{background:#e9ece8}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:48px}.section-head h2{margin-bottom:0}.section-head>p{color:var(--muted);max-width:350px;margin-bottom:5px}.project-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.project-card{position:relative;overflow:hidden;background:#c4cbc3;aspect-ratio:4/5}.project-card img{height:100%;object-fit:cover;transition:transform .65s}.project-card:hover img{transform:scale(1.035)}.project-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.56))}.project-caption{position:absolute;bottom:28px;left:28px;right:20px;z-index:1;color:#fff}.project-caption span{font-size:.78rem;letter-spacing:.15em;color:#e8e4d9}.project-caption h3{font-size:1.45rem;margin:7px 0 0}.portfolio-note{margin-bottom:0}
.knowledge{background:#fbfbf8}.knowledge-head{margin-bottom:50px}.article-list{border-top:1px solid var(--line)}.article-row{display:grid;grid-template-columns:60px 1fr 55px;gap:22px;padding:32px 5px;border-bottom:1px solid var(--line);align-items:start;transition:padding .2s,background .2s}.article-row:hover{padding-left:18px;background:#f2f3ef}.article-number{font-family:var(--serif);color:#aa956f;font-size:1.1rem}.article-main{display:flex;flex-direction:column;align-items:start}.article-category{font-size:.76rem;letter-spacing:.14em;color:#9b805e;margin-bottom:7px}.article-main strong{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.55rem);font-weight:500;letter-spacing:.03em;line-height:1.5}.article-excerpt{font-size:.92rem;color:var(--muted);margin-top:10px}.article-arrow{font-size:1.5rem;justify-self:end;line-height:1.3}.text-link{display:inline-flex;gap:34px;border-bottom:1px solid var(--ink);margin-top:36px;padding-bottom:8px;font-size:.9rem;letter-spacing:.08em}
.contact{background:var(--dark);color:#f9f9f5}.contact-grid{display:grid;grid-template-columns:1.15fr .65fr;gap:10%;align-items:center}.contact h2{font-size:clamp(2rem,3.7vw,3.6rem);margin-bottom:24px}.contact p{color:#c3cac4}.contact-actions{display:grid;gap:14px}.cta{min-height:64px;padding:15px 24px;display:flex;justify-content:space-between;align-items:center;font-weight:600;letter-spacing:.06em;transition:transform .2s,background .2s}.cta:hover{transform:translateY(-2px)}.cta span{font-size:1.5rem;font-weight:400}.cta-light{background:#e9e1d3;color:var(--dark)}.cta-outline{border:1px solid #afbbaf;color:#fff}.contact-actions p{font-size:.77rem;margin:5px 0 0;color:#a2aaa3}
.footer{background:#111916;color:#d5dbd4;padding:62px 0 28px}.footer-grid{display:flex;justify-content:space-between;gap:40px}.footer-brand .brand-mark{color:#f3f4ed}.footer-grid p{font-size:.82rem;margin-top:22px;color:#9da69c}.footer-links{display:flex;gap:30px;font-size:.85rem;align-items:start}.footer-links a:hover,.footer-bottom a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #364038;padding-top:24px;margin-top:52px;color:#8f9a90;font-size:.78rem}
.subhero{background:#24302a;color:#fff;padding:100px 0 90px}.subhero h1{font-family:var(--serif);font-size:clamp(2.5rem,5vw,4.8rem);font-weight:500;margin:0}.subhero p:last-child{color:#d0d7cf;max-width:620px;margin:24px 0 0}.knowledge-content{background:#fbfbf8;padding:85px 0}.knowledge-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:12%}.knowledge-article{scroll-margin-top:28px;padding:50px 0;border-bottom:1px solid var(--line)}.knowledge-article:first-child{padding-top:0}.knowledge-article h2{font-size:clamp(1.65rem,2.6vw,2.35rem)}.knowledge-article h3{font-size:1.16rem;font-family:var(--sans);font-weight:600;margin:32px 0 10px}.knowledge-article p,.knowledge-article li{color:#49534c;line-height:1.95}.knowledge-article ul{padding-left:1.3em}.knowledge-article .answer{font-weight:600;color:var(--ink);font-size:1.1rem}.toc{position:sticky;top:28px;align-self:start;border-top:1px solid var(--line);padding-top:24px}.toc p{font-size:.75rem;letter-spacing:.16em;color:#9b805e}.toc a{display:block;padding:9px 0;font-size:.88rem;border-bottom:1px solid var(--line)}
@media(max-width:900px){.container{width:min(100% - 48px,1320px)}.site-header{height:72px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fbfbf8;padding:20px 24px 28px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 14px 20px rgba(0,0,0,.08)}.main-nav.is-open{display:flex}.main-nav a{padding:14px 0;border-bottom:1px solid var(--line)}.hero{height:690px;min-height:0}.hero-content{padding-top:155px}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:36px}.project-grid{gap:12px}.project-caption{left:18px;bottom:20px}.project-caption h3{font-size:1.16rem}.knowledge-layout{grid-template-columns:1fr}.toc{display:none}}
@media(max-width:640px){.container{width:min(100% - 36px,1320px)}.section-pad{padding:72px 0}.brand-mark{font-size:1.47rem}.brand-sub{font-size:.5rem}.hero{height:640px}.hero-slide{background-position:center}.hero-content{padding-top:146px}.hero-content h1{font-size:clamp(2.45rem,9vw,3.5rem)}.hero-lead{font-size:.95rem;line-height:1.85;max-width:310px}.hero-controls{bottom:26px}.progress-track{width:65px}.slide-button{width:37px;height:37px;margin-left:1px}.intro-copy{font-size:1rem}.section-head{display:block;margin-bottom:30px}.section-head>p{margin:18px 0 0}.project-grid{grid-template-columns:1fr;gap:16px}.project-card{aspect-ratio:4/3}.project-caption h3{font-size:1.36rem}.article-row{grid-template-columns:30px 1fr 24px;gap:10px;padding:26px 0}.article-main strong{font-size:1.15rem}.article-excerpt{font-size:.85rem}.article-arrow{font-size:1.15rem}.contact-actions{gap:12px}.footer-grid{display:block}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:35px}.footer-bottom{margin-top:38px;gap:15px;flex-wrap:wrap}.subhero{padding:75px 0}.knowledge-content{padding:50px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.main-nav ul{display:flex;gap:clamp(24px,3.5vw,56px);list-style:none;margin:0;padding:0}.main-nav li{margin:0}.knowledge-layout{grid-template-columns:minmax(0,800px)}.toc{display:none}.prose{max-width:800px}.prose p,.prose li{font-size:1.04rem;line-height:2.05;color:#49534c}.prose .answer,.prose>p:first-child{font-size:1.16rem;color:var(--ink);font-weight:500}.prose h2,.prose h3{margin-top:44px}.prose h2{font-size:clamp(1.45rem,2.4vw,2rem)}.prose h3{font-size:1.24rem}.prose img{max-width:100%;height:auto}.entry-featured{margin-bottom:45px}.entry-featured img{max-height:580px;object-fit:cover}.pagination{margin-top:40px}.pagination .nav-links{display:flex;gap:16px}.pagination a,.pagination .current{padding:8px 14px;border:1px solid var(--line)}.pagination .current{background:var(--dark);color:#fff}
@media(max-width:900px){.main-nav ul{display:flex;flex-direction:column;gap:0}.main-nav li{border-bottom:1px solid var(--line)}.main-nav li a{display:block;border:0}}
@media(max-width:640px){.hero-content h1{font-size:clamp(2rem,7.2vw,3rem);letter-spacing:.01em}.hero-lead{max-width:250px}}
.subhero h1{font-size:clamp(2.3rem,3.8vw,3.3rem)}
.project-card>a{display:block;width:100%;height:100%}

/* Compact Japanese editorial layout */
:root{--ink:#292e2b;--muted:#626b64;--paper:#f6f5f0;--line:#d8d9d1;--accent:#8b7758;--dark:#26302d}
body{background:var(--paper)}
.site-header{height:72px;background:var(--paper);border-bottom:1px solid var(--line)}
.brand-mark{font-size:1.55rem;letter-spacing:.12em}.brand-sub{margin-top:6px}
.main-nav a{font-size:.86rem}
.section-pad{padding:68px 0}.eyebrow{margin-bottom:14px}
.hero{height:510px;min-height:0;max-width:1600px;margin-inline:auto;background:var(--paper);color:var(--ink)}
.hero-slides{left:41%;top:18px;right:0;bottom:18px}.hero-shade{display:none}
.hero-content{padding-top:82px}.hero-content .eyebrow.light{color:var(--accent)}
.hero-content h1{font-size:clamp(2.3rem,3.25vw,3.2rem);line-height:1.55;letter-spacing:.035em;max-width:40%;margin-bottom:16px}
.hero-lead{font-size:.94rem;letter-spacing:.025em;color:var(--muted);max-width:36%;margin-bottom:25px}
.hero-link{color:var(--ink);border-color:var(--ink);gap:28px}.hero-controls{bottom:38px;color:var(--ink)}
.progress-track{background:var(--line)}.progress-fill{background:var(--ink)}.slide-total{opacity:.62}
.slide-button{width:37px;height:37px;border-color:#9a9f98;color:var(--ink);margin-left:2px}.slide-button:hover{background:#e8e8e1}
.intro{background:var(--paper);padding:58px 0;border-bottom:1px solid var(--line)}
.intro-grid{grid-template-columns:.95fr 1fr;gap:6%;align-items:center}.intro h2{font-size:clamp(1.7rem,2.35vw,2.45rem)}
.intro-copy{font-size:1rem;line-height:1.95}.intro-copy .intro-note{display:none}
.portfolio{background:#eeeee8;padding:64px 0 58px}.section-head{margin-bottom:28px}.section-head>p{font-size:.9rem}
.project-grid{gap:18px}.project-card{aspect-ratio:auto;overflow:visible;background:transparent}.project-card:after{display:none}
.project-card img{height:clamp(180px,19vw,255px);aspect-ratio:1.5;object-fit:cover}
.project-caption{position:static;color:var(--ink);padding:12px 0 0}.project-caption span{font-size:.79rem;color:var(--accent);letter-spacing:.1em}
.project-caption h3{font-size:1.17rem;margin:2px 0 0}.project-card>a{height:auto}
.portfolio-swipe{display:none}.portfolio .text-link{margin-top:24px}
.knowledge{background:#fbfbf8;padding:68px 0}.knowledge-head{margin-bottom:27px}
.article-row{grid-template-columns:42px 1fr 28px;gap:16px;padding:17px 4px;align-items:center}.article-row:hover{padding-left:12px}
.article-number{font-size:.98rem}.article-category{font-size:.875rem;letter-spacing:.06em;margin-bottom:2px}
.article-main strong{font-size:clamp(1.08rem,1.45vw,1.35rem);line-height:1.45}.article-excerpt{font-size:.84rem;line-height:1.45;margin-top:4px}
.article-arrow{font-size:1.18rem}.text-link{margin-top:22px}
.contact{padding:58px 0;background:var(--dark)}.contact-grid{grid-template-columns:1fr 390px;gap:8%}.contact h2{font-size:clamp(1.85rem,2.55vw,2.5rem);margin-bottom:13px}.contact p{margin-bottom:0}
.contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contact-actions>p{grid-column:1/-1;font-size:.78rem;line-height:1.5;margin:0}
.cta{min-height:132px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;letter-spacing:.05em;font-size:.9rem;background:#f3f1e9;color:var(--ink)}
.cta:hover{transform:none;background:#fff}.cta>span:last-child{font-size:.9rem;font-weight:600}.cta-icon{width:54px;height:54px;display:grid;place-items:center;flex:none}
.cta-icon img{width:44px;height:44px;object-fit:contain}.phone-icon{border:1.5px solid var(--ink);border-radius:50%;width:44px;height:44px;margin:5px}
.phone-icon svg{display:block;width:25px;height:25px}.footer{padding:39px 0 23px}.footer-bottom{margin-top:31px}
@media(max-width:900px){
  .site-header{height:68px}.main-nav{top:68px;background:var(--paper)}
  .hero{height:470px;color:#fff;background:#26302d}.hero-slides{inset:0}.hero-shade{display:block;background:linear-gradient(90deg,rgba(11,20,16,.66),rgba(11,20,16,.1) 84%),linear-gradient(0deg,rgba(11,20,16,.3),transparent 36%)}
  .hero-content{padding-top:91px}.hero-content .eyebrow.light{color:#e6d7c1}.hero-content h1{font-size:clamp(2.4rem,5.5vw,3.3rem);max-width:600px}.hero-lead{color:#f3f2ed;max-width:390px}.hero-link{color:#fff;border-color:#fff}
  .hero-controls{color:#fff;bottom:28px}.progress-track{background:rgba(255,255,255,.5)}.progress-fill{background:#fff}.slide-button{color:#fff;border-color:rgba(255,255,255,.65)}.slide-button:hover{background:rgba(255,255,255,.15)}
  .intro-grid{grid-template-columns:1fr .95fr;gap:4%}.contact-grid{grid-template-columns:1fr 330px;gap:5%}
}
@media(max-width:640px){
  .container{width:min(100% - 36px,1320px)}.site-header{height:64px}.main-nav{top:64px}.brand-mark{font-size:1.38rem}
  .section-pad{padding:48px 0}.hero{height:430px}.hero-content{padding-top:61px}.hero-content h1{font-size:clamp(2rem,8vw,2.65rem);letter-spacing:.01em;max-width:100%;margin-bottom:12px}
  .hero-lead{font-size:.91rem;line-height:1.7;max-width:250px;margin-bottom:16px}.hero-link{font-size:.83rem}.hero-controls{bottom:16px}.progress-track{width:58px}
  .intro{padding:42px 0}.intro-grid{grid-template-columns:1fr;gap:13px}.intro h2{font-size:1.73rem}.intro-copy{font-size:.96rem;line-height:1.8}
  .portfolio{padding:47px 0 42px}.section-head{margin-bottom:22px}.section-head h2{font-size:1.8rem}.section-head>p{margin-top:8px;font-size:.86rem;line-height:1.6}
  .portfolio-feature .project-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(250px,76vw);gap:13px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:11px;scrollbar-width:thin}
  .portfolio-feature .project-card{scroll-snap-align:start}.project-card img{height:190px}.project-caption{padding-top:9px}.project-caption h3{font-size:1.08rem}
  .portfolio-swipe{display:block;font-size:.78rem;color:var(--muted);margin:4px 0 0}.portfolio .text-link{margin-top:15px}
  .knowledge{padding:47px 0}.knowledge-head{margin-bottom:20px}.article-row{grid-template-columns:27px 1fr 18px;gap:9px;padding:15px 0;align-items:center}
  .article-category{font-size:.82rem}.article-main strong{font-size:1rem;line-height:1.48}.article-excerpt{display:none}.article-arrow{font-size:1rem}.knowledge .text-link{margin-top:20px}
  .contact{padding:48px 0}.contact-grid{grid-template-columns:1fr;gap:23px}.contact h2{font-size:1.95rem;margin-bottom:8px}.contact>p{font-size:.9rem}
  .contact-actions{gap:10px}.cta{min-height:114px}.footer{padding:32px 0 22px}.footer-grid p{margin-top:14px}.footer-links{margin-top:23px}.footer-bottom{margin-top:27px}
}

/* Blue hinoki direction */
:root{--ink:#19344d;--muted:#657b8d;--paper:#f8fafb;--line:#d7e1e8;--accent:#416b8b;--dark:#142d46}
body{background:var(--paper)}
.site-header,.intro,.knowledge{background:#f8fafb}
.brand-sub{color:#6d8395}.main-nav a:hover,.footer-links a:hover{color:#86aeca}
.eyebrow,.article-category,.article-number,.project-caption span,.toc p{color:#4e7593}
.eyebrow.light{color:#c6dceb}
.portfolio,.detail-section.alt{background:#edf3f7}
.article-row:hover{background:#edf3f7}
.hero{background:#e8eff4;color:var(--ink)}
.hero-content .eyebrow.light{color:#416b8b}
.hero-lead{color:#536c80}
.hero-link{color:var(--ink);border-color:var(--ink)}
.hero-controls{color:var(--ink)}
.progress-track{background:#b5c9d7}.progress-fill{background:#416b8b}
.slide-button{color:var(--ink);border-color:#9bb3c5}.slide-button:hover{background:#e0ebf3}
.contact{background:#1a3855}.contact p{color:#d4e1e9}
.cta{background:#f1f6f9;color:#17324c}.cta:hover{background:#fff}
.footer{background:#10273e}.footer-bottom{border-color:#36536a}
.subhero{background:#1a3855;padding:76px 0 70px}.subhero p:last-child{color:#d6e2e9}
.knowledge-content{background:#f8fafb}.knowledge-article p,.knowledge-article li{color:#445e70}
.portfolio .project-card>a{display:block}.project-caption h3 span{font-family:var(--sans);font-size:.9rem;color:#587e9a}
.demo-note{font-size:.8rem;color:#58758b;margin:0 0 22px}
.detail-section{background:#f8fafb}.detail-grid{display:grid;grid-template-columns:.85fr 1fr;gap:8%;align-items:start}.detail-copy{max-width:680px;color:#455d70;font-size:1.05rem;line-height:2}.detail-copy p{margin-bottom:20px}.detail-section h2{margin-bottom:0}.detail-section .text-link{margin-top:24px}
.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.service-grid>div{padding:32px;background:#fff;border:1px solid var(--line)}.service-grid span{color:#5f8098;font-size:.77rem;letter-spacing:.15em}.service-grid h3{margin:10px 0;font-size:1.4rem}.service-grid p{color:#587084;margin-bottom:0}
.project-detail{background:#f8fafb}.project-lead{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:end;margin-bottom:30px}.project-lead h2{margin:0}.project-lead>p{margin:0;color:#506a7d;line-height:1.9}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gallery figure{margin:0}.gallery figure:first-child{grid-column:1/-1}.gallery img{height:330px;object-fit:cover}.gallery figure:first-child img{height:clamp(350px,47vw,600px)}.gallery figcaption{font-size:.76rem;color:#657f90;padding-top:8px}
.project-points{margin:68px 0 18px;padding-top:42px;border-top:1px solid var(--line)}.project-points ul{margin:0;padding-left:1.2em;color:#486174;line-height:1.9}.project-points li{padding:0 0 14px}
@media(max-width:900px){.hero{background:#1b3955;color:#fff}.hero-shade{background:linear-gradient(90deg,rgba(15,42,66,.84),rgba(15,42,66,.28) 90%),linear-gradient(0deg,rgba(15,42,66,.34),transparent 42%)}.hero-content .eyebrow.light{color:#c9deeb}.hero-lead{color:#eff5f8}.hero-link,.hero-controls{color:#fff}.hero-link{border-color:#fff}.progress-track{background:#9bb4c5}.progress-fill{background:#fff}.slide-button{color:#fff;border-color:#d1e1ea}.detail-grid{gap:5%}}
@media(max-width:640px){.hero{height:430px}.hero-content h1{font-size:clamp(2rem,8vw,2.65rem)}.detail-grid,.project-lead,.service-grid{grid-template-columns:1fr;gap:16px}.detail-section{padding:48px 0}.service-grid>div{padding:24px}.gallery{gap:11px}.gallery img{height:180px}.gallery figure:first-child img{height:280px}.project-points{margin-top:42px;padding-top:30px}.subhero{padding:54px 0 48px}}

/* Carpenter identity */
.brand-sub{font-size:.75rem;letter-spacing:.12em}.footer-links{font-size:.875rem}
.craft-tags{font-size:.875rem;color:#416b8b;letter-spacing:.05em;margin:14px 0 0!important}.intro-copy .text-link{font-size:.875rem;margin-top:14px}
.craft-photo{margin:0}.craft-photo img{height:430px;object-fit:cover}.craft-photo figcaption{font-size:.8rem;color:#657b8d;padding-top:8px}
.craft-priority-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.craft-priority-grid>div{border-top:1px solid #9bb6c9;padding-top:20px}.craft-priority-grid h3{font-size:1.25rem;margin:0 0 10px}.craft-priority-grid p{color:#567185;margin:0;font-size:1rem}
.cooperation{border-top:1px solid var(--line);margin-top:56px;padding-top:34px}.cooperation ol{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;counter-reset:steps;padding:0;margin:0}.cooperation li{counter-increment:steps;display:flex;flex-direction:column;gap:5px}.cooperation li:before{content:'0' counter(steps);font-family:var(--serif);font-size:1.25rem;color:#7294ad;margin-bottom:7px}.cooperation strong{font-size:1rem;font-weight:500}.cooperation span{color:#647e91;font-size:.875rem}
.prose h2{scroll-margin-top:28px}.toc a{font-size:.875rem}.prose .answer{font-size:1.08rem;color:#19344d;line-height:1.9;background:#edf3f7;padding:24px;border-left:2px solid #517c9b}
@media(max-width:900px){.craft-priority-grid{grid-template-columns:1fr 1fr}.cooperation ol{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.brand-sub{font-size:.75rem}.craft-photo img{height:280px}.craft-tags{font-size:.875rem}.craft-priority-grid{gap:23px 18px}.cooperation{margin-top:38px}.cooperation ol{gap:22px 18px}.prose .answer{padding:18px;font-size:1rem}}

.hero{height:470px}.hero-content{padding-top:62px}
@media(max-width:900px){.hero-content{padding-top:72px}}
@media(max-width:640px){
  .hero{height:380px}.hero-content{padding-top:42px}.hero-content h1{font-size:1.95rem}.hero-lead{font-size:1rem;max-width:280px}.hero-controls{bottom:16px}
  .intro,.portfolio-feature,.knowledge,.contact{padding:32px 0}.intro h2,.section-head h2{font-size:1.65rem}.contact h2{font-size:1.6rem}
  .intro-copy{font-size:1rem}.section-head{margin-bottom:20px}.article-row{padding:12px 0}.article-category{font-size:.875rem}
  .portfolio-feature .project-card img{height:170px}.project-caption h3{font-size:1rem}.contact-grid{gap:18px}.cta{min-height:100px}.footer{padding:27px 0 20px}
}

/* Kaohsiung inquiry flow */
.inquiry-actions{display:flex;gap:10px;flex-wrap:wrap}.inquiry-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 18px;font-size:.875rem;font-weight:500;line-height:1.5;border:1px solid #a7bece;white-space:nowrap}.inquiry-button svg{width:23px;height:23px;flex:none}.inquiry-button img{width:26px;height:26px;object-fit:contain;flex:none}.inquiry-phone{background:#193d5a;color:#fff;border-color:#193d5a}.inquiry-phone:hover{background:#244f6e}.inquiry-line{background:#fff;color:#19344d}.inquiry-line:hover{background:#edf4f8}
.hero-content .inquiry-actions{max-width:39%;margin-top:8px}.hero-content h1{letter-spacing:.015em}.hero-content .eyebrow{letter-spacing:.12em;font-size:.875rem}.hero-lead{max-width:36%;margin-bottom:18px}
.inquiry-box{background:#edf3f7;border:1px solid #cadbe7;padding:24px;margin:26px 0 38px}.inquiry-box p{margin-bottom:14px!important;font-size:1rem;line-height:1.8}.inquiry-box .inquiry-box-title{font-weight:600;color:#19344d}.inquiry-box .appointment-note{font-size:.875rem;margin-top:14px;margin-bottom:0!important;color:#607b8e}
.appointment-note{font-size:.875rem;line-height:1.7!important;margin-top:12px}.contact .appointment-note{color:#b8d0e1}.contact-actions .placeholder-note{color:#c0d3e0}.article-byline{font-size:.875rem;color:#60798c;margin-bottom:24px}.fee-copy{margin-top:24px}.related-reading{margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}.related-reading>a{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:1rem}
.mobile-inquiry{display:none}
@media(max-width:900px){.hero-content .inquiry-actions{max-width:100%}.hero-lead{max-width:400px}.hero-content .inquiry-phone{background:#fff;color:#183954;border-color:#fff}.hero-content .inquiry-line{background:#f0f6fa}}
@media(max-width:640px){
  .hero-content{padding-top:34px}.hero-content h1{font-size:2rem}.hero-content .eyebrow{font-size:.875rem;letter-spacing:.07em;margin-bottom:12px}.hero-lead{font-size:1rem;max-width:285px;margin-bottom:14px}.hero-content .inquiry-actions{gap:9px}.hero-content .inquiry-button{min-height:44px;padding:8px 13px}.hero-content .inquiry-button img{width:24px;height:24px}
  .inquiry-box{padding:20px}.inquiry-box .inquiry-button{padding:9px 13px}.mobile-inquiry{display:block;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#f8fafb;border-top:1px solid #afc6d7;padding:9px 12px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -3px 14px rgba(17,45,66,.06)}.mobile-inquiry .inquiry-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-inquiry .inquiry-button{min-height:46px;padding:8px 9px}.mobile-inquiry .inquiry-button img{width:26px;height:26px}body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
}

/* Company icon */
.site-header .brand{display:grid;grid-template-columns:44px auto;column-gap:11px;align-items:center}
.site-header .brand-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.site-header .company-icon{width:44px;height:44px;object-fit:cover;border-radius:7px;box-shadow:0 1px 5px rgba(18,45,66,.16);flex:none}
@media(max-width:640px){.site-header .brand{grid-template-columns:38px auto;column-gap:9px}.site-header .company-icon{width:38px;height:38px;border-radius:6px}}

/* ===== Homepage compact hero ===== */

.hero {
    height: 420px;
    min-height: 0;
}

.hero-content {
    padding-top: 52px;
}

.hero-content h1 {
    font-size: clamp(2rem, 3vw, 2.8rem);
    line-height: 1.4;
    margin-bottom: 12px;
}

.hero-lead {
    font-size: .92rem;
    line-height: 1.65;
    margin-bottom: 15px;
}

@media (max-width: 900px) {
    .hero {
        height: 350px;
    }

    .hero-content {
        padding-top: 45px;
    }

    .hero-content h1 {
        font-size: 2rem;
    }
}

@media (max-width: 640px) {
    .hero {
        height: 290px;
    }

    .hero-content {
        padding-top: 23px;
    }

    .hero-content .eyebrow {
        font-size: .7rem;
        margin-bottom: 7px;
        letter-spacing: .06em;
    }

    .hero-content h1 {
        font-size: 1.55rem;
        line-height: 1.32;
        margin-bottom: 7px;
        max-width: 95%;
    }

    .hero-lead {
        font-size: .78rem;
        line-height: 1.5;
        max-width: 240px;
        margin-bottom: 10px;
    }

    .hero-content .inquiry-actions {
        gap: 6px;
    }

    .hero-content .inquiry-button {
        min-height: 36px;
        padding: 5px 9px;
        font-size: .72rem;
    }

    .hero-content .inquiry-button img,
    .hero-content .inquiry-button svg {
        width: 20px;
        height: 20px;
    }

    .hero-controls {
        bottom: 9px;
        gap: 8px;
    }

    .hero-controls .slide-button {
        display: none;
    }

    .progress-track {
        width: 45px;
    }
}

/* ===== Mobile 3 x 3 portfolio grid ===== */

@media (max-width: 640px) {

    .portfolio-feature {
        padding: 25px 0 30px;
    }

    .portfolio-feature .section-head {
        margin-bottom: 14px;
    }

    .portfolio-feature .section-head h2 {
        font-size: 1.4rem;
    }

    .portfolio-feature .eyebrow {
        font-size: .7rem;
        margin-bottom: 5px;
    }

    .portfolio-feature .project-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-auto-flow: initial;
        grid-auto-columns: auto;
        gap: 6px;
        overflow: visible;
        scroll-snap-type: none;
        padding-bottom: 0;
    }

    .portfolio-feature .project-card {
        width: 100%;
        min-width: 0;
        aspect-ratio: 1 / 1;
        overflow: hidden;
        scroll-snap-align: unset;
    }

    .portfolio-feature .project-card > a {
        display: block;
        width: 100%;
        height: 100%;
    }

    .portfolio-feature .project-card img {
        width: 100%;
        height: 100%;
        aspect-ratio: 1 / 1;
        object-fit: cover;
    }

    .portfolio-feature .project-caption {
        display: none;
    }

    .portfolio-swipe {
        display: none !important;
    }

    .portfolio-feature .text-link {
        margin-top: 16px;
        font-size: .8rem;
    }
}

/* Header wood background */
.site-header {
    background-image:
        linear-gradient(
            rgba(255,248,240,0.38),
            rgba(255,248,240,0.38)
        ),
        url("header-wood.png");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-bottom: 1px solid rgba(23, 50, 76, 0.15);
}
@media (max-width: 900px) {
    .main-nav {
        background-image:
            linear-gradient(
                rgba(255, 255, 255, 0.12),
                rgba(255, 255, 255, 0.12)
            ),
            url("header-wood.png");

        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
}

/* ===== Mobile header brand: large, bold, one line ===== */
@media (max-width: 640px) {

    .site-header .inner {
        gap: 6px;
    }

    .site-header .brand {
        grid-template-columns: 34px minmax(0, 1fr);
        column-gap: 7px;
        flex: 1 1 auto;
        min-width: 0;
    }

    .site-header .brand img {
        width: 34px;
        height: 34px;
    }

    .site-header .brand-mark {
        font-size: 1.5rem !important;
        font-weight: 800 !important;
        line-height: 1;
        letter-spacing: -0.035em;
        white-space: nowrap;
    }

    .site-header .brand-sub {
        display: none;
    }

    .site-header .menu-toggle {
        flex: 0 0 auto;
        margin-left: 4px;
    }
}

/* ===== Brand styling: desktop + mobile ===== */

/* Desktop / tablet */
.site-header .brand-mark {
    font-size: 2rem !important;
    font-weight: 800 !important;
    line-height: 1;
    letter-spacing: 0.025em;
    white-space: nowrap;
}

.site-header .brand-sub {
    font-size: 0.72rem !important;
    font-weight: 600;
    letter-spacing: 0.14em;
    margin-top: 5px;
    white-space: nowrap;
}

/* Mobile */
@media (max-width: 640px) {

    .site-header .inner {
        gap: 6px;
    }

    .site-header .brand {
        grid-template-columns: 34px minmax(0, 1fr);
        column-gap: 7px;
        flex: 1 1 auto;
        min-width: 0;
    }

    .site-header .brand img {
        width: 34px;
        height: 34px;
    }

    .site-header .brand-mark {
        font-size: 1.5rem !important;
        font-weight: 800 !important;
        line-height: 1;
        letter-spacing: -0.035em;
        white-space: nowrap;
    }

    .site-header .brand-sub {
        display: none;
    }

    .site-header .menu-toggle {
        flex: 0 0 auto;
        margin-left: 4px;
    }
}

.hero-controls {
    justify-content: flex-end;
    gap: 10px;
}

.slide-current,
.slide-total,
.progress-track,
.slide-pause {
    display: none !important;
}
/* =====================================
   Homepage Portfolio Grid
   Desktop 3 x 3
===================================== */

.portfolio-feature .project-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;

    gap: 18px;

    overflow: visible !important;
    scroll-snap-type: none !important;
    padding-bottom: 0 !important;
}

.portfolio-feature .project-card {
    min-width: 0 !important;
    scroll-snap-align: none !important;
}

.portfolio-feature .portfolio-swipe {
    display: none !important;
}

.portfolio-feature .project-card img {
    display: block;
    width: 100%;
    height: auto !important;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

/* Mobile: 2 columns x 4 rows */
@media (max-width: 640px) {

    .portfolio-feature .project-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;

        gap: 8px;
    

        overflow: visible !important;
        scroll-snap-type: none !important;
        padding-bottom: 0 !important;
    }

    .portfolio-feature .project-card {
        min-width: 0 !important;
        scroll-snap-align: none !important;
    }

    .portfolio-feature .project-card img {
        width: 100%;
        height: auto !important;
        aspect-ratio: 4 / 3;
        object-fit: cover;
    }

    /* 第 9 個案例在手機隱藏 */
    .portfolio-feature .project-card:nth-child(n+9) {
        display: none !important;
    }

    .portfolio-feature .portfolio-swipe {
        display: none !important;
    }
}
@media (max-width: 640px) {
    .portfolio-feature .project-caption {
        display: none !important;
    }
}

/* 手機版首頁作品入口牆：2欄、每列高度更緊湊 */
@media (max-width: 640px) {

    .portfolio-feature .project-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .portfolio-feature .project-card {
        min-width: 0 !important;
    }

    .portfolio-feature .project-card img {
        width: 100%;
        aspect-ratio: 16 / 10 !important;
        object-fit: cover;
        height: auto !important;
    }

    /* 手機首頁最多8個 */
    /* .portfolio-feature .project-card:nth-child(n+9) {
        display: none !important;
    } */
}

/* 完整作品集：手機版 2 × N */
@media (max-width: 640px) {

    .post-type-archive-jingxu_project .project-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-flow: row !important;
        gap: 8px !important;
        overflow: visible !important;
    }

    .post-type-archive-jingxu_project .project-card {
        min-width: 0 !important;
    }

    .post-type-archive-jingxu_project .project-card img {
        width: 100%;
        aspect-ratio: 4 / 3 !important;
        object-fit: cover;
        height: auto !important;
    }

    /* 完整作品集不顯示任何文字 */
    .post-type-archive-jingxu_project .project-caption {
        display: none !important;
    }
}
/* 手機版首頁作品牆：縮小排與排之間的空隙 */
@media (max-width: 640px) {

    .portfolio-feature .project-card {
        margin-bottom: 0 !important;
    }

    .portfolio-feature .project-grid {
        row-gap: 4px !important;
        column-gap: 8px !important;
    }
}
@media (max-width: 640px) {

    .portfolio-feature .project-grid {
        row-gap: 0px !important;
        column-gap: 8px !important;
    }

    .portfolio-feature .project-card {
        margin-bottom: 0 !important;
    }

    .portfolio-feature .project-card a {
        margin: 0 !important;
        padding: 0 !important;
    }

    .portfolio-feature .project-caption {
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* ===== 手機版作品牆：真正縮小每排之間的空隙 ===== */
@media (max-width: 640px) {

    .project-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        /* 關鍵：不要讓每一列被撐高 */
        grid-auto-rows: auto !important;
        align-items: start !important;

        /* 上下 / 左右間距 */
        row-gap: 2px !important;
        column-gap: 12px !important;
    }

    .project-grid > * {
        margin: 0 !important;
        padding: 0 !important;
        min-height: 0 !important;
        height: auto !important;
    }

    .project-card {
        margin: 0 !important;
        padding: 0 !important;
        min-height: 0 !important;
        height: auto !important;
    }

    .project-card a {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        height: auto !important;
    }

    .project-card img {
        display: block !important;
        margin: 0 !important;
    }
}

/* ===== 手機版首頁作品入口牆：修正每排巨大空隙 ===== */
@media (max-width: 640px) {

    .portfolio-feature .project-grid {
        display: grid !important;

        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows: none !important;
        grid-auto-rows: max-content !important;

        grid-auto-flow: row !important;
        grid-auto-columns: unset !important;

        column-gap: 10px !important;
        row-gap: 1px !important;

        align-items: start !important;
        align-content: start !important;

        height: auto !important;
        min-height: 0 !important;

        overflow: visible !important;
        padding-bottom: 0 !important;
    }

    .portfolio-feature .project-card {
        display: block !important;

        width: 100% !important;
        height: fit-content !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        align-self: start !important;
    }

    .portfolio-feature .project-card > a {
        display: block !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .portfolio-feature .project-card img {
        display: block !important;

        width: 100% !important;
        height: auto !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .portfolio-feature .project-caption {
        display: none !important;
    }
}

/* ===== 手機首頁作品入口牆：清除卡片殘留高度 ===== */
@media (max-width: 640px) {

    body.home .portfolio-feature .project-grid,
    .portfolio-feature .project-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: auto !important;

        row-gap: 6px !important;
        column-gap: 10px !important;

        align-items: start !important;
        align-content: start !important;
    }

    /* 清除真正撐高卡片的設定 */
    body.home .portfolio-feature .project-card,
    .portfolio-feature .project-card {
        display: block !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        aspect-ratio: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        flex: none !important;
    }

    /* 清除卡片內連結的固定高度 */
    body.home .portfolio-feature .project-card > a,
    .portfolio-feature .project-card > a {
        display: block !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        aspect-ratio: auto !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    /* 如果 Theme 還包了 figure / 圖片容器，也一併清除 */
    .portfolio-feature .project-card figure,
    .portfolio-feature .project-card .project-media,
    .portfolio-feature .project-card .project-image,
    .portfolio-feature .project-card .project-thumb {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        aspect-ratio: auto !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    /* 圖片本身 */
    .portfolio-feature .project-card img {
        display: block !important;
        width: 100% !important;
        height: auto !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    /* 手機首頁完全不要文字，也不能占空間 */
    .portfolio-feature .project-caption {
        display: none !important;

        height: 0 !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;
    }
}

/* ===== 作品集圖片統一比例 ===== */

.portfolio-feature .project-card img,
.post-type-archive-jingxu_project .project-card img {
    display: block !important;
    width: 100% !important;

    /* 統一作品照片比例 */
    aspect-ratio: 4 / 3 !important;

    /* 自動裁切，不變形 */
    object-fit: cover !important;
    object-position: center center;

    height: auto !important;
}

/* ===== Header + Hero font ===== */

.site-header,
.site-header *,

.hero,
.hero * {
    font-family: "Noto Sans TC", sans-serif !important;
}

/* ===== Header 公司名稱：稍微變細 ===== */
.site-header .brand-mark {
    font-weight: 600 !important;
}

/* ===== 手機三明治選單文字：放大＋加粗 ===== */
@media (max-width: 640px) {

    .site-header nav a,
    .site-nav a,
    .mobile-nav a,
    .mobile-menu a {
        font-size: 1.15rem !important;
        font-weight: 700 !important;
        line-height: 1.5;
    }
}

/* ===== Desktop Hero ===== */

@media (min-width: 641px) {

    .hero {
        background: #0f2f46 !important;
        color: #F7F5F1 !important;
    }

    .hero h1,
    .hero h2,
    .hero h3,
    .hero p,
    .hero .eyebrow {
        color: #F7F5F1!important;
    }
}

/* ========================================
   首頁作品集數量
   Desktop = 9
   Mobile = 10
======================================== */

/* 桌機：隱藏第10張 */
@media (min-width: 641px) {

    .portfolio-feature .project-card:nth-child(10) {
        display: none !important;
    }

}


/* 手機：2欄 x 5列，顯示10張 */
@media (max-width: 640px) {

    .portfolio-feature .project-grid {
        display: grid !important;
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
        grid-auto-rows: auto !important;
    }

    /* 之前如果有隱藏第9張以後，要取消 */
    .portfolio-feature .project-card:nth-child(9),
    .portfolio-feature .project-card:nth-child(10) {
        display: block !important;
    }

    /* 第11張以後才隱藏 */
    .portfolio-feature .project-card:nth-child(n+11) {
        display: none !important;
    }
}

/* ========================================
   完整作品集手機版
   1欄 × 每頁10張
======================================== */

@media (max-width: 640px) {

    .post-type-archive-jingxu_project .project-grid {
        display: grid !important;

        grid-template-columns: 1fr !important;
        grid-auto-flow: row !important;

        row-gap: 10px !important;
        column-gap: 0 !important;

        overflow: visible !important;
    }

    .post-type-archive-jingxu_project .project-card {
        width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;
    }

    .post-type-archive-jingxu_project .project-card img {
        display: block !important;

        width: 100% !important;
        height: auto !important;

        object-fit: cover;
    }

    /* 手機完整作品集不顯示文字 */
    .post-type-archive-jingxu_project .project-caption {
        display: none !important;
    }
}

/* ===== 完整作品集：隱藏「空間設計」＋縮小排距 ===== */

/* 隱藏每張作品下方的「空間設計」 */
.post-type-archive-jingxu_project .project-caption > span {
    display: none !important;
}

/* 縮短作品排與排之間的距離 */
.post-type-archive-jingxu_project .project-grid {
    row-gap: 22px !important;
}

/* 縮小圖片與作品名稱之間的空間 */
.post-type-archive-jingxu_project .project-caption {
    margin-top: 6px !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
}

/* 作品名稱不要自己帶太多上下 margin */
.post-type-archive-jingxu_project .project-caption h3 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* ===== 手機版完整作品集：文字浮在圖片上，不佔版面高度 ===== */
@media (max-width: 640px) {

    .post-type-archive-jingxu_project .project-card {
        position: relative !important;
    }

    /* 恢復顯示作品文字 */
    .post-type-archive-jingxu_project .project-caption {
        display: block !important;

        position: absolute !important;
        left: 0;
        right: 0;
        bottom: 0;

        margin: 0 !important;
        padding: 18px 12px 10px !important;

        background: linear-gradient(
            to top,
            rgba(0, 0, 0, 0.58),
            rgba(0, 0, 0, 0)
        );

        pointer-events: none;
    }

    /* 隱藏「空間設計」 */
    .post-type-archive-jingxu_project .project-caption > span {
        display: none !important;
    }

    /* 顯示案例名稱 */
    .post-type-archive-jingxu_project .project-caption h3 {
        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        color: #ffffff !important;
        font-size: 0.95rem !important;
        font-weight: 600 !important;
        line-height: 1.35;
    }
}

/* ===== 首頁作品集入口牆：桌機 3x3、純圖片 ===== */
@media (min-width: 641px) {

    .portfolio-feature .project-grid {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        grid-auto-flow: row !important;
    }

    .portfolio-feature .project-caption {
        display: none !important;
    }

    /* 如果首頁 query 抓了第10張，桌機隱藏 */
    .portfolio-feature .project-card:nth-child(n+10) {
        display: none !important;
    }
}


/* =========================================
   Mobile menu：淡木紋 + 米白 hover
========================================= */

@media (max-width: 1024px) {

    /* 將目前木紋背景變淡 */
    .site-header .site-nav,
    .site-header nav {
        background-color: rgba(255, 255, 255, 0.48) !important;
        background-blend-mode: screen !important;
    }

    /* Hover / Focus / Current */
    .site-header .site-nav a:hover,
    .site-header .site-nav a:focus,
    .site-header .site-nav a:focus-visible,
    .site-header .site-nav a.active,
    .site-header .site-nav a[aria-current="page"],
    .site-header nav a:hover,
    .site-header nav a:focus,
    .site-header nav a:focus-visible {
        color: #F3EFE8 !important;
    }
}

/* ===== Desktop menu ===== */
@media (min-width: 1025px) {

    .site-header nav a,
    .site-header .site-nav a {
        font-size: 1.1rem !important;
        font-weight: 600 !important;
    }

    .site-header nav a:hover,
    .site-header nav a:focus,
    .site-header nav a:focus-visible,
    .site-header .site-nav a:hover,
    .site-header .site-nav a:focus,
    .site-header .site-nav a:focus-visible {
        color: #F3EFE8 !important;
    }
}
/* ===== About 頁：縮短標題區與內文距離 ===== */

.knowledge-content {
    padding-top: 40px !important;
    padding-bottom: 60px !important;
}

.knowledge-content .container {
    padding-top: 0 !important;
}

.knowledge-content .prose {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.knowledge-content .prose > *:first-child {
    margin-top: 0 !important;
}