/* Case-study structure adapted from diyoriko/portfolio-template (MIT). */
@view-transition{navigation:auto}
:root{--paper:#f8f7f2;--ink:#242722;--muted:#777c73;--line:#dcded5;--lime:#20ba13;--pad:clamp(22px,4.2vw,76px);--font:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #1763d4;outline-offset:5px}img{max-width:100%;display:block}::selection{background:#cef48b;color:#162510}.skip{position:fixed;left:12px;top:-70px;z-index:100;background:#222;color:white;padding:14px}.skip:focus{top:12px}[hidden]{display:none!important}
.site-header{height:96px;margin:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.wordmark{display:flex;align-items:baseline;gap:15px;font-size:24px;font-weight:750;letter-spacing:-1px}.wordmark span{font-size:10px;letter-spacing:1.6px;font-weight:500}.site-header nav{display:flex;gap:38px;font-size:13px}.site-header nav a{display:flex;gap:7px;align-items:baseline}.site-header nav span{font-size:9px;color:var(--muted);letter-spacing:.5px}.site-header nav a:hover{color:#138a0b}.pdf-button{border:1px solid #b9beb1;border-radius:30px;padding:12px 18px;font-size:12px;display:flex;gap:24px;align-items:center;transition:background .2s}.pdf-button:hover{background:#e9efdc}.pdf-button span{font-size:19px}
.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:500;display:flex;align-items:center;gap:10px}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--lime)}.home-hero{position:relative;min-height:670px;overflow:hidden;display:grid;grid-template-columns:46% 54%;align-items:center;padding:76px var(--pad) 90px}.hero-type{z-index:2;pointer-events:none}.hero-type a{pointer-events:auto}.home-hero h1{font-size:clamp(42px,4.6vw,79px);line-height:1.25;letter-spacing:-3.5px;font-weight:650;margin:38px 0 25px}.home-hero h1 em{font-style:normal}.hero-description{font-size:15px;line-height:1.9;color:#70756b;margin-top:25px}.hero-down{display:inline-flex;align-items:center;gap:60px;font-size:12px;margin-top:24px}.hero-down span{display:flex;width:37px;height:37px;border:1px solid #b9beb1;align-items:center;justify-content:center;border-radius:50%;font-size:20px;transition:transform .3s}.hero-down:hover span{transform:translateY(5px)}
.fan{position:absolute;left:55%;top:50%;width:40%;height:200px;transform:translate(-4%,20px);isolation:isolate}.fan-blade{position:absolute;left:0;top:0;width:710px;height:140px;border-radius:15px;background:var(--blade);transform-origin:28px 112px;transform:rotate(calc(-1 * var(--angle)));display:flex;align-items:center;justify-content:flex-start;padding:0 40px 0 300px;gap:25px;color:#202520;box-shadow:0 4px 8px #19201b0b;transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .2s;white-space:nowrap}.fan-blade:nth-child(3),.fan-blade:nth-child(4){color:#fff}.fan-blade span{font-size:36px;font-weight:350}.fan-blade strong{font-size:20px;font-weight:500}.fan-blade span:not(:empty){border-right:1px solid currentColor;padding-right:17px}.fan-blade:hover{transform:rotate(calc(-1 * var(--angle))) translateX(22px);filter:brightness(1.04)}.fan-front{height:190px;top:-50px;padding:0 30px 0 60px;align-items:center;justify-content:space-between;color:#fff}.fan-front strong{font-size:64px;font-family:Impact,"Arial Narrow",sans-serif;letter-spacing:-1px}.fan-front small{font-size:10px;letter-spacing:1px;writing-mode:vertical-rl}.fan-front span{display:none}.fan-pin{position:absolute;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#f9faf7 0,#b8bdb7 45%,#f4f5f2 65%,#a2aaa1 100%);left:11px;top:95px;border:1px solid #909a8b;z-index:8;box-shadow:1px 2px 2px #0002;pointer-events:none}
.works-section{padding:46px var(--pad) 110px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid #aeb5a6}.section-heading h2{font-size:30px;letter-spacing:-1.3px;font-weight:550;margin:17px 0 0}.work-count{font-size:10px;letter-spacing:1.2px;color:var(--muted);padding-bottom:4px}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 32px}.filter-bar button{font-size:12px;background:transparent;border:1px solid transparent;padding:9px 16px;border-radius:30px;transition:.2s}.filter-bar button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.filter-bar button:hover:not([aria-pressed=true]){border-color:#bac1b1;background:#eef0e8}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 24px}.project-card{min-width:0}.card-media{height:auto;aspect-ratio:1.21;overflow:hidden;border-radius:12px;background:var(--project-paper);position:relative;isolation:isolate}.card-media>img{height:100%;width:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.75,.2,1)}.project-link:hover .card-media>img{transform:scale(1.045)}.card-open{position:absolute;right:16px;top:16px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffffe8;color:#202520;font-size:23px;opacity:0;transform:translate(-5px,5px);transition:.25s}.project-link:hover .card-open,.project-link:focus-visible .card-open{opacity:1;transform:none}.card-type{position:absolute;left:16px;bottom:16px;background:#ffffffec;backdrop-filter:blur(8px);padding:7px 10px;border-radius:20px;color:#343b30;font-size:9px;letter-spacing:.3px}.card-caption{display:flex;align-items:start;gap:11px;padding:18px 2px}.project-index{font-size:9px;color:var(--muted);padding-top:5px}.card-caption h3{font-size:18px;letter-spacing:-.4px;font-weight:550;margin:0 0 8px}.card-caption p{font-size:10px;color:var(--muted);margin:0;letter-spacing:.3px}.card-dot{width:8px;height:8px;border-radius:50%;background:var(--project-color);margin-left:auto;margin-top:7px}.reveal{opacity:1;transform:none}.js-ready .reveal:not(.visible){opacity:0;transform:translateY(20px)}.reveal{transition:opacity .6s ease,transform .6s ease}
.music-composition{display:flex;align-items:center;justify-content:center;gap:5%;height:100%;padding:7% 13%;background:#f8e3e9;overflow:hidden}.music-composition img{height:93%;width:auto;max-width:44%;object-fit:contain;filter:drop-shadow(0 6px 7px #52243c16);border-radius:13px}.music-composition img:last-child{transform:translateY(8%)}.about-section{padding:80px var(--pad) 110px;display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line)}.about-section h2{font-size:48px;line-height:1.45;letter-spacing:-2px;font-weight:550;margin:30px 0}.about-copy>p{font-size:16px;line-height:1.95;margin:20px 0;color:#636b5f}.about-facts{display:flex;gap:70px;margin:35px 0 30px;border-top:1px solid var(--line);padding-top:25px}.about-facts span{font-size:11px;color:var(--muted)}.about-facts p{font-size:12px;line-height:1.9}.inline-link{display:inline-flex;font-size:13px;gap:38px;border-bottom:1px solid var(--ink);padding:10px 0}.inline-link:hover{color:#138a0b}
.site-footer{margin:0 var(--pad);border-top:1px solid #aeb5a6}.footer-top{display:flex;align-items:flex-end;justify-content:space-between;padding:50px 0 65px}.footer-top p{font-size:54px;font-weight:550;letter-spacing:-2px;line-height:1.3;margin:0}.contact-main{display:flex;align-items:center;gap:65px;font-size:24px}.contact-main span{display:flex;align-items:center;justify-content:center;width:69px;height:69px;border-radius:50%;background:var(--lime);color:#fff;font-size:37px;transition:transform .3s}.contact-main:hover span{transform:rotate(15deg)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding:25px 0 30px;font-size:10px;color:var(--muted)}.copy-email{border:0;background:none;font-size:12px;padding:0;display:flex;gap:12px;align-items:center}.copy-email span{font-size:9px}.copy-status{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#263020;color:white;border-radius:30px;padding:12px 24px;font-size:13px;opacity:0;pointer-events:none;z-index:120;transition:.3s}.copy-status.show{opacity:1;transform:translate(-50%,0)}
.project-intro{padding:35px var(--pad) 48px}.back-link{font-size:12px;color:var(--muted)}.back-link:hover{color:var(--project-color)}.project-label{display:flex;gap:25px;align-items:center;margin:48px 0 22px;font-size:11px;letter-spacing:1px;color:var(--project-ink)}.project-label span{font-size:10px;letter-spacing:.2px;border:1px solid #b9bfb1;padding:5px 11px;border-radius:20px;color:#777f70}.project-intro h1{font-size:clamp(40px,5.8vw,86px);font-weight:600;letter-spacing:-3px;margin:0;line-height:1.25}.project-lead{font-size:24px;line-height:1.5;font-weight:400;color:var(--project-ink);margin:24px 0 34px}.project-meta{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;padding-top:29px;border-top:1px solid var(--line);max-width:1130px}.project-meta>p{font-size:14px;line-height:1.9;color:#636b5f;margin:0}.project-meta>div{display:flex;flex-direction:column;gap:9px}.project-meta span{font-size:10px;color:var(--muted)}.project-meta strong{font-size:14px;font-weight:500}.project-meta small{font-size:11px;line-height:1.8;color:var(--muted)}.project-stage{margin:0 var(--pad);border-radius:14px;overflow:hidden;background:var(--project-paper);display:flex;align-items:center;justify-content:center;max-height:740px;padding:0}.project-stage>img{width:100%;height:auto;max-height:740px;object-fit:contain}.project-stage .music-composition{width:100%;height:600px;padding:4% 20%}.recognition{margin:28px var(--pad) 0;padding:20px 25px;display:flex;align-items:center;gap:35px;background:var(--project-paper);color:var(--project-ink);border-radius:8px}.recognition span{font-size:9px;letter-spacing:1px}.recognition p{font-size:14px;margin:0}.project-external{display:flex;align-items:center;justify-content:space-between;margin:25px var(--pad) 0;padding:18px 22px;background:var(--project-color);color:#fff;border-radius:7px;font-size:14px}.project-external span{font-size:22px}
.case-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:55px;margin:85px var(--pad) 75px}.case-toc{position:sticky;top:35px;align-self:start;display:flex;flex-direction:column;gap:7px}.case-toc>p{font-size:9px;letter-spacing:1.5px;color:var(--muted);margin:0 0 18px}.case-toc a{font-size:11px;line-height:1.7;display:flex;gap:10px;padding:8px 0;color:#838a7c;transition:color .2s}.case-toc a span{font-size:9px;min-width:15px;margin-top:2px}.case-toc a.active,.case-toc a:hover{color:var(--project-ink)}.case-toc a.active:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--project-color);align-self:center}.case-section{margin:0 0 90px;scroll-margin-top:45px}.case-section-head{display:grid;grid-template-columns:35px 1fr;gap:16px;border-top:1px solid #c7ccbf;padding-top:27px;margin-bottom:30px}.case-section-num{font-size:10px;color:var(--project-ink);padding-top:6px}.case-section h2{font-size:26px;letter-spacing:-1px;line-height:1.5;font-weight:550;margin:0 0 14px}.case-section-head p{font-size:13px;line-height:1.95;color:#737c6b;max-width:690px;margin:0}.case-img-row{display:grid;gap:26px 20px;align-items:start}.cols-1{grid-template-columns:1fr}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.case-img-row figure{margin:0;min-width:0}.image-button{display:block;width:100%;padding:0;border:0;background:var(--project-paper);position:relative;overflow:hidden;border-radius:7px;cursor:zoom-in}.image-button img{width:100%;height:auto;transition:transform .6s}.image-button:hover img{transform:scale(1.018)}.image-zoom{position:absolute;bottom:12px;right:12px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fffE;color:#222;width:30px;height:30px;font-size:20px;opacity:0;transition:opacity .2s}.image-button:hover .image-zoom,.image-button:focus-visible .image-zoom{opacity:1}.case-img-row figcaption{font-size:10px;line-height:1.6;color:var(--muted);padding:11px 1px 0}.next-project{margin:0 var(--pad) 90px;border-radius:12px;background:var(--next-paper);display:grid;grid-template-columns:1fr 70px 290px;align-items:center;gap:40px;padding:30px 30px 30px 40px;transition:filter .2s}.next-project:hover{filter:brightness(.98)}.next-project div>span{font-size:9px;letter-spacing:1px;color:#737c6b}.next-project h2{font-size:31px;font-weight:550;letter-spacing:-1px;margin:15px 0 10px}.next-project p{font-size:13px;color:#737c6b;margin:0}.next-arrow{font-size:50px;color:var(--next-color);transition:transform .3s}.next-project:hover .next-arrow{transform:translate(5px,-5px)}.next-image{height:180px;border-radius:7px;overflow:hidden}.next-image>img{width:100%;height:100%;object-fit:cover}.next-image .music-composition{height:100%}
.lightbox{position:fixed;inset:0;border:0;margin:0;max-width:none;max-height:none;width:100%;height:100%;background:#f4f4eff7;color:#242722;padding:0;z-index:100}.lightbox::backdrop{background:#f4f4ef}.lightbox[open]{display:flex;flex-direction:column}.lightbox-toolbar{height:80px;min-height:80px;display:flex;align-items:center;justify-content:space-between;padding:15px 30px;font-size:12px;z-index:2}.lightbox-toolbar>div{display:flex;gap:12px;align-items:center}.lightbox-toolbar button,.lightbox-original{border:1px solid #b6bfaf;background:#ffffffbb;padding:10px 16px;border-radius:25px;font-size:12px}.lightbox-canvas{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:auto;padding:8px 70px}.lightbox-image{max-width:100%;max-height:100%;object-fit:contain;width:auto;height:auto}.lightbox-canvas.zoomed{display:block;text-align:center;cursor:zoom-out}.lightbox-canvas.zoomed img{max-width:none;max-height:none;display:inline-block;width:auto;height:auto;min-width:130%;margin:0 auto}.lightbox-prev,.lightbox-next{position:absolute;top:48%;border:1px solid #b6bfaf;width:44px;height:44px;border-radius:50%;background:#fffB;font-size:24px;z-index:2}.lightbox-prev{left:18px}.lightbox-next{right:18px}.lightbox-caption{text-align:center;font-size:12px;padding:0 25px 15px;min-height:35px;color:#636b5f}body.modal-open{overflow:hidden}
@media(min-width:1800px){.home-hero{min-height:760px}.fan{left:57%}.fan-blade{width:900px}.project-grid{gap:60px 30px}}
@media(max-width:1100px){.home-hero{min-height:610px}.home-hero h1{font-size:48px;letter-spacing:-2px}.fan{left:56%;transform:translate(-4%,35px)}.fan-blade{width:580px;padding-left:170px;height:122px}.fan-front{height:172px;padding-left:50px}.fan-front strong{font-size:52px}.case-layout{grid-template-columns:140px minmax(0,1fr);gap:30px}.next-project{grid-template-columns:1fr 40px 220px;gap:20px}.about-facts{gap:35px}}
@media(max-width:760px){html{scroll-padding-top:80px}.site-header{height:76px}.wordmark{font-size:22px;gap:9px}.wordmark span{font-size:8px}.site-header nav{gap:18px;font-size:12px}.site-header nav span{display:none}.site-header nav a:last-child{display:none}.pdf-button{padding:8px 12px;font-size:10px;gap:10px}.home-hero{min-height:690px;display:block;padding-top:40px;padding-bottom:320px}.home-hero h1{font-size:43px;letter-spacing:-2px;margin:25px 0 16px}.hero-description{font-size:13px;line-height:1.8;margin-top:17px}.hero-down{font-size:11px;margin-top:6px;gap:30px}.hero-down span{width:29px;height:29px;font-size:17px}.home-hero .eyebrow{font-size:8px}.fan{left:9%;top:auto;bottom:65px;width:80%;height:160px;transform:none}.fan-blade{width:485px;height:91px;transform-origin:23px 75px;padding-left:220px;border-radius:10px;gap:14px}.fan-blade span{font-size:25px;padding-right:13px!important}.fan-blade strong{font-size:15px}.fan-front{top:-39px;height:130px;padding-left:34px}.fan-front strong{font-size:42px}.fan-front small{font-size:8px}.fan-pin{left:10px;top:62px;width:26px;height:26px}.works-section{padding-top:25px;padding-bottom:60px}.section-heading{padding-bottom:20px;align-items:start}.section-heading h2{font-size:22px;letter-spacing:-1px;line-height:1.5;max-width:230px}.work-count{font-size:8px;padding-top:4px}.eyebrow{font-size:8px}.filter-bar{gap:5px;margin:18px 0 24px}.filter-bar button{padding:8px 10px;font-size:10px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 13px}.card-media{aspect-ratio:1.03;border-radius:9px}.card-type{left:8px;bottom:8px;font-size:7px;padding:5px 7px;max-width:95%}.card-open{display:none}.card-caption{gap:6px;padding:12px 0}.project-index{font-size:7px;padding-top:4px}.card-caption h3{font-size:13px;letter-spacing:0;line-height:1.4;margin-bottom:6px}.card-caption p{font-size:8px;line-height:1.6}.card-dot{width:5px;height:5px;min-width:5px;margin-top:6px}.about-section{grid-template-columns:1fr;gap:15px;padding:45px var(--pad) 60px}.about-section h2{font-size:36px;margin:20px 0 5px}.about-copy>p{font-size:14px}.about-facts{gap:50px;margin:25px 0}.about-facts p{font-size:11px}.footer-top{padding:35px 0;gap:20px}.footer-top p{font-size:32px;letter-spacing:-1px}.contact-main{font-size:16px;gap:18px}.contact-main span{width:44px;height:44px;font-size:26px}.footer-bottom{flex-wrap:wrap;gap:18px 25px;font-size:8px;padding:22px 0}.copy-email{font-size:10px}.copy-email span{font-size:8px}.project-intro{padding-top:25px;padding-bottom:30px}.project-label{margin-top:30px;gap:12px;font-size:9px}.project-label span{font-size:8px}.project-intro h1{font-size:39px;letter-spacing:-1.7px}.project-lead{font-size:19px;margin:20px 0 25px}.project-meta{grid-template-columns:1fr;gap:23px;padding-top:22px}.project-meta>p{font-size:13px}.project-meta strong{font-size:13px}.project-meta small{font-size:10px}.project-stage{border-radius:8px;max-height:500px}.project-stage>img{max-height:500px}.project-stage .music-composition{height:350px;padding:5% 10%}.recognition{display:block;padding:18px;margin-top:18px}.recognition span{font-size:8px}.recognition p{font-size:12px;line-height:1.7;margin-top:10px}.project-external{font-size:12px;padding:13px 17px;margin-top:15px}.case-layout{display:block;margin-top:35px;margin-bottom:30px}.case-toc{position:relative;top:0;display:flex;flex-direction:row;overflow:auto;gap:20px;padding:12px 0 22px;margin-bottom:20px;scrollbar-width:thin;white-space:nowrap}.case-toc>p{display:none}.case-toc a{font-size:10px;gap:5px}.case-toc a.active:before{display:none}.case-section{margin-bottom:55px}.case-section-head{grid-template-columns:22px 1fr;gap:10px;padding-top:20px;margin-bottom:22px}.case-section h2{font-size:22px;letter-spacing:-.7px;margin-bottom:13px}.case-section-head p{font-size:12px;line-height:1.9}.case-img-row{gap:20px 12px}.cols-3,.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.image-button{border-radius:5px}.image-zoom{display:none}.case-img-row figcaption{font-size:9px;padding-top:8px}.next-project{grid-template-columns:1fr 40px;padding:25px;margin-bottom:45px;gap:20px}.next-project h2{font-size:25px}.next-project p{font-size:11px;line-height:1.6}.next-project div>span{font-size:8px}.next-image{display:none}.next-arrow{font-size:36px}.lightbox-toolbar{height:70px;min-height:70px;padding:12px;font-size:10px}.lightbox-toolbar>div{gap:6px}.lightbox-toolbar button,.lightbox-original{font-size:10px;padding:8px 10px}.lightbox-canvas{padding:10px 35px}.lightbox-prev,.lightbox-next{width:30px;height:30px;font-size:18px}.lightbox-prev{left:4px}.lightbox-next{right:4px}.lightbox-caption{font-size:11px}.lightbox-original{display:none}}
.fan-blade:not(.fan-front){align-items:flex-end;padding-bottom:8px}.fan-blade:not(.fan-front) span{font-size:25px;line-height:1.1}.fan-blade:not(.fan-front) strong{font-size:16px;line-height:1.3}
@media(max-width:1100px) and (min-width:761px){.fan-blade:not(.fan-front){padding-left:145px;padding-bottom:8px;gap:13px}.fan-blade:not(.fan-front) span{font-size:20px}.fan-blade:not(.fan-front) strong{font-size:13px}}
@media(max-width:760px){.fan-blade:not(.fan-front){padding-left:220px;padding-bottom:5px;gap:12px}.fan-blade:not(.fan-front) span{font-size:19px}.fan-blade:not(.fan-front) strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}::view-transition-group(*){animation-duration:0s!important}.js-ready .reveal{opacity:1!important;transform:none!important}}
@media(max-width:760px){.fan-blade:not(.fan-front){padding-left:185px}}
.fan-blade:nth-child(4) span{font-size:18px}@media(max-width:1100px){.fan-blade:nth-child(4) span{font-size:16px}}
@media(max-width:1100px) and (min-width:761px){.fan-blade:not(.fan-front){padding-left:300px}}

/* Edge fan: the shared pivot lives outside the right edge; free ends face inward. */
.home-hero .fan{left:auto;right:-105px;top:50%;bottom:auto;width:min(760px,56vw);height:0;transform:none}
.home-hero .fan-blade{left:auto;right:0;top:-52.5px;width:100%;height:105px;transform-origin:calc(100% - 25px) 50%;transform:rotate(var(--angle));padding:0 34px;gap:20px;align-items:center;justify-content:flex-start;box-shadow:0 3px 6px #19201b09;border-radius:14px}
.home-hero .fan-blade:hover{transform:rotate(var(--angle)) translateX(-12px)}
.home-hero .fan-blade:not(.fan-front){align-items:center;padding:0 34px;gap:20px}
.home-hero .fan-blade:not(.fan-front) span{font-size:28px;line-height:1.1;padding-right:17px!important}
.home-hero .fan-blade:not(.fan-front) strong{font-size:18px;line-height:1.3}
.home-hero .fan-front{top:-75px;height:150px;padding-left:36px;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px}
.home-hero .fan-front strong{font-size:clamp(42px,5.2vw,74px);line-height:1;letter-spacing:-1px}
.home-hero .fan-front small{font-size:9px;letter-spacing:1.1px;writing-mode:horizontal-tb}
@media(max-width:1100px) and (min-width:761px){.home-hero .fan-blade:not(.fan-front){padding-left:27px;gap:16px}.home-hero .fan-blade:not(.fan-front) span{font-size:24px}.home-hero .fan-blade:not(.fan-front) strong{font-size:16px}}
@media(max-width:760px){.home-hero .fan{left:auto;right:-80px;top:auto;bottom:165px;width:min(520px,115vw);height:0;transform:none}.home-hero .fan-blade{top:-32px;height:64px;border-radius:10px;transform-origin:calc(100% - 25px) 50%}.home-hero .fan-blade:not(.fan-front){padding:0 24px;gap:13px}.home-hero .fan-blade:not(.fan-front) span{font-size:20px;padding-right:12px!important}.home-hero .fan-blade:not(.fan-front) strong{font-size:13px}.home-hero .fan-front{top:-49px;height:98px;padding-left:26px;gap:6px}.home-hero .fan-front strong{font-size:43px}.home-hero .fan-front small{font-size:7px;letter-spacing:.8px}}
.home-hero .fan-blade:not(.fan-front){align-items:flex-end;padding-bottom:10px}@media(max-width:760px){.home-hero .fan-blade:not(.fan-front){padding-bottom:6px}}
.contact-details{width:min(440px,48%);display:flex;flex-direction:column;gap:0}.contact-details>.eyebrow{margin-bottom:17px}.contact-copy{display:flex;align-items:center;justify-content:space-between;gap:25px;text-align:left;padding:18px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);cursor:pointer}.contact-copy>span{display:flex;flex-direction:column;gap:9px;min-width:0}.contact-copy small{font-size:11px;color:var(--muted)}.contact-copy strong{font-size:clamp(17px,2vw,26px);font-weight:500;overflow-wrap:anywhere}.contact-copy em{font-size:12px;font-style:normal;white-space:nowrap}.contact-copy:hover em{color:#17830e}.contact-copy:focus-visible,.pdf-actions a:focus-visible{outline:2px solid #17830e;outline-offset:5px}.contact-note{font-size:11px;color:var(--muted);padding-top:16px}.project-pdf-quick{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:30px;padding-top:23px;border-top:1px solid var(--line)}.project-pdf-quick>span{font-size:13px}.project-pdf-quick small{font-size:11px;color:var(--muted);margin-left:16px}.pdf-actions{display:flex;flex-wrap:wrap;gap:10px}.pdf-actions a{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;font-size:12px;border:1px solid #b7bcb0;border-radius:6px;white-space:nowrap;transition:background .2s}.pdf-actions a:hover{background:var(--project-paper,#eaf1e5)}.pdf-actions a:last-child{background:var(--project-ink,#263020);color:#fff;border-color:transparent}.project-pdf-section{border-top:1px solid var(--line);padding-top:30px;margin:20px 0 65px}.pdf-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 25px}.pdf-section-heading h2{font-size:clamp(23px,2.6vw,36px);font-weight:500;letter-spacing:-1px;margin:0 0 12px}.pdf-section-heading p{font-size:12px;color:var(--muted);margin:0}.pdf-reader{border:1px solid var(--line);border-radius:8px;overflow:hidden}.pdf-reader summary{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;cursor:pointer;font-size:13px;list-style:none}.pdf-reader summary::-webkit-details-marker{display:none}.pdf-reader summary span{font-size:21px}.pdf-reader[open] summary span{transform:rotate(45deg)}.pdf-reader-content{border-top:1px solid var(--line)}.pdf-reader-content p{font-size:11px;color:var(--muted);padding:14px 20px;margin:0}.pdf-reader iframe{display:block;width:100%;height:78vh;min-height:400px;border:0;background:#e8e8e6}@media(max-width:760px){.footer-top{flex-direction:column;align-items:stretch;gap:30px}.contact-details{width:100%}.contact-copy{padding:16px 0}.contact-copy strong{font-size:22px}.project-pdf-quick{align-items:flex-start;flex-direction:column;gap:16px;margin-top:24px}.project-pdf-quick small{margin-left:10px}.pdf-actions a{padding:11px 14px;font-size:11px}.pdf-section-heading{flex-direction:column;align-items:flex-start;gap:20px}.project-pdf-section{margin-bottom:45px}.pdf-reader iframe{height:65vh;min-height:350px}}
