/* Dominic Fieldnotes — static Cloudflare edition */
:root{--bg:#141516;--panel:#1d2224;--ink:#f2f6f6;--muted:#b5c7c9;--line:#3b5559;--accent:#00ffff;--cyan:#00ffff;--red:#ff0000;--teal:#008b8b;--deep-red:#8b0000;--mono:'Courier New',monospace;--sans:Arial,Helvetica,sans-serif;--gutter:clamp(24px,5.5vw,100px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:30;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.8' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:wait}button,a{touch-action:manipulation}button{border-radius:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{color:#104141;background:#8deded}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08}h2{font-size:clamp(32px,3.6vw,56px);font-weight:700;letter-spacing:-.04em}h3{font-size:26px;letter-spacing:-.025em}p{line-height:1.7}.mono,.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.045em}.eyebrow{letter-spacing:.1em;font-size:12px;line-height:1.5}.muted{color:var(--muted)}.accent-text{color:var(--accent)}.skip{position:fixed;top:12px;left:12px;padding:12px;background:var(--cyan);color:#104141;z-index:100;transform:translateY(-150%)}.skip:focus{transform:none}[hidden]{display:none!important}.site-header{height:98px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--bg);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:17px}.brand-symbol{font-size:36px;letter-spacing:-8px;font-weight:900;line-height:1;transform:skew(-8deg);padding-right:8px}.brand-symbol span{color:var(--accent)}.brand-label{font-size:12px;font-weight:700;letter-spacing:.08em;line-height:1.4}.brand-label>span{display:block;font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.04em;margin-top:5px}.desktop-nav{display:flex;align-items:center;gap:36px}.desktop-nav a{font-size:14px;padding:14px 0;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.desktop-nav sup{color:#547d7d;font-family:var(--mono);font-size:12px;margin-left:5px}.desktop-nav a:last-child{border-left:1px solid var(--line);padding-left:30px}.desktop-nav a:last-child span{color:var(--accent);font-size:20px;margin-left:18px}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 14px}.mobile-nav{position:absolute;top:80px;left:0;right:0;background:var(--bg);padding:20px var(--gutter);z-index:19;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:13px 0;border-bottom:1px solid var(--line)}.hero{min-height:690px;height:calc(100svh - 98px);max-height:980px;position:relative;overflow:hidden;isolation:isolate;border-bottom:1px solid var(--line)}.hero-art{position:absolute;inset:0 0 0 35%;z-index:-1;overflow:hidden;background:#edf5f5}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:55% 50%;filter:none;animation:breathe 20s ease-in-out infinite alternate;transform:scale(1.025)}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(242,245,246,.8) 9%,rgba(242,245,246,0) 43%),linear-gradient(0deg,var(--bg),transparent 23%,transparent 80%,rgba(242,245,246,.12))}.hero-inner{padding:clamp(38px,5vw,85px) var(--gutter) 90px;position:relative;width:100%}.tiny-square{display:inline-block;width:7px;height:7px;background:var(--red);margin:0 11px 1px 0}.hero h1{font-size:clamp(66px,8.5vw,146px);font-weight:800;letter-spacing:-.055em;line-height:.91;margin:36px 0 27px;max-width:850px}.outlined{color:transparent;-webkit-text-stroke:1px #359a9a}.chinese-name{display:block;font-size:clamp(23px,2.9vw,43px);letter-spacing:.35em;font-weight:400;line-height:1.5;margin-top:18px}.hero-description{display:flex;gap:17px;align-items:start;margin:22px 0 28px}.cross{font-weight:200;font-size:30px;color:var(--red);line-height:1}.hero-major{font-size:20px;line-height:1.35}.hero-description .muted{font-size:14px;margin-top:10px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:17px 22px;font-weight:700;font-size:14px;border:1px solid transparent;transition:background .2s,color .2s,transform .2s;min-height:54px}.button span{font-size:23px;line-height:1}.accent{background:var(--cyan);color:#103c3c;border-color:#2fd3d3}.button:hover{transform:translateY(-3px);background:#fff;color:#111}.button.dark{background:#168989;color:#fff}.button.dark:hover{background:#fff;color:#111}.hero-bottom{position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:66px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #add0d0;color:#477070;font-size:11px}.hero-bottom>a{color:var(--ink)}.hero-bottom>a span{margin-left:20px;color:var(--accent);display:inline-block;animation:nudge 2s ease-in-out infinite}.motion-toggle{font-size:12px;letter-spacing:.04em;text-transform:uppercase;background:none;border:0;padding:8px 0}.motion-toggle span{margin-left:12px;color:var(--accent)}.art-caption{position:absolute;right:8%;bottom:20%;font-size:12px;line-height:1.9;z-index:2;border-top:1px solid #92c0c0;padding-top:12px;color:#366464}.art-index{position:absolute;right:8%;top:5%;z-index:2;font-family:var(--mono);font-size:12px;color:#497e7e}.reticle{position:absolute;right:20%;top:22%;width:160px;height:160px;z-index:2;border:1px solid #2ca3a35c;border-radius:50%;animation:rotate 50s linear infinite}.reticle:before,.reticle:after{content:"";position:absolute;background:var(--red)}.reticle:before{width:1px;top:-12px;bottom:-12px;left:50%}.reticle:after{height:1px;left:-12px;right:-12px;top:50%;opacity:.6}.ticker{border-bottom:1px solid var(--line);overflow:hidden;height:56px;display:flex;align-items:center;background:#e8f3f3}.ticker>div{display:flex;gap:38px;align-items:center;white-space:nowrap;font-family:var(--mono);font-size:12px;letter-spacing:.08em;animation:marquee 42s linear infinite;width:max-content}.ticker b{color:var(--red);font-size:22px;font-weight:normal}.section{padding:80px var(--gutter);max-width:1920px;margin:0 auto}.section-title{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.section-title .eyebrow{margin-bottom:15px}.text-link{display:inline-flex;gap:30px;align-items:center;font-size:14px;border-bottom:1px solid #82acac;padding:10px 0;white-space:nowrap}.text-link span{color:var(--accent);font-size:21px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.sample-note{font-size:12px;color:#5c8080;margin-bottom:16px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px}.project-card{min-width:0}.project-visual{height:320px;position:relative;overflow:hidden;background:#e0efef;display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}.project-visual img{width:100%;height:100%;object-fit:cover;transition:transform .65s,filter .65s;filter:none}.project-card:hover .project-visual img{transform:scale(1.05);filter:contrast(1.035)}.project-number{position:absolute;top:18px;left:18px;font-size:12px;background:#f6fafae8;padding:4px 9px}.sample-badge{position:absolute;bottom:18px;right:18px;color:#457373;background:#f6fafae8;padding:4px 8px;font-size:10px}.project-details{padding:22px 0;border-bottom:1px solid var(--line)}.project-details>.mono{font-size:12px;color:var(--accent);margin-bottom:12px}.project-details h3{margin-bottom:10px}.project-details>p{color:var(--muted);font-size:14px}.project-more{margin-top:18px}.project-more summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#247575;padding:5px 0}.project-more summary::-webkit-details-marker{display:none}.project-more summary>span{font-size:22px;color:var(--accent);transition:transform .2s}.project-more[open] summary>span{transform:rotate(45deg)}.project-more>p{font-size:14px;color:var(--muted);padding:12px 15px;border-left:2px solid var(--accent);margin-top:10px}.technical-type{padding:40px;display:flex;flex-direction:column;text-align:center;width:100%;gap:14px;position:relative}.technical-type:before{content:"";position:absolute;inset:5% 10%;border:1px solid #65b5b54f;background:linear-gradient(90deg,transparent 49.8%,#6fbdbd30 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,#6fbdbd30 50%,transparent 50.2%);pointer-events:none}.technical-type strong{font-size:clamp(45px,6vw,94px);font-family:var(--mono);font-weight:normal;letter-spacing:-.08em;color:#178b8b}.technical-type span{font:10px var(--mono);letter-spacing:.1em;color:#377979}.circuits{background-color:#e5f6f6;background-image:linear-gradient(#2db5b51a 1px,transparent 1px),linear-gradient(90deg,#2db5b51a 1px,transparent 1px);background-size:22px 22px}.code{background:#e7f6f6}.code-sample{font:16px/1.8 var(--mono);display:flex;flex-direction:column;color:#217575}.code-sample i{color:#5b8080;font-style:normal}.code-sample em{color:var(--accent);font-style:normal}.clubs{background:#e7f1f1}.intro-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr 1fr;gap:45px;background:#e7f1f1;max-width:none}.intro-strip h2{font-size:44px}.intro-strip p{margin:24px 0 18px;color:#456e6e;max-width:490px}.intro-mark{font-size:120px;font-weight:900;letter-spacing:-.12em;line-height:1.1;align-self:center;color:#a4d3d3;text-align:center}.intro-mark span{display:block;font-size:27px;letter-spacing:.35em;margin-left:20px;color:#389191}.empty-journal{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0;display:flex;align-items:center;gap:40px}.journal-number{font:40px var(--mono);color:#529191}.empty-journal h3{margin-top:12px;font-size:27px}.empty-journal p{font-size:14px;color:var(--muted);margin-top:10px}.empty-mark{margin-left:auto;font-size:34px;color:#ad4c59}.contact-strip{background:#d4f4f4;color:#155151;max-width:none;display:flex;align-items:center;justify-content:space-between}.contact-strip .eyebrow{margin-bottom:20px}.contact-strip h2{font-size:clamp(44px,5.3vw,80px)}.site-footer{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:45px var(--gutter)}.footer-name{font-size:14px;font-weight:700;letter-spacing:.02em}.footer-name span{display:block;font-size:13px;color:var(--muted);margin-top:3px;letter-spacing:.12em}.footer-meta{font:12px/2 var(--mono);color:#557e7e;display:flex;flex-direction:column;text-align:right}.back-top{width:44px;height:44px;border:1px solid var(--line);display:grid;place-items:center;font-size:23px;color:var(--accent)}.page-heading{padding-top:65px;padding-bottom:55px;border-bottom:1px solid var(--line);background-image:linear-gradient(90deg,transparent 74.95%,#23959515 75%,transparent 75.05%)}.page-heading h1{font-size:clamp(55px,7.5vw,112px);font-weight:800;letter-spacing:-.055em;line-height:.95;margin-top:28px}.page-heading>p{color:#497474;margin-top:26px}.archive-section{padding-top:35px;min-height:35vh}.filter-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 35px;border-bottom:1px solid var(--line);padding-bottom:25px}.filter{background:transparent;border:1px solid var(--line);padding:9px 19px;font-size:14px;transition:background .2s,color .2s}.filter.active,.filter:hover{background:#c8f5f5;color:#106363;border-color:#24aaaa}.filter-count{margin-left:auto;color:var(--muted)}.filter-empty{color:var(--muted);padding:30px 0}.about-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:8vw}.identity-panel{padding:30px;background:#e0f2f2;border:1px solid #a5cfcf;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-height:490px;background-image:linear-gradient(#1b9b9b18 1px,transparent 1px),linear-gradient(90deg,#1b9b9b18 1px,transparent 1px);background-size:24px 24px}.identity-panel>.mono{font-size:12px;color:#3e8080}.identity-monogram{font-size:clamp(110px,15vw,200px);font-weight:900;letter-spacing:-.1em;line-height:.9;text-align:center;color:#178b8b}.identity-monogram span{display:block;font-size:30px;letter-spacing:.4em;font-weight:400;margin:25px 0 0 25px}.id-barcode{height:24px;width:150px;background:repeating-linear-gradient(90deg,#349b9b 0px,#349b9b 1px,transparent 1px,transparent 3px,#349b9b 3px,#349b9b 6px,transparent 6px,transparent 8px,#349b9b 8px,#349b9b 10px,transparent 10px,transparent 15px)}.bio h2{font-size:clamp(30px,3vw,44px);margin:20px 0 25px}.bio>p{margin-bottom:18px;color:#3d6c6c}.spec-table{margin:32px 0}.spec-table>div{display:grid;grid-template-columns:125px 1fr;border-top:1px solid var(--line);padding:13px 0;gap:18px}.spec-table>div:last-child{border-bottom:1px solid var(--line)}.spec-table dt{font:12px/2 var(--mono);color:#517e7e}.spec-table dd{font-size:14px;margin:0}.spec-table dd span{white-space:nowrap}.disciplines{padding-top:0}.discipline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:25px;border:1px solid var(--line)}.discipline-grid a{padding:26px 22px;border-right:1px solid var(--line);transition:background .2s}.discipline-grid a:last-child{border-right:0}.discipline-grid a:hover{background:#e3f7f7}.discipline-grid h3{font-size:21px;margin:20px 0 14px}.discipline-grid p{font-size:14px;color:var(--muted)}.discipline-grid .mono{font-size:12px;color:var(--accent)}.discipline-grid a>span:last-child{display:block;margin-top:25px;color:var(--accent);font-size:23px}.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:8vw;padding-top:60px}.contact-info h2{font-size:40px;margin:22px 0}.contact-info>p{max-width:350px;color:var(--muted)}.contact-location{font-size:12px;line-height:2.1;border-left:2px solid var(--accent);padding-left:17px;margin-top:42px}.contact-location>span{display:block}.contact-form label{display:flex;flex-direction:column;position:relative;font-size:14px;margin-bottom:23px;gap:9px}.contact-form label>span{position:absolute;right:3px;color:var(--accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form input,.contact-form textarea{width:100%;color:var(--ink);background:#fafdfd;border:1px solid #b3d4d4;border-radius:0;padding:14px;font-size:16px}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#527e7e}.form-note{font-size:12px;color:var(--muted);margin-bottom:22px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.preview-note,.notice{border-left:2px solid var(--accent);padding:10px 15px;background:#e1f4f4;color:#317070;font-size:13px;margin-bottom:25px}.form-feedback{color:var(--accent);font-size:14px;margin-top:18px}.contact-links{display:flex;gap:15px;margin-top:25px;flex-wrap:wrap}.contact-links a{border-bottom:1px solid #78a6a6;overflow-wrap:anywhere}.post-row{border-top:1px solid var(--line);display:grid;grid-template-columns:150px 1fr 40px;padding:30px 0;gap:30px;align-items:start}.post-row:last-child{border-bottom:1px solid var(--line)}.post-row time{font:12px var(--mono);color:var(--muted)}.post-row h3{font-size:27px}.post-row p{font-size:14px;color:var(--muted);margin-top:12px}.post-row .post-arrow{font-size:25px;color:var(--accent)}.post-row:hover h3{color:var(--accent)}.article-wrap{max-width:1050px;margin:0 auto;padding:65px var(--gutter) 90px}.article-wrap h1{font-size:clamp(42px,5vw,72px);letter-spacing:-.04em;margin:25px 0}.article-meta{font:12px var(--mono);color:var(--muted);margin:20px 0 40px}.entry-content{overflow-wrap:anywhere}.entry-content>*{margin-bottom:24px}.entry-content h2{font-size:36px;line-height:1.2;margin-top:45px}.entry-content h3{font-size:27px;margin-top:35px}.entry-content a{text-decoration:underline;text-underline-offset:4px;color:var(--accent)}.entry-content pre{overflow:auto;padding:25px;background:#e4f3f3;border:1px solid var(--line)}.entry-content blockquote{border-left:3px solid var(--accent);padding-left:25px;margin-left:0;color:#467b7b}.entry-content iframe{max-width:100%}.entry-content table{border-collapse:collapse;display:block;overflow:auto}.entry-content td,.entry-content th{border:1px solid var(--line);padding:10px}.entry-content ul,.entry-content ol{padding-left:25px}.entry-content .alignwide{max-width:100%}.entry-content figure{max-width:100%;margin-left:0;margin-right:0}.wp-caption-text,figcaption{font-size:13px;color:var(--muted)}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.nav-links{display:flex;gap:15px;margin-top:30px;flex-wrap:wrap}.page-numbers{padding:8px 15px;border:1px solid var(--line)}.page-numbers.current{background:#c8f5f5;color:#106363}.post-navigation{margin-top:40px;border-top:1px solid var(--line);padding-top:25px}.post-navigation .nav-links{justify-content:space-between}.bypostauthor{border-color:var(--accent)}.sticky{border-left:2px solid var(--accent)}.alignleft{float:left;margin-right:25px}.alignright{float:right;margin-left:25px}.aligncenter{display:block;margin-left:auto;margin-right:auto}.gallery-caption{font-size:13px}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important;scroll-behavior:auto!important}.reveal{animation:appear .5s both}@keyframes breathe{from{transform:scale(1.025)}to{transform:scale(1.09) translate(-.8%,.5%)}}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes nudge{50%{transform:translateY(5px)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes appear{from{opacity:.45;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1550px){.hero-description{margin-top:33px}.hero h1{margin-top:50px}.hero-inner{padding-top:60px}.hero-art{left:39%}}
@media(max-width:1000px){.desktop-nav{gap:23px}.hero{min-height:710px;height:auto}.hero h1{font-size:90px}.hero-inner{padding-top:60px;padding-bottom:130px}.hero-art{left:25%}.hero-art:after{background:linear-gradient(90deg,var(--bg),#f2f6f6dc 30%,#f2f6f630 80%),linear-gradient(0deg,var(--bg),transparent 30%)}.art-caption{bottom:20%;right:5%}.reticle{right:12%;top:14%;width:115px;height:115px}.intro-strip{grid-template-columns:1fr 2fr;gap:30px}.intro-mark{display:none}.project-visual{height:270px}.discipline-grid{grid-template-columns:1fr 1fr}.discipline-grid a:nth-child(2){border-right:0}.discipline-grid a:nth-child(-n+2){border-bottom:1px solid var(--line)}.about-grid{gap:40px}.contact-grid{gap:40px}.contact-info h2{font-size:34px}.form-row{grid-template-columns:1fr;gap:0}.footer-meta{max-width:270px}.identity-panel{padding:22px;min-height:450px}.hero-bottom{font-size:10px}.motion-toggle{font-size:10px}.post-row{grid-template-columns:110px 1fr 30px}}
@media(max-width:700px){:root{--gutter:24px}.site-header{height:80px}.desktop-nav{display:none}.menu-toggle{display:block}.brand-label{font-size:11px}.brand-label>span{font-size:9px}.brand-symbol{font-size:31px}.brand{gap:14px}.hero{min-height:720px;height:calc(100svh - 80px);max-height:900px}.hero-inner{padding-top:35px}.hero h1{font-size:clamp(62px,13.7vw,95px);margin-top:36px;line-height:.96}.chinese-name{font-size:26px;margin-top:15px;letter-spacing:.3em}.hero-art{left:0}.hero-art img{object-position:63% 50%;filter:none}.hero-art:after{background:linear-gradient(90deg,#f2f6f6dc,#f2f6f630),linear-gradient(0deg,var(--bg),transparent 40%,#f2f6f6a0)}.hero-major{font-size:19px}.hero-description .muted{font-size:13px;max-width:250px}.hero-description{margin-top:24px;margin-bottom:26px}.hero .eyebrow{font-size:10px}.reticle{width:90px;height:90px;right:12%;top:44%;opacity:.3}.art-caption,.art-index{display:none}.hero-bottom{height:90px;display:grid;grid-template-columns:1fr auto;gap:5px;align-content:center;font-size:10px}.hero-bottom>a{grid-column:1;grid-row:2}.motion-toggle{grid-column:2;grid-row:1/3}.ticker{height:48px}.ticker>div{font-size:12px;gap:25px}.section{padding-top:50px;padding-bottom:50px}.section-title{align-items:start;flex-direction:column;gap:14px;margin-bottom:25px}.section-title .eyebrow{margin-bottom:12px}.section-title .text-link{padding:5px 0}.project-grid{grid-template-columns:1fr;gap:35px}.project-visual{height:285px}.technical-type strong{font-size:80px}.intro-strip{grid-template-columns:1fr;gap:22px}.intro-strip h2{font-size:37px}.intro-strip p{font-size:16px;margin:20px 0 12px}.empty-journal{gap:20px;align-items:start;padding:28px 0}.journal-number{font-size:27px}.empty-journal h3{font-size:24px}.empty-mark{display:none}.empty-journal .eyebrow{font-size:10px}.contact-strip{align-items:start;flex-direction:column;gap:30px}.contact-strip h2{font-size:49px}.site-footer{display:grid;grid-template-columns:1fr auto;padding-top:35px;padding-bottom:35px}.footer-meta{text-align:left;grid-row:2;max-width:none;font-size:12px;grid-column:1/3}.back-top{grid-column:2;grid-row:1}.page-heading{padding-top:40px;padding-bottom:40px}.page-heading h1{font-size:clamp(48px,11.8vw,80px);margin-top:25px}.page-heading>p{font-size:15px;max-width:300px}.filter{padding:8px 13px;font-size:13px}.filter-bar{gap:7px}.filter-count{display:block;width:100%;margin:12px 0 0}.about-grid{grid-template-columns:1fr;gap:35px}.identity-panel{min-height:380px}.identity-monogram{font-size:165px}.bio h2{font-size:34px}.spec-table>div{grid-template-columns:95px 1fr}.disciplines{padding-top:10px}.discipline-grid{grid-template-columns:1fr}.discipline-grid a{border-right:0;border-bottom:1px solid var(--line)}.discipline-grid a:last-child{border-bottom:0}.discipline-grid a>span:last-child{margin-top:14px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-info h2{font-size:35px}.contact-location{margin-top:27px}.post-row{grid-template-columns:1fr 30px;gap:16px}.post-row time{grid-column:1/-1}.post-row h3{font-size:24px}.article-wrap{padding-top:40px}.article-wrap h1{font-size:42px}.entry-content h2{font-size:30px}.article-meta{margin-bottom:25px}.form-row{grid-template-columns:1fr}.text-link{font-size:14px}.sample-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-art img{transform:none}}
@media(prefers-contrast:more){:root{--muted:#265858;--line:#548c8c}.outlined{color:var(--ink);-webkit-text-stroke:0}}

.custom-menu{display:flex;list-style:none;padding:0;margin:0;gap:32px}.desktop-nav .custom-menu a{display:block;border-left:0;padding-left:0}.mobile-nav .custom-menu{display:block}.mobile-nav .custom-menu li{margin:0}.entry-content:after{content:"";display:block;clear:both}.article-cover{margin-bottom:30px}
@media(max-width:380px){.brand-label>span{letter-spacing:-.03em}.brand{gap:10px}.menu-toggle{padding:8px}.hero-bottom{letter-spacing:0;font-size:12px}.hero-bottom>span{max-width:220px}.hero h1{font-size:13vw}.hero .eyebrow{letter-spacing:.02em}.section-title h2{font-size:30px}}

.motion-toggle:disabled{cursor:default;opacity:.8}

/* Cyan edition: reference palette #00ffff / #008b8b / #ff0000 / #8b0000 / white. */
:root{color-scheme:only dark}
::selection{background:var(--cyan);color:#003b3b}
.site-header{background:#141516;border-bottom:5px solid var(--cyan)}
.brand-symbol span{color:var(--teal)}
.desktop-nav a[aria-current],.desktop-nav a:hover{background:var(--cyan);color:#003b3b}
.desktop-nav a:after{background:var(--red);height:3px}
.mobile-nav a[aria-current]{background:var(--cyan);padding-left:12px}
.hero{background-image:linear-gradient(90deg,#008b8b12 1px,transparent 1px);background-size:25% 100%}
.hero-inner>.eyebrow{display:inline-block;background:var(--cyan);color:#003c3c;padding:8px 14px;border-left:4px solid var(--red)}
.hero .outlined{color:var(--cyan);-webkit-text-stroke:0}
.chinese-name{color:#d9f6f6}
.hero-bottom{background:linear-gradient(0deg,#141516ed,transparent);border-top:2px solid var(--teal)}
.hero-art{background:#101416}
.hero-art:before{content:"";position:absolute;top:0;right:0;width:12px;height:100%;background:var(--cyan);z-index:3}
.art-caption{padding:10px 14px;background:var(--cyan);color:#003b3b;border-top:1px solid var(--teal);border-left:3px solid var(--red)}
.art-index{color:#c4e1e1}
.art-index:before{content:"";display:inline-block;width:6px;height:6px;margin:0 9px 2px 0;background:var(--red)}
.reticle{border-color:var(--teal)}
.ticker{background:var(--cyan);color:#003d3d;border-top:1px solid var(--teal);border-bottom:1px solid var(--teal);height:64px}
.ticker b{color:var(--deep-red)}
.section-title h2>.accent-text{color:var(--red)}
.section-title .eyebrow{color:var(--accent)}
.accent{background:var(--cyan);color:#003c3c;border:1px solid var(--teal);box-shadow:4px 4px 0 #008b8b25}
.button:hover{background:var(--deep-red);color:#fff;border-color:var(--deep-red);box-shadow:none}
.button.dark{background:#fff;color:#004b4b;border-color:var(--teal)}
.button.dark:hover{background:var(--deep-red);color:#fff;border-color:var(--deep-red)}
.text-link{border-color:var(--teal)}
.text-link span{color:var(--cyan)}
.project-visual{border:1px solid var(--teal);border-top:6px solid var(--cyan)}
.project-number{background:var(--cyan);color:#003b3b;border-left:3px solid var(--red)}
.sample-badge{background:#fff;color:#005f5f;border:1px solid var(--teal)}
.circuits{background-color:var(--cyan);background-image:linear-gradient(#008b8b30 1px,transparent 1px),linear-gradient(90deg,#008b8b30 1px,transparent 1px)}
.technical-type:before{border:1px dashed var(--teal)}
.technical-type strong{color:#005757}
.technical-type span{color:#005b5b}
.code{background:#006767}
.code-sample{color:#fff}
.code-sample i{color:#fff}
.code-sample em{color:var(--cyan);font-weight:700}
.clubs{background:#1b292d}
.clubs .technical-type strong{color:var(--cyan)}
.intro-strip{background:#1b2123;border-top:4px solid var(--teal)}
.intro-mark{color:var(--teal)}
.intro-mark span{color:#9ac6c6}
.empty-mark{color:#ff6464}
.contact-strip{background:var(--cyan);color:#003d3d;border-top:1px solid var(--teal);position:relative}
.contact-strip:before{content:"";position:absolute;top:-1px;left:var(--gutter);width:65px;height:5px;background:var(--red)}
.filter.active,.filter:hover{background:var(--cyan);color:#003d3d;border-color:var(--teal);box-shadow:inset 0 -3px 0 var(--teal)}
.identity-panel{background-color:var(--cyan);border:1px solid var(--teal);background-image:linear-gradient(#008b8b25 1px,transparent 1px),linear-gradient(90deg,#008b8b25 1px,transparent 1px)}
.identity-panel>.mono{color:#005151}
.identity-monogram{color:#005858}
.identity-panel:after{content:"";position:absolute;top:-1px;right:28px;width:40px;height:5px;background:var(--red)}
.id-barcode{background:repeating-linear-gradient(90deg,#005858 0px,#005858 1px,transparent 1px,transparent 3px,#005858 3px,#005858 6px,transparent 6px,transparent 8px,#005858 8px,#005858 10px,transparent 10px,transparent 15px)}
.discipline-grid{border-top:5px solid var(--cyan)}
.discipline-grid a:hover{background:var(--cyan)}
.discipline-grid a:hover p{color:#005151}
.page-heading{border-left:8px solid var(--cyan)}
.contact-form label>span{color:#ff6464}
.contact-form input:focus-visible,.contact-form textarea:focus-visible{border-color:var(--cyan);outline-color:var(--cyan);background:#203034}
.preview-note,.notice{border-left-color:var(--cyan);background:#203034;color:#d4eeee}
.page-numbers.current{background:var(--cyan);color:#003d3d}
.site-footer{background:#141516;border-top:5px solid var(--teal)}
.back-top{background:var(--cyan);color:#005151;border-color:var(--teal)}
@media(max-width:700px){.ticker{height:54px}.hero-art:before{width:6px}.page-heading{border-left-width:5px}.hero-inner>.eyebrow{padding:8px 10px}}
@media(prefers-contrast:more){.hero .outlined{color:var(--ink);-webkit-text-stroke:0}}

/* Use a consistent dark ink for every label on a cyan surface. */
.hero-inner>.eyebrow,.art-caption,.ticker,.accent,.project-number,
.filter.active,.filter:hover,.contact-strip,.identity-panel,
.page-numbers.current,.back-top{color:#003f50}
.desktop-nav a[aria-current],.desktop-nav a:hover,
.desktop-nav a[aria-current] sup,.desktop-nav a:hover sup,
.desktop-nav a[aria-current] span,.desktop-nav a:hover span,
.mobile-nav a[aria-current],.mobile-nav a[aria-current] span{color:#003f50}
.circuits .technical-type strong,.circuits .technical-type span,
.identity-panel>.mono,.identity-panel .identity-monogram,
.identity-panel .identity-monogram span{color:#003f50}
.discipline-grid a:hover,.discipline-grid a:hover p,
.discipline-grid a:hover .mono,.discipline-grid a:hover>span:last-child{color:#003f50}
.contact-strip .eyebrow,.contact-strip h2{color:#003f50}
.accent:hover{color:#fff}

/* Keep cyan call-to-action labels dark in every link and pointer state. */
a.button.accent,button.button.accent,
a.button.accent:link,a.button.accent:visited,
a.button.accent:hover,button.button.accent:hover,
a.button.accent:focus,button.button.accent:focus,
a.button.accent:active,button.button.accent:active{
  color:#8b0000!important;
  -webkit-text-fill-color:#8b0000;
  background:#00ffff;
  border-color:#006767;
  text-shadow:none;
  opacity:1;
  color-scheme:only light;
}
a.button.accent span,button.button.accent span{
  color:#8b0000!important;
  -webkit-text-fill-color:#8b0000;
  opacity:1;
}
a.button.accent:hover,button.button.accent:hover{background:#80ffff}
a.button.accent:focus-visible,button.button.accent:focus-visible{outline:3px solid #f2ffff;outline-offset:5px}

/* Charcoal page surfaces; cyan panels retain their explicit dark text. */
.hero-art:after{background:linear-gradient(90deg,#141516 0%,#141516b3 9%,#14151600 43%),linear-gradient(0deg,#141516,transparent 23%,transparent 80%,#1415161f)}
.hero-art img{filter:brightness(.86)}
.desktop-nav sup,.hero-bottom,.sample-note,.project-more summary,
.intro-strip p,.footer-meta,.page-heading>p,.bio>p,.spec-table dt,
.entry-content blockquote{color:var(--muted)}
.brand-symbol span,.journal-number{color:var(--cyan)}
.project-visual{background-color:#1d272b}
.project-visual.circuits{background-color:var(--cyan)}
.project-visual.code{background-color:#006767}
.project-visual.clubs{background-color:#1b292d}
.project-visual:not(.circuits) .technical-type span{color:#bfd9dd}
.project-visual:not(.circuits) .technical-type strong{color:var(--cyan)}
.contact-form input,.contact-form textarea{background:#1d282c;border-color:#506a70;color:#f2f6f6}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a8c0c5}
.entry-content pre{background:#1b282d;color:#e6f4f4}
@media(max-width:1000px){.hero-art:after{background:linear-gradient(90deg,#141516,#141516b3 30%,#14151630 80%),linear-gradient(0deg,#141516,transparent 30%)}}
@media(max-width:700px){.hero-art img{filter:brightness(.65)}.hero-art:after{background:linear-gradient(90deg,#141516c9,#14151650),linear-gradient(0deg,#141516,transparent 40%,#14151699)}}

/* Hero revision: outline type, flow-based bottom bar, square-dot signature. */
.hero{
  display:grid;
  grid-template-rows:1fr auto;
  height:auto;
  min-height:max(690px,calc(100svh - 98px));
  max-height:none;
}
.hero-inner{align-self:center;padding-bottom:44px;min-width:0}
.hero h1 .outlined{
  display:inline-block;
  font-size:calc(1em - 2px);
  line-height:inherit;
  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:1px #00ffff;
  paint-order:stroke fill;
}
.hero-bottom{
  position:relative;
  inset:auto;
  margin:0 var(--gutter);
  height:auto;
  min-height:76px;
  padding:18px 0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:20px;
  align-items:center;
  font-size:12px;
}
.hero-bottom>span{justify-self:start}
.hero-bottom>a{display:inline-flex;align-items:center;gap:20px;justify-self:center;white-space:nowrap}
.hero-bottom>a span{margin-left:0}
.hero-bottom>.motion-toggle{justify-self:end;white-space:nowrap}
.hero-signal{position:absolute;right:8%;bottom:18%;width:178px;height:140px;z-index:2;pointer-events:none}
.signal-dots{position:absolute;right:0;bottom:0;display:grid;grid-template-columns:repeat(8,6px);gap:9px}
.signal-dots>span{width:6px;height:6px;background:#ff0000}
.signal-dots>span:nth-child(-n+4),.signal-dots>span:nth-child(9),.signal-dots>span:nth-child(10),.signal-dots>span:nth-child(17),.signal-dots>span:nth-child(33),.signal-dots>span:nth-child(34){visibility:hidden}
.signal-dots>span:nth-child(3n){opacity:.58}
.signal-dots>span:nth-child(7n){opacity:.3}
@media(max-width:1000px){
  .hero-inner{padding-bottom:44px}
  .hero-signal{right:5%;bottom:20%;transform:scale(.8);transform-origin:right bottom}
}
@media(max-width:700px){
  .hero{height:auto;min-height:max(720px,calc(100svh - 80px));max-height:none}
  .hero-inner{padding-bottom:38px}
  .hero-bottom{grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:18px 0;min-height:96px}
  .hero-bottom>span{grid-column:1/-1;grid-row:1;max-width:none}
  .hero-bottom>a{grid-column:1;grid-row:2;justify-self:start;gap:12px}
  .hero-bottom>.motion-toggle{grid-column:2;grid-row:2}
  .hero-signal{right:7%;bottom:28%;transform:scale(.55);opacity:.75}
}
@media(max-width:420px){.hero-signal{display:none}}
@media(prefers-contrast:more){.hero h1 .outlined{-webkit-text-stroke-width:1.5px}}

/* Direction marks: a single solid slanted parallelogram. */
.direction-mark{display:inline-block;width:1.5rem;height:1.5rem;flex:none;vertical-align:middle;fill:currentColor;overflow:visible}
.button .direction-mark{width:1.8rem;height:1.8rem}
.button>span:has(.direction-mark),.text-link>span:has(.direction-mark){display:inline-flex;align-items:center;justify-content:center;line-height:1}
.hero-bottom .direction-mark{width:1rem;height:1rem}
.contact-links .direction-mark{width:1.15rem;height:1.15rem;margin-left:.35rem}
.post-arrow .direction-mark{width:1.7rem;height:1.7rem}
.direction-mark path{fill:currentColor}
a.button.accent .direction-mark,button.button.accent .direction-mark{color:#8b0000}

.study-entry+.study-entry{margin-top:18px}
