:root{
  /* 設計總監規範色票 A1 */
  --rice:#F6F4EF;--stone:#E8E6E0;--warm-gray:#77736D;--charcoal:#242424;--black:#000;--white:#FFF;--mid-gray:#808080;
  /* 舊草稿色：設計總監已對應到色票（見 設計總監_兩版/顏色對應表.md） */
  --legacy-0003:color-mix(in srgb,var(--black) 20%,transparent);--legacy-0004:color-mix(in srgb,var(--black) 27%,transparent);--legacy-0005:color-mix(in srgb,var(--black) 33%,transparent);--legacy-0008:color-mix(in srgb,var(--black) 53%,transparent);--legacy-080a08:var(--black);--legacy-10150e:var(--warm-gray);--legacy-111:var(--charcoal);--legacy-111310:var(--rice);--legacy-171817:var(--rice);--legacy-171a15:var(--charcoal);--legacy-171a16:var(--rice);--legacy-1c1f1b:var(--white);--legacy-1c201a:var(--rice);--legacy-202320:var(--rice);--legacy-20271b:var(--charcoal);--legacy-20271b18:color-mix(in srgb,var(--charcoal) 9%,transparent);--legacy-222622:var(--charcoal);--legacy-22291c:var(--charcoal);--legacy-22291f:var(--charcoal);--legacy-232523:var(--white);--legacy-242820:var(--charcoal);--legacy-25231f:var(--charcoal);--legacy-252b21:var(--stone);--legacy-272d23:var(--stone);--legacy-282b26:var(--rice);--legacy-282f23:var(--charcoal);--legacy-30362b:var(--stone);--legacy-30382b:var(--stone);--legacy-394034:var(--stone);--legacy-3c4138:var(--warm-gray);--legacy-444742:var(--warm-gray);--legacy-454e3e:var(--stone);--legacy-46513d:var(--charcoal);--legacy-526046:var(--charcoal);--legacy-555c4d:var(--warm-gray);--legacy-555c50:var(--charcoal);--legacy-555d50:var(--warm-gray);--legacy-566449:var(--charcoal);--legacy-58614f:var(--charcoal);--legacy-596051:var(--charcoal);--legacy-5b6650:var(--charcoal);--legacy-5c6556:var(--charcoal);--legacy-5c6752:var(--charcoal);--legacy-5d6756:var(--charcoal);--legacy-5e6654:var(--charcoal);--legacy-62675d:var(--charcoal);--legacy-626b5a:var(--charcoal);--legacy-646858:var(--charcoal);--legacy-657652:var(--warm-gray);--legacy-70766a:var(--warm-gray);--legacy-738065:var(--warm-gray);--legacy-747474:var(--warm-gray);--legacy-747b60:var(--warm-gray);--legacy-75816b:var(--warm-gray);--legacy-797566:var(--charcoal);--legacy-81705b:var(--charcoal);--legacy-858585:var(--warm-gray);--legacy-858e79:var(--warm-gray);--legacy-929e87:var(--charcoal);--legacy-969d88:var(--warm-gray);--legacy-a4937e:var(--warm-gray);--legacy-a9af9f:var(--warm-gray);--legacy-aaa:var(--charcoal);--legacy-aab69d:var(--charcoal);--legacy-aeb3a8:var(--charcoal);--legacy-aeb6a6:var(--charcoal);--legacy-aeb8a4:var(--warm-gray);--legacy-aebaa0:var(--warm-gray);--legacy-b4bfa9:var(--warm-gray);--legacy-b8bdb3:var(--charcoal);--legacy-b9bfb0:var(--charcoal);--legacy-babbb4:var(--charcoal);--legacy-babfb3:var(--warm-gray);--legacy-bbc5af:var(--warm-gray);--legacy-bdc4b4:var(--warm-gray);--legacy-bec5b6:var(--charcoal);--legacy-c0c5b8:var(--charcoal);--legacy-c6c6c6:var(--charcoal);--legacy-c6d2b2:var(--warm-gray);--legacy-c7cebf:var(--warm-gray);--legacy-ced6c4:var(--stone);--legacy-d2b99b:var(--stone);--legacy-dce2d4:var(--white);--legacy-dce4d1:var(--white);--legacy-ddd:var(--white);--legacy-dddcd2:var(--stone);--legacy-e4e4e4:var(--charcoal);--legacy-e4e8de:var(--charcoal);--legacy-e4edd6:var(--rice);--legacy-eceee7:var(--rice);--legacy-eee:var(--white);--legacy-efede6:var(--rice);--legacy-eff2e8:var(--rice);--legacy-f0eee7:var(--charcoal);--legacy-f2f2f2:var(--charcoal);--legacy-ffffff18:color-mix(in srgb,var(--white) 9%,transparent);--legacy-ffffff20:color-mix(in srgb,var(--white) 13%,transparent)
}
:root{--bg:var(--legacy-111310);--panel:var(--legacy-1c1f1b);--paper:var(--legacy-eceee7);--text:var(--legacy-eceee7);--muted:var(--legacy-aeb3a8);--line:var(--legacy-3c4138);--accent:var(--legacy-c6d2b2)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.8 -apple-system,BlinkMacSystemFont,"PingFang TC","Microsoft JhengHei",sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:6px}button{font:inherit;cursor:pointer;color:inherit}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:5px}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-weight:500}h2{font-size:clamp(2rem,4vw,3.8rem);line-height:1.45;letter-spacing:-.035em}h3{line-height:1.5}em{font-style:normal;color:var(--accent)}p+p{margin-top:20px}.muted{color:var(--muted)}.eyebrow,.section-label{font-size:12px;letter-spacing:.14em}.header{max-width:1600px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:25px 5%;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:baseline;gap:18px;font-size:30px;font-weight:750;letter-spacing:-.06em;line-height:1.3}.brand span{font-size:14px;letter-spacing:0;font-weight:400}.header nav{display:flex;gap:32px;font-size:14px}.header nav a:last-child{color:var(--accent)}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:var(--paper);color:var(--legacy-111);padding:12px}.skip:focus{top:10px}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;padding:50px 5% 0;gap:0 6%}.hero-copy{padding:15px 0 35px}.hero-copy .eyebrow{color:var(--muted)}h1{font-size:clamp(2.8rem,5.1vw,5.5rem);line-height:1.4;letter-spacing:-.045em;margin:37px 0 25px}.hero-intro{color:var(--legacy-b8bdb3);font-size:16px}.button{display:inline-flex;gap:55px;align-items:center;padding:14px 22px;border:1px solid var(--line);margin-top:30px;font-size:14px}.button.light{background:var(--paper);color:var(--legacy-171a15)}.button:hover{background:var(--legacy-ced6c4);text-decoration:none}.hero-role{display:block;color:var(--muted);font-size:12px;letter-spacing:.1em;margin-top:24px}.hero-visual{position:relative;min-height:540px;overflow:hidden;background:var(--legacy-080a08)}.hero-visual:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 80px var(--legacy-0005);pointer-events:none}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.image-label{position:absolute;top:24px;left:24px;right:24px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.1em;color:var(--legacy-ddd)}.image-credit{position:absolute;bottom:12px;right:15px;color:var(--legacy-eee);font-size:12px;background:var(--legacy-0008);padding:2px 8px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:45px;padding:20px 0;color:var(--muted);font-size:12px;letter-spacing:.08em}.section{padding:90px max(5%,calc((100vw - 1440px)/2));}.section-label{display:flex;justify-content:space-between;color:var(--muted);padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:55px;gap:20px}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.about-copy{max-width:530px}.about-copy>p{color:var(--legacy-b8bdb3)}.about-copy .lead{font-size:22px;color:var(--text);margin-bottom:28px}.belief-tags{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px}.belief-tags span{font-size:13px;padding-bottom:6px;border-bottom:1px solid var(--legacy-738065)}.ecosystem{background:var(--paper);color:var(--legacy-22291f)}.ecosystem .section-label{color:var(--legacy-626b5a);border-color:var(--legacy-bdc4b4)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-heading>p{font-size:15px;color:var(--muted)}.ecosystem .section-heading>p{color:var(--legacy-5c6556)}.system-flow{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--legacy-aeb8a4);border-bottom:1px solid var(--legacy-aeb8a4)}.system-flow button{padding:26px 20px;border-right:1px solid var(--legacy-c7cebf);transition:background .2s}.system-flow button:first-child{padding-left:0}.system-flow button:last-child{border:0}.system-flow button:hover{background:var(--legacy-dce2d4);text-decoration:none}.system-flow span{font-size:12px;color:var(--legacy-5d6756)}.system-flow h3{font-size:32px;margin:0 0 10px}.system-flow p{font-size:14px;color:var(--legacy-58614f)}.system-note{text-align:right;margin-top:20px;font-size:14px;color:var(--legacy-5c6556)}.services{background:var(--legacy-171a16)}.service-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:7%}.question-list{display:flex;flex-direction:column}.question-list button{background:transparent;text-align:left;border:0;border-bottom:1px solid var(--line);padding:24px 10px;display:grid;grid-template-columns:28px 1fr 20px;gap:12px;font-size:17px;align-items:center}.question-list button:first-child{border-top:1px solid var(--line)}.question-list button>span{font-size:12px;color:var(--muted)}.question-list button[aria-pressed=true]{background:var(--legacy-282f23);color:var(--legacy-e4edd6)}.question-list button:hover{background:var(--legacy-252b21)}.service-result{padding:32px;background:var(--legacy-dce4d1);color:var(--legacy-22291c);min-height:365px}.service-result h3{font-size:30px;margin:22px 0 18px}.service-result>p{font-size:16px}.service-start{margin-top:25px;padding-top:20px;border-top:1px solid var(--legacy-aebaa0)}.service-start>span{font-size:12px;color:var(--legacy-526046)}.service-start>p{margin-top:8px}.text-link{display:inline-block;margin-top:24px;border-bottom:1px solid;font-size:14px}.approach{background:var(--bg)}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:5%}.pillars article{border-top:1px solid var(--legacy-75816b);padding-top:22px}.pillars h3{font-size:36px;margin:30px 0 20px}.pillars p{color:var(--legacy-aeb6a6)}.pillars .pillar-lead{color:var(--text);margin-bottom:10px}.insights{background:var(--legacy-1c201a)}.note-filters{display:flex;gap:6px;flex-wrap:wrap}.note-filters button{background:transparent;border:1px solid transparent;padding:7px 14px;font-size:14px}.note-filters button[aria-pressed=true]{border-color:var(--legacy-aab69d)}.note-filters button:hover{background:var(--legacy-30362b)}.note-count{font-size:12px;color:var(--muted);margin:-20px 0 20px}.notes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.note{border-top:1px solid var(--line);padding-top:24px;display:flex;flex-direction:column;align-items:start;min-height:320px}.note h3{font-size:25px;margin:26px 0 20px}.note>p,.note blockquote{color:var(--legacy-bec5b6);font-size:16px;line-height:1.9}.note-source{font-size:12px;color:var(--legacy-929e87);margin-top:auto;padding-top:25px}.note[hidden]{display:none}.contact{background:var(--paper);color:var(--legacy-20271b)}.contact .section-label{color:var(--legacy-5c6752);border-color:var(--legacy-b4bfa9)}.contact h2 em{color:var(--legacy-657652)}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.contact-grid>div>p{font-size:18px}.contact-prompts{padding-left:20px;font-size:14px;color:var(--legacy-566449);margin:25px 0}.pending{font-size:14px!important;border-top:1px solid var(--legacy-bbc5af);padding-top:18px;color:var(--legacy-5b6650)}.contact .button.light{background:var(--legacy-22291c);color:var(--legacy-eff2e8)}footer{max-width:1600px;margin:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;padding:40px 5%;font-size:12px}footer p{color:var(--muted)}footer small{font-size:12px}.social{display:flex;gap:20px}.social:empty{display:none}.article{max-width:850px;margin:auto;padding:70px 24px}.article h1{font-size:42px}.prose{margin:35px 0}.article-card{display:block;padding:25px;border-top:1px solid var(--line)}.articles{margin-top:30px}.articles:empty{display:none}
@media(min-width:1700px){.section{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}}@media(max-width:900px){.hero{gap:0 4%;}.hero-visual{min-height:500px}h1{font-size:clamp(2.5rem,5.6vw,4rem)}.header nav{gap:20px}.section{padding-top:65px;padding-bottom:65px}.section-heading{align-items:start;flex-direction:column;gap:20px}.about-grid{gap:5%}.service-layout{gap:4%;grid-template-columns:1fr 1fr}.question-list button{font-size:15px}.service-result{padding:25px}.notes{gap:20px}.note h3{font-size:22px}}@media(max-width:600px){.header{padding:20px 6%;flex-wrap:wrap}.brand{font-size:27px}.header nav{width:100%;justify-content:space-between;gap:10px;font-size:13px}.hero{grid-template-columns:1fr;padding:30px 6% 0}.hero-copy{padding:0 0 30px}h1{font-size:clamp(2.5rem,10.3vw,4rem);margin:27px 0 20px}.hero-intro br{display:none}.hero-visual{min-height:330px}.hero-visual img{object-position:50% 62%}.hero-bottom{margin-top:25px;gap:12px;flex-wrap:wrap}.hero-bottom span:nth-child(2){display:none}.hero-role{display:inline-block;margin-left:14px;font-size:12px}.button{padding:12px 17px;gap:26px}.section{padding:55px 6%}.section-label{margin-bottom:35px;font-size:12px}.section-label span:last-child{max-width:45%;text-align:right;font-size:12px;letter-spacing:.04em}.about-grid,.service-layout,.contact-grid{grid-template-columns:1fr;gap:30px}.about-copy .lead{font-size:20px}.system-flow{grid-template-columns:1fr}.system-flow button,.system-flow button:first-child{padding:18px 0;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;border-right:0;border-bottom:1px solid var(--legacy-bdc4b4)}.system-flow h3{font-size:25px;margin:0}.system-flow p{text-align:right}.pillars,.notes{grid-template-columns:1fr;gap:32px}.pillars h3{margin:18px 0 12px}.note{min-height:0}.note-source{margin-top:0}.note-filters{gap:3px}.note-filters button{padding:6px 12px}.service-result{min-height:350px}.question-list button{font-size:16px;padding:21px 5px}.section-heading>p{font-size:16px}.contact-grid>div>p{font-size:16px}footer{padding:35px 6%;align-items:start;flex-direction:column;gap:20px}.hero-role{display:block;margin-left:0}.hero-bottom a{font-size:12px}.article h1{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Supplied LO.Belief artwork; original colors and proportions preserved. */
.brand{align-items:center;gap:14px}.brand-logo{display:block;width:100px;height:100px;object-fit:contain;flex:none;background:var(--black)}.brand .brand-name{font-size:26px;font-weight:700;letter-spacing:-.04em}.header{padding-top:12px;padding-bottom:12px}.brand-art{margin-top:36px;max-width:440px}.brand-art img{display:block;width:100%;height:auto}.brand-art figcaption{font-size:12px;color:var(--muted);letter-spacing:.08em;margin-top:12px}footer .brand-logo{width:86px;height:86px}@media(max-width:600px){.brand-logo{width:80px;height:80px}.brand .brand-name{font-size:24px}.header{gap:16px}.brand-art{max-width:100%;margin-top:28px}}
/* User-supplied working portrait: keep the face and cutting action visible. */
.hero-photo img{object-position:50% 25%}.hero-photo:after{box-shadow:none}.hero-photo .image-label{top:auto;bottom:18px;left:18px;right:18px;padding:10px 12px;background:rgba(0,0,0,.68);color:var(--white)}@media(max-width:600px){.hero-photo{min-height:0;aspect-ratio:2/3}.hero-photo img{object-position:center}}
/* Add background details only to the existing experience / motto strip. */
.hero-bottom{flex-wrap:wrap}.hero-profile-note{flex-basis:100%;border-top:1px solid var(--line);padding-top:16px;margin-top:4px;font-size:14px;letter-spacing:0;line-height:1.9}.hero-profile-note p+p{margin-top:6px}
/* Bilingual about headline: Chinese leads, English provides a quiet second layer. */
.growth-heading{font-size:clamp(2rem,3.4vw,3.3rem);font-weight:500;line-height:1.6;letter-spacing:.025em;color:var(--legacy-f2f2f2)}.growth-heading span{font-size:.78em;font-weight:400;color:var(--legacy-c6c6c6);letter-spacing:.015em}.growth-translation{margin-top:24px!important;padding-left:18px;border-left:1px solid var(--legacy-747474);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.7;letter-spacing:.025em;color:var(--legacy-aaa)}@media(max-width:600px){.growth-heading{font-size:clamp(1.8rem,7.5vw,2.5rem)}.growth-translation{margin-top:18px!important;padding-left:14px;font-size:1rem}}
.growth-heading .growth-keyword{font-size:1.28em;font-weight:500;line-height:1.35;letter-spacing:.06em;color:var(--legacy-f2f2f2)}.growth-heading .growth-continuation{display:inline-block;margin-top:12px;font-size:.78em;font-weight:400;color:var(--legacy-c6c6c6)}
/* Keep the capability headline horizontal, with a distinct framework label. */
.approach .section-heading{align-items:flex-start;flex-direction:column;gap:22px}.capability-title{display:flex;align-items:center;flex-wrap:wrap;gap:18px 28px;width:100%}.capability-title h2{font-size:clamp(1.75rem,3.3vw,3.3rem);line-height:1.5;letter-spacing:.01em;text-wrap:balance}.triangle-label{display:inline-flex;align-items:center;flex-shrink:0;border:1px solid var(--legacy-70766a);border-left:3px solid var(--legacy-dce4d1);padding:8px 18px;font-size:14px;line-height:1.6;letter-spacing:.18em;color:var(--legacy-e4e8de);background:var(--legacy-1c201a)}.approach .section-heading>p{line-height:1.9}@media(max-width:600px){.capability-title{gap:14px}.capability-title h2{font-size:clamp(1.35rem,5.2vw,1.9rem);letter-spacing:0}.triangle-label{padding:6px 13px;font-size:13px}.approach .section-heading{gap:18px}}
.capability-summary{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px}.capability-summary p{font-size:16px;line-height:1.9;color:var(--muted)}.capability-summary .triangle-label{border:1px solid var(--legacy-858585);background:transparent;box-shadow:none;border-radius:0;padding:8px 16px;color:var(--legacy-e4e4e4);letter-spacing:.12em}
/* Notes remain visible; category selection lights up the matching card. */
.insights .note-filters button{border:1px solid transparent;border-radius:0;box-shadow:none}.insights .note-filters button[aria-pressed="true"],.insights .note-filters button[aria-pressed="true"]:hover{background:var(--paper);border-color:var(--paper);color:var(--legacy-20271b)}.insights .note{border:1px solid var(--line);padding:26px;min-width:0;background:transparent;border-radius:0;box-shadow:none}.insights .note.is-selected{background:var(--paper);border-color:var(--paper);color:var(--legacy-20271b)}.insights .note.is-selected>p,.insights .note.is-selected blockquote,.insights .note.is-selected .note-source{color:var(--legacy-46513d)}@media(max-width:600px){.insights .note{padding:22px}}
/* Join the three note panels into one continuous frame. */
.insights .notes{gap:0;border:1px solid var(--line)}.insights .notes .note{border:0;border-right:1px solid var(--line);padding:26px}.insights .notes .note:last-child{border-right:0}.insights .notes .note.is-selected{border-color:var(--line)}@media(max-width:600px){.insights .notes .note{border-right:0;border-bottom:1px solid var(--line);padding:22px}.insights .notes .note:last-child{border-bottom:0}}
/* Tighter rhythm for the patience and curiosity quote only. */
.insights .note[data-category="belief"] blockquote{line-height:1.65}.insights .note[data-category="belief"] blockquote p+p{margin-top:8px}
.contact-details{margin-top:28px;padding-top:20px;border-top:1px solid var(--legacy-bbc5af)}.contact-label{font-size:14px;color:var(--legacy-566449);margin-bottom:10px}.contact-email{font-size:16px;overflow-wrap:anywhere;display:inline-block;padding:6px 0}.contact .social{margin-top:16px;gap:12px 24px;flex-wrap:wrap}.contact .social a{padding:8px 0;font-size:15px}
/* Responsive refinement: readable tablet cards and comfortable touch targets. */
.header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.note-filters button{min-height:44px;min-width:60px}.contact .social a,.contact-email{min-height:44px;display:inline-flex;align-items:center}.hero-copy,.hero-visual,.about-grid>*,.service-layout>*,.contact-grid>*{min-width:0}.notes{grid-template-columns:repeat(3,minmax(0,1fr))}.note p,.note blockquote{overflow-wrap:anywhere}.header nav{flex-wrap:wrap}.capability-summary{max-width:100%}
@media(max-width:600px){.notes{grid-template-columns:minmax(0,1fr)}.insights .notes .note{border-right:0;border-bottom:1px solid var(--line);min-height:0}.insights .notes .note:last-child{border-bottom:0}.insights .note-source{margin-top:0}.section-label{letter-spacing:.08em}.header nav{gap:10px 20px}}
@media(max-width:600px){.header nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:100%;font-size:14px}.header nav a{padding:4px 2px}.note-filters{gap:8px}.note-filters button{font-size:16px;padding:8px 16px}.hero-intro,.about-copy>p,.pillars p{font-size:16px}.hero-bottom{gap:10px 16px}.hero-profile-note{font-size:14px}.contact-email{font-size:15px;max-width:100%}.section-label{flex-wrap:wrap}.section-label span:last-child{overflow-wrap:anywhere}.capability-summary p{font-size:16px}.service-result{min-height:0}.contact-grid br{display:none}}

/* Preserve deliberate type sizes while allowing pinch zoom. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}

/* Larger controls for the three insight categories. */
.insights .note-filters button{font-size:26px;line-height:1.5;min-width:112px;min-height:68px;padding:14px 26px}

/* Phone only: stack content up to 600px; preserve tablet and desktop columns. */
@media(max-width:600px){
.hero,.about-grid,.service-layout,.contact-grid,.pillars,.notes{grid-template-columns:minmax(0,1fr)}
.hero{gap:30px}.hero-photo{min-height:0;aspect-ratio:2/3}.hero-photo img{object-position:center}
.about-grid,.service-layout,.contact-grid,.pillars{gap:32px}
.section-heading{align-items:flex-start;flex-direction:column;gap:24px}
.system-flow{grid-template-columns:1fr}.system-flow button,.system-flow button:first-child{border-right:0;border-bottom:1px solid var(--legacy-bdc4b4);padding:20px 0}
.insights .notes .note{border-right:0;border-bottom:1px solid var(--line);min-height:0}.insights .notes .note:last-child{border-bottom:0}
.header{flex-wrap:wrap}.header nav{flex-wrap:wrap}.hero-bottom{flex-wrap:wrap;gap:16px}
}
@media(max-width:600px){
.insights .note-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px}
.insights .note-filters button{min-width:0;min-height:56px;font-size:20px;padding:12px 8px}
}

