/* ══════════════════════════════════════════════════════════════════════════
   OCEAN WORLD 2027 — shared site chrome
   Base reset, sticky navigation, compact footer, contact form, utility pages.
   Section styles for the landing page follow below this file in site.css.
   ══════════════════════════════════════════════════════════════════════════ */

:root{
  --ink:#0A2830; --ink-2:#0C3139; --ink-3:#08222A;
  --teal:#0D8891; --teal-d:#0A6B73; --foam:#8DB6BB; --amber:#EE962A;
  --paper:#F2F6F6;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --nav-h:64px;
  --wrap:1180px;
}

*,*::before,*::after{ box-sizing:border-box; }

/* No image may exceed its container, ever. This is a seatbelt, not a layout
   rule — every image on the site is already sized by its own class. It is here
   because of a real failure: when a browser paired new markup with a cached
   older stylesheet, the nav and hero logos had no rules and fell back to their
   intrinsic 1073px, overflowing the viewport and rendering the page unusable.
   Fingerprinted asset filenames stop that happening again, but a missing width
   should degrade to a merely large image rather than a broken page.
   height:auto keeps the aspect ratio when max-width becomes the binding
   constraint. Both are deliberately element selectors, specificity (0,0,1), so
   every real rule on the site — .ow-nav__logo's height:48px, the cover images'
   height:100% — still wins. Do not rewrite this as img[width][height]: attribute
   selectors score like classes and would silently outrank those. */
img{ max-width:100%; height:auto; }

html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
}
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
}

