.pf{--pf-m:clamp(20px,3vw,32px);--pf-gap:clamp(72px,9vw,136px);--pf-t1:clamp(20px,1.7vw,26px);--pf-t2:clamp(17px,1.3vw,19px);--pf-t3:clamp(36px,5vw,72px);--pf-t4:13px;--pf-t5:clamp(24px,2.4vw,34px);background:var(--bg-canvas);color:var(--text-main);font-family:var(--font-sans);overflow-x:clip}.pf a{color:inherit;text-decoration:none}.pf :where(h1,h2,h3,p){margin:0}.pf-section{padding:var(--pf-gap) var(--pf-m)}.pf-title{font-size:var(--pf-t3);font-weight:800;letter-spacing:-.035em;line-height:1;max-width:14ch}.pf-text{font-size:var(--pf-t2);line-height:1.6;color:var(--text-main);max-width:52ch}.pf-soft{color:var(--text-muted)}.pf-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 24px;border:0;border-radius:0;background:var(--primary);color:var(--text-main);font:700 var(--pf-t2)/1 var(--font-sans);cursor:pointer;transition:background var(--duration-fast),transform var(--duration-fast)}.pf-btn:hover{background:var(--primary-hover)}.pf-btn:active{background:var(--primary-active);transform:translateY(1px)}.pf a:focus-visible,.pf button:focus-visible,.pf-btn:focus-visible{outline:3px solid var(--text-main);outline-offset:3px}.pf-hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);grid-gap:clamp(32px,5vw,80px);gap:clamp(32px,5vw,80px);align-items:center;min-height:calc(100svh - 72px);padding:clamp(40px,6vw,88px) var(--pf-m)}.pf-h1{font-size:clamp(44px,6.4vw,104px);font-weight:800;letter-spacing:-.04em;line-height:.98;max-width:12ch}.pf-hero-line{margin-top:clamp(24px,3vw,40px);font-size:var(--pf-t1);line-height:1.4;font-weight:500;max-width:40ch}.pf-hero-who{margin-top:16px;font-size:var(--pf-t2);line-height:1.5;color:var(--text-main);font-weight:700}.pf-hero-actions{margin-top:clamp(24px,3vw,40px);display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px}.pf-link{font-size:var(--pf-t2);font-weight:700;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}.pf-link:hover{color:var(--primary-active)}.pf-hero-photo{position:relative;aspect-ratio:4/5;background:var(--bg-subtle);overflow:hidden}@media (max-width:760px){.pf-hero{grid-template-columns:1fr;min-height:0}.pf-hero-photo{max-width:320px}}.pf-work-head{margin-bottom:clamp(40px,6vw,80px)}.pf-rows{margin:0 calc(var(--pf-m) * -1)}.pf-row{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;grid-gap:12px 40px;gap:12px 40px;width:100%;padding:36px var(--pf-m);border:0;border-radius:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font-family:inherit;transition:background var(--duration-normal) var(--ease-spring)}.pf-row:nth-child(odd){background:var(--bg-subtle)}.pf-row:hover{background:var(--primary-soft)}.pf-row-name{font-size:var(--pf-t3);font-weight:800;letter-spacing:-.04em;line-height:1;transition:transform var(--duration-normal) var(--ease-spring),color var(--duration-fast)}.pf-row:hover .pf-row-name{transform:translateX(10px);color:var(--primary-active)}.pf-row-info{font-size:var(--pf-t2);line-height:1.5;color:var(--text-main);justify-self:end;width:100%;max-width:46ch}.pf-row-status{display:block;margin-top:6px;font-size:var(--pf-t4);font-weight:700;color:var(--text-main)}@media (max-width:760px){.pf-row{grid-template-columns:1fr;padding:28px var(--pf-m)}.pf-row-name{font-size:9vw}}.pf-process{background:var(--text-main)}.pf-process,.pf-process .pf-title{color:var(--bg-canvas)}.pf-steps{margin-top:clamp(40px,6vw,80px);display:grid;grid-gap:clamp(28px,4vw,52px);gap:clamp(28px,4vw,52px)}.pf-step{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-gap:12px 40px;gap:12px 40px;align-items:baseline}.pf-step-name{font-size:var(--pf-t5);font-weight:800;letter-spacing:-.03em;line-height:1.05}.pf-step-text{font-size:var(--pf-t2);line-height:1.55;color:#D9D6CC;justify-self:end;width:100%;max-width:46ch}@media (max-width:760px){.pf-step{grid-template-columns:1fr}}.pf-skill-groups{margin-top:clamp(40px,6vw,80px);display:grid;grid-gap:clamp(28px,4vw,48px);gap:clamp(28px,4vw,48px)}.pf-skill{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);grid-gap:8px 40px;gap:8px 40px;align-items:baseline}.pf-skill-name{font-size:var(--pf-t1);font-weight:800;letter-spacing:-.02em}.pf-skill-list{font-size:var(--pf-t5);line-height:1.25;letter-spacing:-.02em;color:var(--text-main);font-weight:600}.pf-skill-list b{font-weight:700}@media (max-width:760px){.pf-skill{grid-template-columns:1fr}}.pf-about-text{font-size:var(--pf-t1);line-height:1.3;letter-spacing:-.015em;color:var(--text-main);font-weight:500;max-width:56ch}.pf-about-text p{margin:0}.pf-about-text strong{font-weight:800}.pf-hl{padding:0 .1em;box-decoration-break:clone;-webkit-box-decoration-break:clone;color:var(--text-main);font-weight:600}.pf-hl-a{background:var(--primary-soft)}.pf-hl-b{background:var(--bg-subtle)}.pf-hl-c{background:var(--accent-green-soft)}.pf-hl-cta{background:var(--primary);color:var(--text-main)}.pf-about-cta{display:inline-block;margin-top:28px;font-size:inherit;page-break-inside:avoid;break-inside:avoid}@media (max-width:900px){.pf-about-text{max-width:none}}.pf-split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);grid-gap:24px clamp(32px,5vw,80px);gap:24px clamp(32px,5vw,80px);align-items:start}.pf-posts{margin:0 calc(var(--pf-m) * -1) 0 0}.pf-post{display:block;padding:24px var(--pf-m) 24px 0}.pf-post:nth-child(odd){background:var(--bg-subtle);padding-left:20px;margin-left:-20px}.pf-post-title{font-size:var(--pf-t5);font-weight:800;letter-spacing:-.03em;line-height:1.15}.pf-post-date{margin-left:16px;font-size:var(--pf-t4);color:var(--text-main);font-weight:700;letter-spacing:0;white-space:nowrap}.pf-post:hover .pf-post-title{color:var(--primary-active)}@media (max-width:900px){.pf-split{grid-template-columns:1fr}.pf-posts{margin-right:calc(var(--pf-m) * -1)}.pf-post:nth-child(odd){padding-left:var(--pf-m);margin-left:calc(var(--pf-m) * -1)}.pf-post{padding-left:0}}.pf-contact{background:var(--primary)}.pf-contact,.pf-contact .pf-title{color:var(--text-main)}.pf-contact-grid{margin:clamp(32px,5vw,72px) calc(var(--pf-m) * -1) 0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:32px;gap:32px;align-items:start}.pf-contact-rows{margin:0}.pf-qr{margin:0 var(--pf-m) 0 0;width:clamp(220px,20vw,300px);background:#fff}.pf-qr img{display:block;width:100%;height:auto}@media (max-width:900px){.pf-contact-grid{grid-template-columns:1fr}.pf-qr{margin:0 0 0 var(--pf-m);width:240px}}.pf-contact-row{display:block;padding:22px var(--pf-m);font-size:clamp(22px,5vw,72px);font-weight:800;letter-spacing:-.04em;line-height:1;overflow-wrap:anywhere;transition:background var(--duration-fast)}.pf-contact-row:nth-child(odd){background:rgba(29,26,23,.08)}a.pf-contact-row:hover{background:var(--text-main);color:var(--bg-canvas)}.pf-contact-row small{display:block;font-size:var(--pf-t4);font-weight:700;letter-spacing:0;margin-bottom:10px}.pf-contact-hello{display:flex;align-items:center;gap:24px;padding:28px var(--pf-m);font-size:var(--pf-t3);font-weight:800;letter-spacing:-.04em;line-height:1}.pf-round{display:inline-grid;place-items:center;flex:none;width:.9em;height:.9em;border-radius:50%;background:var(--text-main);color:var(--bg-canvas);font-size:1em;transition:transform var(--duration-normal) var(--ease-spring)}.pf-contact-hello:hover .pf-round{transform:translateX(8px) rotate(-45deg)}.pf-footer{background:var(--text-main);color:var(--bg-canvas);padding:56px var(--pf-m) 40px}.pf-footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:32px;gap:32px;font-size:16px;line-height:1.7}.pf-footer-grid strong{display:block;color:var(--bg-canvas);font-weight:700}.pf-footer-grid a,.pf-footer-grid span{color:#BDB9AE}.pf-footer-grid a:hover{color:#fff}.pf-footer-mark{margin-top:clamp(48px,8vw,120px);font-size:clamp(60px,15.5vw,224px);font-weight:800;letter-spacing:-.06em;line-height:.8;white-space:nowrap;overflow:hidden}.pf-footer-legal{margin-top:20px;font-size:var(--pf-t4);color:#BDB9AE}@media (max-width:760px){.pf-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pf-modal h2{font-size:clamp(26px,3vw,38px);font-weight:800;letter-spacing:-.03em;line-height:1.1;padding-right:40px}.pf-modal-meta{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;padding:16px 18px;background:var(--bg-subtle);font-size:15px;line-height:1.4}.pf-modal-meta span{display:block;font-size:var(--pf-t4);color:var(--text-muted);font-weight:600;margin-bottom:2px}.pf-modal h3{margin:26px 0 8px;font-size:18px;font-weight:800}.pf-modal li,.pf-modal p{font-size:16px;line-height:1.6;color:var(--text-main)}.pf-modal ul{margin:8px 0 0;padding-left:20px}.pf-modal-actions{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.pf-btn-plain{background:var(--bg-subtle);color:var(--text-main)}.pf-btn-plain:hover{background:var(--border)}.pf-js .pf-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease-spring),transform .7s var(--ease-spring);transition-delay:var(--d,0s)}.pf-js .pf-reveal.pf-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.pf-js .pf-reveal{opacity:1;transform:none;transition:none}.pf-round,.pf-row-name{transition:none}}.pf-quote{max-width:560px}.pf-quote-note{margin:10px 0 20px;font-size:16px;line-height:1.5;color:var(--text-main)}.pf-field{display:block;margin-bottom:16px}.pf-field span{display:block;margin-bottom:6px;font-size:14px;font-weight:700;color:var(--text-main)}.pf-field input,.pf-field select,.pf-field textarea{width:100%;padding:13px 14px;border:0;border-radius:0;background:var(--bg-subtle);font:500 17px/1.3 var(--font-sans);color:var(--text-main)}.pf-field input:focus,.pf-field select:focus,.pf-field textarea:focus{outline:3px solid var(--text-main);outline-offset:0;background:#fff}.pf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.pf-quote-error{margin:4px 0 0;font-size:15px;font-weight:700;color:#B42318}.pf-quote-direct{margin-top:20px;font-size:15px;line-height:1.5;color:var(--text-main)}.pf-quote-direct a{font-weight:700;text-decoration:underline;text-underline-offset:4px}.pf-btn:disabled{opacity:.6;cursor:progress}.pf-quick{margin-top:clamp(28px,4vw,48px);display:flex;align-items:center;gap:24px;flex-wrap:wrap}.pf-quick-qr{width:clamp(120px,11vw,160px);height:auto;flex:none;background:#fff}.pf-quick-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:12px;gap:12px;font-size:var(--pf-t2);line-height:1.3;font-weight:700}.pf-quick-list span{display:block;font-size:var(--pf-t4);font-weight:700;color:var(--text-muted)}.pf-quick-list a{text-decoration:underline;text-underline-offset:4px}.pf-row-static{cursor:default}.pf-row-static:hover{background:transparent}.pf-row-static:nth-child(odd):hover{background:var(--bg-subtle)}.pf-row-static:hover .pf-row-name{transform:none;color:inherit}.pf-exp{list-style:none;margin:0 calc(var(--pf-m, 24px) * -1);padding:0;font-family:var(--font-sans);color:var(--text-main)}.pf-exp-row{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,1fr);align-items:center;grid-gap:12px 24px;gap:12px 24px;padding:18px var(--pf-m,24px)}.pf-exp-row:nth-child(odd){background:var(--bg-subtle)}.pf-exp-logo{width:56px;height:56px;object-fit:contain;background:#fff}.pf-exp-org{font-size:clamp(24px,2.4vw,34px);font-weight:800;letter-spacing:-.03em;line-height:1.1}.pf-exp-role{font-size:clamp(17px,1.3vw,19px);line-height:1.4;font-weight:500}@media (max-width:760px){.pf-exp-row{grid-template-columns:56px minmax(0,1fr);gap:4px 16px}.pf-exp-logo{grid-row:1/span 2;align-self:start}.pf-exp-org{font-size:22px}}.pf-products{margin:clamp(32px,5vw,64px) calc(var(--pf-m) * -1) 0}.pf-product{padding:clamp(40px,5vw,64px) var(--pf-m)}.pf-product:nth-child(odd){background:var(--bg-subtle)}.pf-product-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-gap:12px 40px;gap:12px 40px;align-items:start}.pf-product-name{font-size:var(--pf-t3);font-weight:800;letter-spacing:-.04em;line-height:1}.pf-product-info{font-size:var(--pf-t2);line-height:1.5;max-width:46ch}.pf-product-info p{font-weight:700}.pf-points{margin:12px 0 0;padding-left:20px}.pf-points li{margin-bottom:4px}.pf-product-toggle{display:inline-flex;align-items:center;gap:.25em;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;cursor:pointer}.pf-product-toggle:hover{color:var(--primary-active)}.pf-product-chev{display:inline-block;font-weight:400;transition:transform .15s}.pf-product-toggle[aria-expanded=true] .pf-product-chev{transform:rotate(90deg)}.pf-product-more{background:none;border-top:0;border-left:0;border-right:0;padding:0;cursor:pointer;font-family:inherit;color:inherit}.pf-gallery{margin-top:clamp(24px,3vw,40px);display:grid;grid-gap:14px;gap:14px}.pf-gallery-main{display:block;width:100%;padding:0;border:1px solid var(--border-strong);border-radius:0;background:#fff;cursor:zoom-in}.pf-gallery-main img{display:block;width:100%;height:auto;max-height:min(78vh,920px);object-fit:contain;object-position:top center}.pf-gallery-cap{margin:0;font-size:var(--pf-t2);font-weight:700}.pf-gallery-count{color:var(--text-muted);font-weight:500;margin-right:6px}.pf-gallery-thumbs{display:flex;flex-wrap:wrap;gap:10px}.pf-thumb{width:132px;aspect-ratio:4/3;padding:0;border:2px solid var(--border);border-radius:0;background:#fff;overflow:hidden;cursor:pointer}.pf-thumb:hover{border-color:var(--border-strong)}.pf-thumb[aria-current=true]{border-color:var(--primary)}.pf-thumb img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}@media (max-width:760px){.pf-product-head{grid-template-columns:1fr}.pf-product-name{font-size:9vw}.pf-thumb{width:28vw}}.pf-lightbox{position:fixed;inset:0;z-index:200;background:rgba(29,26,23,.86);display:grid;place-items:center;padding:24px;overflow:auto}.pf-lightbox-body{width:min(1400px,100%)}.pf-lightbox-body img{display:block;width:100%;height:auto;max-height:92vh;object-fit:contain;object-position:top;background:#fff}.pf-lightbox-close{position:fixed;top:16px;right:16px;width:48px;height:48px;border:0;border-radius:0;background:var(--bg-canvas);color:var(--text-main);font-size:20px;cursor:pointer}.pf-product-link{display:inline-block;margin-top:16px}.pf-about-text .pf-about-aside{margin-top:20px;font-size:var(--pf-t2)}.pf-consent{display:flex;gap:10px;align-items:flex-start;margin:4px 0 16px;font-size:14px;line-height:1.5}.pf-consent input{margin-top:4px;flex:none;width:18px;height:18px;accent-color:var(--primary)}.pf-consent a{text-decoration:underline;text-underline-offset:3px}.pf-prose{max-width:72ch}.pf-prose h2{margin:36px 0 8px;font-size:var(--pf-t2);font-weight:800}.pf-prose li,.pf-prose p{font-size:17px;line-height:1.6}.pf-prose ul{padding-left:20px}.pf-prose li{margin-bottom:8px}.pf-prose a{text-decoration:underline;text-underline-offset:3px}.pf-prose-date{color:var(--text-muted);margin:8px 0 0}.pf-stat-form{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.pf-stat-form input,.pf-stat-form select{padding:10px 12px;border:1px solid var(--border-strong);background:#fff;font:inherit;min-width:0}.pf-stat-form input{flex:1 1 260px}.pf-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:24px;gap:24px;margin-top:24px}.pf-stat-block h2{margin:0 0 8px}.pf-stat-block table{width:100%;border-collapse:collapse}.pf-stat-block td{padding:6px 0;border-bottom:1px solid var(--border);font-size:15px}.pf-stat-block td:last-child{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}