/* Borderless raised category controls, with a pressed selected state. */
.insights .note-filters button{
  border:0;border-radius:999px;background:linear-gradient(145deg,var(--legacy-394034),var(--legacy-272d23));
  color:var(--text);font-weight:600;
  box-shadow:0 5px 0 var(--legacy-10150e),0 8px 16px var(--legacy-0004),inset 0 1px 0 var(--legacy-ffffff18);
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
@media(hover:hover){.insights .note-filters button:hover{transform:translateY(-2px);background:linear-gradient(145deg,var(--legacy-454e3e),var(--legacy-30382b));box-shadow:0 7px 0 var(--legacy-10150e),0 10px 18px var(--legacy-0005),inset 0 1px 0 var(--legacy-ffffff20)}}
.insights .note-filters button:active,
.insights .note-filters button[aria-pressed="true"],
.insights .note-filters button[aria-pressed="true"]:hover{
  border:0;background:var(--paper);color:var(--legacy-20271b);transform:translateY(3px);
  box-shadow:0 2px 0 var(--legacy-858e79),0 3px 7px var(--legacy-0003),inset 0 2px 3px var(--legacy-20271b18);
}
.insights .note-filters button:focus-visible{outline:2px solid var(--paper);outline-offset:6px}

/* Style study 01: warm monochrome. Phone-only stacking retained. */
:root{--bg:var(--legacy-171817);--panel:var(--legacy-232523);--paper:var(--legacy-efede6);--text:var(--legacy-f0eee7);--muted:var(--legacy-babbb4);--line:var(--legacy-444742);--accent:var(--legacy-d2b99b)}
.preview-ribbon{background:var(--legacy-d2b99b);color:var(--legacy-25231f);padding:8px 5%;font-size:11px;letter-spacing:.14em;text-align:center}
.header{max-width:none;padding:18px 5%;border-bottom:1px solid var(--line)}
.brand-logo{width:66px;height:66px}.brand .brand-name{letter-spacing:.12em;font-size:22px}
.header nav a{font-size:13px;letter-spacing:.08em}.header nav a:last-child{color:var(--accent)}
.section{padding-top:100px;padding-bottom:100px}.section-label{font-size:11px;letter-spacing:.18em;margin-bottom:56px}
.about{position:relative;background:var(--paper);color:var(--legacy-222622);padding-top:48px}
.about .section-label{color:var(--legacy-62675d);border-color:var(--legacy-babfb3)}
.about-grid{grid-template-columns:1.15fr 1fr;gap:9%}
.growth-heading{color:var(--legacy-222622);font-family:"Songti TC","Noto Serif TC",serif;letter-spacing:.015em;line-height:1.4}
.growth-heading .growth-keyword{font-size:clamp(3.8rem,6.5vw,7rem);font-weight:500;color:var(--legacy-222622)}
.growth-heading .growth-continuation{font-size:clamp(1.4rem,2.6vw,2.7rem);color:var(--legacy-555c50)}
.growth-translation{color:var(--legacy-797566);border-color:var(--legacy-a4937e);font-style:italic}
.brand-art{max-width:300px;margin-top:42px}.brand-art img{mix-blend-mode:multiply}.brand-art figcaption{font-size:10px;color:var(--legacy-646858);letter-spacing:.08em}
.about-copy{padding-top:12px}.about-copy .lead{font-family:"Songti TC",serif;font-size:clamp(1.35rem,2.2vw,2.1rem);line-height:1.8;color:var(--legacy-222622)}
.about-copy>p{color:var(--legacy-596051)}.belief-tags{gap:12px;flex-wrap:wrap}.belief-tags span{border-color:var(--legacy-969d88);font-size:13px}
.hero{padding-top:90px;gap:0 7%}.hero h1{font-family:"Songti TC",serif;font-weight:500;font-size:clamp(2.8rem,4.7vw,5rem)}
.hero-copy .eyebrow{color:var(--accent)}.hero-photo{border-radius:3px}.hero-photo img{filter:contrast(1.04)}
.hero-bottom{padding:28px 0;margin-top:46px}.hero-profile-note{line-height:1.9}
.button.light{background:var(--paper);color:var(--legacy-242820);border:0;padding:17px 26px;border-radius:3px}
.ecosystem{background:var(--legacy-dddcd2);color:var(--legacy-242820)}.ecosystem .section-label{color:var(--legacy-62675d);border-color:var(--legacy-a9af9f)}.system-note{color:var(--legacy-5e6654)}
.services{background:var(--legacy-202320)}.services .section-heading{margin-bottom:42px}
.service-catalog{border-top:1px solid var(--legacy-555d50);margin:0 0 64px}
.catalog-item{border-bottom:1px solid var(--legacy-555d50)}.catalog-item summary{display:grid;grid-template-columns:50px 1fr 40px;gap:20px;align-items:center;padding:28px 0;cursor:pointer;list-style:none}
.catalog-item summary::-webkit-details-marker{display:none}.catalog-no{font-family:Georgia,serif;font-style:italic;font-size:20px;color:var(--accent)}
.catalog-item small{display:block;font-size:10px;letter-spacing:.15em;color:var(--legacy-b9bfb0);margin-bottom:5px}.catalog-item strong{font-size:24px;font-weight:500}
.catalog-plus{font-size:28px;text-align:center;transition:transform .2s}.catalog-item[open] .catalog-plus{transform:rotate(45deg)}
.catalog-item summary:hover{color:var(--accent)}.catalog-item summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.catalog-body{padding:0 60px 32px 70px;max-width:900px;color:var(--legacy-c0c5b8)}.catalog-body p{margin-top:12px}.catalog-body ul{padding-left:20px;margin:18px 0 24px}.catalog-audience{color:var(--legacy-f0eee7)}
.draft-label{display:inline-block;background:var(--legacy-d2b99b);color:var(--legacy-25231f);font-size:12px;padding:3px 10px;border-radius:3px}
.service-result{background:var(--paper);border-radius:3px}.approach{background:var(--legacy-171817)}.pillars{gap:40px}.pillars article{border-top-color:var(--legacy-81705b)}.pillars h3{font-family:"Songti TC",serif}
.insights{background:var(--legacy-282b26)}.insights .notes{border-color:var(--legacy-555c4d)}.insights .note h3{font-family:"Songti TC",serif}.insights .note.is-selected{background:var(--paper)}
.contact{background:var(--paper);color:var(--legacy-242820)}.contact em{color:var(--legacy-747b60)}.contact .section-label{color:var(--legacy-62675d)}
footer{background:var(--legacy-171817)}footer .brand-logo{width:60px;height:60px}
@media(min-width:601px) and (max-width:900px){.catalog-item strong{font-size:21px}.hero h1{font-size:2.8rem}.about-grid{gap:6%}.brand-art{max-width:100%}}
@media(max-width:600px){
.header{padding:16px 6%}.header nav{font-size:12px}.brand-logo{width:56px;height:56px}
.section{padding:56px 6%}.section-label{margin-bottom:34px}.about-grid{grid-template-columns:1fr;gap:36px}
.growth-heading .growth-keyword{font-size:4.2rem}.growth-heading .growth-continuation{font-size:1.55rem}.brand-art{max-width:240px}
.about-copy .lead{font-size:1.4rem}.hero{padding:50px 6% 0;gap:24px}.hero h1{font-size:2.65rem}.hero-bottom{margin-top:18px}
.catalog-item summary{grid-template-columns:28px 1fr 24px;gap:12px;padding:22px 0}.catalog-item strong{font-size:20px}.catalog-item small{font-size:9px}
.catalog-body{padding:0 8px 28px 40px;font-size:15px}.service-catalog{margin-bottom:42px}.pillars{gap:28px}
}
@media(prefers-reduced-motion:reduce){.catalog-plus{transition:none}}

/* v0.4 服務卡：B、C 用 Stone 色塊 */
.catalog-item.is-stone{background:var(--stone);color:var(--charcoal);border-bottom-color:var(--stone);padding:0 24px;margin-top:12px}
.catalog-item.is-stone small,.catalog-item.is-stone .catalog-body{color:var(--charcoal)}
.catalog-item.is-stone .catalog-no,.catalog-item.is-stone summary:hover{color:var(--charcoal)}
.catalog-item.is-stone .catalog-audience{color:var(--charcoal)}
.catalog-label{font-size:12px;letter-spacing:.12em;margin-top:22px!important;opacity:.85}
.catalog-body ul{margin:8px 0 12px}
.catalog-note{font-size:14px;border-top:1px solid currentColor;padding-top:12px;margin-top:20px!important;opacity:.9}
@media(max-width:600px){.catalog-item.is-stone{padding:0 14px}}

/* ===== 設計總監 11/13：淺色為主＋一段深色過渡（只動顏色，不動文案與結構） ===== */
:root{--bg:var(--rice);--panel:var(--white);--paper:var(--rice);--text:var(--charcoal);--muted:var(--charcoal);--line:var(--warm-gray);--accent:var(--warm-gray)}
body{background:var(--rice);color:var(--charcoal)}
.preview-ribbon{background:var(--stone);color:var(--charcoal)}
.header{background:var(--rice)}
.header nav a:last-child{color:var(--charcoal);text-decoration:underline;text-underline-offset:6px}
/* 區塊節奏：米白 → 深色過渡 → Stone → 米白 → Stone → 米白 → 白 → Stone */
.about{background:var(--rice)}
.ecosystem{background:var(--stone)}
.services{background:var(--rice)}
.approach{background:var(--stone)}
.insights{background:var(--rice)}
.contact{background:var(--white)}
footer{background:var(--stone);color:var(--charcoal);max-width:none}
.catalog-no{color:var(--charcoal)}
.catalog-item summary:hover{color:var(--charcoal)}
.catalog-item summary:focus-visible{outline-color:var(--charcoal)}
.question-list button[aria-pressed=true],.question-list button[aria-pressed=true]:hover{background:var(--charcoal);color:var(--rice)}
.question-list button[aria-pressed=true]>span{color:var(--rice)}
.service-result{background:var(--white)}
.triangle-label{background:transparent}
/* 觀點分類：淺色立體按鈕，選取時反白 */
.insights .note-filters button{background:linear-gradient(145deg,var(--white),var(--stone));color:var(--charcoal)}
@media(hover:hover){.insights .note-filters button:hover{background:linear-gradient(145deg,var(--white),var(--stone))}}
.insights .note-filters button:active,.insights .note-filters button[aria-pressed="true"],.insights .note-filters button[aria-pressed="true"]:hover{background:var(--charcoal);color:var(--rice)}
.insights .note-filters button:focus-visible{outline-color:var(--charcoal)}
.insights .note.is-selected{background:var(--stone);border-color:var(--line)}
.skip{background:var(--charcoal);color:var(--rice)}

/* ===== 唯一的深色過渡段：從一雙手… ===== */
.hero{max-width:none;background:var(--charcoal);color:var(--rice);
  padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2));
  --text:var(--rice);--muted:var(--stone);--paper:var(--rice);--accent:var(--stone);--line:var(--warm-gray);
  --legacy-b8bdb3:var(--stone)}
