.jh-drag-handle{display:none}.social-apps{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:26px 6% 38px;background:#f8f8f6}.social-apps a{width:52px;height:52px;display:grid;place-items:center;border:1px solid #ddd;border-radius:16px;background:linear-gradient(#fff,#ecece8);box-shadow:inset 0 1px 0 white,0 3px 8px #00000008;transition:transform .3s}.social-apps a:hover{transform:translateY(-5px)}.social-apps a:focus-visible{outline:2px solid #444;outline-offset:4px}.social-apps img{width:31px;height:31px;object-fit:contain;filter:none!important}.social-apps a:active{transform:scale(.94)}
@media(max-width:600px){
html{scroll-padding-top:90px}body{overflow-x:clip}
.hx-home .jh-hero{height:calc(var(--phone-vh,1svh) * 100);min-height:0;max-height:none}
.jh-hero .jh-wall{inset:0;height:100%;touch-action:pan-y}
.jh-hero .jh-row{visibility:visible!important}.jh-hero .jh-lens{display:none!important}
.jh-hero .jh-symbol{width:clamp(130px,40vw,180px);z-index:2}
.hx-home .jh-glass.jh-simple{inset:0!important;height:100%!important;width:100%;padding:28px 28px max(26px,env(safe-area-inset-bottom));background:rgba(16,16,16,.55)!important;border:0;backdrop-filter:blur(14px) saturate(160%)!important;-webkit-backdrop-filter:blur(14px) saturate(160%)!important;overflow:hidden}
.jh-simple-content{padding:0;gap:22px}.hx-home .jh-simple h1{font-size:clamp(22px,6.1vw,30px)!important;line-height:1.25!important}.hx-home .jh-simple-brand .identity-word{font-size:clamp(38px,11vw,52px)!important}
.jh-drag-handle{display:block;position:absolute;left:0;top:0;width:clamp(130px,40vw,180px);aspect-ratio:1;z-index:3;border:0;background:transparent;border-radius:50%;touch-action:none;cursor:grab;-webkit-tap-highlight-color:transparent;user-select:none;will-change:transform;padding:0}
.jh-drag-handle.is-dragging{cursor:grabbing}.jh-drag-handle:focus-visible{outline:2px solid #333;outline-offset:8px}
.jh-tile{will-change:auto}.jh-tile img{-webkit-user-drag:none;user-select:none}
.hc-home .hn-reference-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:none!important;gap:15px!important}
.hc-home .hn-reference-grid>.hn-reference-tile{grid-column:auto!important;grid-row:auto!important;min-height:350px;border-radius:30px;padding:25px}
.hc-home .hn-reference-grid>.hn-reference-0{min-height:440px}.hc-home .hn-reference-grid>.hn-reference-foundation{min-height:390px}.hc-home .hn-reference-foundation>div{height:auto;min-height:250px}
.hn-bento-heading,.hn-review-heading{align-items:flex-start!important;gap:20px!important}.hn-bento-heading h2,.hn-review-heading h2{font-size:36px!important;line-height:1.08!important}.hn-bento-heading p,.hn-review-heading p{font-size:13px!important;line-height:1.7!important}
.jpr-section{padding-left:20px!important;padding-right:20px!important}.jpr-card{border-radius:30px!important}.jpr-grid{gap:22px!important}.jpr-title-line{font-size:36px!important}.jpr-head-copy{padding:24px 24px 0!important}.jpr-purchase,.jpr-body{padding-left:24px!important;padding-right:24px!important}.jpr-card h3{font-size:30px!important}.jpr-art{height:155px!important}.jpr-price strong{font-size:60px!important}.jpr-cta{min-height:50px}.jpr-body summary{padding-block:15px!important}
.hp-card{position:sticky!important;top:min(0px,calc(var(--phone-vh,1svh) * 100 - 690px));height:max(calc(var(--phone-vh,1svh) * 100),690px)!important;min-height:690px!important;padding:88px 22px 30px!important;grid-template-rows:auto minmax(150px,1fr) auto!important;row-gap:18px}.hp-bars{display:none!important}.hp-stack{height:auto!important}.hp-process{overflow:visible}
.jm-body{padding:30px 12px 24px!important;align-content:start!important;gap:28px!important}.jm-sheet{padding-top:90px!important}.jm-row{padding:6px 0!important}.jm-row b{font-size:44px!important}.jm-shortcuts a{min-height:32px;display:flex;align-items:center}.jm-services a{min-height:44px}.jm-bottom{font-size:9px}
.jfq-section{padding:48px 20px!important}.jfq-item summary{min-height:76px!important}.jfq-question{font-size:16px!important}.jfq-heading>a{width:100%;max-width:none}
.sf-scene{padding:32px 24px 0!important}.sf-scene h2{font-size:15vw!important;margin:65px 0 40px!important}.sf-bottom a{min-height:52px;padding:18px 24px}.site-finale .sf-directory{padding:35px 24px!important;gap:32px 24px}.sf-directory nav a{min-height:30px;display:flex;align-items:center;font-size:12px!important}.sf-directory nav{gap:8px}.social-apps{display:grid;grid-template-columns:repeat(5,44px);gap:13px;padding:15px 20px 32px}.social-apps a{width:44px;height:44px;border-radius:13px}.social-apps img{width:28px;height:28px}
.brief-view input,.brief-view textarea,.brief-view select{font-size:16px!important}
}
@media(prefers-reduced-motion:reduce){.social-apps a{transition:none}}

@media(max-width:600px){.jh-phone-wall .jh-row{top:calc(var(--row) * (100% + 3px) / 12);height:calc((100% + 3px) / 12)}.jh-phone-wall .jh-tile{height:calc(100% - 3px)}.jh-phone-wall .jh-glass{z-index:4}.jh-phone-wall .jh-symbol,.jh-phone-wall .jh-drag-handle{width:clamp(120px,40vw,180px)}}
/* Phone service cards: each discipline owns its image, copy and destination. */
@media(max-width:600px){
.hs-phone .hs-layout,.hs-phone .hs-list{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.hs-phone .hs-preview{display:none}
.hs-phone .hs-row{min-width:0;padding:0 0 26px;border:1px solid #dededb!important;border-radius:26px;overflow:hidden;background:#f5f5f3}
.hs-phone-image{position:relative;margin:0 0 25px;aspect-ratio:1.65;overflow:hidden;background:#e6e6e4}
.hs-phone-image img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.hs-phone .hs-row h3{display:flex;align-items:baseline;gap:14px;padding:0 22px;margin-bottom:18px;color:#222}
.hs-phone .hs-row h3 small{font-size:10px;font-weight:400;color:#777}
.hs-phone .hs-row h3>span{font-size:29px;line-height:1.1;letter-spacing:-.05em;font-weight:500}
.hs-phone .hs-reveal{display:block;opacity:1;transition:none}
.hs-phone .hs-detail{padding:0 22px}
.hs-phone .hs-detail>p{font-size:14px;line-height:1.65;margin:0 0 22px;max-width:none}
.hs-phone .hs-detail ul{display:flex;gap:8px;margin-bottom:25px}
.hs-phone .hs-detail li{padding:7px 10px;border:1px solid #ddd;border-radius:20px;font-size:10px;line-height:1.3}
.hs-phone .hs-detail li::before{display:none}
.hs-phone .hs-open{display:inline-flex;min-height:46px;padding:12px 17px;border:1px solid #222;border-radius:30px;background:#171717;color:#fff;font-size:12px;gap:18px}
.hc-home .hn-reference-grid>*{min-width:0;max-width:100%;box-sizing:border-box}
.jpr-grid,.jpr-card,.jpr-body,.jpr-purchase,.jpr-head-copy{min-width:0;box-sizing:border-box}
.jpr-cta{max-width:100%;white-space:normal;height:auto!important;line-height:1.4}
.hn-bento-heading,.hn-review-heading{flex-direction:column;align-items:flex-start!important}
.hn-bento-heading>p,.hn-review-heading>p{max-width:100%;margin:0}
.hc-home .hn-reference-grid .ui-business-photo{pointer-events:none}
@supports not (height:100svh){.hx-home .jh-hero{height:var(--phone-hero-height,740px)}}
}
@media(max-width:600px){html{-webkit-text-size-adjust:100%;text-size-adjust:100%}.jh-symbol{-webkit-mask:url('/assets/six-petal-emblem-transparent.svg') center/contain no-repeat}.hs-phone-image,.jpr-art,.hn-reference-tile{isolation:isolate}.hn-reference-tile{overflow:hidden}.hs-phone .hs-row h3{overflow-wrap:anywhere}.jpr-levels{width:100%;min-width:0}.jpr-levels label{min-width:0}}

/* Responsive corrections retain the existing compositions and artwork. */
@media(max-width:600px){
.hc-home .hp-card figure{height:100%;aspect-ratio:auto;min-height:0;align-self:stretch}.hp-card .hp-copy{min-width:0}.hp-card .hp-copy h3{font-size:clamp(28px,8.5vw,36px)}
.hc-home .hn-reference-grid .hn-reference-tile{height:auto;min-width:0}.hn-reference-tile>p{position:relative;z-index:2}
.jpr-card,.hs-row,.jfq-item{overflow-wrap:break-word}.jpr-card h3{font-size:clamp(26px,7.5vw,30px)!important}.jpr-price strong{font-size:clamp(48px,15vw,60px)!important}.jpr-levels{box-sizing:border-box}.jpr-levels label small{white-space:nowrap;font-size:9px}
.jm-sheet{min-height:100svh;height:auto;padding-bottom:max(24px,env(safe-area-inset-bottom))}.jm-dialog{overscroll-behavior:contain}.jm-shortcuts a,.sf-directory nav a{min-height:44px}.jm-bottom{flex-wrap:wrap;gap:16px}
.hn-review-stage{touch-action:pan-y}.hn-review-motion-pane{box-sizing:border-box}.hn-review-card blockquote{overflow-wrap:break-word}
.contact-view,.brief-view{min-width:0}.brief-view input,.brief-view textarea,.brief-view select{scroll-margin-block:100px}
}
@media(max-height:500px) and (max-width:950px) and (pointer:coarse){.hx-home .jh-hero{min-height:620px}.jm-sheet{height:auto;min-height:100svh}.jm-body{padding-top:90px!important}.jm-dialog{overflow-y:auto}}

@media(max-width:600px){.hp-stack{overflow:visible}.hp-card .hp-copy h3{margin-bottom:14px}.hp-copy>p{margin-bottom:14px}.hp-card .hp-deliverables{padding-top:9px}.hp-card .hp-copy ul{margin-top:8px}.hn-reference-tile:not(.phone-effect-visible) *,.jpr-card:not(.phone-effect-visible) *,.jpr-card:not(.phone-effect-visible) *::before,.jpr-card:not(.phone-effect-visible) *::after{animation-play-state:paused!important}}
@media(max-width:600px) and (prefers-reduced-motion:reduce){.hp-card{position:relative!important;height:auto!important;min-height:0!important;grid-template-rows:auto 230px auto!important}}

/* Phone composition: uninterrupted black glass; desktop retains its interactive emblem. */
@media(max-width:600px){
.jh-hero .jh-symbol,.jh-hero .jh-drag-handle{display:none!important}
.hx-home .jh-glass.jh-simple{padding-top:max(32px,env(safe-area-inset-top));padding-bottom:max(36px,env(safe-area-inset-bottom))}
.hn-fresh-carousel .hn-review-card{border-radius:28px}
.hn-fresh-carousel .hn-review-card:not(.is-active){border-radius:16px}
.hn-fresh-carousel .hn-review-peek{inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);border-radius:13px}
.hn-review-motion-pane{padding:20px;gap:18px;text-align:left}
.hn-review-author strong{justify-content:flex-start}
.hn-review-copy blockquote{font-size:17px;line-height:1.4}
.hc-home .hn-review-photo{height:170px;border-radius:18px}
.hn-review-controls{margin-top:28px}
.hn-review-progress{display:block;width:100px}
.hn-review-status{font-variant-numeric:tabular-nums}
.jpr-card{contain:layout style}
}
@media(max-width:600px){
.hc-home .hn-reference-grid .hn-reference-4{min-height:390px}
.hc-home .jl-orbits{width:240px;height:240px;bottom:14px;--inner-radius:60px;--outer-radius:100px}
.hc-home .jl-path-inner{width:120px;height:120px}.hc-home .jl-path-middle{width:160px;height:160px}.hc-home .jl-path-outer{width:200px;height:200px}
.hc-home .jl-orbit-item{width:34px;height:34px;margin:-17px}.hc-home .jl-orbit-item.jl-inner{width:28px;height:28px;margin:-14px}
}
@media(max-width:350px){.hc-home .hn-reference-foundation .ui-foundations{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hc-home .hn-reference-foundation .ui-foundations>div{min-height:140px}.hn-review-copy blockquote{font-size:16px;line-height:1.35}.hc-home .hn-review-photo{height:150px}}

/* Keep the phone composition when a handset rotates. */
@media(max-width:950px) and (pointer:coarse) and (orientation:landscape){
.hx-home .jh-hero{height:calc(var(--phone-vh,1svh) * 100);min-height:390px}
.hx-home .jh-glass.jh-simple{inset:0!important;width:100%;height:100%!important;background:rgba(16,16,16,.55)!important;backdrop-filter:blur(14px) saturate(160%)!important;-webkit-backdrop-filter:blur(14px) saturate(160%)!important;padding:24px max(28px,env(safe-area-inset-right)) 24px max(28px,env(safe-area-inset-left))}
.jh-hero .jh-symbol,.jh-hero .jh-drag-handle,.jh-hero .jh-lens{display:none!important}
.jh-hero .jh-row{visibility:visible!important}
.jh-phone-wall .jh-row{top:calc(var(--row) * (100% + 3px) / 12);height:calc((100% + 3px) / 12)}
.hx-home .jh-simple h1{font-size:24px!important}.hx-home .jh-simple-brand .identity-word{font-size:44px!important}
.hs-phone .hs-layout,.hs-phone .hs-list{display:grid;grid-template-columns:1fr;gap:24px}.hs-phone .hs-preview{display:none}
.hs-phone .hs-row{padding:0 0 24px}.hs-phone-image{position:relative;aspect-ratio:2.5;overflow:hidden;margin:0 0 20px}.hs-phone-image img{width:100%;height:100%;object-fit:cover}.hs-phone .hs-row h3{display:flex;gap:16px}.hs-phone .hs-row h3>span{font-size:32px}.hs-phone .hs-reveal{display:block;opacity:1}
.jpr-grid{grid-template-columns:minmax(0,1fr);max-width:580px;margin-inline:auto}
.jm-dialog{overflow-y:auto;overscroll-behavior:contain}.jm-sheet{height:auto;min-height:100svh}.jm-body{padding-top:80px!important}
}
@media(pointer:coarse){.hs-phone .hs-detail li{overflow-wrap:anywhere}.jpr-levels label{min-height:44px}}
