.adventure .hero .eyebrow{letter-spacing:.04em}.adventure .age{border-radius:8px;padding:6px 18px;transform:rotate(-3deg)}.adventure .hero-disc{border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 38px,#98734b16 39px 40px);border:1px solid #98734b30}.adventure .postcard{border-radius:5px;transform:none;border-left:6px solid #a6b78d}.adventure .postcard:before{display:none}.adventure .postmark{border-radius:6px;font-size:16px;border:2px solid #947252;padding:10px;width:auto;height:auto;right:24px;top:30px}.adventure .hero-copy{padding:0}.adventure .postcard .eyebrow{padding-right:110px}.adventure .schedule-row:before{border-radius:4px;transform:rotate(-5deg)}.adventure .rsvp summary{border-radius:12px}.adventure .rsvp{border-radius:0}.adventure .subtitle{font-weight:400}.adventure .hero-caption{letter-spacing:.04em}.camp .hero-disc{border-radius:150px 150px 18px 18px;background:#f5ead4;border:1px solid #b2bc9f}.camp .hero{grid-template-columns:1.05fr 1fr}.camp .hero-copy{text-align:left}.camp .intro{border-radius:0}.camp .venue{background:#f4f5e9}.camp .art-stage{max-width:600px}.sky .hero-disc{border-style:dashed;background:transparent;inset:10% -3% 4%}.sky .postcard{border:0;border-left:3px dashed #9a734c;border-radius:0;padding-block:30px}.sky .intro{border-radius:0}.venue-trail{border:2px solid #8a7152;border-radius:50%;width:190px;height:190px;transform:rotate(-15deg);background:repeating-conic-gradient(from 0deg,#a48b6335 0deg 1deg,transparent 1deg 30deg)}.venue-trail:before{inset:28px;background:#a27344;clip-path:polygon(50% 0,65% 50%,50% 100%,35% 50%)}.venue-trail:after{inset:28px;background:#567047;clip-path:polygon(50% 0,65% 50%,50% 50%,35% 50%)}.venue-trail span,.venue-trail i{display:none}.venue-sky{width:240px;height:160px;border:1px solid #8a7152;border-radius:8px;transform:rotate(-5deg);background:linear-gradient(90deg,#e3d0a8 33%,#f1e1bc 33% 66%,#e3d0a8 66%)}.venue-sky:before{inset:28px 30px;clip-path:none;background:none;border:2px dashed #806244;border-radius:40% 10% 60% 20%;transform:rotate(-10deg)}.venue-sky:after{inset:auto;right:33px;top:36px;width:18px;height:18px;border-radius:50%;clip-path:none;background:#567047}.venue-sky span,.venue-sky i{display:none}.older-link{display:inline-block;margin-top:36px;font-size:18px}.collection .cover{border-radius:24px}.collection .cover h2{font-size:44px}.collection .cover span{font-size:16px}
@media(max-width:760px){.camp .hero{grid-template-columns:1fr}.camp .hero-copy{text-align:center}.adventure .postcard .eyebrow{padding-right:0}.adventure .hero .art-stage{width:270px;max-width:90%}.sky .hero .art-stage{width:210px}.adventure .postcard{padding:32px 24px}.venue-trail{width:145px;height:145px}.venue-sky{width:190px;height:130px}.adventure .hero-caption{letter-spacing:0}.adventure .hero h1{font-size:clamp(52px,15vw,76px)}}
/* A more prominent age label in «По следам приключений». */
.trail .hero .age{font-size:clamp(25px,2.8vw,34px);line-height:1.35;padding:10px 24px}
@media(max-width:760px){.trail .hero .age{font-size:26px;padding:9px 22px}}
/* Expedition ink stamp, kept clear of the invitation copy. */
.trail .postcard .postmark{display:grid;place-items:center;width:100px;height:100px;right:24px;top:22px;padding:14px;border:3px double #805735;border-radius:49% 51% 50% 48%;color:#805735;background:transparent;transform:rotate(12deg);font:700 16px/1.25 Arial,sans-serif;text-align:center;text-transform:uppercase;letter-spacing:.035em;box-shadow:inset 0 0 0 3px #fffaf1,inset 0 0 0 4px #805735}
.trail .postcard .postmark:before{content:'';position:absolute;inset:8px;border:1px dashed #805735;border-radius:50%;pointer-events:none}
.trail .postcard .postmark:after{content:'';position:absolute;inset:0;border-radius:50%;pointer-events:none;background:repeating-linear-gradient(113deg,transparent 0 13px,#fffaf155 13px 14px,transparent 14px 23px)}
.trail .postcard .eyebrow{min-height:60px;padding-right:100px}
@media(max-width:760px){.trail .postcard .postmark{position:relative;top:auto;right:auto;width:92px;height:92px;margin:0 0 24px auto}.trail .postcard .eyebrow{min-height:0;padding-right:0}}
.trail .real-compass{position:relative;width:min(100%,290px);aspect-ratio:1;margin:auto;isolation:isolate}
.real-compass .compass-case{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 8px #49371c22)}
.real-compass .compass-needle{position:absolute;width:57%;height:57%;left:21.5%;top:21.5%;overflow:visible;transform-origin:50% 50%;transform:rotate(-22deg);filter:drop-shadow(2px 3px 1.5px #34230f55);animation:compass-settle 9s linear infinite;animation-play-state:paused}
.real-compass.is-active .compass-needle{animation-play-state:running}
@keyframes compass-settle{0%,14%,100%{transform:rotate(-22deg)}16%{transform:rotate(-13deg)}18%{transform:rotate(-29deg)}20%{transform:rotate(-17deg)}23%{transform:rotate(-25deg)}27%{transform:rotate(-20deg)}32%,52%{transform:rotate(-22deg)}54%{transform:rotate(-25deg)}56%{transform:rotate(-19deg)}59%{transform:rotate(-23.5deg)}63%{transform:rotate(-21deg)}68%,83%{transform:rotate(-22deg)}85%{transform:rotate(-20deg)}87%{transform:rotate(-23deg)}90%{transform:rotate(-21.5deg)}94%{transform:rotate(-22deg)}}
@media(max-width:760px){.trail .real-compass{width:210px}}
@media(prefers-reduced-motion:reduce){.real-compass .compass-needle{animation:none!important;transform:rotate(-22deg)}}
/* Align the pivot with the photographed dial, below the hanging loop. */
.real-compass .compass-needle{left:21.35%;top:24.85%}
/* Useful packing illustration for the expedition details. */
.trail #birthday-details{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,1.3fr);align-items:center;gap:7%;text-align:left;background:#efe1cd}
.trail #birthday-details .packing-art{width:100%;max-width:340px;margin:auto}
.trail #birthday-details .packing-art img{display:block;width:100%;height:auto;max-height:350px;object-fit:contain}
.trail #birthday-details .details-copy{width:100%;max-width:680px}
.trail #birthday-details h2{max-width:560px}
@media(max-width:760px){.trail #birthday-details{grid-template-columns:1fr;gap:28px}.trail #birthday-details .packing-art{max-width:230px}.trail #birthday-details h2{text-align:center}.trail #birthday-details{padding-block:48px}}
@media(min-width:761px) and (max-width:1050px){.trail.editing #birthday-details{grid-template-columns:1fr}.trail.editing #birthday-details .packing-art{max-width:240px}}
/* A birthday farewell, distinct from the expedition cover artwork. */
.trail .closing{padding-top:45px;padding-bottom:64px;background:#fbf3e6}
.trail .closing-cake{width:min(340px,80%);margin:0 auto 26px}
.trail .closing-cake img{display:block;width:100%;height:auto;max-height:340px;object-fit:contain}
.trail .closing h2{max-width:760px}
@media(max-width:760px){.trail .closing-cake{width:240px;max-width:85%;margin-bottom:22px}.trail .closing{padding-block:38px 50px}}
/* Leave breathing room between the stamp lettering and its inner ring. */
.trail .postcard .postmark{width:124px;height:124px;padding:20px;letter-spacing:0}
.trail .postcard .eyebrow{min-height:78px;padding-right:128px}
@media(max-width:760px){.trail .postcard .postmark{width:120px;height:120px}.trail .postcard .eyebrow{min-height:0;padding-right:0}}
.trail.editing .venue-photo-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.venue-photo-controls button{display:inline-flex;align-items:center;gap:10px;font-size:16px}
.trail #venue.has-venue-photo{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:6%}
.trail #venue.has-venue-photo #venue-photo{grid-column:1;grid-row:1;width:100%;margin:0}
.trail #venue.has-venue-photo #venue-photo img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain;border-radius:18px}
.trail #venue.has-venue-photo .venue-copy{grid-column:2;grid-row:1}
@media(max-width:760px){.trail #venue.has-venue-photo{grid-template-columns:1fr;gap:28px}.trail #venue.has-venue-photo #venue-photo,.trail #venue.has-venue-photo .venue-copy{grid-column:1;grid-row:auto}.trail #venue.has-venue-photo #venue-photo{grid-row:1}.trail #venue.has-venue-photo .venue-copy{grid-row:2}.trail.editing .venue-photo-controls{justify-content:center}}
@media(min-width:761px) and (max-width:1050px){.trail.editing #venue.has-venue-photo{grid-template-columns:1fr}.trail.editing #venue.has-venue-photo #venue-photo{grid-column:1;grid-row:1}.trail.editing #venue.has-venue-photo .venue-copy{grid-column:1;grid-row:2}}
/* Keep packing title and copy on the same reading edge. */
body.trail #birthday-details .details-copy h2,
body.trail #birthday-details .details-copy p.invitation-prose{max-width:none;text-align:start!important;text-align-last:start!important;margin-inline:0}
/* Centre the lettering independently of the stamp's grid and padding. */
.trail .postcard .postmark>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:max-content;margin:0;padding:0;text-align:center;line-height:1.25}

/* A more prominent birthday age badge, shared by local and live Safari. */
.trail .hero .hero-copy .age{font-size:clamp(36px,4vw,44px);line-height:1.25;padding:12px 28px}
@media(max-width:760px){.trail .hero .hero-copy .age{font-size:34px;padding:10px 26px}}