.hero h1{color:var(--rice)}
.hero h1 em{color:var(--warm-gray)}
.hero .button.light{background:var(--rice);color:var(--charcoal)}
.hero .button:hover{background:var(--stone)}
.hero a:focus-visible{outline-color:var(--rice)}
@media(max-width:600px){.hero{padding-left:6%;padding-right:6%}}

/* ===== V1 有照版：現場照低彩度＋深色遮罩 ===== */
.hero-photo{background:var(--black)}
.hero-photo img{filter:grayscale(1) contrast(1.02) brightness(.86)}
.hero-photo:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:none;
  background:linear-gradient(to top,color-mix(in srgb,var(--black) 62%,transparent) 0%,transparent 38%),color-mix(in srgb,var(--charcoal) 12%,transparent)}
.hero-photo .image-label{z-index:1;background:transparent;color:var(--rice)}
/* 標籤對比加強：照片下緣遮罩加深，讓 12px 小標在任何畫面位置都 ≥4.5:1 */
.hero-photo:after{background:linear-gradient(to top,color-mix(in srgb,var(--black) 82%,transparent) 0%,color-mix(in srgb,var(--black) 55%,transparent) 16%,transparent 40%)}
/* 最小字級：英文小標不低於 11px、中文小標 12px（原 9–10px 太小） */
.catalog-item small,.brand-art figcaption{font-size:11px!important}
.section-label{font-size:12px}

