/* Sprout Website — Shared base styles */
@font-face{font-family:'TossFace';src:url('https://static.toss.im/tossface-font/TossFaceFontWeb.otf') format('opentype');font-display:swap}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;height:100dvh;display:flex;flex-direction:column;overflow:hidden}
.tf-icon{font-family:'TossFace',sans-serif;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.screen-sky{background:var(--bg-sky,#e0f2fe);flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden;min-height:0}
.top-bar{height:56px;display:flex;align-items:center;padding:0 var(--spacing-xl,16px) var(--spacing-md,8px);flex-shrink:0;z-index:10}
.scroll-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 var(--spacing-xl,16px) var(--spacing-3xl,24px);z-index:4;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl,16px)}
.sprout-pip{position:fixed;bottom:20px;right:16px;z-index:50;padding-bottom:env(safe-area-inset-bottom,0);animation:pipSlideIn .5s ease-out .3s both;display:flex;align-items:center}
.pip-frame{width:80px;height:80px;border-radius:20px;overflow:hidden;position:relative;background:var(--bg-sky,#e0f2fe);box-shadow:0 2px 8px rgba(0,0,0,0.12),0 0 0 2px rgba(255,255,255,0.6);flex-shrink:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.pip-frame canvas{position:absolute;left:50%;top:-50px;transform:translateX(-50%);width:220px;height:220px;pointer-events:auto}
@keyframes pipSlideIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeSlideUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}
.revealed{opacity:1;transform:translateY(0)}
.btn-util{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-lg,12px);background:var(--bg-primary,#fff);border:2px solid var(--border-secondary,#e9eaeb);border-radius:var(--radius-full,9999px);box-shadow:0 3px 0 0 var(--gray-200,#e9eaeb);flex-shrink:0;cursor:pointer;transition:background .15s,box-shadow .15s,transform .1s;text-decoration:none}
.btn-util:hover{background:var(--gray-50,#fafafa)}
.btn-util:active{box-shadow:none;transform:translateY(2px)}
.cta-card{width:100%;max-width:400px;text-align:center;padding:var(--spacing-3xl,24px) 0}
.btn-sprout{display:flex;align-items:center;justify-content:center;width:100%;font-family:inherit;font-weight:var(--font-weight-bold,700);border-radius:16px;cursor:pointer;border:none;outline:none;text-decoration:none}
.btn-sprout:focus-visible{outline:2px solid var(--border-brand,#0ba5ec);outline-offset:2px}
.btn-primary{height:50px;font-size:var(--font-size-text-md,16px);padding:var(--spacing-lg,12px) var(--spacing-3xl,24px);background:var(--brand-500,#0ba5ec);color:var(--text-white,#fff);border-bottom:2px solid var(--brand-600,#0086c9);box-shadow:0 4px 0 0 var(--brand-600,#0086c9);transition:background .15s}
.btn-primary:hover{background:var(--brand-400,#36bffa)}
.btn-primary:active{background:var(--brand-500,#0ba5ec);border-bottom:none;box-shadow:none;transform:translateY(4px);height:48px}
.back-cta{display:block;margin-top:var(--spacing-xl,16px);font-size:var(--font-size-text-sm,14px);color:var(--text-tertiary,#535862);text-decoration:none;font-weight:var(--font-weight-medium,500);transition:color .15s}
.back-cta:hover{color:var(--text-primary,#181d27)}
.site-nav{position:fixed;top:0;right:0;z-index:100;display:flex;align-items:center;padding:var(--spacing-lg,12px) var(--spacing-xl,16px);gap:var(--spacing-md,8px)}
.nav-menu-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,0.06);box-shadow:0 1px 3px rgba(0,0,0,0.08);border-radius:var(--radius-full,9999px);cursor:pointer;color:var(--text-secondary,#414651);-webkit-tap-highlight-color:transparent;padding:0;transition:background .15s}
.nav-menu-btn:hover{background:rgba(255,255,255,0.95)}
.nav-pill{display:inline-flex;align-items:center;height:44px;padding:0 var(--spacing-xl,16px);background:rgba(255,255,255,0.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-full,9999px);font-size:var(--font-size-text-sm,14px);font-weight:var(--font-weight-semibold,600);color:var(--brand-700,#026aa2);text-decoration:none;border:1px solid rgba(0,0,0,0.06);box-shadow:0 1px 3px rgba(0,0,0,0.08);transition:background .15s}
.nav-pill:hover{background:rgba(255,255,255,0.95)}
.nav-pill.joined{color:var(--sprout-600,#4f7a21)}
.nav-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:var(--spacing-xs,4px);background:var(--bg-primary,#fff);border-radius:var(--radius-xl,12px);padding:var(--spacing-xs,4px);box-shadow:0 4px 16px rgba(0,0,0,0.12);border:1px solid var(--border-secondary,#e9eaeb);min-width:180px}
.nav-dropdown.open{display:block}
.menu-item{display:block;padding:var(--spacing-lg,12px) var(--spacing-xl,16px);font-size:var(--font-size-text-sm,14px);font-weight:var(--font-weight-medium,500);color:var(--text-primary,#181d27);text-decoration:none;border-radius:var(--radius-md,8px)}
.menu-item:hover{background:var(--gray-50,#fafafa)}
.menu-sep{height:1px;background:var(--border-secondary,#e9eaeb);margin:var(--spacing-xs,4px) var(--spacing-xl,16px)}
@media(max-width:440px){.scroll-content{padding-left:var(--spacing-lg,12px);padding-right:var(--spacing-lg,12px)}}
@media(min-width:768px){
  .scroll-content{padding:0 var(--spacing-3xl,24px) var(--spacing-3xl,24px)}
  .top-bar{padding:0 var(--spacing-3xl,24px) var(--spacing-md,8px)}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
