/* Portfolio: native imagery and reusable contact, in the approved agency composition. */
.pf-page{--pf-paper:#f8f5ef;--pf-ink:#10191b;--pf-orange:#ff6500;background:var(--pf-paper);color:var(--pf-ink);overflow:clip}
.pf-shell{width:90.5%;max-width:1720px}.pf-page [hidden]{display:none!important}
.pf-page .pf-eyebrow{display:flex;align-items:center;gap:17px;text-transform:uppercase;letter-spacing:.19em;font-size:10px;font-weight:700;line-height:1.5;margin:0 0 24px}
.pf-eyebrow:before{content:"";width:30px;height:1px;flex:none;background:#ff7100}
.pf-hero{position:relative;isolation:isolate;overflow:clip;color:#f8f5ef;background:#090c0d;padding:140px 0 68px}
.pf-environment{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,#090c0dfb 0%,#090c0def 24%,#090c0d88 52%,#090c0d18 90%),url('../img/studio.webp') center 66%/cover}
.pf-ambient{position:absolute;inset:10% -15% -30% 30%;z-index:-2;background:radial-gradient(ellipse at 75% 52%,#ff680036,transparent 64%);animation:pf-atmosphere 14s ease-in-out infinite;pointer-events:none}
.pf-light{position:absolute;width:39%;height:80%;right:-4%;top:2%;z-index:-1;background:linear-gradient(102deg,transparent 40%,#ff6b0024 49%,#ffaf5538 51%,transparent 60%);filter:blur(23px);transform:rotate(16deg);animation:pf-light 13s ease-in-out infinite;pointer-events:none}
.pf-breadcrumb{font-size:13px;color:#c7ccc8;margin:12px 0 23px}.pf-breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:13px;margin:0;padding:0}.pf-breadcrumb li+li:before{content:"/";color:#78817e;margin-right:13px}.pf-breadcrumb a:hover{color:#ffb77a}
.pf-hero-grid{display:grid;grid-template-columns:minmax(0,45%) minmax(0,55%);align-items:center;position:relative;height:465px}
.pf-hero-copy{position:relative;z-index:3;padding:15px 0 35px;animation:pf-enter .9s both}
.pf-hero h1{font-size:clamp(51px,5.45vw,94px);font-weight:790;letter-spacing:-.055em;line-height:1.015;margin:0 0 26px;max-width:none}
.pf-hero h1>span,.pf-contact-copy h2>span{color:#ff7000;background:linear-gradient(150deg,#ffae59 -12%,#ff7b0b 25%,#ff5d00 85%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.pf-hero-lead{font-size:clamp(16px,1.27vw,21px);line-height:1.5;color:#d0d1cc;max-width:530px;letter-spacing:-.01em}
.pf-hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:27px}.pf-hero-actions .button{min-height:54px;font-size:16px;gap:25px;padding-inline:25px}.pf-hero-actions .button-primary{background:#ff6500;color:#090c0d}.pf-hero-actions .button-secondary{background:#090c0d60;border-color:#c9c8c376}
.pf-hero-visual{position:absolute;width:61%;right:-3%;top:50%;margin:0;transform:translateY(-46%);isolation:isolate}
.pf-ci-float{position:relative;animation:pf-float 10s ease-in-out infinite}
.pf-ci-scene{position:relative;aspect-ratio:980/600;width:100%;filter:drop-shadow(0 20px 18px #0006)}
.pf-ci-scene img{position:absolute;height:auto;max-width:none;user-select:none}
.pf-hero-visual figcaption{font-size:10px;color:#b8b8af;text-align:left;letter-spacing:.02em;position:relative;margin-top:15px;padding-left:17%;padding-right:145px}.pf-hero-visual figcaption:before{content:"";display:inline-block;vertical-align:middle;width:24px;height:1px;background:#ff7c00;margin-right:14px}
.pf-hero-orbit{position:absolute;left:0%;top:50%;width:105%;height:31%;border:1px solid #ff800056;border-radius:50%;transform:rotate(-10deg);z-index:-1;box-shadow:0 0 13px #ff6a0018}
.pf-hero-orbit i{position:absolute;width:5px;height:5px;border-radius:50%;background:#ffd2a1;box-shadow:0 0 12px 4px #ff6a00;offset-path:ellipse(50% 50% at 50% 50%);animation:pf-orbit 24s linear infinite}
.pf-hero-edge{position:absolute;z-index:5;left:0;bottom:-1px;width:100%;height:48px;pointer-events:none}
.pf-motion{position:absolute;right:0;bottom:-27px;z-index:6;display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 12px;border:1px solid #ffffff35;border-radius:24px;background:#090c0d80;color:#d8dbd4;font-size:10px}
.pf-hero>.pf-shell{position:relative}
.pf-collection{padding:69px 0 115px;position:relative;background:radial-gradient(ellipse at 1% 25%,#eae4d739,transparent 34%),var(--pf-paper)}
.pf-collection-heading h2{font-size:clamp(32px,3.1vw,49px);letter-spacing:-.05em;line-height:1.13;font-weight:750;margin:0}
.pf-collection-heading .pf-eyebrow{margin-bottom:20px}
.pf-filters{margin-top:31px}
.pf-categories{display:flex;gap:clamp(25px,3vw,56px);border-bottom:1px solid #d9d2c8;align-items:stretch}
.pf-categories button{position:relative;background:transparent;padding:18px 6px 20px;font-size:clamp(15px,1.25vw,19px);color:#637077;line-height:1.25;min-height:60px;font-weight:520;white-space:nowrap}
.pf-categories button:first-child{padding-left:0}.pf-categories button:after{content:"";position:absolute;left:0;bottom:-1px;right:0;height:2px;background:#ff6900;transform:scaleX(0);transition:transform .25s}
.pf-categories button[aria-pressed=true]{color:#d24e00;font-weight:650}.pf-categories button[aria-pressed=true]:after{transform:scaleX(1)}.pf-categories button:hover{color:#d24e00}
.pf-filter-controls{display:grid;grid-template-columns:minmax(220px,1.8fr) minmax(150px,1fr) minmax(150px,1fr) auto;gap:16px;padding:22px 0 4px;align-items:center}
.pf-filter-controls label{min-width:0}.pf-filter-controls select,.pf-filter-controls input{color-scheme:light;font-size:14px;color:#253338;background:transparent;border:1px solid #d5d0c8;border-radius:4px;padding:14px 36px 14px 15px;min-height:49px;width:100%;max-width:100%;outline-offset:3px}
.pf-filter-controls select{cursor:pointer;text-overflow:ellipsis}.pf-filter-controls input::placeholder{color:#6b777d;opacity:1}
.pf-search{position:relative}.pf-search svg{width:20px;height:20px;position:absolute;right:15px;top:15px;stroke:#38484e;stroke-width:1.6;fill:none;pointer-events:none}.pf-search input{padding-right:45px}
.pf-sort{display:flex;align-items:center;gap:8px;font-size:12px;color:#617077}.pf-sort select{border:none;padding-left:0;width:155px;font-weight:550}
.pf-results-bar{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin:3px 0 10px;gap:15px;font-size:12px;color:#758086}.pf-results-bar button{background:transparent;color:#bd4b00;font-size:12px;padding:10px 0;display:flex;gap:12px}.pf-results-bar button span{font-size:18px}
.pf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:39px 30px;list-style:none;padding:0;margin:0}
.pf-card{min-width:0;list-style:none;animation:pf-enter .5s ease both}
.pf-card-image{position:relative;aspect-ratio:1.78;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#ffffff90,transparent 80%),var(--pf-tone,#efebe5);isolation:isolate}
.pf-image-link{display:block;position:relative;height:100%;padding:10px;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pf-card-image img{width:100%;height:100%;object-fit:contain;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.pf-card-image:hover img{transform:scale(1.025)}.pf-image-link:focus-visible{outline-offset:-5px}
.pf-card .pf-fit-portrait .pf-image-link{display:flex;align-items:center;justify-content:center;padding:14px}
.pf-card .pf-fit-portrait img{width:auto;max-width:70%;height:100%;aspect-ratio:9/16;border:5px solid #182021;border-radius:22px;box-shadow:3px 9px 18px #13200c30}
.pf-card-copy{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:19px 2px 0}
.pf-card-copy h3{font-size:clamp(21px,1.7vw,28px);line-height:1.15;font-weight:730;letter-spacing:-.035em;margin:0 0 7px}.pf-card-copy h3 a:hover{color:#be4c00}
.pf-card-copy p{font-size:clamp(14px,1.15vw,18px);line-height:1.45;color:#627078;margin:0 0 7px}
.pf-card-copy small{font-size:12px;color:#899198;line-height:1.5}
.pf-card-arrow{width:43px;height:43px;border-radius:50%;border:1px solid #ff7800;color:#e15a00;display:grid;place-items:center;flex:none;margin-top:2px;font-size:23px;transition:background .25s,color .25s}
.pf-card-arrow:hover{background:#ff6500;color:#10191b}
.pf-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#fffdf5ed;color:#3a501d;box-shadow:0 4px 25px #0002;border:1px solid #ffffff8c}
.pf-play svg{fill:currentColor;width:26px;height:26px;margin-left:3px}.pf-play:hover{background:#ff7700;color:#111}
.pf-video-label{position:absolute;bottom:15px;left:16px;display:inline-block;font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;background:#ffffffb8;color:#36462f;border-radius:15px}
.pf-more{text-align:center;margin:43px 0 0}.pf-more .button,.pf-empty .button{color:#182326;background:transparent;border:1px solid #6e7879;min-height:51px;font-size:14px;gap:35px;padding-inline:28px;border-radius:4px}
.pf-more .button:hover{background:#fffaf3}.pf-empty{text-align:center;padding:70px 20px}.pf-empty h3{font-size:28px;letter-spacing:-.04em}.pf-empty p{font-size:17px;color:#69777e;line-height:1.5;margin:15px 0 25px}
.pf-contact{position:relative;isolation:isolate;background:#080f10;color:#f8f5ef;padding:58px 0 48px}
.pf-contact:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 2% 56%,#eb6c1424,transparent 40%),radial-gradient(ellipse at 98% 1%,#ff8c2420,transparent 37%);mask-image:linear-gradient(transparent,#000 100px,#000 60%,transparent)}
.pf-contact-edge{position:absolute;left:0;top:-43px;height:64px;width:100%;overflow:visible;pointer-events:none}.pf-edge-glow{fill:none;stroke:#ff8000;stroke-width:4;opacity:.5;filter:blur(5px)}
.pf-contact-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(40px,4.6vw,90px);align-items:start;position:relative}
.pf-contact-copy{position:relative;isolation:isolate;padding-top:12px;min-width:0}
.pf-contact-copy h2{font-size:clamp(42px,4.25vw,74px);line-height:1.06;font-weight:790;letter-spacing:-.05em;margin:0 0 24px}
.pf-contact-copy>p:not(.pf-eyebrow){font-size:clamp(18px,1.3vw,23px);line-height:1.5;color:#dde1dc;max-width:35ch;margin:0 0 23px}
.pf-contact-copy .pf-project-context{font-size:14px!important;color:#b8c1bd!important;max-width:47ch!important}
.pf-direct{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:30px}
.pf-direct a{display:flex;gap:16px;align-items:center;font-size:clamp(18px,1.7vw,28px);font-weight:600;line-height:1.4;max-width:100%}
.pf-direct a>span{width:46px;height:46px;border:1px solid #ff8a27;border-radius:50%;display:grid;place-items:center;flex:none;color:#f8f5ef;background:#ff6800}
.pf-direct svg{width:24px;height:24px;stroke-width:1.8}.pf-direct a:hover{color:#ffb872}
.pf-contact-orbit{position:absolute;z-index:-1;left:-9%;bottom:-100px;width:109%;height:230px;pointer-events:none;overflow:hidden}
.pf-orbit-point{fill:#ff9b37;stroke:#ffdfad;stroke-width:1.3;filter:drop-shadow(0 0 7px #ff6500);offset-path:path("M-40 5C130 260 590 240 610 90S200-30 100 30");animation:pf-orbit 24s linear infinite}.pf-point-second{animation-delay:-12s}
.pf-contact-panel{min-width:0}.pf-contact-panel .ia-contact-widget{padding:clamp(24px,2.3vw,40px);border:1px solid #d8dfda38;border-radius:14px;background:linear-gradient(145deg,#ffffff03,transparent 52%),#0f171950;box-shadow:0 24px 65px #0002;color:#f8f5ef}
.pf-contact-panel .contact-methods{gap:12px;margin-bottom:25px}.pf-contact-panel .contact-methods button{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 2px 16px;font-size:clamp(11px,.9vw,14px);line-height:1.4;font-weight:450;color:#e2e5df}
.pf-contact-panel .contact-methods button[aria-selected=true]{color:#ff8a1c;border-color:#ff7300}.pf-contact-panel .method-symbol{margin:0;flex:none;color:#f5f5ef}.pf-contact-panel .method-symbol svg{width:25px;height:25px;stroke-width:1.8}
.pf-contact-panel .ia-contact-widget h3{font-size:clamp(26px,2.05vw,34px);line-height:1.16;font-weight:730;letter-spacing:-.04em}
.pf-contact-panel .contact-method-intro{font-size:15px;line-height:1.55;margin:0 0 22px;color:#b6c2c6}
.pf-contact-panel .ia-contact-widget label{font-size:13px;margin-bottom:17px;color:#e3e8e5}
.pf-contact-panel .ia-contact-widget input:not([type=checkbox]),.pf-contact-panel .ia-contact-widget textarea{border-color:#d9e4e150;border-radius:5px;background:#ffffff02;padding:11px 13px;min-height:46px;font-size:15px;margin-top:7px}
.pf-contact-panel .ia-contact-widget textarea{min-height:116px;line-height:1.5}.pf-contact-panel .contact-field-row{gap:20px}
.pf-contact-panel .ia-contact-widget .contact-send{margin-top:1px;min-height:53px;background:linear-gradient(110deg,#ff7a00,#ff6400);font-size:15px;font-weight:650;border-radius:5px}
.pf-contact-panel .contact-after,.pf-contact-panel .contact-data-note{font-size:11px;line-height:1.6}.pf-contact-panel .contact-data-note{margin-top:18px;padding-top:16px}.pf-contact-panel .ia-contact-widget .contact-test{font-size:11px;margin:18px 0 0}
.pf-page+.ia-footer{background:#080f10}.pf-page+.ia-footer .ia-footer-top{padding-top:44px}.pf-page+.ia-footer .ia-footer-top:before{background:linear-gradient(90deg,transparent,#ff6a0030 22%,#ff8c1760 60%,#ff6a0030 85%,transparent)}
.pf-viewer{position:fixed;inset:0;width:min(1420px,96vw);height:min(980px,94dvh);max-height:94dvh;max-width:96vw;margin:auto;padding:0;border:1px solid #ffffff38;border-radius:10px;background:#0b1315;color:#f5f3ee;overflow:hidden;box-shadow:0 30px 90px #0008}
.pf-viewer[open]{display:flex;flex-direction:column}.pf-viewer::backdrop{background:#050a0dee;backdrop-filter:blur(9px)}
.pf-viewer-head,.pf-viewer-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 22px;flex:none}
.pf-viewer-head p{font-size:16px;line-height:1.4}.pf-viewer-head button,.pf-viewer-foot button{width:44px;height:44px;flex:none;border:1px solid #ffffff35;border-radius:50%;background:transparent;font-size:26px}
.pf-viewer-body{display:grid;place-items:center;flex:1;min-height:0;overflow:auto;padding:5px 20px}
.pf-viewer-body img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.pf-viewer-body video{max-width:100%;max-height:100%;width:auto;height:100%;object-fit:contain}.pf-viewer-foot{justify-content:center;font-size:13px}
.pf-single-top{position:relative;background:linear-gradient(110deg,#090f10 45%,#1a130e);color:#f8f5ef;padding:140px 0 100px;overflow:clip}
.pf-single-top h1{font-size:clamp(44px,5vw,82px);line-height:1.03;letter-spacing:-.055em;font-weight:760}
.pf-single-top .pf-eyebrow{margin:42px 0 19px}.pf-single-title{display:flex;align-items:flex-end;justify-content:space-between;gap:35px}
.pf-single-title>div>p{font-size:clamp(20px,1.65vw,28px);color:#ff872c;line-height:1.35;margin-top:18px}.pf-single-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;max-width:300px;justify-content:flex-end}
.pf-single-meta span{padding:10px 13px;border:1px solid #ffffff2c;border-radius:3px;color:#cdd2ce}
.pf-project-story{padding:42px 0 50px}
.pf-project-cover{position:relative;background:radial-gradient(ellipse at 50% 35%,#ffffff90,transparent 80%),var(--pf-tone,#eeece7);min-width:0}
.pf-project-cover>button{display:block;width:100%;padding:24px;background:transparent;position:relative}.pf-project-cover img{width:100%;max-height:640px;object-fit:contain;height:auto;margin:auto}
.pf-project-cover video{display:block;margin:auto;max-height:690px;max-width:100%;width:auto;background:#111}
.pf-project-cover.pf-fit-portrait{padding:22px}
.pf-zoom{position:absolute;right:16px;bottom:16px;width:41px;height:41px;border-radius:50%;border:1px solid #ff8100;color:#e56200;background:#fffdf4df;display:grid;place-items:center;font-size:22px}
.pf-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:65px 0 45px}
.pf-story-grid h2,.pf-project-scope h2{font-size:clamp(27px,2.3vw,38px);line-height:1.15;letter-spacing:-.04em;font-weight:720;margin:0 0 18px}
.pf-story-grid p:not(.pf-eyebrow){font-size:18px;line-height:1.65;color:#617078}
.pf-story-grid .pf-eyebrow{margin-bottom:20px}.pf-project-scope{padding:32px 0 42px;border-top:1px solid #ded6cb;border-bottom:1px solid #ded6cb}
.pf-project-scope ul{display:flex;gap:13px;flex-wrap:wrap;list-style:none;margin:0 0 25px;padding:0}.pf-project-scope li{padding:9px 13px;border:1px solid #cfc7b8;border-radius:3px;font-size:14px;color:#52636a}
.pf-service-link{display:inline-flex;gap:25px;color:#ba4e00;font-size:15px;padding-bottom:10px;border-bottom:1px solid #ff7700}
.pf-detail-heading{margin:62px 0 32px}.pf-detail-heading h2,.pf-related h2{font-size:clamp(35px,3.4vw,56px);letter-spacing:-.045em;line-height:1.1}.pf-detail-heading h2 span,.pf-related h2 span{color:#ff6500}
.pf-project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:36px 26px;align-items:start}.pf-project-gallery figure{min-width:0;margin:0}
.pf-project-gallery figure:first-child:last-child{grid-column:1/-1;max-width:1120px;width:100%;margin-inline:auto}
.pf-project-gallery button{display:block;position:relative;background:#eeebe5;width:100%;padding:12px}.pf-project-gallery img{width:100%;height:auto;max-height:600px;object-fit:contain}
.pf-project-gallery figcaption{font-size:14px;line-height:1.5;color:#617078;margin:14px 0 0}
.pf-project-next{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;margin:50px 0 15px}.pf-project-next .button-secondary{color:#1c2b2f;border-color:#8c9493}
.pf-related{padding:20px 0 115px}.pf-related h2{margin-bottom:33px}
.pf-motion-paused .pf-hero *,.pf-motion-paused .pf-contact *,[data-pf-motion-region].pf-offscreen *,[data-pf-motion-region].pf-offscreen :before,[data-pf-motion-region].pf-offscreen :after{animation-play-state:paused!important}
.pf-page [data-pf-reveal]{opacity:1;transform:none}
.pf-page.pf-ready [data-pf-reveal]:not(.pf-visible){opacity:0;transform:translateY(18px)}.pf-page.pf-ready [data-pf-reveal]{transition:opacity .65s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
@keyframes pf-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes pf-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(-.25deg)}}
@keyframes pf-atmosphere{0%,100%{opacity:.6;transform:translateX(-2%)}50%{opacity:1;transform:translateX(3%)}}
@keyframes pf-light{0%,100%{opacity:.12;transform:translateX(16%) rotate(16deg)}50%{opacity:.8;transform:translateX(-23%) rotate(16deg)}}
@keyframes pf-orbit{from{offset-distance:0%}to{offset-distance:100%}}
@media(min-width:1800px){.pf-hero{padding-top:150px}.pf-hero-grid{height:555px}.pf-hero-copy{padding:25px 0 45px}.pf-hero-visual{width:61%;right:-1%;transform:translateY(-47%)}}
@media(max-width:1200px) and (min-width:901px){.pf-hero-grid{height:420px}.pf-hero-actions .button{font-size:14px;padding-inline:18px;gap:15px}.pf-hero-actions{gap:10px}.pf-hero-visual{width:60%;right:-3%}.pf-filter-controls{gap:12px;grid-template-columns:minmax(200px,1.5fr) 1fr 1fr}.pf-sort{grid-column:3;justify-content:flex-end}.pf-sort select{width:130px;font-size:12px;padding-right:20px}.pf-contact-grid{gap:34px}.pf-contact-panel .contact-methods button{flex-direction:column;align-items:flex-start}}
@media(max-width:900px){
 .pf-hero{padding:112px 0 58px}.pf-breadcrumb{font-size:11px;margin-bottom:27px}.pf-hero-grid{grid-template-columns:1fr;height:auto}.pf-hero-copy{max-width:620px;padding:0}.pf-hero h1{font-size:clamp(50px,7.8vw,69px);letter-spacing:-.05em;margin-bottom:21px}.pf-hero-lead{max-width:550px;font-size:17px}
 .pf-hero-visual{position:relative;right:auto;top:auto;transform:none;width:86%;margin:10px auto -5%;max-width:650px}.pf-environment{background-image:linear-gradient(180deg,#090c0df5 0%,#090c0deb 32%,#090c0d44 73%,#090c0d30),url('../img/studio.webp');background-position:66% bottom}.pf-hero-visual figcaption{font-size:9px}.pf-motion{bottom:-30px}
 .pf-collection{padding-top:53px}.pf-categories{gap:28px}.pf-categories button{font-size:16px}.pf-filter-controls{grid-template-columns:1fr 1fr;gap:13px}.pf-search{grid-column:1/-1}.pf-sort{grid-column:1/-1;justify-content:flex-end}.pf-sort select{width:150px}
 .pf-grid{gap:31px 22px}.pf-card-copy{padding-top:16px;gap:12px}.pf-card-copy h3{font-size:22px}.pf-card-copy p{font-size:14px}.pf-card-copy small{font-size:10px}.pf-card-arrow{width:36px;height:36px;font-size:20px}.pf-play{width:50px;height:50px}.pf-card .pf-fit-portrait img{border-width:3px;border-radius:14px}
 .pf-contact-grid{grid-template-columns:1fr;gap:38px}.pf-contact-copy{max-width:670px}.pf-contact-copy h2{font-size:clamp(44px,6.8vw,62px)}.pf-contact-copy>p:not(.pf-eyebrow){max-width:48ch;font-size:19px}.pf-contact-orbit{bottom:-45px;height:190px;opacity:.7}.pf-contact-panel{max-width:760px}.pf-contact{padding-top:44px}
 .pf-single-title{display:block}.pf-single-meta{margin-top:25px;justify-content:flex-start;max-width:none}.pf-story-grid{gap:35px}.pf-story-grid p:not(.pf-eyebrow){font-size:16px}
}
@media(max-width:600px){
 .pf-shell{width:calc(100% - 40px)}.pf-hero{padding-top:103px;padding-bottom:62px}.pf-hero-grid{display:block}.pf-breadcrumb{font-size:10px;margin:0 0 27px}.pf-breadcrumb ol{gap:9px}.pf-breadcrumb li+li:before{margin-right:9px}
 .pf-page .pf-eyebrow{font-size:9px;gap:13px;letter-spacing:.14em;margin-bottom:18px}.pf-eyebrow:before{width:23px}
 .pf-hero h1{font-size:clamp(38px,10vw,54px);line-height:1.04;letter-spacing:-.045em;margin-bottom:20px}.pf-hero-lead{font-size:16px}.pf-hero-actions{margin-top:23px;gap:10px;flex-wrap:nowrap}.pf-hero-actions .button{font-size:12px;min-height:48px;padding-inline:12px;gap:12px;flex:1}.pf-hero-actions .button span{font-size:21px}
 .pf-hero-visual{width:111%;margin:16px -5.5% -4%;max-width:none}.pf-hero-visual figcaption{font-size:8px;margin-top:10px;text-align:center;padding:0}.pf-hero-edge{height:30px}.pf-motion{bottom:-32px;font-size:9px;min-height:33px}
 .pf-collection{padding-top:45px;padding-bottom:95px}.pf-collection-heading h2{font-size:31px;line-height:1.12;letter-spacing:-.045em;max-width:13ch}
 .pf-filters{margin-top:23px}.pf-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.pf-categories button{white-space:normal;text-align:center;padding:15px 2px;font-size:12px;min-height:60px;line-height:1.25}.pf-categories button:first-child{padding-left:2px}
 .pf-filter-controls{padding-top:18px;gap:11px}.pf-filter-controls input,.pf-filter-controls select{min-height:48px;font-size:14px;padding-left:11px;padding-right:28px}.pf-search svg{width:18px;right:12px}.pf-search input{font-size:16px;padding-right:38px}
 .pf-sort{font-size:11px;gap:7px}.pf-sort select{font-size:12px;min-height:38px;width:147px}.pf-results-bar{font-size:11px;min-height:37px;margin-top:0;margin-bottom:12px}
 .pf-grid{grid-template-columns:1fr;gap:33px}.pf-card-image{aspect-ratio:1.62}.pf-image-link{padding:9px}.pf-card-copy{padding:15px 1px 0}.pf-card-copy h3{font-size:24px;margin-bottom:6px}.pf-card-copy p{font-size:15px;margin-bottom:5px}.pf-card-copy small{font-size:11px}.pf-card-arrow{width:40px;height:40px;margin-top:0}.pf-card .pf-fit-portrait .pf-image-link{padding:11px}.pf-card .pf-fit-portrait img{border-width:4px;border-radius:17px}
 .pf-video-label{font-size:9px;bottom:11px;left:12px}.pf-play{width:53px;height:53px}.pf-more{margin-top:32px}.pf-more .button{width:100%;justify-content:center;font-size:13px}
 .pf-contact{padding-top:33px;padding-bottom:30px}.pf-contact-edge{top:-37px;height:48px}.pf-contact-copy{padding-top:0}.pf-contact-copy h2{font-size:clamp(35px,9vw,49px);letter-spacing:-.045em;margin-bottom:20px}.pf-contact-copy>p:not(.pf-eyebrow){font-size:17px}.pf-direct{gap:12px;margin-top:22px}.pf-direct a{font-size:clamp(16px,4.4vw,21px);gap:12px}.pf-direct a>span{width:42px;height:42px}.pf-direct svg{width:23px;height:23px}.pf-contact-orbit{left:-10%;width:110%;bottom:-20px;height:145px}
 .pf-contact-grid{gap:31px}.pf-contact-panel .ia-contact-widget{padding:23px 19px;border-radius:12px}.pf-contact-panel .contact-methods{gap:9px;margin-bottom:22px}.pf-contact-panel .contact-methods button{flex-direction:column;align-items:flex-start;font-size:11px;gap:9px;min-height:76px;padding:0 0 13px}.pf-contact-panel .ia-contact-widget h3{font-size:27px}.pf-contact-panel .contact-method-intro{font-size:14px;margin-bottom:20px}.pf-contact-panel .contact-field-row{grid-template-columns:1fr;gap:0}.pf-contact-panel .ia-contact-widget label{font-size:12px;margin-bottom:16px}.pf-contact-panel .ia-contact-widget input:not([type=checkbox]),.pf-contact-panel .ia-contact-widget textarea{font-size:16px}.pf-contact-panel .ia-contact-widget textarea{min-height:126px}
 .pf-viewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:none;border-radius:0}.pf-viewer-head,.pf-viewer-foot{padding:12px 16px;gap:12px}.pf-viewer-head p{font-size:13px}.pf-viewer-body{padding:0 8px}
 .pf-single-top{padding-top:110px;padding-bottom:60px}.pf-single-top .pf-eyebrow{margin-top:30px}.pf-single-top h1{font-size:clamp(36px,10vw,53px)}.pf-single-title>div>p{font-size:20px}.pf-single-meta{gap:8px}.pf-single-meta span{font-size:11px;padding:8px 10px}
 .pf-project-story{padding-top:24px}.pf-project-cover>button{padding:10px}.pf-project-cover.pf-fit-portrait{padding:12px}.pf-project-cover video{max-height:580px}.pf-story-grid{grid-template-columns:1fr;gap:32px;padding:40px 0 30px}.pf-story-grid h2{font-size:29px}.pf-story-grid p:not(.pf-eyebrow){font-size:16px;line-height:1.6}.pf-project-scope{padding:28px 0}.pf-project-scope h2{font-size:27px}.pf-project-scope ul{gap:8px;margin-bottom:22px}.pf-project-scope li{font-size:12px;padding:8px 10px}.pf-service-link{font-size:14px;gap:14px;line-height:1.4}
 .pf-detail-heading{margin:40px 0 25px}.pf-detail-heading h2,.pf-related h2{font-size:35px}.pf-project-gallery{grid-template-columns:1fr;gap:28px}.pf-project-gallery figcaption{font-size:13px;margin-top:11px}.pf-project-next{margin-top:35px;gap:13px}.pf-project-next .button{width:100%;font-size:13px;justify-content:center;padding-inline:13px}.pf-related{padding-bottom:95px}
}
@media(max-width:360px){.pf-shell{width:calc(100% - 32px)}.pf-hero-actions .button{font-size:11px;gap:8px;padding-inline:9px}.pf-hero-lead{font-size:15px}.pf-categories button{font-size:11px}.pf-collection-heading h2{font-size:29px}.pf-filter-controls{gap:8px}.pf-filter-controls select{font-size:12px}.pf-contact-panel .ia-contact-widget{padding-inline:15px}.pf-contact-panel .contact-methods button{font-size:10px}.pf-contact-panel .meeting-days{grid-template-columns:1fr}.pf-direct a{font-size:16px;gap:9px}.pf-direct a>span{width:37px;height:37px}}
@media(prefers-reduced-motion:reduce){.pf-page *,.pf-page :before,.pf-page :after{animation:none!important;transition:none!important}.pf-page [data-pf-reveal]{opacity:1!important;transform:none!important}.pf-motion{display:none!important}}



/* Sinemedic: real responsive screenshots projected into generated hardware. */
.pf-device-scene{position:relative;width:100%;aspect-ratio:3/2;filter:drop-shadow(0 23px 18px #0007)}
.pf-device-scene>svg{display:block;width:100%;height:auto;overflow:visible}
.pf-device-layout{position:relative;width:1536px;height:1024px}
.pf-device-mask{position:absolute;inset:0;width:1536px;height:1024px;overflow:hidden}
.pf-device-screen{position:absolute;left:0;top:0;transform-origin:0 0;overflow:hidden;backface-visibility:hidden;background:#f8f6f1}
.pf-device-screen>img{display:block;width:100%;height:auto;max-width:none}
.pf-device-screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,#fff5,transparent 38%,#030a1010);opacity:.12}
.pf-phone-status{position:relative;height:40px;background:#f8f6f1;color:#111;font:600 17px/40px Arial,sans-serif;padding:0 24px;display:flex;justify-content:space-between}
.pf-phone-status:after{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:112px;height:24px;border-radius:20px;background:#050606}
.pf-phone-status svg{width:43px;height:17px;align-self:center}
.pf-phone-screen{border-radius:38px}
.pf-hero-visual.pf-hero-devices{width:63%;right:-3.5%;transform:translateY(-49%)}
.pf-hero-devices figcaption{padding-left:15%;margin-top:-8px}
.pf-hero-devices .pf-hero-orbit{top:53%;width:100%}
@media(min-width:1800px){.pf-hero-visual.pf-hero-devices{width:62%;right:-1.5%;transform:translateY(-48%)}.pf-hero-devices figcaption{transform:translateY(-48px)}}
@media(max-width:1200px) and (min-width:901px){.pf-hero-visual.pf-hero-devices{width:60%;right:-3.5%}}
@media(max-width:900px){.pf-hero-visual.pf-hero-devices{width:94%;max-width:690px;right:auto;transform:none;margin:4px auto -3%}.pf-hero-devices figcaption{margin-top:-7px}}
@media(max-width:600px){.pf-hero-visual.pf-hero-devices{width:111%;max-width:none;margin:9px -5.5% -3%;right:auto;transform:none}.pf-hero-devices figcaption{padding:0;margin-top:-7px;text-align:center}}
.pf-laptop-mask{clip-path:polygon(24.47917% 7.12891%,70.37760% 12.69531%,68.61979% 41.50391%,67.12240% 41.01562%,65.88542% 41.60156%,65.03906% 43.16406%,64.71354% 61.62109%,21.09375% 52.63672%)}
.pf-laptop-screen{width:1425px;height:890px;transform:matrix3d(0.4330954150,0.0325870624,0.0000000000,-0.0000570226,-0.0610795015,0.5191828004,0.0000000000,-0.0000081868,0.0000000000,0.0000000000,1.0000000000,0.0000000000,376.0000000000,73.0000000000,0.0000000000,1.0000000000)}
.pf-tablet-mask{clip-path:polygon(73.30729% 20.80078%,95.24740% 25.78125%,95.96354% 27.14844%,94.27083% 78.90625%,93.61979% 80.17578%,78.38542% 73.82812%,78.58073% 46.38672%,77.99479% 44.62891%,76.82292% 43.65234%,72.59115% 42.67578%)}
.pf-tablet-screen{width:805px;height:1100px;transform:matrix3d(0.2709492187,0.0355884963,0.0000000000,-0.0001094633,0.0084693802,0.4804867573,0.0000000000,0.0000207341,0.0000000000,0.0000000000,1.0000000000,0.0000000000,1126.0000000000,213.0000000000,0.0000000000,1.0000000000)}
.pf-phone-mask{clip-path:polygon(65.88542% 42.57812%,66.86198% 42.18750%,75.97656% 44.23828%,76.82292% 45.21484%,77.27865% 47.07031%,76.49740% 86.52344%,76.10677% 87.98828%,75.26042% 88.57422%,66.27604% 85.54688%,65.42969% 84.37500%,65.03906% 82.42188%,65.29948% 44.33594%)}
.pf-phone-screen{width:375px;height:790px;transform:matrix3d(0.4323937956,0.0562177585,0.0000000000,-0.0000401063,0.0173166141,0.5835030339,0.0000000000,0.0000274707,0.0000000000,0.0000000000,1.0000000000,0.0000000000,1007.0000000000,432.0000000000,0.0000000000,1.0000000000)}