/* 白底 Logo 融入底色（設計總監 11/13）：multiply 讓白色透出米白／Stone 底 */
.brand-logo{mix-blend-mode:multiply;background:transparent}
/* Logo 裁切版尺寸（設計總監 11/13）：頁首 72/52、頁尾 120/96 */
.header .brand-logo{width:72px;height:72px}
footer .brand-logo{width:120px;height:120px}
@media(max-width:600px){.header .brand-logo{width:52px;height:52px}footer .brand-logo{width:96px;height:96px}}

.catalog-heading{margin:64px 0 20px}.catalog-heading h3{margin-top:6px}.service-next{margin-top:16px}.catalog-item{scroll-margin-top:96px}
.service-contact{margin-top:64px;padding:40px;border-radius:3px}.service-contact h2{margin-top:0}.contact-qr{display:flex;flex-direction:column;align-items:flex-start}.contact-qr img{width:200px;height:200px;padding:20px;background:var(--white);border:1px solid var(--line);box-sizing:content-box}.contact-qr .contact-label{margin:12px 0 0}.line-button{margin-top:16px;min-height:44px}@media(max-width:600px){.service-contact{padding:28px 20px}.contact-qr img{width:160px;height:160px;padding:16px}}
@media(max-width:600px){.header nav{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* 2026-11-14 僅兩處改動：全螢幕選單、第一屏處境句。其餘樣式不動。 */
.header{position:relative;z-index:50}
.menu-toggle{
  width:44px;height:44px;flex:none;
  display:inline-flex;align-items:center;justify-content:center;
  background:none;border:0;padding:0;color:inherit;cursor:pointer;
  position:relative;z-index:51;touch-action:manipulation;-webkit-tap-highlight-color:transparent
}
.menu-toggle-lines{position:relative;width:22px;height:14px;display:block}
.menu-toggle-lines span{
  position:absolute;left:0;right:0;height:1.5px;background:var(--charcoal);
  transition:transform .25s ease,opacity .2s ease,top .25s ease
}
.menu-toggle-lines span:nth-child(1){top:0}
.menu-toggle-lines span:nth-child(2){top:6px}
.menu-toggle-lines span:nth-child(3){top:12px}
body.is-menu-open{overflow:hidden}
body.is-menu-open .menu-toggle-lines span{background:var(--white)}
body.is-menu-open .menu-toggle-lines span:nth-child(1){top:6px;transform:rotate(45deg)}
body.is-menu-open .menu-toggle-lines span:nth-child(2){opacity:0}
body.is-menu-open .menu-toggle-lines span:nth-child(3){top:6px;transform:rotate(-45deg)}
body.is-menu-open .header{border-bottom-color:transparent;background:transparent}
body.is-menu-open .brand-name{color:var(--white)}
body.is-menu-open .header .brand-logo{visibility:hidden}

.menu-overlay{
  position:fixed;inset:0;z-index:45;
  background:var(--black);
  color:var(--white);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:96px 24px calc(16vw + 120px);
}
.menu-overlay[hidden]{display:none}
.menu-nav{display:flex;flex-direction:column;align-items:center;gap:8px}
.menu-nav a{
  font-family:"Songti TC","Noto Serif TC",serif;
  font-weight:400;
  font-size:clamp(2rem,6vw,3.4rem);
  line-height:1.35;
  letter-spacing:.12em;
  padding:6px 12px;
  color:var(--white);
  text-decoration:none
}
.menu-nav a:hover,.menu-nav a:focus-visible{opacity:.75}
.menu-footer{
  position:absolute;left:0;right:0;bottom:max(20px,1.25vh);
  display:flex;flex-direction:column;align-items:center;gap:20px;
  pointer-events:none
}
.menu-social{
  position:static;
  display:flex;justify-content:center;gap:28px;
  pointer-events:auto
}
.menu-social a{
  width:44px;height:44px;
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--white);text-decoration:none
}
.menu-social a:hover{opacity:.75}
.menu-social-word{font-family:-apple-system,BlinkMacSystemFont,"PingFang TC","Microsoft JhengHei",sans-serif;font-size:13px;letter-spacing:.14em;font-weight:500}
.menu-logo{
  display:block;
  width:14.13vw;
  max-width:160px;
  height:auto;
  pointer-events:none
}

.hero-situation{
  font-family:"Songti TC","Noto Serif TC",serif;
  font-weight:400;
  font-size:clamp(1rem,1.6vw,1.25rem);
  line-height:1.7;
  letter-spacing:.02em;
  color:var(--charcoal);
  margin:0 0 22px;
  text-wrap:pretty
}
.hero-situation .situation-rest{display:block}
@media(max-width:600px){
  .header{flex-wrap:nowrap}
  .hero-situation{font-size:1rem;line-height:1.65;margin-bottom:16px}
}


/* 2026-11-14 五環節彈窗預覽：列表改為按鈕並新增正方形彈窗，其餘不動。 */
.system-flow button{
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  margin:0;
  font:inherit;
  color:inherit;
  text-align:left;
  width:100%;
  box-sizing:border-box;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  min-height:44px;
  position:relative;
  border-top:0;
  border-bottom:0;
  border-left:0;
}
.system-item-icon{
  position:absolute;
  top:26px;
  right:8px;
  width:10px;
  height:10px;
  pointer-events:none;
  opacity:.4;
}
.system-item-icon::before,
.system-item-icon::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  background:currentColor;
  transform:translate(-50%,-50%);
}
.system-item-icon::before{width:10px;height:1px}
.system-item-icon::after{width:1px;height:10px}
@media(max-width:600px){
  .system-flow{
    border-top:1px solid var(--legacy-bdc4b4);
    border-bottom:1px solid var(--legacy-bdc4b4);
  }
  .system-flow button,
  .system-flow button:first-child,
  .system-flow button:last-child{
    padding-right:28px;
    display:grid;
    grid-template-columns:1fr 1.1fr;
    align-items:center;
    border-right:0;
    border-left:0;
    border-top:0;
    border-bottom:1px solid var(--legacy-bdc4b4);
  }
  .system-flow button:last-child{border-bottom:0}
  .system-item-icon{top:50%;right:2px;margin-top:-5px}
}

