.model-spread {
  width: 100%;
  overflow: hidden;
  background: var(--spread-bg);
  padding: clamp(3rem, 8vw, 7rem) 1.25rem clamp(2.5rem, 7vw, 6rem);
}

.model-spread__title {
  position: relative;
  z-index: 10;
  margin: 0 auto;
  max-width: 72rem;
  text-align: center;
  font-size: clamp(4rem, 10vw, 8.5rem);
  font-weight: 650;
  line-height: 0.82;
  letter-spacing: -0.075em;
}

.model-spread__stage {
  position: relative;
  height: clamp(21rem, 52vw, 39rem);
  max-width: 76rem;
  margin: clamp(2.5rem, 6vw, 5rem) auto 0;
}

.model-card {
  position: absolute;
  top: 0;
  left: 50%;
  width: var(--card-width);
  aspect-ratio: 3 / 4;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--card-border);
  border-radius: var(--card-radius);
  background: #15130f;
  box-shadow: var(--card-shadow);
  transform-origin: 50% 82%;
  transition: transform 450ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 450ms ease;
}

.model-card:hover {
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.58);
}

.model-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

.model-card:hover img {
  transform: scale(1.045);
}

.model-card__shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.72), transparent 42%);
}

.model-card figcaption {
  position: absolute;
  z-index: 2;
  left: clamp(0.8rem, 2vw, 1.15rem);
  bottom: clamp(0.8rem, 2vw, 1.15rem);
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(0.55rem, 1vw, 0.7rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.model-card--lena {
  z-index: 1;
  transform: translateX(-108%) translateY(9%) rotate(-10deg);
}

.model-card--zane {
  z-index: 3;
  transform: translateX(-50%) rotate(-3deg);
}

.model-card--kavya {
  z-index: 2;
  transform: translateX(8%) translateY(5%) rotate(7deg);
}

.model-card--lena:hover {
  transform: translateX(-108%) translateY(3%) rotate(-10deg) scale(1.025);
}

.model-card--zane:hover {
  transform: translateX(-50%) translateY(-5%) rotate(-3deg) scale(1.025);
}

.model-card--kavya:hover {
  transform: translateX(8%) translateY(-1%) rotate(7deg) scale(1.025);
}

@media (max-width: 640px) {
  :root {
    --card-width: clamp(9.5rem, 48vw, 12.5rem);
  }

  .model-spread {
    padding-inline: 0.75rem;
  }

  .model-spread__stage {
    height: clamp(19rem, 100vw, 27rem);
  }

  .model-card--lena {
    transform: translateX(-98%) translateY(11%) rotate(-9deg);
  }

  .model-card--zane {
    transform: translateX(-50%) rotate(-2deg);
  }

  .model-card--kavya {
    transform: translateX(-2%) translateY(9%) rotate(8deg);
  }

  .model-card--lena:hover {
    transform: translateX(-98%) translateY(6%) rotate(-9deg) scale(1.02);
  }

  .model-card--zane:hover {
    transform: translateX(-50%) translateY(-4%) rotate(-2deg) scale(1.02);
  }

  .model-card--kavya:hover {
    transform: translateX(-2%) translateY(4%) rotate(8deg) scale(1.02);
  }
}

@media (prefers-reduced-motion: reduce) {
  .model-card,
  .model-card img {
    transition: none;
  }
}

.chapter-influencers{display:grid;grid-template-columns:1.1fr 1fr;gap:5%;align-items:center}.chapter-influencers h2{font-size:clamp(2.8rem,4.5vw,5rem)}.influencer-context{display:block}.influencer-context .text-link{display:inline-block;margin-top:22px}.model-spread{background:transparent;padding:35px 0;--card-width:clamp(120px,14vw,235px);--card-radius:18px;--card-shadow:0 20px 45px #0005}.model-spread__stage{height:clamp(260px,27vw,450px);margin:0}.model-card{border:0}.model-card figcaption{font-size:14px;letter-spacing:.02em}
@media(max-width:850px){.chapter-influencers{grid-template-columns:1fr}.model-spread{--card-width:clamp(110px,28vw,210px)}.model-spread__stage{height:clamp(230px,48vw,360px)}}
.site-nav .menu-toggle{display:flex!important;width:100px;height:44px;position:relative;overflow:hidden;border-radius:24px;align-items:center;justify-content:center;background:#a8d4f1;color:#07121b;z-index:3;margin-left:auto}.site-nav .menu-toggle span{display:none}.menu-labels{position:absolute;inset:0;transition:transform .5s cubic-bezier(.76,0,.24,1)}.menu-labels b{display:flex;height:44px;align-items:center;justify-content:center;font-size:14px;font-weight:500}.menu-open .menu-labels{transform:translateY(-44px)}
.site-nav #main-navigation{display:flex!important;position:absolute!important;left:auto!important;right:0!important;top:0!important;width:min(460px,calc(100vw - 32px))!important;height:min(650px,calc(100dvh - 100px));padding:85px 35px 35px!important;box-sizing:border-box;flex-direction:column!important;align-items:flex-start!important;gap:12px!important;background:#102332!important;border:0!important;border-radius:24px!important;clip-path:inset(0 0 calc(100% - 44px) calc(100% - 100px) round 24px);visibility:hidden;transition:clip-path .7s cubic-bezier(.76,0,.24,1),visibility .7s;overflow:auto;pointer-events:none}.site-nav.menu-open #main-navigation{clip-path:inset(0 round 24px);visibility:visible;pointer-events:auto}.site-nav #main-navigation a{font-size:clamp(28px,4vw,42px);line-height:1.15;color:#edf7ff;opacity:0;transform:perspective(300px) translateY(35px) rotateX(70deg);transform-origin:bottom;transition:opacity .3s,transform .45s}.site-nav.menu-open #main-navigation a{opacity:1;transform:none;transition-delay:calc(.15s + var(--menu-index)*.065s)}.site-nav #main-navigation a:hover{color:#a8d4f1}.site-nav .nav-cta{margin-left:auto;margin-right:16px}.divider-wave{position:absolute;left:0;width:100%;height:40px;overflow:visible;pointer-events:none}
@media(prefers-reduced-motion:reduce){.site-nav #main-navigation,.site-nav #main-navigation a,.menu-labels{transition:none!important}}

/* Keep the menu control in the site's typography and quiet blue palette. */
.site-nav .menu-toggle{font:inherit!important;background:#152735!important;color:#dcecf7!important;border:0;box-shadow:none;transition:background .25s,color .25s,transform .2s}.site-nav .menu-toggle:hover{background:#203d50!important;color:#fff!important}.site-nav .menu-toggle:active{transform:scale(.96)}.site-nav .menu-toggle:focus-visible{outline:2px solid #a8d4f1;outline-offset:4px}.site-nav .menu-labels,.site-nav .menu-labels b{font-family:inherit!important;font-weight:500;font-size:15px;letter-spacing:-.015em}

.reading-page .site-nav{position:fixed;z-index:100;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;background:#0b1822f5}.reading-page .reading-main{padding-top:140px}

/* Contact form: honeypot field stays invisible to people; sending state. */
.brief-form .hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.brief-form button[disabled]{opacity:.6;cursor:progress}

/* Phone-width menu button: three-bar icon that folds into an X. Desktop keeps the Menu / Close pill. */
.site-nav .menu-burger{display:none}
@media(max-width:760px){
 .site-nav .menu-toggle{width:44px;height:44px;flex:0 0 44px;border-radius:14px;padding:0}
 .site-nav .menu-toggle .menu-labels{display:none}
 .site-nav .menu-burger{display:block;position:relative;width:20px;height:14px}
 .site-nav .menu-burger i{position:absolute;left:0;top:6px;width:20px;height:2px;border-radius:2px;background:currentColor;transform-origin:center;transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .18s ease}
 .site-nav .menu-burger i:nth-child(1){transform:translateY(-6px) rotate(0)}
 .site-nav .menu-burger i:nth-child(2){transform:scaleX(1)}
 .site-nav .menu-burger i:nth-child(3){transform:translateY(6px) rotate(0)}
 .site-nav .menu-toggle[aria-expanded=true] .menu-burger i:nth-child(1){transform:translateY(0) rotate(45deg)}
 .site-nav .menu-toggle[aria-expanded=true] .menu-burger i:nth-child(2){opacity:0;transform:scaleX(.3)}
 .site-nav .menu-toggle[aria-expanded=true] .menu-burger i:nth-child(3){transform:translateY(0) rotate(-45deg)}
}
@media(prefers-reduced-motion:reduce){.site-nav .menu-burger i{transition:none}}

/* Lottie section: the launch of iklipse paragraph is longer than the old two-liner. */
@media(min-width:1101px){.map-split .section-heading p{max-width:520px}}

/* Hero portrait cutout experiment: transparent PNG anchored on the hero-bottom line, no card, soft warm glow behind. */
.hero:has(.hero-portrait.cutout) .hero-layout{padding-bottom:0}
.hero:has(.hero-portrait.cutout) .hero-message{padding-bottom:clamp(30px,3vw,58px)}
.hero-portrait.cutout{aspect-ratio:auto;max-width:none;width:100%;overflow:visible;border:0;border-radius:0;box-shadow:none;background:none;align-self:end;justify-self:end;display:flex;justify-content:flex-end;align-items:flex-end;position:relative;margin-right:calc(-1 * clamp(28px,4vw,78px))}
.hero-portrait.cutout>img{position:relative;display:block;width:auto;max-width:calc(100% + clamp(28px,4vw,78px) + 8vw + clamp(0px,(100vw - 1500px) * .25,120px));height:clamp(300px,42vw,780px);aspect-ratio:auto;object-fit:contain;object-position:right bottom;filter:none;mask-image:none}
.hero-portrait.cutout figcaption{left:auto;right:clamp(28px,4vw,78px);bottom:18px}
@media(max-width:760px){.hero-portrait.cutout{justify-self:center;justify-content:center;margin-right:0}.hero-portrait.cutout>img{height:clamp(280px,92vw,420px);max-width:100%;object-position:center bottom}.hero-portrait.cutout figcaption{right:auto;left:0}}

/* Boat chapter became a two-photo row: boat (3:2) beside the event selfie (3:4), equal heights via 2fr 1fr. */
.later-boat.duo .duo-heading h2{font-size:clamp(2.1rem,3.4vw,3.5rem);letter-spacing:-.045em;line-height:1.05;margin:0 0 26px;max-width:1080px;margin-left:auto}
.later-boat.duo .duo-grid{display:grid;grid-template-columns:2fr 1fr;gap:22px;align-items:stretch;max-width:1080px;width:100%;margin:0 0 0 auto}
.later-boat.duo figure{width:100%;max-width:none;margin:0;display:flex;flex-direction:column}
.later-boat.duo img{aspect-ratio:3/2;height:auto;object-fit:cover;flex:1}
.later-boat.duo figure.portrait img{aspect-ratio:3/4;object-position:50% 35%}
@media(max-width:760px){.later-boat.duo .duo-grid{grid-template-columns:1fr}}

/* AI model cards: turn the whole fan 3deg clockwise so it sits level, and enlarge it a touch. Desktop only. */
@media(min-width:641px){.model-spread{overflow:visible}.model-spread__stage{transform:rotate(3deg) scale(1.07);transform-origin:50% 55%}}

/* Hero top strip: only the right-hand line remains, keep it on the right. */
.hero-meta{justify-content:flex-end}

/* About: small lead-in line inside the big heading. */
.cat-chapter h2 .lead-in{display:block;font-size:clamp(1.1rem,1.6vw,1.6rem);font-weight:500;letter-spacing:-.01em;line-height:1.3;margin-bottom:.35em;color:#9db6cc}
/* About: "First of all," is part of the big heading at the same size; heading reduced so all three lines fit; bigger pre-header. */
.about h2 .lead-in{display:block;font:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;margin:0}
.about .section-top{margin-bottom:34px}
.about .section-top .eyebrow{font-size:clamp(1.05rem,1.35vw,1.5rem);letter-spacing:.1em;color:#c9d9e8}
@media(min-width:1101px){.manifesto h2{font-size:clamp(4.5rem,7.2vw,9rem)}}
@media(max-width:760px){.manifesto h2{font-size:clamp(3rem,15vw,5.5rem)}}

/* Covid chapter: a quieter heading. The iklipse section becomes the big centered announcement instead. */
.origin-break h2{font-size:clamp(2.4rem,4.2vw,4.6rem)}
@media(min-width:1101px){
 .ecosystem-map.map-split{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:38px;min-height:0}
 .ecosystem-map.map-split .section-heading{width:100%;max-width:1500px}
 .ecosystem-map.map-split .section-heading h2{font-size:clamp(4rem,9vw,10rem);line-height:.95;letter-spacing:-.05em;margin:0 auto}
 .ecosystem-map.map-split .section-heading p{max-width:680px;margin:28px auto 0}
 .ecosystem-map.map-split .map-frame{justify-self:auto;margin:0 auto}
}

/* Video testimonials: out-of-focus cards get a soft blur on top of the existing opacity fade, same easing as the orbit. */
.video-orbit .video-review video{transition:filter .65s cubic-bezier(.22,1,.36,1)}
.video-orbit .video-review:not(.orbit-active) video{filter:blur(3px)}
@media(prefers-reduced-motion:reduce){.video-orbit .video-review video{transition:none}}

/* Story CTA band (homepage) and the closing CTA on the Story page. */
.story-cta{display:grid;grid-template-columns:1.25fr .75fr;gap:6%;align-items:center;padding:clamp(44px,6vw,96px) clamp(28px,4vw,78px);border-radius:26px;background:linear-gradient(125deg,#7797b012,#03070dba 55%,#1c3c5018);border:1px solid #b4d1ef28;box-shadow:inset 0 1px 0 #e4f2ff24,0 25px 70px #0006}
.story-cta h2{font-size:clamp(2.6rem,4.8vw,5.4rem);line-height:.98;letter-spacing:-.05em;margin:0}
.story-cta h2 em{font-style:normal;color:#9db6cc}
.story-cta p{margin:20px 0 0;max-width:600px;color:var(--muted);font-size:clamp(1.05rem,1.3vw,1.25rem);line-height:1.5}
.story-cta__action{display:flex;flex-direction:column;align-items:flex-start;gap:16px;justify-self:end}
.story-cta__action .pill{font-size:1.125rem;padding:18px 28px}
.story-cta__note{font-size:.9375rem;color:var(--muted);letter-spacing:.02em}
@media(max-width:760px){.story-cta{grid-template-columns:1fr;gap:26px;padding:34px 24px}.story-cta__action{justify-self:start}}

/* Story page hero: text only, same card as the homepage hero. */
@media(min-width:761px){.story-hero .hero-layout{grid-template-columns:1.4fr .8fr}}
@media(max-width:760px){.story-hero .hero-layout{grid-template-columns:1fr;gap:28px}.story-hero .hero-portrait.cutout{justify-self:center;margin:0;transform:none;clip-path:none}}
.story-hero .hero-message p{max-width:780px}

/* Hero headline: a touch smaller so "Wacky business" stays on one line from 1101px up. */
@media(min-width:1101px){.hero h1{font-size:clamp(3.6rem,7.3vw,8.25rem)}}

/* Menu panel: seven links now; let the panel grow instead of wrapping into a second column. */
.site-nav #main-navigation{height:auto!important;max-height:calc(100dvh - 100px);flex-wrap:nowrap!important;overflow-x:hidden;overflow-y:auto}

/* Story CTA band with the stage photo: copy + button left, framed photo right. */
.story-cta--photo{grid-template-columns:1.02fr .98fr;gap:5%}
.story-cta--photo .story-cta__copy .story-cta__action{margin-top:28px;justify-self:auto}
.story-cta__photo{position:relative;margin:0;border-radius:18px;overflow:hidden;border:1px solid #bdd1e226;box-shadow:0 18px 45px #0008;background:#070b10}
.story-cta__photo img{display:block;width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;object-position:50% 45%}
.story-cta__photo figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:10px 14px;font-size:.875rem;line-height:1.45;color:#eaf5ff;background:#08131cd9;border:1px solid #ffffff2b;border-radius:10px;backdrop-filter:blur(14px)}
@media(max-width:760px){.story-cta--photo{grid-template-columns:1fr}.story-cta__photo figcaption{position:static;margin-top:0;border-radius:0 0 10px 10px}}

.story-cta--photo h2{font-size:clamp(2.2rem,3.6vw,4.2rem)}

/* Written reviews reel: larger tiles (130px on a 144px pitch), outer columns fade toward their outer edge. */
.quote-reel{--reel-pitch:144px}
.portrait-reels{height:470px}
.portrait-column{top:calc(50% - 65px);gap:14px;width:130px}
.portrait-column.middle{left:calc(50% - 65px)}
.portrait-column.left{left:calc(50% - 209px);mask-image:linear-gradient(90deg,transparent,#000 82%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 82%)}
.portrait-column.right{left:calc(50% + 79px);mask-image:linear-gradient(270deg,transparent,#000 82%);-webkit-mask-image:linear-gradient(270deg,transparent,#000 82%)}
.portrait-column img,.reel-cell{width:130px;height:130px;flex:0 0 130px;border-radius:16px}
@media(max-width:760px){.portrait-reels{height:300px}}

/* Freyusion poster: keep Nabil in frame on the right, the pointing arm runs into the fade. */
#sharing-ideas .story-photo img{object-position:78% 42%}

/* Team chapter: two 4:3 photos side by side under the heading, with a short line of copy. */
.later-boat.duo.team-duo .duo-grid{grid-template-columns:1fr 1fr}
.later-boat.duo.team-duo img{aspect-ratio:4/3}
.later-boat.duo .duo-heading p{max-width:600px;margin:14px auto 28px 0;color:var(--muted);font-size:1.125rem;line-height:1.6}
.later-boat.duo .duo-heading{max-width:1080px;margin-left:auto}
@media(max-width:760px){.later-boat.duo.team-duo .duo-grid{grid-template-columns:1fr}}

/* About hero: portrait sits 48px lower (head lower in the card); the clipped bottom keeps the visible edge on the line. */
.story-hero .hero-portrait.cutout{transform:translateY(48px);clip-path:inset(-100vh -100vw 48px -100vw)}
.story-hero .hero-portrait.cutout figcaption{bottom:calc(18px + 48px)}
@media(max-width:760px){.story-hero .hero-portrait.cutout{transform:none;clip-path:none}.story-hero .hero-portrait.cutout figcaption{bottom:18px}}

/* Life chapter: the pool photo is a gentle 4:5 portrait instead of the old 3:2 frame. */
#life img{aspect-ratio:4/3;height:auto;object-fit:cover;object-position:50% 45%}
#life figure{max-width:560px}

/* Intro: the hard-coded first word waits below the frame until the script animates it in, so "Ready" never shows twice. */
@media(prefers-reduced-motion:no-preference){.intro .intro-word:not(.word-arrive):not(.word-leave){transform:translate3d(0,115%,0)}}

/* Performance: the pointer-reactive mesh used to be four radial gradients on a full-viewport pseudo-element, repainted every frame while it drifted (a 3440px-wide raster, then re-blurred by the eight backdrop layers). The gradients now live on four fixed layers that only move with GPU transforms; nothing repaints. */
body:before{background:linear-gradient(125deg,#03070b,#010203 62%,#071017);will-change:auto}
.mesh{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none;contain:strict}
.mesh>i{position:absolute;left:-30vw;top:-30vh;width:160vw;height:160vh;display:block;will-change:transform;transform:translate3d(calc((var(--x) - 50%) * .625),calc((var(--y) - 50%) * .625),0)}
.mesh>.a{--x:var(--mesh-a-x);--y:var(--mesh-a-y);background:radial-gradient(ellipse 65vw 65vh at 50% 50%,#17486c6b 0%,#09213545 38%,transparent 73%)}
.mesh>.b{--x:var(--mesh-b-x);--y:var(--mesh-b-y);background:radial-gradient(ellipse 55vw 65vh at 50% 50%,#2c546634 0%,#10263430 43%,transparent 76%)}
.mesh>.c{--x:var(--mesh-c-x);--y:var(--mesh-c-y);background:radial-gradient(ellipse 50vw 60vh at 50% 50%,#41758d25 0%,transparent 74%)}
.mesh>.d{--x:var(--mesh-d-x);--y:var(--mesh-d-y);background:radial-gradient(ellipse 75vw 85vh at 50% 50%,#000205fa 0%,#020508dc 60%,transparent 95%)}

/* Performance round 2: mesh layers are static now (no compositor layers needed) and the full-screen noise no longer blends per frame. */
.mesh>i{will-change:auto}
body:after{mix-blend-mode:normal;opacity:.02}

/* Storage notice: thin, wide, centred bar along the bottom instead of a card in the corner. */
.consent-banner{left:50%;right:auto;bottom:16px;transform:translateX(-50%);width:min(1080px,calc(100vw - 32px));padding:12px 18px 12px 22px;border-radius:16px;display:flex;align-items:center;gap:22px;font-size:.9375rem;line-height:1.4}
.consent-banner[hidden]{display:none}
.consent-banner p{margin:0;flex:1 1 auto}
.consent-banner strong{font-size:1rem;margin-right:6px}
.consent-banner p br{display:none}
.consent-banner .consent-actions{flex:0 0 auto;flex-wrap:nowrap;align-items:center;gap:14px}
.consent-banner .consent-actions button{flex:0 0 auto;min-height:40px;padding:9px 16px}
.consent-banner .consent-actions a{white-space:nowrap;font-size:.9rem}
@media(max-width:760px){.consent-banner{flex-direction:column;align-items:stretch;gap:12px;bottom:12px;width:calc(100vw - 24px);padding:14px 16px}.consent-banner .consent-actions{justify-content:space-between}}

/* Story page: the iklipse launch chapter, the one big centred moment of the timeline. */
.launch-chapter h2{font-size:clamp(3rem,6.5vw,7.5rem)!important;line-height:.95;letter-spacing:-.05em}
.launch-chapter p{max-width:720px;margin:0 auto}
.launch-chapter .launch-photo{margin:40px auto 28px;max-width:960px;width:100%;border-radius:18px;overflow:hidden;border:1px solid #bdd1e226;box-shadow:0 18px 45px #0008}
.launch-chapter .launch-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}

/* Storage notice: one line on desktop. */
@media(min-width:1101px){.consent-banner{width:min(1280px,calc(100vw - 32px))}.consent-banner p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
img,video{-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}

/* Review dots on phones: one row, edges faded, active dot centred (scrolled by the script). */
@media(max-width:760px){.quote-dots{display:flex;flex-wrap:nowrap;justify-content:flex-start;overflow:hidden;width:100%;max-width:280px;margin:14px auto 0;padding:0 70px;box-sizing:border-box;gap:8px;mask-image:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent)}.quote-dots button{flex:0 0 auto}}

/* Written reviews: no running counter. */
.quote-reel .quote-count{display:none}

/* Phones: the temple photo matches the father photo's width, trimmed a little at the bottom. Desktop untouched. */
@media(max-width:760px){#family-business .tourism-temple{width:100%;max-width:none;margin-left:0;margin-right:0}#family-business .tourism-temple img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 0}}

/* Phones only: Digiredo symbol centred and larger; Freyusion poster shows the full frame with the pointing hand. */
@media(max-width:760px){
 #point-of-view .story-photo{grid-column:1/3;grid-row:3;justify-self:center;width:100%;max-width:270px;transform:none}
 #sharing-ideas{padding-bottom:280px}
 #sharing-ideas .story-photo{height:auto;bottom:0}
 #sharing-ideas .story-photo img{aspect-ratio:3/2;height:auto;width:100%;object-fit:cover;object-position:50% 50%}
}

/* Phone footer: ordered rows instead of a loose wrap; cookie settings live on the policy page there. */
@media(max-width:760px){
 footer{display:grid!important;grid-template-columns:1fr 1fr;align-items:center;gap:18px 14px;padding:34px 24px 40px}
 footer>a.logo{grid-column:1;grid-row:1;margin:0}
 footer>span{grid-column:2;grid-row:1;text-align:right;font-size:.85rem;color:var(--muted)}
 footer>div:not(.legal-links){grid-column:1/3;grid-row:2;display:flex;gap:22px;padding:14px 0;border-top:1px solid #ffffff14;border-bottom:1px solid #ffffff14}
 footer>div:not(.legal-links) a{margin:0}
 footer .legal-links{grid-column:1/3;grid-row:3;display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin:0}
 footer .legal-links a{margin:0;font-size:.9rem}
 footer .legal-links button[data-consent]{display:none}
 footer>a:not(.logo){grid-column:1/3;grid-row:4;justify-self:center;margin:6px 0 0;font-size:.9rem}
}

/* Written reviews: no pause button anywhere; on phones the arrows sit above the quote and the dots directly under it. */
.quote-controls .quote-pause{display:none}
@media(max-width:760px){
 .quote-content{display:flex;flex-direction:column}
 .quote-controls{order:-1;margin:0 0 18px;justify-content:flex-end}
 .quote-mark{order:0}
 .quote-stage{order:1}
 .quote-dots{order:2;margin-top:10px}
}

/* Written reviews: the quote follows the finger with a rubber band, snaps back on a short drag, slides out in the swipe direction. */
.quote-stage{transition:translate .38s cubic-bezier(.22,1,.36,1),opacity .22s,transform .22s}
.quote-reel.is-dragging .quote-stage{transition:opacity .22s,transform .22s}
.quote-stage.leaving{transform:translate(var(--exit-x,0px),-12px)}

/* Family business: the edited pyramids photo is shown in full (wide frame) instead of the old square crop. */
#family-business .tourism-father img{aspect-ratio:auto;height:auto;width:100%;object-fit:contain}
