/* No repeated three-wave rules or ornamental line-and-dot bands. */
.atlas-coastline,.atlas-map-note,.route-water,.note-tide,.sea-line{display:none}
.coast-atlas{padding-bottom:80px}
.gift-stationery{isolation:isolate}
.gift-sand{position:absolute;left:-20%;bottom:-12%;width:128%;height:76%;object-fit:cover;object-position:center bottom;z-index:-1;opacity:.75;pointer-events:none;transform:rotate(-3deg);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 78%,transparent 98%)}
.note-shell-small{position:absolute;left:-2%;bottom:2%;width:75px;height:75px;object-fit:contain;transform:rotate(-28deg);opacity:.65;pointer-events:none}
.note-shell{right:-5%;bottom:-1%;width:110px;height:110px}
.note-object{z-index:1}
.note-shell,.note-shell-small{z-index:2}
.question-beach{position:relative;width:min(100%,350px);height:175px;margin:25px 0;isolation:isolate;overflow:hidden}
.question-sand{position:absolute;left:-32%;bottom:-12px;width:165%;height:150px;object-fit:cover;object-position:center bottom;opacity:.4;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}
.question-steps{position:absolute;left:12%;right:12%;bottom:7px;width:76%;height:85px;overflow:visible;opacity:.7}
.question-steps path{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.question-bird-walk{position:absolute;left:12%;bottom:3px;width:105px;height:105px;animation:question-bird-walk 14s ease-in-out infinite;animation-play-state:paused}
.question-bird{height:100%;object-fit:contain;object-position:center bottom;transform-origin:50% 84%;animation:question-bird-step .65s ease-in-out infinite alternate;animation-play-state:paused}
.question-beach.is-walking .question-bird-walk,.question-beach.is-walking .question-bird{animation-play-state:running}
@keyframes question-bird-walk{0%,10%,100%{transform:translateX(0) scaleX(1)}42%,50%{transform:translateX(115px) scaleX(1)}51%,57%{transform:translateX(115px) scaleX(-1)}90%,99%{transform:translateX(0) scaleX(-1)}}
@keyframes question-bird-step{from{translate:0 0;rotate:-1deg}to{translate:0 -2px;rotate:1deg}}
.calendar-fan{height:250px;margin-bottom:0}
.calendar-card{border:1px solid #284d650c;cursor:pointer;text-align:center;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .4s,background .3s;height:205px;padding:15px 8px;transform:rotate(var(--base-turn,0deg));-webkit-tap-highlight-color:transparent}
.calendar-card>span{pointer-events:none}
.calendar-card>strong.calendar-number{position:relative;display:grid;place-items:center;flex-shrink:0;width:90px;height:90px;margin:5px 0 0;font:74px/1 var(--serif);font-variant-numeric:lining-nums;letter-spacing:-.06em}
.calendar-number>span{display:block;translate:-2px 0}
.calendar-card .calendar-number:after{content:"";position:absolute;inset:2px;border:1px solid transparent;border-radius:50%;transition:border-color .3s}
.calendar-card[aria-pressed=true] .calendar-number:after{border-color:#7494a5}
.calendar-card>em{font-size:19px;margin-top:1px;line-height:1.2}
.calendar-card>small{margin-top:12px}
.calendar-card:before{display:none}
.calendar-card[aria-pressed=true]{z-index:5;transform:rotate(0deg) translateY(-9px);box-shadow:0 2px 3px #284d6510,0 17px 28px -15px #284d6560}
.calendar-card:hover,.calendar-card:focus-visible{z-index:6;transform:rotate(0deg) translateY(-15px)}
.calendar-card:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.calendar-instruction{font:20px/1.25 'Caveat',cursive!important;margin:20px 0 0}
.calendar-event{border-top:1px solid var(--line);padding-top:16px;max-width:430px;min-height:112px}
.calendar-event>p:first-child{font-size:8px!important;letter-spacing:.1em;line-height:1.7}
.calendar-event>p:nth-child(2){font-size:11px!important;line-height:1.7;margin-top:7px}
.calendar-plan-link{display:inline-flex;gap:20px;font-size:10px;margin-top:10px;border-bottom:1px solid var(--line);padding-bottom:4px}
.weekend-kit .kit-intro>#whole-calendar{margin-top:18px}
.packing-paper{align-self:center}
.palette-card[data-wedding-color="0"] .palette-field{background:#f6e8c8;box-shadow:inset 0 0 0 1px #cfba8c35}
.palette-card{touch-action:manipulation}
.story-trail{opacity:.55}
.story-trail .footprint-guide{display:none}
.story-trail .footprint-marks path{fill:none;stroke:#547e91;stroke-width:1.6;stroke-dasharray:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:none}
@media(min-width:1500px){.calendar-card{height:210px}.calendar-fan{height:260px}}
@media(max-width:800px){
 .gift-note{gap:30px}.gift-sand{left:-17%;bottom:0;width:128%;height:72%}.note-shell-small{left:2%;width:62px;height:62px;bottom:1%}.note-shell{right:0;bottom:0;width:85px;height:85px}
 .question-intro{padding-right:0;min-height:0}.questions .question-intro>p:last-child{max-width:310px}.question-beach{position:absolute;right:-25px;top:10px;width:155px;height:150px;margin:0}.question-sand{height:110px;opacity:.3}.question-bird-walk{width:75px;height:75px;left:6%;bottom:17px}.question-steps{width:90%;left:5%;height:55px;bottom:8px}.question-intro h2{max-width:210px}.questions .question-intro>p:last-child{max-width:240px;padding-top:0}.question-intro{padding-bottom:5px}
 @keyframes question-bird-walk{0%,10%,100%{transform:translateX(0) scaleX(1)}42%,50%{transform:translateX(55px) scaleX(1)}51%,57%{transform:translateX(55px) scaleX(-1)}90%,99%{transform:translateX(0) scaleX(-1)}}
 .calendar-fan{height:235px;max-width:450px;margin-top:25px}.calendar-card{height:195px;padding:14px 7px}.calendar-card>strong.calendar-number{width:83px;height:83px;font-size:69px}.calendar-card>em{font-size:18px}.calendar-event{min-height:105px}.calendar-instruction{font-size:21px!important}.calendar-card[aria-pressed=true]{transform:rotate(0deg) translateY(-6px)}
 .story-trail{opacity:.37}
}
@media(max-width:480px){.calendar-card{height:188px}.calendar-card>strong.calendar-number{width:78px;height:78px;font-size:65px}.calendar-card>em{font-size:16px}.calendar-number>span{translate:-2px 0}.calendar-card>small{font-size:6px;margin-top:11px}.calendar-fan{height:225px}.question-beach{right:-18px;width:140px}.question-intro h2{max-width:200px}.questions .question-intro>p:last-child{max-width:230px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.question-bird-walk,.question-bird{animation:none!important;transform:none!important;translate:none!important;rotate:none!important}.calendar-card,.calendar-number:after{transition:none}.calendar-card:hover,.calendar-card:focus-visible{transform:rotate(var(--base-turn,0deg))}}