.ring-modal{
  position:fixed;
  inset:0;
  z-index:60;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.ring-modal[hidden]{display:none}
.ring-modal.is-closing{pointer-events:none}
.ring-modal-backdrop{
  position:absolute;
  inset:0;
  margin:0;
  padding:0;
  border:0;
  appearance:none;
  -webkit-appearance:none;
  background:rgba(0,0,0,.55);
  background-color:rgba(0,0,0,.55);
  cursor:pointer;
  opacity:0;
  transition:opacity .28s ease;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  will-change:opacity;
}
.ring-modal-card{
  position:relative;
  z-index:1;
  width:min(86vw,420px);
  aspect-ratio:1;
  background:#000;
  background-color:#000;
  color:#F6F4EF;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:56px 32px 96px;
  font-family:"Songti TC","Noto Serif TC","Noto Serif CJK TC",serif;
  opacity:0;
  transform:scale(.96);
  transition:opacity .28s ease,transform .28s ease;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  will-change:opacity,transform;
}
.ring-modal.is-open .ring-modal-backdrop{opacity:1}
.ring-modal.is-open .ring-modal-card{opacity:1;transform:scale(1)}
.ring-modal-close{
  position:absolute;
  top:8px;
  right:8px;
  width:44px;
  height:44px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#F6F4EF;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.ring-modal-close span{
  display:block;
  position:relative;
  width:16px;
  height:16px;
  margin:0 auto;
}
.ring-modal-close span::before,
.ring-modal-close span::after{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:16px;
  height:1.5px;
  background:currentColor;
}
.ring-modal-close span::before{transform:rotate(45deg)}
.ring-modal-close span::after{transform:rotate(-45deg)}
.ring-modal-num{
  margin:0 0 14px;
  font-size:12px;
  letter-spacing:.16em;
  opacity:.7;
}
.ring-modal-card h3{
  margin:0 -.14em 18px 0;
  font-weight:400;
  font-size:clamp(2rem,7vw,2.75rem);
  letter-spacing:.14em;
  line-height:1.3;
  color:#F6F4EF;
  display:inline-block;
  position:relative;
  padding-bottom:.06em;
}
.ring-modal-card h3::after{
  content:"";
  position:absolute;
  left:0;
  right:.14em;
  bottom:0;
  height:1px;
  background:#F6F4EF;
  pointer-events:none;
}
.ring-modal-card #ring-modal-desc{
  margin:0;
  max-width:16em;
  font-size:clamp(1.05rem,3.2vw,1.25rem);
  line-height:1.7;
  letter-spacing:.04em;
  color:#F6F4EF;
}
.ring-modal-logo{
  position:absolute;
  left:50%;
  bottom:16px;
  transform:translateX(-50%);
  display:block;
  width:54px;
  height:auto;
  pointer-events:none;
}
@media(prefers-reduced-motion:reduce){
  .ring-modal-backdrop,
  .ring-modal-card{transition:none}
}