body{
  margin:0;
  background:var(--ink);
  color:#E7EFF0;
  font-family:var(--body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-wrap:break-word;
}

/* anything targeted by an anchor clears the sticky header */
[id]{ scroll-margin-top:calc(var(--nav-h) + 14px); }

a{ color:inherit; }

::selection{ background:var(--amber); color:#12252B; }

:focus-visible{
  outline:3px solid var(--amber);
  outline-offset:3px;
  border-radius:3px;
}

/* ─── skip link ─────────────────────────────────────────────────────────── */
.ow-skip{
  position:absolute; left:12px; top:-60px; z-index:2000;
  background:var(--amber); color:#12252B;
  font:600 14px/1 var(--body);
  padding:12px 18px; border-radius:8px; text-decoration:none;
  transition:top .18s ease;
}
.ow-skip:focus{ top:12px; }

.ow-vh{
  position:absolute!important; width:1px; height:1px;
  padding:0; margin:-1px; overflow:hidden;
  clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

/* ═══ STICKY NAVIGATION ═════════════════════════════════════════════════ */
.ow-nav{
  position:fixed; inset:0 0 auto 0; z-index:1000;
  height:var(--nav-h);
  display:flex; align-items:center;
  background:transparent;
  transition:background .32s ease, box-shadow .32s ease, backdrop-filter .32s ease;
}
.ow-nav::after{
  content:''; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(180deg, rgba(8,34,42,.80), rgba(8,34,42,0));
  opacity:1; transition:opacity .32s ease;
}
.ow-nav.is-solid{
  background:rgba(9,35,43,.92);
  box-shadow:0 1px 0 rgba(141,182,187,.16), 0 10px 30px rgba(0,0,0,.28);
}
@supports (backdrop-filter:blur(10px)){
  .ow-nav.is-solid{ background:rgba(9,35,43,.78); backdrop-filter:blur(14px) saturate(1.2); }
}
.ow-nav.is-solid::after{ opacity:0; }

.ow-nav__in{
  width:100%; max-width:var(--wrap);
  margin:0 auto; padding:0 clamp(16px,3.4vw,32px);
  display:flex; align-items:center; gap:18px;
}

.ow-nav__brand{
  display:inline-flex; align-items:center; gap:11px;
  text-decoration:none; color:#fff; margin-right:auto;
  flex:0 0 auto;
}
/* The supplied lockup is nearly square and carries its own wordmark, so it
   replaces the old mark-plus-text pairing outright. 48px is the most a 64px bar
   will take without crowding the underline; below about 44px the word "ocean"
   starts to close up, which is why the phone size only drops to 42. */
.ow-nav__logo{ display:block; height:48px; width:auto; }
@media (max-width:520px){ .ow-nav__logo{ height:42px; } }

.ow-nav__menu{ display:flex; align-items:center; gap:clamp(4px,1.5vw,10px); }
.ow-nav__menu a{
  position:relative;
  font-size:14px; font-weight:500; letter-spacing:.012em;
  color:#CFE0E2; text-decoration:none;
  padding:9px 11px; border-radius:8px; white-space:nowrap;
  transition:color .2s ease, background .2s ease;
}
.ow-nav__menu a::after{
  content:''; position:absolute; left:11px; right:11px; bottom:4px; height:2px;
  background:var(--amber); border-radius:2px;
  transform:scaleX(0); transform-origin:left; transition:transform .26s ease;
}
.ow-nav__menu a:hover{ color:#fff; }
.ow-nav__menu a:hover::after,
.ow-nav__menu a.is-current::after{ transform:scaleX(1); }
.ow-nav__menu a.is-current{ color:#fff; }

.ow-nav__cta{
  background:var(--amber); color:#12252B!important;
  font-weight:700!important; padding:10px 18px!important;
  border-radius:999px!important; margin-left:8px;
  box-shadow:0 6px 18px rgba(238,150,42,.30);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.ow-nav__cta::after{ display:none!important; }
.ow-nav__cta:hover{
  transform:translateY(-2px); filter:brightness(1.06);
  box-shadow:0 10px 26px rgba(238,150,42,.42);
}

/* burger */
.ow-nav__burger{
  display:none;
  width:44px; height:40px; padding:0;
  background:transparent; border:1px solid rgba(141,182,187,.34);
  border-radius:9px; cursor:pointer;
}
.ow-nav__burger span{
  display:block; width:19px; height:2px; margin:4px auto;
  background:#DCE9EA; border-radius:2px;
  transition:transform .26s ease, opacity .2s ease;
}
.ow-nav__burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.ow-nav__burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.ow-nav__burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

@media (max-width:860px){
  .ow-nav__burger{ display:block; }
  .ow-nav__menu{
    position:fixed; inset:var(--nav-h) 0 auto 0;
    flex-direction:column; align-items:stretch; gap:2px;
    background:rgba(8,32,40,.98);
    padding:14px clamp(16px,4vw,26px) 22px;
    border-top:1px solid rgba(141,182,187,.18);
    box-shadow:0 24px 50px rgba(0,0,0,.42);
    transform:translateY(-12px); opacity:0; pointer-events:none;
    transition:transform .26s ease, opacity .22s ease;
    max-height:calc(100vh - var(--nav-h)); overflow-y:auto;
  }
  @supports (backdrop-filter:blur(10px)){
    .ow-nav__menu{ background:rgba(8,32,40,.90); backdrop-filter:blur(16px); }
  }
  .ow-nav__menu.is-open{ transform:none; opacity:1; pointer-events:auto; }
  .ow-nav__menu a{
    font-size:16px; padding:14px 12px;
    border-bottom:1px solid rgba(141,182,187,.12);
  }
  .ow-nav__menu a::after{ display:none; }
  .ow-nav__menu a.is-current{ color:var(--amber); }
  .ow-nav__cta{
    margin:14px 0 0!important; text-align:center;
    padding:15px 18px!important; font-size:16px!important;
  }
  body.ow-nav-open{ overflow:hidden; }
}
@media (prefers-reduced-motion:reduce){
  .ow-nav,.ow-nav::after,.ow-nav__menu,.ow-nav__cta,.ow-nav__menu a::after{ transition:none; }
}

/* ═══ INNER PAGE SHELL (contact, thanks, 404) ═══════════════════════════ */
.ow-page{
  --pad:clamp(28px,5vw,60px);
  position:relative;
  padding:calc(var(--nav-h) + clamp(46px,7vw,86px)) 0 clamp(50px,7vw,80px);
  background:
    radial-gradient(900px 520px at 12% -8%, rgba(13,136,145,.22), transparent 62%),
    radial-gradient(760px 520px at 92% 6%, rgba(238,150,42,.10), transparent 60%),
    linear-gradient(180deg, #0B2C34 0%, var(--ink) 46%, #092530 100%);
  overflow:hidden;
}
.ow-page__wrap{
  position:relative; z-index:2;
  max-width:var(--wrap); margin:0 auto;
  padding:0 clamp(16px,3.4vw,32px);
}
.ow-page__eyebrow{
  margin:0 0 12px;
  font:600 12px/1.2 var(--body);
  letter-spacing:.20em; text-transform:uppercase; color:var(--foam);
}
.ow-page h1{
  margin:0 0 16px;
  font-family:var(--disp); font-weight:700;
  font-size:clamp(38px,6.4vw,72px); line-height:.98;
  letter-spacing:-.005em; text-transform:uppercase; color:#fff;
}
.ow-page h1 b{ color:var(--amber); font-weight:700; }
.ow-page__lede{
  margin:0 0 clamp(30px,4.4vw,46px);
  max-width:62ch;
  font-size:clamp(16px,1.65vw,19px); line-height:1.66; color:#C7DADD;
}
.ow-page__rule{
  width:64px; height:3px; background:var(--amber);
  border:0; border-radius:3px; margin:0 0 22px;
}

/* two-column layout: form + aside */
.ow-cols{
  display:grid; gap:clamp(26px,3.6vw,44px);
  grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);
  align-items:start;
}
@media (max-width:900px){ .ow-cols{ grid-template-columns:1fr; } }

.ow-card{
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.022));
  border:1px solid rgba(141,182,187,.20);
  border-radius:18px;
  padding:clamp(22px,3vw,34px);
}
.ow-card h2{
  margin:0 0 6px;
  font-family:var(--disp); font-weight:600;
  font-size:clamp(22px,2.5vw,28px); line-height:1.08;
  letter-spacing:.005em; text-transform:uppercase; color:#fff;
}
.ow-card p{ margin:0 0 14px; font-size:15px; line-height:1.62; color:#BDD2D5; }
.ow-card p:last-child{ margin-bottom:0; }

/* ═══ FORM ═════════════════════════════════════════════════════════════ */
.ow-form{ margin:0; }
.ow-form__grid{
  display:grid; gap:16px 18px;
  grid-template-columns:1fr 1fr;
}
@media (max-width:620px){ .ow-form__grid{ grid-template-columns:1fr; } }
.ow-f{ display:flex; flex-direction:column; gap:7px; min-width:0; }
.ow-f--full{ grid-column:1/-1; }
.ow-f label{
  font:600 12px/1.3 var(--body);
  letter-spacing:.10em; text-transform:uppercase; color:var(--foam);
}
.ow-f label .ow-req{ color:var(--amber); margin-left:2px; }
.ow-f input,
.ow-f select,
.ow-f textarea{
  width:100%;
  font:400 15px/1.5 var(--body); color:#EAF2F3;
  background:rgba(6,26,32,.62);
  border:1px solid rgba(141,182,187,.26);
  border-radius:11px;
  padding:13px 14px;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
  appearance:none;
}
.ow-f textarea{ min-height:150px; resize:vertical; }
.ow-f select{
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%238DB6BB' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 15px center;
  padding-right:42px;
  cursor:pointer;
}
.ow-f input::placeholder,
.ow-f textarea::placeholder{ color:#7C9498; }
.ow-f input:hover,.ow-f select:hover,.ow-f textarea:hover{ border-color:rgba(141,182,187,.42); }
.ow-f input:focus,.ow-f select:focus,.ow-f textarea:focus{
  outline:none;
  border-color:var(--amber);
  box-shadow:0 0 0 3px rgba(238,150,42,.20);
  background:rgba(6,26,32,.82);
}
.ow-f__err{
  font:500 12.5px/1.4 var(--body); color:#FFB0A0;
  min-height:0; display:none;
}
.ow-f.is-bad input,.ow-f.is-bad select,.ow-f.is-bad textarea{
  border-color:#E2745C; box-shadow:0 0 0 3px rgba(226,116,92,.16);
}
.ow-f.is-bad .ow-f__err{ display:block; }

.ow-form__note{
  margin:18px 0 0;
  font-size:13px; line-height:1.6; color:#93AEB2;
}
.ow-form__note a{ color:var(--foam); }

.ow-form__actions{
  margin-top:22px;
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
}
.ow-submit{
  display:inline-flex; align-items:center; gap:10px;
  font:700 15px/1 var(--body); letter-spacing:.01em;
  color:#12252B; background:var(--amber);
  border:0; border-radius:999px; padding:16px 30px; cursor:pointer;
  box-shadow:0 8px 24px rgba(238,150,42,.30);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.ow-submit:hover{ transform:translateY(-2px); filter:brightness(1.06); box-shadow:0 12px 30px rgba(238,150,42,.42); }
.ow-submit:active{ transform:translateY(0); }
.ow-submit svg{ width:16px; height:16px; }
.ow-submit[disabled]{ opacity:.6; cursor:progress; transform:none; }

/* honeypot — must stay in the DOM but never be seen or focusable */
.ow-hp{
  position:absolute!important; left:-9999px!important;
  width:1px; height:1px; overflow:hidden;
}

/* aside contact card */
.ow-side__mail{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--disp); font-size:clamp(17px,1.9vw,21px);
  letter-spacing:.01em; color:#fff; text-decoration:none;
  border-bottom:2px solid rgba(238,150,42,.55);
  padding-bottom:3px; word-break:break-all;
  transition:border-color .2s ease, color .2s ease;
}
.ow-side__mail:hover{ border-color:var(--amber); color:var(--amber); }
.ow-side__mail svg{ width:18px; height:18px; flex:0 0 18px; }

.ow-side__cta{
  display:inline-flex; align-items:center; gap:9px;
  margin-top:6px;
  font:700 14px/1 var(--body); color:#12252B; background:var(--amber);
  text-decoration:none; border-radius:999px; padding:14px 24px;
  transition:transform .2s ease, filter .2s ease;
}
.ow-side__cta:hover{ transform:translateY(-2px); filter:brightness(1.06); }

.ow-side__meta{
  margin:18px 0 0; padding-top:18px;
  border-top:1px solid rgba(141,182,187,.18);
  font-size:13.5px; line-height:1.62; color:#9FB8BC;
}

/* ═══ THANK YOU / 404 ═══════════════════════════════════════════════════ */
.ow-mid{
  min-height:calc(100vh - var(--nav-h) - 150px);
  display:flex; flex-direction:column; justify-content:center;
}
.ow-mid__actions{
  display:flex; flex-wrap:wrap; gap:14px; margin-top:8px;
}
.ow-btn2{
  display:inline-flex; align-items:center; gap:9px;
  font:700 14.5px/1 var(--body); text-decoration:none;
  border-radius:999px; padding:15px 27px;
  transition:transform .2s ease, filter .2s ease, background .2s ease, border-color .2s ease;
}
.ow-btn2--solid{ background:var(--amber); color:#12252B; box-shadow:0 8px 22px rgba(238,150,42,.28); }
.ow-btn2--solid:hover{ transform:translateY(-2px); filter:brightness(1.06); }
.ow-btn2--ghost{ background:transparent; color:#E7EFF0; border:1.5px solid rgba(141,182,187,.42); }
.ow-btn2--ghost:hover{ transform:translateY(-2px); border-color:var(--foam); background:rgba(141,182,187,.10); }

.ow-big{
  font-family:var(--disp); font-weight:700;
  font-size:clamp(84px,17vw,190px); line-height:.84;
  color:transparent;
  -webkit-text-stroke:2px rgba(141,182,187,.42);
  margin:0 0 6px; letter-spacing:.01em;
}

/* ═══ COMPACT FOOTER (inner pages) ═════════════════════════════════════ */
.ow-foot2{
  background:var(--ink-3);
  border-top:1px solid rgba(141,182,187,.16);
  padding:clamp(28px,4vw,42px) 0;
}
.ow-foot2__in{
  max-width:var(--wrap); margin:0 auto;
  padding:0 clamp(16px,3.4vw,32px);
  display:flex; align-items:center; justify-content:space-between;
  gap:18px 26px; flex-wrap:wrap;
}
.ow-foot2__brand{
  font-family:var(--disp); font-size:17px; letter-spacing:.06em;
  text-transform:uppercase; color:#DCE9EA; text-decoration:none;
}
.ow-foot2__brand b{ color:var(--amber); }
.ow-foot2__links{ display:flex; gap:6px 4px; flex-wrap:wrap; }
.ow-foot2__links a{
  font-size:13.5px; color:#9FB8BC; text-decoration:none;
  padding:6px 10px; border-radius:7px;
  transition:color .2s ease, background .2s ease;
}
.ow-foot2__links a:hover{ color:#fff; background:rgba(141,182,187,.10); }
.ow-foot2__fine{
  flex:1 1 100%; margin:6px 0 0;
  font-size:12.5px; line-height:1.6; color:#7E979B;
}


/* ═══════════ SECTION STYLES (from the nine page blocks) ═══════════ */

/* ══ 01-hero ══════════════════════════════════════ */
  .ow-hero{
    /* file: assets/img/ — swap the url() below to change it */
    --ow-hero-img: url("../img/hero-whale-breach.jpg");
    /* file: assets/img/ — swap the url() below to change it */
    --ow-logo-3165: url("../img/logo-oman3165.png");
  }

.ow-hero{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  min-height:min(100vh,860px); min-height:min(100svh,860px); display:flex; align-items:flex-end;
  overflow:hidden; isolation:isolate; background:var(--ink);
  font-family:var(--body); color:#fff; -webkit-font-smoothing:antialiased;
}
.ow-hero *,.ow-hero *::before,.ow-hero *::after{box-sizing:border-box;}

/* ─── layered background ─── */
.ow-hero__bg{
  position:absolute; inset:-8% 0 -8% 0; z-index:0;
  background-image:var(--ow-hero-img);
  background-size:cover; background-position:center 40%;
  background-color:#08222a;
  will-change:transform; transform:translate3d(0,0,0);
}
.ow-hero__bg::after{ /* fallback tint so it never looks broken */
  content:""; position:absolute; inset:0;
  background:radial-gradient(120% 90% at 70% 10%, rgba(13,136,145,.45) 0%, rgba(10,40,48,0) 60%);
  mix-blend-mode:screen;
}
.ow-hero__scrim{
  position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(180deg, rgba(10,40,48,.72) 0%, rgba(10,40,48,.30) 32%, rgba(10,40,48,.80) 74%, #0A2830 100%),
    linear-gradient(96deg, rgba(10,40,48,.85) 0%, rgba(10,40,48,.15) 62%);
}
.ow-hero__grain{
  position:absolute; inset:0; z-index:2; opacity:.16; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}

/* ─── content ─── */
.ow-hero__inner{
  position:relative; z-index:4; width:100%;
  /* Trimmed from 13vh/14vh. With the strapline added, the old padding put the
     content at about 900px against an 860px hero, which pushed the wave divider
     off the bottom of the first screen — and a hero with no bottom edge is
     exactly what looks unfinished. The bottom value still clears the 104px wave. */
  max-width:1240px; margin:0 auto; padding:clamp(84px,11vh,132px) 6vw clamp(92px,12.5vh,142px);
}
/* The eyebrow now carries three facts — the OSW tie, the date and the venue —
   and needs about 690px, so it wraps to two lines below roughly 855px wide.
   align-items:flex-start with a top margin on the rule keeps that rule level
   with the first line; on a single line it computes to the same place centring
   did, which is why this needs no media query. */
.ow-hero__eyebrow{
  display:inline-flex; align-items:flex-start; gap:.7em;
  font-family:var(--body); font-size:clamp(10px,1.5vw,12.5px); font-weight:600;
  letter-spacing:.26em; text-transform:uppercase; color:var(--foam);
  margin:0 0 clamp(18px,3vh,30px);
}
.ow-hero__eyebrow::before{
  content:""; width:clamp(28px,5vw,54px); height:1px; background:var(--amber);
  margin-top:.62em; flex:none;
}

/* The h1 now holds the logo instead of type. It keeps its margin reset and
   nothing else; the sizing lives on the image. */
.ow-hero__title{margin:0; line-height:0;}
.ow-hero__logo{
  /* This lockup is tall — 420px wide is 283px high — so on a short, wide window
     it is the height budget that binds, not the width. Hence three terms: never
     wider than its container, never wider than 30vw up to a 420px cap, and never
     more than 46vh, which is what keeps the wave divider on the first screen at
     1440x780. Was clamp(250px,42vw,560px), which overflowed on both counts. */
  display:block; width:min(100%, clamp(240px,30vw,420px), 46vh); height:auto;
  /* the lockup already reads as art on the photograph, but a whisper of shadow
     stops the white wordmark dissolving into a pale patch of sea */
  filter:drop-shadow(0 6px 26px rgba(0,0,0,.42));
}

/* The amber rule that used to sit under the logo was left behind when the type
   headline became the logo: a divider with nothing above it to divide. In its
   place, the promise that was buried at the head of the lede, set in display
   type so the eye has somewhere to go after the wordmark. */
.ow-hero__strap{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(24px,3.2vw,40px); line-height:1.06; letter-spacing:.005em;
  color:#fff; margin:clamp(20px,3.2vh,32px) 0 clamp(16px,2.4vh,22px);
  max-width:14em;
}
.ow-hero__strap b{
  display:block; font-weight:600; color:var(--amber);
}
.ow-hero__strap::after{
  content:""; display:block; width:clamp(64px,9vw,120px); height:2px;
  margin-top:clamp(14px,2.2vh,22px);
  background:linear-gradient(90deg,rgba(238,150,42,.95),rgba(141,182,187,0));
}

.ow-hero__lede{
  font-size:clamp(16px,1.65vw,20px); line-height:1.6; font-weight:400;
  color:rgba(255,255,255,.9); max-width:30em; margin:0 0 clamp(24px,3.4vh,34px);
}
.ow-hero__lede em{font-style:normal; color:var(--amber);}

.ow-hero__ctas{display:flex; flex-wrap:wrap; gap:14px; align-items:center;}
.ow-btn{
  --b:var(--amber);
  display:inline-flex; align-items:center; gap:.65em;
  font-family:var(--body); font-size:clamp(13px,1.7vw,15px); font-weight:600;
  letter-spacing:.055em; text-transform:uppercase; text-decoration:none;
  padding:1.02em 1.75em; border-radius:100px; border:1.5px solid var(--b);
  background:var(--b); color:#0A2830 !important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s, background .28s, color .28s;
  box-shadow:0 8px 26px -10px rgba(238,150,42,.75);
}
.ow-btn:hover{transform:translateY(-3px); box-shadow:0 16px 34px -12px rgba(238,150,42,.85); color:#0A2830 !important;}
.ow-btn svg{width:1.05em;height:1.05em;flex:none;}
.ow-btn--ghost{
  background:transparent; color:#fff !important; border-color:rgba(255,255,255,.5); box-shadow:none;
}
.ow-btn--ghost:hover{background:rgba(255,255,255,.1); border-color:#fff; color:#fff !important; box-shadow:none;}

/* ─── Oman 3165 badge ─── */
.ow-hero__badge{
  position:absolute; z-index:5; top:clamp(20px,3.4vw,38px); right:clamp(20px,5vw,52px);
  display:flex; align-items:center; gap:12px;
  padding:10px 16px 10px 10px; border-radius:14px;
  background:rgba(10,40,48,.55); border:1px solid rgba(141,182,187,.3);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.ow-hero__badge i{
  width:44px; height:44px; flex:none; border-radius:8px; display:block;
  background-image:var(--ow-logo-3165); background-size:cover; background-position:center;
  background-color:#1668B0;
}
.ow-hero__badge span{
  font-size:10.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  line-height:1.45; color:var(--foam);
}
.ow-hero__badge span b{display:block; color:#fff; letter-spacing:.1em;}

/* ─── wave divider ─── */
.ow-hero__wave{position:absolute; left:0; right:0; bottom:-2px; z-index:6; line-height:0; pointer-events:none;}
.ow-hero__wave svg{display:block; width:220%; height:clamp(52px,7vw,104px);}
.ow-hero__wave .w1{fill:rgba(13,136,145,.30); animation:ow-drift 26s linear infinite;}
.ow-hero__wave .w2{fill:rgba(141,182,187,.20); animation:ow-drift 17s linear infinite reverse;}
.ow-hero__wave .w3{fill:#0C3139; animation:ow-drift 34s linear infinite;}
.ow-hero__wave>div{position:absolute; inset:auto 0 0 0;}
@keyframes ow-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ─── scroll cue ─── */
.ow-hero__cue{
  position:absolute; z-index:7; bottom:clamp(96px,12vw,132px); right:clamp(22px,5vw,54px);
  writing-mode:vertical-rl; font-size:10.5px; font-weight:600; letter-spacing:.28em;
  text-transform:uppercase; color:rgba(255,255,255,.6);
  display:flex; align-items:center; gap:12px;
}
.ow-hero__cue::after{content:""; width:1px; height:56px; background:linear-gradient(rgba(255,255,255,.55),rgba(255,255,255,0)); animation:ow-cue 2.4s ease-in-out infinite;}
@keyframes ow-cue{0%,100%{transform:scaleY(.35);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}

/* ─── entrance animation ─── */
.ow-hero [data-r]{opacity:0; transform:translateY(26px); }
.ow-hero.is-in [data-r]{opacity:1; transform:none; transition:opacity .9s cubic-bezier(.2,.8,.2,1), transform .9s cubic-bezier(.2,.8,.2,1);}
.ow-hero.is-in [data-r="1"]{transition-delay:.05s}
.ow-hero.is-in [data-r="2"]{transition-delay:.18s}
.ow-hero.is-in [data-r="3"]{transition-delay:.31s}
.ow-hero.is-in [data-r="4"]{transition-delay:.44s}
.ow-hero.is-in [data-r="5"]{transition-delay:.57s}

@media (max-width:760px){
  .ow-hero{min-height:auto;}
  .ow-hero__inner{padding:120px 7vw 110px;}
  .ow-hero__badge{top:auto; bottom:auto; right:auto; left:7vw; top:22px; padding:8px 13px 8px 8px;}
  .ow-hero__badge i{width:36px;height:36px;}
  .ow-hero__cue{display:none;}
  /* .26em tracking on 67 characters needs about 585px; a 390px phone offers
     under 300. Loosening the letters less keeps this to two lines instead of
     three — an eyebrow that runs to three lines stops reading as an eyebrow. */
  .ow-hero__eyebrow{letter-spacing:.16em;}
  .ow-hero__lede{max-width:100%;}
  .ow-hero__strap{max-width:100%;}
  .ow-btn{width:100%; justify-content:center;}
}
@media (prefers-reduced-motion:reduce){
  .ow-hero [data-r]{opacity:1 !important; transform:none !important;}
  .ow-hero__wave .w1,.ow-hero__wave .w2,.ow-hero__wave .w3,.ow-hero__cue::after{animation:none !important;}
  .ow-hero__bg{transform:none !important;}
}

/* ══ 02-more-than-a-concert ══════════════════════════════════════ */

.ow-intro{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:var(--ink-2); color:#fff; font-family:var(--body);
  padding:clamp(66px,9vw,124px) 6vw clamp(70px,9vw,116px);
  overflow:hidden; isolation:isolate; -webkit-font-smoothing:antialiased;
}
.ow-intro *,.ow-intro *::before,.ow-intro *::after{box-sizing:border-box;}
.ow-intro::before{ /* soft depth glow */
  content:""; position:absolute; z-index:0; width:70vw; height:70vw; max-width:900px; max-height:900px;
  right:-18vw; top:-24vw; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(13,136,145,.30) 0%, rgba(13,136,145,0) 68%);
}
.ow-intro__inner{position:relative; z-index:1; max-width:1240px; margin:0 auto;}

.ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 22px;
  font-size:clamp(10px,1.4vw,12px); font-weight:600; letter-spacing:.26em;
  text-transform:uppercase; color:var(--foam);
}
.ow-eyebrow::before{content:""; width:clamp(24px,4vw,44px); height:1px; background:var(--amber);}

.ow-intro__grid{
  display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);
  gap:clamp(34px,5.5vw,80px); align-items:start;
}
.ow-intro h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(38px,6.6vw,88px); line-height:.92; letter-spacing:-.01em;
  margin:0 0 clamp(20px,2.8vw,30px); color:#fff;
}
.ow-intro h2 b{color:var(--amber); font-weight:700;}
.ow-intro p{font-size:clamp(16px,1.75vw,19.5px); line-height:1.62; color:rgba(255,255,255,.85); margin:0 0 1.15em; max-width:34em;}
.ow-intro .ow-intro__pull{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(19px,2.5vw,27px); line-height:1.22; letter-spacing:.005em;
  color:var(--foam); margin:clamp(22px,3vw,32px) 0 0; padding-left:20px;
  border-left:2px solid var(--amber); max-width:24em;
}

/* ─── pillars ─── */
.ow-pillars{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(12px,1.6vw,18px);}
.ow-pillar{
  padding:clamp(20px,2.4vw,28px); border-radius:16px;
  background:linear-gradient(158deg, rgba(255,255,255,.075) 0%, rgba(255,255,255,.028) 100%);
  border:1px solid rgba(141,182,187,.20);
  transition:transform .4s cubic-bezier(.2,.8,.2,1), border-color .4s, background .4s;
}
.ow-pillar:hover{transform:translateY(-6px); border-color:rgba(238,150,42,.55); background:linear-gradient(158deg, rgba(238,150,42,.10) 0%, rgba(255,255,255,.03) 100%);}
.ow-pillar__ic{
  width:clamp(42px,4.4vw,52px); height:clamp(42px,4.4vw,52px); border-radius:12px;
  display:grid; place-items:center; margin-bottom:clamp(14px,1.8vw,20px);
  background:rgba(238,150,42,.13); border:1px solid rgba(238,150,42,.34);
}
.ow-pillar__ic svg{width:56%; height:56%; stroke:var(--amber); fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round;}
.ow-pillar h3{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(17px,2vw,22px); letter-spacing:.055em; line-height:1.1;
  margin:0 0 .5em; color:#fff;
}
.ow-pillar p{font-size:clamp(13.5px,1.5vw,15.5px); line-height:1.52; color:rgba(255,255,255,.72); margin:0; max-width:none;}

/* ─── who we run under ─── */
.ow-auspices{
  margin-top:clamp(40px,5.5vw,64px); padding:clamp(22px,3vw,32px) clamp(22px,3.4vw,38px);
  border:1px solid rgba(141,182,187,.26); border-left:3px solid var(--amber);
  border-radius:4px; background:rgba(13,136,145,.07);
}
.ow-auspices__t{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  letter-spacing:.1em; font-size:clamp(15px,2vw,19px); color:#fff; margin:0 0 .7em;
}
.ow-auspices__t b{color:var(--amber); font-weight:700;}
.ow-auspices__l{list-style:none; margin:0; padding:0; display:grid; gap:.5em;}
.ow-auspices__l li{
  font-size:clamp(14px,1.6vw,16.5px); line-height:1.55; color:var(--foam);
  padding-left:1.15em; position:relative;
}
.ow-auspices__l li::before{
  content:""; position:absolute; left:0; top:.62em;
  width:.5em; height:1px; background:var(--amber);
}
.ow-auspices__l a{
  color:#fff; font-weight:600; text-decoration:none;
  border-bottom:1px solid rgba(238,150,42,.55); transition:border-color .2s, color .2s;
}
.ow-auspices__l a:hover{color:var(--amber); border-bottom-color:var(--amber);}

/* ─── stat strip ─── */
.ow-stats{
  display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:end;
  gap:clamp(14px,2.4vw,30px); margin-top:clamp(48px,6.5vw,84px);
  padding-top:clamp(34px,4.4vw,52px); border-top:1px solid rgba(141,182,187,.24);
}
.ow-stat b{
  display:block; font-family:var(--disp); font-weight:700; color:var(--amber);
  font-size:clamp(38px,5.4vw,68px); line-height:.92; letter-spacing:-.02em;
}
/* a word, not a number, sits a size down so the real figures still lead */
.ow-stat b.ow-stat--word{font-size:clamp(30px,4.2vw,52px); color:var(--foam);}
/* the deck says "up to 500", so the number must not be presented as settled */
.ow-stat i{
  display:block; font-style:normal; font-family:var(--disp); font-weight:600;
  font-size:clamp(11px,1.2vw,12.5px); letter-spacing:.18em; text-transform:uppercase;
  color:rgba(141,182,187,.75); margin-bottom:.35em;
}
.ow-stat span{
  display:block; margin-top:.7em; font-size:clamp(11px,1.2vw,12.5px); font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; color:var(--foam); line-height:1.45;
}
.ow-stats__note{
  margin:clamp(24px,3vw,34px) 0 0; max-width:64ch;
  font-size:clamp(14px,1.6vw,16px); line-height:1.65; color:var(--foam);
}

/* ─── reveal ─── */
.ow-intro [data-ow-rv]{opacity:0; transform:translateY(30px);}
.ow-intro [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .85s cubic-bezier(.2,.8,.2,1), transform .85s cubic-bezier(.2,.8,.2,1);}

@media (max-width:1080px){
  .ow-stats{grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 20px;}
}
@media (max-width:940px){
  .ow-intro__grid{grid-template-columns:1fr;}
}
@media (max-width:620px){
  .ow-stats{grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 18px;}
}
@media (max-width:560px){
  .ow-pillars{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){
  .ow-intro [data-ow-rv]{opacity:1 !important; transform:none !important;}
}

/* ══ 03-how-to-participate ══════════════════════════════════════ */

.ow-part{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --teal-d:#0A6B73; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:#F2F6F6; color:var(--ink); font-family:var(--body);
  padding:0 6vw clamp(74px,9.5vw,124px); overflow:hidden; isolation:isolate;
  -webkit-font-smoothing:antialiased;
}
.ow-part *,.ow-part *::before,.ow-part *::after{box-sizing:border-box;}

/* wave that carries the dark section above into this light one */
.ow-part__wave{position:relative; left:-6vw; width:var(--ow-vw,100vw); line-height:0; margin-bottom:clamp(52px,7vw,96px);}
.ow-part__wave svg{display:block; width:100%; height:clamp(48px,6.5vw,96px);}
.ow-part__wave path{fill:#0C3139;}

.ow-part__inner{position:relative; z-index:1; max-width:1240px; margin:0 auto;}
.ow-part__head{max-width:44em; margin:0 0 clamp(38px,5vw,60px);}
.ow-part .ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 20px;
  font-size:clamp(10px,1.4vw,12px); font-weight:600; letter-spacing:.26em;
  text-transform:uppercase; color:var(--teal-d);
}
.ow-part .ow-eyebrow::before{content:""; width:clamp(24px,4vw,44px); height:1px; background:var(--amber);}
.ow-part h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(36px,6.2vw,82px); line-height:.93; letter-spacing:-.01em;
  margin:0 0 clamp(16px,2vw,22px); color:var(--ink);
}
.ow-part h2 b{color:var(--teal); font-weight:700;}
.ow-part__head p{font-size:clamp(16px,1.75vw,19.5px); line-height:1.6; color:rgba(10,40,48,.72); margin:0;}

/* ─── cards ─── */
.ow-cards{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,1.9vw,22px);}
.ow-card{
  position:relative; display:flex; flex-direction:column;
  padding:clamp(24px,2.8vw,34px); border-radius:18px; background:#fff;
  border:1px solid rgba(10,40,48,.09); text-decoration:none; color:inherit;
  box-shadow:0 2px 4px rgba(10,40,48,.04);
  transition:transform .42s cubic-bezier(.2,.8,.2,1), box-shadow .42s, border-color .42s;
  overflow:hidden;
}
.ow-card::after{ /* hover wash, not an edge stripe */
  content:""; position:absolute; inset:0; z-index:0; opacity:0;
  background:radial-gradient(110% 80% at 88% 0%, rgba(13,136,145,.10) 0%, rgba(13,136,145,0) 62%);
  transition:opacity .42s;
}
.ow-card:hover{transform:translateY(-8px); box-shadow:0 26px 46px -22px rgba(10,40,48,.32); border-color:rgba(13,136,145,.4);}
.ow-card:hover::after{opacity:1;}
.ow-card>*{position:relative; z-index:1;}
.ow-card__no{
  font-family:var(--disp); font-weight:600; font-size:clamp(12px,1.4vw,13.5px);
  letter-spacing:.2em; text-transform:uppercase; color:var(--amber); margin:0 0 clamp(16px,2vw,22px);
}
.ow-card__ic{
  width:clamp(48px,5vw,60px); height:clamp(48px,5vw,60px); border-radius:14px;
  display:grid; place-items:center; margin:0 0 clamp(16px,2vw,22px);
  background:rgba(13,136,145,.09); border:1px solid rgba(13,136,145,.22);
  transition:background .42s, border-color .42s, transform .42s cubic-bezier(.2,.8,.2,1);
}
.ow-card:hover .ow-card__ic{background:var(--amber); border-color:var(--amber); transform:rotate(-6deg) scale(1.06);}
.ow-card__ic svg{width:54%; height:54%; fill:none; stroke:var(--teal); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; transition:stroke .42s;}
.ow-card:hover .ow-card__ic svg{stroke:#fff;}
.ow-card h3{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(20px,2.3vw,26px); letter-spacing:.04em; line-height:1.08;
  margin:0 0 .55em; color:var(--ink);
}
.ow-card p{font-size:clamp(14px,1.55vw,16px); line-height:1.55; color:rgba(10,40,48,.68); margin:0 0 clamp(18px,2.2vw,26px);}
.ow-card__more{
  margin-top:auto; display:inline-flex; align-items:center; gap:.5em;
  font-size:clamp(11.5px,1.35vw,13px); font-weight:600; letter-spacing:.1em;
  text-transform:uppercase; color:var(--teal-d);
}
.ow-card__more svg{width:1.1em; height:1.1em; stroke:currentColor; stroke-width:2; fill:none; stroke-linecap:round; transition:transform .35s;}
.ow-card:hover .ow-card__more{color:var(--amber);}
.ow-card:hover .ow-card__more svg{transform:translateX(5px);}

/* the open-ended seventh card: spans the whole row and is drawn as an outline
   rather than a solid card, so it reads as "and whatever else you think of"
   instead of as option 07 in a closed list of seven */
.ow-card--open{
  grid-column:1 / -1; background:transparent; border:1.5px dashed rgba(13,136,145,.42);
  box-shadow:none; flex-direction:row; align-items:center; flex-wrap:wrap;
  gap:clamp(14px,2.4vw,28px); padding:clamp(22px,2.6vw,30px) clamp(24px,2.8vw,34px);
}
.ow-card--open:hover{border-style:solid; border-color:var(--amber); box-shadow:0 18px 38px -24px rgba(10,40,48,.28);}
.ow-card--open .ow-card__ic{margin:0; flex:none;}
.ow-card--open__t{flex:1 1 18em; min-width:0;}
.ow-card--open h3{margin:0 0 .35em;}
.ow-card--open p{margin:0;}
.ow-card--open .ow-card__more{margin:0; flex:none;}

.ow-part__foot{
  margin-top:clamp(38px,5vw,60px); display:flex; flex-wrap:wrap; align-items:center;
  gap:clamp(14px,2.4vw,28px);
}
.ow-part__foot p{margin:0; font-size:clamp(14px,1.6vw,16.5px); line-height:1.5; color:rgba(10,40,48,.66); max-width:32em;}
.ow-btn{
  display:inline-flex; align-items:center; gap:.65em; font-family:var(--body);
  font-size:clamp(13px,1.6vw,14.5px); font-weight:600; letter-spacing:.055em;
  text-transform:uppercase; text-decoration:none; padding:1.02em 1.7em;
  border-radius:100px; border:1.5px solid var(--amber); background:var(--amber);
  color:#0A2830 !important; box-shadow:0 8px 24px -12px rgba(238,150,42,.9);
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s;
}
.ow-btn:hover{transform:translateY(-3px); box-shadow:0 16px 32px -14px rgba(238,150,42,1); color:#0A2830 !important;}
.ow-btn svg{width:1.05em; height:1.05em; flex:none;}

.ow-part [data-ow-rv]{opacity:0; transform:translateY(30px);}
.ow-part [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);}

@media (max-width:1000px){.ow-cards{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:620px){
  .ow-cards{grid-template-columns:1fr;}
  .ow-part__foot .ow-btn{width:100%; justify-content:center;}
}
@media (prefers-reduced-motion:reduce){.ow-part [data-ow-rv]{opacity:1 !important; transform:none !important;}}

/* ══ 04-option1-choir ══════════════════════════════════════ */
  .ow-choir{
    /* Duotoned to disguise the source: the only usable photo in the deck is
       322x360px. Replace with a real high-res concert photo when you have
       one - see build_assets.py for the treatment. */
    --ow-choir-img: url("../img/choir-audience-duotone.jpg");
  }

.ow-choir{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:var(--ink); color:#fff; font-family:var(--body);
  padding:clamp(70px,9.5vw,128px) 6vw clamp(74px,9.5vw,128px);
  overflow:hidden; isolation:isolate; -webkit-font-smoothing:antialiased;
}
.ow-choir *,.ow-choir *::before,.ow-choir *::after{box-sizing:border-box;}
.ow-choir::before{
  content:""; position:absolute; z-index:0; inset:auto auto -30vw -22vw;
  width:80vw; height:80vw; max-width:1000px; max-height:1000px; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(13,136,145,.26) 0%, rgba(13,136,145,0) 66%);
}
.ow-choir__inner{position:relative; z-index:1; max-width:1240px; margin:0 auto;}

.ow-choir__grid{display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:clamp(36px,5.5vw,78px); align-items:start;}

.ow-choir .ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 18px;
  font-family:var(--disp); font-size:clamp(12px,1.5vw,14px); font-weight:600;
  letter-spacing:.26em; text-transform:uppercase; color:var(--amber);
}
.ow-choir .ow-eyebrow::before{content:""; width:clamp(24px,4vw,44px); height:1px; background:var(--amber);}
.ow-choir h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(36px,6vw,78px); line-height:.92; letter-spacing:-.01em; margin:0 0 clamp(18px,2.4vw,26px);
}
.ow-choir h2 b{color:var(--foam); font-weight:700;}
.ow-choir__lede{font-size:clamp(16px,1.75vw,19px); line-height:1.6; color:rgba(255,255,255,.82); margin:0 0 clamp(26px,3.4vw,38px); max-width:30em;}

/* ─── listen card ─── */
.ow-listen{
  display:flex; align-items:center; gap:clamp(16px,2.2vw,24px);
  padding:clamp(16px,2vw,22px); border-radius:18px; text-decoration:none; color:inherit;
  background:linear-gradient(150deg, rgba(238,150,42,.16) 0%, rgba(255,255,255,.04) 100%);
  border:1px solid rgba(238,150,42,.4);
  transition:transform .4s cubic-bezier(.2,.8,.2,1), border-color .4s, box-shadow .4s;
}
.ow-listen:hover{transform:translateY(-5px); border-color:var(--amber); box-shadow:0 22px 42px -22px rgba(238,150,42,.6); color:inherit;}
.ow-listen__play{
  position:relative; flex:none; width:clamp(52px,5.6vw,64px); height:clamp(52px,5.6vw,64px);
  border-radius:50%; display:grid; place-items:center; background:var(--amber);
}
.ow-listen__play::before{
  content:""; position:absolute; inset:0; border-radius:50%; border:2px solid rgba(238,150,42,.7);
  animation:ow-pulse 2.6s ease-out infinite;
}
@keyframes ow-pulse{0%{transform:scale(1);opacity:.85}100%{transform:scale(1.75);opacity:0}}
.ow-listen__play svg{width:38%; height:38%; fill:#0A2830; margin-left:2px;}
.ow-listen__tx b{
  display:block; font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(17px,2vw,22px); letter-spacing:.05em; line-height:1.15; color:#fff;
}
.ow-listen__tx span{display:block; margin-top:.35em; font-size:clamp(12.5px,1.45vw,14px); color:var(--foam); line-height:1.45;}

/* ─── photo ─── */
.ow-choir__photo{
  margin:clamp(26px,3.4vw,38px) 0 0; border-radius:18px; overflow:hidden;
  aspect-ratio:16/10; max-width:520px; position:relative;
  background:linear-gradient(150deg,#0D8891 0%,#0A2830 100%);
  border:1px solid rgba(141,182,187,.22);
}
.ow-choir__photo i{
  position:absolute; inset:0; display:block; background-image:var(--ow-choir-img);
  background-size:cover; background-position:center;
  animation:ow-kb 22s ease-in-out infinite alternate;
}
@keyframes ow-kb{from{transform:scale(1)}to{transform:scale(1.12)}}
.ow-choir__photo figcaption{
  position:absolute; z-index:2; inset:auto 0 0 0; padding:16px 18px;
  background:linear-gradient(transparent, rgba(10,40,48,.9));
  font-size:11.5px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--foam);
}

/* ─── spec rows ─── */
.ow-specs{display:grid; gap:clamp(10px,1.3vw,14px);}
.ow-spec{
  display:grid; grid-template-columns:auto minmax(0,1fr); gap:clamp(16px,2vw,22px);
  align-items:start; padding:clamp(18px,2.2vw,24px) clamp(18px,2.2vw,26px);
  border-radius:16px; background:rgba(255,255,255,.055);
  border:1px solid rgba(141,182,187,.18);
  transition:background .38s, border-color .38s, transform .38s cubic-bezier(.2,.8,.2,1);
}
.ow-spec:hover{background:rgba(255,255,255,.09); border-color:rgba(238,150,42,.45); transform:translateX(6px);}
.ow-spec__ic{
  width:clamp(38px,4vw,46px); height:clamp(38px,4vw,46px); border-radius:11px; flex:none;
  display:grid; place-items:center; background:rgba(238,150,42,.13); border:1px solid rgba(238,150,42,.34);
}
.ow-spec__ic svg{width:54%; height:54%; fill:none; stroke:var(--amber); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
.ow-spec dt{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(13px,1.5vw,15px); letter-spacing:.17em; color:var(--foam); margin:0 0 .45em;
}
.ow-spec dd{margin:0; font-size:clamp(15px,1.7vw,18px); line-height:1.5; color:#fff; font-weight:500;}
.ow-spec dd em{display:block; font-style:normal; margin-top:.35em; font-size:clamp(13px,1.45vw,15px); font-weight:400; color:rgba(255,255,255,.68);}
.ow-roles{list-style:none; margin:.7em 0 0; padding:0; display:grid; gap:.55em;}
.ow-roles li{
  position:relative; padding-left:1.1em; font-size:clamp(13px,1.45vw,15px);
  line-height:1.5; font-weight:400; color:rgba(255,255,255,.72);
}
.ow-roles li::before{content:""; position:absolute; left:0; top:.62em; width:5px; height:5px; border-radius:50%; background:var(--amber);}
.ow-roles b{color:#fff; font-weight:600;}
.ow-roles__flag{color:var(--amber) !important;}

.ow-choir [data-ow-rv]{opacity:0; transform:translateY(28px);}
.ow-choir [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);}

@media (max-width:960px){
  .ow-choir__grid{grid-template-columns:1fr;}
  .ow-choir__photo{max-width:none;}
}
@media (max-width:520px){
  .ow-spec{grid-template-columns:1fr; gap:14px;}
  .ow-spec:hover{transform:none;}
  .ow-listen{flex-direction:column; align-items:flex-start; text-align:left;}
}
@media (prefers-reduced-motion:reduce){
  .ow-choir [data-ow-rv]{opacity:1 !important; transform:none !important;}
  .ow-choir__photo i, .ow-listen__play::before{animation:none !important;}
}

/* ══ 05-options-2-4-schools ══════════════════════════════════════ */

.ow-schools{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --teal-d:#0A6B73; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:#fff; color:var(--ink); font-family:var(--body);
  padding:clamp(70px,9.5vw,128px) 6vw clamp(74px,9.5vw,128px);
  overflow:hidden; isolation:isolate; -webkit-font-smoothing:antialiased;
}
.ow-schools *,.ow-schools *::before,.ow-schools *::after{box-sizing:border-box;}
.ow-schools__inner{position:relative; z-index:1; max-width:1240px; margin:0 auto;}

.ow-schools .ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 18px;
  font-family:var(--disp); font-size:clamp(12px,1.5vw,14px); font-weight:600;
  letter-spacing:.24em; text-transform:uppercase; color:var(--teal-d);
}
.ow-schools .ow-eyebrow::before{content:""; width:clamp(24px,4vw,44px); height:1px; background:var(--amber);}
.ow-schools h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(36px,6vw,78px); line-height:.92; letter-spacing:-.01em; margin:0 0 clamp(16px,2vw,22px);
}
.ow-schools h2 b{color:var(--teal); font-weight:700;}
.ow-schools__lede{font-size:clamp(16px,1.75vw,19.5px); line-height:1.6; color:rgba(10,40,48,.72); margin:0 0 clamp(34px,4.6vw,52px); max-width:40em;}

/* ─── tabs ─── */
.ow-tabs{
  display:flex; gap:6px; padding:6px; margin:0 0 clamp(26px,3.4vw,38px);
  background:#EFF4F4; border-radius:100px; width:max-content; max-width:100%;
  overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none;
}
.ow-tabs::-webkit-scrollbar{display:none;}
.ow-tab{
  flex:none; appearance:none; border:0; cursor:pointer; background:transparent;
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(13px,1.6vw,15.5px); letter-spacing:.11em; color:rgba(10,40,48,.6);
  padding:.95em 1.5em; border-radius:100px; white-space:nowrap;
  transition:background .3s, color .3s, box-shadow .3s;
}
.ow-tab:hover{color:var(--ink);}
.ow-tab[aria-selected="true"]{background:var(--ink); color:#fff; box-shadow:0 8px 20px -12px rgba(10,40,48,.9);}
.ow-tab small{display:block; font-family:var(--body); font-size:9.5px; letter-spacing:.18em; opacity:.7; margin-bottom:2px;}

/* ─── panels ─── */
.ow-panel[hidden]{display:none;}
.ow-panel{animation:ow-fade .55s cubic-bezier(.2,.8,.2,1) both;}
@keyframes ow-fade{from{opacity:0; transform:translateY(16px)}to{opacity:1; transform:none}}
.ow-panel__top{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);
  gap:clamp(20px,3.4vw,48px); align-items:start; margin:0 0 clamp(24px,3.2vw,36px);
}
.ow-panel h3{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(26px,3.9vw,46px); line-height:.98; letter-spacing:-.005em; margin:0; color:var(--ink);
}
.ow-panel__top p{font-size:clamp(15px,1.7vw,18px); line-height:1.58; color:rgba(10,40,48,.7); margin:0;}
.ow-panel__top p b{color:var(--ink);}

.ow-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(12px,1.6vw,18px);}
.ow-tile{
  padding:clamp(20px,2.4vw,28px); border-radius:16px; background:#F5F9F9;
  border:1px solid rgba(10,40,48,.075);
  transition:background .38s, border-color .38s, transform .38s cubic-bezier(.2,.8,.2,1);
}
.ow-tile:hover{background:#fff; border-color:rgba(13,136,145,.4); transform:translateY(-6px); box-shadow:0 22px 40px -24px rgba(10,40,48,.3);}
.ow-tile__ic{
  width:clamp(38px,4vw,44px); height:clamp(38px,4vw,44px); border-radius:11px;
  display:grid; place-items:center; margin-bottom:clamp(13px,1.7vw,17px);
  background:rgba(13,136,145,.1); border:1px solid rgba(13,136,145,.24);
  transition:background .38s, border-color .38s;
}
.ow-tile:hover .ow-tile__ic{background:rgba(238,150,42,.16); border-color:rgba(238,150,42,.5);}
.ow-tile__ic svg{width:54%; height:54%; fill:none; stroke:var(--teal); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:stroke .38s;}
.ow-tile:hover .ow-tile__ic svg{stroke:var(--amber);}
.ow-tile h4{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(17px,1.95vw,21px); letter-spacing:.05em; line-height:1.1; margin:0 0 .5em; color:var(--ink);
}
.ow-tile p{font-size:clamp(13.5px,1.5vw,15.5px); line-height:1.5; color:rgba(10,40,48,.66); margin:0;}

.ow-note{
  margin:clamp(26px,3.4vw,38px) 0 0; padding:clamp(18px,2.2vw,24px) clamp(20px,2.4vw,28px);
  border-radius:16px; background:var(--ink); color:#fff;
  display:flex; flex-wrap:wrap; align-items:center; gap:clamp(14px,2vw,22px);
}
.ow-note svg{width:clamp(26px,3vw,32px); height:clamp(26px,3vw,32px); flex:none; fill:none; stroke:var(--amber); stroke-width:1.7; stroke-linecap:round;}
.ow-note p{margin:0; font-size:clamp(14px,1.6vw,16.5px); line-height:1.5; color:rgba(255,255,255,.88); flex:1 1 18em;}
.ow-note p b{color:var(--amber);}

.ow-schools [data-ow-rv]{opacity:0; transform:translateY(28px);}
.ow-schools [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);}

@media (max-width:900px){
  .ow-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ow-panel__top{grid-template-columns:1fr;}
  .ow-tabs{width:100%;}
}
@media (max-width:560px){.ow-grid{grid-template-columns:1fr;}}
@media (prefers-reduced-motion:reduce){
  .ow-schools [data-ow-rv]{opacity:1 !important; transform:none !important;}
  .ow-panel{animation:none !important;}
}

/* ══ 06-options-5-6-partners ══════════════════════════════════════ */
  .ow-partners{
    /* file: assets/img/ — swap the url() below to change it */
    --ow-map-img: url("../img/oman3165-expedition-map.jpg");
    /* file: assets/img/ — swap the url() below to change it */
    --ow-logo-3165: url("../img/logo-oman3165.png");
  }

.ow-partners{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:var(--ink-2); color:#fff; font-family:var(--body);
  padding:clamp(70px,9.5vw,128px) 6vw clamp(74px,9.5vw,128px);
  overflow:hidden; isolation:isolate; -webkit-font-smoothing:antialiased;
}
.ow-partners *,.ow-partners *::before,.ow-partners *::after{box-sizing:border-box;}
.ow-partners::before{
  content:""; position:absolute; z-index:0; inset:-20vw -22vw auto auto;
  width:80vw; height:80vw; max-width:1000px; max-height:1000px; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(13,136,145,.24) 0%, rgba(13,136,145,0) 66%);
}
.ow-partners__inner{position:relative; z-index:1; max-width:1240px; margin:0 auto;}

.ow-partners .ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 18px;
  font-family:var(--disp); font-size:clamp(12px,1.5vw,14px); font-weight:600;
  letter-spacing:.24em; text-transform:uppercase; color:var(--amber);
}
.ow-partners .ow-eyebrow::before{content:""; width:clamp(24px,4vw,44px); height:1px; background:var(--amber);}
.ow-partners h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(34px,5.6vw,72px); line-height:.93; letter-spacing:-.01em; margin:0 0 clamp(16px,2vw,22px);
}
.ow-partners h2 b{color:var(--foam); font-weight:700;}
.ow-partners__lede{font-size:clamp(16px,1.75vw,19px); line-height:1.6; color:rgba(255,255,255,.82); margin:0; max-width:34em;}

/* ─── universities ─── */
.ow-uni{display:grid; grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr); gap:clamp(32px,5vw,72px); align-items:start;}
.ow-checks{list-style:none; margin:clamp(28px,3.6vw,40px) 0 0; padding:0; display:grid; gap:clamp(10px,1.2vw,13px);}
.ow-checks li{
  display:grid; grid-template-columns:auto minmax(0,1fr); gap:14px; align-items:start;
  font-size:clamp(15px,1.7vw,17.5px); line-height:1.48; color:rgba(255,255,255,.9);
  padding:clamp(13px,1.6vw,17px) clamp(15px,1.8vw,20px); border-radius:13px;
  background:rgba(255,255,255,.05); border:1px solid rgba(141,182,187,.16);
  transition:background .35s, border-color .35s, transform .35s cubic-bezier(.2,.8,.2,1);
}
.ow-checks li:hover{background:rgba(255,255,255,.085); border-color:rgba(238,150,42,.42); transform:translateX(6px);}
.ow-checks svg{width:20px; height:20px; margin-top:2px; flex:none; fill:none; stroke:var(--amber); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round;}

.ow-unicard{
  padding:clamp(24px,2.8vw,34px); border-radius:20px;
  background:linear-gradient(158deg, rgba(255,255,255,.09) 0%, rgba(255,255,255,.03) 100%);
  border:1px solid rgba(141,182,187,.22);
}
.ow-unicard>p{
  font-family:var(--disp); font-weight:600; text-transform:uppercase; letter-spacing:.2em;
  font-size:clamp(12px,1.4vw,13.5px); color:var(--foam); margin:0 0 clamp(18px,2.2vw,24px);
}
.ow-unilist{list-style:none; margin:0; padding:0; display:grid; gap:2px;}
.ow-unilist li{
  display:flex; align-items:center; gap:14px; padding:clamp(13px,1.6vw,17px) 0;
  border-top:1px solid rgba(141,182,187,.16);
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(15px,1.85vw,20px); letter-spacing:.045em; line-height:1.16; color:#fff;
}
.ow-unilist li:first-child{border-top:0;}
.ow-unilist li::before{
  content:""; width:7px; height:7px; flex:none; border-radius:50%; background:var(--amber);
}
.ow-unicard small{
  display:block; margin-top:clamp(18px,2.2vw,24px); font-size:12.5px; line-height:1.55;
  color:rgba(141,182,187,.85);
}

/* ─── divider ─── */
.ow-partners__rule{
  height:1px; margin:clamp(52px,7vw,92px) 0; border:0;
  background:linear-gradient(90deg, rgba(141,182,187,0), rgba(141,182,187,.4) 30%, rgba(141,182,187,.4) 70%, rgba(141,182,187,0));
}

/* ─── sponsor grid ─── */
.ow-sponsors{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(12px,1.6vw,18px); margin-top:clamp(32px,4.2vw,48px);}
.ow-sp{
  padding:clamp(22px,2.6vw,30px); border-radius:16px;
  background:rgba(255,255,255,.055); border:1px solid rgba(141,182,187,.18);
  transition:background .38s, border-color .38s, transform .38s cubic-bezier(.2,.8,.2,1);
}
.ow-sp:hover{background:rgba(238,150,42,.1); border-color:rgba(238,150,42,.5); transform:translateY(-6px);}
.ow-sp__ic{
  width:clamp(40px,4.2vw,48px); height:clamp(40px,4.2vw,48px); border-radius:12px;
  display:grid; place-items:center; margin-bottom:clamp(14px,1.8vw,18px);
  background:rgba(238,150,42,.13); border:1px solid rgba(238,150,42,.34);
}
.ow-sp__ic svg{width:54%; height:54%; fill:none; stroke:var(--amber); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
.ow-sp h3{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(17px,1.95vw,21px); letter-spacing:.05em; line-height:1.1; margin:0 0 .5em; color:#fff;
}
.ow-sp p{font-size:clamp(13.5px,1.5vw,15.5px); line-height:1.5; color:rgba(255,255,255,.7); margin:0;}

/* ─── what a sponsor gets back ─── */
.ow-give{
  margin-top:clamp(30px,4vw,46px); display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr); gap:clamp(26px,4vw,56px);
  padding:clamp(26px,3.2vw,40px); border-radius:20px;
  background:linear-gradient(158deg, rgba(238,150,42,.13) 0%, rgba(255,255,255,.03) 100%);
  border:1px solid rgba(238,150,42,.3);
}
.ow-give h3{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(24px,3.2vw,38px); line-height:1; letter-spacing:-.005em; margin:0 0 .55em; color:#fff;
}
.ow-give__hd p{font-size:clamp(14.5px,1.6vw,16.5px); line-height:1.58; color:rgba(255,255,255,.78); margin:0;}
.ow-give__l{list-style:none; margin:0; padding:0; display:grid; gap:clamp(11px,1.4vw,15px);}
.ow-give__l li{
  position:relative; padding-left:1.9em;
  font-size:clamp(14px,1.55vw,16px); line-height:1.5; color:rgba(255,255,255,.74);
}
.ow-give__l li::before{
  content:""; position:absolute; left:0; top:.42em; width:.85em; height:.45em;
  border-left:2px solid var(--amber); border-bottom:2px solid var(--amber);
  transform:rotate(-45deg);
}
.ow-give__l b{display:block; color:#fff; font-weight:600; font-family:var(--disp);
  text-transform:uppercase; letter-spacing:.06em; font-size:clamp(14.5px,1.65vw,17px); margin-bottom:.15em;}

/* ─── confirmed supporters ─── */
.ow-backers{margin-top:clamp(40px,5vw,64px); text-align:center;}
.ow-backers__hd{
  font-family:var(--disp); font-weight:600; text-transform:uppercase; letter-spacing:.24em;
  font-size:clamp(11px,1.35vw,13px); color:var(--foam); margin:0 0 clamp(18px,2.4vw,26px);
}
.ow-backers__row{
  display:flex; flex-wrap:wrap; justify-content:center; align-items:stretch;
  gap:clamp(12px,1.6vw,18px);
}
.ow-backer{
  display:grid; place-items:center; text-decoration:none; color:inherit;
  min-width:clamp(150px,17vw,210px); min-height:clamp(84px,9vw,108px);
  padding:clamp(16px,2vw,22px) clamp(20px,2.4vw,28px); border-radius:14px;
  background:rgba(255,255,255,.06); border:1px solid rgba(141,182,187,.2);
  transition:background .38s, border-color .38s, transform .38s cubic-bezier(.2,.8,.2,1);
}
.ow-backer:hover{background:rgba(255,255,255,.1); border-color:rgba(238,150,42,.5); transform:translateY(-5px); color:inherit;}
.ow-backer img{display:block; max-width:100%; max-height:clamp(58px,6.4vw,74px); width:auto; height:auto;}
/* Supplied logos come on a light background, and this one is navy and red, so it
   would vanish against the dark section. It sits on a light tile instead. The
   colour must match TILE in build_logos.py or you can see the edge of the PNG.
   Logo tiles also drop the wordmark tiles' min-width, because a squarish logo
   stranded in the middle of a wide box looks like a mistake. */
.ow-backer--logo{
  background:#F4F7F7; border-color:rgba(244,247,247,.9); min-width:0;
  padding:clamp(15px,1.9vw,21px) clamp(24px,2.8vw,32px);
}
.ow-backer--logo:hover{background:#F4F7F7; border-color:var(--amber);}
.ow-backer__wm{
  font-family:var(--disp); font-weight:500; text-transform:uppercase;
  font-size:clamp(17px,2vw,23px); letter-spacing:.09em; line-height:1.1; color:#fff;
}
.ow-backer__wm b{font-weight:700; color:var(--foam);}
.ow-backer--open{background:transparent; border-style:dashed; border-color:rgba(141,182,187,.34);}
.ow-backer--open .ow-backer__wm{font-size:clamp(13px,1.5vw,15px); letter-spacing:.16em; color:rgba(255,255,255,.6);}
.ow-backer--open .ow-backer__wm b{color:var(--amber);}
.ow-backers small{
  display:block; margin:clamp(18px,2.4vw,26px) auto 0; max-width:52em;
  font-size:12.5px; line-height:1.6; color:rgba(141,182,187,.8);
}

/* ─── Oman 3165 callout ─── */
.ow-3165{
  margin-top:clamp(46px,6vw,78px); display:grid; grid-template-columns:minmax(0,1fr) clamp(180px,24vw,300px);
  gap:clamp(24px,4vw,52px); align-items:center;
  padding:clamp(26px,3.2vw,40px); border-radius:22px;
  background:linear-gradient(150deg, rgba(22,104,176,.20) 0%, rgba(255,255,255,.035) 100%);
  border:1px solid rgba(141,182,187,.24);
}
.ow-3165__logo{
  width:clamp(54px,6vw,68px); height:clamp(54px,6vw,68px); border-radius:12px; display:block;
  background-image:var(--ow-logo-3165); background-size:cover; background-position:center;
  background-color:#1668B0; margin-bottom:clamp(16px,2vw,22px);
}
.ow-3165 h3{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(24px,3.4vw,40px); line-height:1; letter-spacing:-.005em; margin:0 0 .5em; color:#fff;
}
.ow-3165 p{font-size:clamp(14.5px,1.65vw,17px); line-height:1.56; color:rgba(255,255,255,.82); margin:0; max-width:36em;}
.ow-3165__link{margin-top:1.1em !important;}
.ow-3165__link a{
  display:inline-flex; align-items:center; gap:.5em; text-decoration:none;
  font-family:var(--body); font-size:clamp(12px,1.4vw,13.5px); font-weight:600;
  letter-spacing:.1em; text-transform:uppercase; color:var(--amber);
  border-bottom:1px solid rgba(238,150,42,.4); padding-bottom:.25em;
  transition:color .3s, border-color .3s;
}
.ow-3165__link a:hover{color:#fff; border-color:#fff;}
.ow-3165__link svg{width:1.1em; height:1.1em; flex:none; transition:transform .3s;}
.ow-3165__link a:hover svg{transform:translateX(4px);}
.ow-3165__map{
  border-radius:14px; overflow:hidden; aspect-ratio:3/4; background:#0A2830;
  background-image:var(--ow-map-img); background-size:cover; background-position:center;
  border:1px solid rgba(141,182,187,.28);
  box-shadow:0 24px 44px -26px rgba(0,0,0,.8);
}

.ow-partners [data-ow-rv]{opacity:0; transform:translateY(28px);}
.ow-partners [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);}

@media (max-width:960px){
  .ow-uni{grid-template-columns:1fr;}
  .ow-sponsors{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ow-give{grid-template-columns:1fr;}
  .ow-3165{grid-template-columns:1fr;}
  .ow-3165__map{aspect-ratio:16/10; max-width:420px;}
}
@media (max-width:560px){
  .ow-sponsors{grid-template-columns:1fr;}
  .ow-checks li:hover{transform:none;}
}
@media (prefers-reduced-motion:reduce){.ow-partners [data-ow-rv]{opacity:1 !important; transform:none !important;}}

/* ══ 07-the-journey ══════════════════════════════════════ */

.ow-journey{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --teal-d:#0A6B73; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:#F2F6F6; color:var(--ink); font-family:var(--body);
  padding:clamp(70px,9.5vw,128px) 6vw clamp(74px,9.5vw,128px);
  overflow:hidden; isolation:isolate; -webkit-font-smoothing:antialiased;
}
.ow-journey *,.ow-journey *::before,.ow-journey *::after{box-sizing:border-box;}
.ow-journey__inner{position:relative; z-index:1; max-width:1100px; margin:0 auto;}

.ow-journey .ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 18px;
  font-family:var(--disp); font-size:clamp(12px,1.5vw,14px); font-weight:600;
  letter-spacing:.24em; text-transform:uppercase; color:var(--teal-d);
}
.ow-journey .ow-eyebrow::before{content:""; width:clamp(24px,4vw,44px); height:1px; background:var(--amber);}
.ow-journey h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(36px,6vw,78px); line-height:.92; letter-spacing:-.01em; margin:0 0 clamp(16px,2vw,22px);
}
.ow-journey h2 b{color:var(--teal); font-weight:700;}
.ow-journey__lede{font-size:clamp(16px,1.75vw,19.5px); line-height:1.6; color:rgba(10,40,48,.72); margin:0 0 clamp(46px,6vw,76px); max-width:38em;}

/* ─── timeline ─── */
.ow-tl{
  position:relative;
  --node:clamp(44px,5.4vw,68px);      /* node diameter */
  --gutter:clamp(64px,7.4vw,96px);    /* space reserved left of each card */
  padding-left:var(--gutter);
}
.ow-tl__rail{
  position:absolute; left:calc(var(--node) / 2 - 1px); top:8px; bottom:8px; width:2px;
  background:rgba(10,40,48,.13); border-radius:2px; overflow:hidden;
}
.ow-tl__fill{
  position:absolute; inset:0 0 auto 0; height:0;
  background:linear-gradient(180deg, var(--teal), var(--amber));
  transition:height .18s linear;
}
.ow-step{position:relative; padding-bottom:clamp(34px,4.4vw,54px);}
.ow-step:last-child{padding-bottom:0;}
.ow-step__node{
  position:absolute; left:calc(var(--gutter) * -1); top:2px;
  width:var(--node); height:var(--node); border-radius:50%;
  display:grid; place-items:center; background:#F2F6F6;
  border:2px solid rgba(10,40,48,.14);
  font-family:var(--disp); font-weight:700; font-size:clamp(16px,2.1vw,24px);
  color:rgba(10,40,48,.35); line-height:1;
  transition:border-color .5s, color .5s, background .5s, transform .5s cubic-bezier(.2,.8,.2,1);
}
.ow-step.is-on .ow-step__node{
  background:var(--ink); border-color:var(--amber); color:var(--amber); transform:scale(1.06);
}
.ow-step.is-last.is-on .ow-step__node{background:var(--amber); border-color:var(--amber); color:var(--ink);}
.ow-step__body{
  padding:clamp(20px,2.4vw,28px) clamp(22px,2.6vw,32px); border-radius:18px;
  background:#fff; border:1px solid rgba(10,40,48,.08);
  transition:box-shadow .5s, transform .5s cubic-bezier(.2,.8,.2,1), border-color .5s;
}
.ow-step.is-on .ow-step__body{box-shadow:0 22px 44px -30px rgba(10,40,48,.42); border-color:rgba(13,136,145,.28);}
.ow-step__date{
  display:inline-block; font-family:var(--body); font-size:clamp(10.5px,1.3vw,12px); font-weight:600;
  letter-spacing:.19em; text-transform:uppercase; color:var(--teal-d); margin:0 0 .85em;
  padding:.45em .9em; border-radius:100px; background:rgba(13,136,145,.09);
}
.ow-step.is-last .ow-step__date{color:#0A2830; background:rgba(238,150,42,.24);}
.ow-step h3{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(22px,3.1vw,36px); line-height:1.02; letter-spacing:-.004em; margin:0 0 .42em; color:var(--ink);
}
.ow-step p{font-size:clamp(14.5px,1.65vw,17px); line-height:1.55; color:rgba(10,40,48,.68); margin:0; max-width:38em;}

.ow-journey__cta{
  margin-top:clamp(44px,5.6vw,72px); display:flex; flex-wrap:wrap; align-items:center; gap:clamp(14px,2.4vw,26px);
}
.ow-journey__cta p{margin:0; font-size:clamp(14px,1.6vw,16.5px); line-height:1.5; color:rgba(10,40,48,.68); max-width:30em;}
.ow-btn{
  display:inline-flex; align-items:center; gap:.65em; font-family:var(--body);
  font-size:clamp(13px,1.6vw,14.5px); font-weight:600; letter-spacing:.055em;
  text-transform:uppercase; text-decoration:none; padding:1.02em 1.7em;
  border-radius:100px; border:1.5px solid var(--amber); background:var(--amber);
  color:#0A2830 !important; box-shadow:0 8px 24px -12px rgba(238,150,42,.9);
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s;
}
.ow-btn:hover{transform:translateY(-3px); box-shadow:0 16px 32px -14px rgba(238,150,42,1); color:#0A2830 !important;}
.ow-btn svg{width:1.05em; height:1.05em; flex:none;}

.ow-journey [data-ow-rv]{opacity:0; transform:translateY(28px);}
.ow-journey [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);}

@media (max-width:600px){
  .ow-tl{--node:36px; --gutter:52px;}
  .ow-step__node{font-size:15px;}
  .ow-journey__cta .ow-btn{width:100%; justify-content:center;}
}
@media (prefers-reduced-motion:reduce){
  .ow-journey [data-ow-rv]{opacity:1 !important; transform:none !important;}
  .ow-tl__fill{transition:none;}
}

/* ══ 08-why-this-matters ══════════════════════════════════════ */
  .ow-why{
    /* file: assets/img/ — swap the url() below to change it */
    --ow-why-img: url("../img/expedition-kayak-sunset.jpg");
    /* file: assets/img/ — swap the url() below to change it */
    --ow-inset-img: url("../img/coastline-plastic.jpg");
  }

.ow-why{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:var(--ink); color:#fff; font-family:var(--body);
  overflow:hidden; isolation:isolate; -webkit-font-smoothing:antialiased;
  min-height:min(94vh,820px); min-height:min(94svh,820px); display:flex; align-items:center;
}
.ow-why *,.ow-why *::before,.ow-why *::after{box-sizing:border-box;}

.ow-why__bg{
  position:absolute; inset:-10% 0; z-index:0;
  background-image:var(--ow-why-img); background-size:cover; background-position:center 55%;
  background-color:#12313a; will-change:transform; transform:translate3d(0,0,0);
}
.ow-why__scrim{
  position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(100deg, rgba(10,40,48,.93) 0%, rgba(10,40,48,.68) 44%, rgba(10,40,48,.28) 78%),
    linear-gradient(180deg, rgba(10,40,48,.55) 0%, rgba(10,40,48,.1) 40%, rgba(10,40,48,.72) 100%);
}

.ow-why__inner{
  position:relative; z-index:3; width:100%; max-width:1240px; margin:0 auto;
  padding:clamp(84px,11vw,140px) 6vw;
  display:grid; grid-template-columns:minmax(0,1.32fr) minmax(0,.68fr);
  gap:clamp(34px,5.5vw,74px); align-items:center;
}

.ow-why .ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 clamp(22px,3vw,32px);
  font-family:var(--disp); font-size:clamp(12px,1.5vw,14px); font-weight:600;
  letter-spacing:.26em; text-transform:uppercase; color:var(--amber);
}
.ow-why .ow-eyebrow::before{content:""; width:clamp(24px,4vw,48px); height:1px; background:var(--amber);}

.ow-why h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(38px,7vw,96px); line-height:.9; letter-spacing:-.012em;
  margin:0 0 clamp(26px,3.6vw,42px);
}
.ow-why h2 b{color:var(--foam); font-weight:700;}

.ow-lines{margin:0; padding:0; list-style:none; max-width:26em;}
.ow-lines li{
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(21px,3.1vw,40px); line-height:1.12; letter-spacing:.002em;
  color:#fff; padding:clamp(13px,1.7vw,20px) 0;
  border-top:1px solid rgba(141,182,187,.26);
}
.ow-lines li:first-child{border-top:0; padding-top:0;}
.ow-lines li em{font-style:normal; color:var(--amber);}
.ow-lines li span{
  display:block; margin-top:.55em; font-family:var(--body); font-weight:400;
  text-transform:none; letter-spacing:0; font-size:clamp(14.5px,1.65vw,17px);
  line-height:1.55; color:rgba(255,255,255,.76);
}

/* ─── inset ─── */
.ow-why__inset{
  margin:0; border-radius:20px; overflow:hidden; position:relative; aspect-ratio:4/5;
  background:linear-gradient(150deg,#0D8891,#0A2830);
  border:1px solid rgba(141,182,187,.26);
  box-shadow:0 30px 60px -32px rgba(0,0,0,.85);
}
.ow-why__inset i{
  position:absolute; inset:0; display:block;
  background-image:var(--ow-inset-img); background-size:cover; background-position:center;
  animation:ow-kb2 24s ease-in-out infinite alternate;
}
@keyframes ow-kb2{from{transform:scale(1.02)}to{transform:scale(1.14)}}
.ow-why__inset figcaption{
  position:absolute; z-index:2; inset:auto 0 0 0; padding:clamp(18px,2.4vw,26px);
  background:linear-gradient(transparent, rgba(10,40,48,.94) 62%);
  font-size:clamp(13px,1.5vw,15px); line-height:1.5; color:rgba(255,255,255,.9);
}
.ow-why__inset figcaption b{
  display:block; font-family:var(--disp); font-weight:600; text-transform:uppercase;
  letter-spacing:.14em; font-size:clamp(11px,1.3vw,12.5px); color:var(--amber); margin-bottom:.6em;
}

.ow-why [data-ow-rv]{opacity:0; transform:translateY(28px);}
.ow-why [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .9s cubic-bezier(.2,.8,.2,1), transform .9s cubic-bezier(.2,.8,.2,1);}

@media (max-width:960px){
  .ow-why__inner{grid-template-columns:1fr;}
  .ow-why__inset{aspect-ratio:16/10; max-width:520px;}
  .ow-lines{max-width:none;}
}
@media (prefers-reduced-motion:reduce){
  .ow-why [data-ow-rv]{opacity:1 !important; transform:none !important;}
  .ow-why__bg{transform:none !important;}
  .ow-why__inset i{animation:none !important;}
}

/* ══ 09-register-footer ══════════════════════════════════════ */
  .ow-reg{
    /* file: assets/img/ — swap the url() below to change it */
    --ow-qr-img: url("../img/register-qr.png");
    /* file: assets/img/ — swap the url() below to change it */
    --ow-logo-3165: url("../img/logo-oman3165.png");
  }

.ow-reg{
  --ink:#0A2830; --ink-2:#0C3139; --teal:#0D8891; --foam:#8DB6BB; --amber:#EE962A;
  --disp:'Barlow Condensed','Oswald','Arial Narrow',sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;

  position:relative; left:50%; width:var(--ow-vw,100vw); margin-left:calc(var(--ow-vw,100vw) / -2);
  background:var(--ink); color:#fff; font-family:var(--body);
  overflow:hidden; isolation:isolate; -webkit-font-smoothing:antialiased;
  padding:clamp(74px,10vw,132px) 6vw clamp(34px,4vw,48px);
}
.ow-reg *,.ow-reg *::before,.ow-reg *::after{box-sizing:border-box;}
.ow-reg::before{
  content:""; position:absolute; z-index:0; inset:-26vw -18vw auto auto;
  width:80vw; height:80vw; max-width:1050px; max-height:1050px; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(13,136,145,.34) 0%, rgba(13,136,145,0) 64%);
}
.ow-reg::after{
  content:""; position:absolute; z-index:0; inset:auto auto -30vw -20vw;
  width:70vw; height:70vw; max-width:860px; max-height:860px; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(238,150,42,.20) 0%, rgba(238,150,42,0) 64%);
}
.ow-reg__inner{position:relative; z-index:1; max-width:1240px; margin:0 auto;}

.ow-reg .ow-eyebrow{
  display:inline-flex; align-items:center; gap:.7em; margin:0 0 20px;
  font-family:var(--disp); font-size:clamp(12px,1.5vw,14px); font-weight:600;
  letter-spacing:.26em; text-transform:uppercase; color:var(--amber);
}
.ow-reg .ow-eyebrow::before{content:""; width:clamp(24px,4vw,48px); height:1px; background:var(--amber);}

.ow-reg h2{
  font-family:var(--disp); font-weight:700; text-transform:uppercase;
  font-size:clamp(40px,7.6vw,110px); line-height:.87; letter-spacing:-.015em; margin:0 0 clamp(20px,2.6vw,30px);
}
.ow-reg h2 b{color:var(--foam); font-weight:700;}
.ow-reg h2 i{font-style:normal; color:var(--amber);}
.ow-reg__lede{font-size:clamp(17px,2vw,22px); line-height:1.55; color:rgba(255,255,255,.86); margin:0 0 clamp(30px,4vw,44px); max-width:26em;}

.ow-reg__grid{display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:clamp(32px,5vw,74px); align-items:start;}

/* ─── involvement pills ─── */
.ow-pills{display:flex; flex-wrap:wrap; gap:10px; margin:0 0 clamp(32px,4.2vw,46px); padding:0; list-style:none;}
.ow-pills li{
  display:inline-flex; align-items:center; gap:.55em;
  padding:.72em 1.15em; border-radius:100px;
  border:1px solid rgba(141,182,187,.38); background:rgba(255,255,255,.05);
  font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(13px,1.55vw,15.5px); letter-spacing:.08em; color:#fff;
  transition:background .32s, border-color .32s, transform .32s cubic-bezier(.2,.8,.2,1);
}
.ow-pills li:hover{background:rgba(238,150,42,.16); border-color:var(--amber); transform:translateY(-3px);}
.ow-pills li::before{content:""; width:6px; height:6px; border-radius:50%; background:var(--amber); flex:none;}
.ow-pills__open{border-style:dashed !important; background:transparent !important; color:rgba(255,255,255,.78) !important;}
.ow-pills__open::before{background:transparent !important; border:1px solid var(--amber); box-sizing:border-box;}

/* ─── CTA row ─── */
.ow-reg__ctas{display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin:0 0 clamp(30px,4vw,42px);}
.ow-btn{
  display:inline-flex; align-items:center; gap:.65em; font-family:var(--body);
  font-size:clamp(13.5px,1.7vw,15.5px); font-weight:600; letter-spacing:.055em;
  text-transform:uppercase; text-decoration:none; padding:1.15em 2em;
  border-radius:100px; border:1.5px solid var(--amber); background:var(--amber);
  color:#0A2830 !important; box-shadow:0 10px 30px -12px rgba(238,150,42,.95);
  transition:transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s;
}
.ow-btn:hover{transform:translateY(-3px); box-shadow:0 20px 40px -14px rgba(238,150,42,1); color:#0A2830 !important;}
.ow-btn svg{width:1.1em; height:1.1em; flex:none;}
.ow-btn--ghost{background:transparent; color:#fff !important; border-color:rgba(255,255,255,.5); box-shadow:none;}
.ow-btn--ghost:hover{background:rgba(255,255,255,.1); border-color:#fff; color:#fff !important; box-shadow:none;}

.ow-reg__where{display:flex; flex-wrap:wrap; gap:clamp(12px,2vw,20px);}
.ow-reg__where span{
  display:inline-flex; align-items:center; gap:.55em;
  font-size:clamp(13px,1.55vw,15px); font-weight:500; color:var(--foam);
}
.ow-reg__where svg{width:1.15em; height:1.15em; flex:none; fill:none; stroke:var(--amber); stroke-width:1.8; stroke-linecap:round;}

/* ─── QR card ─── */
.ow-qr{
  padding:clamp(22px,2.8vw,32px); border-radius:22px; text-align:center;
  background:linear-gradient(158deg, rgba(255,255,255,.1) 0%, rgba(255,255,255,.035) 100%);
  border:1px solid rgba(141,182,187,.26);
}
.ow-qr a{
  display:block; width:100%; max-width:280px; margin:0 auto clamp(18px,2.2vw,24px);
  aspect-ratio:1; border-radius:14px; background:#fff;
  background-image:var(--ow-qr-img); background-size:88% 88%; background-position:center; background-repeat:no-repeat;
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s;
  box-shadow:0 14px 34px -18px rgba(0,0,0,.7);
}
.ow-qr a:hover{transform:scale(1.035) rotate(-1.2deg); box-shadow:0 22px 44px -18px rgba(0,0,0,.8);}
.ow-qr p{
  margin:0; font-family:var(--disp); font-weight:600; text-transform:uppercase;
  font-size:clamp(14px,1.7vw,17px); letter-spacing:.15em; line-height:1.4; color:#fff;
}
.ow-qr p span{display:block; margin-top:.6em; font-family:var(--body); font-weight:400; text-transform:none; letter-spacing:0; font-size:13px; color:var(--foam);}

/* ─── footer ─── */
.ow-foot{
  margin-top:clamp(52px,7vw,92px); padding-top:clamp(28px,3.4vw,40px);
  border-top:1px solid rgba(141,182,187,.22);
  display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:clamp(20px,3vw,42px); align-items:center;
}
/* Our own lockup first, then a hairline, then the expedition's mark — the rule
   stops two unrelated logos reading as one muddled graphic. Sits inside the
   footer's existing first grid column, so no grid or breakpoint changes. */
.ow-foot__marks{display:flex; align-items:center; gap:clamp(13px,1.7vw,20px);}
.ow-foot__brand{height:clamp(56px,6.2vw,74px); width:auto; display:block; flex:none;}
.ow-foot__div{
  width:1px; height:clamp(32px,3.8vw,44px); flex:none; display:block;
  background:rgba(141,182,187,.30);
}
.ow-foot__logo{
  width:clamp(46px,5vw,58px); height:clamp(46px,5vw,58px); border-radius:11px; display:block; flex:none;
  background-image:var(--ow-logo-3165); background-size:cover; background-position:center; background-color:#1668B0;
}
.ow-foot__mid p{margin:0; font-size:clamp(12.5px,1.45vw,14px); line-height:1.6; color:rgba(255,255,255,.66);}
.ow-foot__mid p b{color:#fff; font-weight:600;}
.ow-foot__mid a{color:var(--amber) !important; text-decoration:none; border-bottom:1px solid rgba(238,150,42,.4);}
.ow-foot__mid a:hover{border-bottom-color:var(--amber); color:var(--amber) !important;}
.ow-foot__top{
  display:inline-flex; align-items:center; gap:.6em; text-decoration:none;
  font-size:11.5px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--foam) !important; white-space:nowrap;
}
.ow-foot__top svg{width:1.2em; height:1.2em; stroke:currentColor; stroke-width:2; fill:none; stroke-linecap:round; transition:transform .3s;}
.ow-foot__top:hover svg{transform:translateY(-3px);}

.ow-reg [data-ow-rv]{opacity:0; transform:translateY(28px);}
.ow-reg [data-ow-rv].is-in{opacity:1; transform:none; transition:opacity .85s cubic-bezier(.2,.8,.2,1), transform .85s cubic-bezier(.2,.8,.2,1);}

@media (max-width:960px){
  .ow-reg__grid{grid-template-columns:1fr;}
  .ow-qr{max-width:380px;}
  .ow-foot{grid-template-columns:auto minmax(0,1fr); }
  .ow-foot__top{grid-column:1/-1;}
}
@media (max-width:560px){
  .ow-reg__ctas .ow-btn{width:100%; justify-content:center;}
  .ow-qr{max-width:none;}
}
@media (prefers-reduced-motion:reduce){.ow-reg [data-ow-rv]{opacity:1 !important; transform:none !important;}}

/* ═══════════ NO-JAVASCRIPT FALLBACK ═══════════
   Everything that JS fades in must be visible if JS never runs. */
html:not(.ow-js) [data-ow-rv],
html:not(.ow-js) [data-r],
html:not(.ow-js) [data-ow-rv].is-in,
html:not(.ow-js) [data-r].is-on{
  opacity:1!important; transform:none!important; visibility:visible!important;
}
