/* Platform-wide interaction and responsive consolidation. */
html{scroll-behavior:smooth;overflow-x:hidden}
body{overflow-x:clip}
:where(button,a,summary,[role="button"]){touch-action:manipulation;-webkit-tap-highlight-color:transparent}
:where(button,a,summary,[role="button"]){transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .12s ease,box-shadow .16s ease}
:where(button,a,summary,[role="button"]):active{transform:scale(.985)}
button:disabled{cursor:not-allowed;opacity:.58}

/* The brand meaning stays compact and subordinate to the primary task. */
.brand-expansion{width:max-content;max-width:100%;margin:-15px 0 26px;padding:8px 12px 8px 9px;border:1px solid #d8e6e8;border-radius:13px;background:#ffffffb8;display:flex;align-items:center;gap:10px;color:#587582}
.brand-expansion strong{padding:5px 8px;border-radius:8px;background:#173c59;color:#fff;font:850 .75rem Manrope,sans-serif;letter-spacing:.08em}
.brand-expansion span{font-size:.79rem;font-weight:850;color:#1d596d;letter-spacing:.025em}
.brand-expansion small{padding-left:10px;border-left:1px solid #d8e6e8;font-size:.72rem;color:#718a94}

/* A short launch notice replaces the former second hero. */
.weltkindertag-launch.launch-announcement{max-width:1180px;margin:12px auto 0;padding:17px 58px 17px 22px;grid-template-columns:minmax(0,1fr) auto;gap:22px;border-radius:18px}
.launch-announcement .launch-copy h2{font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.15;margin:3px 0 4px}
.launch-announcement .launch-copy p{font-size:.9rem;line-height:1.45}
.launch-announcement .launch-actions{min-width:180px;gap:4px}
.launch-announcement .launch-actions small{text-align:center;font-size:.72rem}
.launch-announcement::after{width:180px;height:180px;right:-80px;top:-110px}

/* One calm discovery group: no cloned cards or autoplaying rail. */
.feature-showcase{max-width:1000px;margin:28px 0 34px;padding-top:4px}
.feature-showcase-head{margin-bottom:12px}
.feature-track{width:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;animation:none}
.feature-rail{overflow:visible;mask-image:none}
.feature-ad{width:auto;min-height:136px;padding:18px;border-radius:17px;box-shadow:none}
.feature-ad:hover,.feature-ad:focus-visible{transform:translateY(-2px);box-shadow:0 10px 26px #173c5912}

/* Predictable touch targets across forms, cards, tabs and dialogs. */
:where(.primary,.dark,.subtle,.card-actions button,.card-actions a,.links a,.event-actions a,.today-card-actions a,.dialog-actions a,.dialog-actions button,.kd-tabs button,.ad-tabs button,.market-reset,.import-button){min-height:44px}
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,textarea){font-size:16px}
:where(.table-wrap,.kd-table-wrap,.ad-table-wrap){overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}

@media(max-width:1100px){
  body{padding-bottom:86px}
  .top{position:sticky;top:0;z-index:55;height:62px;padding:0 12px;box-shadow:0 5px 18px #173c590b}
  .top .brand{padding-left:0}
  .brand-logo{width:40px;height:37px}
  .side{display:none!important}
  .shell{display:block;min-height:calc(100vh - 62px)}
  main{width:100%;max-width:none;padding:26px 16px 112px}
  .mobile-dock{left:8px;right:8px;bottom:max(7px,env(safe-area-inset-bottom));z-index:900;padding:5px;border-radius:17px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
  .mobile-dock button{min-height:54px;position:relative;z-index:1}
  .mobile-dock button small{font-size:.67rem;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .mobile-dock button:active{transform:scale(.96);background:#e8f3f3}
  .mobile-more{position:fixed;inset:auto 10px calc(78px + env(safe-area-inset-bottom)) 10px;width:auto;max-width:560px;max-height:min(72vh,680px);margin:auto;padding:22px 18px 18px;border-radius:22px;overscroll-behavior:contain}
  .mobile-more[open]{display:block}
  .mobile-more-group button{min-height:50px;padding:12px 13px}
  .directory-compare-bar{bottom:84px}
  .weltkindertag-launch.launch-announcement{margin:8px 10px 0;padding:15px 48px 15px 16px;grid-template-columns:1fr;gap:12px;border-radius:16px}
  .launch-announcement .launch-actions{min-width:0;display:flex;align-items:center;gap:10px}
  .launch-announcement .launch-actions button{min-height:46px;flex:1}
  .launch-announcement .launch-actions small{text-align:left;max-width:135px}
  .intent-switcher{margin-bottom:14px}
  .feature-track{grid-template-columns:repeat(3,minmax(220px,1fr));overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:thin}
  .feature-ad{scroll-snap-align:start}
  .analytics-consent{bottom:84px!important;max-height:calc(100vh - 110px);overflow:auto}
  .market-dock{bottom:84px!important}
  :where(.primary,.dark){max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}
}

@media(max-width:570px){
  main{padding:22px 14px 108px}
  h1{font-size:clamp(2rem,10vw,2.75rem);line-height:1.08;letter-spacing:-.045em}
  .lead{margin-bottom:22px}
  .intent-grid{grid-template-columns:1fr 1fr;gap:8px}
  .intent-grid button{min-height:98px;padding:12px}
  .move-form,.finder-form,.today-discovery,.kita-playground-calendar,.skill-provider-call{border-radius:17px;padding:16px}
  .move-fields .primary,.finder-form>.primary,.finder-form fieldset+.primary,.form-card>.primary,.form-card>.dark{width:100%;margin-inline:0}
  .subtle{margin-left:0}
  .card-actions,.event-actions,.today-card-actions,.dialog-actions,.bank-actions{display:grid;grid-template-columns:1fr;width:100%}
  .card-actions>*,.event-actions>*,.today-card-actions>*,.dialog-actions>*,.bank-actions>*{width:100%;display:flex;align-items:center;justify-content:center;text-align:center}
  .mobile-more-group>div{grid-template-columns:1fr 1fr}
  .mobile-more-group button{font-size:.86rem}
  .feature-track{grid-template-columns:repeat(3,minmax(82vw,1fr))}
  .feature-ad{min-height:126px}
  .launch-announcement .eyebrow{font-size:.64rem;letter-spacing:.1em}
  .launch-announcement .launch-copy h2{font-size:1.17rem}
  .launch-announcement .launch-copy p{font-size:.82rem;margin:0}
  .launch-announcement .launch-actions small{display:none}
  .mobile-dock button span{font-size:1.05rem}
  .brand-expansion{width:100%;margin:-10px 0 20px;display:grid;grid-template-columns:auto 1fr;gap:4px 8px}
  .brand-expansion strong{grid-row:1/3;align-self:center}
  .brand-expansion span{font-size:.72rem}
  .brand-expansion small{padding:0;border:0;font-size:.68rem}
}

@media(max-width:380px){
  .mobile-dock{left:5px;right:5px}
  .mobile-dock button small{font-size:.61rem}
  .mobile-more-group>div{grid-template-columns:1fr}
  .intent-grid{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  :where(button,a,summary,[role="button"]){transition:none!important}
}
