/* CarveCast mobile craft: restrained touch response, useful navigation, accessible filters. */
:root{--cc-ease:cubic-bezier(.2,.8,.2,1)}
.cc-menu-trigger,.cc-dock{display:none}
.cc-topics{position:relative;isolation:isolate;display:flex;flex-wrap:wrap;gap:5px;padding:5px;border:1px solid var(--line);border-radius:28px;width:fit-content;max-width:100%;margin:20px 0 0;background:#e9ece5}
.cc-topics button{position:relative;z-index:1;border:0;background:transparent;color:var(--ink);padding:10px 17px;min-height:44px;cursor:pointer;border-radius:24px;font-size:12px;font-weight:700;transition:color .2s}
.cc-topics button[aria-pressed=true]{color:white;background:var(--blue)}
.cc-topics.cc-gliding button[aria-pressed=true]{background:transparent}
.cc-topic-pill{position:absolute;z-index:0;left:0;top:0;border-radius:24px;background:var(--blue);pointer-events:none;transition:translate .35s var(--cc-ease),width .35s var(--cc-ease),height .35s var(--cc-ease)}
.cc-no-results{padding:30px 0;color:var(--ink);font-size:16px;max-width:560px}.cc-no-results[hidden]{display:none}.cc-reset{background:transparent;border:1px solid var(--line);padding:12px 18px;border-radius:25px;cursor:pointer;color:var(--ink);min-height:44px;font-weight:700;font-size:12px}
.cc-sheet{padding:26px;border:1px solid #ffffff40;border-radius:25px;background:var(--paper);color:var(--ink);width:min(560px,calc(100vw - 28px));max-height:min(85dvh,850px);box-shadow:0 22px 90px #11222b40;overflow:auto;overscroll-behavior:contain}
.cc-sheet::backdrop{background:#11222b85}
.cc-sheet[open]{animation:cc-sheet-in .3s var(--cc-ease)}
.cc-sheet-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.cc-sheet-title h2{font-size:40px;margin:0}.cc-sheet-close{border:1px solid var(--line);background:transparent;border-radius:50%;width:44px;height:44px;cursor:pointer;font-size:20px;color:var(--ink)}
.cc-sheet nav{display:grid!important;grid-template-columns:1fr 1fr;gap:0!important;width:100%;margin:0;font-size:15px;max-height:none;position:static;background:transparent;padding:0;border:0}
.cc-sheet nav a{display:flex!important;align-items:center;justify-content:space-between;gap:10px;padding:18px 10px;border-top:1px solid var(--line);font-size:14px;min-height:56px}
.cc-sheet nav a[aria-current=page]{color:var(--blue)}.cc-sheet nav a span{color:var(--blue)}
.cc-sheet-note{font-size:11px;line-height:1.7;margin:22px 0 0;color:#55646a}
.cc-touch-active .button,.cc-touch-active .text-link,.cc-touch-active .listen,.cc-touch-active .play,.cc-touch-active .cc-dock a,.cc-touch-active .cc-dock button,.cc-touch-active .cc-menu-trigger,.cc-touch-active .cc-topics button,.cc-touch-active .embed-load{transition:scale .24s var(--cc-ease),background .2s,color .2s}
.cc-touch-active :is(.button,.text-link,.listen,.play,.cc-menu-trigger,.embed-load):active{scale:.97 .94}
.cc-touch-active .episode .thumb{transition:scale .3s var(--cc-ease);border-radius:4px}
.cc-touch-active .episode:active .thumb{scale:.985 .97}
.cc-touch-active :is(.cc-dock a,.cc-dock button,.cc-topics button):active{scale:.96}
.cc-touch-active .filter:focus-within label{color:var(--blue)}.cc-touch-active .filter input:focus{border-bottom-color:var(--blue)}
@keyframes cc-sheet-in{from{opacity:.5;translate:0 18px;scale:.985}to{opacity:1;translate:0 0;scale:1}}
@media(max-width:800px){
 html.cc-touch-active{scroll-padding-top:88px;scroll-padding-bottom:110px}
 .cc-touch-active body{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
 .cc-touch-active body>header{min-height:76px;height:76px;flex-wrap:nowrap;padding:12px 6%;gap:20px;position:relative}
 .cc-touch-active body>header>nav{display:none!important}
 .cc-touch-active body>header>.brand{font-size:30px}
 .cc-menu-trigger{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--ink);padding:10px 16px;font-size:12px;font-weight:700;min-height:44px;cursor:pointer}
 .cc-menu-trigger span{font-size:18px;line-height:1}
 .cc-dock{position:fixed;z-index:70;display:flex;gap:5px;align-items:center;bottom:calc(14px + env(safe-area-inset-bottom,0px));left:50%;translate:-50% 0;width:min(360px,calc(100% - 28px));border-radius:40px;padding:6px;background:#f4f4eef2;border:1px solid #c5ccc6;box-shadow:0 5px 25px #11222b24;transition:opacity .15s}
 @supports(backdrop-filter:blur(12px)){.cc-dock{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}}
 .cc-dock a,.cc-dock button{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;min-width:0;border:0;border-radius:30px;background:transparent;color:var(--ink);font:700 12px 'DM Sans',sans-serif;padding:10px 8px;cursor:pointer;white-space:nowrap}
 .cc-dock .cc-dock-listen{background:var(--blue);color:white;flex:1.1}.cc-dock svg{width:17px;height:17px;flex:none}.cc-dock a[aria-current=page]{background:#dce4fb;color:#1435b6}
 .cc-typing .cc-dock{opacity:0;pointer-events:none}
 .cc-sheet{margin:auto auto calc(12px + env(safe-area-inset-bottom,0px));padding:23px;border-radius:25px}
 .cc-topics{width:100%;gap:2px;border-radius:22px}.cc-topics button{padding:10px 11px;font-size:11px;flex:1}.cc-topic-pill{border-radius:18px}
}
@media(max-width:360px){.cc-topics button{padding:10px 7px;font-size:10px}.cc-dock a,.cc-dock button{font-size:11px;gap:6px}.cc-sheet nav{grid-template-columns:1fr}.cc-sheet nav a{padding:12px 0;min-height:48px}}
@media(prefers-reduced-motion:reduce){.cc-touch-active *{scroll-behavior:auto!important;animation:none!important;transition:none!important;scale:1!important}.cc-topic-pill{transition:none!important}}
@media(max-width:800px){nav.cc-dock>a,nav.cc-dock>button{display:flex!important}}
/* Final phone composition pass: keep the mountain image within the opening view. */
@media(max-width:800px){.cc-touch-active .hero-copy{padding:30px 6% 24px}.cc-touch-active .hero h1{font-size:clamp(48px,15vw,70px);line-height:.94;margin:20px 0}.cc-touch-active .hero-copy .intro{font-size:16px;line-height:1.65}.cc-touch-active .hero-foot{margin-top:22px;font-size:8px}}
