@font-face { font-family: Roboto;font-style: normal;font-weight: 400 900;font-display: swap;src: url("../fonts/roboto-greek-ext.woff2") format("woff2");unicode-range: U+1F00-1FFF} @font-face { font-family: Roboto;font-style: normal;font-weight: 400 900;font-display: swap;src: url("../fonts/roboto-greek.woff2") format("woff2");unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF} @font-face { font-family: Roboto;font-style: normal;font-weight: 400 900;font-display: swap;src: url("../fonts/roboto-latin-ext.woff2") format("woff2");unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF} @font-face { font-family: Roboto;font-style: normal;font-weight: 400 900;font-display: swap;src: url("../fonts/roboto-latin.woff2") format("woff2");unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD} :root { --ink: #17231c;--forest: #173f2c;--forest-dark: #0d2a1c;--moss: #5f7f58;--leaf: #b8d28d;--mist: #eef2ed;--paper: #fbfcf9;--white: #fff;--line: #d8e0d8;--muted: #617067;--max: 1180px;--reading: 760px;--sans: Roboto, Arial, Helvetica, sans-serif;font-family: var(--sans);color: var(--ink);background: var(--paper)} * { box-sizing: border-box} html { scroll-behavior: smooth} body { margin: 0;background: var(--paper);line-height: 1.65} body.modal-open { overflow: hidden} body, button, input { font: inherit} img { display: block;max-width: 100%} a { color: inherit} button, a { -webkit-tap-highlight-color: transparent} :focus-visible { outline: 3px solid #96bf70;outline-offset: 3px} [hidden] { display: none !important} .skip-link { position: fixed;left: 1rem;top: -5rem;z-index: 100;padding: .7rem 1rem;background: var(--white);color: var(--forest-dark)} .skip-link:focus { top: 1rem} .container { width: min(calc(100% - 2rem), var(--max));margin-inline: auto} .reading-width { width: min(calc(100% - 2rem), var(--reading));margin-inline: auto} .site-header { position: sticky;top: 0;z-index: 40;background: color-mix(in srgb, var(--paper) 92%, transparent);border-bottom: 1px solid color-mix(in srgb, var(--line) 80%, transparent);backdrop-filter: blur(16px)} .header-inner { min-height: 84px;display: flex;align-items: center;justify-content: space-between;gap: 2rem} .brand { display: inline-flex;align-items: center;gap: .72rem;color: var(--forest-dark);text-decoration: none} .brand-symbol { width: 46px;height: 46px;display: grid;flex: 0 0 46px;place-items: center;overflow: hidden} .brand-symbol img { width: 100%;height: 100%;object-fit: contain} .brand-copy { display: grid;line-height: 1} .brand-copy strong { font-size: 1.02rem;font-weight: 900} .brand-copy small { margin-top: .38rem;color: var(--muted);font-size: .64rem;font-weight: 650} .site-nav { display: flex;align-items: center;gap: 2rem} .site-nav a { color: var(--forest-dark);font-family: Roboto, Arial, Helvetica, sans-serif;font-size: .92rem;font-weight: 700;text-decoration: none;white-space: nowrap} .site-nav a:hover { color: var(--moss)} .language-switch { display: inline-flex;align-items: center;gap: .35rem;font-size: .72rem;font-weight: 800;white-space: nowrap} .language-switch a { color: inherit;opacity: .55;text-decoration: none} .language-switch a[aria-current="page"] { opacity: 1;text-decoration: underline;text-underline-offset: 4px} .nav-cta, .button { display: inline-flex;min-height: 44px;align-items: center;justify-content: center;gap: .5rem;padding: .7rem 1.25rem;border: 1px solid var(--forest);border-radius: 999px;background: var(--forest);color: var(--white) !important;font-family: Roboto, Arial, Helvetica, sans-serif;font-weight: 700;text-decoration: none} .button.secondary { background: transparent;color: var(--forest) !important} .menu-button { display: none;width: 44px;height: 44px;border: 1px solid var(--line);border-radius: 12px;background: transparent;color: var(--forest-dark);cursor: pointer} .menu-button span, .menu-button::before, .menu-button::after { display: block;width: 20px;height: 2px;margin: 4px auto;content: "";background: currentColor} .home-hero { min-height: min(780px, calc(100svh - 84px));display: grid;align-items: end;position: relative;isolation: isolate;color: var(--white);background: url('/images/cholomon-mountain.jpg') center 58% / cover no-repeat} .home-hero::after { position: absolute;inset: 0;z-index: -1;content: "";background: linear-gradient(90deg, rgba(5, 20, 12, .86) 0%, rgba(5, 20, 12, .48) 52%, rgba(5, 20, 12, .12) 100%)} .hero-copy { max-width: 790px;padding-block: clamp(4rem, 11vh, 8rem);animation: rise .7s ease-out both} .eyebrow { display: block;margin-bottom: .9rem;color: var(--leaf);font-size: .76rem;font-weight: 900;letter-spacing: 0;text-transform: uppercase} .hero-copy h1 { max-width: 790px;margin: 0 0 1.2rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 5.1rem;font-weight: 900;line-height: 1.08} .hero-copy p { max-width: 620px;margin: 0 0 2rem;font-size: 1.18rem} .hero-actions { display: flex;flex-wrap: wrap;gap: .8rem} .home-hero .button.secondary { border-color: rgba(255,255,255,.72);color: var(--white) !important} .statement { padding: clamp(4.5rem, 9vw, 8rem) 0;background: var(--forest-dark);color: var(--white)} .statement h2 { max-width: 950px;margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 3.8rem;font-weight: 800;line-height: 1.12} .statement em { color: var(--leaf);font-style: normal} .section { padding: clamp(4rem, 8vw, 7rem) 0} .section-header { display: flex;align-items: end;justify-content: space-between;gap: 2rem;margin-bottom: 2.3rem;border-bottom: 1px solid var(--line);padding-bottom: 1.1rem} .section-header h2 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 3.25rem;font-weight: 900;line-height: 1.08} .section-header p { max-width: 540px;margin: 0;color: var(--muted)} .services-list { border-top: 1px solid var(--line)} .service-row { display: grid;grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr) auto;align-items: center;gap: 2rem;padding: 2rem 0;border-bottom: 1px solid var(--line);text-decoration: none;transition: color .2s, padding .2s} .service-row:hover { padding-left: .75rem;color: var(--forest)} .service-row strong { font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 2.2rem;font-weight: 800} .service-row span { color: var(--muted)} .service-row b { font-size: 1.5rem} .post-strip { display: grid;grid-auto-columns: minmax(280px, 38%);grid-auto-flow: column;gap: 1.25rem;overflow-x: auto;padding: 0 0 1.25rem;scroll-snap-type: x mandatory} .post-card { min-width: 0;color: inherit;text-decoration: none;scroll-snap-align: start} .post-card-media { aspect-ratio: 4 / 3;overflow: hidden;background: var(--mist)} .post-card img { width: 100%;height: 100%;object-fit: cover;transition: transform .45s ease} .post-card:hover img { transform: scale(1.035)} .post-card-body { padding: 1.1rem 0 1.4rem} .post-card .category { color: var(--moss);font-size: .72rem;font-weight: 900;text-transform: uppercase} .post-card h2, .post-card h3 { margin: .45rem 0 .55rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 1.65rem;font-weight: 700;line-height: 1.15} .post-card p { margin: 0;color: var(--muted);display: -webkit-box;overflow: hidden;-webkit-box-orient: vertical;-webkit-line-clamp: 3} .blog-page { font-family: Roboto, Arial, Helvetica, sans-serif} .blog-hero { padding: 5.5rem 0 4.5rem;background: var(--forest-dark);color: var(--white)} .blog-hero-grid { display: grid;grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr);align-items: end;gap: 3rem} .blog-hero h1 { max-width: 850px;margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 5.5rem;font-weight: 900;line-height: 1.08} .blog-hero h1 em { color: var(--leaf);font-style: normal} .blog-intro { padding-bottom: .55rem} .blog-intro > span { display: block;margin-bottom: 1rem;color: var(--leaf);font-size: .72rem;font-weight: 900} .blog-hero .blog-intro p { max-width: 470px;margin: 0;color: #dce8de;font-size: 1.02rem} .blog-tools { display: grid;grid-template-columns: minmax(280px, 470px) minmax(0, 1fr);align-items: end;gap: 2rem 3rem;margin-top: 4rem;padding-top: 2rem;border-top: 1px solid rgba(255,255,255,.2)} .blog-search, .blog-filter-group { display: grid;gap: .7rem} .blog-search > span, .blog-filter-group > span { color: #b8c9bd;font-size: .7rem;font-weight: 900} .search-field { width: 100%;min-height: 50px;padding: .8rem 1rem;border: 1px solid rgba(255,255,255,.38);border-radius: 0;background: transparent;color: var(--white)} .search-field::placeholder { color: #c6d2c9} .filters { display: flex;flex-wrap: wrap;justify-content: flex-start;gap: .55rem} .filter { min-height: 42px;padding: .55rem .85rem;border: 1px solid rgba(255,255,255,.35);background: transparent;color: var(--white);cursor: pointer} .filter { white-space: nowrap} .filter[aria-pressed="true"] { border-color: var(--leaf);background: var(--leaf);color: var(--forest-dark)} .blog-grid { display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 2.4rem 1.4rem} .empty-state { grid-column: 1 / -1;padding: 4rem 0;text-align: center;color: var(--muted)} .article-hero { padding: clamp(4rem, 9vw, 7rem) 0 2.5rem;background: var(--forest-dark);color: var(--white)} .article-hero .reading-width { margin-inline: auto} .article-hero h1 { margin: .6rem 0 1.3rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 4.6rem;font-weight: 900;line-height: 1.08} .article-meta { display: flex;flex-wrap: wrap;gap: .5rem 1.2rem;color: #cfdbd1;font-size: .9rem} .article-cover { width: min(calc(100% - 2rem), 1040px);max-height: 620px;aspect-ratio: 16 / 9;margin: -1px auto 0;object-fit: cover} .article-body { padding: clamp(3rem, 7vw, 6rem) 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 1.18rem;line-height: 1.78} .article-body h2, .article-body h3 { margin: 2.4em 0 .65em;color: var(--forest-dark);font-family: Roboto, Arial, Helvetica, sans-serif;font-weight: 800;line-height: 1.18} .article-body h2 { font-size: 2.35rem} .article-body h3 { font-size: 1.7rem} .article-body p, .article-body ul, .article-body ol, .article-body blockquote { margin: 0 0 1.35em} .article-body :is(p, li, blockquote, h2, h3, h4) a:any-link { color: #111;font-weight: 700;text-decoration-line: underline;text-decoration-color: #111;text-decoration-thickness: 1.5px;text-underline-offset: 3px;text-decoration-skip-ink: none} .article-body :is(p, li, blockquote, h2, h3, h4) a:hover { color: #111;text-decoration-thickness: 2px} .article-body img { width: 100%;height: auto;margin: 2.1rem 0 .5rem} .article-body blockquote { margin-inline: 0;padding: .4rem 0 .4rem 1.5rem;border-left: 4px solid var(--moss);color: #405247;font-style: italic} .article-body .image-gallery { display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 1rem} .article-body .image-gallery img { margin: 0;height: 100%;object-fit: cover} .article-share { display: flex;flex-wrap: wrap;align-items: center;gap: .6rem;padding: 1.5rem 0;border-top: 1px solid var(--line);border-bottom: 1px solid var(--line)} .article-share strong { margin-right: .5rem} .share-link { padding: .45rem .7rem;border: 1px solid var(--line);color: var(--forest);font-family: Roboto, Arial, Helvetica, sans-serif;font-size: .82rem;font-weight: 800;text-decoration: none} .cta-band { padding: 4rem 0;background: var(--leaf);color: var(--forest-dark)} .cta-band .container { display: flex;align-items: center;justify-content: space-between;gap: 2rem} .cta-band h2 { max-width: 700px;margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 3.2rem;font-weight: 900;line-height: 1.08} .site-footer { padding: 3rem 0;background: var(--forest-dark);color: #d8e2da} .footer-inner { display: grid;grid-template-columns: 1fr auto;align-items: end;gap: 2rem} .footer-brand { color: var(--white)} .footer-brand .brand-symbol { padding: 5px;background: var(--leaf)} .footer-brand .brand-copy small { color: #b8c7bc} .footer-links { display: flex;flex-wrap: wrap;justify-content: flex-end;gap: 1.2rem} .footer-links a { color: inherit;font-size: .88rem} .copyright { margin: 1.5rem 0 0;color: #9fb1a4;font-size: .82rem} .not-found { min-height: 70svh;display: grid;place-items: center;text-align: center} .not-found h1 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 10rem;color: var(--forest);line-height: 1;font-weight: 900} .service-hero { min-height: 610px;display: grid;align-items: end;position: relative;isolation: isolate;background: var(--service-image) center / cover no-repeat;color: var(--white)} .service-hero::after { position: absolute;inset: 0;z-index: -1;content: "";background: linear-gradient(90deg, rgba(5, 20, 12, .88), rgba(5, 20, 12, .32) 72%, rgba(5, 20, 12, .16))} .service-hero-copy { padding-block: 5rem} .service-hero h1 { max-width: 840px;margin: 0 0 1rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(2.6rem, 6vw, 5.35rem);font-weight: 900;line-height: 1.08} .service-hero p { max-width: 650px;margin: 0 0 2rem;font-size: 1.15rem} .button.light { border-color: var(--white);background: var(--white);color: var(--forest-dark) !important} .service-hero-actions { display: flex;flex-wrap: wrap;gap: .8rem} .service-hero-actions .button { margin: 0} button.button { font: inherit;cursor: pointer} .eco-guide-page { background: #fff;color: #173f2c} .eco-hero { min-height: 52svh} .eco-story { padding: 3.5rem 0;background: #fff} .eco-story-grid { display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);gap: 2.5rem;align-items: start} .eco-story .eyebrow { color: #68815f} .eco-story p { margin: .7rem 0 0;font-family: inherit;font-size: 1.15rem;line-height: 1.55} .eco-facets { display: grid;grid-template-columns: 1fr 1fr;gap: 1.25rem} .eco-facet { padding: 0;background: transparent;border: 0} .eco-facet span { display: flex;width: 40px;height: 40px;align-items: center;justify-content: center;margin-bottom: .6rem;border-radius: .7rem;background: #eef6e3;color: #173f2c;font-size: .72rem;font-weight: 900} .eco-facet h3 { margin: 0 0 .45rem;font-family: Roboto, Arial, sans-serif;font-size: 1.05rem;font-weight: 800;line-height: 1.25} .eco-facet p { margin: 0;color: #5c6b64;font-family: inherit;font-size: .92rem;line-height: 1.5} .eco-walks { padding: 3rem 0 4rem;background: #fff} .eco-walk { display: grid;grid-template-columns: 280px minmax(0, 1fr);gap: 1.5rem;align-items: start;margin-top: 1.25rem;padding: 1.25rem;border: 1px solid #e6e6e6;border-radius: 12px;background: #fff} .eco-walk-media { position: relative;min-height: 180px;overflow: hidden;border-radius: 10px} .eco-walk-media img, .eco-gallery img { width: 100%;height: 100%;object-fit: cover;display: block} .eco-gallery { margin-top: 1rem} .eco-gallery img { max-height: 420px;border-radius: 12px} .eco-walk-copy { display: grid;gap: .55rem;align-content: start;padding: 0} .eco-walk-copy h2 { margin: 0;font-family: Roboto, Arial, sans-serif;font-size: 1.35rem;font-weight: 800;line-height: 1.25} .eco-walk-copy > p { margin: 0;color: #5c6b64;font-size: 1rem} .eco-walk-from { margin: .2rem 0 0;font-weight: 800} .eco-specs, .eco-checks { margin: 0;padding: 0;list-style: none} .eco-specs li { margin: 0 0 .35rem;color: #5c6b64;font-size: .92rem} .eco-checks li { position: relative;padding-left: 1.35rem;margin: 0 0 .35rem} .eco-checks li::before { position: absolute;left: 0;color: #2f7a3e;font-weight: 900;content: "✓"} .eco-cancel { margin: 0;color: #5c6b64;font-size: .88rem} .eco-walk-actions { display: flex;flex-wrap: wrap;gap: .6rem;margin-top: .2rem} .eco-guide-page .eco-btn, .eco-guide-page .eco-btn-ghost, .eco-guide-page .button.light { min-height: 50px;padding: .8rem 1.3rem;border-radius: 999px;font-weight: 900} .eco-guide-page .eco-btn { border: 0;background: var(--leaf);color: var(--forest-dark) !important;box-shadow: 5px 5px 0 var(--forest-dark);transform: rotate(-1.6deg)} .eco-guide-page .eco-btn:hover { transform: rotate(1.2deg) translateY(-2px);filter: none} .eco-guide-page .eco-btn-ghost { border: 2px solid var(--forest-dark);background: #fff;color: var(--forest-dark) !important;box-shadow: 4px 4px 0 var(--leaf);transform: rotate(1.4deg)} .eco-guide-page .eco-btn-ghost:hover { background: var(--leaf)} .eco-guide-page .button.light { border: 2px solid #fff;background: #fff;color: var(--forest-dark) !important;box-shadow: 4px 4px 0 var(--leaf);transform: rotate(1.2deg)} .eco-guide-page .standard-contact { min-width: 0;border: 0;border-radius: 999px;background: var(--leaf);color: var(--forest-dark);box-shadow: 4px 4px 0 var(--forest-dark);transform: rotate(-1.2deg)} .eco-guide-page .standard-contact:hover { background: #fff;color: var(--forest-dark)} .eco-guide-page .standard-header .header-inner { min-height: 108px} .eco-guide-page .standard-logo, .eco-guide-page .standard-footer-logo { display: flex;width: auto;height: auto;flex: 0 0 auto;align-items: flex-start;gap: .45rem;overflow: visible;text-decoration: none;color: var(--forest-dark)} .eco-guide-page .standard-logo img { width: 72px;height: 72px;flex: 0 0 72px} .eco-guide-page .standard-footer-logo img { width: 72px;height: 72px;flex: 0 0 72px} .eco-guide-page .standard-footer-inner { grid-template-columns: max-content minmax(0, 1fr) auto;align-items: center} .eco-treewalks { display: inline-flex;flex-direction: column;align-items: flex-start;gap: .12rem;margin-top: .12rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 1.45rem;font-weight: 800;letter-spacing: -.02em;line-height: 1;white-space: nowrap;transform: rotate(-3.5deg)} .eco-treewalks em { color: #5a8f32;font-style: italic} .eco-prints { width: 7.4rem;height: 1.15rem;overflow: visible} .eco-trail-draw { fill: none;stroke-dasharray: 1;stroke-dashoffset: 1;animation: eco-trail-draw 2.4s linear infinite} @keyframes eco-trail-draw { 0% { stroke-dashoffset: 1} 72% { stroke-dashoffset: 0} 86% { stroke-dashoffset: 0} 100% { stroke-dashoffset: 1}} .eco-booking-hero { padding: 2rem 0 0;background: #fff} .eco-booking-hero h1 { margin: .4rem 0 .35rem;font-family: Roboto, Arial, sans-serif;font-size: clamp(1.6rem, 3vw, 2.2rem);font-weight: 800} .eco-meta-line { margin: 0 0 1rem;color: #5c6b64} .eco-booking-grid { display: grid;grid-template-columns: 1.2fr .8fr;gap: 2rem;align-items: start} .eco-booking-lead { max-width: none;font-size: 1.05rem;color: #5c6b64} .eco-booking-details { display: grid;gap: .9rem} .eco-meta-line a { color: inherit;font-weight: 800} .eco-facts { display: grid;grid-template-columns: 1fr 1fr;gap: .9rem 1.2rem;margin: .4rem 0 1rem} .eco-facts article { padding-top: .2rem} .eco-facts strong { display: block;margin-bottom: .2rem;font-size: .95rem} .eco-facts p { margin: 0;color: #5c6b64;font-size: .9rem} .eco-loved { display: grid;gap: .7rem;padding: 1rem 0 1.2rem;border-top: 1px solid #eee;border-bottom: 1px solid #eee} .eco-loved ul { display: grid;grid-template-columns: 1fr 1fr;gap: .8rem;margin: 0;padding: 0;list-style: none} .eco-loved-card { padding: .85rem;border: 1px solid #eee;border-radius: 12px;background: #fff} .eco-loved-card p { margin: .35rem 0 .55rem} .eco-loved a { font-weight: 800;color: var(--forest-dark)} .eco-stars { color: #c45c26;letter-spacing: .08em;font-size: .9rem} .eco-reviews { padding: 2.5rem 0 4rem;background: #f7f7f7} .eco-review-score { margin: .3rem 0 1.2rem;color: #5c6b64} .eco-review-list { display: grid;gap: 1rem} .eco-review { padding: 1.1rem 1.2rem;border-radius: 12px;background: #fff} .eco-review-head { display: flex;gap: .7rem;align-items: center;margin-bottom: .45rem} .eco-review-head p { margin: .15rem 0 0;color: #5c6b64;font-size: .85rem} .eco-avatar { display: grid;width: 36px;height: 36px;place-items: center;border-radius: 50%;background: #a1d99b;color: #173f2c;font-weight: 800} .eco-booking-details h2 { margin: .4rem 0 0;font-family: Roboto, Arial, sans-serif;font-size: 1.1rem;font-weight: 800} .eco-booker { position: sticky;top: 5.5rem;display: grid;gap: .75rem;max-width: none;padding: 1.15rem 1.15rem 1.2rem;border: 1px solid #e6e6e6;border-radius: 16px;background: #fff;box-shadow: 0 8px 24px rgba(0,0,0,.06)} .eco-booker-price { margin: 0 .15rem .2rem;font-family: inherit;font-size: 1.05rem;font-weight: 700} .eco-booker-price strong { font-size: 1.35rem} .eco-booker-stack { display: grid;gap: .65rem} .eco-booker-select { display: grid;grid-template-columns: 1.4rem 1fr auto;align-items: center;gap: .7rem;min-height: 52px;padding: 0 .95rem;border: 0;border-radius: 12px;background: #f3f3f3;color: #1a1a1a;font: inherit;font-weight: 600;text-align: left;cursor: pointer} .eco-booker-icon { display: grid;width: 1.25rem;height: 1.25rem;place-items: center;color: #333} .eco-booker-icon svg { width: 100%;height: 100%} .eco-booker-caret { width: .55rem;height: .55rem;border-right: 2px solid #666;border-bottom: 2px solid #666;transform: rotate(45deg) translate(-2px, -2px)} .eco-booker-lang { position: relative} .eco-booker-lang select { grid-column: 2;width: 100%;border: 0;background: transparent;font: inherit;font-weight: 600;appearance: none;cursor: pointer} .eco-check-btn { width: 100%;min-height: 54px;border: 0;border-radius: 999px;background: #1a73e8;color: #fff !important;font-weight: 800;box-shadow: none;transform: none} .eco-guide-page .eco-check-btn { min-height: 54px;border-radius: 999px;background: #1a73e8;color: #fff !important;box-shadow: none;transform: none} .eco-guide-page .eco-check-btn:hover { transform: none;background: #1558b0;filter: none} .eco-people-pop { padding: .85rem 1rem;border: 1px solid #eee;border-radius: 12px;background: #fff;box-shadow: 0 10px 24px rgba(0,0,0,.08)} .eco-people-pop p { margin: 0 0 .55rem;font-weight: 700} .eco-stepper { display: flex;align-items: center;gap: .8rem} .eco-stepper button { width: 36px;height: 36px;border: 1px solid #ccc;border-radius: 50%;background: #fff;font-size: 1.2rem;cursor: pointer} .eco-stepper span { min-width: 1.5rem;text-align: center;font-weight: 800} .eco-booker-details { display: grid;gap: .75rem} .eco-cal-layer { position: fixed;inset: 0;z-index: 80;display: grid;place-items: center;padding: 1rem;background: rgba(20,24,28,.28)} .eco-cal { position: relative;width: min(720px, 100%);padding: 1.4rem 1.2rem 1.2rem;border-radius: 16px;background: #fff;box-shadow: 0 18px 48px rgba(0,0,0,.18)} .eco-cal-nav { position: absolute;top: 1.15rem;z-index: 1;width: 36px;height: 36px;border: 0;background: transparent;font-size: 1.6rem;line-height: 1;cursor: pointer} .eco-cal-next { right: .8rem;left: auto} .eco-cal-nav:first-of-type { left: .8rem} .eco-cal-months { display: grid;grid-template-columns: 1fr 1fr;gap: 1.5rem} .eco-cal-month h3 { margin: 0 0 .85rem;text-align: center;font-size: 1.05rem} .eco-cal-week { display: grid;grid-template-columns: repeat(7, 1fr);margin-bottom: .35rem;color: #8a8a8a;font-size: .72rem;font-weight: 700;text-align: center} .eco-cal-grid { display: grid;grid-template-columns: repeat(7, 1fr);gap: .15rem} .eco-cal-day { min-height: 36px;border: 0;background: transparent;font: inherit;font-weight: 600} .eco-cal-day[disabled] { color: #c8c8c8;text-decoration: line-through;cursor: default} .eco-cal-day:not([disabled]) { cursor: pointer;color: #111} .eco-cal-day.is-selected, .eco-cal-day:not([disabled]):hover { border-radius: 50%;background: #eef4ff} .eco-fields { display: grid;grid-template-columns: 1fr 1fr;gap: .85rem} .eco-field, .eco-play-form .eco-field-wide { display: grid;gap: .35rem;font-size: .85rem;font-weight: 700;letter-spacing: 0;text-transform: none} .eco-field-wide { grid-column: 1 / -1} .eco-field input, .eco-field select, .eco-field textarea, .eco-play-form input, .eco-play-form select, .eco-play-form textarea { width: 100%;padding: .75rem .85rem;border: 0;border-radius: 10px;background: #f4f4f4;font: inherit;text-transform: none;letter-spacing: 0;font-weight: 500} .eco-field input:focus, .eco-field select:focus, .eco-field textarea:focus { outline: 2px solid #b8d28d;outline-offset: 1px} .eco-pay { display: grid;gap: .5rem;margin: .4rem 0;border: 0;padding: 0} .eco-pay legend { margin-bottom: .3rem;font-size: .85rem;font-weight: 800} .eco-pay-card { display: flex;gap: .6rem;align-items: center;padding: .7rem .8rem;border: 1px solid #e6e6e6;border-radius: 10px;background: #fff;cursor: pointer;font-weight: 600} .eco-pay-card:has(input:checked) { border-color: #173f2c;background: #f4f8ef} .eco-plan-panel { position: relative;border-radius: 12px;background: #fff;box-shadow: none} .eco-steps { padding: 3.5rem 0;background: #f7f7f7;color: #173f2c} .eco-steps .eyebrow { color: #68815f} .eco-steps ol { display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1.5rem;margin: 1.4rem 0 0;padding: 0;list-style: none} .eco-steps li { padding-right: 1rem} .eco-steps span { display: block;color: #68815f;font-size: .76rem;font-weight: 900} .eco-steps strong { display: block;margin: 1.2rem 0 .6rem;font-family: Roboto, Arial, sans-serif;font-size: 1.2rem;font-weight: 800;color: #173f2c} .eco-steps p { margin: 0;color: #5c6b64} .eco-cta { background: #eef6e3} .tour-meta { display: flex;flex-wrap: wrap;gap: .6rem 1.2rem;margin: 1rem 0;padding: 0;list-style: none;font-size: .92rem} .booking-form { display: grid;gap: 1rem;max-width: 560px;padding: 2rem;background: #fff;border-radius: 1.5rem;box-shadow: 0 16px 36px rgba(23, 63, 44, .07)} .booking-form.eco-booker { max-width: none;padding: 1.25rem;border-radius: 12px;box-shadow: 0 8px 24px rgba(0,0,0,.06)} .booking-form label { display: grid;gap: .4rem;font-weight: 700} .booking-form input, .booking-form select { width: 100%;padding: .8rem;border: 1px solid #bcc5bf;font: inherit} .pay-mode { display: grid;gap: .6rem;border: 0;padding: 0} .pay-mode label { font-weight: 600} .booking-privacy { color: #4a5b52;font-size: .9rem} .booking-page .service-intro { background: #f6f5ef} .service-intro { padding: 5.5rem 0;background: var(--leaf)} .service-intro .eyebrow { color: var(--forest)} .service-intro p { max-width: 1000px;margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(1.6rem, 3vw, 2.8rem);font-weight: 800;line-height: 1.4} .service-details { border-top: 1px solid var(--line)} .service-detail { display: grid;grid-template-columns: 70px minmax(240px, .8fr) minmax(280px, 1fr);gap: 1.5rem 2.5rem;align-items: start;padding: 2.2rem 0;border-bottom: 1px solid var(--line)} .service-index { color: var(--moss);font-size: .78rem;font-weight: 900} .service-detail h2 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 2rem;font-weight: 800;line-height: 1.15} .service-detail p { margin: 0;color: var(--muted)} .process-band { padding: 4.5rem 0;background: var(--forest-dark);color: var(--white)} .process-band .container { display: grid;grid-template-columns: repeat(3, 1fr)} .process-band .container > div { min-height: 220px;padding: 0 2.2rem;border-left: 1px solid rgba(255,255,255,.2)} .process-band .container > div:first-child { padding-left: 0;border-left: 0} .process-band span { display: block;color: var(--leaf);font-size: .76rem;font-weight: 900} .process-band strong { display: block;margin: 2.5rem 0 .7rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 1.8rem;font-weight: 800} .process-band p { max-width: 300px;margin: 0;color: #c6d4c9} [data-reveal] { opacity: 0;transform: translateY(18px);transition: opacity .55s ease, transform .55s ease} [data-reveal][data-visible="true"] { opacity: 1;transform: none} @keyframes rise { from { opacity: 0;transform: translateY(24px)}} .standard-header { background: #fff} .standard-header .header-inner { min-height: 92px} .standard-logo { width: 82px;height: 82px;display: block;flex: 0 0 82px;overflow: hidden} .standard-logo img { width: 100%;height: 100%;object-fit: contain} .standard-header .site-nav { margin-left: auto;flex: 0 1 auto} .standard-contact { min-width: 142px;min-height: 46px;display: inline-flex;align-items: center;justify-content: center;padding: .65rem 1.25rem;border: 1px solid var(--forest-dark);background: var(--forest-dark);color: #fff;font-weight: 800;text-decoration: none;white-space: nowrap} .standard-contact:hover { background: transparent;color: var(--forest-dark)} .standard-footer { padding: 3rem 0;border-top: 1px solid #dfe3da;background: #f5f3e9;color: #24352b} .standard-footer-inner { display: grid;grid-template-columns: 78px minmax(200px, 1fr) auto;align-items: center;gap: 1.5rem 2rem} .standard-footer-logo { width: 72px;height: 72px;display: block;overflow: hidden} .standard-footer-logo img { width: 100%;height: 100%;object-fit: contain} .standard-footer strong { font-size: .9rem} .standard-footer p { margin: .25rem 0 0;color: #69746d;font-size: .82rem} .standard-footer nav { display: flex;flex-wrap: wrap;justify-content: flex-end;gap: .7rem 1.2rem} .standard-footer nav a { color: #31463a;font-size: .82rem;font-weight: 750} .standard-footer small { grid-column: 2 / -1;color: #7b867f;font-size: .72rem} @media (max-width: 820px) { .menu-button { display: block} .site-nav { position: absolute;inset: 84px 0 auto;display: none;align-items: stretch;gap: 0;padding: .6rem 1rem 1rem;border-bottom: 1px solid var(--line);background: var(--paper)} .site-nav[data-open] { display: grid} .site-nav a { min-height: 48px;display: flex;align-items: center;border-bottom: 1px solid var(--line)} .site-nav .nav-cta { margin-top: .6rem;justify-content: center;border-bottom: 0} .standard-contact { display: none} .standard-header .site-nav { inset: 92px 0 auto;margin: 0} .section-header, .cta-band .container { align-items: flex-start;flex-direction: column} .service-row { grid-template-columns: 1fr auto;gap: .5rem 1rem} .service-row span { grid-column: 1 / -1} .service-detail { grid-template-columns: 52px 1fr} .service-detail p { grid-column: 2} .process-band .container { grid-template-columns: 1fr} .process-band .container > div { min-height: auto;padding: 1.8rem 0;border-left: 0;border-top: 1px solid rgba(255,255,255,.2)} .process-band .container > div:first-child { border-top: 0} .process-band strong { margin-top: 1rem} .post-strip { grid-auto-columns: minmax(270px, 82%)} .blog-tools { grid-template-columns: 1fr} .blog-hero-grid { grid-template-columns: 1fr;gap: 2rem} .filters { justify-content: flex-start} .blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr))}} @media (max-width: 560px) { .brand-copy small { display: none} .brand-symbol { width: 40px;height: 40px;flex-basis: 40px} .home-hero { min-height: calc(100svh - 84px);background-position: 56% center} .hero-copy h1 { font-size: 2.65rem} .hero-copy p { font-size: 1rem} .statement h2 { font-size: 2.25rem} .section-header h2 { font-size: 2.25rem} .service-row strong { font-size: 1.6rem} .blog-hero h1 { font-size: 3.25rem} .article-hero h1 { font-size: 2.65rem} .article-body { font-size: 1.08rem} .article-body h2 { font-size: 1.75rem} .article-body h3 { font-size: 1.4rem} .cta-band h2 { font-size: 2.1rem} .not-found h1 { font-size: 6rem} .service-hero { min-height: 560px} .service-hero h1 { font-size: 3rem} .service-hero p { font-size: 1rem} .service-intro { padding: 4rem 0} .service-intro p { font-size: 1.85rem} .service-detail { grid-template-columns: 40px 1fr;gap: 1rem} .service-detail h2 { font-size: 1.55rem} .blog-grid { grid-template-columns: 1fr} .article-body .image-gallery { grid-template-columns: 1fr} .footer-inner { grid-template-columns: 1fr} .footer-links { justify-content: flex-start} .standard-footer-inner { grid-template-columns: 1fr;justify-items: center;text-align: center} .eco-guide-page .standard-footer-inner { grid-template-columns: 1fr} .eco-guide-page .standard-footer-logo { justify-content: center} .standard-footer nav { justify-content: center} .standard-footer small { grid-column: auto}} @media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important;animation-duration: .01ms !important;transition-duration: .01ms !important} [data-reveal] { opacity: 1;transform: none} .eco-trail-draw { animation: none;stroke-dashoffset: 0}} .landing-page { background: #fff;color: #555;font-family: Roboto, Arial, Helvetica, sans-serif} .landing-page.modal-open { overflow: hidden} .landing-page .container { width: min(calc(100% - 60px), 1200px)} .landing-page .site-header { position: fixed;inset: 0 0 auto;min-height: 0;padding: 20px 0;border: 0;background: transparent;color: #fff;backdrop-filter: none;transition: background-color .4s ease, padding .4s ease, box-shadow .4s ease} .landing-page .site-header.is-scrolled { padding: 10px 0;background: #fff;color: #333;box-shadow: 0 2px 8px rgba(0, 0, 0, .1)} .landing-page .header-inner { min-height: 100px} .landing-logo { width: 105px;height: 100px;display: block;flex: 0 0 105px;transition: transform .3s ease} .landing-logo:hover { transform: scale(1.04)} .landing-logo img { width: 100%;height: 100%;object-fit: contain} .landing-logo .logo-dark { display: none} .landing-header.is-scrolled .logo-light { display: none} .landing-header.is-scrolled .logo-dark { display: block} .landing-page .landing-nav { display: flex;flex: 1;justify-content: center;gap: 2.5rem} .landing-page .landing-nav a { color: #fff;font-size: 1rem;font-weight: 700} .landing-page .landing-header.is-scrolled .landing-nav a { color: #333} .landing-page .landing-header:not(.is-scrolled) .language-switch { color: #fff} .landing-page .landing-nav a:hover { color: #a9db67} .landing-contact { min-height: 48px;display: inline-flex;align-items: center;justify-content: center;padding: .65rem 1.6rem;border: 1px solid #fff;border-radius: 999px;color: #fff;font-family: Roboto, Arial, Helvetica, sans-serif;font-weight: 700;text-decoration: none;transition: background .25s ease, color .25s ease, border-color .25s ease} .landing-contact:hover { background: #fff;color: #333} .landing-header.is-scrolled .landing-contact { border-color: #333;color: #333} .landing-header.is-scrolled .landing-contact:hover { background: #333;color: #fff} .landing-page .menu-button { color: #fff} .landing-page .landing-header.is-scrolled .menu-button { color: #333} .landing-hero { height: 100svh;min-height: 680px;display: flex;align-items: center;background-image: linear-gradient(rgba(0,0,0,.33), rgba(0,0,0,.33)), url('https://images.unsplash.com/photo-1448375240586-882707db888b?auto=format&fit=crop&w=1920'), url('/images/cholomon-mountain.jpg');background-position: center;background-size: cover;color: #fff} .landing-hero.has-hero-image { background-image: linear-gradient(rgba(0,0,0,.33), rgba(0,0,0,.33)), var(--landing-hero-image)} .landing-hero-copy { max-width: 1180px;padding-top: 80px;animation: rise .65s ease-out both} .landing-hero h1 { margin: 0 0 1.6rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 5.35rem;font-weight: 900;line-height: 1.08} .landing-hero p { max-width: 640px;margin: 0;font-size: 1.22rem;line-height: 1.65} .landing-mission { padding: 120px 0;background: #2a3d38;color: #fff} .landing-mission-copy { max-width: 900px} .landing-mission h2 { margin: 0 0 2.5rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 2.8rem;font-weight: 800;line-height: 1.4} .landing-mission h2 span { color: #a1d99b} .landing-mission a, .landing-newsletter button, .landing-location button, .landing-contact-section button { display: inline-flex;min-height: 50px;align-items: center;justify-content: center;padding: .7rem 1.7rem;border: 1px solid rgba(255,255,255,.55);border-radius: 999px;background: transparent;color: inherit;font-weight: 800;text-decoration: none;cursor: pointer;transition: background .25s ease, color .25s ease} .landing-mission a:hover, .landing-newsletter button:hover { background: #fff;color: #2a3d38} .landing-services-title { padding: 60px 0;background: #a1d99b} .landing-services-title h2 { margin: 0;color: #2a3d38;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 3.5rem;font-weight: 900} .landing-services { height: 100svh;min-height: 720px;display: flex;flex-direction: column} .landing-service { min-height: 0;display: flex;flex: 1;align-items: flex-end;position: relative;isolation: isolate;overflow: hidden;padding: 2.5rem;background-image: var(--service-bg);background-position: center;background-size: cover;color: #fff;text-decoration: none;transition: flex .5s ease} .landing-service::before { position: absolute;inset: 0;z-index: -1;content: "";background: rgba(0,0,0,.55);transition: background .5s ease} .landing-service > div { width: min(920px, calc(100% - 90px));transition: transform .5s ease} .landing-service h3 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 2.45rem;font-weight: 800;line-height: 1.15;text-decoration: underline} .landing-service div > p { max-width: 660px;margin: .7rem 0 0;color: inherit;font-size: .98rem;line-height: 1.5;opacity: .9} .landing-service ul { max-height: 0;margin: 0;padding: 0;overflow: hidden;list-style: none;opacity: 0;transition: max-height .5s ease, margin .5s ease, opacity .5s ease} .landing-service li { margin-top: .65rem;font-size: 1rem;font-weight: 650} .landing-service > span { width: 60px;height: 60px;display: grid;place-items: center;position: absolute;right: 2.5rem;bottom: 2.5rem;border: 2px solid currentColor;border-radius: 50%;font-size: 2rem;opacity: 0;transform: translateY(18px);transition: opacity .45s ease, transform .45s ease} .landing-service:hover, .landing-service:focus-visible { flex: 2} .landing-service:nth-child(1):hover, .landing-service:nth-child(1):focus-visible, .landing-service:nth-child(3):hover, .landing-service:nth-child(3):focus-visible { color: #20332d} .landing-service:hover::before, .landing-service:focus-visible::before { background: var(--service-tint)} .landing-service:hover ul, .landing-service:focus-visible ul { max-height: 180px;margin-top: 1.2rem;opacity: 1} .landing-service:hover > span, .landing-service:focus-visible > span { opacity: 1;transform: none} .landing-journal { padding: 100px 0;background: #fdf8e9} .landing-journal-header { display: flex;align-items: end;justify-content: space-between;gap: 2rem;margin-bottom: 2.75rem} .landing-journal-header h2 { margin: 0;color: #2a3d38;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 3.5rem;font-weight: 900} .landing-journal-header p { max-width: 520px;margin: .7rem 0 0;color: #4a5b52} .journal-all { color: #2a3d38;font-weight: 800;text-decoration: none;white-space: nowrap} .journal-all:hover { text-decoration: underline} .journal-board { display: grid;grid-template-columns: 1.35fr .9fr;gap: 2.4rem 2.8rem;align-items: start} .journal-lead, .journal-tile { color: #20332d;text-decoration: none} .journal-lead img { width: 100%;aspect-ratio: 16 / 10;max-height: 420px;object-fit: cover;display: block} .journal-lead div { padding-top: 1.15rem} .journal-lead span, .journal-tile span { display: block;margin-bottom: .45rem;color: #4a5b52;font-size: .72rem;font-weight: 900;letter-spacing: .08em;text-transform: uppercase} .journal-lead h3 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(1.8rem, 2.6vw, 2.7rem);font-weight: 800;line-height: 1.15} .journal-lead p { display: -webkit-box;max-width: 46rem;margin: .9rem 0 0;overflow: hidden;color: #4a5b52;font-size: 1.05rem;line-height: 1.55;-webkit-box-orient: vertical;-webkit-line-clamp: 3} .journal-mosaic { display: grid;gap: 1.5rem 0} .journal-tile { display: grid;grid-template-columns: 148px minmax(0, 1fr);gap: 1rem;align-items: center;padding-bottom: 1.35rem;border-bottom: 1px solid rgba(42, 61, 56, .14)} .journal-tile:last-child { padding-bottom: 0;border-bottom: 0} .journal-tile img { width: 100%;height: 108px;object-fit: cover;display: block} .journal-tile h3 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 1.18rem;font-weight: 800;line-height: 1.28} .journal-lead:hover h3, .journal-tile:hover h3 { text-decoration: underline;text-underline-offset: .18em} .landing-newsletter { padding: 120px 0;background: #2a3d38;color: #fff;text-align: center} .landing-location, .landing-contact-section { padding: 120px 0;text-align: center} .landing-location { background: #fff;color: #2a3d38} .landing-contact-section { background: #fdf8e9;color: #2a3d38} .landing-newsletter h2, .landing-location h2, .landing-contact-section h2 { margin: 0 0 1rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 3.4rem;font-weight: 900} .landing-page #about, .landing-page #services, .landing-page #latest-updates, .landing-page #contact { scroll-margin-top: 118px} .landing-newsletter p, .landing-location p, .landing-contact-section p { margin: 0 0 2.2rem;font-size: 1.05rem} .landing-contact-actions { display: flex;flex-wrap: wrap;gap: 1rem;justify-content: center;align-items: center} .landing-quote-link { display: inline-flex;min-height: 50px;align-items: center;justify-content: center;padding: .7rem 1.7rem;border: 1px solid #2a3d38;border-radius: 999px;color: #2a3d38;font-weight: 800;text-decoration: none} .landing-quote-link:hover { background: #2a3d38;color: #fff} .landing-footer nav, .standard-footer nav, .editorial-footer nav { flex-wrap: wrap} .company-identity { margin: .4rem 0 0;font-size: .85rem;color: #5b635c} .landing-location button:hover, .landing-contact-section button:hover { background: #2a3d38;color: #fff} .landing-page .landing-footer { padding: 2.5rem 0;background: #fdf8e9;color: #333} .landing-footer-inner { display: grid;grid-template-columns: 120px 1fr auto;align-items: end;gap: 2rem} .landing-footer-logo { display: block;width: auto;height: 84px;overflow: visible;background: transparent} .landing-footer-logo img { display: block;width: auto;height: 84px;max-width: none;object-fit: contain} .landing-footer p { margin: 0;text-align: center;color: #666;font-size: .9rem} .landing-footer nav { display: flex;gap: 1.2rem} .landing-footer nav a { color: #333;font-weight: 800} .landing-modal { position: fixed;inset: 0;z-index: 1000;display: flex;align-items: center;justify-content: center;padding: 1.25rem;overflow-y: auto;background: rgba(0,0,0,.72);opacity: 0;visibility: hidden;transition: opacity .35s ease, visibility .35s ease} .landing-modal[data-open] { opacity: 1;visibility: visible} .landing-modal-panel { width: min(900px, 100%);position: relative;padding: 3rem;background: #fff;color: #333;opacity: 0;transform: translateY(20px);transition: opacity .35s ease .08s, transform .35s ease .08s} .landing-modal[data-open] .landing-modal-panel { opacity: 1;transform: none} .modal-close { width: 44px;height: 44px;position: absolute;top: .75rem;right: .75rem;border: 0;background: transparent;color: inherit;font-size: 2rem;cursor: pointer} .contact-panel { display: grid;grid-template-columns: .8fr 1.2fr;gap: 3rem} .landing-modal h2 { margin: 0 0 1.5rem;font-size: 2rem} .landing-modal form { display: grid;gap: 1rem} .landing-modal label { display: grid;gap: .4rem;font-weight: 700} .landing-modal input, .landing-modal textarea, .landing-modal select { width: 100%;padding: .8rem;border: 1px solid #bcc5bf;background: #fff} .landing-modal form button { min-height: 48px;border: 0;border-radius: 999px;background: #a9db67;color: #20332d;font-weight: 900;cursor: pointer} .newsletter-panel { background: #2a3d38;color: #fff} .newsletter-panel form { grid-template-columns: 1fr 1fr auto;align-items: end;margin-top: 2rem} .newsletter-thanks { margin: 1.5rem 0 0;font-size: 1.15rem;font-weight: 700} .newsletter-error { margin: 1rem 0 0;color: #ffd6d6;font-weight: 700} .map-panel { padding: .7rem} .map-panel iframe { width: 100%;height: 520px;display: block;border: 0} @media (max-width: 900px) { .landing-page .site-header { padding: 10px 0} .landing-page .header-inner { min-height: 76px} .landing-logo { width: 76px;height: 76px;flex-basis: 76px} .landing-contact { display: none} .landing-page .landing-nav { position: fixed;inset: 0;z-index: -1;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 1.8rem;padding: 6rem 1rem;background: #a1d99b;transform: translateX(100%);transition: transform .4s ease} .landing-page .landing-nav[data-open] { z-index: 1;transform: none} .landing-page .landing-nav a, .landing-page .landing-header.is-scrolled .landing-nav a { color: #fff;font-size: 1.5rem} .landing-page .menu-button { display: block;z-index: 2;margin-left: auto} .landing-page .landing-header:has(.landing-nav[data-open]) .menu-button { color: #fff} .landing-hero h1 { font-size: 3.9rem} .landing-services { height: auto;min-height: 0} .landing-service { min-height: 42svh} .landing-service:hover, .landing-service:focus-visible { flex: 1} .landing-service ul { max-height: 180px;margin-top: 1.2rem;opacity: 1} .landing-service > span { opacity: 1;transform: none} .newsletter-panel form { grid-template-columns: 1fr} .tour-grid { grid-template-columns: 1fr} .eco-story-grid, .eco-walk, .eco-steps ol, .eco-facets, .eco-booking-grid { grid-template-columns: 1fr} .eco-facts, .eco-loved ul { grid-template-columns: 1fr} .eco-walk-media { min-height: 200px} .eco-walk-copy { padding: 0} .eco-fields { grid-template-columns: 1fr} .eco-booker { position: static} .eco-cal-months { grid-template-columns: 1fr} .eco-treewalks { font-size: 1.15rem} .landing-page .container { width: min(calc(100% - 36px), 1200px)} .landing-hero { min-height: 640px} .landing-hero.has-hero-image { background-image: linear-gradient(rgba(0,0,0,.33), rgba(0,0,0,.33)), var(--landing-hero-image-mobile, var(--landing-hero-image))} .landing-hero-copy { padding-top: 60px} .landing-hero h1 { font-size: 2.65rem} .landing-hero p { font-size: 1rem} .landing-mission { padding: 80px 0} .landing-mission h2 { font-size: 2rem} .landing-services-title h2, .landing-journal-header h2, .landing-newsletter h2, .landing-location h2, .landing-contact-section h2 { font-size: 2.25rem} .landing-service { min-height: 50svh;padding: 1.5rem} .landing-service > div { width: calc(100% - 54px)} .landing-service h3 { font-size: 1.8rem} .landing-service > span { width: 48px;height: 48px;right: 1.25rem;bottom: 1.25rem} .landing-journal { padding: 2.4rem 0 2rem} .landing-journal-header { align-items: flex-start;flex-direction: column;gap: .7rem;margin-bottom: 1rem} .landing-journal-header h2 { font-size: 1.45rem;line-height: 1.15} .landing-journal-header p { max-width: none;margin-top: .3rem;font-size: .88rem;line-height: 1.4} .journal-all { font-size: .86rem} .journal-board { display: grid;grid-template-columns: 1fr;gap: 1.15rem} .journal-mosaic { display: grid;gap: 0} .journal-lead { display: grid;gap: .7rem} .journal-lead img { aspect-ratio: 16 / 9;height: auto;max-height: 168px} .journal-lead div { padding-top: 0} .journal-lead h3 { font-size: 1.22rem;line-height: 1.22} .journal-lead p { margin-top: .45rem;font-size: .92rem;-webkit-line-clamp: 2} .journal-tile { grid-template-columns: 88px minmax(0, 1fr);gap: .8rem;padding: .85rem 0} .journal-tile img { height: 68px} .journal-tile h3 { font-size: 1rem} .landing-newsletter, .landing-location, .landing-contact-section { padding: 85px 0} .landing-footer-inner { grid-template-columns: 1fr;justify-items: center;text-align: center} .contact-panel { grid-template-columns: 1fr} .landing-modal-panel { padding: 2.5rem 1.4rem 1.4rem} .map-panel iframe { height: 65svh}} @media (min-width: 640px) and (max-width: 900px) { .journal-lead img { max-height: 220px} .journal-lead h3 { font-size: 1.4rem}} .article-page { background: #f6f5ef;color: #202822;font-family: Roboto, Arial, Helvetica, sans-serif} .article-page .editorial-header { position: sticky;background: #f6f5ef;border-bottom: 1px solid #e6e1d4;backdrop-filter: none} .article-page .editorial-header .header-inner { min-height: 96px} .article-logo { display: block;width: auto;height: 88px;flex: 0 0 auto;overflow: visible;background: transparent;padding: 0;border: 0;border-radius: 0;box-shadow: none;line-height: 0} .article-logo img { display: block;width: auto;height: 88px;max-width: none;object-fit: contain;background: transparent} .article-page .site-nav a[aria-current="page"] { color: #2d6b4a;text-decoration: underline;text-underline-offset: 6px} .reading-progress { height: 3px;position: fixed;inset: 0 0 auto;z-index: 80;background: transparent} .reading-progress span { width: 0;height: 100%;display: block;background: #31a567;transition: width .08s linear} .editorial-intro { padding: 5.5rem 1rem 4rem;background: #f6f5ef} .editorial-title-wrap { width: min(100%, 1020px);margin-inline: auto} .editorial-title-wrap nav { display: flex;gap: .6rem;margin-bottom: 3rem;color: #69736c;font-size: .82rem} .editorial-title-wrap nav a { color: inherit;text-decoration: none} .editorial-category { display: inline-block;margin-bottom: 1.25rem;color: #2d6b4a;font-size: .76rem;font-weight: 900;text-transform: uppercase} .editorial-intro h1 { max-width: 960px;margin: 0;color: #17231c;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 4.15rem;font-weight: 900;line-height: 1.08} .editorial-standfirst { max-width: 800px;margin: 1.6rem 0 1.8rem;color: #536159;font-size: 1.25rem;line-height: 1.65} .editorial-meta { display: flex;flex-wrap: wrap;gap: .6rem 1.4rem;color: #68736c;font-size: .84rem} .editorial-meta > * + * { position: relative} .editorial-meta > * + *::before { position: absolute;left: -.8rem;content: "·"} .editorial-lead { width: min(calc(100% - 2rem), 1240px);margin: 0 auto;background: #dfe5de} .editorial-lead img { width: 100%;height: min(68svh, 720px);object-fit: cover} .editorial-reading-grid { display: grid;grid-template-columns: 190px minmax(0, 760px);justify-content: center;gap: 4.5rem;padding-top: 5.5rem;padding-bottom: 6rem} .editorial-aside { align-self: start;position: sticky;top: 116px;padding-top: .4rem;color: #68736c;font-size: .78rem} .editorial-aside > strong, .editorial-share strong { display: block;margin-bottom: .8rem;color: #27342c;font-size: .72rem;text-transform: uppercase} .editorial-tags { display: flex;flex-wrap: wrap;gap: .45rem} .editorial-tags span { padding: .35rem .5rem;border: 1px solid #cbd4cc} .editorial-share { display: grid;gap: .45rem;margin-top: 2.5rem;padding-top: 1.4rem;border-top: 1px solid #d3dad3} .editorial-share a { color: #3d5145;text-decoration: none} .editorial-share a:hover { color: #2d6b4a;text-decoration: underline} .article-page .editorial-body { width: 100%;min-width: 0;padding: 0;color: #29322c} .article-page .editorial-body > p:first-child { font-size: 1.3rem} .editorial-end { display: flex;align-items: center;justify-content: space-between;gap: 1rem;margin-top: 4rem;padding-top: 1.5rem;border-top: 1px solid #cfd7cf;color: #69736c;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: .82rem} .editorial-end a { color: #245f42;font-weight: 800} .editorial-related { padding: 5.5rem 0 6rem;background: #e8eee7} .editorial-related-header { display: flex;align-items: end;justify-content: space-between;gap: 2rem;margin-bottom: 2rem} .editorial-related-header h2 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 2.7rem;font-weight: 900} .editorial-related-header a { color: #245f42;font-weight: 800} .editorial-related-grid { display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1.4rem} .editorial-related-grid a { color: inherit;text-decoration: none} .editorial-related-grid img { width: 100%;aspect-ratio: 3 / 2;object-fit: cover} .editorial-related-grid span { display: block;margin-top: 1rem;color: #4d765e;font-size: .7rem;font-weight: 900} .editorial-related-grid h3 { margin: .4rem 0 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 1.45rem;font-weight: 800;line-height: 1.25} .editorial-related-grid a:hover h3 { color: #2d6b4a} .article-page .editorial-footer { padding: 2.75rem 0;border-top: 1px solid #e6e1d4;background: #fdf8e9;color: #333} .editorial-footer-inner { display: grid;grid-template-columns: auto 1fr auto;align-items: center;gap: 2rem} .editorial-footer-logo { display: block;width: auto;height: 84px;overflow: visible;background: transparent;padding: 0;border: 0;border-radius: 0;box-shadow: none;line-height: 0} .editorial-footer-logo img { display: block;width: auto;height: 84px;max-width: none;object-fit: contain;background: transparent} .editorial-footer nav { display: flex;flex-wrap: wrap;justify-content: flex-end;gap: 1.2rem} .editorial-footer nav a { color: #333;font-weight: 800;text-decoration: none} .editorial-footer nav a:hover { color: #2d6b4a} .editorial-footer p { margin: 0;text-align: center;color: #666;font-size: .9rem} @media (max-width: 850px) { .article-page .editorial-header .header-inner { min-height: 80px} .article-logo { height: 72px} .article-logo img { height: 72px} .editorial-intro { padding-top: 4rem} .editorial-intro h1 { font-size: 3.2rem} .editorial-reading-grid { grid-template-columns: minmax(0, 760px);gap: 0} .editorial-aside { display: none} .editorial-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr))}} @media (max-width: 560px) { .editorial-intro { padding: 3.25rem 1rem 2.5rem} .editorial-title-wrap nav { margin-bottom: 2rem} .editorial-intro h1 { font-size: 2.45rem} .editorial-standfirst { font-size: 1.05rem} .editorial-meta { display: grid;gap: .3rem} .editorial-meta > * + *::before { display: none} .editorial-lead { width: 100%} .editorial-lead img { height: 54svh} .editorial-reading-grid { padding-top: 3.5rem;padding-bottom: 4rem} .editorial-end { align-items: flex-start;flex-direction: column} .editorial-related { padding: 4rem 0} .editorial-related-header { align-items: flex-start;flex-direction: column} .editorial-related-header h2 { font-size: 2rem} .editorial-related-grid { grid-template-columns: 1fr} .editorial-footer-inner { grid-template-columns: 1fr;justify-items: center;text-align: center}} .ad-placement { width: min(100% - 2rem, 1120px);min-height: 90px;margin: 2rem auto;overflow: hidden;text-align: center} .article-comments { padding-top: 3.5rem;padding-bottom: 3.5rem;border-top: 1px solid var(--line)} .article-comments h2 { margin: 0 0 1.5rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: 2rem;font-weight: 800} .learning-page { --learning-photo: url("/images/learning/forest-map-background-hero.png");--learning-photo-fallback: url("/images/forest-map-hero-background.png");--learning-photo-opacity: .42;--learning-photo-position: center 48%;background-color: #f4f1e6;background-image: linear-gradient(rgba(23, 63, 44, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(23, 63, 44, .035) 1px, transparent 1px);background-size: 36px 36px;background-position: center top} .learning-page .standard-header { background: rgba(244, 241, 230, .94)} .learning-studio { overflow: clip;font-family: Roboto, Arial, Helvetica, sans-serif} .learning-hero { position: relative;isolation: isolate;overflow: hidden;padding: clamp(5.5rem, 10vw, 7.2rem) 0 clamp(2.5rem, 5vw, 3.6rem);color: var(--forest-dark);background: #f7f3e8} .learning-hero::before { position: absolute;inset: 0;z-index: 0;content: '';pointer-events: none;background-image: var(--learning-photo), var(--learning-photo-fallback);background-repeat: no-repeat, no-repeat;background-size: cover, cover;background-position: var(--learning-photo-position), center 48%;opacity: var(--learning-photo-opacity);transform: scale(1.012);transform-origin: center} .learning-hero::after { position: absolute;inset: 0;z-index: 1;content: '';pointer-events: none;background-image: linear-gradient(rgba(23, 63, 44, .038) 1px, transparent 1px), linear-gradient(90deg, rgba(23, 63, 44, .038) 1px, transparent 1px), linear-gradient(180deg, rgba(247, 243, 232, .52) 0%, rgba(247, 243, 232, .62) 58%, #f4f1e6 100%), radial-gradient(680px 300px at 5% 0%, rgba(166, 213, 158, .28), transparent 68%), radial-gradient(560px 260px at 100% 0%, rgba(246, 215, 164, .25), transparent 68%);background-size: 36px 36px, 36px 36px, auto, auto, auto;background-position: center top, center top, center, center, center} .learning-hero .container { position: relative;z-index: 2;display: grid;align-items: end;grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);gap: clamp(1.5rem, 5vw, 4rem)} .learning-badge { display: inline-flex;width: fit-content;margin-bottom: .85rem;padding: .32rem .68rem;border-radius: 999px;background: #173f2c;color: #f4f1e6;font-size: .68rem;font-weight: 900;letter-spacing: .08em;text-transform: uppercase} .learning-hero h1 { max-width: 12ch;margin: 0 0 .8rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(2.45rem, 6vw, 4.8rem);font-weight: 900;line-height: .96;letter-spacing: -.035em} .learning-hero p { max-width: 610px;margin: 0;color: #3e5146;font-size: clamp(1rem, 1.8vw, 1.12rem);line-height: 1.6} .learning-jumps { display: flex;flex-wrap: wrap;justify-content: flex-end;gap: .55rem;align-self: end} .learning-jumps a { display: inline-flex;min-height: 42px;align-items: center;padding: .48rem .85rem;border: 1px solid rgba(23, 63, 44, .28);border-radius: 999px;background: rgba(255,255,255,.72);color: #173f2c;font-size: .82rem;font-weight: 800;text-decoration: none;transition: background .2s ease, border-color .2s ease, transform .2s ease} .learning-jumps a:hover { transform: translateY(-1px);border-color: #173f2c;background: #173f2c;color: #fff} .learning-path { padding: 1.1rem 0 2.6rem} .learning-path ol { display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: .75rem;margin: 0;padding: 0;list-style: none} .learning-path li { display: grid;grid-template-columns: auto 1fr;grid-template-rows: auto auto;column-gap: .75rem;padding: .95rem 1rem;border: 1px solid rgba(23,63,44,.08);border-radius: 1rem;background: rgba(255,255,255,.82);box-shadow: 0 8px 24px rgba(23, 63, 44, .035)} .learning-path span { grid-row: 1 / 3;display: grid;width: 34px;height: 34px;place-items: center;border-radius: 50%;background: #eef5ec;color: #399d69;font-size: .68rem;font-weight: 900} .learning-path strong { display: block;font-size: .96rem;line-height: 1.25} .learning-path p { margin: .2rem 0 0;color: var(--muted);font-size: .78rem;line-height: 1.45} .learning-room { padding: 0 0 clamp(2.7rem, 5vw, 4.2rem);scroll-margin-top: 7rem} .learning-room .container, .learning-room > header, .learning-shelf { width: min(calc(100% - 2rem), var(--max));margin-inline: auto} .learning-room > header { display: grid;grid-template-columns: minmax(0, 1fr) minmax(260px, .72fr);align-items: end;gap: 1rem 2rem;margin-bottom: 1rem;padding-bottom: .85rem;border-bottom: 1px solid rgba(23,63,44,.12)} .learning-room h2 { margin: 0;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(1.55rem, 3vw, 2.15rem);font-weight: 900;letter-spacing: -.025em} .learning-room header p { justify-self: end;max-width: 52ch;margin: 0;color: var(--muted);font-size: .9rem;line-height: 1.5} .learning-shelf { display: grid;grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));gap: 1rem} .learning-card, .learning-soon { min-width: 0;border: 1px solid rgba(23,63,44,.1);border-radius: 1.25rem;background: #fff;box-shadow: 0 10px 26px rgba(23, 63, 44, .055)} .learning-card { display: grid;grid-template-rows: auto 1fr;overflow: hidden;transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease} .learning-card:hover { transform: translateY(-3px);border-color: rgba(57,157,105,.26);box-shadow: 0 16px 34px rgba(23,63,44,.09)} .learning-card-media { position: relative;display: grid;width: 100%;aspect-ratio: 16 / 9;place-items: center;overflow: hidden;background: #0c252b;text-decoration: none} .learning-card-media::after { position: absolute;inset: auto 0 0;height: 34%;content: '';pointer-events: none;background: linear-gradient(transparent, rgba(4,22,18,.14))} .learning-card-media img { display: block;width: 100%;height: 100%;object-fit: cover;object-position: center;transition: transform .35s ease} .learning-card-media[data-fit="contain"] img { object-fit: contain} .learning-card-media[data-position="top"] img { object-position: center top} .learning-card-media[data-position="bottom"] img { object-position: center bottom} .learning-card:hover .learning-card-media img { transform: scale(1.018)} .learning-card-media-placeholder { align-content: center;gap: .55rem;color: #d8e9dc;background: linear-gradient(145deg, #0d2a1c, #164b35);font-size: .7rem;font-weight: 900;letter-spacing: .06em;text-transform: uppercase} .learning-card-placeholder-icon { display: grid;width: 54px;height: 54px;place-items: center;border: 1px solid rgba(255,255,255,.18);border-radius: 17px;background: rgba(255,255,255,.08)} .learning-card-placeholder-icon svg { width: 30px;height: 30px} .learning-card-body { display: grid;align-content: start;grid-template-rows: auto auto auto 1fr auto;gap: 0;padding: 1rem 1rem .95rem} .learning-card-top { display: flex;min-width: 0;align-items: center;gap: .58rem} .learning-card-labels { display: flex;min-width: 0;flex: 1 1 auto;align-items: center;flex-wrap: wrap;gap: .38rem} .learning-icon { display: grid;width: 38px;height: 38px;flex: 0 0 38px;place-items: center;border-radius: 12px;background: #e7f0d8;color: #173f2c} .learning-icon svg { width: 22px;height: 22px} .learning-kind { color: #c56a1a;font-size: .64rem;font-weight: 900;letter-spacing: .055em;text-transform: uppercase} .learning-featured, .learning-price-chip { display: inline-flex;align-items: center;min-height: 24px;padding: .18rem .46rem;border-radius: 999px;font-size: .58rem;font-weight: 900;white-space: nowrap} .learning-featured { background: #edf6e8;color: #2f714d} .learning-price-chip { margin-left: auto;background: #173f2c;color: #fff} .learning-card h3 { margin: .8rem 0 .42rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(1.15rem, 2vw, 1.38rem);font-weight: 900;line-height: 1.12;letter-spacing: -.022em} .learning-card h3 a { color: inherit;text-decoration: none} .learning-card h3 a::after { position: absolute;inset: 0;content: ''} .learning-card { position: relative} .learning-card-summary { display: -webkit-box;min-height: 4.2em;margin: 0 0 .78rem;overflow: hidden;color: var(--muted);font-size: .86rem;line-height: 1.4;-webkit-box-orient: vertical;-webkit-line-clamp: 3} .learning-card-meta { display: grid;gap: .35rem;min-width: 0;margin-bottom: .82rem} .learning-meta-item { display: flex;min-width: 0;align-items: center;gap: .42rem;color: #45564c;font-size: .72rem;line-height: 1.3} .learning-meta-item svg { width: 15px;height: 15px;flex: 0 0 15px;color: #6a846f} .learning-meta-audience { display: -webkit-box;overflow: hidden;-webkit-box-orient: vertical;-webkit-line-clamp: 1} .learning-meta-audience svg { display: inline-block;vertical-align: -.2em;margin-right: .3rem} .learning-card-action { position: relative;z-index: 2;display: flex;align-items: center;justify-content: space-between;gap: .7rem;min-height: 38px;padding-top: .72rem;border-top: 1px solid rgba(23,63,44,.1);color: #245f42;font-size: .76rem;font-weight: 900;text-decoration: none} .learning-card-action span:last-child { font-size: 1rem;transition: transform .18s ease} .learning-card-action:hover span:last-child { transform: translateX(3px)} .learning-soon { display: grid;align-content: center;justify-items: start;min-height: 245px;gap: .65rem;padding: 1.15rem;border-style: dashed;background: rgba(255,255,255,.6)} .learning-soon strong { font-size: 1rem} .learning-soon p { margin: 0;color: var(--muted);font-size: .83rem} .learning-room[data-kind="gis"] .learning-icon, .learning-detail[data-kind="gis"] .learning-kind { background: #d9efe3;color: #145c3c} .learning-room[data-kind="quiz"] .learning-icon, .learning-detail[data-kind="quiz"] .learning-kind { background: #fde7c8;color: #9a4a10} .learning-room[data-kind="course"] .learning-icon, .learning-detail[data-kind="course"] .learning-kind { background: #e4ecfb;color: #294a86} .learning-detail { min-height: 70vh;padding: clamp(6rem, 10vw, 8rem) 0 clamp(4rem, 7vw, 6rem);background-color: #f4f1e6;background-image: linear-gradient(rgba(23, 63, 44, .032) 1px, transparent 1px), linear-gradient(90deg, rgba(23, 63, 44, .032) 1px, transparent 1px), radial-gradient(640px 280px at 94% 0%, rgba(166,213,158,.34) 0%, transparent 62%);background-size: 36px 36px, 36px 36px, auto;background-position: center top, center top, center} .learning-detail nav { display: flex;flex-wrap: wrap;gap: .45rem .6rem;margin-bottom: 1.6rem;color: #617067;font-size: .78rem} .learning-detail nav a { font-weight: 800;text-decoration: none} .learning-detail .learning-kind { display: inline-flex;padding: .3rem .62rem;border-radius: 999px} .learning-detail h1 { max-width: 15ch;margin: .62rem 0 .8rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(2.2rem, 5vw, 4rem);font-weight: 900;line-height: .98;letter-spacing: -.035em} .learning-summary { max-width: 58ch;margin: 0 0 1rem;color: #4e6156;font-size: clamp(1rem, 1.8vw, 1.1rem);line-height: 1.62} .learning-detail-grid { display: grid;grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr);gap: clamp(1.7rem, 4vw, 4rem);align-items: start} .learning-detail-copy { position: sticky;top: 7rem} .learning-pills { display: flex;flex-wrap: wrap;gap: .42rem;margin: 0 0 1rem;padding: 0;list-style: none} .learning-pills li { padding: .26rem .62rem;border: 1px solid rgba(23,63,44,.08);border-radius: 999px;background: rgba(255,255,255,.72);color: #3f5147;font-size: .7rem;font-weight: 800} .learning-gallery { display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: .7rem} .learning-media-tile { min-width: 0;margin: 0;overflow: hidden;border: 1px solid rgba(23,63,44,.1);border-radius: 1rem;background: #fff;box-shadow: 0 10px 26px rgba(23, 63, 44, .06)} .learning-media-tile.is-primary { grid-column: 1 / -1} .learning-media-open { position: relative;display: block;width: 100%;aspect-ratio: 16 / 9;padding: 0;overflow: hidden;border: 0;background: #f8faf7;cursor: zoom-in} .learning-media-open img { display: block;width: 100%;height: 100%;object-fit: cover;object-position: center;background: transparent} .learning-media-tile:not(.is-primary) .learning-media-open { aspect-ratio: 4 / 3} .learning-media-zoom { position: absolute;right: .55rem;bottom: .55rem;display: grid;width: 30px;height: 30px;place-items: center;border-radius: 50%;background: rgba(255,255,255,.9);color: #173f2c;font-size: .8rem;font-weight: 900;box-shadow: 0 4px 12px rgba(0,0,0,.12)} .learning-gallery figcaption { min-height: 3.2em;padding: .6rem .72rem .68rem;color: var(--muted);font-size: .72rem;line-height: 1.38} .learning-highlights { margin: 1rem 0 1.15rem;padding: .9rem 1rem;border: 1px solid color-mix(in srgb, #399d69 24%, transparent);border-radius: 1rem;background: color-mix(in srgb, #a6d59e 20%, #fff)} .learning-highlights h2 { margin: 0 0 .55rem;font-size: .72rem;font-weight: 900;letter-spacing: .055em;text-transform: uppercase} .learning-highlights ul { display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: .36rem .8rem;margin: 0;padding: 0;list-style: none} .learning-highlights li { position: relative;padding-left: 1.05rem;color: #244438;font-size: .78rem;line-height: 1.38} .learning-highlights li::before { position: absolute;left: 0;content: '✓';color: #399d69;font-weight: 900} .learning-play { justify-self: start;border: 0;border-radius: 999px} .learning-detail[data-kind="gis"] .learning-play { background: #145c3c;border-color: #145c3c} .learning-detail[data-kind="quiz"] .learning-play { background: #c56a1a;border-color: #c56a1a} .learning-detail[data-kind="course"] .learning-play { background: #294a86;border-color: #294a86} .learning-payment { display: grid;gap: .72rem;margin-top: 1rem;padding: 1rem;border: 1px solid color-mix(in srgb, #399d69 28%, transparent);border-radius: 1rem;background: #fff;box-shadow: 0 12px 30px rgba(23, 63, 44, .055)} .learning-payment > div:first-child { display: flex;align-items: baseline;justify-content: space-between;gap: 1rem} .learning-payment > div:first-child span { color: var(--muted);font-size: .7rem;font-weight: 900;text-transform: uppercase;letter-spacing: .05em} .learning-payment-price { color: #173f2c;font-size: 1.45rem} .learning-payment-actions { display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: .5rem} .learning-payment-button { justify-content: center;min-width: 0;border-radius: 999px;text-align: center} .learning-payment-stripe { background: #173f2c;border-color: #173f2c} .learning-payment-viva { background: #399d69;border-color: #399d69} .learning-payment small { color: var(--muted);line-height: 1.4} .learning-longform { margin-top: clamp(2.4rem, 5vw, 4rem);padding-top: clamp(1.8rem, 3vw, 3rem);border-top: 1px solid color-mix(in srgb, #173f2c 14%, transparent)} .learning-longform-copy { width: min(100%, 760px);margin-inline: auto;font-size: 1rem;line-height: 1.75} .learning-longform-copy h2 { margin: 2rem 0 .72rem;font-family: Roboto, Arial, Helvetica, sans-serif;font-size: clamp(1.4rem, 3vw, 1.9rem);line-height: 1.15} .learning-longform-copy h2:first-child { margin-top: 0} .learning-longform-copy p { margin: 0 0 1rem} .learning-longform-copy ul, .learning-longform-copy ol { display: grid;gap: .45rem;padding-left: 1.3rem} .learning-lightbox { width: min(calc(100% - 2rem), 1080px);max-height: 92vh;padding: 0;overflow: visible;border: 0;border-radius: 1.15rem;background: #071a16;color: #fff;box-shadow: 0 30px 90px rgba(0,0,0,.38)} .learning-lightbox::backdrop { background: rgba(4,14,11,.78);backdrop-filter: blur(7px)} .learning-lightbox img { display: block;width: 100%;max-height: 78vh;object-fit: contain;border-radius: 1.15rem 1.15rem 0 0} .learning-lightbox p { min-height: 0;margin: 0;padding: .75rem 1rem .9rem;color: #d9e7de;font-size: .82rem} .learning-lightbox p:empty { display: none} .learning-lightbox-close { position: absolute;z-index: 3;top: .65rem;right: .65rem;display: grid;width: 38px;height: 38px;place-items: center;border: 1px solid rgba(255,255,255,.28);border-radius: 50%;background: rgba(5,24,19,.82);color: #fff;font-size: 1.45rem;line-height: 1;cursor: pointer} @media (max-width: 900px) { .learning-hero .container { grid-template-columns: 1fr} .learning-jumps { justify-content: flex-start} .learning-path ol { grid-template-columns: 1fr} .learning-room > header { grid-template-columns: 1fr} .learning-room header p { justify-self: start} .learning-detail-grid { grid-template-columns: 1fr} .learning-detail-copy { position: static} .learning-payment-actions { grid-template-columns: 1fr}} @media (max-width: 660px) { .learning-hero { padding-top: 5.8rem} .learning-jumps { display: grid;grid-template-columns: repeat(3, minmax(0, 1fr))} .learning-jumps a { min-height: 40px;justify-content: center;padding-inline: .55rem;text-align: center;font-size: .72rem} .learning-shelf { grid-template-columns: 1fr} .learning-card { border-radius: 1.05rem} .learning-card-media { aspect-ratio: 16 / 9} .learning-card-body { padding: .9rem} .learning-card-summary { min-height: 0} .learning-detail { padding-top: 5.8rem} .learning-gallery { grid-template-columns: repeat(2, minmax(0, 1fr))} .learning-media-tile.is-primary { grid-column: 1 / -1} .learning-gallery figcaption { display: none} .learning-highlights ul { grid-template-columns: 1fr}} @media (max-width: 420px) { .learning-jumps { grid-template-columns: 1fr} .learning-gallery { gap: .5rem} .learning-media-tile { border-radius: .8rem}} .learning-payment-form { align-items: stretch} .learning-payment-fields { display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: .7rem} .learning-payment-fields label { display: grid;gap: .35rem;color: var(--muted);font-size: .8rem;font-weight: 800} .learning-payment-fields input { width: 100%;border: 1px solid rgba(23,63,44,.18);border-radius: .85rem;padding: .8rem .9rem;background: #fff;color: #173f2c;font: inherit} .learning-payment-fields input:focus { outline: 2px solid rgba(57,157,105,.3);outline-offset: 1px;border-color: #399d69} .learning-payment-form .learning-payment-button { border: 0;cursor: pointer;font: inherit} @media (max-width: 680px) { .learning-payment-fields { grid-template-columns: 1fr}} .learning-free-taste { display: grid;grid-template-columns: minmax(0, 1fr) auto;align-items: center;gap: 1rem;margin-top: 1.05rem;padding: 1rem;border: 1px solid color-mix(in srgb, #399d69 34%, transparent);border-radius: 1rem;background: linear-gradient(135deg, color-mix(in srgb, #a6d59e 28%, #fff), #fff 72%);box-shadow: 0 12px 30px rgba(23, 63, 44, .055)} .learning-free-taste > div { display: grid;gap: .2rem} .learning-free-taste span { color: #399d69;font-size: .66rem;font-weight: 950;letter-spacing: .075em;text-transform: uppercase} .learning-free-taste strong { color: #173f2c;font-size: 1rem} .learning-free-taste small { color: #60736a;line-height: 1.35} .learning-preview-button { min-height: 44px;padding-inline: 1rem;border: 1px solid #399d69;border-radius: 999px;background: #fff;color: #245f42;white-space: nowrap} .learning-preview-button:hover { background: #399d69;color: #fff} .learning-payment-heading { display: flex !important;align-items: center !important;justify-content: space-between !important;gap: 1rem !important} .learning-payment-heading > div { display: grid;gap: .16rem} .learning-payment-heading > div > span { color: #399d69 !important;font-size: .66rem !important;font-weight: 950 !important;letter-spacing: .07em !important;text-transform: uppercase !important} .learning-payment-heading b { color: #173f2c;font-size: .98rem;line-height: 1.25} .learning-payment-heading small { color: #60736a;font-size: .72rem} .learning-payment-button { display: grid;gap: .05rem;min-height: 50px;align-content: center} .learning-payment-button > span { font-size: .9rem;font-weight: 950} .learning-payment-button > small { color: rgba(255,255,255,.74);font-size: .6rem;font-weight: 800} .learning-recover-link { justify-self: start;color: #35664e;font-size: .72rem;font-weight: 800;text-decoration-thickness: 1px;text-underline-offset: .2em} @media (max-width: 680px) { .learning-free-taste { grid-template-columns: 1fr} .learning-preview-button { width: 100%}} .learning-hero, .learning-detail { isolation: isolate;overflow: hidden} .learning-hero > .container, .learning-detail > .container { position: relative;z-index: 2} .learning-ambient-map { position: absolute;z-index: 0;inset: 0;overflow: hidden;pointer-events: none;color: #173f2c;opacity: .74} .learning-ambient-svg { position: absolute;width: max(100%, 1180px);height: 100%;min-height: 100%;left: 50%;top: 50%;overflow: visible;transform: translate(-50%, -50%) scale(1.015);animation: learningAmbientDrift 38s ease-in-out infinite alternate} .ambient-contour { fill: none;stroke: currentColor;stroke-width: 1.25;stroke-linecap: round;opacity: .08;vector-effect: non-scaling-stroke} .ambient-contour--2 { opacity: .063} .ambient-contour--3 { opacity: .05} .ambient-contour--minor { opacity: .032} .ambient-contours { animation: learningContourFloat 28s ease-in-out infinite alternate} .ambient-parcel { fill: rgba(57, 157, 105, .018);stroke: currentColor;stroke-width: 1.15;stroke-dasharray: 3 8;opacity: .09;vector-effect: non-scaling-stroke} .ambient-parcel--1 { animation: learningParcelBreathe 12s ease-in-out -1s infinite} .ambient-parcel--2 { animation: learningParcelBreathe 15s ease-in-out -5s infinite} .ambient-parcel--extra { animation: learningParcelBreathe 17s ease-in-out -9s infinite} .ambient-greece-group { transform-box: fill-box;transform-origin: center;animation: learningGreeceBreathe 18s ease-in-out infinite} .ambient-greece-land { fill: rgba(57, 157, 105, .075);stroke: #173f2c;stroke-width: 1.45;stroke-linejoin: round;opacity: .24;vector-effect: non-scaling-stroke} .ambient-greece-eco { opacity: .78} .ambient-eco-gridlines { fill: none;stroke: #173f2c;stroke-width: .75;opacity: .035;vector-effect: non-scaling-stroke} .ambient-eco-scan { fill: rgba(166, 213, 158, .16);opacity: .32;transform: translateY(-150px);animation: learningEcoScan 14s ease-in-out infinite} .ambient-river { fill: none;stroke: #4c8f9c;stroke-width: 1.7;stroke-linecap: round;stroke-dasharray: 3 8;opacity: .34;vector-effect: non-scaling-stroke;animation: learningRiverFlow 20s linear infinite} .ambient-river--2 { animation-duration: 24s;animation-direction: reverse} .ambient-river--3 { animation-duration: 18s} .ambient-river--4 { animation-duration: 22s;animation-direction: reverse} .ambient-lake { fill: rgba(76, 143, 156, .28);stroke: #4c8f9c;stroke-width: 1;opacity: .42;vector-effect: non-scaling-stroke} .ambient-forest-cluster { fill: #399d69;stroke: #173f2c;stroke-width: .45;opacity: .30;transform-box: fill-box;transform-origin: center;animation: learningForestBreathe 8s ease-in-out infinite} .ambient-forest-cluster--2 { animation-delay: -1.4s} .ambient-forest-cluster--3 { animation-delay: -2.8s} .ambient-forest-cluster--4 { animation-delay: -4.2s} .ambient-forest-cluster--5 { animation-delay: -5.6s} .ambient-forest-cluster--6 { animation-delay: -7s} .ambient-island-dots { fill: #173f2c;opacity: .11} .ambient-eco-route-shadow, .ambient-eco-route, .ambient-route-shadow, .ambient-route { fill: none;vector-effect: non-scaling-stroke} .ambient-eco-route-shadow, .ambient-route-shadow { stroke: rgba(255, 255, 255, .72);stroke-width: 4;opacity: .11} .ambient-eco-route, .ambient-route { stroke: #399d69;stroke-width: 1.75;stroke-linecap: round;stroke-dasharray: 4 14;opacity: .26;animation: learningRouteTravel 20s linear infinite} .ambient-eco-route { stroke-width: 2;opacity: .31;animation-duration: 16s} .ambient-waypoint { fill: none;stroke: #399d69;stroke-width: 1.3;opacity: .29;vector-effect: non-scaling-stroke} .ambient-waypoint path { opacity: .38} .ambient-waypoint-ring { transform-box: fill-box;transform-origin: center;animation: learningWaypointPulse 6s ease-out infinite} .ambient-waypoint--2 .ambient-waypoint-ring, .ambient-waypoint--g2 .ambient-waypoint-ring { animation-delay: -1.5s} .ambient-waypoint--g3 .ambient-waypoint-ring { animation-delay: -3s} .ambient-waypoint--g4 .ambient-waypoint-ring { animation-delay: -4.5s} .ambient-waypoint-dot { fill: #399d69;stroke: none} .ambient-leaf { fill: rgba(57, 157, 105, .44);stroke: #173f2c;stroke-width: 1;opacity: .24;transform-box: fill-box;transform-origin: center;animation: learningLeafDrift 11s ease-in-out infinite alternate} .ambient-leaf--2 { animation-delay: -4s;animation-duration: 13s} .ambient-leaf--3 { animation-delay: -7s;animation-duration: 15s} .ambient-scale { fill: none;stroke: currentColor;stroke-width: 1.2;opacity: .08;vector-effect: non-scaling-stroke} @keyframes learningAmbientDrift { from { transform: translate(-50.5%, -50.3%) scale(1.015)} to { transform: translate(-49.5%, -49.7%) scale(1.03)}} @keyframes learningContourFloat { from { transform: translate3d(-7px, -3px, 0)} to { transform: translate3d(8px, 4px, 0)}} @keyframes learningGreeceBreathe { 0%, 100% { opacity: .88;transform: translate3d(0, 0, 0) scale(1)} 50% { opacity: 1;transform: translate3d(0, -2px, 0) scale(1.006)}} @keyframes learningEcoScan { 0%, 12% { transform: translateY(-170px);opacity: 0} 24% { opacity: .30} 72% { opacity: .22} 86%, 100% { transform: translateY(650px);opacity: 0}} @keyframes learningRiverFlow { to { stroke-dashoffset: -130}} @keyframes learningRouteTravel { to { stroke-dashoffset: -190}} @keyframes learningWaypointPulse { 0%, 18% { opacity: .12;transform: scale(.76)} 52% { opacity: .42;transform: scale(1.12)} 100% { opacity: 0;transform: scale(1.58)}} @keyframes learningForestBreathe { 0%, 100% { opacity: .19;transform: scale(.97)} 50% { opacity: .36;transform: scale(1.025)}} @keyframes learningLeafDrift { from { opacity: .13;transform: translate3d(-2px, 2px, 0) rotate(-8deg)} to { opacity: .30;transform: translate3d(5px, -7px, 0) rotate(8deg)}} @keyframes learningParcelBreathe { 0%, 100% { opacity: .045} 50% { opacity: .12}} @media (max-width: 1080px) { .learning-ambient-map { opacity: .66} .learning-ambient-svg { width: 1420px;left: 55%} .ambient-parcel--extra, .ambient-contour--minor, .ambient-forest-cluster--6, .ambient-leaf--3 { display: none}} @media (max-width: 760px) { .learning-ambient-map { opacity: .52} .learning-ambient-svg { width: 1250px;left: 62%} .ambient-parcel--2, .ambient-scale, .ambient-route-layer--field, .ambient-waypoints--field, .ambient-forest-cluster--1, .ambient-forest-cluster--3, .ambient-forest-cluster--5, .ambient-leaf--2, .ambient-river--3, .ambient-river--4 { display: none} .ambient-greece-land { opacity: .20} .ambient-eco-route { opacity: .23} .ambient-contour { opacity: .05}} @media (max-width: 520px) { .learning-ambient-map { opacity: .42} .learning-ambient-svg { width: 1120px;left: 67%} .ambient-contours, .ambient-parcels, .ambient-leaves, .ambient-eco-gridlines, .ambient-waypoint--g1, .ambient-waypoint--g3, .ambient-waypoint--g4, .ambient-forest-cluster--4 { display: none} .ambient-greece-land { opacity: .18} .ambient-river { opacity: .25}} @media (prefers-reduced-motion: reduce) { .learning-ambient-svg, .ambient-contours, .ambient-parcel, .ambient-greece-group, .ambient-eco-scan, .ambient-river, .ambient-forest-cluster, .ambient-eco-route, .ambient-route, .ambient-waypoint-ring, .ambient-leaf { animation: none !important} .ambient-eco-scan { display: none} .ambient-waypoint-ring { opacity: .18;transform: none}} @media (max-width: 900px) { .learning-page { --learning-photo-opacity: .34;--learning-photo-position: 58% 46%}} @media (max-width: 600px) { .learning-page { --learning-photo-opacity: .27;--learning-photo-position: 62% center} .learning-hero::before { transform: scale(1.02)}} .legal-page, .quote-page { background: #f6f5ef;color: #202822} .legal-doc, .quote-doc { padding: 4rem 0 5rem} .legal-doc-inner, .quote-hero { max-width: 760px} .legal-doc h1, .quote-hero h1 { margin: .4rem 0 1rem;font-size: clamp(2rem, 4vw, 3.2rem);font-weight: 900} .legal-doc-body { display: grid;gap: 1rem;font-size: 1.05rem;line-height: 1.65} .legal-doc-body h2 { margin: 1.6rem 0 0;font-size: 1.25rem} .legal-doc-body ul { margin: 0;padding-left: 1.2rem} .quote-hero p { max-width: 62ch;color: #445148} .quote-layout { display: grid;grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr);gap: 2rem;align-items: start;margin-top: 2.5rem} .quote-form, .quote-summary { display: grid;gap: 1rem;padding: 1.5rem;background: #fff;border-radius: 1.25rem;box-shadow: 0 12px 32px rgba(23, 63, 44, .08)} .quote-form label, .quote-contact label { display: grid;gap: .35rem;font-weight: 700} .quote-form input, .quote-form select, .quote-form textarea { width: 100%;padding: .75rem .85rem;border: 1px solid #bcc5bf;font: inherit} .quote-check { display: flex !important;align-items: center;gap: .6rem;font-weight: 700} .quote-check input { width: auto} .quote-contact { display: grid;gap: 1rem;margin: .5rem 0 0;padding: 1rem 0 0;border: 0;border-top: 1px solid #e6e1d4} .quote-contact legend { font-size: 1.15rem;font-weight: 900} .quote-honey { position: absolute;left: -9999px;height: 0;overflow: hidden} .quote-form button, .quote-form [data-quote-submit] { min-height: 48px;border: 0;border-radius: 999px;background: #a9db67;color: #20332d;font-weight: 900;cursor: pointer} .quote-summary h2 { margin: 0} .quote-summary dl { display: grid;gap: .75rem;margin: 0} .quote-summary div { display: flex;justify-content: space-between;gap: 1rem} .quote-summary dt { color: #5b635c} .quote-summary dd { margin: 0;font-weight: 800} .quote-disclaimer, .quote-error, .quote-success { margin: 0;font-size: .95rem} .quote-error { color: #8a1f1f} .quote-success { color: #1d5a32} @media (max-width: 800px) { .quote-layout { grid-template-columns: 1fr}}