:root{--ink:#171717;--cream:#f3ead8;--paper:#fffaf0;--red:#e5332a;--blue:#1656a5;--yellow:#f3c927;--sage:#527764;--line:#d9d5ca;--rose:#b33b34;--font-serif:Iowan Old Style, Baskerville, Times New Roman, serif;--font-sans:Avenir Next, Avenir, Helvetica Neue, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{color:var(--ink);background:var(--cream);font-family:var(--font-sans), sans-serif;margin:0}.book-transition-content{transform-origin:50%;will-change:transform, opacity, border-radius, clip-path;min-height:100vh;position:relative;overflow:hidden}.book-transition-content.is-paper-unfolding{transform-style:preserve-3d;box-shadow:0 26px 70px #17171742}.book-transition-content.is-paper-unfolding:before{content:"";z-index:900;mix-blend-mode:multiply;pointer-events:none;background:linear-gradient(128deg,#0000 37%,#17171733 39%,#ffffff57 40%,#0000 42%),linear-gradient(38deg,#0000 45%,#17171729 47%,#ffffff4d 48%,#0000 50%),linear-gradient(168deg,#0000 54%,#17171724 56%,#ffffff3d 57%,#0000 59%),repeating-linear-gradient(7deg,#17171706 0 1px,#0000 1px 5px);animation:1.42s cubic-bezier(.4,0,.2,1) .22s both paper-creases-unfold;position:absolute;inset:0}.book-transition-overlay{z-index:1000;perspective:1800px;pointer-events:all;transform-style:preserve-3d;grid-template-columns:1fr 1fr;display:grid;position:fixed;inset:0;overflow:hidden}.book-transition-panel{backface-visibility:hidden;background:radial-gradient(circle at 18% 16%, #ffffffe0, transparent 30rem), repeating-linear-gradient(0deg, #17171705 0 1px, transparent 1px 5px), var(--paper);border-block:12px solid var(--cream);will-change:transform, opacity;height:100%;position:relative;overflow:hidden;box-shadow:0 0 54px #17171747}.book-transition-panel:after{content:"";pointer-events:none;border-block:1px solid #17171747;position:absolute;inset:0}.book-transition-panel-left{transform-origin:0;border-left:12px solid var(--cream)}.book-transition-panel-left:after{border-left:1px solid #17171747}.book-transition-panel-right{transform-origin:100%;border-right:12px solid var(--cream)}.book-transition-panel-right:after{border-right:1px solid #17171747}.book-transition-page-number{color:#17171738;font:italic 500 clamp(2.8rem, 7vw, 6.5rem)/1 var(--font-serif);position:absolute;top:50%;transform:translateY(-50%)}.book-transition-panel-left .book-transition-page-number{right:clamp(22px,6vw,86px)}.book-transition-panel-right .book-transition-page-number{left:clamp(22px,6vw,86px)}.book-transition-spine{z-index:4;transform-origin:50%;background:#17171752;width:2px;position:absolute;top:0;bottom:0;left:50%;box-shadow:-10px 0 22px #1717172e,10px 0 22px #1717172e}@keyframes paper-creases-unfold{0%{opacity:.78;transform:scale(1.45)rotate(-5deg)}34%{opacity:.6;transform:scale(1.15)rotate(2deg)}72%{opacity:.24;transform:scale(1.03)rotate(-.5deg)}to{opacity:0;transform:scale(1)}}main{min-height:100vh;overflow:hidden}.paper-hero{isolation:isolate;background:linear-gradient(90deg, transparent 49.8%, #17171714 50%, transparent 50.2%), radial-gradient(circle at 14% 16%, #ffffffbf, transparent 22rem), var(--paper);grid-template-rows:auto 1fr auto auto;min-height:100svh;padding:clamp(22px,4vw,48px);display:grid;position:relative;overflow:hidden}.paper-hero>*{min-width:0}.paper-hero:after{content:"";z-index:10;pointer-events:none;border:1px solid #17171747;position:absolute;inset:12px}.hero-copy{z-index:6;text-align:center;position:relative}.issue-line{font:700 .62rem/1 var(--font-sans);letter-spacing:.18em;text-transform:uppercase;justify-content:space-between;margin:0;display:flex}.kicker{color:var(--red);font:800 clamp(.62rem, 1vw, .78rem)/1 var(--font-sans);letter-spacing:.25em;text-transform:uppercase;margin:clamp(30px,6vh,68px) 0 10px}h1,h2,h3{font-family:var(--font-serif), serif;font-weight:500}.paper-hero h1{letter-spacing:-.075em;text-transform:uppercase;width:min(100%,980px);margin:0 auto;font-size:clamp(4.8rem,15vw,11.5rem);line-height:.68;position:relative}.paper-hero .name{width:fit-content;color:var(--paper);-webkit-text-stroke:clamp(1px, .16vw, 2px) var(--ink);text-shadow:2px 3px 0 var(--ink), 5px 6px 0 #1717172e;display:block;position:relative}.name-rebecca{margin-left:3%;transform:rotate(-3deg)}.name-josue{margin:-.03em 1% 0 auto;transform:rotate(2deg)}.ampersand{z-index:2;color:var(--yellow);-webkit-text-stroke:1px var(--ink);font-size:.5em;font-style:italic;position:absolute;top:31%;left:47%;transform:rotate(-12deg)}.paper-hero .date{font:800 clamp(.7rem, 1.2vw, .88rem)/1 var(--font-sans);letter-spacing:.32em;text-transform:uppercase;margin:clamp(18px,4vh,40px) 0 0}.invitation-hero .hero-copy{align-self:center}.invitation-hero .kicker{margin-top:0;position:relative;top:clamp(-18px,-1.5vw,-12px)}.invitation-actions{z-index:11;justify-content:center;gap:26px;width:fit-content;margin:0 auto;display:flex;position:relative}.journey-link,.rsvp-link{color:var(--ink);letter-spacing:.17em;-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-underline-offset:5px;text-transform:uppercase;font-size:clamp(.78rem,1.2vw,.92rem);font-weight:800}.journey-link span,.rsvp-link span{color:var(--red)}.map-mechanism{z-index:5;text-align:center;align-self:end;width:min(720px,92vw);margin:-5.5rem auto 0;position:relative}.california-map{width:100%;height:clamp(255px,38vw,365px);position:relative}.california-map svg{width:100%;height:100%;overflow:visible}.state-shadow{fill:#17171729;transform:translate(9px,9px)}.state-shape{fill:var(--yellow);stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.state-fold{fill:none;stroke:#17171740;stroke-width:2px;stroke-dasharray:7 6}.travel-route{fill:none;stroke:var(--red);stroke-width:6px;stroke-linecap:round;stroke-dasharray:10 11}.route-dot{fill:var(--blue);stroke:var(--paper);stroke-width:4px}.map-x path{fill:none;stroke:var(--ink);stroke-width:8px;stroke-linecap:round}.destination{border:1px solid var(--ink);background:var(--paper);letter-spacing:.08em;text-transform:uppercase;box-shadow:4px 4px 0 var(--ink);align-items:center;gap:7px;padding:7px 9px;font-size:clamp(.52rem,1vw,.68rem);font-weight:800;display:flex;position:absolute}.destination b{width:21px;height:21px;color:var(--paper);background:var(--blue);border-radius:50%;place-items:center;font-size:.5rem;display:grid}.destination-north{top:16%;left:6%;transform:rotate(-3deg)}.destination-south{top:54%;right:5%;transform:rotate(3deg)}.imperial-label{letter-spacing:.12em;text-transform:uppercase;font-size:clamp(.5rem,.9vw,.65rem);font-weight:800;position:absolute;bottom:4%;right:8%}.imperial-label b{color:var(--red);font-size:1.5rem}.paper-car{z-index:4;border:2px solid var(--ink);background:var(--red);border-radius:12px 17px 5px 5px;width:clamp(42px,7vw,58px);height:clamp(20px,3.5vw,30px);position:absolute;top:19%;left:31%;transform:rotate(12deg);box-shadow:4px 4px #1717172e}.paper-car:before{content:"";border:2px solid var(--ink);background:var(--red);border-bottom:0;border-radius:11px 11px 0 0;width:26px;height:13px;position:absolute;top:-12px;left:12px;transform:skew(-12deg)}.car-window{z-index:2;background:var(--paper);width:15px;height:9px;position:absolute;top:-9px;left:18px;transform:skew(-12deg)}.wheel{border:2px solid var(--paper);background:var(--ink);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-7px}.wheel-front{right:7px}.wheel-back{left:7px}.car-pull-tab{border:1px solid var(--ink);width:fit-content;min-height:0;color:var(--ink);background:var(--paper);font:800 .64rem/1 var(--font-sans);letter-spacing:.18em;box-shadow:5px 5px 0 var(--ink);align-items:center;gap:18px;margin:-24px auto 0;padding:12px 13px 12px 19px;display:flex;position:relative}.car-pull-tab:hover{color:var(--paper);background:var(--blue)}.car-pull-tab b{width:27px;height:27px;color:var(--paper);background:var(--red);border-radius:50%;place-items:center;font-size:1rem;display:grid}.flight-mechanism{z-index:5;text-align:center;align-self:end;width:min(800px,94vw);margin:36px auto 0;position:relative}.flight-stage{height:clamp(290px,39vw,390px);position:relative}.globe-window{position:absolute;inset:0 11%;overflow:hidden}.globe-world{transform-origin:50%;position:absolute;inset:0;transform:translate(-22%,14%)scale(1.85)}.globe-world svg{width:100%;height:100%;overflow:visible}.globe-shadow{fill:#1717172b}.ocean{fill:var(--blue)}.globe-grid{fill:none;stroke:#fffaf06b;stroke-width:2px}.asia,.india,.southeast-asia,.malay-peninsula,.philippines,.indonesia,.australia{fill:var(--yellow);stroke:var(--ink);stroke-width:2.5px;stroke-linejoin:round}.country-border{fill:none;stroke:#1717178f;stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round}.japan,.singapore{fill:var(--red);stroke:var(--paper);stroke-width:2px}.flight-anchor{fill:#0000;stroke:none}.flight-route-layer{z-index:5;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.flight-route-layer,.paper-plane-track{transition:opacity .22s cubic-bezier(.2,0,0,1)}.flight-stage.is-page-transitioning .flight-route-layer,.flight-stage.is-page-transitioning .paper-plane-track{opacity:0}.flight-route-guide,.flight-route-progress{fill:none;stroke:var(--paper);stroke-linecap:round;vector-effect:non-scaling-stroke}.flight-route-guide{stroke-width:2px;stroke-dasharray:3 8;opacity:.25}.flight-route-progress{stroke-width:4px;filter:drop-shadow(2px 2px #17171729)}.globe-outline{fill:none;stroke:var(--ink);stroke-width:4px}.paper-plane-track{z-index:6;transform-origin:0 0;pointer-events:none;width:0;height:0;position:absolute;top:0;left:0}.paper-plane{filter:drop-shadow(5px 6px #17171729);width:clamp(58px,10vw,92px);display:block;overflow:visible;transform:translate(-50%,-50%)}.plane-shadow{fill:#1717172e;transform:translate(4px,4px)}.plane-body{fill:var(--paper);stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.plane-accent{fill:var(--red)}.plane-window{fill:#bfe3ee;stroke:var(--ink);stroke-width:1.5px}.place-sketch{z-index:7;width:clamp(125px,21vw,180px);color:var(--ink);position:absolute}.place-sketch svg{width:100%;display:block;overflow:visible}.place-sketch svg>*{fill:none;stroke:var(--ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.place-sketch svg circle{fill:var(--red);stroke:none}.place-sketch .sketch-fill{fill:var(--yellow)}.place-sketch .snow{fill:var(--paper)}.singapore-landmark-image{filter:drop-shadow(2px 3px #1717171f);width:100%;height:auto;display:block}.place-sketch b{border:1px solid var(--ink);background:var(--paper);letter-spacing:.13em;text-transform:uppercase;box-shadow:3px 3px 0 var(--ink);margin-top:2px;padding:5px 8px;font-size:.58rem;display:inline-block}.place-number{width:24px;height:24px;color:var(--paper);background:var(--red);border-radius:50%;place-items:center;font-size:.55rem;font-weight:800;display:grid;position:absolute;top:2px;left:2px}.tokyo-sketch{top:5%;left:0;transform:rotate(-3deg)}.singapore-sketch{opacity:.28;bottom:8%;right:0;transform:translate(10px,6px)rotate(3deg)scale(.94)}.flight-label{letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:clamp(.52rem,1vw,.68rem);font-weight:800;display:flex;position:absolute;bottom:6%;left:20%;right:20%}.flight-label i{border-top:1px dashed var(--ink);flex:1;margin-inline:10px;font-style:normal;line-height:0}.flight-pull-tab{border:1px solid var(--ink);width:fit-content;min-height:0;color:var(--ink);background:var(--paper);font:800 .64rem/1 var(--font-sans);letter-spacing:.18em;box-shadow:5px 5px 0 var(--ink);align-items:center;gap:18px;margin:-22px auto 0;padding:12px 13px 12px 19px;transition:color .1s,background-color .1s,transform .15s cubic-bezier(.2,0,0,1),box-shadow .15s cubic-bezier(.2,0,0,1);display:flex;position:relative}.flight-pull-tab:hover{color:var(--paper);background:var(--blue)}.flight-pull-tab:active{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)scale(.97)}.flight-pull-tab b{width:27px;height:27px;color:var(--paper);background:var(--red);border-radius:50%;place-items:center;font-size:1rem;display:grid}.flight-stage.is-flying .globe-world{transform:translate(-10%,-20%)scale(1.9)}.flight-stage.is-flying .tokyo-sketch{opacity:.3;transform:translate(-8px,-4px)rotate(-4deg)scale(.96)}.flight-stage.is-flying .singapore-sketch{opacity:1;transform:translate(0)rotate(3deg)scale(1)}.arrival-paper-layer{z-index:18;perspective:1200px;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.arrival-paper-card{background:repeating-linear-gradient(0deg, #17171705 0 1px, transparent 1px 5px), var(--paper);width:min(680px,72vw);transform-style:preserve-3d;will-change:transform, opacity, clip-path;border:1px solid #17171761;margin:0;padding:clamp(10px,1.4vw,16px);position:relative;overflow:hidden;box-shadow:12px 16px #17171729,0 24px 70px #1717173d}.arrival-paper-card:after{content:"";z-index:3;mix-blend-mode:multiply;pointer-events:none;background:linear-gradient(132deg,#0000 34%,#1717173b 36%,#ffffff52 37%,#0000 39%),linear-gradient(42deg,#0000 44%,#1717172e 46%,#ffffff47 47%,#0000 49%),linear-gradient(166deg,#0000 57%,#17171726 59%,#0000 61%);animation:1.45s cubic-bezier(.4,0,.2,1) both arrival-creases-fade;position:absolute;inset:0}.arrival-story-link{color:inherit;pointer-events:auto;text-decoration:none;display:block}.arrival-story-link:focus-visible{outline:3px solid var(--red);outline-offset:5px}.arrival-photo-frame{aspect-ratio:16/9;border:1px solid var(--ink);background:var(--ink);position:relative;overflow:hidden}.arrival-photo-frame img{object-fit:cover;filter:saturate(.84)contrast(1.06)}.arrival-paper-card figcaption{text-align:left;grid-template-columns:auto 1fr;align-items:end;gap:3px 18px;padding:clamp(10px,1.4vw,16px) 4px 2px;display:grid}.arrival-paper-card figcaption span{color:var(--red);letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl;grid-area:1/1/span 2;font-size:.58rem;font-weight:800;transform:rotate(180deg)}.arrival-paper-card figcaption strong{font:500 clamp(1.45rem, 3vw, 2.7rem)/1 var(--font-serif)}.arrival-paper-card figcaption small{letter-spacing:.16em;text-align:right;text-transform:uppercase;place-self:end;font-size:.58rem;font-weight:800}.invitation-note{z-index:7;text-align:center;max-width:490px;font:italic clamp(1rem, 1.8vw, 1.22rem)/1.5 var(--font-serif);margin:18px auto 12px;position:relative}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.flight-page{isolation:isolate;background:var(--paper);min-height:100svh;position:relative;overflow:hidden}.flight-page:after{content:"";z-index:30;pointer-events:none;border:1px solid #17171747;position:absolute;inset:12px}.flight-page-header{z-index:20;letter-spacing:.17em;text-transform:uppercase;justify-content:space-between;font-size:clamp(.72rem,.9vw,.84rem);font-weight:800;display:flex;position:absolute;top:clamp(24px,4vw,48px);left:clamp(24px,4vw,48px);right:clamp(24px,4vw,48px)}.flight-page-header a{color:var(--ink);-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-underline-offset:5px}.flight-page-header p{margin:0}.flight-page-title{z-index:12;text-align:center;position:absolute;top:clamp(66px,8vh,92px);left:50%;transform:translate(-50%)}.flight-page-title p{color:var(--red);letter-spacing:.2em;text-transform:uppercase;margin:0 0 4px;font-size:.62rem;font-weight:800}.flight-page-title h1{white-space:nowrap;margin:0;font-size:clamp(1.7rem,4vw,3.8rem);line-height:1}.flight-page-title h1 span{color:var(--yellow);font-style:italic}.flight-page .flight-mechanism{width:100%;height:100svh;margin:0}.flight-page .flight-stage{height:100svh}.flight-page .globe-window{inset:0}.flight-page .globe-world{transform:translate(-32%,18%)scale(3.1)}.flight-page .paper-plane{width:clamp(86px,9vw,128px)}.flight-page .tokyo-sketch{width:clamp(150px,18vw,220px);top:17%;left:5%}.flight-page .singapore-sketch{width:clamp(150px,18vw,220px);bottom:18%;right:5%}.flight-page .flight-label{bottom:12%;left:18%;right:18%}.flight-page .flight-pull-tab{z-index:21;margin:0;position:absolute;bottom:clamp(32px,6vh,68px);left:50%;transform:translate(-50%)}.flight-page .flight-pull-tab:active{transform:translate(calc(2px - 50%),2px)scale(.97)}.flight-page .flight-stage.is-flying .globe-world{transform:translate(-15%,-32%)scale(3.2)}.dome-page{isolation:isolate;background:linear-gradient(90deg, #5b924f1f, transparent 22%, transparent 78%, #3f83ac1f), repeating-linear-gradient(0deg, #17171705 0 1px, transparent 1px 5px), var(--paper);min-height:100svh;position:relative;overflow:hidden}.dome-page:after{content:"";z-index:20;pointer-events:none;border:1px solid #17171747;position:absolute;inset:12px}.dome-page-header{z-index:15;letter-spacing:.17em;text-transform:uppercase;justify-content:space-between;font-size:clamp(.72rem,.9vw,.84rem);font-weight:800;display:flex;position:absolute;top:clamp(24px,4vw,46px);left:clamp(24px,4vw,48px);right:clamp(24px,4vw,48px)}.dome-page-header a{color:var(--ink);-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-underline-offset:5px}.dome-page-header p{margin:0}.dome-story{grid-template-columns:minmax(220px,.72fr) minmax(390px,1.5fr) minmax(210px,.62fr);align-items:center;gap:clamp(24px,3.5vw,64px);width:min(1480px,100%);min-height:100svh;margin:auto;padding:clamp(104px,12vh,132px) clamp(32px,5vw,82px) 92px;display:grid}.dome-story-copy{z-index:7;align-self:start;padding-top:clamp(30px,9vh,92px);position:relative}.dome-story-kicker{color:var(--red);letter-spacing:.2em;text-transform:uppercase;margin:0 0 16px;font-size:.62rem;font-weight:800}.dome-story-copy h1{letter-spacing:-.035em;max-width:7.4ch;margin:0;font-size:clamp(2.8rem,5vw,5.8rem);line-height:.86}.dome-story-intro{max-width:30rem;font:italic clamp(1rem, 1.5vw, 1.22rem)/1.55 var(--font-serif);margin:28px 0 0}.dome-motion-note{letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:10px;margin-top:24px;font-size:.58rem;font-weight:800;display:inline-flex}.dome-motion-note:before{content:"";border-top:1px dashed var(--ink);width:28px}.dome-scene-frame{z-index:5;background:var(--paper);border:1px solid #17171761;justify-self:center;width:min(100%,650px);padding:clamp(8px,1vw,13px);position:relative;transform:rotate(.45deg);box-shadow:13px 17px #17171729,0 24px 70px #1717172e}.dome-scene{aspect-ratio:1087/1447;border:1px solid var(--ink);background:#cdefff;position:relative;overflow:hidden}.dome-scene-background{object-fit:cover}.dome-scene:after{content:"";z-index:4;mix-blend-mode:screen;pointer-events:none;background:linear-gradient(110deg,#0000 42%,#ffffff40 49%,#0000 56%);position:absolute;inset:-30% -60%}.dome-scene-label{letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;gap:18px;margin:10px 2px 0;font-size:.55rem;font-weight:800;display:flex}.dinosaur-composite{z-index:3;aspect-ratio:1086/1448;pointer-events:none;width:68%;position:absolute;bottom:-24%;left:-2%}.dinosaur-layer{transform-origin:bottom;will-change:transform;position:absolute;inset:0}.dinosaur-layer img{object-fit:cover}.dinosaur-neck{z-index:2;filter:drop-shadow(0 5px 2px #17171724)}.dinosaur-neck-small{clip-path:polygon(24% 25%,59% 25%,57% 44%,50% 78%,27% 80%,28% 58%);transform-origin:39% 78%}.dinosaur-neck-tall{clip-path:polygon(42% 4%,80% 4%,79% 38%,77% 79%,53% 80%,51% 66%,57% 44%,62% 29%,54% 29%,46% 25%);transform-origin:63% 79%}.dome-reference-card{z-index:7;width:min(100%,265px);color:var(--ink);background:var(--paper);border:1px solid #1717175c;place-self:end center;margin:0;padding:10px 10px 14px;position:relative;transform:rotate(-2.2deg);box-shadow:9px 11px #17171724}.dome-reference-photo{aspect-ratio:3/4;border:1px solid var(--ink);background:#dce5dd;position:relative;overflow:hidden}.dome-reference-photo img{object-fit:cover}.dome-reference-card figcaption{justify-content:space-between;align-items:end;gap:14px;padding:11px 2px 0;display:flex}.dome-reference-card figcaption span{color:var(--red);letter-spacing:.15em;text-transform:uppercase;font-size:.52rem;font-weight:800}.dome-reference-card figcaption strong{font:500 1.25rem/1 var(--font-serif)}.dome-page-footer{z-index:15;letter-spacing:.15em;text-transform:uppercase;justify-content:space-between;font-size:.58rem;font-weight:800;display:flex;position:absolute;bottom:clamp(27px,4vh,42px);left:clamp(28px,4vw,54px);right:clamp(28px,4vw,54px)}.dome-page-footer a{color:var(--ink);-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-underline-offset:5px}.ski-page{isolation:isolate;background:linear-gradient(90deg, #3d8bbe1c, transparent 24%, transparent 76%, #9169411a), repeating-linear-gradient(0deg, #17171705 0 1px, transparent 1px 5px), var(--paper);min-height:100svh;position:relative;overflow:hidden}.ski-page:after{content:"";z-index:20;pointer-events:none;border:1px solid #17171747;position:absolute;inset:12px}.ski-page-header{z-index:15;letter-spacing:.17em;text-transform:uppercase;justify-content:space-between;font-size:clamp(.72rem,.9vw,.84rem);font-weight:800;display:flex;position:absolute;top:clamp(24px,4vw,46px);left:clamp(24px,4vw,48px);right:clamp(24px,4vw,48px)}.ski-page-header a,.ski-page-footer a{color:var(--ink);-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-underline-offset:5px}.ski-page-header p{margin:0}.ski-story{grid-template-columns:minmax(220px,.72fr) minmax(390px,1.5fr) minmax(210px,.62fr);align-items:center;gap:clamp(24px,3.5vw,64px);width:min(1480px,100%);min-height:100svh;margin:auto;padding:clamp(104px,12vh,132px) clamp(32px,5vw,82px) 92px;display:grid}.ski-story-copy{z-index:7;align-self:start;padding-top:clamp(30px,9vh,92px);position:relative}.ski-story-kicker{color:var(--red);letter-spacing:.2em;text-transform:uppercase;margin:0 0 16px;font-size:.62rem;font-weight:800}.ski-story-copy h1{letter-spacing:-.04em;max-width:7ch;margin:0;font-size:clamp(3rem,5.4vw,6.2rem);line-height:.86}.ski-story-date{letter-spacing:.2em;text-transform:uppercase;margin:20px 0 0;font-size:.66rem;font-weight:800}.ski-story-intro{max-width:29rem;font:italic clamp(1rem, 1.5vw, 1.22rem)/1.55 var(--font-serif);margin:24px 0 0}.ski-motion-note{letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:10px;margin-top:24px;font-size:.58rem;font-weight:800;display:inline-flex}.ski-motion-note:before{content:"";border-top:1px dashed var(--ink);width:28px}.ski-scene-frame{z-index:5;background:var(--paper);border:1px solid #17171761;justify-self:center;width:min(100%,650px,56.3svh - 101.34px);padding:clamp(8px,1vw,13px);position:relative;transform:rotate(-.35deg);box-shadow:13px 17px #17171729,0 24px 70px #1717172e}.ski-scene{aspect-ratio:941/1672;border:1px solid var(--ink);background:#9ed7f5;position:relative;overflow:hidden}.ski-scene-background{object-fit:cover}.ski-scene-label{letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;gap:18px;margin:10px 2px 0;font-size:.55rem;font-weight:800;display:flex}.ski-descent{z-index:3;position:absolute;inset:0;overflow:hidden}.skiing-character{z-index:3;aspect-ratio:2/3;transform-origin:50%;filter:drop-shadow(2px 5px 2px #20456038);will-change:top, left, transform;width:clamp(130px,21vw,290px);position:absolute;translate:-50% -50%}.skiing-character img{object-fit:contain}.ski-snow-spray{z-index:-1;aspect-ratio:2;opacity:.7;filter:blur(2px);background:radial-gradient(#fffffff2,#d6effc66 48%,#0000 72%);border-radius:50%;width:45%;position:absolute;bottom:4%;right:22%}.ski-snowfall{opacity:.42;pointer-events:none;background-image:radial-gradient(circle,#fff 0 1.5px,#0000 1.8px),radial-gradient(circle,#fff 0 1px,#0000 1.3px);background-position:0 0,17px 23px;background-size:39px 44px,31px 36px;position:absolute;inset:0}.ski-reference-card{z-index:7;width:min(100%,265px);color:var(--ink);background:var(--paper);border:1px solid #1717175c;place-self:end center;margin:0;padding:10px 10px 14px;position:relative;transform:rotate(2deg);box-shadow:9px 11px #17171724}.ski-reference-photo{aspect-ratio:3/4;border:1px solid var(--ink);background:#c7e3f4;position:relative;overflow:hidden}.ski-reference-photo img{object-fit:cover;object-position:center 50%}.ski-reference-card figcaption{justify-content:space-between;align-items:end;gap:14px;padding:11px 2px 0;display:flex}.ski-reference-card figcaption span{color:var(--red);letter-spacing:.15em;text-transform:uppercase;font-size:.52rem;font-weight:800}.ski-reference-card figcaption strong{font:500 1.25rem/1 var(--font-serif)}.ski-page-footer{z-index:15;letter-spacing:.15em;text-transform:uppercase;justify-content:space-between;font-size:.58rem;font-weight:800;display:flex;position:absolute;bottom:clamp(27px,4vh,42px);left:clamp(28px,4vw,54px);right:clamp(28px,4vw,54px)}.eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--rose);margin:0 0 12px;font-size:.72rem;font-weight:700}.rsvp-card{border:1px solid var(--line);background:#fffdf8f0;max-width:680px;margin:clamp(70px,10vw,130px) auto 0;padding:clamp(28px,6vw,58px);box-shadow:0 22px 70px #26362e17}.card-heading{text-align:center;border-bottom:1px solid var(--line);margin-bottom:32px;padding-bottom:32px}.card-heading h2{letter-spacing:.05em;margin:0;font-size:3.5rem}.card-heading p:last-child{color:#69756d;line-height:1.6}form{gap:24px;display:grid}label,legend{letter-spacing:.08em;font-size:.78rem;font-weight:700}label{gap:9px;display:grid}input,textarea{width:100%;color:var(--ink);font:1rem/1.4 var(--font-sans), sans-serif;background:#fff;border:1px solid #c9c9bf;border-radius:0;padding:14px 15px}textarea{resize:vertical}input:focus,textarea:focus{outline-offset:2px;border-color:var(--sage);outline:2px solid #8a9b8273}fieldset{border:0;margin:0;padding:0}legend{margin-bottom:12px}.choice-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.choice{border:1px solid var(--line);cursor:pointer;letter-spacing:0;align-items:center;gap:9px;min-height:54px;padding:12px;display:flex}.choice.selected{border-color:var(--sage);background:#eef1eb}.choice input{width:auto;accent-color:var(--ink)}.optional{color:#858b86;letter-spacing:.03em;font-size:.68rem;font-weight:500}button{border:1px solid var(--ink);background:var(--ink);color:#fff;min-height:56px;font:700 .75rem var(--font-sans), sans-serif;letter-spacing:.18em;text-transform:uppercase;cursor:pointer}button:hover{background:#364a3f}button:disabled{cursor:wait;opacity:.7}.error{color:#8b3434;background:#fff0ee;margin:0;padding:13px;font-size:.9rem;line-height:1.5}.confirmation{text-align:center;padding:24px 0 8px}.confirmation-mark{border:1px solid var(--sage);width:52px;height:52px;color:var(--sage);border-radius:50%;place-items:center;margin:auto;display:grid}.confirmation h3{margin:20px 0 8px;font-size:2.6rem}.confirmation p{line-height:1.7}.confirmation span{color:var(--rose)}.muted{color:#727b75;font-size:.88rem}footer{text-align:center;color:#69756d;font-family:var(--font-serif), serif;margin:38px 0 36px;font-size:1.2rem;font-style:italic}@media (max-width:1050px){.dome-page{overflow:auto}.dome-story{grid-template-columns:minmax(220px,.72fr) minmax(390px,1.3fr);align-items:start;min-height:100svh;padding:110px 42px}.dome-story-copy{grid-area:1/1;padding-top:42px}.dome-story-copy h1{font-size:clamp(3rem,7vw,5.1rem)}.dome-scene-frame{grid-area:1/2/span 2}.dome-reference-card{grid-area:2/1;align-self:end;width:min(220px,100%)}.ski-page{overflow:auto}.ski-story{grid-template-columns:minmax(220px,.72fr) minmax(390px,1.3fr);align-items:start;min-height:100svh;padding:110px 42px}.ski-story-copy{grid-area:1/1;padding-top:42px}.ski-story-copy h1{font-size:clamp(3rem,7vw,5.1rem)}.ski-scene-frame{grid-area:1/2/span 2}.ski-reference-card{grid-area:2/1;align-self:end;width:min(220px,100%)}}@media (max-width:720px){.dome-page{overflow:visible}.dome-page:after{inset:7px}.dome-page-header{top:22px;left:20px;right:20px}.dome-story{grid-template-columns:1fr;gap:38px;min-height:auto;padding:100px 20px 52px}.dome-story-copy{grid-area:auto/1;padding-top:18px}.dome-story-copy h1{max-width:8.3ch;font-size:clamp(3.2rem,15vw,5.2rem)}.dome-story-intro{margin-top:22px}.dome-scene-frame{grid-area:auto/1;width:min(100%,560px)}.dome-reference-card{grid-area:auto/1;justify-self:end;width:min(78vw,290px)}.dome-page-footer{gap:24px;padding:0 24px 34px;position:relative;bottom:auto;left:auto;right:auto}.ski-page{overflow:visible}.ski-page:after{inset:7px}.ski-page-header{top:22px;left:20px;right:20px}.ski-story{grid-template-columns:1fr;gap:38px;min-height:auto;padding:100px 20px 52px}.ski-story-copy{grid-area:auto/1;padding-top:18px}.ski-story-copy h1{max-width:8ch;font-size:clamp(3.2rem,15vw,5.2rem)}.ski-scene-frame{grid-area:auto/1;width:min(100%,560px)}.ski-reference-card{grid-area:auto/1;justify-self:end;width:min(78vw,290px)}.ski-page-footer{gap:24px;padding:0 24px 34px;position:relative;bottom:auto;left:auto;right:auto}}@media (max-width:560px){.book-transition-overlay{perspective:1100px}.book-transition-panel{border-block-width:7px}.book-transition-panel-left{border-left-width:7px}.book-transition-panel-right{border-right-width:7px}.paper-hero{min-height:850px;padding:20px}.paper-hero:after{inset:7px}.issue-line{padding:2px 2px 0}.kicker{margin-top:62px}.paper-hero h1{font-size:17.5vw;line-height:.78}.name-rebecca{margin-left:0}.name-josue{margin-right:0}.map-mechanism{width:calc(100% + 24px);margin-top:-4rem;margin-left:-12px}.california-map{height:285px}.destination-north{left:1%}.destination-south{right:0}.imperial-label{right:2%}.flight-mechanism{width:calc(100% + 24px);margin-top:0;margin-left:-12px}.flight-stage{height:300px}.globe-window{inset-inline:-2%}.place-sketch{width:105px}.tokyo-sketch{top:2%;left:1%}.singapore-sketch{bottom:9%;right:1%}.flight-label{left:12%;right:12%}.invitation-actions{flex-direction:column;align-items:center;gap:16px}.flight-page:after{inset:7px}.flight-page-header{top:22px;left:20px;right:20px}.flight-page-header p{display:none}.flight-page-title{top:65px}.flight-page-title h1{font-size:clamp(1.45rem,7vw,2.2rem)}.flight-page .place-sketch{width:112px}.flight-page .tokyo-sketch{top:16%;left:2%}.flight-page .singapore-sketch{bottom:19%;right:2%}.flight-page .flight-label{bottom:14%;left:8%;right:8%}.arrival-paper-card{width:84vw;padding:8px}.arrival-paper-card figcaption{gap:2px 10px;padding:10px 2px 2px}.arrival-paper-card figcaption strong{font-size:1.45rem}.arrival-paper-card figcaption small{font-size:.5rem}.dome-page-header p{display:none}.dome-motion-note{margin-top:20px}.dome-scene-label{font-size:.48rem}.dome-page-footer{align-items:flex-end;font-size:.5rem}.dome-page-footer a{max-width:14ch}.dome-page-footer a:last-child{text-align:right}.ski-page-header p{display:none}.ski-motion-note{margin-top:20px}.ski-scene-label{font-size:.48rem}.skiing-character{width:35vw}.ski-page-footer{align-items:flex-end;font-size:.5rem}.ski-page-footer a{max-width:14ch}.ski-page-footer a:last-child{text-align:right}.invitation-note{margin-top:-2px;padding-inline:24px}.choice-row{grid-template-columns:1fr}.rsvp-card{padding-inline:22px}}@media (max-height:700px) and (min-width:561px){.paper-hero{min-height:820px}.flight-mechanism{margin-top:24px}}@media (prefers-reduced-motion:no-preference){.paper-hero .name{animation:.8s cubic-bezier(.2,.8,.2,1) .3s both title-pop}.name-josue{animation-delay:.48s!important}.map-mechanism{animation:.9s cubic-bezier(.2,.8,.2,1) .6s both map-unfold}.paper-car.is-driving{animation:2.2s cubic-bezier(.55,.05,.3,1) both car-trip}.paper-car.is-driving .wheel{animation:.35s linear infinite wheel-turn}.car-pull-tab b{animation:1.8s ease-in-out infinite tab-pull}.flight-stage:not(.is-flying) .paper-plane{animation:3.2s ease-in-out infinite plane-idle}.flight-stage.is-flying .globe-world{will-change:transform;animation:4.8s cubic-bezier(.4,0,.2,1) both globe-flight}.flight-stage.is-flying .tokyo-sketch{animation:4.8s cubic-bezier(.4,0,.2,1) both depart-fade}.flight-stage.is-flying .singapore-sketch{animation:4.8s cubic-bezier(.4,0,.2,1) both arrive-fade}.flight-page .flight-stage.is-flying .globe-world{animation-name:globe-flight-full}.flight-pull-tab b{animation:1.8s ease-in-out infinite tab-pull}.rsvp-card{animation:.65s ease-out both rise}.dome-scene-frame{animation:.84s cubic-bezier(.2,.8,.2,1) 80ms both dome-scene-arrive}.dome-reference-card{animation:.66s cubic-bezier(.2,.8,.2,1) .34s both dome-reference-arrive}.dinosaur-neck-tall{animation:5.8s ease-in-out -.8s infinite dinosaur-tall-sway}.dinosaur-neck-small{animation:4.7s ease-in-out -2.1s infinite dinosaur-small-sway}.dome-scene:after{animation:8s ease-in-out -3s infinite dome-light-sweep}.ski-scene-frame{animation:.84s cubic-bezier(.2,.8,.2,1) 80ms both ski-scene-arrive}.ski-reference-card{animation:.66s cubic-bezier(.2,.8,.2,1) .34s both ski-reference-arrive}.ski-snowfall{animation:12s linear infinite ski-snowfall}.ski-snow-spray{animation:1.2s ease-in-out infinite ski-snow-spray}@keyframes title-pop{0%{opacity:0;transform:translateY(40px)rotateX(70deg)}}@keyframes map-unfold{0%{opacity:0;transform-origin:bottom;transform:rotateX(65deg)scaleY(.55)}}@keyframes car-trip{0%{top:19%;left:31%;transform:rotate(12deg)}44%{top:52%;left:46%;transform:rotate(55deg)}70%{top:63%;left:52%;transform:rotate(31deg)}to{top:79%;left:63%;transform:rotate(31deg)}}@keyframes wheel-turn{to{transform:rotate(360deg)}}@keyframes globe-flight{0%{transform:translate(-22%,14%)scale(1.85)}7%{transform:translate(-23%,15%)scale(1.9)}18%{transform:translate(-18%,10%)scale(1.55)}36%{transform:translate(0)scale(.82)}56%{transform:translate(0)scale(.8)}68%{transform:translate(0)scale(.84)}82%{transform:translate(-7%,-14%)scale(1.45)}92%{transform:translate(-11%,-21%)scale(2)}to{transform:translate(-10%,-20%)scale(1.9)}}@keyframes globe-flight-full{0%{transform:translate(-32%,18%)scale(3.1)}7%{transform:translate(-33%,19%)scale(3.18)}18%{transform:translate(-27%,13%)scale(2.5)}36%{transform:translate(0)scale(1.25)}56%{transform:translate(0)scale(1.2)}68%{transform:translate(0)scale(1.25)}82%{transform:translate(-8%,-18%)scale(2)}92%{transform:translate(-16%,-33%)scale(3.35)}to{transform:translate(-15%,-32%)scale(3.2)}}@keyframes plane-idle{50%{transform:translate(-50%,calc(-50% - 3px))}}@keyframes depart-fade{0%,14%{opacity:1;transform:translate(0)rotate(-3deg)scale(1)}42%,to{opacity:.3;transform:translate(-8px,-4px)rotate(-4deg)scale(.96)}}@keyframes arrive-fade{0%,72%{opacity:.28;transform:translate(10px,6px)rotate(3deg)scale(.94)}92%{opacity:1;transform:translate(-2px,-1px)rotate(2deg)scale(1.04)}to{opacity:1;transform:translate(0)rotate(3deg)scale(1)}}@keyframes tab-pull{50%{transform:translate(4px)}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@keyframes dome-scene-arrive{0%{opacity:0;transform:translateY(28px)rotate(-1.4deg)scale(.97)}to{opacity:1;transform:translateY(0)rotate(.45deg)scale(1)}}@keyframes dome-reference-arrive{0%{opacity:0;transform:translate(20px,18px)rotate(2deg)scale(.94)}to{opacity:1;transform:translate(0)rotate(-2.2deg)scale(1)}}@keyframes dinosaur-tall-sway{0%,to{transform:rotate(-1.1deg)translateY(0)}38%{transform:rotate(1.65deg)translate(-.2%,-.25%)}68%{transform:rotate(.35deg)translateY(-.08%)}}@keyframes dinosaur-small-sway{0%,to{transform:rotate(1.35deg)translate(0)}44%{transform:rotate(-1.8deg)translate(-.3%,-.2%)}72%{transform:rotate(-.25deg)translate(-.05%,-.08%)}}@keyframes dome-light-sweep{0%,22%{opacity:0;transform:translate(-30%)}42%{opacity:.52}62%,to{opacity:0;transform:translate(30%)}}@keyframes ski-scene-arrive{0%{opacity:0;transform:translateY(28px)rotate(1.2deg)scale(.97)}to{opacity:1;transform:translateY(0)rotate(-.35deg)scale(1)}}@keyframes ski-reference-arrive{0%{opacity:0;transform:translate(20px,18px)rotate(-2deg)scale(.94)}to{opacity:1;transform:translate(0)rotate(2deg)scale(1)}}@keyframes ski-snowfall{to{background-position:39px 88px,-14px 95px}}@keyframes ski-snow-spray{50%{opacity:.4;transform:scale(1.25)translate(8%)}}@keyframes arrival-creases-fade{0%,22%{opacity:.82;transform:scale(1.45)rotate(-5deg)}54%{opacity:.5;transform:scale(1.14)rotate(2deg)}82%{opacity:.2;transform:scale(1.03)rotate(-.5deg)}to{opacity:0;transform:scale(1)}}}@media (prefers-reduced-motion:reduce){.book-transition-content{opacity:1!important;transform:none!important}.book-transition-overlay{display:none}.flight-route-layer,.paper-plane-track{transition:none}.arrival-paper-card:after{display:none}.dome-scene-frame,.dome-reference-card,.dinosaur-neck,.dome-scene:after,.ski-scene-frame,.ski-reference-card,.ski-snowfall,.ski-snow-spray{animation:none!important}}
