.approved-experience { --motion-ease: cubic-bezier(.22,1,.36,1); --motion-fast: 180ms; --motion-medium: 420ms; --motion-enter: 680ms; }
/* One rounded navigation frame, with a quieter footprint after the opening. */
.approved-experience .site-nav.site-nav--editorial,.approved-experience .site-nav.site-nav--editorial.is-scrolled {
  border-radius: 999px; top: 20px; height: 76px; padding-inline: 27px 12px;
  width: min(calc(100% - 48px),1536px); gap: 23px;
  background: #ffffffed; border-color: #ffffffc7;
  box-shadow: 0 8px 35px #26342d16,0 1px 3px #26342d0a;
  transition: width var(--motion-medium) var(--motion-ease),height var(--motion-medium) var(--motion-ease),top var(--motion-medium) var(--motion-ease),box-shadow var(--motion-medium) ease;
}
.approved-experience .site-nav.site-nav--editorial.is-scrolled { top: 12px; width: min(calc(100% - 96px),1180px); height: 64px; box-shadow: 0 8px 32px #26342d20; }
.approved-experience .site-nav--editorial .logo img { width: 165px; transition: width var(--motion-medium) var(--motion-ease); }
.approved-experience .site-nav--editorial.is-scrolled .logo img { width: 148px; }
.approved-experience .site-nav--editorial .nav-links { gap: 5px; }
.approved-experience .site-nav--editorial .nav-links a { min-height: 44px; padding-inline: 12px; font-weight: 500; }
.approved-experience .site-nav--editorial .nav-links a::after { height: 2px; border-radius: 3px; bottom: 7px; }
.approved-experience .site-nav--editorial .nav-cta { min-height: 48px; border-radius: 999px; padding: 0 10px 0 21px; gap: 17px; font-weight: 600; transition: background var(--motion-fast) ease,transform var(--motion-fast) var(--motion-ease); }
.approved-experience .site-nav--editorial .nav-cta>span:last-child { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #ffffff1c; }
.approved-experience .site-nav.site-nav--editorial .menu-toggle { border-radius: 50%; min-width: 44px; width: 44px; height: 44px; border-color: #dce3de; }
.approved-experience .site-nav.site-nav--editorial .mobile-menu:not([hidden]) { border-radius: 23px; padding: 17px 23px; top: calc(100% + 11px); box-shadow: 0 20px 55px #26342d24; animation: menu-enter 260ms var(--motion-ease) both; }
@keyframes menu-enter { from { opacity: 0; transform: translateY(-8px) scale(.98); } to { opacity: 1; transform: none; } }

/* Touch and pointer feedback are shared by every primary action. */
.approved-experience .hero .hero-actions .button,.approved-experience .packages .product-copy .product-link,.approved-experience .bergen .bergen-actions .button,.approved-experience .ready .ready-content .button { border-radius: 999px; min-height: 56px; padding-inline: 24px; transition: background var(--motion-fast) ease,box-shadow var(--motion-fast) ease,transform var(--motion-fast) var(--motion-ease); }
.approved-experience .button:active,.approved-experience .site-nav--editorial .nav-cta:active,.approved-experience .site-nav--editorial .menu-toggle:active { transform: scale(.975); }
.approved-experience .hero .hero-actions .button:hover,.approved-experience .packages .product-copy .product-link:hover,.approved-experience .bergen .bergen-actions .button:hover,.approved-experience .ready .ready-content .button:hover { transform: translateY(-2px); box-shadow: 0 8px 20px #26342d20; }
.approved-experience .button svg,.approved-experience .button>span[aria-hidden],.approved-experience .nav-cta>span:last-child { transition: transform var(--motion-fast) var(--motion-ease); }
.approved-experience .button:hover svg,.approved-experience .button:hover>span[aria-hidden] { transform: translate(2px,-2px); }
.approved-experience a,.approved-experience button,.approved-experience summary { -webkit-tap-highlight-color: transparent; }
.approved-experience main :focus-visible,.approved-experience .footer :focus-visible { outline: 2px solid var(--brand); outline-offset: 5px; }

/* The studio photograph has a softer edge and more room around its subject. */
.approved-experience .tech-studio img { border-radius: 21px; height: 260px; object-position: center 58%; filter: contrast(.97) saturate(.97); box-shadow: 0 12px 35px #26342d12; }
.approved-experience .tech-studio figcaption { padding-left: 6px; padding-top: 15px; }
.approved-experience .usb-visual figcaption small,.approved-experience .usb-visual figcaption>span { border-radius: 999px; padding: 7px 12px; }
.approved-experience .gallery-controls { display: none; }

/* Privacy is a deliberate visual pause, with the promise above its practical details. */
.approved-experience .trust { background: #f4f6f7; padding-block: 91px 88px; }
.approved-experience .trust .trust-heading { display: grid; grid-template-columns: 1fr .92fr; align-items: center; gap: 9%; }
.approved-experience .trust .trust-intro .eyebrow { grid-column: auto; }
.approved-experience .trust .trust-intro h2 { font-size: clamp(46px,4.9vw,78px); line-height: 1.02; margin-top: 27px; }
.approved-experience .trust .trust-intro .trust-lead { margin-top: 25px; max-width: 380px; font-size: 17px; }
.approved-experience .trust-portrait { position: relative; margin: 0 10px 0 0; padding: 13px 13px 55px; background: #fff; border-radius: 24px; box-shadow: 10px 10px 0 #e4e8ea,0 18px 50px #26342d0f; transform: rotate(2deg); }
.approved-experience .trust-portrait-photo { height: 225px; border-radius: 15px; background: url('/assets/experience/hero-lively-v3.png') 73% 46%/cover no-repeat; }
.approved-experience .trust-portrait figcaption { position: absolute; left: 23px; right: 23px; bottom: 19px; display: flex; justify-content: space-between; align-items: center; gap: 15px; color: var(--ink-soft); font-size: 9px; }
.approved-experience .trust-private-label { display: flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 600; color: var(--brand-deep); }
.approved-experience .trust-private-label svg { width: 17px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.4; }
.approved-experience .trust .trust-details { padding: 0; background: none; margin-top: 47px; }
.approved-experience .trust .trust-points { display: grid; grid-template-columns: repeat(3,1fr); gap: 17px; }
.approved-experience .trust .trust-points li,.approved-experience .trust .trust-points li:first-child { position: relative; border: 1px solid #e0e6e2; border-radius: 21px; padding: 28px 27px 30px; background: #fff; }
.approved-experience .trust .trust-points li>.trust-icon { display: grid; place-items: center; border-radius: 50%; background: #f1f5f0; width: 48px; height: 48px; margin-bottom: 22px; }
.approved-experience .trust .trust-icon svg { width: 28px; height: 28px; }
.approved-experience .trust .trust-points strong { font-size: 19px; font-weight: 550; }
.approved-experience .trust .trust-layout .trust-points li p { font-size: 14px; margin-top: 13px; }
.approved-experience .trust .trust-layout>div.trust-details>a { display: inline-flex; align-items: center; margin-top: 25px; font-size: 13px; min-height: 44px; padding-bottom: 0; gap: 18px; }

/* An expressive final invitation, with the action visually attached to the message. */
.approved-experience .ready { min-height: 690px; }
.approved-experience .ready .ready-content { padding-block: 97px; }
.approved-experience .ready .ready-content .eyebrow { color: #fff; font-size: 10px; letter-spacing: .17em; }
.approved-experience .ready h2 { font-size: clamp(60px,6.4vw,104px); max-width: 840px; font-weight: 550; line-height: .99; letter-spacing: -.055em; margin: 28px 0; }
.approved-experience .ready h2 em { display: inline-block; padding: 0 7px 7px 0; color: #deecd8; background: linear-gradient(110deg,#fff 8%,#deecd8 56%,#a9c69f); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.approved-experience .ready .ready-content>p:not(.eyebrow):not(.ready-assurance) { max-width: 430px; font-size: 17px; color: #fffffff0; }
.approved-experience .ready .ready-content .ready-order-link { display: inline-flex; align-items: center; gap: 35px; min-height: 73px; padding: 11px 12px 11px 28px; margin-top: 31px; box-shadow: 0 6px 22px #20252225; }
.approved-experience .ready-order-link .cta-copy { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
.approved-experience .ready-order-link .cta-copy strong { font-size: 16px; font-weight: 650; line-height: 1.2; }
.approved-experience .ready-order-link .cta-copy small { font-size: 11px; font-weight: 400; line-height: 1.2; color: var(--ink-soft); }
.approved-experience .ready-order-link .cta-arrow { display: grid; place-items: center; width: 47px; height: 47px; border-radius: 50%; background: var(--brand-strong); color: #fff; }
.approved-experience .ready-order-link .cta-arrow svg { width: 22px; height: 22px; }
.approved-experience .ready .ready-content>p.ready-assurance { color: #ffffffe6; font-size: 11px; margin-top: 18px; }
.approved-experience .footer { padding-block: 42px 26px; }
.approved-experience .footer .footer-main { padding-top: 0; border-top: 0; }

/* One entrance language, and scene transitions that retain spatial continuity. */
.motion-enabled .approved-experience [data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity var(--motion-enter) var(--motion-ease),transform var(--motion-enter) var(--motion-ease); transition-delay: var(--reveal-delay,0ms); }
.motion-enabled .approved-experience [data-reveal].is-revealed { opacity: 1; transform: none; }
.motion-enabled .approved-experience .trust-portrait[data-reveal].is-revealed { transform: rotate(2deg); }
.approved-experience .story .story-scene { transition: opacity 650ms ease,transform 900ms var(--motion-ease); }
.approved-experience .story .story-controls { border-radius: 999px; }
.approved-experience .story .story-controls button { min-width: 44px; min-height: 44px; }
.approved-experience .story .story-chapters button { min-height: 44px; }
.approved-experience .packages .product-nav button { min-height: 44px; }
.approved-experience .product-showcase,.approved-experience .story-stage { touch-action: pan-y pinch-zoom; }
.approved-experience .story-chapters button:active,.approved-experience .product-nav button:active { opacity: .7; }
.approved-experience .result-gallery { outline-offset: -4px; }

@media (max-width: 1100px) and (min-width: 761px) {
  .approved-experience .site-nav--editorial .nav-links a { padding-inline: 9px; font-size: 12px; }
  .approved-experience .site-nav--editorial .logo img { width: 151px; }
  .approved-experience .site-nav--editorial.is-scrolled .logo img { width: 139px; }
  .approved-experience .trust .trust-heading { gap: 7%; }
  .approved-experience .trust .trust-intro h2 { font-size: 51px; }
  .approved-experience .trust-portrait-photo { height: 210px; }
  .approved-experience .trust .trust-points li,.approved-experience .trust .trust-points li:first-child { padding: 25px 22px; }
}
@media (max-width: 760px) {
  .approved-experience .site-nav.site-nav--editorial { top: 12px; width: calc(100% - 24px); height: 66px; padding-inline: 17px 10px; gap: 8px; }
  .approved-experience .site-nav.site-nav--editorial.is-scrolled { top: 10px; width: calc(100% - 40px); height: 60px; padding-inline: 15px 8px; gap: 7px; }
  .approved-experience .site-nav--editorial .logo img { width: 133px; }
  .approved-experience .site-nav--editorial.is-scrolled .logo img { width: 125px; }
  .approved-experience .site-nav--editorial .nav-cta { min-height: 44px; padding: 0 8px 0 14px; gap: 9px; font-size: 11px; }
  .approved-experience .site-nav--editorial .nav-cta>span:last-child { width: 26px; height: 26px; font-size: 17px; }
  .approved-experience .site-nav.site-nav--editorial .menu-toggle { min-width: 44px; width: 44px; height: 44px; }
  .approved-experience .site-nav--editorial .mobile-menu a { min-height: 54px; }
  .approved-experience .hero .hero-actions .button,.approved-experience .packages .product-copy .product-link,.approved-experience .bergen .bergen-actions .button { min-height: 54px; padding-inline: 23px; }
  .approved-experience .tech-studio img { height: 235px; border-radius: 19px; }
  .approved-experience .result .result-gallery { position: relative; display: flex; height: 365px; padding: 0 20px; gap: 12px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-padding-inline: 20px; scrollbar-width: none; overscroll-behavior-x: contain; }
  .approved-experience .result-gallery::-webkit-scrollbar { display: none; }
  .approved-experience .result .result-gallery .result-photo { display: block; flex: 0 0 86%; height: 100%; border-radius: 21px; scroll-snap-align: start; transform: none; }
  .approved-experience .gallery-controls { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 10px; }
  .approved-experience .gallery-controls p { color: var(--ink-soft); font-size: 10px; line-height: 1.4; }
  .approved-experience .gallery-controls nav { display: flex; gap: 0; }
  .approved-experience .gallery-controls button { display: grid; place-items: center; min-height: 44px; width: 44px; min-width: 44px; border: 0; background: transparent; }
  .approved-experience .gallery-controls button::before { content: ''; width: 6px; height: 6px; border-radius: 999px; background: #c8d1ca; transition: width var(--motion-fast) ease,background var(--motion-fast) ease; }
  .approved-experience .gallery-controls button[aria-current]::before { width: 19px; background: var(--brand-strong); }
  .approved-experience .gallery-position { color: var(--brand-deep); font-size: 11px; font-variant-numeric: tabular-nums; }
  .approved-experience .result .result-footer { margin-top: 19px; }
  .approved-experience .trust { padding-block: 65px 59px; }
  .approved-experience .trust .trust-heading { display: flex; flex-direction: column; align-items: stretch; gap: 33px; }
  .approved-experience .trust .trust-intro h2 { font-size: clamp(43px,11.5vw,60px); margin-top: 23px; }
  .approved-experience .trust .trust-intro .trust-lead { font-size: 15px; margin-top: 23px; }
  .approved-experience .trust-portrait { max-width: 470px; margin-right: 10px; border-radius: 21px; padding: 11px 11px 54px; }
  .approved-experience .trust-portrait-photo { height: 205px; border-radius: 13px; }
  .approved-experience .trust-portrait figcaption { left: 20px; right: 18px; bottom: 18px; }
  .approved-experience .trust-private-label { font-size: 11px; }
  .approved-experience .trust .trust-details { margin-top: 34px; }
  .approved-experience .trust .trust-points { display: grid; grid-template-columns: 1fr; gap: 11px; }
  .approved-experience .trust .trust-points li,.approved-experience .trust .trust-points li:first-child { display: grid; grid-template-columns: 43px 1fr; gap: 17px; padding: 23px 20px; border: 1px solid #e0e6e2; border-radius: 20px; }
  .approved-experience .trust .trust-points li>.trust-icon { width: 43px; height: 43px; margin: 0; }
  .approved-experience .trust .trust-points strong { font-size: 17px; }
  .approved-experience .trust .trust-layout .trust-points li p { font-size: 13px; margin-top: 9px; }
  .approved-experience .trust .trust-layout>div.trust-details>a { font-size: 12px; margin-top: 17px; }
  .approved-experience .ready { min-height: 660px; }
  .approved-experience .ready .ready-content { padding-block: 75px; }
  .approved-experience .ready h2 { font-size: clamp(55px,14vw,75px); margin-block: 24px; line-height: 1.01; }
  .approved-experience .ready .ready-content>p:not(.eyebrow):not(.ready-assurance) { font-size: 15px; max-width: 340px; }
  .approved-experience .ready .ready-content .ready-order-link { min-height: 72px; padding: 11px 12px 11px 25px; gap: 30px; margin-top: 28px; }
  .approved-experience .ready-order-link .cta-copy strong { font-size: 15px; }
  .approved-experience .ready-order-link .cta-copy small { font-size: 10px; }
  .approved-experience .story .story-stage:not([data-scene='3']) .story-hint-action::after { content: ' · eller sveip'; }
  .approved-experience .footer { padding-top: 34px; }
}
@media (max-width: 360px) {
  .approved-experience .site-nav--editorial .logo img { width: 119px; }
  .approved-experience .site-nav--editorial.is-scrolled .logo img { width: 112px; }
  .approved-experience .site-nav--editorial .nav-cta { padding-left: 11px; gap: 6px; }
  .approved-experience .site-nav--editorial .nav-cta>span:last-child { width: 23px; height: 23px; }
  .approved-experience .trust-portrait figcaption { font-size: 8px; }
  .approved-experience .trust-private-label { font-size: 10px; }
  .approved-experience .ready h2 { font-size: 50px; }
  .approved-experience .gallery-controls p { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.approved-experience) { scroll-behavior: auto; }
  .approved-experience *,.approved-experience *::before,.approved-experience *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0ms !important; scroll-behavior: auto !important; }
  .motion-enabled .approved-experience [data-reveal] { opacity: 1; transform: none; }
  .motion-enabled .approved-experience .trust-portrait[data-reveal] { transform: rotate(2deg); }
  .approved-experience .button:active,.approved-experience .site-nav--editorial .nav-cta:active,.approved-experience .site-nav--editorial .menu-toggle:active { transform: none; }
}
