:root{--ink:#17352d;--forest:#214f3f;--moss:#59765a;--cream:#f5f0e4;--paper:#fffdf7;--gold:#d99a3e;--mist:#dce7df;--shadow:0 24px 70px rgba(23,53,45,0.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(circle at 15% 0,rgba(217,154,62,.13),transparent 32rem),var(--cream);font-family:Arial,Helvetica,sans-serif}button{font:inherit}main{min-height:100vh;padding:64px clamp(20px,5vw,88px) 56px}.hero{max-width:850px;margin-bottom:48px}.eyebrow,.sectionLabel{color:var(--moss);font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{max-width:760px;margin-bottom:18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.4rem,9vw,7.6rem);font-weight:500;letter-spacing:-.055em;line-height:.88}.intro{max-width:640px;margin-bottom:0;color:#53665f;font-size:clamp(1rem,2vw,1.2rem);line-height:1.7}.mapSection{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(330px,.65fr);grid-gap:24px;gap:24px;max-width:1500px;align-items:start}.dayCard,.mapCard{overflow:hidden;border:1px solid rgba(23,53,45,.12);border-radius:28px;background:var(--paper);box-shadow:var(--shadow)}.mapCard{position:-webkit-sticky;position:sticky;top:24px;order:2}.dayCard{order:1}.mapHeader{display:flex;align-items:flex-start;flex-direction:column;justify-content:flex-start;gap:24px;padding:24px 24px 18px}.mapHeader h2{margin:7px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:500}.mapHeader p{margin-bottom:4px;color:#718078;font-size:.86rem}.map{position:relative;min-height:720px;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.5),transparent),#dfe8d5;cursor:pointer}.map:after,.map:before,.terrain{position:absolute;content:"";border-radius:50%;background:rgba(85,126,78,.19);filter:blur(1px);transform:rotate(-20deg)}.map:before{inset:-20% 48% 28% -25%}.map:after{inset:36% -20% -30% 42%}.terrainOne{inset:2% 53% 55% -5%}.terrainTwo{inset:40% 15% -5% 55%;background:rgba(139,151,91,.17)}.water{position:absolute;width:7%;border-radius:50%;background:#a7c9c7;opacity:.75;transform:rotate(27deg)}.waterOne{height:35%;left:57%;top:52%}.waterTwo{width:4%;height:14%;left:24%;top:10%}.routeLine{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.routeBase{stroke:var(--forest);stroke-dasharray:1.1 1.4;stroke-width:.75}.routeBase,.routeSegmentHighlight,.routeSegmentHit{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.routeSegmentHighlight{pointer-events:none;stroke:transparent;stroke-width:5;transition:stroke .16s ease}.routeSegmentHit{stroke:rgba(0,0,0,.001);stroke-width:24;cursor:pointer;pointer-events:stroke}.routeSegmentGroup.active .routeSegmentHighlight,.routeSegmentGroup:focus-visible .routeSegmentHighlight,.routeSegmentGroup:hover .routeSegmentHighlight{stroke:var(--gold)}.routeSegmentGroup:focus-visible{outline:none}.startMarker{position:absolute;z-index:2;display:flex;align-items:center;gap:8px;width:max-content;padding:0;border:0;color:inherit;background:transparent;cursor:pointer;flex-direction:row-reverse;transform:translate(calc(-100% + 8px),-50%)}.startMarker span{width:17px;height:17px;border:4px solid var(--paper);border-radius:50%;background:var(--gold);box-shadow:0 4px 12px rgba(23,53,45,.28)}.startMarker strong{padding:6px 10px;border-radius:9px;color:var(--ink);background:rgba(255,253,247,.92);box-shadow:0 3px 10px rgba(23,53,45,.08);font-size:.78rem}.startMarker.active span,.startMarker:focus-visible span,.startMarker:hover span{background:var(--forest);transform:scale(1.2)}.startMarker:focus-visible{border-radius:10px;outline:3px solid var(--ink);outline-offset:4px}.marker{position:absolute;z-index:2;display:grid;width:42px;height:42px;place-items:center;padding:0;border:3px solid var(--paper);border-radius:50% 50% 50% 10%;color:white;background:var(--forest);box-shadow:0 7px 20px rgba(23,53,45,.3);cursor:pointer;transform:translate(-50%,-50%) rotate(-45deg);transition:transform .16s ease,background .16s ease}.marker span{font-size:.82rem;font-weight:800;transform:rotate(45deg)}.marker strong{position:absolute;left:41px;width:max-content;padding:6px 10px;border-radius:9px;color:var(--ink);background:rgba(255,253,247,.9);box-shadow:0 3px 10px rgba(23,53,45,.08);font-size:.78rem;transform:rotate(45deg);transform-origin:left center}.marker.active,.marker:focus-visible,.marker:hover{background:var(--gold);transform:translate(-50%,-50%) rotate(-45deg) scale(1.18)}.marker.finishMarker{background:var(--gold)}.marker.finishMarker.active,.marker.finishMarker:focus-visible,.marker.finishMarker:hover{background:var(--forest)}.marker:focus-visible{outline:3px solid var(--ink);outline-offset:4px}.mapLabel{position:absolute;z-index:1;color:rgba(23,53,45,.42);font-family:Georgia,Times New Roman,serif;font-size:clamp(.72rem,1.4vw,1rem);font-style:italic;letter-spacing:.08em}.labelLoch{left:64%;top:64%;transform:rotate(-63deg)}.labelMoor{left:14%;top:41%}.labelNevis{left:10%;top:7%}.dayCard{display:flex;flex-direction:column}.dayCardTop{display:flex;justify-content:space-between;padding:23px 26px;color:var(--paper);background:var(--forest);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.photoFrame,.photoPlaceholder{position:relative;min-height:245px}.photoFrame img{object-fit:cover}.galleryFeatured{position:relative;min-height:clamp(430px,55vw,720px);background:var(--ink)}.galleryFeatured img{object-fit:cover}.galleryArrow{position:absolute;top:50%;z-index:2;display:grid;width:52px;height:52px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:50%;color:white;background:rgba(23,53,45,.72);box-shadow:0 8px 24px rgba(23,53,45,.24);cursor:pointer;font-size:1.55rem;transform:translateY(-50%);transition:background .16s ease,transform .16s ease}.galleryArrowPrevious{left:18px}.galleryArrowNext{right:18px}.galleryArrow:focus-visible,.galleryArrow:hover{background:var(--gold);transform:translateY(-50%) scale(1.08)}.galleryArrow:focus-visible{outline:3px solid white;outline-offset:3px}.galleryFeatured span{position:absolute;right:14px;bottom:14px;padding:6px 9px;border-radius:20px;color:white;background:rgba(23,53,45,.78);font-size:.72rem;font-weight:800}.galleryGrid{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:8px;gap:8px;padding:12px;background:var(--cream)}.galleryGrid button{position:relative;aspect-ratio:1;overflow:hidden;padding:0;border:2px solid transparent;border-radius:8px;background:var(--mist);cursor:pointer}.galleryGrid button img{object-fit:cover}.galleryGrid button.active,.galleryGrid button:focus-visible,.galleryGrid button:hover{border-color:var(--gold)}.galleryGrid button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.photoPlaceholder{display:grid;align-content:center;justify-items:center;color:rgba(255,255,255,.82);background:linear-gradient(rgba(33,79,63,.2),rgba(33,79,63,.58)),radial-gradient(circle at 70% 30%,#9fbc8f,#57775c)}.photoPlaceholder span{font-family:Georgia,Times New Roman,serif;font-size:4rem}.photoPlaceholder p{margin:5px 20px 0;text-align:center}.dayContent{display:flex;flex:1 1;flex-direction:column;padding:30px 28px}.dayContent h2{margin:5px 0 4px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,3.5rem);font-weight:500;letter-spacing:-.04em}.stage{margin-bottom:22px;color:var(--gold);font-weight:800}.dayContent>p:not(.stage){color:#5d6d66;line-height:1.65}.startStory{display:block}.startStory h2{font-size:clamp(2.4rem,4.5vw,4rem)}.startStory>p:not(.stage){margin-bottom:14px}dl{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:auto 0 0;padding-top:24px}dl div{padding-top:14px;border-top:1px solid var(--mist)}dt{margin-bottom:5px;color:#7b8982;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}dd{margin:0;font-size:.9rem;font-weight:700;line-height:1.4}.dayNavigation{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:10px;gap:10px;max-width:1500px;margin-top:24px}.dayNavigation button{display:grid;grid-gap:5px;gap:5px;min-width:0;padding:15px 12px;border:1px solid rgba(23,53,45,.13);border-radius:14px;color:var(--ink);background:rgba(255,253,247,.7);cursor:pointer;font-weight:700;text-align:left}.dayNavigation button span{color:var(--moss);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.dayNavigation button.active,.dayNavigation button:focus-visible,.dayNavigation button:hover{border-color:var(--forest);color:white;background:var(--forest)}.dayNavigation button.active span{color:#d8e4d9}@media (max-width:1000px){.mapSection{grid-template-columns:1fr}.dayCard{order:2;scroll-margin-top:18px}.mapCard{order:1;position:static}.map{min-height:580px}.dayCard{display:grid;grid-template-columns:.85fr 1.15fr}.startStoryCard{display:flex}.dayCardTop{grid-column:1/-1}.dayNavigation{grid-template-columns:repeat(3,1fr)}}@media (max-width:650px){main{padding:36px 14px}.hero{margin-bottom:32px}.mapHeader{align-items:start;flex-direction:column;padding:24px 20px 18px}.mapHeader p{display:none}.map{min-height:520px}.marker{width:36px;height:36px}.marker strong{left:35px;max-width:104px;overflow:hidden;text-overflow:ellipsis}.dayCard{display:flex}.galleryFeatured,.photoFrame,.photoPlaceholder{min-height:310px}.galleryGrid{grid-template-columns:repeat(5,1fr)}.galleryArrow{width:44px;height:44px}.galleryArrowPrevious{left:10px}.galleryArrowNext{right:10px}.dayNavigation{grid-template-columns:repeat(2,1fr)}}