/* URSY.HOSTING — mobile & iPad layer. Breakpoints 1040 / 860 / 600 (estate canon).
   Phones are their own product: re-ordered, folded, thumb-first — never a shrunken desktop.
   The mock states these as @container queries so all widths review in one canvas; the theme
   uses @media. Change a number in one, change it in the other. */

/* ≤1040 · iPad landscape / small laptop: real 2-column layouts */
@media (max-width:1040px){
  .ursy-top__nav a{ padding-inline:10px; font-size:12px; }
  .ursy-signin{ display:none; }                              /* lives in the sheet from here down */
  .ursy-split,.ursy-split--rev,.ursy-split--dom,.ursy-split--faq{ grid-template-columns:1fr; }
  .ursy-split--rev > :first-child{ order:1; } .ursy-split--rev > :last-child{ order:2; }
  .ursy-why,.ursy-contact{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ursy-cmp__wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; }   /* matrix scrolls inside its pane */
  .ursy-cmp__head,.ursy-cmp__row{ min-width:680px; }
  /* iOS/tablet compositor rule: blur the FIELD directly and leave the veil a plain tint.
     iOS Safari cannot composite backdrop-filter over another fixed layer — it renders flat
     grey or drops the field. The scale hides the blurred-edge frame. Do not remove either. */
  .ursy-field__washes{ filter:blur(60px) saturate(112%); transform:scale(1.14); }
  .ursy-field__veil{ backdrop-filter:none; -webkit-backdrop-filter:none; }
}

/* ≤860 · iPad portrait / large phone: hamburger sheet, previews 2 + 1 */
@media (max-width:860px){
  .ursy-top__nav{ display:none; }
  .ursy-burger{ display:grid; }
  .ursy-previews{ grid-template-columns:1fr 1fr; }
  .ursy-previews > :last-child{ grid-column:1 / -1; }
  .ursy-band{ grid-template-columns:1fr; }
}

/* ≤600 · phones: re-ordered, folded, one thumb action */
@media (max-width:600px){
  .ursy-top{ height:60px; gap:8px; }
  .ursy-palette,.ursy-top__cta{ display:none; }              /* both live in the sheet */
  .ursy-hero{ padding:28px 18px 18px; }
  .ursy-hero h1{ font-size:clamp(2.1rem,10.5vw,3rem); }
  .ursy-name__box{ flex-direction:column; align-items:stretch; }
  .ursy-tlds{ justify-content:stretch; } .ursy-tlds button{ flex:1; }
  .ursy-previews{ grid-template-columns:1fr; }
  .ursy-hero__acts{ flex-direction:column; width:100%; } .ursy-hero__acts > *{ width:100%; }
  .ursy-proof__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ursy-plans,.ursy-mailplans,.ursy-why,.ursy-contact{ grid-template-columns:1fr; }
  .ursy-term{ width:100%; } .ursy-term button{ flex:1; justify-content:center; padding:0 8px; }
  .ursy-term button .u-tag{ display:none; }
  .ursy-plan__head{ position:sticky; top:60px; z-index:3; background:var(--card); padding-bottom:10px; } /* price stays in view */
  .ursy-tldrow{ grid-template-columns:minmax(0,1fr) 90px; } .ursy-tldrow > :nth-child(3){ display:none; }
  .ursy-tiles{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; margin-inline:-14px; padding:0 14px 6px; }
  .ursy-tiles > *{ flex:0 0 68%; scroll-snap-align:start; }
  .ursy-final{ flex-direction:column; align-items:stretch; text-align:center; }
  .ursy-fold__body{ display:none; } .ursy-fold[open] .ursy-fold__body{ display:block; }
  .ursy-foot__cols{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
  .ursy-sticky{ display:flex; } .ursy-sticky-pad{ display:block; }
}
@media (max-width:420px){ .ursy-proof__grid{ grid-template-columns:1fr; } }

@media (pointer:coarse){
  a,button,summary,input{ touch-action:manipulation; }
  .u-btn,.u-iconbtn,.ursy-top__nav a,.ursy-tlds button{ min-height:48px; }
  .ursy-fold > summary{ min-height:60px; }
}
@media (max-height:560px) and (orientation:landscape){ .ursy-hero{ padding-top:24px; padding-bottom:16px; } }
@media (prefers-contrast:more){
  :root{ --line:rgba(18,20,24,.3); --line2:rgba(18,20,24,.5); --ink2:#3d4247; --ink3:#4a4f55; }
  [data-theme="dark"]{ --line:rgba(255,255,255,.3); --line2:rgba(255,255,255,.5); --ink2:#d2d7dd; --ink3:#c2c8cf; }
}
@media (forced-colors:active){ .ursy-field{ display:none; } .ursy-preview,.ursy-plan,.ursy-tile{ border:1px solid CanvasText; } }