/* ===== 2026-11-14 諮詢表單預覽（未上線） ===== */
.catalog-price{
  font-family:"Songti TC","Noto Serif TC","Noto Serif CJK TC",serif;
  font-size:20px;
  letter-spacing:.06em;
  margin:20px 0 0;
  color:inherit;
}
.consult{
  background:var(--stone);
  padding-top:72px;
  padding-bottom:72px;
}
.consult-card{
  display:block;
  width:100%;
  max-width:720px;
  margin:0 auto;
  padding:40px 36px 32px;
  background:var(--white);
  color:var(--charcoal);
  border:1px solid color-mix(in srgb,var(--charcoal) 12%,transparent);
  border-radius:4px;
  text-align:left;
  font:inherit;
}
.consult-card-copy p{
  margin:0 0 .4em;
  font-size:16px;
  line-height:1.85;
  color:var(--charcoal);
}
.consult-card-copy p:nth-child(4){margin-bottom:0}
.consult-card-copy p:last-child{margin:1.4em 0 0}
.consult-card-btn{
  display:block;
  width:fit-content;
  margin:28px auto 0;
  padding:12px 28px;
  background:var(--charcoal);
  color:var(--rice);
  border:0;
  border-radius:4px;
  font:inherit;
  font-size:15px;
  letter-spacing:.08em;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  box-shadow:
    inset 0 1px 0 color-mix(in srgb,var(--white) 22%,transparent),
    0 3px 0 color-mix(in srgb,var(--charcoal) 72%,var(--black)),
    0 6px 12px color-mix(in srgb,var(--charcoal) 22%,transparent);
}
.consult-card-btn:hover{filter:brightness(1.06)}
.consult-card-btn:active{
  transform:translateY(2px);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb,var(--white) 12%,transparent),
    0 1px 0 color-mix(in srgb,var(--charcoal) 72%,var(--black)),
    0 3px 6px color-mix(in srgb,var(--charcoal) 18%,transparent);
}
.consult-card-btn:focus-visible{outline:2px solid var(--charcoal);outline-offset:4px}

