.desk-page{--ink:#10233f;--gold:#c7a561;--paper:#f6f3eb}.desk-hero{padding:80px 0;background:var(--paper);overflow:hidden}.desk-hero-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.desk-hero h1{font-size:clamp(43px,5.2vw,74px);letter-spacing:-2.4px}.desk-lede{max-width:520px;font-size:17px;color:#546172;margin-bottom:30px}.desk-solid{display:inline-block;background:var(--ink);color:#fff8e8;border:0;padding:15px 21px;font-size:13px;font-weight:700;cursor:pointer}.desk-solid:hover{background:#314b6c}.desk-line{display:inline-block;margin-left:22px;text-decoration:underline;text-underline-offset:5px;font-size:13px}.desk-ticker{background:#c7a561;color:#0b1f38;padding:15px 0;font-size:10px;letter-spacing:1.5px}.desk-ticker span{margin:0 28px;opacity:.6}.desk-ticker a{float:right;font-size:9px;letter-spacing:1px}.desk-section{padding-top:85px;padding-bottom:85px;scroll-margin-top:110px}.desk-section-title{margin-bottom:40px}.desk-services{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;align-items:start}.desk-service{border:1px solid #d4d2c9;background:#fff;padding:25px;min-width:0}.service-index{font:28px Georgia;color:#ab8a4c;margin-bottom:20px}.desk-service .eyebrow{font-size:8px;letter-spacing:1.5px}.desk-service h3{font:28px/1.2 Georgia;max-width:400px;margin-bottom:16px}.desk-service p{font-size:14px;color:#536174}.audience{border-left:2px solid #c7a561;padding-left:14px;margin:22px 0}.audience b{font-size:11px;letter-spacing:1px;text-transform:uppercase}.audience p{font-size:12px;margin:6px 0}.desk-service details{border-top:1px solid #ddd8ce;margin-top:22px}.desk-service summary{display:flex;justify-content:space-between;font-size:12px;list-style:none;padding:17px 0;cursor:pointer}.desk-service summary::-webkit-details-marker{display:none}.service-faq{padding-bottom:15px}.service-faq h4{font-size:13px;margin-bottom:8px}.service-faq p{font-size:12px}.desk-pick{display:block;border:0;background:none;border-bottom:1px solid #a2844b;padding:9px 0;font-size:12px;color:#10233f;cursor:pointer;text-align:left;max-width:100%}.desk-why{background:#10233f;color:#f6f3eb;padding:70px 0}.desk-why>.wrap>p:not(.eyebrow){max-width:700px;color:#c7d0dc}.desk-why .eyebrow{color:#d8bb86}.desk-process{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:40px}.desk-process b{color:#d3b57d;font:26px Georgia}.desk-process h3{margin-top:15px;font-size:18px}.desk-process p{font-size:13px;color:#bbc6d5}.desk-request{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:start}.desk-request aside p:not(.eyebrow){color:#536174;font-size:14px}.desk-note{font-size:11px!important;color:#687386!important;line-height:1.7}.desk-form-panel{background:white;border:1px solid #d6d3c9;padding:30px;min-width:0}.desk-form-panel label{display:block;font-size:12px;font-weight:700;margin-bottom:20px}.desk-form-panel label span{font-weight:400;color:#6c7684}.desk-form-panel input,.desk-form-panel select,.desk-form-panel textarea{display:block;width:100%;min-width:0;margin-top:8px;border:1px solid #c9cdd1;border-radius:0;padding:13px;background:#faf9f5;color:#10233f;font-size:14px}.desk-form-panel textarea{resize:vertical}.desk-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.desk-review-actions{display:flex;align-items:center;gap:25px;margin-top:25px;flex-wrap:wrap}.desk-review-actions>button:not(.desk-solid){border:0;background:none;text-decoration:underline;cursor:pointer}.rq-row{padding:12px 0;border-bottom:1px solid #e4e1d8;display:grid;grid-template-columns:80px 1fr;gap:20px;font-size:13px;overflow-wrap:anywhere;white-space:pre-wrap}.rq-row span{color:#687386}[hidden]{display:none!important}
/* Design: a working specimen desk, not a pretend client portfolio. */
.desk-graphic-design .desk-hero{background:#e6dfcf}.studio-poster{position:relative;background:#12243b;color:#f7ecd1;aspect-ratio:4/5;padding:30px;box-shadow:14px 14px 0 #bc9853;transform:rotate(3deg);transition:background .4s,color .4s,transform .4s}.studio-poster>span{font-size:8px;letter-spacing:1.8px}.studio-poster>strong{display:block;font:130px/.9 Georgia;letter-spacing:-10px;margin:35px 0 15px}.studio-poster>strong span{color:#c7a561;font:80px Arial}.studio-poster>p{font:39px/.95 Georgia;letter-spacing:-1px;margin:0 0 35px}.studio-poster>div{font-size:8px;border-top:1px solid #dbc9a05c;padding-top:15px;letter-spacing:1px}.studio-controls{display:flex;gap:8px;margin-top:30px;flex-wrap:wrap}.studio-controls button{border:1px solid #7c704f;background:transparent;padding:9px 13px;color:#172c46;font-size:11px;cursor:pointer}.studio-controls button[aria-pressed=true]{background:#172c46;color:#fff}.studio-poster.specimen-layout{transform:rotate(-3deg)}.studio-poster.specimen-layout>strong{font-family:Arial;font-weight:800;letter-spacing:-16px}.studio-poster.specimen-layout>p{text-align:right;font-family:Arial;font-size:31px;font-weight:bold}.studio-poster.specimen-colour{background:#c7a561;color:#10233f}.studio-poster.specimen-colour>strong span{color:#f7ecd1}.specimen-caption{font-size:10px;margin-top:23px;color:#625d51}.desk-graphic-design .desk-services{grid-template-columns:repeat(3,1fr)}.desk-graphic-design .desk-service{border:0;border-top:4px solid #10233f;padding:23px 17px;background:#eeebe2}.desk-graphic-design .desk-service:nth-child(2n){background:#10233f;color:#f7ecd1;border-color:#c7a561}.desk-graphic-design .desk-service:nth-child(2n) p,.desk-graphic-design .desk-service:nth-child(2n) button{color:#d1d8e1}.desk-graphic-design .desk-service h3{font-size:28px}.desk-graphic-design .service-index{font-size:50px;line-height:1}
/* Web: a browser frame and structured, horizontal requirement rows. */
.desk-websites .desk-hero{background:#0c203b;color:#f6f3eb}.desk-websites .desk-hero em{color:#d8bc84}.desk-websites .desk-lede{color:#bdcada}.desk-websites .desk-hero .desk-solid{background:#c7a561;color:#0c203b}.web-frame{border:1px solid #52647b;border-radius:10px;background:#f5f2e9;transform:perspective(1000px) rotateY(-7deg) rotateX(3deg);box-shadow:25px 30px 0 #203751}.web-top{display:flex;align-items:center;gap:6px;background:#1f3551;padding:15px;border-radius:9px 9px 0 0}.web-top i{height:6px;width:6px;border:1px solid #baaa8c;border-radius:50%}.web-top span{font-size:8px;letter-spacing:1px;margin-left:15px;color:#cbd3df}.web-canvas{padding:30px;color:#10233f}.web-canvas small{font-size:8px;letter-spacing:2px}.web-canvas>strong{display:block;font:43px/1.05 Georgia;margin:25px 0}.web-wire{display:flex;gap:10px;margin:30px 0}.web-wire b{height:55px;background:#dcd5c5;flex:1;border-top:3px solid #b5955d}.web-canvas>span{font-size:8px;letter-spacing:1px}.desk-websites .desk-services{display:block;border-top:1px solid #bcbebf}.desk-websites .desk-service{display:grid;grid-template-columns:90px 1fr;border:0;border-bottom:1px solid #c9cccf;background:transparent;padding:30px 0}.desk-websites .service-index{font:42px Arial;color:#a38651}.desk-websites .service-body{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.desk-websites .service-body>.eyebrow,.desk-websites .service-body>h3{grid-column:1}.desk-websites .service-body>p{grid-column:1}.desk-websites .audience{grid-column:2;grid-row:1/4;margin-top:0}.desk-websites .service-body>details{grid-column:1/3}.desk-websites .desk-pick{grid-column:1/3;justify-self:start}
/* Marketing: a campaign planning board. No invented performance numbers. */
.desk-digital-marketing .desk-hero{background:#f2efe6}.campaign-board{border:1px solid #c3bcae;background:#e0d6c2;padding:20px;transform:rotate(-2deg)}.campaign-board>p{font-size:8px;letter-spacing:1.6px;margin-bottom:18px}.campaign-goal{background:#10233f;color:#f9f1de;padding:26px}.campaign-goal span{font-size:9px;letter-spacing:2px;display:block}.campaign-goal b{font:35px/1.1 Georgia;display:block;margin-top:22px}.campaign-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.campaign-pair>div{background:#f8f4e9;padding:20px 14px;font-size:8px;letter-spacing:1px}.campaign-pair strong{font:17px Georgia;display:block;margin-top:13px;letter-spacing:0}.campaign-last{margin-top:20px;border-top:1px solid #a79c83;padding-top:15px;font-size:9px}.desk-digital-marketing .desk-services{grid-template-columns:repeat(2,1fr);gap:20px}.desk-digital-marketing .desk-service{position:relative;border:1px solid #c8b890;padding:28px 28px 28px 60px;box-shadow:5px 5px 0 #e2dac8}.desk-digital-marketing .service-index{position:absolute;left:18px;top:28px;font:20px Arial;writing-mode:vertical-lr;letter-spacing:3px}.desk-digital-marketing .desk-service h3{font-family:Arial;font-size:25px;font-weight:600;letter-spacing:-.7px}
/* Apps: scroll opens a Puhor app concept, with real readable page sections. */
.desk-apps{background:#091b31}.desk-apps>.site-header{background:#f8f7f2}.app-opening{height:155vh;min-height:850px;background:radial-gradient(ellipse at center,#203b58,#091b31 70%);color:#f5efdf;position:relative}.app-opening-sticky{height:calc(100vh - 94px);min-height:540px;position:sticky;top:94px;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;padding:25px}.app-opening-kicker{font-size:9px;letter-spacing:3px;color:#d6bc87;margin-bottom:18px}.opening-device{position:relative;width:var(--opening-width,285px);max-width:100%;height:420px;border:8px solid #4a5664;border-radius:46px;background:#10233f;box-shadow:0 35px 85px #0008;padding:28px 20px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;text-align:center;will-change:width,border-radius;border-radius:var(--opening-radius,46px)}.device-island{position:absolute;top:12px;left:50%;translate:-50% 0;width:75px;height:15px;background:#050c17;border-radius:20px}.app-splash{opacity:var(--splash-opacity,1);transform:translateY(calc(var(--open-progress,0)*-25px));pointer-events:none}.app-splash img{height:65px;width:65px;object-fit:contain;background:#f6f3eb;border-radius:50%;padding:8px}.app-splash strong{display:block;font:30px Georgia;letter-spacing:4px;margin-top:15px}.app-splash span{font-size:9px;letter-spacing:2px;color:#dac08b}.app-splash p{font-size:11px;margin:25px 0 0;color:#bbc7d6}.app-open-state{position:absolute;inset:48px 24px 25px;text-align:left;opacity:var(--app-opacity,0);visibility:var(--app-visibility,hidden);display:flex;flex-direction:column;justify-content:center}.app-open-state .eyebrow{color:#d6bc87;font-size:8px}.app-open-state h1{font-size:clamp(30px,4vw,48px);letter-spacing:-1px;margin-bottom:15px}.app-open-state h1 em{color:#dec694}.app-open-state>p{font-size:13px;max-width:500px;color:#d4deea}.app-launch-links{display:flex;gap:10px;flex-wrap:wrap}.app-launch-links a{font-size:11px;border:1px solid #bfa575;padding:10px 15px}.app-launch-links a:last-child{background:#c7a561;color:#10233f}.app-scroll-note{font-size:10px;color:#b9c7d8;margin:24px 0 0}.app-experience{max-width:1100px;margin:0 auto;background:#f6f3eb;border:1px solid #425774;border-radius:22px 22px 0 0;overflow:clip}.app-experience>.wrap{width:calc(100% - 70px)}.app-toolbar{position:sticky;top:94px;z-index:10;padding:18px 35px;background:#10233ff5;color:#f7f0df;display:flex;justify-content:space-between;gap:15px;font-size:11px}.app-toolbar strong{letter-spacing:1.5px}.app-toolbar nav{display:flex;gap:20px}.app-experience .desk-services{display:block}.app-experience .desk-service{border:0;background:#e8e4da;border-radius:16px;padding:30px}.app-experience .desk-service h3{font:32px Georgia}.app-experience .desk-why>.wrap{width:calc(100% - 70px)}.app-experience .desk-request{grid-template-columns:1fr;gap:20px}.app-experience .desk-request aside{max-width:650px}.app-experience .desk-form-panel{border-radius:15px}.app-experience .desk-section{padding-top:60px;padding-bottom:60px}.app-experience .desk-process{gap:28px}.app-scope-label{padding:15px 35px;background:#ded5c3;font-size:10px;color:#394d67}.desk-apps>footer{color:#f3f0e7;background:#041020;margin-top:65px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.opening-device{width:750px!important;border-radius:22px!important}.app-splash{display:none}.app-open-state{opacity:1!important;visibility:visible!important}.app-opening{height:auto;min-height:0}.app-opening-sticky{position:relative;top:0;height:auto;min-height:560px}.studio-poster{transition:none}.motion-ready{opacity:1!important;transform:none!important}}
@media(max-width:1000px){.desk-hero-inner{gap:40px}.desk-graphic-design .desk-services{grid-template-columns:repeat(2,1fr)}.desk-request{gap:35px;grid-template-columns:.7fr 1fr}.studio-poster>strong{font-size:105px}.studio-poster>p{font-size:30px}.desk-two{grid-template-columns:1fr;gap:0}.desk-process{gap:25px}.app-experience{margin:0 20px}.app-experience .wrap{width:calc(100% - 50px)}}
@media(max-width:640px){.desk-hero{padding:45px 0 55px}.desk-hero-inner{grid-template-columns:1fr;gap:40px}.desk-hero h1{font-size:46px;letter-spacing:-1.8px}.desk-lede{font-size:15px}.desk-line{margin-left:18px;font-size:12px}.desk-solid{font-size:12px;padding:14px 17px}.desk-ticker{font-size:8px}.desk-ticker span{margin:0 9px}.desk-ticker a{display:block;float:none;margin-top:10px;font-size:8px}.desk-section{padding-top:50px;padding-bottom:50px}.desk-services,.desk-graphic-design .desk-services,.desk-digital-marketing .desk-services{grid-template-columns:1fr}.desk-service{padding:23px}.desk-service h3{font-size:27px}.desk-why{padding:45px 0}.desk-process{grid-template-columns:1fr;gap:18px;margin-top:30px}.desk-process h3{margin-top:10px;margin-bottom:8px}.desk-request{grid-template-columns:1fr;gap:25px}.desk-form-panel{padding:22px 18px}.rq-row{grid-template-columns:65px 1fr;gap:12px}.studio-poster{max-width:330px;width:calc(100% - 15px);margin:auto;padding:25px}.studio-poster>strong{font-size:110px}.studio-poster>p{font-size:35px}.studio-controls{margin-top:25px}.specimen-caption{max-width:310px;margin:25px auto 0}.web-frame{width:calc(100% - 15px);box-shadow:13px 16px 0 #203751}.web-canvas{padding:25px}.web-canvas>strong{font-size:39px}.desk-websites .desk-service{grid-template-columns:45px 1fr}.desk-websites .service-index{font-size:25px}.desk-websites .service-body{display:block}.desk-websites .audience{margin-top:20px}.campaign-board{max-width:350px;margin:auto}.campaign-goal b{font-size:32px}.campaign-pair strong{font-size:16px}.desk-digital-marketing .desk-service{padding:25px 22px 25px 50px}.app-opening{min-height:750px;height:125vh}.app-opening-sticky{top:74px;height:calc(100svh - 74px);min-height:500px;padding:18px}.opening-device{max-width:100%;height:410px;border-width:6px}.app-open-state{inset:45px 18px 20px}.app-open-state h1{font-size:33px}.app-opening-kicker{font-size:8px;letter-spacing:1.5px}.app-scroll-note{font-size:9px;text-align:center}.app-experience{margin:0 10px;border-radius:18px 18px 0 0}.app-experience>.wrap,.app-experience .desk-why>.wrap{width:calc(100% - 36px)}.app-toolbar{top:74px;padding:15px 18px;font-size:10px}.app-toolbar nav{gap:12px}.app-scope-label{padding:12px 18px;font-size:9px}.app-experience .desk-service{padding:22px 18px}.app-experience .desk-section{padding:40px 0}.app-experience .desk-form-panel{padding:20px 15px}.app-launch-links a{font-size:10px}.app-experience .desk-service h3{font-size:29px}}
.motion-ready{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.motion-ready.motion-visible{opacity:1;transform:none}
/* Keep the legal desk stylesheet from imposing light text on these light canvases. */
.desk-page{color:#10233f;background:#f6f3eb}.desk-page .site-header{background:#061226ed;color:#f3f0e7}.desk-page .site-header nav{color:#f3f0e7}.desk-page .desk-hero:not(.unused){color:#10233f}.desk-page.desk-websites .desk-hero{color:#f6f3eb}.desk-page .desk-line{display:inline-block;padding:0;border:0}.desk-page .desk-hero .eyebrow{color:#92703a}.desk-page.desk-websites .desk-hero .eyebrow{color:#d6b777}.desk-page .desk-form-panel input,.desk-page .desk-form-panel select,.desk-page .desk-form-panel textarea{background:#faf9f5!important;color:#10233f!important;border:1px solid #c9cdd1!important;border-radius:0!important;color-scheme:light}.desk-page .desk-form-panel input::placeholder,.desk-page .desk-form-panel textarea::placeholder{color:#687386}.desk-apps{background:#091b31}.desk-apps>.site-header{background:#061226ed}.desk-page footer{color:#f3f0e7}.desk-page .desk-note{color:#687386!important}.desk-page .desk-form-panel .quiet{color:#687386!important}.desk-apps .app-experience .desk-why{color:#f6f3eb}.desk-apps .app-experience .desk-why>.wrap>.eyebrow{color:#d6b777}
/* Never hide information while an animation is waiting for its first frame. */
.motion-ready{opacity:1;transform:none}.motion-ready.motion-visible{animation:deskArrival .5s ease both}@keyframes deskArrival{from{opacity:.7;transform:translateY(12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.motion-ready.motion-visible{animation:none}}
.desk-services>.desk-service:has(details[open]){grid-column:1/-1}.desk-service details[open]{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.desk-service details[open]>summary,.desk-service details[open]>.inline-request{grid-column:1/-1}.desk-service details[open]>.service-education,.desk-service details[open]>.service-faq{min-width:0}.desk-service details[open] .service-education p,.desk-service details[open] .service-faq p{font-size:14px}.desk-service details[open] .service-education h4,.desk-service details[open] .service-faq h4{font-size:15px}.desk-service details[open]>.inline-request form{max-width:760px}.desk-service details[open]>.inline-request{padding:28px}.desk-service details[open]>.inline-request .inline-hint{max-width:700px}@media(max-width:700px){.desk-service details[open]{grid-template-columns:1fr;gap:0}.desk-service details[open]>.inline-request{padding:17px 13px}.desk-service details[open] .service-education p,.desk-service details[open] .service-faq p{font-size:13px}}
.desk-service details[open]{display:block}.service-detail-content{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.service-detail-content>.inline-request{grid-column:1/-1;padding:28px}.service-detail-content>.inline-request form{max-width:760px}.service-education,.inline-request{scroll-margin-top:115px}.service-detail-content .service-faq{padding-top:0}@media(max-width:700px){.service-detail-content{grid-template-columns:1fr;gap:0}.service-detail-content>.inline-request{padding:17px 13px}}
/* Different scroll signatures, all on native scroll and transform-only. */
.desk-graphic-design .studio-poster{transform:rotate(calc(3deg - var(--desk-progress,0)*9deg)) translateY(calc(var(--desk-progress,0)*-38px))}.desk-graphic-design .studio-poster.specimen-layout{transform:rotate(calc(-3deg + var(--desk-progress,0)*7deg)) translateY(calc(var(--desk-progress,0)*-38px))}.desk-websites .web-frame{transform:perspective(1000px) rotateY(calc(-7deg + var(--desk-progress,0)*12deg)) rotateX(calc(3deg - var(--desk-progress,0)*5deg)) translateY(calc(var(--desk-progress,0)*-35px))}.desk-websites .web-wire b:nth-child(2){transform:translateY(calc(var(--desk-progress,0)*-12px))}.desk-websites .web-wire b:nth-child(3){transform:translateY(calc(var(--desk-progress,0)*-24px))}.desk-digital-marketing .campaign-board{transform:rotate(calc(-2deg + var(--desk-progress,0)*4deg)) translateY(calc(var(--desk-progress,0)*-25px))}.desk-digital-marketing .campaign-pair>div:first-child{transform:translateX(calc(var(--desk-progress,0)*-10px))}.desk-digital-marketing .campaign-pair>div:last-child{transform:translateX(calc(var(--desk-progress,0)*10px))}@media(max-width:700px){.desk-graphic-design .studio-poster{transform:rotate(calc(3deg - var(--desk-progress,0)*4deg))}.desk-websites .web-frame{transform:perspective(1000px) rotateY(calc(-4deg + var(--desk-progress,0)*6deg))}.desk-digital-marketing .campaign-board{transform:rotate(calc(-2deg + var(--desk-progress,0)*2deg))}}@media(prefers-reduced-motion:reduce){.desk-graphic-design .studio-poster,.desk-websites .web-frame,.desk-digital-marketing .campaign-board,.web-wire b,.campaign-pair>div{transform:none!important}}
