:root {
  --paper: #faf9f5;
  --paper-dark: #edf1ec;
  --white: #fff;
  --ink: #20352e;
  --muted: #687870;
  --line: rgba(32, 53, 46, .13);
  --forest: #315e50;
  --forest-light: #dfeae2;
  --sage: #e8f0ea;
  --sand: #f0e5d7;
  --mist: #e8f0f1;
  --coral: #c97b5f;
  --private: #c97b5f;
  --camping: #4d7c69;
  --shell: min(1180px, calc(100% - 48px));
  --wide: min(1440px, calc(100% - 24px));
  font-family: "Avenir Next", Avenir, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--paper);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 108px; }
body { margin: 0; min-width: 320px; background: var(--paper); color: var(--ink); }
body.nav-open { overflow: hidden; }
img, svg { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a, select { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }

.screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus { position: fixed !important; z-index: 9999; top: 12px; left: 12px; width: auto; height: auto; clip: auto; border-radius: 8px; padding: 12px 15px; background: var(--forest); color: #fff; }
:focus-visible { outline: 3px solid rgba(201,123,95,.55); outline-offset: 3px; }
.shell { width: var(--shell); margin-inline: auto; }
.shell-wide { width: var(--wide); margin-inline: auto; }
.section-space { padding-block: clamp(70px, 8vw, 110px); }
.section-space--small { padding-block: clamp(48px, 6vw, 78px); }

.site-header { position: sticky; z-index: 2000; top: 0; border-bottom: 1px solid var(--line); background: rgba(250,249,245,.94); backdrop-filter: blur(14px); }
.admin-bar .site-header { top: 32px; }
.site-header__inner { display: flex; min-height: 94px; align-items: center; justify-content: space-between; gap: 28px; }
.brand-logo-link, .custom-logo-link { display: inline-flex; flex: 0 0 auto; align-items: center; }
.brand-logo { width: auto; height: auto; }
.brand-logo--header { width: 126px; }
.custom-logo { width: auto; max-width: 220px; max-height: 74px; }
.site-nav__list { display: flex; align-items: center; gap: 30px; margin: 0; padding: 0; list-style: none; }
.site-nav a { position: relative; color: #4d5b56; font-size: 13px; font-weight: 650; }
.site-nav a::after { position: absolute; right: 0; bottom: -8px; left: 0; transform: scaleX(0); height: 1px; background: var(--ink); content: ""; transform-origin: right; transition: transform .22s ease; }
.site-nav a:hover::after, .site-nav .current-menu-item a::after { transform: scaleX(1); transform-origin: left; }
.nav-toggle { display: none; width: 44px; height: 44px; cursor: pointer; border: 0; background: transparent; }
.nav-toggle i { display: block; width: 21px; height: 1.5px; margin: 6px auto; background: var(--ink); transition: .25s ease; }

.eyebrow { margin: 0 0 18px; color: var(--coral); font-size: 11px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
h1, h2, h3, p { overflow-wrap: break-word; }
.home-hero h1, .page-hero h1, .section-intro h2, .quiet-cta h2, .recommend-heading h2, .social-section h2 {
  margin: 0; font-size: clamp(36px, 4.6vw, 58px); font-weight: 620; letter-spacing: -.038em; line-height: 1.05;
}
.lead { max-width: 700px; margin: 22px 0 0; color: #46544f; font-size: clamp(17px, 1.7vw, 20px); letter-spacing: -.012em; line-height: 1.62; }
.button-row { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 34px; }
.button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; cursor: pointer; border: 0; border-radius: 999px; padding: 0 21px; font-size: 13px; font-weight: 750; transition: transform .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.button--dark { background: var(--forest); color: #fff; }
.button--dark:hover { background: #244a3e; }
.button--light { background: #fff; color: var(--forest); }
.text-link { display: inline-flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--ink); padding: 8px 0 7px; font-size: 13px; font-weight: 720; }
.text-link span { color: var(--coral); font-size: 18px; }

.home-hero { display: grid; grid-template-columns: .92fr 1.08fr; min-height: min(780px, calc(100svh - 76px)); align-items: center; gap: clamp(42px, 6vw, 88px); padding-block: clamp(58px, 7vw, 92px); }
.home-hero__copy { max-width: 600px; }
.home-hero__editor > :first-child { margin-top: 0; }
.home-hero__editor > :last-child { margin-bottom: 0; }
.home-hero__media { position: relative; aspect-ratio: 4 / 4.35; overflow: hidden; border-radius: 22px; background: var(--sage); background-position: center; background-size: cover; }
.home-hero__media::after { position: absolute; inset: 0; border: 1px solid rgba(20,33,29,.1); content: ""; pointer-events: none; }
.home-hero__media.has-image::before { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(14,34,27,.42)); content: ""; }
.calm-landscape { position: absolute; inset: 0; overflow: hidden; background: linear-gradient(180deg, #e8f0f1 0 52%, #a9c4b7 52% 100%); }
.calm-landscape::before { position: absolute; top: 14%; right: 15%; width: 22%; aspect-ratio: 1; border-radius: 50%; background: #f3dcc0; content: ""; }
.calm-landscape span { position: absolute; right: -10%; bottom: 34%; width: 90%; height: 34%; transform: rotate(-7deg); border-radius: 50% 0 0; background: #c7d9cf; }
.calm-landscape i { position: absolute; right: -15%; bottom: 16%; width: 120%; height: 35%; transform: rotate(5deg); border-radius: 50% 0 0; background: #6f9b88; }
.calm-landscape b { position: absolute; bottom: 7%; left: 6%; color: rgba(255,255,255,.18); font-size: clamp(43px, 7vw, 90px); font-weight: 780; letter-spacing: -.07em; line-height: .8; }
.media-caption { position: absolute; z-index: 2; right: 20px; bottom: 20px; border: 1px solid rgba(255,255,255,.55); padding: 10px 12px; background: rgba(255,255,255,.76); color: var(--ink); font-size: 11px; font-weight: 700; backdrop-filter: blur(12px); }

.proof-line { border-block: 1px solid var(--line); }
.proof-line__inner { display: grid; grid-template-columns: repeat(5, 1fr); }
.proof-stat { display: grid; min-height: 98px; grid-template-columns: 44px minmax(0,1fr); align-items: center; gap: 13px; border-left: 1px solid var(--line); padding: 18px 20px; color: var(--muted); }
.proof-stat:first-child { border-left: 0; }
.proof-stat__icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 14px; box-shadow: 0 7px 18px rgba(32,53,46,.1); }
.proof-stat__icon svg { width: 22px; height: 22px; overflow: visible; fill: none; stroke: #fff; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.proof-stat__icon svg .is-filled { fill: #fff; stroke: none; }
.proof-stat__icon--places { background: #6f9b88; }
.proof-stat__icon--instagram { background: linear-gradient(135deg, #f7a34b 0%, #df3f78 52%, #7654c9 100%); }
.proof-stat__icon--youtube { background: #ff0033; }
.proof-stat__icon--facebook { background: #1877f2; }
.proof-stat__icon--tiktok { background: #111; }
.private-place-expertise { padding-top: clamp(55px, 7vw, 85px); }
.private-place-expertise__layout { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: start; gap: clamp(42px, 8vw, 110px); border-block: 1px solid var(--line); padding-block: clamp(35px, 5vw, 58px); }
.private-place-expertise h2 { max-width: 620px; margin: 0; font-size: clamp(31px, 4.1vw, 51px); font-weight: 620; letter-spacing: -.035em; line-height: 1.08; }
.private-place-expertise__layout p { max-width: 650px; margin: 0 0 13px; color: #53615b; font-size: 14px; line-height: 1.65; }
.private-place-expertise__layout .text-link { margin-top: 9px; }
.proof-stat__copy { display: flex; min-width: 0; align-items: flex-start; flex-direction: column; gap: 4px; }
.proof-stat__copy strong { color: var(--ink); font-size: 24px; font-weight: 650; letter-spacing: -.025em; line-height: 1; }
.proof-stat__copy > span { font-size: 10px; line-height: 1.35; }
.proof-stat--channel { transition: background .2s ease; }
.proof-stat--channel:hover { background: var(--sage); }

.home-positioning { border-block: 1px solid var(--line); background: linear-gradient(135deg, #eef3ee 0%, #f8f1e8 100%); }
.home-positioning__intro { max-width: 900px; }
.home-positioning__intro h2 { max-width: 880px; margin: 0; font-size: clamp(32px, 4.1vw, 52px); font-weight: 620; letter-spacing: -.045em; line-height: 1.06; }
.home-positioning__lead { max-width: 770px; margin: 23px 0 0; color: #4a5952; font-size: clamp(17px, 1.8vw, 21px); line-height: 1.58; }
.home-positioning__grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(45px, 8vw, 125px); margin-top: 52px; }
.home-positioning__story { border-top: 1px solid var(--line); padding-top: 22px; }
.home-positioning__story > p:not(.eyebrow) { max-width: 500px; margin: 0 0 18px; color: #4b5953; font-size: 15px; line-height: 1.72; }
.home-positioning__story > p strong { color: var(--ink); font-weight: 750; }
.home-positioning__story-photo { width: min(100%, 230px); margin: 22px 0 8px; }
.home-positioning__story-photo img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 12px; }
.home-positioning__story .text-link { margin-top: 5px; }
.home-values-list { border-top: 1px solid var(--line); }
.home-value { display: grid; grid-template-columns: 42px 1fr; gap: 18px; border-bottom: 1px solid var(--line); padding: 21px 0; }
.home-value > span { color: var(--coral); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.home-value h3 { margin: 0; font-size: 20px; font-weight: 680; letter-spacing: -.025em; line-height: 1.2; }
.home-value p { max-width: 650px; margin: 8px 0 0; color: #53615b; font-size: 13px; line-height: 1.58; }
.home-value a { display: inline-flex; align-items: center; gap: 9px; margin-top: 13px; border-bottom: 1px solid var(--ink); padding-bottom: 4px; font-size: 12px; font-weight: 760; }
.home-value a span { color: var(--coral); font-size: 16px; }
.home-value--cooperation { border-bottom: 0; }

.section-intro { max-width: 760px; }
.section-intro h2, .quiet-cta h2, .recommend-heading h2, .social-section h2 { font-size: clamp(30px, 3.5vw, 46px); }
.about-people-intro { display: grid; grid-template-columns: minmax(250px, .7fr) minmax(0, 1.3fr); align-items: start; gap: clamp(28px, 6vw, 84px); }
.about-people-intro__heading { position: sticky; top: 126px; max-width: 360px; }
.about-people-intro__heading h2 { margin: 0; font-size: clamp(30px, 3.5vw, 46px); font-weight: 620; letter-spacing: -.038em; line-height: 1.05; }
.about-people-intro__heading p:last-child { max-width: 330px; margin: 17px 0 0; color: #53615b; font-size: 14px; line-height: 1.65; }
.about-people-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: start; }
.about-people-gallery--intro { grid-template-columns: minmax(0, 1fr); max-width: 360px; }
.about-people-gallery--later { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 700px; margin-top: 30px; }
.about-people-gallery__item { min-width: 0; margin: 0; overflow: hidden; border-radius: 16px; background: var(--sage); }
.about-people-gallery__item img { display: block; width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
.about-people-intro__visual { max-width: 420px; }
.about-quick-links { margin-top: 16px; border: 1px solid #cbd9cf; border-radius: 17px; padding: 20px 21px 8px; background: linear-gradient(135deg, #e8f1eb, #f4e9df); }
.about-quick-links > .eyebrow { margin-bottom: 2px; font-size: 9px; }
.about-quick-links__item { padding-block: 15px 18px; }
.about-quick-links__item + .about-quick-links__item { border-top: 1px solid rgba(32,53,46,.13); }
.about-quick-links__item h3 { margin: 0; font-size: 20px; font-weight: 680; letter-spacing: -.025em; line-height: 1.2; }
.about-quick-links__item p { max-width: 340px; margin: 8px 0 0; color: #53615b; font-size: 12px; line-height: 1.55; }
.about-quick-links__item .text-link { margin-top: 10px; padding-top: 0; font-size: 11px; }
.route-list { margin-top: 42px; border-top: 1px solid var(--line); }
.route-item { display: grid; grid-template-columns: 56px 1fr 32px; align-items: center; gap: 22px; border-bottom: 1px solid var(--line); padding: 27px 8px; transition: padding .25s ease, background .25s ease; }
.route-item:hover { padding-inline: 20px; background: rgba(255,255,255,.45); }
.route-number { color: var(--coral); font-size: 12px; font-weight: 760; }
.route-item p { margin: 0 0 7px; color: var(--muted); font-size: 11px; font-weight: 720; letter-spacing: .1em; text-transform: uppercase; }
.route-item h3 { margin: 0; font-size: clamp(23px, 2.5vw, 32px); font-weight: 620; letter-spacing: -.025em; }
.route-item div > span { display: block; max-width: 670px; margin-top: 9px; color: var(--muted); font-size: 14px; line-height: 1.5; }
.route-item > i { color: var(--coral); font-size: 27px; font-style: normal; }

.home-instagram { padding-block: clamp(70px, 8vw, 110px); background: linear-gradient(135deg, #e7f0eb, #f4e8df); }
.home-instagram__layout { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr); align-items: start; gap: clamp(38px, 6vw, 82px); }
.instagram-profile-column { display: grid; align-content: start; gap: 28px; min-width: 0; }
.instagram-profile { display: flex; align-items: flex-start; gap: 22px; }
.instagram-avatar { display: grid; width: 72px; min-width: 72px; aspect-ratio: 1; place-items: center; border: 5px solid rgba(255,255,255,.72); border-radius: 50%; background: var(--forest); color: #fff; box-shadow: 0 9px 28px rgba(32,53,46,.14); font-family: Georgia, serif; font-size: 35px; }
.instagram-avatar img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; object-position: center 31%; }
.instagram-profile__copy h2 { margin: 0; font-size: clamp(29px, 3.1vw, 43px); font-weight: 640; letter-spacing: -.04em; line-height: 1.06; }
.instagram-profile__copy > p:not(.eyebrow) { max-width: 470px; margin: 18px 0; color: #4d5d56; font-size: 14px; line-height: 1.65; }
.instagram-profile__meta { display: flex; align-items: baseline; gap: 8px; margin-bottom: 24px; }
.instagram-profile__meta strong { font-size: 22px; font-weight: 680; letter-spacing: -.03em; }
.instagram-profile__meta span { color: var(--muted); font-size: 11px; }
.instagram-profile .button { min-height: 45px; padding-inline: 17px; font-size: 11px; }
.instagram-profile-shot { display: block; overflow: hidden; border: 1px solid rgba(32,53,46,.13); border-radius: 18px; background: rgba(255,255,255,.78); box-shadow: 0 14px 36px rgba(32,53,46,.08); transition: transform .25s ease, box-shadow .25s ease; }
.instagram-profile-shot:hover { transform: translateY(-3px); box-shadow: 0 18px 42px rgba(32,53,46,.14); }
.instagram-profile-shot__label { display: flex; min-height: 50px; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 15px; }
.instagram-profile-shot__label .eyebrow { margin: 0; font-size: 9px; letter-spacing: .12em; }
.instagram-profile-shot__label strong { font-size: 12px; font-weight: 760; white-space: nowrap; }
.instagram-profile-shot__label > span:last-child { color: var(--coral); font-size: 10px; font-weight: 740; white-space: nowrap; }
.instagram-profile-shot__image { display: flex; justify-content: center; padding: 12px 14px 18px; border-top: 1px solid rgba(32,53,46,.1); background: rgba(248,250,246,.74); }
.instagram-profile-shot img { display: block; width: auto; max-width: 100%; max-height: 500px; aspect-ratio: auto; object-fit: contain; object-position: top center; border-radius: 9px; box-shadow: 0 5px 16px rgba(32,53,46,.1); }
.instagram-selection { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 13px; }
.instagram-card { overflow: hidden; border: 1px solid rgba(32,53,46,.12); border-radius: 17px; background: rgba(255,255,255,.7); }
.instagram-card > a { display: block; height: 100%; }
.instagram-card__media { position: relative; display: grid; aspect-ratio: 4/5; place-items: center; overflow: hidden; background: linear-gradient(145deg, #92b1a2, #d8a690); }
.instagram-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.instagram-card:hover .instagram-card__media img { transform: scale(1.025); }
.instagram-card__media > span { color: rgba(255,255,255,.78); font-size: 25px; font-weight: 760; letter-spacing: -.04em; }
.instagram-card__media > i { position: absolute; right: 12px; bottom: 12px; display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: rgba(255,255,255,.88); color: var(--forest); font-size: 11px; font-style: normal; }
.instagram-card__copy { padding: 17px; }
.instagram-card__copy > p { margin: 0 0 8px; color: var(--coral); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.instagram-card__copy h3 { margin: 0; font-size: 17px; font-weight: 650; letter-spacing: -.025em; line-height: 1.18; }
.instagram-card__copy > div { margin-top: 10px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.instagram-card__copy > strong { display: block; margin-top: 12px; font-size: 10px; }
.instagram-empty { display: grid; min-height: 0; grid-template-columns: minmax(0,1fr) 118px; align-items: center; gap: 24px; overflow: hidden; border: 1px solid rgba(32,53,46,.12); border-radius: 18px; padding: clamp(22px, 3vw, 34px); background: rgba(255,255,255,.55); }
.instagram-empty__copy > p:not(.eyebrow) { max-width: 530px; margin: 0; font-size: clamp(18px, 2.1vw, 27px); font-weight: 590; letter-spacing: -.035em; line-height: 1.25; }
.instagram-empty__copy .eyebrow { margin-bottom: 11px; }
.instagram-empty__copy .text-link { margin-top: 19px; }
.instagram-empty__visual { align-self: stretch; min-height: 185px; border-radius: 12px; background: var(--sage); }
.instagram-empty__visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; }

.home-story { padding-block: clamp(70px, 8vw, 110px); background: var(--paper-dark); }
.home-story__layout { display: grid; grid-template-columns: .65fr 1.35fr; align-items: center; gap: clamp(55px, 9vw, 145px); }
.story-index { position: relative; display: grid; aspect-ratio: 1; place-items: center; border-radius: 50%; background: var(--forest); color: #fff; }
.story-index > img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; object-position: center 31%; }
.story-index small { position: absolute; transform: translate(75%, 145%); color: rgba(255,255,255,.65); font-size: 10px; font-weight: 720; letter-spacing: .12em; line-height: 1.5; text-transform: uppercase; }
.home-story blockquote { max-width: 780px; margin: 0; font-size: clamp(27px, 3.4vw, 44px); font-weight: 580; letter-spacing: -.03em; line-height: 1.2; }
.home-story__copy > p:not(.eyebrow) { max-width: 650px; margin: 28px 0 18px; color: #4f5e58; font-size: 16px; line-height: 1.7; }

.quiet-cta { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; border-radius: 2px; padding-inline: clamp(28px, 6vw, 78px); background: var(--forest); color: #fff; }
.quiet-cta .eyebrow { color: #a9cdbf; }
.quiet-cta h2 { max-width: 760px; }

.page-hero { padding-block: clamp(68px, 8vw, 110px); }
.page-hero--compact { padding-bottom: clamp(48px, 6vw, 74px); }
.page-hero h1 { max-width: 1080px; }
.page-hero .lead { max-width: 830px; }
.editable-hero-content > :first-child, .recommend-intro > :first-child { margin-top: 0; }
.editable-hero-content > :last-child, .recommend-intro > :last-child { margin-bottom: 0; }

.fact-band { border-block: 1px solid var(--line); background: rgba(255,255,255,.35); }
.fact-band__grid { display: grid; grid-template-columns: repeat(5, 1fr); }
.fact-band__grid div { min-height: 125px; border-left: 1px solid var(--line); padding: 26px 20px; }
.fact-band__grid div:first-child { border-left: 0; }
.fact-band dt { color: var(--muted); font-size: 10px; font-weight: 760; letter-spacing: .13em; text-transform: uppercase; }
.fact-band dd { margin: 12px 0 0; font-size: 18px; font-weight: 680; letter-spacing: -.03em; line-height: 1.3; }
.editorial-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(60px, 10vw, 150px); }
.editorial-copy { color: #43514c; font-size: 18px; line-height: 1.75; }
.editorial-copy p { margin: 0 0 24px; }
.project-section { padding-block: clamp(75px, 9vw, 120px); background: var(--forest); color: #fff; }
.project-section .eyebrow { color: #9bc4b4; }
.project-rows { margin: 45px 0 0; padding: 0; border-top: 1px solid rgba(255,255,255,.2); list-style: none; }
.project-rows li { display: grid; grid-template-columns: 75px 1fr; gap: 26px; border-bottom: 1px solid rgba(255,255,255,.2); padding: 26px 0; }
.project-rows li > span { color: #9bc4b4; font-size: 11px; font-weight: 800; }
.project-rows h3 { margin: 0; font-size: 22px; font-weight: 630; letter-spacing: -.035em; }
.project-rows p { margin: 7px 0 0; color: rgba(255,255,255,.65); font-size: 14px; line-height: 1.5; }
.video-section .section-intro { max-width: 900px; }
.video-consent { position: relative; display: grid; aspect-ratio: 16/9; margin-top: 45px; place-items: center; overflow: hidden; background: radial-gradient(circle at 25% 20%, #3f7462, transparent 40%), #102f27; color: #fff; text-align: center; }
.video-consent > div { max-width: 530px; padding: 30px; }
.video-consent > div > span { display: grid; width: 58px; height: 58px; margin: 0 auto 18px; place-items: center; border-radius: 50%; background: var(--coral); }
.video-consent h3 { margin: 0; font-size: clamp(23px, 2.6vw, 32px); letter-spacing: -.025em; }
.video-consent p { margin: 12px 0 20px; color: rgba(255,255,255,.68); font-size: 13px; }
.video-consent iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video-link { margin-top: 22px; }

.recommend-heading { display: grid; grid-template-columns: 1fr minmax(260px,.65fr); align-items: end; gap: 45px; margin-bottom: 34px; }
.recommend-heading > p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.amazon-shop-callout { display: flex; align-items: center; justify-content: space-between; gap: 28px; border: 1px solid #cbd9cf; border-radius: 18px; padding: clamp(22px, 3.2vw, 34px); background: linear-gradient(135deg, #edf4ef, #f7efe6); }
.amazon-shop-callout > div { max-width: 730px; }
.amazon-shop-callout .eyebrow { margin: 0 0 8px; }
.amazon-shop-callout h2 { margin: 0; font-size: clamp(24px, 3vw, 36px); font-weight: 650; letter-spacing: -.04em; }
.amazon-shop-callout p:last-child { margin: 11px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.home-amazon-shop { display: flex; align-items: center; justify-content: space-between; gap: 28px; border-block: 1px solid var(--line); }
.home-amazon-shop h2 { margin: 0; font-size: clamp(24px, 3vw, 36px); font-weight: 650; letter-spacing: -.04em; }
.home-amazon-shop p:last-child { max-width: 600px; margin: 10px 0 0; color: var(--muted); font-size: 14px; line-height: 1.55; }
.code-list { border-top: 1px solid var(--line); }
.code-row { display: grid; grid-template-columns: minmax(190px,1fr) minmax(150px,.7fr) auto auto; align-items: center; gap: 24px; border-bottom: 1px solid var(--line); padding: 24px 8px; }
.code-row p { margin: 0; font-size: 18px; font-weight: 680; letter-spacing: -.025em; }
.code-row div span { display: block; margin-top: 4px; color: var(--muted); font-size: 11px; }
.code-row code { font-family: inherit; font-size: 15px; font-weight: 800; letter-spacing: .05em; }
.code-row .link-offer { color: var(--forest); font-size: 12px; font-weight: 760; }
.code-row button, .code-row a { min-height: 38px; cursor: pointer; border: 1px solid var(--line); border-radius: 999px; padding: 0 13px; background: transparent; font-size: 11px; font-weight: 730; }
.code-row a { display: inline-flex; align-items: center; }
.pending { color: var(--muted); font-size: 11px; }
.gear-section { background: var(--paper-dark); }
.gear-category-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 30px 0 34px; }
.gear-category-nav a { display: inline-flex; min-height: 36px; align-items: center; gap: 8px; border: 1px solid var(--line); border-radius: 999px; padding: 0 13px; background: rgba(255,255,255,.55); font-size: 11px; font-weight: 720; }
.gear-category-nav a:hover { border-color: rgba(49,94,80,.35); background: #fff; }
.gear-category-nav span { display: grid; min-width: 20px; height: 20px; place-items: center; border-radius: 50%; background: var(--sage); color: var(--forest); font-size: 9px; }
.gear-source-note { margin: -10px 0 24px; border: 1px solid rgba(49,94,80,.16); border-radius: 12px; padding: 11px 14px; background: rgba(223,234,226,.5); color: var(--muted); font-size: 12px; line-height: 1.5; }
.gear-source-note strong { color: var(--forest); }
.gear-groups { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); align-items: start; gap: 16px; }
.gear-group { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.58); scroll-margin-top: 100px; }
.gear-group__heading { display: flex; min-height: 64px; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 18px; }
.gear-group__heading h3 { margin: 0; font-size: 19px; font-weight: 670; letter-spacing: -.025em; }
.gear-group__heading span { color: var(--muted); font-size: 10px; white-space: nowrap; }
.gear-compact-list { border-top: 1px solid var(--line); }
.gear-compact-row { display: grid; grid-template-columns: 62px minmax(0,1fr) auto; align-items: center; gap: 13px; border-top: 1px solid var(--line); padding: 12px 14px; }
.gear-compact-row:first-child { border-top: 0; }
.gear-compact-row__media { display: grid; width: 62px; aspect-ratio: 1; place-items: center; overflow: hidden; border-radius: 11px; background: var(--sage); }
.gear-compact-row__media img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.gear-compact-row__media span { color: rgba(49,94,80,.45); font-size: 22px; font-weight: 720; }
.gear-compact-row__copy { min-width: 0; }
.gear-compact-row__copy h4 { margin: 0; overflow-wrap: anywhere; font-size: 15px; font-weight: 680; letter-spacing: -.015em; }
.gear-compact-row__meta { display: block; margin-top: 3px; color: var(--forest); font-size: 9px; font-weight: 720; letter-spacing: .04em; text-transform: uppercase; }
.gear-compact-row__copy p { display: -webkit-box; overflow: hidden; margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.45; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.gear-compact-row__link, .gear-compact-row__pending { font-size: 10px; font-weight: 740; white-space: nowrap; }
.gear-compact-row__link { color: var(--forest); }
.gear-compact-row__link span { color: var(--coral); }
.recommend-affiliate-note { margin-top: clamp(30px, 5vw, 54px); border: 1px solid #cbd9cf; border-radius: 16px; padding: clamp(20px, 3vw, 30px); background: linear-gradient(135deg, var(--sage), #f7f2e9); }
.recommend-affiliate-note strong { color: var(--forest); font-size: 13px; }
.recommend-affiliate-note p { max-width: 920px; margin: 8px 0 0; color: #53615b; font-size: 12px; line-height: 1.65; }
.gear-compact-row__pending { color: var(--muted); }

.about-timeline { border-top: 1px solid var(--line); }
.timeline-row { display: grid; grid-template-columns: 180px 1fr; gap: 45px; border-bottom: 1px solid var(--line); padding: 42px 8px; }
.timeline-row > span { color: var(--coral); font-size: 12px; font-weight: 780; }
.timeline-row h2 { margin: 0; font-size: clamp(27px,3vw,40px); letter-spacing: -.045em; }
.timeline-row p { max-width: 720px; margin: 13px 0 0; color: #4a5853; font-size: 15px; line-height: 1.65; }
.umbau-timeline { padding-top: 0; }
.umbau-timeline__list { margin-top: 44px; border-top: 1px solid var(--line); }
.umbau-timeline__item { display: grid; grid-template-columns: 150px 1fr; gap: 34px; border-bottom: 1px solid var(--line); padding: 24px 8px; }
.umbau-timeline__item > span { color: var(--coral); font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.umbau-timeline__item h3 { margin: 0; font-size: 21px; font-weight: 680; letter-spacing: -.025em; }
.umbau-timeline__item p { max-width: 720px; margin: 8px 0 0; color: #53615b; font-size: 14px; line-height: 1.62; }
.build-timeline { padding-top: 10px; }
.build-timeline__list { position: relative; max-width: 980px; margin: 34px auto 0; }
.build-timeline__list::before { position: absolute; z-index: 0; top: 10px; bottom: 10px; left: 17px; width: 1px; content: ''; background: var(--line); }
.build-timeline__item { position: relative; z-index: 1; display: grid; grid-template-columns: 34px 205px minmax(0, 1fr); gap: 0; align-items: start; padding: 0 0 26px; }
.build-timeline__item:last-child { padding-bottom: 0; }
.build-timeline__date { position: relative; z-index: 2; padding: 4px 16px 0 14px; color: var(--coral); font-size: 12px; font-weight: 780; line-height: 1.4; background: var(--paper); }
.build-timeline__marker { position: relative; z-index: 1; display: grid; place-items: start center; }
.build-timeline__marker span { width: 13px; height: 13px; margin-top: 5px; border: 3px solid #fff; border-radius: 50%; background: var(--coral); box-shadow: 0 0 0 1px var(--coral); }
.build-timeline__content { position: relative; z-index: 2; border: 1px solid var(--line); border-radius: 15px; padding: 19px 21px; background: var(--paper); }
.build-timeline__content h3 { margin: 0 0 8px; color: var(--ink); font-size: 18px; font-weight: 680; letter-spacing: -.025em; line-height: 1.25; }
.build-timeline__content .entry-content { max-width: none; margin: 0; }
.build-timeline__content .entry-content p { margin: 0; color: #53615b; font-size: 13.5px; line-height: 1.55; }
.build-timeline__media-links { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }
.build-timeline__media-link { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--line); border-radius: 999px; padding: 4px 9px 4px 4px; background: rgba(255,255,255,.72); color: var(--muted); font-size: 10px; font-weight: 760; line-height: 1; text-decoration: none; transition: transform .2s ease, border-color .2s ease, color .2s ease; }
.build-timeline__media-link:hover { transform: translateY(-1px); border-color: rgba(49,94,80,.35); color: var(--ink); }
.build-timeline__media-link > span:last-child { color: var(--coral); font-size: 11px; }
.build-timeline__media-link .platform-icon { width: 20px; height: 20px; flex-basis: 20px; border-radius: 6px; }
.build-timeline__media-link .platform-icon svg { width: 13px; height: 13px; }
.umbau-overview-reels { border-top: 1px solid var(--line); padding-top: 56px; }
.umbau-overview-reels__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 26px; }
.about-chronology { margin: 46px 0 58px; border-top: 1px solid var(--line); }
.about-chronology__step { display: grid; grid-template-columns: minmax(120px, 155px) minmax(0, 1fr); gap: 24px; align-items: start; border-bottom: 1px solid var(--line); padding: 20px 8px; }
.about-chronology__period { margin: 1px 0 0; color: var(--coral); font-size: 14px; font-weight: 780; letter-spacing: -.01em; line-height: 1.35; }
.about-chronology__content { max-width: 900px; }
.about-chronology__step--no-period .about-chronology__content { grid-column: 1 / -1; }
.about-chronology__step .eyebrow { margin: 0 0 7px; font-size: 10px; }
.about-chronology__step h3 { margin: 0; font-size: 19px; font-weight: 680; letter-spacing: -.025em; line-height: 1.2; }
.about-chronology__step .about-chronology__content > p { max-width: 760px; margin: 7px 0 0; color: #53615b; font-size: 13.5px; line-height: 1.52; }
.about-chronology__gallery { display: grid; gap: 10px; max-width: 720px; margin-top: 16px; }
.about-chronology__gallery--single { grid-template-columns: minmax(0, 235px); }
.about-chronology__gallery--double { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.about-chronology__gallery--triple { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.about-chronology__gallery figure { aspect-ratio: 4 / 3; margin: 0; overflow: hidden; border-radius: 12px; background: var(--sage); }
.about-chronology__gallery img { display: block; width: 100%; height: 100%; object-fit: cover; }
.about-photo-story { padding-top: 12px; }
.about-photo-story__grid { display: grid; grid-template-columns: 1.08fr .92fr .92fr; align-items: stretch; gap: 14px; margin-top: 34px; }
.about-photo-story__item { position: relative; min-height: 430px; overflow: hidden; border-radius: 18px; background: var(--sage); }
.about-photo-story__item--lead { min-height: 510px; }
.about-photo-story__item img { width: 100%; height: 100%; object-fit: cover; }
.about-photo-story__item::after { position: absolute; inset: 45% 0 0; content: ''; background: linear-gradient(transparent, rgba(20,33,29,.78)); pointer-events: none; }
.about-photo-story__item figcaption { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; padding: 24px; color: #fff; }
.about-photo-story__item figcaption span, .umbau-photo-intro__item figcaption span { font-size: 10px; font-weight: 780; letter-spacing: .1em; text-transform: uppercase; }
.about-photo-story__item figcaption p { margin: 8px 0 0; font-size: 13px; line-height: 1.5; }
.about-outdoor-dna { display: grid; grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr); align-items: center; gap: clamp(24px, 5vw, 68px); }
.about-outdoor-dna__media { max-width: 520px; margin: 0; overflow: hidden; border-radius: 18px; background: var(--sage); }
.about-outdoor-dna__media img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.about-outdoor-dna__copy { max-width: 650px; }
.about-outdoor-dna__copy h2 { margin: 0; font-size: clamp(27px, 3.5vw, 42px); font-weight: 680; letter-spacing: -.045em; line-height: 1.08; }
.about-outdoor-dna__copy p:not(.eyebrow) { max-width: 610px; margin: 16px 0 0; color: #53615b; font-size: 14px; line-height: 1.65; }
.about-outdoor-dna__copy p + p { margin-top: 11px; }
.about-recap .video-feature-card { margin-top: 0; }
.about-recap .video-feature-card__copy h2 { margin: 0; font-size: clamp(25px, 3.2vw, 38px); font-weight: 680; letter-spacing: -.04em; line-height: 1.08; }
.roof-tent-gallery { padding-top: 6px; }
.roof-tent-intro-photo { padding-top: 0; }
.roof-tent-intro-photo__figure { position: relative; max-width: 980px; margin: 0 auto; overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: #f1eee7; box-shadow: 0 12px 30px rgba(32,53,46,.07); }
.roof-tent-intro-photo__figure img { display: block; width: 100%; max-height: min(62vw, 560px); object-fit: contain; background: #f1eee7; }
.roof-tent-intro-photo__figure--portrait { width: min(100%, 520px); }
.roof-tent-intro-photo__figure--portrait img { height: auto; max-height: none; aspect-ratio: auto; object-fit: contain; }
.roof-tent-intro-photo__figure--landscape { max-width: 1120px; }
.roof-tent-intro-photo__figure--landscape img { aspect-ratio: 4 / 3; max-height: none; object-fit: cover; }
.roof-tent-intro-photo__figure figcaption { position: absolute; right: 14px; bottom: 14px; left: 14px; width: max-content; max-width: calc(100% - 28px); margin: 0; padding: 8px 11px; border-radius: 9px; background: rgba(24,45,38,.78); color: #fff; font-size: 12px; font-weight: 680; line-height: 1.25; }
.roof-tent-gallery__group + .roof-tent-gallery__group { margin-top: 64px; }
.roof-tent-gallery__group .section-intro { max-width: 680px; }
.roof-tent-gallery__group .section-intro > p:last-child { max-width: 600px; color: #53615b; font-size: 14px; line-height: 1.6; }
.roof-tent-gallery__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 30px; }
.roof-tent-gallery__item { position: relative; margin: 0; overflow: hidden; border-radius: 16px; background: var(--sage); }
.roof-tent-gallery__item img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.roof-tent-gallery__item--natural img { height: auto; aspect-ratio: auto; object-fit: contain; background: #f1eee7; }
.roof-tent-gallery__item figcaption { position: absolute; right: 10px; bottom: 10px; left: 10px; padding: 8px 10px; border-radius: 8px; background: rgba(24,45,38,.74); color: #fff; font-size: 11px; line-height: 1.35; }
.roof-tent-history { padding-top: 0; }
.roof-tent-history .section-intro { max-width: 700px; }
.roof-tent-history__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.roof-tent-history__item { min-width: 0; border: 1px solid var(--line); border-radius: 16px; padding: 20px; background: rgba(255,255,255,.68); }
.roof-tent-history__image { margin: -4px 0 16px; overflow: hidden; border-radius: 11px; background: var(--sage); }
.roof-tent-history__image img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.roof-tent-history__item .eyebrow { margin: 0 0 8px; color: var(--coral); }
.roof-tent-history__item h3 { margin: 0; color: var(--ink); font-size: 18px; font-weight: 680; letter-spacing: -.025em; line-height: 1.2; }
.roof-tent-history__item > p:last-child { margin: 9px 0 0; color: #53615b; font-size: 13px; line-height: 1.55; }
.roof-tent-feature { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); align-items: center; gap: clamp(24px, 5vw, 68px); }
.roof-tent-feature__media { margin: 0; overflow: hidden; border-radius: 18px; background: var(--sage); }
.roof-tent-feature__media img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.roof-tent-feature__copy { max-width: 640px; }
.roof-tent-feature__copy h2 { margin: 0; font-size: clamp(26px, 3.5vw, 42px); font-weight: 680; letter-spacing: -.045em; line-height: 1.08; }
.roof-tent-feature__copy p:not(.eyebrow) { max-width: 610px; margin: 16px 0 0; color: #53615b; font-size: 14px; line-height: 1.65; }
.roof-tent-feature__copy p + p { margin-top: 11px; }
.roof-tent-feature--reverse .roof-tent-feature__media { order: 2; }
.roof-tent-feature--reverse .roof-tent-feature__copy { order: 1; }
.roof-tent-feature--outdoor { margin-top: 46px; margin-bottom: 46px; }
.roof-tent-outdoor__grid--closing { margin-top: 18px; }
.roof-tent-outdoor { padding-top: 0; }
.roof-tent-outdoor .section-intro { max-width: 760px; }
.roof-tent-outdoor .section-intro > p:not(.eyebrow) { max-width: 710px; color: #53615b; font-size: 14px; line-height: 1.65; }
.roof-tent-outdoor .section-intro > p + p { margin-top: 11px; }
.roof-tent-outdoor__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.roof-tent-outdoor__item { position: relative; min-width: 0; margin: 0; overflow: hidden; border-radius: 16px; background: var(--sage); }
.roof-tent-outdoor__item img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: contain; background: #f1eee7; }
.roof-tent-outdoor__item figcaption { position: absolute; z-index: 1; right: 10px; bottom: 10px; left: 10px; padding: 8px 10px; border-radius: 9px; background: rgba(24,45,38,.74); color: #fff; font-size: 11px; font-weight: 680; line-height: 1.3; }
.roof-tent-resources { padding-top: 0; }
.roof-tent-code-box { display: flex; align-items: center; justify-content: space-between; gap: 28px; border: 1px solid rgba(49,94,80,.18); border-radius: 18px; padding: clamp(22px, 3.5vw, 36px); background: linear-gradient(135deg, #e8f0ea, #f8eee5); }
.roof-tent-code-box h2 { max-width: 660px; margin: 0; font-size: clamp(21px, 2.3vw, 30px); font-weight: 680; letter-spacing: -.035em; line-height: 1.1; }
.roof-tent-code-box .eyebrow { margin: 0 0 10px; }
.roof-tent-code-box p:last-child { max-width: 670px; margin: 12px 0 0; color: #53615b; font-size: 14px; line-height: 1.6; }
.roof-tent-videos { margin-top: 68px; }
.roof-tent-videos .section-intro { max-width: 680px; }
.roof-tent-video-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 28px; }
.roof-tent-video-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.76); box-shadow: 0 9px 25px rgba(32,53,46,.06); }
.roof-tent-video-card__preview { border-radius: 0; }
.roof-tent-video-card__copy { padding: 17px 18px 20px; }
.roof-tent-video-card__copy h3 { margin: 0; font-size: 19px; font-weight: 680; letter-spacing: -.025em; line-height: 1.2; }
.roof-tent-video-card__copy p { margin: 9px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.roof-tent-reels { margin-top: 62px; }
.roof-tent-reels .section-intro { max-width: 680px; }
.roof-tent-video-card--reel .roof-tent-video-card__preview { aspect-ratio: 3 / 4; }
.roof-tent-video-card__copy a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.umbau-changes-intro { max-width: 760px; }
.umbau-changes-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-block: 30px 12px; }
.umbau-change-card { border: 1px solid var(--line); border-radius: 18px; padding: clamp(20px,3vw,30px); background: rgba(255,255,255,.5); }
.umbau-change-card h3 { margin: 0 0 16px; font-size: 19px; font-weight: 650; letter-spacing: -.02em; }
.umbau-change-card > p { margin: 0 0 14px; color: #53615b; font-size: 13px; line-height: 1.62; }
.umbau-change-card > p:last-child { margin-bottom: 0; }
.umbau-change-card ul { margin: 0; padding-left: 19px; }
.umbau-change-card li { margin-block: 8px; color: #53615b; font-size: 13px; line-height: 1.55; }
.overview-media-links { display: inline-flex; flex-wrap: wrap; gap: 4px; margin-left: 6px; vertical-align: middle; }
.overview-media-link { display: inline-flex; align-items: center; gap: 4px; border: 1px solid rgba(49,94,80,.18); border-radius: 999px; padding: 3px 7px 3px 4px; background: rgba(255,255,255,.72); color: var(--muted); font-size: 9px; font-weight: 780; line-height: 1; text-decoration: none; transition: transform .2s ease, border-color .2s ease, color .2s ease; }
.overview-media-link:hover { transform: translateY(-1px); border-color: rgba(49,94,80,.36); color: var(--ink); }
.overview-media-link__icon { display: inline-grid; width: 16px; height: 16px; place-items: center; border-radius: 5px; color: #fff; font-size: 10px; font-weight: 800; line-height: 1; }
.overview-media-link--instagram .overview-media-link__icon { background: radial-gradient(circle at 30% 105%, #ffd600 0 18%, #ff7a00 30%, #ff0169 56%, #d300c5 78%, #7638fa 100%); }
.overview-media-link--youtube .overview-media-link__icon { background: #ff0033; font-size: 8px; }
.umbau-change-card--wide { grid-column: 1 / -1; }
.umbau-photo-intro { display: grid; grid-template-columns: 1.08fr .92fr; align-items: end; gap: 14px; padding-top: 10px; }
.umbau-photo-intro__item { position: relative; height: 560px; overflow: hidden; border-radius: 18px; background: var(--sage); }
.umbau-photo-intro__item--main { height: 640px; }
.umbau-photo-intro__item img { width: 100%; height: 100%; object-fit: cover; }
.umbau-photo-intro__item::after { position: absolute; inset: 52% 0 0; content: ''; background: linear-gradient(transparent, rgba(20,33,29,.8)); pointer-events: none; }
.umbau-photo-intro__item figcaption { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; padding: 25px; color: #fff; }
.umbau-photo-intro__item figcaption p { max-width: 460px; margin: 8px 0 0; font-size: 13px; line-height: 1.5; }
.umbau-origin-gallery { padding-top: 0; }
.umbau-origin-gallery__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 32px; }
.umbau-origin-gallery__item { position: relative; margin: 0; overflow: hidden; border-radius: 14px; background: var(--sage); }
.umbau-origin-gallery__item img { display: block; width: 100%; aspect-ratio: 3/4; object-fit: cover; }
.umbau-origin-gallery__item:last-child img { aspect-ratio: 4/3; }
.umbau-origin-gallery__item::after { position: absolute; inset: 48% 0 0; background: linear-gradient(transparent, rgba(20,33,29,.72)); content: ''; pointer-events: none; }
.umbau-origin-gallery__item figcaption { position: absolute; z-index: 1; right: 12px; bottom: 11px; left: 12px; color: #fff; font-size: 11px; font-weight: 680; line-height: 1.3; }
.umbau-interior-gallery { padding-top: 0; }
.umbau-interior-gallery__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; margin-top: 28px; }
.umbau-interior-gallery__item { min-width: 0; margin: 0; }
.umbau-interior-gallery__item img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 10px; }
.umbau-interior-gallery__item figcaption { margin-top: 6px; color: var(--muted); font-size: 10px; line-height: 1.25; }
.umbau-areas { padding-top: 0; }
.umbau-area-accordion { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-top: 42px; }
.umbau-area { align-self: start; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.62); }
.umbau-area[open] { grid-column: 1 / -1; background: #fff; }
.umbau-area summary { display: grid; min-height: 102px; grid-template-columns: 30px 70px minmax(0,1fr) 25px; align-items: center; gap: 13px; cursor: pointer; list-style: none; padding: 14px 18px; }
.umbau-area summary::-webkit-details-marker { display: none; }
.umbau-area summary > span:first-child { color: var(--coral); font-size: 10px; font-weight: 800; }
.umbau-area__thumb { display: grid; width: 70px; aspect-ratio: 4/3; place-items: center; overflow: hidden; border-radius: 9px; background: linear-gradient(135deg, var(--sage), var(--sand)); }
.umbau-area__thumb img { width: 100%; height: 100%; object-fit: contain; background: #f1eee7; }
.umbau-area__thumb b { color: rgba(49,94,80,.42); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.umbau-area summary strong { font-size: 19px; font-weight: 680; letter-spacing: -.025em; line-height: 1.2; }
.umbau-area summary i { justify-self: end; color: var(--coral); font-size: 23px; font-style: normal; line-height: 1; transition: transform .2s ease; }
.umbau-area[open] summary { border-bottom: 1px solid var(--line); }
.umbau-area[open] summary i { transform: rotate(45deg); }
.umbau-area__body { display: grid; grid-template-columns: minmax(260px,.78fr) minmax(0,1.22fr); gap: clamp(35px, 6vw, 90px); padding: 28px; }
.umbau-area__media { display: grid; min-height: 280px; aspect-ratio: 4/3; place-items: center; overflow: hidden; border-radius: 15px; background: linear-gradient(135deg, var(--sage), var(--sand)); }
.umbau-area__media img { width: 100%; height: 100%; object-fit: contain; background: #f1eee7; }
.umbau-area__media span { color: rgba(49,94,80,.45); font-size: 13px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.umbau-area--origin .umbau-area__media { width: min(100%, 430px); min-height: 0; aspect-ratio: 3 / 4; justify-self: center; background: #f1eee7; }
.umbau-area--origin .umbau-area__media img { object-fit: contain; }
.umbau-area__copy .entry-content { max-width: 690px; margin-top: 21px; font-size: 15px; }
.umbau-area__copy .entry-content p { margin-block: 0 15px; }
.umbau-area__copy .entry-content em { color: var(--muted); font-size: 13px; }
.umbau-area--sleep .umbau-area__body { grid-template-columns: 1fr; gap: 28px; }
.umbau-area--sleep .umbau-area__media { width: min(100%,720px); min-height: 0; aspect-ratio: 16 / 9; justify-self: center; background: #f3f0e8; }
.umbau-area--sleep .umbau-area__media img { object-fit: contain; }
.umbau-area--sleep .umbau-area__copy .entry-content { max-width: 850px; }
.umbau-area-gallery { margin-top: 25px; }
.umbau-area-gallery > .eyebrow { margin: 0 0 10px; }
.umbau-area-gallery > h4 { margin: 0 0 14px; font-size: 17px; font-weight: 680; letter-spacing: -.02em; }
.umbau-area-gallery__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.umbau-area-gallery figure { min-width: 0; margin: 0; }
.umbau-area-gallery figure img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 10px; }
.umbau-area-gallery figcaption { margin-top: 6px; color: var(--muted); font-size: 10px; line-height: 1.25; }
.umbau-area-gallery--final { margin-top: 34px; border-top: 1px solid var(--line); padding-top: 24px; }
.umbau-area-gallery--final h4 { margin: 0 0 12px; font-size: 17px; font-weight: 680; letter-spacing: -.02em; }
.umbau-area-gallery--sleep { margin-top: 30px; }
.umbau-area-gallery--sleep .umbau-area-gallery__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.umbau-area-gallery--sleep figure { padding: 8px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.74); }
.umbau-area-gallery--sleep figure img { aspect-ratio: 3 / 4; object-fit: cover; border-radius: 8px; }
.umbau-area-gallery--sleep figcaption { padding: 2px 3px 4px; font-size: 11px; line-height: 1.4; }
.umbau-area-gallery--seating { margin-top: 30px; }
.umbau-area-gallery--seating .umbau-area-gallery__grid { gap: 10px; }
.umbau-area-gallery--seating figure img { aspect-ratio: 4 / 3; object-fit: contain; background: #f1eee7; }
.umbau-area-gallery--seating figcaption { min-height: 2.5em; }
.umbau-area-phase { margin-top: 24px; border-left: 3px solid var(--coral); padding: 16px 18px; background: rgba(238,226,211,.42); }
.umbau-area-phase .eyebrow { margin: 0 0 7px; color: var(--coral); }
.umbau-area-phase h3 { margin: 0; font-size: 18px; font-weight: 680; letter-spacing: -.02em; }
.umbau-area-phase p:last-child { margin: 9px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.umbau-media { margin-top: 28px; border-top: 1px solid var(--line); padding-top: 24px; }
.umbau-media__heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.umbau-media__heading .eyebrow { margin: 0; }
.umbau-media__heading h3 { margin: 0; font-size: 18px; font-weight: 680; letter-spacing: -.02em; }
.umbau-media-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 14px; align-items: start; }
.umbau-media-card { min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(32,53,46,.12); border-radius: 16px; background: rgba(255,255,255,.86); box-shadow: 0 10px 28px rgba(32,53,46,.07); }
.umbau-media-card--youtube { grid-column: 1 / -1; }
.umbau-media-card--reel { grid-column: span 1; }
.umbau-media-preview { position: relative; display: grid; aspect-ratio: 16/9; overflow: hidden; place-items: center; border-radius: 12px; background: #dfe9e1; color: #fff; text-decoration: none; }
.umbau-media-preview img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; background: #dfe9e1; transition: transform .35s ease, filter .35s ease; }
.umbau-media-preview:hover img, .umbau-media-preview:focus-within img { transform: scale(1.025); filter: saturate(1.06); }
.umbau-media-preview::after { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12,33,26,0) 23%, rgba(12,33,26,.08) 47%, rgba(12,33,26,.72) 100%); content: ''; pointer-events: none; }
.umbau-media-preview button { position: absolute; z-index: 1; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; cursor: pointer; border: 0; padding: 18px; background: transparent; color: #fff; font-size: 11px; font-weight: 760; text-align: center; }
.umbau-media-preview button span:first-child, .umbau-media-preview button .umbau-media-preview__play { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; background: var(--coral); box-shadow: 0 8px 18px rgba(20,33,29,.23); font-size: 12px; transition: transform .2s ease, background .2s ease; }
.umbau-media-preview button:hover .umbau-media-preview__play, .umbau-media-preview button:focus-visible .umbau-media-preview__play { transform: scale(1.08); background: #d66c57; }
.umbau-media-preview button span:last-child { max-width: min(92%, 360px); border: 1px solid rgba(255,255,255,.28); border-radius: 999px; padding: 6px 11px; background: rgba(16,38,31,.78); box-shadow: 0 5px 15px rgba(16,38,31,.16); line-height: 1.35; text-shadow: none; }
.umbau-media-preview iframe { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; border: 0; background: #f6f8f5; }
.umbau-media-preview.is-loaded::after { display: none; }
.umbau-media-preview--reel { aspect-ratio: 3/4; background: #dfe9e1; }
.umbau-media-preview--reel::after { background: linear-gradient(180deg, rgba(47,22,53,0) 18%, rgba(47,22,53,.08) 45%, rgba(47,22,53,.72) 100%); }
.umbau-media-preview__brand { position: absolute; z-index: 1; top: 12px; right: 12px; left: 12px; display: flex; align-items: center; gap: 6px; color: #fff; font-size: 10px; text-shadow: 0 1px 5px rgba(0,0,0,.2); }
.platform-icon { display: grid; width: 24px; height: 24px; flex: 0 0 24px; place-items: center; border-radius: 7px; color: #fff; }
.platform-icon svg { display: block; width: 15px; height: 15px; }
.platform-icon--youtube { background: #ff0033; }
.platform-icon--youtube svg { fill: currentColor; stroke: none; }
.platform-icon--instagram { background: radial-gradient(circle at 30% 105%, #ffd600 0 18%, #ff7a00 30%, #ff0169 56%, #d300c5 78%, #7638fa 100%); }
.platform-icon--instagram svg { fill: none; stroke: currentColor; stroke-width: 1.8; }
.platform-icon--instagram svg circle:last-child { fill: currentColor; stroke: none; }
.umbau-media-preview--link > .platform-icon { width: 40px; height: 40px; flex-basis: 40px; border-radius: 50%; }
.umbau-media-preview--link > .platform-icon svg { width: 21px; height: 21px; }
.umbau-media-preview--link { align-content: center; gap: 9px; padding: 16px; text-align: center; }
.umbau-media-preview--link::after { display: none; }
.umbau-media-preview--link > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: var(--coral); }
.umbau-media-card__label { margin: 7px 0 0; color: var(--muted); font-size: 12px; line-height: 1.4; }
.umbau-media-card__label span { color: var(--ink); font-weight: 760; }
.umbau-media-card__label a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.video-feature-card { display: grid; grid-template-columns: minmax(260px, .95fr) minmax(0, 1.05fr); gap: 28px; align-items: center; margin-top: 45px; border: 1px solid var(--line); padding: 14px; background: rgba(255,255,255,.72); }
.video-feature-card__copy { padding: 12px 18px 12px 0; }
.video-feature-card__copy h3 { margin: 0; font-size: 24px; font-weight: 680; letter-spacing: -.03em; }
.video-feature-card__copy p:last-child { max-width: 470px; margin: 12px 0 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.values-section { padding-block: clamp(85px, 10vw, 140px); background: var(--forest); color: #fff; }
.values-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(60px, 9vw, 130px); }
.values-section .eyebrow { color: #9bc4b4; }
.value-list { border-top: 1px solid rgba(255,255,255,.2); }
.value-list div { display: grid; grid-template-columns: 50px 1fr; gap: 20px; border-bottom: 1px solid rgba(255,255,255,.2); padding: 22px 0; }
.value-list span { color: #9bc4b4; font-size: 10px; font-weight: 800; }
.value-list p { margin: 0; color: rgba(255,255,255,.78); font-size: 15px; line-height: 1.55; }
.social-section h2 { max-width: 740px; }
.social-row { margin-top: 46px; border-top: 1px solid var(--line); }
.social-row a { display: grid; grid-template-columns: .75fr 1fr auto; align-items: center; gap: 25px; border-bottom: 1px solid var(--line); padding: 26px 8px; }
.social-row a > span { font-size: 22px; font-weight: 620; letter-spacing: -.025em; }
.social-row small { color: var(--muted); }
.social-row i { color: var(--coral); font-size: 20px; font-style: normal; }

.map-section { overflow: visible; border: 1px solid var(--line); background: #fff; isolation: isolate; }
.map-toolbar { position: sticky; z-index: 1000; top: 94px; display: grid; grid-template-columns: minmax(220px,1fr) auto minmax(145px,.46fr) minmax(165px,.52fr) auto; gap: 9px; border-bottom: 1px solid var(--line); padding: 12px; background: rgba(255,255,255,.96); box-shadow: 0 8px 24px rgba(20,33,29,.08); backdrop-filter: blur(14px); }
.admin-bar .map-toolbar { top: 126px; }
.map-search, .map-country, .map-platform { display: flex; min-height: 45px; align-items: center; border: 1px solid var(--line); background: var(--paper); }
.map-search { gap: 10px; padding: 0 13px; }
.map-search i { position: relative; width: 14px; height: 14px; border: 1.7px solid var(--muted); border-radius: 50%; }
.map-search i::after { position: absolute; right: -5px; bottom: -3px; width: 6px; height: 1.5px; transform: rotate(45deg); background: var(--muted); content: ""; }
.map-search input { min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; }
.map-types { display: flex; padding: 4px; background: var(--paper); }
.map-types button { min-height: 37px; cursor: pointer; border: 0; padding: 0 11px; background: transparent; color: var(--muted); font-size: 11px; font-weight: 700; white-space: nowrap; }
.map-types button.is-active { background: #fff; color: var(--ink); }
.map-country select, .map-platform select { width: 100%; height: 43px; cursor: pointer; border: 0; outline: 0; padding: 0 30px 0 11px; appearance: none; background: transparent; font-size: 12px; font-weight: 700; }
.map-more { min-height: 45px; cursor: pointer; border: 1px solid var(--line); background: #fff; padding: 0 14px; font-size: 12px; font-weight: 720; }
.map-more span { color: var(--coral); }
.map-extra { position: absolute; z-index: 1000; top: calc(100% - 1px); right: 12px; min-width: 220px; border: 1px solid var(--line); padding: 9px; background: #fff; box-shadow: 0 18px 45px rgba(20,33,29,.13); }
.map-extra[hidden] { display: none; }
.map-extra label, .map-extra button { display: flex; width: 100%; min-height: 40px; align-items: center; gap: 8px; border: 0; padding: 0 9px; background: transparent; font-size: 12px; }
.map-extra button { cursor: pointer; color: var(--coral); }
.map-stage { position: relative; height: min(730px, 76svh); min-height: 560px; }
.map-canvas { width: 100%; height: 100%; background: #dce5df; }
.map-count, .map-legend { position: absolute; z-index: 800; top: 14px; border: 1px solid var(--line); background: rgba(255,255,255,.9); box-shadow: 0 8px 25px rgba(20,33,29,.1); backdrop-filter: blur(12px); }
.map-count { left: 14px; padding: 9px 12px; font-size: 11px; }
.map-count strong { font-size: 14px; }
.map-fullscreen { position: absolute; z-index: 810; top: 60px; left: 14px; display: inline-flex; min-height: 40px; align-items: center; gap: 7px; cursor: pointer; border: 1px solid var(--line); padding: 0 12px; background: rgba(255,255,255,.93); color: var(--ink); box-shadow: 0 8px 25px rgba(20,33,29,.1); font-size: 11px; font-weight: 760; backdrop-filter: blur(12px); }
.map-fullscreen:first-letter { color: var(--coral); font-size: 16px; }
.map-legend { right: 14px; display: flex; gap: 12px; padding: 9px 12px; font-size: 10px; }
.map-legend span { display: flex; align-items: center; gap: 6px; }
.legend-dot { width: 9px; height: 9px; border-radius: 50%; }
.legend-dot.private { background: var(--private); }
.legend-dot.camping { background: var(--camping); }
.legend-dot.mixed { background: linear-gradient(90deg, var(--private) 0 50%, var(--camping) 50%); }
.map-zoom { position: absolute; z-index: 810; top: 60px; right: 14px; display: grid; width: 42px; overflow: hidden; border: 1px solid var(--line); background: rgba(255,255,255,.91); }
.map-zoom button { width: 42px; height: 40px; cursor: pointer; border: 0; background: transparent; font-size: 21px; }
.map-zoom input { width: 82px; height: 32px; margin: 29px 0; transform: rotate(-90deg); accent-color: var(--forest); }
.map-attribution { margin: 0; border-top: 1px solid var(--line); padding: 8px 12px; color: var(--muted); font-size: 9px; text-align: right; }
.map-section:fullscreen, .map-section.is-fullscreen { width: 100%; height: 100%; overflow: auto; border: 0; }
.map-section:fullscreen .map-toolbar, .map-section.is-fullscreen .map-toolbar { top: 0; }
.map-section:fullscreen .map-stage, .map-section.is-fullscreen .map-stage { height: calc(100svh - 86px); min-height: 420px; }
.map-section:fullscreen .map-attribution, .map-section.is-fullscreen .map-attribution { padding-bottom: 12px; }
.map-fullscreen-open { overflow: hidden; }
.frischluft-pin { width: 40px !important; height: 50px !important; border: 0 !important; background: none !important; }
.pin-svg { width: 40px; height: 50px; margin: 0; filter: drop-shadow(0 5px 5px rgba(20,33,29,.24)); }
.pin-symbol { fill: none; stroke: #fff; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cluster-icon { display: grid; width: 42px !important; height: 42px !important; margin: 0 !important; place-items: center; border: 5px solid rgba(255,255,255,.8); border-radius: 50%; color: #fff; box-shadow: 0 6px 16px rgba(20,33,29,.25); font-size: 11px !important; font-weight: 800 !important; }
.cluster-icon.is-private { background: var(--private) !important; }
.cluster-icon.is-camping { background: var(--camping) !important; }
.cluster-icon.is-mixed { background: linear-gradient(90deg, var(--private) 0 50%, var(--camping) 50%) !important; }
.cluster-icon div { width: auto !important; height: auto !important; margin: 0 !important; background: none !important; }
.spot-card { position: absolute; z-index: 850; bottom: 16px; left: 16px; width: min(430px, calc(100% - 32px)); max-height: calc(100% - 95px); overflow: auto; border: 1px solid rgba(255,255,255,.72); padding: 24px; background: rgba(255,255,255,.95); box-shadow: 0 24px 55px rgba(20,33,29,.2); backdrop-filter: blur(18px); }
.spot-card[hidden] { display: none; }
.spot-close { position: absolute; top: 12px; right: 12px; width: 34px; height: 34px; cursor: pointer; border: 1px solid var(--line); border-radius: 50%; background: var(--paper); font-size: 19px; }
.spot-kicker { margin: 0 40px 9px 0; color: var(--coral); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.spot-card h2 { margin: 0 35px 12px 0; font-size: 23px; font-weight: 620; letter-spacing: -.025em; line-height: 1.12; }
.spot-card > p:not(.spot-kicker) { margin: 14px 0 0; color: #4c5a55; font-size: 13px; line-height: 1.55; }
.spot-meta { display: flex; flex-wrap: wrap; gap: 6px; }
.spot-meta span { padding: 6px 8px; background: var(--paper); color: #4b5954; font-size: 10px; font-weight: 680; }
.spot-details { margin-top: 15px; border-top: 1px solid var(--line); padding-top: 11px; }
.spot-details summary { cursor: pointer; color: var(--forest); font-size: 11px; font-weight: 760; }
.spot-details p { margin: 10px 0 0; color: #4c5a55; font-size: 12px; line-height: 1.55; white-space: pre-line; }
.spot-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 17px; }
.spot-actions a { display: inline-flex; min-height: 38px; align-items: center; border-radius: 999px; padding: 0 13px; background: var(--forest); color: #fff; font-size: 11px; font-weight: 720; }
.spot-actions a.media { background: var(--coral); }
.spot-actions a.article { background: #55708e; }
.content-note { display: grid; grid-template-columns: .4fr .8fr 1fr; gap: 35px; border-bottom: 1px solid var(--line); }
.content-note h2 { margin: 0; font-size: 28px; letter-spacing: -.025em; }
.content-note > p:last-child { margin: 0; color: var(--muted); line-height: 1.65; }

.entry-content { max-width: 850px; font-size: 17px; line-height: 1.75; }
.page-editor-content { margin-top: -55px; margin-bottom: 75px; }
.entry-content h2 { margin-top: 42px; font-size: 29px; font-weight: 620; letter-spacing: -.025em; }
.entry-content a { text-decoration: underline; }
.entry-content article { border-bottom: 1px solid var(--line); padding: 25px 0; }
.entry-content .sweden-account { margin-block: 46px; border: 1px solid #cbded4; border-radius: 22px; padding: clamp(27px, 5vw, 48px); background: linear-gradient(135deg, #e8f1ec, #f5eee7); }
.entry-content .sweden-account h2 { margin-top: 7px; color: var(--forest); }
.entry-content .sweden-account .eyebrow { margin-bottom: 0; }
.entry-content .sweden-account .wp-block-button__link { border-radius: 999px; padding: 13px 18px; background: var(--forest); color: #fff; font-size: 13px; font-weight: 740; text-decoration: none; }

.editable-page-content { max-width: 900px; padding-top: 25px; }
.editable-page-content h2 { margin-top: clamp(48px, 6vw, 72px); font-size: clamp(28px, 3.2vw, 39px); font-weight: 620; line-height: 1.14; }
.editable-page-content h3 { margin: 38px 0 8px; color: var(--forest); font-size: clamp(21px, 2.4vw, 27px); font-weight: 620; letter-spacing: -.02em; }
.editable-page-content li { margin-block: 8px; }
.faq-intro { max-width: 900px; padding-top: 25px; padding-bottom: 18px; }
.faq-index { border-block: 1px solid var(--line); }
.faq-index__layout { display: grid; grid-template-columns: minmax(240px, .68fr) minmax(0, 1.32fr); align-items: start; gap: clamp(30px, 7vw, 92px); }
.faq-index__intro { max-width: 360px; }
.faq-index__intro h2 { margin: 0; font-size: clamp(29px, 3.5vw, 45px); font-weight: 620; letter-spacing: -.04em; line-height: 1.08; }
.faq-index__intro > p:last-child { margin: 16px 0 0; color: #53615b; font-size: 14px; line-height: 1.6; }
.faq-index nav { min-width: 0; }
.faq-index__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; margin: 0; padding: 0; list-style: none; }
.faq-index__list li { border-top: 1px solid var(--line); }
.faq-index__list li:nth-last-child(-n+2) { border-bottom: 1px solid var(--line); }
.faq-index__list a { display: block; min-height: 65px; padding: 17px 4px; color: var(--ink); font-size: 13px; font-weight: 680; line-height: 1.35; text-decoration: none; transition: color .2s ease, padding .2s ease; }
.faq-index__list a:hover { padding-left: 10px; color: var(--coral); }
.faq-list { max-width: 900px; }
.faq-item { scroll-margin-top: 124px; border-bottom: 1px solid var(--line); padding: 37px 8px 42px; }
.faq-item:first-child { border-top: 1px solid var(--line); }
.faq-item__content h2 { margin: 0; font-size: clamp(25px, 3vw, 36px); font-weight: 620; letter-spacing: -.035em; line-height: 1.12; }
.faq-item__answer { max-width: 740px; margin-top: 17px; color: #53615b; font-size: 15px; line-height: 1.7; }
.faq-item__answer p { margin: 0 0 13px; }
.faq-item__answer p:last-child { margin-bottom: 0; }
.faq-item__answer h3 { margin: 26px 0 8px; color: var(--forest); font-size: 20px; }
.faq-item__back { display: inline-flex; margin-top: 22px; border-bottom: 1px solid var(--ink); padding-bottom: 4px; color: var(--muted); font-size: 11px; font-weight: 750; text-decoration: none; }
.faq-item__back:hover { color: var(--coral); }
.faq-empty { color: var(--muted); }
.origin-callout { margin: 34px 0 52px; border-block: 1px solid var(--line); padding-block: clamp(25px, 4vw, 40px); }
.origin-callout h2 { margin: 5px 0 16px; font-size: clamp(29px, 3.2vw, 39px); }
.origin-callout p:last-child { margin-bottom: 0; }
.work-with-us { margin-top: clamp(55px, 7vw, 85px); border: 1px solid #cbd9cf; border-radius: 18px; padding: clamp(28px, 5vw, 50px); background: linear-gradient(135deg, var(--sage), #f4eee4); }
.work-with-us h2 { margin-top: 0; }
.work-with-us::after, .creator-journey::after { display: block; clear: both; content: ''; }
.work-with-us .about-work-photo { float: right; width: min(31%, 230px); margin: 2px 0 17px 28px; overflow: hidden; border: 1px solid rgba(32,53,46,.13); border-radius: 14px; background: rgba(255,255,255,.65); }
.work-with-us .about-work-photo img { display: block; width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
.work-with-us .about-work-photo figcaption { padding: 10px 13px 12px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.work-with-us { position: relative; overflow: hidden; box-shadow: 0 18px 42px rgba(32,53,46,.07); }
.work-with-us::before { position: absolute; top: -90px; right: -70px; width: 230px; height: 230px; border-radius: 50%; background: rgba(255,255,255,.36); content: ''; pointer-events: none; }
.work-with-us > * { position: relative; z-index: 1; }
.work-with-us__channels { clear: both; margin: 32px 0 28px; border-block: 1px solid rgba(32,53,46,.14); padding: 24px 0 4px; }
.work-with-us__channels-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.work-with-us__channels-heading > div { min-width: 0; }
.work-with-us__channels-heading .eyebrow { margin: 0 0 7px; }
.work-with-us__channels-heading > div > p:last-child { max-width: 450px; margin: 0; color: #53615b; font-size: 12px; line-height: 1.55; }
.work-with-us__full-link { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 8px; border-bottom: 1px solid var(--ink); padding-bottom: 4px; color: var(--ink); font-size: 11px; font-weight: 750; text-decoration: none; }
.work-with-us__full-link span { color: var(--coral); font-size: 15px; }
.work-with-us__full-link:hover { color: var(--coral); }
.cooperation-layout { display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(240px, .78fr); gap: clamp(30px, 6vw, 80px); align-items: start; }
.cooperation-layout__main { min-width: 0; }
.cooperation-copy > :first-child { margin-top: 0; }
.cooperation-copy > :last-child { margin-bottom: 0; }
.cooperation-sidebar { position: sticky; top: 126px; border: 1px solid #cbd9cf; border-radius: 18px; padding: 24px 23px 22px; background: linear-gradient(135deg, #e8f1eb, #f4e9df); box-shadow: 0 14px 34px rgba(32,53,46,.06); }
.cooperation-sidebar .eyebrow { margin-bottom: 8px; font-size: 9px; }
.cooperation-sidebar h2 { margin: 0 0 19px; color: var(--forest); font-size: clamp(25px, 3vw, 35px); letter-spacing: -.04em; line-height: 1.08; }
.cooperation-sidebar ul { margin: 0; border-top: 1px solid rgba(32,53,46,.14); padding: 0; list-style: none; }
.cooperation-sidebar li { border-bottom: 1px solid rgba(32,53,46,.14); padding: 12px 0 12px 17px; color: #53615b; font-size: 12px; line-height: 1.45; }
.cooperation-sidebar li::before { margin-left: -17px; margin-right: 8px; color: var(--coral); content: '✓'; font-weight: 800; }
.small-note { margin: 18px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.cooperation-profiles { margin-top: 48px; border-top: 1px solid var(--line); padding-top: 34px; }
.cooperation-profiles__intro { max-width: 620px; }
.cooperation-profiles__intro .eyebrow { margin-bottom: 8px; }
.cooperation-profiles__intro h2 { margin: 0; font-size: clamp(28px, 3.3vw, 41px); font-weight: 620; letter-spacing: -.04em; line-height: 1.08; }
.cooperation-profiles__intro > p:last-child { max-width: 510px; margin: 13px 0 0; color: #53615b; font-size: 13px; line-height: 1.6; }
.frischluft-profile-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 20px; }
.frischluft-profile-card { display: flex; min-width: 0; min-height: 106px; flex-direction: column; justify-content: space-between; border: 1px solid rgba(32,53,46,.13); border-radius: 13px; padding: 13px 14px 12px; background: rgba(255,255,255,.68); color: var(--ink); text-decoration: none !important; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.frischluft-profile-card:hover { transform: translateY(-3px); border-color: rgba(49,94,80,.42); background: rgba(255,255,255,.92); }
.frischluft-profile-card__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.frischluft-profile-card__top strong { color: var(--forest); font-size: 12px; font-weight: 760; }
.frischluft-profile-card__top i { color: var(--coral); font-size: 15px; font-style: normal; }
.frischluft-profile-card__name { display: block; overflow: hidden; margin-top: 10px; color: var(--ink); font-size: 11px; font-weight: 680; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.frischluft-profile-card__count { display: block; margin-top: 7px; color: var(--muted); font-size: 10px; line-height: 1.3; }
.work-with-us > ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; clear: both; margin: 27px 0 25px; padding: 0; list-style: none; }
.work-with-us > ul li { margin: 0; border: 1px solid rgba(32,53,46,.11); border-radius: 12px; padding: 13px 15px; background: rgba(255,255,255,.38); color: #53615b; font-size: 12px; line-height: 1.5; }
.work-with-us > ul li::before { margin-right: 7px; color: var(--coral); content: '✓'; font-weight: 800; }
.creator-journey .about-creator-photo { float: right; width: min(34%, 260px); margin: 2px 0 17px 28px; overflow: hidden; border: 1px solid rgba(32,53,46,.13); border-radius: 14px; background: rgba(255,255,255,.68); }
.creator-journey .about-creator-photo img { display: block; width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
.creator-journey .about-creator-photo figcaption { padding: 10px 13px 12px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.work-with-us .wp-block-button__link { border-radius: 999px; padding: 14px 20px; background: var(--forest); color: #fff; font-size: 13px; font-weight: 750; text-decoration: none; }
.creator-journey { margin-block: clamp(50px, 7vw, 80px); border-left: 4px solid var(--coral); border-radius: 0 18px 18px 0; padding: clamp(27px, 5vw, 48px); background: linear-gradient(135deg, #f2e9df, #edf3ee); }
.creator-journey h2 { margin-top: 6px; }
.creator-journey p:last-child { margin-bottom: 0; }

.blog-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 35px; margin-bottom: 46px; }
.blog-section-heading h2 { max-width: 720px; margin: 0; font-size: clamp(30px, 3.6vw, 46px); font-weight: 620; letter-spacing: -.035em; line-height: 1.08; }
.blog-categories { display: flex; flex-wrap: wrap; gap: 8px; border-block: 1px solid var(--line); padding-block: 18px; }
.blog-categories a { border: 1px solid var(--line); border-radius: 999px; padding: 9px 13px; background: rgba(255,255,255,.55); color: var(--muted); font-size: 11px; font-weight: 720; }
.blog-categories a:hover, .blog-categories a.is-active { border-color: var(--forest); background: var(--forest); color: #fff; }
.blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.post-card { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.62); }
.post-card__media { display: grid; aspect-ratio: 16 / 10; place-items: center; overflow: hidden; background: linear-gradient(135deg, var(--sage), var(--mist)); }
.post-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.post-card:hover .post-card__media img { transform: scale(1.025); }
.post-card__media > span { color: rgba(49,94,80,.35); font-family: Georgia, serif; font-size: 64px; }
.post-card__copy { padding: 24px; }
.post-meta { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 13px; color: var(--muted); font-size: 10px; font-weight: 720; letter-spacing: .06em; text-transform: uppercase; }
.post-meta a { color: var(--coral); }
.post-meta i { font-style: normal; }
.post-card h2 { margin: 0; font-size: 22px; font-weight: 620; letter-spacing: -.025em; line-height: 1.15; }
.post-card__copy > p:not(.post-meta) { margin: 15px 0 5px; color: var(--muted); font-size: 13px; line-height: 1.6; }
.post-card .text-link { margin-top: 14px; }
.blog-pagination { margin-top: 50px; }
.blog-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; }
.blog-pagination a, .blog-pagination .current { display: grid; min-width: 42px; height: 42px; place-items: center; border: 1px solid var(--line); border-radius: 50%; font-size: 12px; }
.blog-pagination .current { background: var(--forest); color: #fff; }
.blog-empty { border: 1px solid var(--line); border-radius: 18px; padding: clamp(32px, 6vw, 70px); background: var(--sage); }
.blog-empty h2 { margin: 0; font-size: clamp(30px, 4vw, 48px); letter-spacing: -.05em; }
.single-post__header { max-width: 900px; padding-block: clamp(80px, 10vw, 145px) 60px; }
.single-post__header h1 { max-width: 900px; margin: 0; font-size: clamp(36px, 5vw, 58px); font-weight: 620; letter-spacing: -.04em; line-height: 1.06; }
.single-post__image { overflow: hidden; border-radius: 22px; }
.single-post__image img { width: 100%; max-height: 760px; object-fit: cover; }
.single-post__content { padding-block: clamp(55px, 7vw, 95px); }
.single-post__footer { max-width: 850px; }

/* Product tests: structured editorial pages with a clear verdict, useful
   product facts and room for the long-form review text. */
.product-test__hero { max-width: 980px; padding-block: clamp(78px, 10vw, 142px) 42px; }
.product-test__hero h1 { max-width: 920px; margin: 0; font-size: clamp(34px, 4.7vw, 56px); font-weight: 620; letter-spacing: -.055em; line-height: 1.05; }
.product-test__subtitle, .page-hero__subtitle { max-width: 820px; margin: 18px 0 0; color: var(--forest); font-size: clamp(18px, 2.2vw, 25px); font-weight: 520; letter-spacing: -.025em; line-height: 1.35; }
.product-test__subtitle { max-width: 790px; }
.product-test__hero .lead { max-width: 770px; margin-top: 24px; }
.product-test__meta { margin: 22px 0 0; color: var(--muted); font-size: 11px; }
.product-test__transparency { max-width: 790px; margin: 25px 0 0; border-left: 3px solid var(--coral); padding: 2px 0 2px 17px; }
.product-test__transparency .eyebrow { margin-bottom: 6px; }
.product-test__transparency p:last-child { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.product-test__cover { overflow: hidden; border-radius: 24px; background: #f1eee7; }
.product-test__cover img { display: block; width: 100%; max-height: 720px; object-fit: contain; }
.product-test__summary { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(280px, .88fr); gap: 26px; align-items: stretch; }
.product-test__summary--single { grid-template-columns: minmax(0, 1fr); }
.product-test__verdict, .product-test__facts, .product-test__conditions, .product-test__experience-copy, .product-test__list, .product-test__specs { border: 1px solid var(--line); border-radius: 20px; padding: clamp(24px, 4vw, 38px); background: rgba(255,255,255,.58); }
.product-test__verdict { background: linear-gradient(135deg, var(--sage), #f5eee5); }
.product-test__verdict h2 { max-width: 610px; margin: 5px 0 18px; color: var(--forest); font-size: clamp(28px, 3.8vw, 48px); font-weight: 620; letter-spacing: -.045em; line-height: 1.08; }
.product-test__verdict-copy { max-width: 650px; font-size: 17px; line-height: 1.7; }
.product-test__verdict-copy p { margin-block: 0 14px; }
.product-test__verdict-copy p:last-child { margin-bottom: 0; }
.product-test__rating { display: inline-flex; align-items: center; gap: 10px; margin: 25px 0 0; color: var(--forest); font-size: 12px; font-weight: 720; }
.product-test__rating span { display: inline-grid; min-width: 58px; min-height: 42px; place-items: center; border-radius: 12px; background: var(--coral); color: #fff; font-size: 17px; }
.product-test__rating-panel { display: flex; align-items: center; gap: 18px; margin-top: 28px; }
.product-test__rating-ring { position: relative; display: grid; width: 112px; min-width: 112px; aspect-ratio: 1; place-content: center; border-radius: 50%; background: conic-gradient(var(--coral) var(--score), rgba(255,255,255,.7) 0); color: var(--forest); text-align: center; }
.product-test__rating-ring::after { position: absolute; inset: 8px; border-radius: 50%; background: var(--sage); content: ''; }
.product-test__rating-ring > * { position: relative; z-index: 1; display: block; }
.product-test__rating-ring strong { font-size: 28px; font-weight: 760; letter-spacing: -.05em; line-height: 1; }
.product-test__rating-ring span { margin-top: 5px; color: var(--muted); font-size: 10px; font-weight: 720; }
.product-test__rating-copy { max-width: 200px; }
.product-test__rating-copy .eyebrow { margin-bottom: 6px; }
.product-test__rating-copy p:last-child { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.product-test__rating-stars { position: relative; display: inline-block; margin-top: 12px; color: rgba(217,126,99,.2); font-size: 15px; letter-spacing: .08em; line-height: 1; white-space: nowrap; }
.product-test__rating-stars > span:last-child { position: absolute; top: 0; left: 0; overflow: hidden; color: var(--coral); white-space: nowrap; }
.product-test__score-chart { margin-top: 32px; border-top: 1px solid rgba(49,94,80,.16); padding-top: 23px; }
.product-test__score-chart-head { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; }
.product-test__score-chart-head .eyebrow { margin: 0; }
.product-test__score-chart-head > span { color: var(--muted); font-size: 10px; }
.product-test__score-row { margin-top: 17px; }
.product-test__score-label { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; color: var(--ink); font-size: 12px; }
.product-test__score-label strong { color: var(--forest); font-size: 11px; }
.product-test__score-track { height: 7px; margin-top: 7px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.75); }
.product-test__score-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--coral), #d9a06f); }
.product-test__facts { background: #fff; }
.product-test__facts dl, .product-test__specs dl { margin: 18px 0 0; border-top: 1px solid var(--line); }
.product-test__facts dl div, .product-test__specs dl div { display: flex; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--line); padding: 12px 0; }
.product-test__facts dt, .product-test__specs dt { color: var(--muted); font-size: 11px; line-height: 1.45; }
.product-test__facts dd, .product-test__specs dd { max-width: 62%; margin: 0; color: var(--ink); font-size: 12px; font-weight: 720; line-height: 1.45; text-align: right; }
.product-test__affiliate-box { margin-top: 28px; border-top: 1px solid var(--line); padding-top: 22px; }
.product-test__affiliate-box > .eyebrow { margin-bottom: 12px; }
.product-test__affiliate { width: 100%; min-height: 54px; gap: 8px; text-decoration: none; box-shadow: 0 8px 18px rgba(29, 65, 53, .12); }
.product-test__affiliate:hover { transform: translateY(-2px); }
.product-test__affiliate > span:first-child { color: #f2b39b; font-size: 18px; line-height: 1; }
.product-test__partner { margin: 10px 0 0; color: var(--muted); font-size: 10px; text-align: center; }
.product-test__affiliate-note { margin: 10px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; text-align: center; }
.product-test__affiliate-note span { color: var(--coral); font-weight: 800; }
.product-test__code-box { margin-top: 20px; border: 1px solid #d8d8c9; border-radius: 15px; padding: 17px 18px; background: linear-gradient(135deg, #f8f4e7, #fff); }
.product-test__code-box > .eyebrow { margin-bottom: 10px; color: var(--coral); }
.product-test__code-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px; }
.product-test__code-row > div > span { display: block; color: var(--muted); font-size: 10px; }
.product-test__code-row strong { display: block; margin-top: 4px; color: var(--forest); font-size: 20px; font-weight: 780; letter-spacing: .06em; line-height: 1.1; }
.product-test__code-row .button { min-height: 38px; padding-inline: 13px; font-size: 11px; }
.product-test__code-benefit { margin: 11px 0 0; color: var(--forest); font-size: 12px; font-weight: 720; line-height: 1.45; }
.product-test__code-note { margin: 10px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.product-test__experience { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 26px; }
.product-test__experience-copy { background: linear-gradient(135deg, #f3e9df, #fff); }
.product-test__conditions > div, .product-test__experience-copy > div { color: #53615b; font-size: 15px; line-height: 1.7; }
.product-test__conditions > div p, .product-test__experience-copy > div p { margin-block: 0 14px; }
.product-test__conditions > div p:last-child, .product-test__experience-copy > div p:last-child { margin-bottom: 0; }
.product-test__video { border-top: 1px solid var(--line); }
.product-test__video-card { overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 12px 30px rgba(31, 55, 45, .07); }
.product-test__video-preview { border-radius: 0; background: #e9eee9; }
.product-test__video-preview img { object-fit: cover; }
.product-test__video-copy { display: flex; align-items: flex-end; justify-content: space-between; gap: 25px; padding: 24px 28px 27px; }
.product-test__video-copy h3 { margin: 4px 0 0; color: var(--forest); font-size: 22px; font-weight: 650; letter-spacing: -.025em; }
.product-test__video-copy p:not(.eyebrow) { max-width: 600px; margin: 9px 0 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.product-test__video-copy .eyebrow { margin: 0; }
.product-test__video-copy .text-link { flex: 0 0 auto; }
.product-test__pros-cons-section { border-top: 1px solid var(--line); }
.product-test__section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 35px; margin-bottom: 30px; }
.product-test__section-heading h2 { max-width: 700px; margin: 5px 0 0; color: var(--forest); font-size: clamp(30px, 3.8vw, 46px); font-weight: 620; letter-spacing: -.045em; line-height: 1.08; }
.product-test__section-heading > p { max-width: 290px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.product-test__pros-cons { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 26px; }
.product-test__list { box-shadow: 0 12px 30px rgba(31, 55, 45, .06); }
.product-test__list--pros { border-color: #c5ddd0; background: #edf5f0; }
.product-test__list--cons { border-color: #ead2c6; background: #fbf0ea; }
.product-test__list-head { display: grid; grid-template-columns: 46px minmax(0,1fr) auto; align-items: center; gap: 13px; border-bottom: 1px solid rgba(49,94,80,.14); padding-bottom: 18px; }
.product-test__list-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 14px; background: rgba(96,157,126,.18); color: var(--forest); font-size: 20px; font-weight: 800; }
.product-test__list--cons .product-test__list-icon { background: rgba(217,126,99,.16); color: var(--coral); }
.product-test__list-head .eyebrow { margin: 0 0 4px; }
.product-test__list-head strong { color: var(--ink); font-size: 19px; font-weight: 660; letter-spacing: -.02em; }
.product-test__list-count { display: grid; min-width: 29px; height: 29px; place-items: center; border-radius: 50%; background: #fff; color: var(--muted); font-size: 11px; font-weight: 760; }
.product-test__list ul { display: grid; gap: 0; margin: 4px 0 0; padding: 0; list-style: none; }
.product-test__list li { display: grid; grid-template-columns: 22px minmax(0,1fr); gap: 9px; align-items: start; border-bottom: 1px solid rgba(49,94,80,.12); padding: 13px 0; color: #53615b; font-size: 14px; line-height: 1.5; }
.product-test__list li:last-child { border-bottom: 0; padding-bottom: 0; }
.product-test__list li::before { display: none; content: none; }
.product-test__item-marker { display: grid; width: 20px; height: 20px; place-items: center; margin-top: 1px; border-radius: 50%; background: rgba(96,157,126,.18); color: var(--forest); font-size: 12px; font-weight: 800; }
.product-test__list--cons .product-test__item-marker { background: rgba(217,126,99,.16); color: var(--coral); }
.product-test__specs { max-width: 850px; background: #fff; }
.product-test__specs > .eyebrow { margin-bottom: 0; }
.product-test__article { border-top: 1px solid var(--line); }
.product-test__article > .eyebrow { max-width: 850px; margin-inline: auto; }
.product-test__article .entry-content { max-width: 850px; margin-inline: auto; }
.product-test__gallery .section-intro { max-width: 720px; margin-bottom: 30px; }
.product-test__gallery .section-intro h2 { margin-top: 5px; }
.product-test__gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.product-test__gallery-grid figure { margin: 0; overflow: hidden; border-radius: 16px; background: #f1eee7; }
.product-test__gallery-grid img { display: block; width: 100%; height: auto; object-fit: contain; }
.product-test__gallery-grid figcaption { padding: 11px 13px 14px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.product-test__media { border-top: 1px solid var(--line); }
.product-test__media .button-row { margin-top: 18px; }
.product-test__media a { text-decoration: none; }
.product-test__disclosure { border: 1px solid #e6d8ca; border-radius: 15px; padding: 16px 19px; background: #faf3ec; color: #75685e; font-size: 11px; line-height: 1.6; }
.product-test__disclosure strong { color: var(--ink); }
.product-test__footer { max-width: 850px; padding-block: 34px 0; }
.product-tests-archive__hero { max-width: 980px; }
.product-tests-archive__hero .lead { max-width: 780px; }
.product-test-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.product-test-card { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.62); }
.product-test-card__media { display: grid; aspect-ratio: 16 / 10; place-items: center; overflow: hidden; background: linear-gradient(135deg, var(--sage), var(--mist)); }
.product-test-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.product-test-card:hover .product-test-card__media img { transform: scale(1.025); }
.product-test-card__media > span { color: rgba(49,94,80,.35); font-family: Georgia, serif; font-size: 46px; }
.product-test-card__copy { padding: 24px; }
.product-test-card__copy h2 { margin: 0; font-size: 23px; font-weight: 620; letter-spacing: -.025em; line-height: 1.15; }
.product-test-card__copy > p:not(.post-meta) { margin: 15px 0 5px; color: var(--muted); font-size: 13px; line-height: 1.6; }
.product-test-card .text-link { margin-top: 14px; }

@media (max-width: 900px) {
  .product-test__summary, .product-test__experience { grid-template-columns: 1fr; }
  .product-test-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .product-test__hero { padding-top: 58px; }
  .product-test__cover { border-radius: 15px; }
  .product-test__section-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .product-test__section-heading > p { max-width: 520px; }
  .product-test__video-copy { align-items: flex-start; flex-direction: column; gap: 17px; padding: 21px 20px 23px; }
  .product-test__code-row { align-items: flex-start; grid-template-columns: 1fr; }
  .product-test__code-row .button { justify-self: start; }
  .product-test__pros-cons, .product-test-grid { grid-template-columns: 1fr; }
  .product-test__list-head strong { font-size: 17px; }
  .product-test__facts dl div, .product-test__specs dl div { align-items: flex-start; flex-direction: column; gap: 4px; }
  .product-test__facts dd, .product-test__specs dd { max-width: none; text-align: left; }
  .product-test__gallery-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 11px; }
  .product-test__gallery-grid figcaption { padding-inline: 9px; }
}

.site-footer { margin-top: clamp(65px, 8vw, 100px); border-top: 1px solid rgba(255,255,255,.15); padding-block: 58px 32px; background: #0d2c24; color: rgba(255,255,255,.67); }
.is-front-page .site-footer { margin-top: 0; }
.footer-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.brand-logo-link--footer { align-self: start; }
.brand-logo--footer { width: 154px; }
.footer-layout > div > p { max-width: 440px; margin: 18px 0 0; font-size: 12px; line-height: 1.6; }
.footer-links { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 18px; font-size: 12px; }
.footer-affiliate { grid-column: 1 / -1; margin: 15px 0 0; border-top: 1px solid rgba(255,255,255,.18); padding-top: 20px; color: rgba(255,255,255,.86); font-size: 12px; line-height: 1.6; }
.footer-affiliate strong { color: #f2b39b; font-size: 15px; }
.footer-note { grid-column: 1 / -1; margin: -32px 0 0; color: rgba(255,255,255,.48); font-size: 10px; }
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 1040px) {
  .site-header__inner { min-height: 94px; }
  .nav-toggle { display: block; }
  .nav-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(3.75px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-3.75px) rotate(-45deg); }
  .site-nav { position: fixed; top: 94px; right: 0; left: 0; visibility: hidden; transform: translateY(-8px); border-bottom: 1px solid var(--line); padding: 10px 15px 18px; background: rgba(250,249,245,.98); opacity: 0; transition: .2s ease; }
  .admin-bar .site-nav { top: 126px; }
  .site-nav.is-open { visibility: visible; transform: none; opacity: 1; }
  .site-nav__list { display: grid; gap: 0; }
  .site-nav a { display: block; border-bottom: 1px solid var(--line); padding: 15px 4px; font-size: 15px; }
  .site-nav a::after { display: none; }
}

@media (max-width: 980px) {
  .home-hero { grid-template-columns: 1fr; min-height: auto; }
  .home-hero__copy { max-width: 750px; }
  .home-hero__media { aspect-ratio: 16/10; }
  .fact-band__grid { grid-template-columns: repeat(3,1fr); }
  .fact-band__grid div:nth-child(4) { border-left: 0; border-top: 1px solid var(--line); }
  .fact-band__grid div:nth-child(5) { border-top: 1px solid var(--line); }
  .map-toolbar { grid-template-columns: minmax(210px,1fr) minmax(160px,.75fr) auto; }
  .map-search { grid-column: 1 / 3; }
  .map-more { grid-row: 1; grid-column: 3; }
  .map-types { grid-row: 2; grid-column: 1 / 3; }
  .map-country { grid-row: 3; grid-column: 1; }
  .map-platform { grid-row: 3; grid-column: 2; }
  .gear-groups { grid-template-columns: 1fr; }
  .blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .proof-line__inner { grid-template-columns: repeat(2, 1fr); }
  .proof-stat:nth-child(odd) { border-left: 0; }
  .proof-stat:nth-child(n+3) { border-top: 1px solid var(--line); }
  .home-instagram__layout { grid-template-columns: 1fr; }
  .about-people-intro { grid-template-columns: 1fr; gap: 26px; }
  .about-people-intro__heading { position: static; max-width: 620px; }
  .about-people-intro__visual { max-width: 420px; }
  .cooperation-layout { grid-template-columns: 1fr; }
  .cooperation-sidebar { position: static; max-width: 520px; }
  .about-photo-story__grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .about-photo-story__item--lead { grid-column: 1 / -1; min-height: 500px; }
  .umbau-origin-gallery__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .umbau-interior-gallery__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .umbau-area-accordion { grid-template-columns: 1fr; }
  .umbau-area[open] { grid-column: auto; }
  .umbau-area__body { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  :root { --shell: calc(100% - 30px); --wide: calc(100% - 12px); }
  html { scroll-padding-top: 90px; }
  .site-header__inner { min-height: 80px; }
  .admin-bar .site-header { top: 46px; }
  .nav-toggle { display: block; }
  .nav-toggle[aria-expanded="true"] i:first-of-type { transform: translateY(3.75px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] i:last-of-type { transform: translateY(-3.75px) rotate(-45deg); }
  .site-nav { position: fixed; top: 80px; right: 0; left: 0; visibility: hidden; transform: translateY(-8px); border-bottom: 1px solid var(--line); padding: 10px 15px 18px; background: rgba(250,249,245,.98); opacity: 0; transition: .2s ease; }
  .admin-bar .site-nav { top: 126px; }
  .site-nav.is-open { visibility: visible; transform: none; opacity: 1; }
  .site-nav__list { display: grid; gap: 0; }
  .site-nav a { display: block; border-bottom: 1px solid var(--line); padding: 15px 4px; font-size: 15px; }
  .site-nav a::after { display: none; }
  .home-hero { gap: 36px; padding-block: 54px; }
  .home-hero h1, .page-hero h1 { font-size: clamp(34px,10vw,47px); }
  .home-hero__media { aspect-ratio: 1/.92; }
  .home-positioning { padding-block: 62px; }
  .home-positioning__intro h2 { font-size: clamp(32px, 9vw, 44px); }
  .home-positioning__grid { grid-template-columns: 1fr; gap: 38px; margin-top: 38px; }
  .home-value { grid-template-columns: 34px 1fr; gap: 12px; padding-block: 18px; }
  .home-value h3 { font-size: 18px; }
  .home-value p, .home-positioning__story > p:not(.eyebrow) { font-size: 13px; }
  .umbau-timeline__item { grid-template-columns: 1fr; gap: 8px; padding-block: 21px; }
  .build-timeline__list { margin-top: 27px; }
  .build-timeline__list::before { top: 8px; bottom: 8px; left: 8px; }
  .build-timeline__item { grid-template-columns: 22px minmax(0, 1fr); padding-bottom: 20px; }
  .build-timeline__marker { grid-column: 1; grid-row: 1 / 3; }
  .build-timeline__date { grid-column: 2; padding: 0 0 7px; font-size: 11px; }
  .build-timeline__content { grid-column: 2; padding: 16px 17px; }
  .build-timeline__content h3 { font-size: 17px; }
  .build-timeline__content .entry-content p { font-size: 13px; }
  .about-chronology { margin-block: 34px 44px; }
  .about-chronology__step { grid-template-columns: minmax(94px, 112px) minmax(0, 1fr); gap: 8px 13px; padding: 20px 4px; }
  .about-chronology__period { font-size: 12px; }
  .about-chronology__step h3 { font-size: 18px; }
  .about-chronology__step .about-chronology__content > p { font-size: 13px; }
  .about-chronology__gallery { gap: 8px; margin-top: 14px; }
  .about-chronology__gallery--single { grid-template-columns: minmax(0, 220px); }
  .about-chronology__gallery--double, .about-chronology__gallery--triple { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-people-intro { gap: 20px; }
  .about-people-gallery { gap: 9px; }
  .about-people-gallery--intro { max-width: 360px; }
  .about-people-gallery--later { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .faq-index__layout { grid-template-columns: 1fr; gap: 26px; }
  .faq-index__intro { max-width: 620px; }
  .faq-index__list { grid-template-columns: 1fr; }
  .faq-index__list li:nth-last-child(-n+2) { border-bottom: 0; }
  .faq-index__list li:last-child { border-bottom: 1px solid var(--line); }
  .faq-item { padding: 30px 4px 34px; }
  .faq-item__content h2 { font-size: clamp(23px, 7vw, 31px); }
  .faq-item__answer { font-size: 13.5px; line-height: 1.62; }
  .work-with-us__channels-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .work-with-us__channels-heading > div { width: 100%; }
  .frischluft-profile-grid { grid-template-columns: 1fr; }
  .work-with-us > ul { grid-template-columns: 1fr; }
  .work-with-us .about-work-photo, .creator-journey .about-creator-photo { float: none; width: min(100%, 330px); margin: 18px auto 22px; }
  .about-photo-story__grid { grid-template-columns: 1fr; gap: 10px; margin-top: 26px; }
  .about-photo-story__item, .about-photo-story__item--lead { min-height: 390px; grid-column: auto; }
  .about-photo-story__item figcaption { padding: 19px; }
  .about-outdoor-dna { grid-template-columns: 1fr; gap: 22px; }
  .about-outdoor-dna__media { max-width: 420px; }
  .about-outdoor-dna__copy h2 { font-size: clamp(28px, 8vw, 38px); }
  .about-outdoor-dna__copy p:not(.eyebrow) { margin-top: 12px; font-size: 13px; line-height: 1.58; }
  .roof-tent-gallery__grid { gap: 9px; margin-top: 24px; }
  .roof-tent-intro-photo__figure { border-radius: 14px; }
  .roof-tent-intro-photo__figure figcaption { right: 9px; bottom: 9px; left: 9px; max-width: calc(100% - 18px); padding: 7px 9px; font-size: 10px; }
  .roof-tent-gallery__group + .roof-tent-gallery__group { margin-top: 46px; }
  .roof-tent-gallery__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .roof-tent-gallery__item figcaption { right: 7px; bottom: 7px; left: 7px; padding: 7px 8px; font-size: 10px; }
  .roof-tent-history__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 22px; }
  .roof-tent-history__item { padding: 16px; }
  .roof-tent-history__item h3 { font-size: 16px; }
  .roof-tent-history__item > p:last-child { font-size: 12px; }
  .roof-tent-feature { grid-template-columns: 1fr; gap: 22px; }
  .roof-tent-feature--reverse .roof-tent-feature__media, .roof-tent-feature--reverse .roof-tent-feature__copy { order: initial; }
  .roof-tent-feature__copy h2 { font-size: clamp(28px, 8vw, 38px); }
  .roof-tent-feature__copy p:not(.eyebrow) { margin-top: 12px; font-size: 13px; line-height: 1.58; }
  .roof-tent-outdoor .section-intro > p:not(.eyebrow) { font-size: 13px; line-height: 1.58; }
  .roof-tent-outdoor__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 22px; }
  .roof-tent-feature--outdoor { margin-top: 34px; margin-bottom: 34px; }
  .roof-tent-outdoor__item { border-radius: 12px; }
  .roof-tent-outdoor__item figcaption { right: 7px; bottom: 7px; left: 7px; padding: 6px 7px; font-size: 10px; }
  .roof-tent-code-box { display: grid; gap: 18px; }
  .roof-tent-code-box .button { justify-self: start; }
  .roof-tent-videos { margin-top: 48px; }
  .roof-tent-video-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 22px; }
  .roof-tent-video-card__copy { padding: 15px 16px 18px; }
  .roof-tent-video-card__copy h3 { font-size: 18px; }
  .umbau-changes-grid { grid-template-columns: 1fr; }
  .umbau-photo-intro { grid-template-columns: 1fr; gap: 10px; padding-top: 0; }
  .umbau-photo-intro__item, .umbau-photo-intro__item--main { height: min(128vw, 570px); }
  .umbau-photo-intro__item figcaption { padding: 19px; }
  .umbau-origin-gallery__grid { gap: 9px; margin-top: 26px; }
  .umbau-origin-gallery__item figcaption { right: 9px; bottom: 9px; left: 9px; font-size: 10px; }
  .umbau-interior-gallery__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 24px; }
  .umbau-area-accordion { gap: 9px; margin-top: 32px; }
  .umbau-area summary { min-height: 88px; grid-template-columns: 24px 56px minmax(0,1fr) 22px; gap: 9px; padding: 11px 12px; }
  .umbau-area__thumb { width: 56px; }
  .umbau-area summary strong { font-size: 16px; }
  .umbau-area__body { gap: 24px; padding: 19px; }
  .umbau-area__media { min-height: 220px; }
  .umbau-area-gallery__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .umbau-area-gallery--sleep .umbau-area-gallery__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .umbau-media { margin-top: 24px; padding-top: 20px; }
  .umbau-media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .umbau-media-card--youtube { grid-column: span 2; }
  .umbau-media-card--reel { grid-column: span 1; }
  .umbau-media-preview button { gap: 6px; padding: 12px; font-size: 10px; }
  .umbau-media-preview button span:first-child, .umbau-media-preview button .umbau-media-preview__play { width: 34px; height: 34px; }
  .umbau-media-preview button span:last-child { max-width: 96%; padding: 5px 8px; font-size: 9px; }
  .video-feature-card { grid-template-columns: 1fr; gap: 16px; margin-top: 32px; padding: 10px; }
  .video-feature-card__copy { padding: 4px 8px 10px; }
  .video-feature-card__copy h3 { font-size: 21px; }
  .proof-stat { min-height: 82px; grid-template-columns: 38px minmax(0,1fr); padding: 14px 12px; }
  .proof-stat__icon { width: 36px; height: 36px; border-radius: 12px; }
  .proof-stat__icon svg { width: 19px; height: 19px; }
  .proof-stat strong { font-size: 21px; }
  .proof-stat span { font-size: 10px; }
  .route-item { grid-template-columns: 36px 1fr 24px; gap: 13px; padding-block: 28px; }
  .route-item div > span { font-size: 12px; }
  .instagram-selection { grid-template-columns: repeat(3, minmax(190px,1fr)); overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; }
  .instagram-card { scroll-snap-align: start; }
  .home-story__layout, .editorial-grid, .values-layout, .private-place-expertise__layout { grid-template-columns: 1fr; }
  .blog-grid { grid-template-columns: 1fr; }
  .blog-section-heading { align-items: flex-start; flex-direction: column; }
  .story-index { max-width: 310px; margin: auto; }
  .quiet-cta { align-items: flex-start; flex-direction: column; }
  .page-hero { padding-block: 58px; }
  .fact-band__grid { grid-template-columns: 1fr 1fr; }
  .fact-band__grid div:nth-child(odd) { border-left: 0; }
  .fact-band__grid div:nth-child(n+3) { border-top: 1px solid var(--line); }
  .project-rows li { grid-template-columns: 43px 1fr; }
  .recommend-heading { grid-template-columns: 1fr; gap: 18px; }
  .amazon-shop-callout, .home-amazon-shop { align-items: flex-start; flex-direction: column; gap: 20px; }
  .code-row { grid-template-columns: 1fr auto; gap: 12px; }
  .code-row code { justify-self: end; }
  .code-row .link-offer { justify-self: end; }
  .code-row__placeholder { display: none; }
  .code-row button, .code-row a, .code-row .pending { justify-self: start; }
  .gear-category-nav { margin-block: 24px 28px; }
  .gear-group__heading { min-height: 58px; padding: 13px 15px; }
  .gear-compact-row { grid-template-columns: 54px minmax(0,1fr); gap: 10px; padding: 11px 12px; }
  .gear-compact-row__media { width: 54px; }
  .gear-compact-row__link, .gear-compact-row__pending { grid-column: 2; justify-self: start; margin-top: -4px; }
  .timeline-row { grid-template-columns: 1fr; gap: 15px; }
  .social-row a { grid-template-columns: 1fr auto; }
  .social-row small { grid-row: 2; }
  .social-row i { grid-row: 1/3; grid-column: 2; }
  .brand-logo--header { width: 104px; }
  .custom-logo { max-width: 170px; max-height: 62px; }
  .map-toolbar { top: 80px; grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto; }
  .admin-bar .map-toolbar { top: 126px; }
  .map-search { grid-row: 1; grid-column: 1/-1; }
  .map-types { grid-row: 2; grid-column: 1/-1; }
  .map-types button { flex: 1; padding-inline: 8px; font-size: 10px; white-space: normal; line-height: 1.15; }
  .map-country { grid-row: 3; grid-column: 1; }
  .map-platform { grid-row: 3; grid-column: 2; }
  .map-more { grid-row: 3; grid-column: 3; }
  .map-stage { height: 72svh; min-height: 570px; }
  .map-legend { display: none; }
  .map-zoom { top: 57px; }
  .map-fullscreen { top: 109px; left: 9px; }
  .spot-card { bottom: 9px; left: 9px; width: calc(100% - 18px); padding: 20px; }
  .content-note { grid-template-columns: 1fr; gap: 15px; }
  .footer-layout { grid-template-columns: 1fr; }
  .footer-links { justify-content: flex-start; }
  .footer-note { margin-top: -25px; }
}

@media (max-width: 430px) {
  .proof-line__inner { grid-template-columns: 1fr; }
  .proof-stat { border-top: 1px solid var(--line); border-left: 0; }
  .proof-stat:first-child { border-top: 0; }
  .gear-category-nav { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; }
  .gear-category-nav a { flex: 0 0 auto; }
  .fact-band__grid { grid-template-columns: 1fr; }
  .fact-band__grid div { border-top: 1px solid var(--line); border-left: 0; }
  .fact-band__grid div:first-child { border-top: 0; }
  .instagram-profile { display: grid; }
  .instagram-avatar { width: 62px; min-width: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Blui profile: the image sits beside the editable facts on wide screens and
   stacks naturally on phones. The Roomtour follows the facts immediately. */
.wohnwagen-profile { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(260px, .92fr); gap: 28px; margin: 34px 0 0; border: 1px solid var(--line); border-radius: 22px; padding: clamp(22px, 3.5vw, 36px); background: linear-gradient(135deg, rgba(232,241,236,.72), rgba(248,239,230,.68)); }
.wohnwagen-profile__facts { min-width: 0; }
.wohnwagen-profile__facts .eyebrow { margin-bottom: 10px; }
.wohnwagen-profile__facts h3 { margin: 0; color: var(--ink); font-size: clamp(24px, 3vw, 34px); font-weight: 680; letter-spacing: -.04em; line-height: 1.08; }
.wohnwagen-profile__facts > p { max-width: 610px; margin: 14px 0 0; color: #53615b; font-size: 14px; line-height: 1.65; }
.wohnwagen-profile__fact-list { margin: 24px 0 0; border-top: 1px solid var(--line); }
.wohnwagen-profile__fact-list div { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--line); padding: 10px 0; }
.wohnwagen-profile__fact-list dt { color: var(--muted); font-size: 11px; line-height: 1.4; }
.wohnwagen-profile__fact-list dd { margin: 0; color: var(--ink); font-size: 13px; font-weight: 730; line-height: 1.4; text-align: right; }
.wohnwagen-profile__image { align-self: start; min-width: 0; margin: 0; overflow: hidden; border-radius: 16px; background: #f1eee7; }
.wohnwagen-profile__image img { display: block; width: 100%; height: auto; max-height: 470px; object-fit: contain; }
.wohnwagen-profile__roomtour { grid-column: 1 / -1; grid-template-columns: minmax(0, 1.2fr) minmax(240px, .8fr); margin-top: 0; border-radius: 18px; }
.wohnwagen-profile__roomtour .video-feature-card__copy { padding-right: 10px; }
.wohnwagen-profile__roomtour .video-feature-card__copy h3 { font-size: clamp(21px, 2.5vw, 29px); line-height: 1.12; }

@media (max-width: 760px) {
  .wohnwagen-profile { grid-template-columns: 1fr; gap: 20px; margin-top: 28px; padding: 20px; }
  .wohnwagen-profile__image { max-width: 620px; }
  .wohnwagen-profile__roomtour { grid-column: auto; }
  .wohnwagen-profile__fact-list div { align-items: flex-start; flex-direction: column; gap: 3px; }
  .wohnwagen-profile__fact-list dd { text-align: left; }
}

/* Keep supplied photos faithful to their original proportions. Preview cards
   for YouTube and Instagram keep their own platform ratio above. */
.about-photo-story__grid,
.umbau-photo-intro,
.roof-tent-gallery__grid,
.roof-tent-outdoor__grid,
.umbau-origin-gallery__grid,
.umbau-interior-gallery__grid,
.umbau-area-gallery__grid { align-items: start; }
.about-photo-story__item,
.about-photo-story__item--lead,
.umbau-photo-intro__item,
.umbau-photo-intro__item--main { min-height: 0; height: auto; }
.about-photo-story__item img,
.umbau-photo-intro__item img,
.roof-tent-gallery__item img,
.roof-tent-feature__media img,
.roof-tent-outdoor__item img,
.umbau-origin-gallery__item img,
.umbau-interior-gallery__item img,
.umbau-area-gallery figure img,
.umbau-area-gallery--sleep figure img,
.single-post__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
  background: #f1eee7;
}
.about-photo-story__item,
.umbau-photo-intro__item,
.roof-tent-gallery__item,
.roof-tent-feature__media,
.roof-tent-outdoor__item,
.umbau-origin-gallery__item,
.umbau-interior-gallery__item,
.umbau-area-gallery figure { align-self: start; }
.roof-tent-intro-photo__figure { width: fit-content; }
.roof-tent-intro-photo__figure img { width: auto; max-width: 100%; height: auto; max-height: min(68vh, 620px); aspect-ratio: auto; }
.single-post__image img { max-height: 760px; }

.work-with-us__channels-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .42fr); align-items: start; gap: clamp(24px, 5vw, 58px); clear: both; margin-top: 32px; }
.work-with-us__channels-layout .work-with-us__channels { min-width: 0; margin: 0; }
.work-with-us__channels-layout .about-work-photo { float: none; width: 100%; max-width: none; margin: 0; align-self: stretch; }
.work-with-us__channels-layout .about-work-photo img { width: 100%; height: 100%; min-height: 280px; object-fit: cover; }

@media (max-width: 760px) {
  .work-with-us__channels-layout { grid-template-columns: 1fr; gap: 24px; }
  .work-with-us__channels-layout .about-work-photo { max-width: 360px; }
  .work-with-us__channels-layout .about-work-photo img { min-height: 0; height: auto; object-fit: contain; }
}

/* Cooperation landing page: editorial hero, image story and profile showcase. */
.platform-icon--facebook { background: #1877f2; }
.platform-icon--facebook svg { fill: currentColor; stroke: none; }
.platform-icon--tiktok { background: #111; }
.platform-icon--tiktok svg { fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.platform-icon--pinterest { background: #bd081c; }
.platform-icon--pinterest svg { fill: currentColor; stroke: none; }
.cooperation-hero { background: var(--forest); color: #fff; }
.cooperation-hero__media { position: relative; min-height: clamp(540px, 67vw, 760px); overflow: hidden; }
.cooperation-hero__media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; }
.cooperation-hero__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(15,34,27,.84) 0%, rgba(15,34,27,.55) 42%, rgba(15,34,27,.12) 100%); }
.cooperation-hero__content { position: relative; z-index: 1; display: flex; min-height: inherit; max-width: 1180px; flex-direction: column; justify-content: center; padding-block: clamp(84px, 12vw, 150px); }
.cooperation-hero .eyebrow { color: #d5e7db; }
.cooperation-hero h1 { max-width: 900px; margin: 0; color: #fff; font-size: clamp(46px, 7.2vw, 88px); font-weight: 620; letter-spacing: -.06em; line-height: .98; }
.cooperation-hero h1 em { color: #d7e7dc; font-style: normal; }
.cooperation-hero__lead { max-width: 660px; margin: 26px 0 0; color: rgba(255,255,255,.9); font-size: clamp(17px, 1.8vw, 21px); line-height: 1.55; }
.cooperation-hero__jump { display: inline-flex; align-items: center; gap: 10px; border-bottom: 1px solid rgba(255,255,255,.68); padding: 8px 0 7px; color: #fff; font-size: 12px; font-weight: 750; text-decoration: none; }
.cooperation-hero__jump span { color: #d5e7db; font-size: 18px; }
.cooperation-hero__facts-band { background: var(--paper); color: var(--ink); }
.cooperation-hero__facts { display: grid; grid-template-columns: repeat(4, 1fr); }
.cooperation-hero__fact { min-height: 112px; border-left: 1px solid var(--line); padding: 22px 21px; }
.cooperation-hero__fact:first-child { border-left: 0; }
.cooperation-hero__fact strong { display: block; color: var(--forest); font-size: 24px; font-weight: 700; letter-spacing: -.04em; line-height: 1.1; }
.cooperation-hero__fact span { display: block; max-width: 180px; margin-top: 8px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.cooperation-story { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .85fr); align-items: center; gap: clamp(42px, 8vw, 120px); }
.cooperation-story__copy { max-width: 650px; }
.cooperation-story__copy h2 { margin: 0; font-size: clamp(32px, 4.1vw, 53px); font-weight: 620; letter-spacing: -.05em; line-height: 1.06; }
.cooperation-story__copy p:not(.eyebrow) { max-width: 570px; margin: 18px 0 0; color: #53615b; font-size: 15px; line-height: 1.7; }
.cooperation-story__copy .text-link { margin-top: 22px; }
.cooperation-story__image { position: relative; min-height: 520px; margin: 0; overflow: hidden; border-radius: 24px; background: var(--sage); box-shadow: 0 20px 48px rgba(32,53,46,.12); }
.cooperation-story__image img { display: block; width: 100%; height: 100%; min-height: 520px; object-fit: cover; object-position: center 54%; }
.cooperation-story__image::after { position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(20,33,29,.78)); content: ''; pointer-events: none; }
.cooperation-story__image figcaption { position: absolute; z-index: 1; right: 22px; bottom: 20px; left: 22px; color: #fff; }
.cooperation-story__image figcaption span { display: block; margin-bottom: 6px; color: #d5e7db; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.cooperation-story__image figcaption strong { font-size: clamp(22px, 2.4vw, 32px); font-weight: 620; letter-spacing: -.03em; }
.cooperation-photo-strip { display: grid; grid-template-columns: 1.22fr .78fr; grid-template-rows: repeat(2, minmax(200px, 1fr)); gap: 14px; }
.cooperation-photo-strip__item { position: relative; min-height: 230px; margin: 0; overflow: hidden; border-radius: 20px; background: var(--sage); }
.cooperation-photo-strip__item--lead { grid-row: 1 / 3; min-height: 480px; }
.cooperation-photo-strip__item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.cooperation-photo-strip__item:hover img { transform: scale(1.025); }
.cooperation-photo-strip__item::after { position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(20,33,29,.72)); content: ''; pointer-events: none; }
.cooperation-photo-strip__item figcaption { position: absolute; z-index: 1; right: 17px; bottom: 15px; left: 17px; color: #fff; font-size: 12px; font-weight: 740; }
.cooperation-content { border-top: 1px solid var(--line); }
.cooperation-section-heading { max-width: 680px; margin-bottom: 40px; }
.cooperation-section-heading h2 { margin: 0; font-size: clamp(32px, 4vw, 50px); font-weight: 620; letter-spacing: -.05em; line-height: 1.06; }
.cooperation-section-heading > p:last-child { margin: 15px 0 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.cooperation-profiles--standalone { margin-top: 0; border-top: 1px solid var(--line); padding-top: 0; }
.cooperation-profiles--standalone .frischluft-profile-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.frischluft-profile-card__platform { display: flex; min-width: 0; align-items: center; gap: 8px; }
.frischluft-profile-card__platform .platform-icon { width: 32px; height: 32px; flex-basis: 32px; border-radius: 10px; }
.frischluft-profile-card__platform .platform-icon svg { width: 18px; height: 18px; }
.frischluft-profile-card__platform strong { overflow: hidden; color: var(--forest); font-size: 12px; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.frischluft-profile-card--feature { min-height: 164px; padding: 15px 15px 14px; background: #fff; box-shadow: 0 10px 26px rgba(32,53,46,.05); }
.frischluft-profile-card__cta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; color: var(--muted); font-size: 10px; font-weight: 750; }
.frischluft-profile-card__cta span { color: var(--coral); font-size: 15px; }
.cooperation-contact { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .84fr); align-items: center; gap: clamp(30px, 7vw, 100px); border-radius: 24px; padding: clamp(28px, 5vw, 60px); background: linear-gradient(135deg, #e8f1eb, #f4e9df); }
.cooperation-contact__copy h2 { margin: 0; font-size: clamp(32px, 4.1vw, 52px); font-weight: 620; letter-spacing: -.05em; line-height: 1.06; }
.cooperation-contact__copy > p:not(.eyebrow) { max-width: 570px; margin: 17px 0 0; color: #53615b; font-size: 15px; line-height: 1.65; }
.cooperation-contact__copy .button { margin-top: 24px; }
.cooperation-contact__visual { position: relative; min-height: 280px; margin: 0; overflow: hidden; border-radius: 18px; background: var(--sage); }
.cooperation-contact__visual img { display: block; width: 100%; height: 100%; min-height: 280px; object-fit: cover; }
.cooperation-contact__visual figcaption { position: absolute; right: 14px; bottom: 13px; left: 14px; color: #fff; font-size: 11px; font-weight: 720; text-shadow: 0 1px 8px rgba(0,0,0,.3); }

@media (max-width: 980px) {
  .cooperation-hero__facts { grid-template-columns: repeat(2, 1fr); }
  .cooperation-hero__fact:nth-child(odd) { border-left: 0; }
  .cooperation-hero__fact:nth-child(n + 3) { border-top: 1px solid var(--line); }
  .cooperation-story { grid-template-columns: 1fr; gap: 34px; }
  .cooperation-story__image { max-width: 540px; }
  .cooperation-profiles--standalone .frischluft-profile-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cooperation-contact { grid-template-columns: 1fr; }
  .cooperation-contact__visual { max-width: 520px; }
}

@media (max-width: 760px) {
  .cooperation-hero__media { min-height: 620px; }
  .cooperation-hero__media > img { object-position: center center; }
  .cooperation-hero__shade { background: linear-gradient(180deg, rgba(15,34,27,.22) 0%, rgba(15,34,27,.8) 64%, rgba(15,34,27,.9) 100%); }
  .cooperation-hero__content { justify-content: flex-end; padding-block: 64px 58px; }
  .cooperation-hero h1 { font-size: clamp(43px, 12vw, 62px); }
  .cooperation-hero__lead { font-size: 15px; }
  .cooperation-hero__facts { grid-template-columns: 1fr 1fr; }
  .cooperation-hero__fact { min-height: 100px; padding: 18px 14px; }
  .cooperation-hero__fact strong { font-size: 20px; }
  .cooperation-story__image, .cooperation-story__image img { min-height: 400px; }
  .cooperation-photo-strip { grid-template-columns: 1fr; grid-template-rows: none; gap: 10px; }
  .cooperation-photo-strip__item, .cooperation-photo-strip__item--lead { grid-row: auto; min-height: 360px; }
  .cooperation-profiles--standalone .frischluft-profile-grid { grid-template-columns: 1fr; }
  .cooperation-contact { border-radius: 18px; padding: 24px 20px; }
}
