/* Phone layouts follow document flow. The desktop photographic score is unchanged. */
.phone-watch-image{display:none}
@media (max-width:700px), (max-width:1000px) and (pointer:coarse){
 :root{--pad:20px;--header:calc(56px + env(safe-area-inset-top,0px));--phone-nav:calc(58px + env(safe-area-inset-bottom,0px));--scene-height:100svh}
 html{scroll-padding-top:calc(var(--header) + 12px)}
 body.fullframe-site{font-size:1rem;line-height:1.5;background:#101411;padding-bottom:var(--phone-nav)}
 .fullframe-site h2{font-size:clamp(2.4rem,10vw,3.5rem);line-height:1.06}
 .fullframe-site .eyebrow{font-size:.6875rem;letter-spacing:.13em;line-height:1.5}
 .fullframe-site a,.fullframe-site button{touch-action:manipulation}
 .fullframe-site a:focus-visible,.fullframe-site button:focus-visible{outline:2px solid #f0df9c;outline-offset:3px}
 .fullframe-site .scene-header{inset:0 0 auto;min-height:calc(56px + env(safe-area-inset-top,0px));height:auto;padding:env(safe-area-inset-top,0px) max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px));display:block;background:#101411;border-bottom:1px solid #ffffff16;backdrop-filter:none}
 .scene-header .artist-home{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;min-height:56px;font-size:.75rem;line-height:1.4}
 .scene-header .artist-home>span{font-size:.5625rem;line-height:1.5;margin-left:auto}
 .scene-header .main-nav{position:fixed;inset:auto 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;align-items:stretch;padding:4px max(8px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(8px,env(safe-area-inset-left,0px));min-height:var(--phone-nav);background:#101411;border-top:1px solid #ffffff30;box-shadow:0 -8px 24px #0002;z-index:60}
 .scene-header .main-nav a{display:flex;align-items:center;justify-content:center;min-height:54px;min-width:0;padding:4px 2px;font-size:.6875rem;line-height:1.25;letter-spacing:0;text-shadow:none;border:0;overflow-wrap:anywhere;text-align:center}
 .main-nav a[href="#music"]{order:1}.main-nav a[href="#videos"]{order:2}.main-nav a[href="#photos"]{order:3}.main-nav a[href="#socials"]{order:4}.main-nav a[href="#booking"]{order:5}
 .main-nav a[aria-current]{color:#f2df9f;background:#ffffff0a;box-shadow:inset 0 2px #f2df9f}
 .main-nav a>span,.header-listen{display:none!important}
 .ff-world{display:none!important}
 .phone-enhanced .booking-jewel-plane{mask-image:var(--phone-contact-cutout,none);visibility:hidden}
 .phone-enhanced #booking[data-phone-photo-ready] .booking-jewel-plane{visibility:visible}
 .phone-enhanced .booking-jewel-light,.phone-enhanced .booking-jewel-facets-v6{mask-image:var(--phone-contact-diamonds,none)}
 .ff-studio [data-surface-cache="ready"] .ff-world-smoke{inset:auto;left:46.6%;top:34.1%;width:70%;height:auto;aspect-ratio:1536/1024;transform:translate(-38.9%,-96.8%);mix-blend-mode:screen}

 .phone-local-layer{display:block;position:absolute!important;inset:0;z-index:-1;opacity:1!important;visibility:visible!important;overflow:hidden;pointer-events:none;will-change:auto}
 html:not(.phone-scenes-ready) .phone-local-layer{display:none}
 .phone-local-layer .ff-world-camera{transform:none;will-change:auto;visibility:visible!important}
 .phone-local-layer .ff-world-photo{inset:0;left:0;top:0;transform:none;width:100%;height:100%;aspect-ratio:auto}
 .phone-local-layer .ff-world-clean{object-fit:cover;object-position:var(--photo-focus,50% 50%)}
 .phone-local-layer .ff-world-background-clip{display:none}
 .phone-local-layer::after{content:"";position:absolute;inset:0;background:linear-gradient(#080b0b20,transparent 35%,#101411 100%);pointer-events:none}
 .phone-enhanced .ff-scene,.phone-enhanced .social-section,.phone-enhanced .booking-section{background-image:none!important;background-color:#101411;isolation:isolate}
 html .fullframe-site .ff-arrival{height:auto;min-height:0}
 html .fullframe-site .ff-arrival-sticky{position:relative;top:auto;min-height:calc(100svh - var(--phone-nav));height:auto;display:flex;flex-direction:column;justify-content:center;gap:32px;padding:calc(var(--header) + 38px) var(--pad) 24px;isolation:isolate;overflow:visible}
 .ff-arrival-sticky>.phone-local-layer{height:100%}
 .ff-arrival-sticky>.phone-local-layer::after{background:linear-gradient(#080b0b35,transparent 30%,#080b0b35 65%,#101411)}
 .ff-arrival .phone-local-layer .ff-world-clean{object-position:50% 44%}
 .fullframe-site .ff-arrival-copy{position:relative;inset:auto;max-width:100%;opacity:1!important;transform:none!important;will-change:auto}
 .fullframe-site .ff-arrival h1{font-size:clamp(2.5rem,18vw,5.25rem);line-height:1;margin:18px 0;overflow-wrap:anywhere}
 .ff-arrival h1 br{display:block}
 .ff-arrival .ff-signature{display:flex;font-size:.75rem;gap:12px;padding:8px 12px;max-width:100%;backdrop-filter:none}
 .ff-arrival .ff-signature em{font-size:1.45rem}.ff-arrival .ff-signature .brand-logo{width:32px;height:36px}
 .ff-arrival .scene-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:28px;max-width:100%;white-space:normal}
 .ff-arrival .scene-actions a{min-width:0;overflow-wrap:anywhere;min-height:52px;padding:12px;font-size:.8125rem;line-height:1.35;justify-content:space-between;gap:8px;white-space:normal;background:#101411e8;backdrop-filter:none;border:1px solid #ece7d780}
 .ff-arrival .ff-arrival-line{display:none}
 .ff-arrival .ff-scene-footer{position:relative;inset:auto;display:flex;gap:10px;align-items:center;margin-top:auto;font-size:.5625rem;line-height:1.4}
 .ff-arrival .ff-scene-footer a{display:flex;align-items:center;min-height:44px;padding:6px 0}
 .fullframe-site .ff-music,.fullframe-site .ff-watch{height:auto!important;min-height:0}
 .fullframe-site .ff-music-sticky,.fullframe-site .ff-watch-sticky{position:relative;top:auto;height:auto;min-height:0;display:flex;flex-direction:column;justify-content:flex-start;padding:36px var(--pad);gap:24px;overflow:visible}
 .ff-music>.phone-local-layer{height:440px;max-height:70svh;--photo-focus:50% 45%!important}
 .ff-music-title{display:block}.ff-music-title h2{font-size:clamp(2.4rem,11vw,3.6rem)!important;padding:5px 0;background:none;margin-top:8px}.ff-music-title>.eyebrow{padding:0;background:none}
 .ff-music .ff-record{margin:140px 0 0;width:100%;display:grid;grid-template-columns:minmax(100px,38%) minmax(0,1fr);gap:16px;transform:none;will-change:auto;align-items:center}
 .ff-music .ff-record-art{width:100%;max-width:none;transform:none;will-change:auto;box-shadow:0 8px 24px #0005}
 .ff-music .ff-record-copy{padding:12px 0;min-width:0;background:none;margin:0}
 .ff-music .ff-record-copy h3{font-size:clamp(2rem,9vw,3rem);line-height:1.02;margin:10px 0}
 .ff-music .ff-record-copy .eyebrow{font-size:.5625rem;line-height:1.5}.ff-music .ff-record-copy>p:not(.eyebrow){font-size:.875rem;line-height:1.45}
 .ff-music .ff-record-copy .ff-text-link{font-size:.75rem;min-height:48px;gap:8px;white-space:normal}
 .ff-catalog{padding:16px 0 0;background:none;backdrop-filter:none;border:0;border-top:1px solid #ffffff30}
 .ff-release-list{grid-template-columns:1fr;gap:0;margin-top:12px}
 .ff-release-list .music-catalog-row{min-height:76px;padding:12px 0;gap:14px}
 .music-catalog-row>:is(img,picture){width:48px;height:48px;object-fit:cover}.music-catalog-row strong{font-size:1rem;line-height:1.4}.music-catalog-row small{font-size:.75rem;line-height:1.5}.music-catalog-row>span:last-child{font-size:1.1rem;min-width:24px}
 .ff-platforms{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:12px}.ff-platforms a{min-height:48px;font-size:.75rem;gap:8px}
 html .fullframe-site .ff-studio{height:auto;min-height:0;background:#101411;padding:0}
 html .fullframe-site .ff-studio-sticky{--phone-scene-height:clamp(440px,80svh,680px);position:relative;top:auto;height:var(--phone-scene-height);min-height:0;isolation:isolate;overflow:clip;background-size:cover;background-position:50% 36%}
 .phone-enhanced .ff-studio-sticky{background-image:none!important}
 .ff-studio .phone-local-layer::after{background:linear-gradient(transparent 62%,#080b0b65)}
 .ff-studio .phone-local-layer .ff-world-photo{inset:auto;left:50%;top:50%;width:max(100%,calc(var(--phone-scene-height) * 1024 / 1536));height:auto;aspect-ratio:1024/1536;transform:translate(-50%,-50%)}
 .ff-studio .phone-local-layer .ff-world-clean{object-fit:fill}
 .ff-studio .ff-world-smoke,.ff-studio .ff-studio-smoke-clip{will-change:auto}
 .ff-studio [data-world-layer="studio"] .ff-studio-smoke-clip{mask-image:var(--phone-smoke-mask,none);mask-mode:luminance}
 .ff-studio .ff-studio-next{transform:none;will-change:auto}.ff-studio-next img{object-position:56% 38%}
 .ff-studio-bridge{will-change:auto;mix-blend-mode:screen!important}.ff-studio .ff-studio-bridge-cached{display:none!important}.ff-studio .ff-studio-bridge[data-bridge-cache="ready"] .ff-studio-bridge-wisp--a{display:block}.ff-studio-bridge-mist,.ff-studio-bridge-wisp--b{display:none}.ff-studio-bridge-wisp--a{filter:none;opacity:.6;width:150%;height:140%;left:-25%;top:-20%;will-change:auto}
 html.phone-scenes-ready .fullframe-site .ff-studio-title{opacity:var(--studio-title-opacity,1);transform:none;font-size:clamp(2.8rem,12vw,4rem)!important;left:var(--pad);bottom:28px;line-height:1.02}
 html.phone-scenes-ready .fullframe-site .ff-studio-note{display:block;opacity:var(--studio-note-opacity,0);font-size:.8125rem;right:var(--pad);bottom:30px;background:#101411b8;padding:6px 10px}
 .ff-studio .ff-scene-footer{display:none}
 .phone-scenes-ready .ff-studio-static-next{display:none!important}
 .fullframe-site .ff-watch{background:#101411!important}.ff-watch-title h2{font-size:clamp(2.4rem,11vw,3.5rem)!important}.ff-watch-title .eyebrow{margin-bottom:8px}
 .ff-watch-lead{width:100%;padding:0;background:none;max-width:100%}
 .phone-watch-image{display:block;width:100%;aspect-ratio:16/9;overflow:hidden;margin-bottom:20px}.phone-watch-image img{display:block;width:100%;height:100%;object-fit:cover}
 .ff-watch-lead h3{font-size:2.75rem;margin:8px 0;overflow-wrap:anywhere}.ff-watch-lead>p:not(.eyebrow){font-size:.875rem;line-height:1.5}
 .ff-watch-actions{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px}.ff-watch-actions .feature-play{min-height:52px;gap:12px}.ff-watch-actions .feature-play>span+span{font-size:.875rem}.ff-watch-actions .ff-text-link{font-size:.8125rem;min-height:48px;gap:10px}
 .ff-video-catalog{background:none;padding:16px 0 0;border:0;border-top:1px solid #ffffff30;backdrop-filter:none}.video-rail-heading{margin-bottom:8px}.rail-controls{display:none!important}
 .video-rail{display:flex;flex-direction:column;gap:0;overflow:visible;scroll-snap-type:none;padding:0;margin:0}
 .video-card{display:grid;grid-template-columns:42% minmax(0,1fr);align-items:center;gap:14px;flex:none;width:100%;min-width:0;border-bottom:1px solid #ffffff22;padding:16px 0}
 .video-poster{aspect-ratio:16/9;min-height:76px}.video-card .card-play{opacity:1}.video-card .play-disc{width:44px;height:44px;font-size:13px}
 .video-card-caption{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:0;padding:0}.video-card-caption .track-number{display:none}.video-card-caption h3{font-size:.875rem;line-height:1.45;overflow-wrap:anywhere}.video-card-caption>a{min-height:48px;min-width:44px;font-size:1.125rem}
 html .fullframe-site .pendant-v4{height:auto!important;min-height:0;background:#101411;padding:32px 0 0}
 html .fullframe-site .pendant-v4-panel{position:relative!important;top:auto;height:auto!important;min-height:0;overflow:visible;display:flex;flex-direction:column}
 .fullframe-site .pendant-v4-heading{position:relative;inset:auto;order:-1;padding:0 var(--pad) 24px;opacity:1!important;transform:none;pointer-events:auto}
 .fullframe-site .pendant-v4-heading h2{font-size:2.8rem}.pendant-v4-heading>p{font-size:.6875rem;margin-bottom:8px}.pendant-v7-gallery-jump{min-height:48px;margin-top:10px;font-size:.875rem;gap:14px;visibility:visible!important}
 .fullframe-site .pendant-v4-visual{position:relative;inset:auto;height:clamp(360px,65svh,560px);width:100%;overflow:clip;opacity:1!important;flex:none;will-change:auto}
 .pendant-v4-origin,.pendant-v4-camera,.pendant-v4-next{will-change:auto}.pendant-v4-defocus{display:none!important}
 .fullframe-site .pendant-v4-gallery{position:relative;inset:auto;padding:24px var(--pad) 36px;opacity:1!important;transform:none!important;pointer-events:auto!important;will-change:auto}
 .pendant-v4-gallery-heading{font-size:.6875rem;line-height:1.5;margin-bottom:14px;gap:16px}.pendant-v4-gallery-heading a{min-height:44px;font-size:.8125rem;gap:8px}
 .pendant-v4-gallery-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;gap:18px 12px;padding:0;scroll-snap-type:none}
 .pendant-v4-photo>img{height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 35%}.pendant-v4-photo>span{min-height:48px;font-size:.75rem;line-height:1.4;padding:10px;display:flex}.pendant-v4-photo>span>span:last-child{font-size:1rem;line-height:1;flex:none;margin-left:auto}
 .fullframe-site .social-section{height:auto;min-height:0;padding:36px var(--pad);gap:0;justify-content:flex-start;background:#101411}
 .social-section>.phone-local-layer{top:160px;height:290px;bottom:auto;--photo-focus:52% 38%!important}.social-section>.phone-local-layer::after{background:linear-gradient(#10141100 65%,#101411)}
 .social-section .section-heading{margin:0}.social-section h2{font-size:clamp(2.4rem,11vw,3.5rem)}.social-section .section-heading>.text-link{font-size:.875rem;min-height:44px;margin-top:8px}
 .social-section .social-layout{display:block;margin:300px 0 0;padding:0;border:0;background:none;backdrop-filter:none}
 .social-copy{margin-bottom:20px}.social-copy>p{font-size:1.6rem;line-height:1.25}.social-directory{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-top:16px}.social-directory a{min-height:52px;font-size:.875rem;gap:8px;justify-content:space-between}
 .clip-rail{display:flex;flex-direction:column;gap:0;overflow:visible;scroll-snap-type:none;margin:20px 0 0;padding:0;max-width:100%}
 .social-clip{display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px;max-width:none;flex:none;padding:18px 0;border-top:1px solid #ffffff25}.clip-image{width:92px;height:138px;aspect-ratio:auto}.clip-copy{padding:0}.clip-copy h3{font-size:1rem;line-height:1.4;min-height:0}.clip-copy .eyebrow{font-size:.625rem}.clip-link{min-height:48px;font-size:.8125rem;line-height:1.4}.clip-credit{font-size:.6875rem;line-height:1.45;margin-top:0}
 .fullframe-site .booking-section{height:auto;min-height:0;padding:40px var(--pad) 36px;background:#101411}
 .booking-section>.phone-local-layer::after{background:linear-gradient(#10141111,#10141122 38%,#101411cc)}
 .booking-section>.eyebrow{margin-bottom:26px}.booking-grid{display:block}.booking-grid>.booking-intro{display:flex;align-items:center;gap:8px;margin:0;padding:0}.booking-grid h2{font-size:clamp(2.35rem,10.5vw,3.4rem);line-height:1.1;min-width:0;flex:1}
 .booking-jewel{width:34%;flex:0 0 34%;margin:0;transform:rotate(-5deg)}.booking-grid>.booking-contact{padding:20px;margin-top:28px;background:#101411ed;backdrop-filter:none}.booking-grid>.booking-contact>p{font-size:1rem;line-height:1.6}.booking-contact br{display:none}.booking-email{font-size:clamp(.9375rem,4vw,1.15rem);line-height:1.4;min-height:56px;padding:10px 0;gap:8px;overflow-wrap:anywhere}.booking-hint{font-size:.875rem!important}
 .site-footer{padding:24px var(--pad);gap:12px;background:#101411;backdrop-filter:none}.site-footer>a:not(.home-mark){min-height:48px;display:inline-flex;align-items:center;font-size:.75rem}.site-footer .home-mark{min-width:48px;min-height:48px}
 #music,#videos,#photos,#photo-gallery,#socials,#booking{scroll-margin-top:0}
 .fullframe-site dialog{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:#101411;color:#f5f2e9;overflow:auto;overscroll-behavior:contain;box-sizing:border-box}
 dialog[open]{display:flex;flex-direction:column;gap:16px}dialog::backdrop{background:#080b0be6}.dialog-header{position:sticky;top:0;z-index:1;flex:none;gap:16px;background:#101411;padding:0 0 8px}.dialog-header h2{font-size:1.25rem!important;line-height:1.4;overflow-wrap:anywhere}.dialog-header button{min-width:64px;min-height:48px;flex:none;font-size:.875rem;padding:10px}
 .lightbox-image{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;height:auto;max-height:none}.lightbox-image img{display:block;width:100%;height:100%;max-height:calc(100dvh - 180px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));object-fit:contain;touch-action:pinch-zoom}
 .lightbox-footer{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;gap:12px;align-items:center;flex:none}.lightbox-footer button{width:48px;height:48px;font-size:1.3rem}.lightbox-footer p{font-size:.875rem;line-height:1.4}.dialog-header p{font-size:.875rem}
 #video-frame{width:100%;aspect-ratio:16/9;flex:none;margin:auto 0}#video-frame iframe{width:100%;height:100%;border:0}.player-fallback,#player-help{font-size:.875rem;line-height:1.5}.player-fallback a{display:inline-flex;align-items:center;min-height:48px}
 html:not(.phone-scenes-ready) .ff-arrival{--static-photo:url('assets/photos/pmoss-golf-cart-1200.jpg')}
 html:not(.phone-scenes-ready) .ff-studio-static-next{height:70svh;min-height:360px}
 @media(prefers-reduced-motion:reduce){
  .phone-scenes-ready .ff-studio-static-next{display:block!important;height:70svh;min-height:360px}.ff-studio-title{opacity:1!important;transform:none!important}.ff-studio-note{display:none!important}
  .phone-local-layer .ff-world-camera{transform:none!important}.ff-studio-smoke-clip,.ff-studio-next,.ff-studio-bridge{display:none!important}.pendant-v4-camera{transform:none!important}
 }
 @media(orientation:landscape){
  .ff-music>.phone-local-layer{--photo-focus:50% 32%!important}
  .ff-arrival .phone-local-layer .ff-world-clean{object-position:50% 50%}
  .ff-arrival-sticky{min-height:420px!important}.ff-arrival-copy{max-width:580px!important}.ff-arrival .scene-actions{max-width:460px}.ff-arrival h1 br{display:none}.fullframe-site .ff-arrival h1{font-size:clamp(2.5rem,8vw,4.5rem)}
  .ff-music .ff-record{grid-template-columns:180px 1fr;margin-top:120px}.ff-release-list{grid-template-columns:1fr 1fr;gap:0 24px}.video-rail{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.video-card{grid-template-columns:42% minmax(0,1fr)}
  .pendant-v4-gallery-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.pendant-v4-visual{height:360px!important}.social-section>.phone-local-layer{height:310px}.social-layout{max-width:none}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.booking-grid>.booking-contact{margin-top:0}
 }
}

/* Final V11 fit: opening actions clear persistent navigation in short landscape. */
@media (orientation:landscape) and (max-height:520px) and (max-width:700px), (orientation:landscape) and (max-height:520px) and (max-width:1000px) and (pointer:coarse){
 html .fullframe-site .ff-arrival-sticky{padding-top:calc(var(--header) + 18px);gap:20px;justify-content:flex-start}
 .fullframe-site .ff-arrival h1{font-size:clamp(2.5rem,6vw,3.75rem);margin:12px 0}
 .ff-arrival .ff-signature{padding-block:6px}
 .ff-arrival .scene-actions{margin-top:20px;max-width:300px}
 .ff-arrival .ff-scene-footer{display:none}
}

@media (orientation:landscape) and (max-height:360px) and (max-width:700px), (orientation:landscape) and (max-height:360px) and (max-width:1000px) and (pointer:coarse){
 .ff-arrival .ff-signature{display:none}
}
