/* Mobile is intentionally a clean document flow. Desktop keeps the cinematic sticky scene. */
@media (max-width: 767px){
  html{scroll-behavior:smooth}body{min-width:320px}
  .topbar{height:64px;grid-template-columns:82px 1fr;padding:0 12px;background:#050713d9;mix-blend-mode:normal;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff15}
  .brand{width:78px;height:auto}.motion-toggle{display:none}.path-switcher{justify-self:end;gap:2px;padding:3px;max-width:232px}.path-switcher button{padding:8px 9px;font-size:7px;letter-spacing:.08em}.path-switcher i{margin-right:4px}
  .chooser{min-height:100svh;display:flex;flex-direction:column;gap:9px;padding:84px 12px 12px;background:#050713}
  .choice-title{position:relative;left:auto;top:auto;transform:none;width:auto;text-align:left;padding:0 5px 10px;text-shadow:none;flex:none}
  .choice-title .eyebrow{margin-bottom:9px;font-size:7px}.choice-title h1{font-size:clamp(38px,11vw,52px);line-height:.91;margin-bottom:10px}.choice-title>p:last-child{font-size:11px;margin:0}
  .choice{min-height:0;height:auto;flex:1;border-radius:16px;isolation:isolate}.choice:after{border-radius:inherit}.choice:hover:after,.choice:focus-visible:after{inset:6px}
  .choice-copy{left:20px;bottom:16px}.choice-copy small{font-size:9px}.choice-copy strong{font-size:clamp(33px,10vw,44px)}.choice-copy b{font-size:7px;margin-top:9px}.choice-copy b i{font-size:14px}.choice-index{left:auto;right:15px;top:14px;bottom:auto;font-size:7px}.choice-web svg{top:0;left:10%;height:100%;width:80%}.orbit-one{width:70vw;height:70vw}.orbit-two{width:48vw;height:48vw}

  .experience,body[data-path="wedding"] .experience,body[data-path="web"] .experience{height:auto!important;min-height:0}
  .experience-stage{height:auto;min-height:58svh;position:relative;top:auto;overflow:visible}
  .no-choice{position:relative;height:58svh}
  .branch[aria-hidden="true"]{display:none}.branch[aria-hidden="false"]{position:relative;inset:auto;opacity:1;pointer-events:auto}
  .beat{position:relative!important;inset:auto!important;pointer-events:auto}
  .journey-progress{display:none}

  .wedding-intro{height:70svh;min-height:500px;overflow:hidden;opacity:1!important}
  .wedding-intro .photo-wrap{opacity:1!important;transform:none!important;inset:0}.photo-wrap img{object-position:55% 50%}
  .wedding-intro .photo-wrap span{background:linear-gradient(0deg,#100b05d9 0%,transparent 65%)}
  .intro-copy{left:20px;right:20px;top:auto;bottom:44px;opacity:1!important;transform:none!important;color:#fff;text-shadow:0 2px 25px #000}
  .intro-copy .eyebrow{font-size:12px}.intro-copy h2{font-size:clamp(44px,13vw,64px);margin-bottom:16px}.intro-copy>p:last-child{font-size:15px;line-height:1.5}
  .zoom-target{display:none}
  .wedding-films{min-height:0;padding:52px 9px 30px;opacity:1!important;overflow:hidden}
  .wedding-wall-heading{position:relative;left:auto;top:auto;transform:none;width:auto;text-align:left;padding:0 7px}.wedding-wall-heading h2{font-size:clamp(38px,11vw,52px);margin-bottom:12px}.wedding-wall-heading>span{display:block;font-size:12px;line-height:1.5;letter-spacing:.04em}
  .wedding-wall{position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:22px}
  body:not(.quiet) .wedding-film.film-one,body:not(.quiet) .wedding-film.film-two,body:not(.quiet) .wedding-film.film-three,body:not(.quiet) .wedding-film.film-four,
  .wedding-film{position:relative!important;inset:auto!important;width:100%!important;aspect-ratio:16/11!important;opacity:1!important;transform:none!important;border-radius:9px;padding:3px;overflow:hidden;box-shadow:0 14px 30px #0008}
  .wedding-film:nth-child(even){margin-top:0!important}.wedding-film video{object-fit:cover}.wedding-film>span{right:7px;top:7px;width:24px;height:24px}

  .web-branch{position:relative;background:#060817}
  .mindmap{min-height:0;height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:88px 14px 50px;opacity:1!important;transform:none!important;overflow:hidden}
  .map-grid{z-index:0}.map-lines{display:none}.web-heading{position:relative;left:auto;top:auto;grid-column:1/-1;grid-row:1;opacity:1!important;z-index:1;margin-bottom:25px}.web-heading h2{font-size:clamp(42px,12vw,59px)}
  .map-node,.map-node.center{position:relative;left:auto;top:auto;width:auto;height:auto;min-width:0;transform:none!important;opacity:1!important;border-radius:10px;padding:15px;display:block;text-align:left;z-index:1}
  .map-node.center{grid-column:1/-1;background:#5368ed;border-color:#91eeff;box-shadow:0 0 35px #5368ed55}.map-node.center strong{font-size:25px}.map-node strong{font-size:12px}.map-node small{font-size:6px}
  .website-build{min-height:0;display:flex;flex-direction:column;padding:72px 12px 48px;background:#090d29;opacity:1!important}
  .build-copy{position:relative;right:auto;bottom:auto;width:auto;text-align:left;opacity:1!important;padding:0 4px 26px;order:0}.build-copy h2{font-size:clamp(40px,12vw,58px)}.build-copy p:last-child{font-size:12px}
  .site-window{position:relative;left:auto;top:auto;width:100%;height:430px;transform:none!important;margin:0;order:1;border-radius:10px}.window-nav{padding:0 4%}.window-hero{height:72%;grid-template-columns:1fr;padding:8%}.window-hero h3{font-size:40px;margin:5vh 0 2vh}.window-art{display:none}.window-strip{font-size:6px}
  .packages{min-height:0;padding:72px 14px 52px;opacity:1!important;transform:none!important}.package-heading{width:auto}.package-heading h2{font-size:clamp(43px,12vw,60px)}.package-heading>p:last-child{font-size:12px;line-height:1.6}.package-grid{grid-template-columns:1fr;gap:9px;margin-top:30px}.package-grid article{padding:21px;min-height:0;border-radius:10px}.package-grid article.featured{transform:none;order:-1}.package-grid h3{font-size:22px;margin:18px 0 12px}.package-grid ul{font-size:11px}

  .event-gallery,.event-stage{height:auto;min-height:0}.event-stage{padding:54px 9px 34px}.event-heading{text-align:left;padding:0 7px}.event-heading h2{font-size:clamp(36px,10.5vw,48px);line-height:.93}.event-heading>p:last-child{text-align:left;font-size:18px}.event-marquee{top:39%;font-size:68px}.floating-gallery{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:25px}.float-card{width:100%!important;aspect-ratio:9/13;border-radius:9px;overflow:hidden}.float-card:nth-child(even){margin-top:0}.event-statement{font-size:12px;letter-spacing:.1em;margin-top:28px}.event-statement em{font-size:16px;display:block;margin:6px 0 0}
  .contact{min-height:0;padding:76px 16px 55px;grid-template-columns:1fr;gap:32px}.contact-intro h2{font-size:clamp(48px,14vw,69px)}.contact-intro>p:not(.eyebrow){font-size:12px}.direct-links{margin-top:30px}.contact-form{padding:0}.contact-form label{margin-bottom:20px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}.form-note{line-height:1.5}
  footer{padding:42px 16px;gap:18px}footer img{width:105px}
}

@media (max-width:370px){.path-switcher button{padding:7px 6px}.choice-title h1{font-size:36px}.intro-copy h2{font-size:45px}.wedding-wall-heading h2,.web-heading h2,.build-copy h2,.package-heading h2,.event-heading h2{font-size:40px}}