.consult-panel{
  position:fixed;
  inset:0;
  z-index:70;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
}
.consult-panel[hidden]{display:none}
.consult-panel.is-closing{pointer-events:none}
.consult-panel-backdrop{
  position:absolute;
  inset:0;
  margin:0;
  padding:0;
  border:0;
  appearance:none;
  -webkit-appearance:none;
  background:rgba(0,0,0,.55);
  background-color:rgba(0,0,0,.55);
  cursor:pointer;
  opacity:0;
  transition:opacity .28s ease;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  will-change:opacity;
}
.consult-panel-sheet{
  position:relative;
  z-index:1;
  width:min(92vw,680px);
  max-height:min(92vh,900px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  background:var(--rice);
  color:var(--charcoal);
  box-sizing:border-box;
  padding:32px 28px 40px;
  border-radius:4px;
  opacity:0;
  transform:scale(.98) translateY(8px);
  transition:opacity .28s ease,transform .28s ease;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  will-change:opacity,transform;
}
.consult-panel.is-open .consult-panel-backdrop{opacity:1}
.consult-panel.is-open .consult-panel-sheet{opacity:1;transform:scale(1) translateY(0)}
.consult-panel-head{
  position:relative;
  min-height:28px;
  margin-bottom:4px;
  padding-right:48px;
}
.consult-panel-close{
  position:absolute;
  top:-8px;
  right:-8px;
  width:44px;
  height:44px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--charcoal);
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.consult-panel-close span{
  display:block;
  position:relative;
  width:16px;
  height:16px;
  margin:0 auto;
}
.consult-panel-close span::before,
.consult-panel-close span::after{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:16px;
  height:1.5px;
  background:currentColor;
}
.consult-panel-close span::before{transform:rotate(45deg)}
.consult-panel-close span::after{transform:rotate(-45deg)}
.consult-narrative p{
  margin:0;
  font-size:16px;
  line-height:1.85;
}
.consult-form-heading{
  margin:36px 0 12px;
  font-family:"Songti TC","Noto Serif TC","Noto Serif CJK TC",serif;
  font-weight:400;
  font-size:clamp(1.2rem,3vw,1.5rem);
  letter-spacing:.04em;
  line-height:1.5;
}
.consult-form-lead{
  margin:0 0 18px;
  font-size:15px;
  line-height:1.8;
}
.consult-questions{
  margin:0 0 8px;
  padding-left:1.3em;
  font-size:15px;
  line-height:1.9;
  color:var(--charcoal);
}
.consult-form{margin:0}
.consult-field{margin:0 0 18px}
.consult-field-message{margin-top:0;margin-bottom:18px}
.consult-field label{
  display:block;
  text-align:left;
  margin:0 0 8px;
  font-size:13px;
  letter-spacing:.04em;
  color:var(--charcoal);
}
.consult-form input[type=text],
.consult-form input[type=email],
.consult-form textarea{
  display:block;
  width:100%;
  box-sizing:border-box;
  margin:0;
  background:var(--white);
  color:var(--charcoal);
  border:1px solid color-mix(in srgb,var(--charcoal) 16%,transparent);
  border-radius:4px;
  padding:11px 14px;
  font:inherit;
  font-size:16px;
  line-height:1.5;
  appearance:none;
  -webkit-appearance:none;
  outline:none;
}
.consult-form input[type=text],
.consult-form input[type=email]{height:46px}
.consult-form textarea{
  min-height:calc(46px * 4.5);
  height:calc(46px * 4.5);
  resize:vertical;
  line-height:1.7;
}
.consult-form input:focus,
.consult-form textarea:focus{
  border-color:color-mix(in srgb,var(--charcoal) 40%,transparent);
}
.consult-submit{
  display:inline-block;
  margin:6px 0 0;
  padding:12px 28px;
  background:var(--charcoal);
  color:var(--rice);
  border:0;
  border-radius:4px;
  font:inherit;
  font-size:15px;
  letter-spacing:.08em;
  cursor:pointer;
  touch-action:manipulation;
}
.consult-submit:disabled{opacity:.55;cursor:wait}
.consult-fallback,
.consult-privacy{
  margin:16px 0 0;
  font-size:13px;
  line-height:1.7;
  color:var(--warm-gray);
  text-align:left;
}
.consult-privacy{margin-top:8px}
.consult-fallback a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.consult-status{
  margin:18px 0 0;
  font-size:15px;
  line-height:1.8;
}
.consult-status a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.consult-status.is-error{color:var(--charcoal)}
.consult-form.is-success .consult-field,
.consult-form.is-success .consult-submit,
.consult-form.is-success .consult-honeypot{display:none}
.consult-honeypot{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}
@media(max-width:600px){
  .consult{padding-top:56px;padding-bottom:56px}
  .consult-card{padding:28px 20px 24px}
  .consult-panel{padding:0;align-items:stretch}
  .consult-panel-sheet{
    width:100%;
    max-height:100%;
    height:100%;
    border-radius:0;
    padding:24px 20px 40px;
  }
  .consult-card-copy p,
  .consult-narrative p{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
  .consult-panel-backdrop,
  .consult-panel-sheet,
  .consult-card-btn{transition:none}
}

/* ===== 2026-11-14 頂部固定預覽（未上線） ===== */
:root{--header-h:108px}
html{scroll-padding-top:var(--header-h)}
body{padding-top:var(--header-h)}
.header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  max-width:none;
  margin:0;
  z-index:50;
  background:var(--rice);
  border-bottom:1px solid transparent;
  box-shadow:none;
  transition:border-color .2s ease,box-shadow .2s ease;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
}
.header.is-scrolled{
  border-bottom-color:color-mix(in srgb,var(--warm-gray) 55%,transparent);
  box-shadow:0 1px 0 color-mix(in srgb,var(--charcoal) 6%,transparent);
}
body.is-menu-open .header{
  border-bottom-color:transparent;
  box-shadow:none;
  background:transparent;
}
.brand{min-width:0;flex:1 1 auto}
.brand .brand-name{
  white-space:nowrap;
  font-size:16px;
  letter-spacing:.04em;
  font-weight:700;
}
@media(min-width:601px){
  .brand .brand-name{font-size:20px;letter-spacing:.08em}
}
@media(min-width:901px){
  .brand .brand-name{font-size:22px;letter-spacing:.1em}
}
@media(max-width:600px){
  :root{--header-h:84px}
  .header{gap:12px}
  .brand{gap:10px}
  .brand .brand-name{font-size:15px;letter-spacing:.03em}
}
@media(max-width:360px){
  .brand .brand-name{font-size:14px;letter-spacing:.02em}
  .brand{gap:8px}
}
@media(prefers-reduced-motion:reduce){
  .header{transition:none}
}

/* ===== 2026-11-14 關於區預覽（未上線） ===== */
.about .section-label{
  flex-wrap:nowrap;
  align-items:baseline;
  gap:12px;
}
.about .section-label span:first-child,
.about .section-label span:last-child{
  white-space:nowrap;
  overflow-wrap:normal;
  min-width:0;
}
.about .section-label span:last-child{
  max-width:none;
}
/* 成長：明顯縮小但仍是視覺錨點；桌面再與圖的比例對齊 */
.about .growth-heading .growth-keyword{
  font-size:clamp(2.3rem,3.57vw,3.57rem);
  letter-spacing:.04em;
}
.about .growth-heading .growth-continuation{
  margin-top:10px;
}
.about .brand-art{
  max-width:360px;
}
@media(max-width:600px){
  .about .section-label{
    letter-spacing:.12em;
    gap:10px;
  }
  .about .section-label span:first-child{letter-spacing:.1em}
  .about .section-label span:last-child{letter-spacing:.03em;font-size:11px}
  .about .growth-heading .growth-keyword{font-size:2.59rem}
  .about .brand-art{
    width:92%;
    max-width:none;
    margin-top:36px;
    margin-left:auto;
    margin-right:auto;
  }
  .about .brand-art figcaption{
    text-align:center;
    letter-spacing:.1em;
  }
}
@media(max-width:360px){
  .about .section-label span:first-child{letter-spacing:.06em;font-size:11px}
  .about .section-label span:last-child{letter-spacing:.02em;font-size:10px}
  .about .growth-heading .growth-keyword{font-size:2.34rem}
}
