:root{
  --pope-blue:#0079C1;
  --pope-cyan:#03A0D7;

  --ink:#07162A;
  --muted:#35506B;
  --muted2:#5C748E;

  --bg:#F6FAFE;
  --bg2:#FFFFFF;
  --surface:#FFFFFF;
  --surface2:#F2F7FC;

  --line: rgba(7,22,42,.10);
  --line2: rgba(7,22,42,.14);

  --radius: 18px;
  --radius-lg: 26px;

  --shadow: 0 20px 60px rgba(7,22,42,.12);
  --shadow-soft: 0 12px 34px rgba(7,22,42,.10);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial; color:var(--ink);}
a{color:inherit}

.bg{
  min-height:100vh;
  background:
    radial-gradient(900px 600px at 10% -10%, rgba(3,160,215,.18), transparent 60%),
    radial-gradient(900px 600px at 90% 0%, rgba(0,121,193,.16), transparent 60%),
    linear-gradient(180deg, var(--bg), #ffffff 55%, #ffffff 100%);
}

/* Layout */
.container{max-width:1120px;margin:0 auto;padding:0 18px;}
.section{padding:28px 0;}
.section.tight{padding:16px 0;}
.grid{display:grid;gap:14px;}
.grid-2{grid-template-columns: 1fr 1fr;}
.grid-3{grid-template-columns: repeat(3, 1fr);}
.grid-4{grid-template-columns: repeat(4, 1fr);}

@media (max-width: 980px){
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}
}

/* Topbar */
.topbar{
  position:sticky;top:0;z-index:50;
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--line);
}
.topbar .row{
  display:flex;align-items:center;gap:14px;
  padding:14px 0;
}
.brand{
  display:flex;align-items:center;gap:10px;
  text-decoration:none;
}
.brand img{height:34px;width:auto}
.brand .title{font-weight:900;letter-spacing:.2px}
.brand .sub{font-size:12px;color:var(--muted2);font-weight:700}

.nav{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.nav a{
  text-decoration:none;
  color:var(--muted);
  font-weight:800;
  padding:9px 10px;
  border-radius:12px;
}
.nav a:hover{background: rgba(7,22,42,.04);}

.btn{
  appearance:none;border:0;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 14px;border-radius:14px;font-weight:900;
  transition: transform .06s ease, box-shadow .16s ease, background .16s ease;
  white-space:nowrap;
}
.btn:active{transform: translateY(1px);}
.btn.primary{
  color:white;
  background: linear-gradient(135deg, var(--pope-blue), var(--pope-cyan));
  box-shadow: 0 12px 26px rgba(0,121,193,.18);
}
.btn.secondary{
  color:var(--ink);
  background: rgba(255,255,255,.70);
  border:1px solid var(--line2);
  box-shadow:none;
}
.btn.ghost{
  color:var(--ink);
  background: rgba(7,22,42,.04);
  border:1px solid rgba(7,22,42,.06);
}

/* Cards */
.card{
  background: var(--surface);
  border:1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-soft);
  padding:16px;
}
.card.lift:hover{transform: translateY(-2px);transition:.18s ease;}
.card.soft{background: linear-gradient(180deg, #ffffff, var(--surface2));}
.badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 10px;
  border-radius:999px;
  background: rgba(3,160,215,.10);
  border:1px solid rgba(3,160,215,.22);
  color: var(--ink);
  font-weight:950;
  font-size:12px;
}
.kicker{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 10px;
  border-radius:999px;
  background: rgba(7,22,42,.04);
  border:1px solid rgba(7,22,42,.06);
  color: var(--muted);
  font-weight:900;
  font-size:12px;
}
.h1{
  font-size:44px;
  line-height:1.03;
  letter-spacing:-.7px;
  margin:14px 0 10px;
}
.h2{
  font-size:26px;
  letter-spacing:-.3px;
  margin:0 0 10px;
}
.p{margin:0;color:var(--muted);line-height:1.6;}
.mini{margin-top:10px;font-weight:900;color:var(--ink);}

/* Hero */
.hero{
  padding:22px 0 8px;
}
.hero-wrap{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:14px;
}
@media (max-width: 980px){
  .hero-wrap{grid-template-columns: 1fr;}
  .h1{font-size:36px;}
}

.hero-main{
  position:relative;
  overflow:hidden;
  padding:22px;
  border-radius: var(--radius-lg);
  background:
    radial-gradient(900px 500px at 20% 0%, rgba(3,160,215,.16), transparent 60%),
    radial-gradient(900px 500px at 90% 20%, rgba(0,121,193,.12), transparent 60%),
    linear-gradient(180deg, #ffffff, #f7fbff);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  isolation: isolate;
}

/* Overlay de lisibilite sur le hero (image derriere, texte devant) */
.hero-main::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background: linear-gradient(90deg,
    rgba(255,255,255,.98) 0%,
    rgba(255,255,255,.92) 42%,
    rgba(255,255,255,.62) 70%,
    rgba(255,255,255,.20) 100%);
}

.hero-main > *{ position:relative; z-index:1; }

.hero-media{
  position:absolute; right:-40px; top:-30px;
  width: 520px; height: 360px;
  background: url("./assets/hero-popeonline.jpg") right center/cover no-repeat;
  border-radius: 28px;
  filter: saturate(1.05) contrast(1.02);
  opacity:.22;
  z-index:0;
  pointer-events:none;
}
@media (max-width: 980px){
  .hero-media{position:relative; right:auto; top:auto; width:100%; height:220px; margin-top:14px;}
}

.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}
.pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
.pill{
  padding:8px 10px;border-radius:999px;
  background: rgba(255,255,255,.80);
  border:1px solid var(--line);
  color: var(--muted);
  font-weight:900;
  font-size:12px;
}

/* Watermark logo sous les pills (landing) */
.hero-logo{
  margin-top: 40px;
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  position:relative;
}
.hero-logo::before{
  content:"";
  position:absolute;
  width: min(480px, 92vw);
  height: min(260px, 52vw);
  background: radial-gradient(
    circle,
    rgba(0,121,193,.14) 0%,
    rgba(0,121,193,.08) 45%,
    transparent 75%
  );
  border-radius:50%;
  z-index:0;
}
.hero-logo img{
  width: 380px;
  max-width: 75%;
  height:auto;
  position:relative;
  z-index:1;
  opacity: .36;
  filter: saturate(1.1) contrast(1.05);
  transition: all .35s ease;
}
.hero-logo img:hover{
  opacity: .48;
  transform: translateY(-4px);
}

/* Formulaires (login/signup/verify/expert/mission) */
.label{display:block;font-weight:900;margin:12px 0 6px;color:rgba(7,22,42,.82)}

input, select, textarea, button{font-family:inherit;}

.input, input, select, textarea{
  border-radius: 14px;
  padding: 12px 12px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(7,22,42,.14);
  outline: none;
  color: #07162A;
}
.input:focus, input:focus, select:focus, textarea:focus{
  border-color: rgba(0,121,193,.55);
  box-shadow: 0 0 0 4px rgba(0,121,193,.12);
}

.auth-wrap{max-width:860px;margin:0 auto;padding:22px 18px 40px;}
.auth-card{
  border-radius: 26px;
  border: 1px solid rgba(7,22,42,.10);
  background: rgba(255,255,255,.88);
  box-shadow: 0 18px 52px rgba(0,0,0,.10);
  padding: 22px;
}
.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media (max-width: 900px){.auth-grid{grid-template-columns:1fr}}

/* Pricing cards */
.price{
  padding:16px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow-soft);
}
.price .name{font-weight:950;}
.price .val{font-size:30px;font-weight:1000;margin:10px 0 8px;}
.price ul{margin:0;padding-left:18px;color:var(--muted);line-height:1.6;}
.price .btn{width:100%;margin-top:12px;}
.split-title{
  display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;
}
.split-title .right{color:var(--muted);font-weight:800}

/* App forms */
.shell{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:14px;
  padding: 18px 0 34px;
}
@media (max-width: 980px){ .shell{grid-template-columns:1fr;} }

.panel{
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow-soft);
  padding:16px;
}
.field label{display:block;font-weight:950;margin:12px 0 6px;color:var(--ink);}
.field input,.field textarea,.field select{
  width:100%;
  border-radius: 14px;
  padding:12px 12px;
  color:var(--ink);
  background: rgba(7,22,42,.03);
  border: 1px solid rgba(7,22,42,.10);
  outline:none;
}
.field input:focus,.field textarea:focus,.field select:focus{
  border-color: rgba(0,121,193,.35);
  box-shadow: 0 0 0 4px rgba(3,160,215,.12);
}
.field textarea{min-height:120px;resize:vertical;}
.row-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.hint{margin-top:8px;color:var(--muted2);font-size:13px;line-height:1.5;}

.output{
  background: linear-gradient(180deg, #ffffff, #f6fbff);
  border:1px solid var(--line);
  border-radius: 14px;
  padding:14px;
  min-height: 260px;
  white-space: pre-wrap;
  line-height:1.55;
  color: var(--ink);
}

/* Toast */
.toast{
  position: fixed; right:16px; bottom:16px; z-index:80;
  background: rgba(7,22,42,.92);
  color: white;
  padding: 12px 14px;
  border-radius: 14px;
  box-shadow: var(--shadow);
  display:none;
  max-width: 360px;
}
.toast.show{display:block;}
.toast.ok{background: rgba(7,22,42,.92);}
.toast.err{background: rgba(149, 19, 19, .92);}

/* Footer */
.footer{
  padding:18px 0 26px;
  color: var(--muted2);
  font-size: 13px;
}
/* Legacy helpers (V2 compatibility) */
.row{display:flex;align-items:center;gap:10px;}
.between{justify-content:space-between;}
.gap{gap:10px;}
.link{text-decoration:none;}
.logo{
  width:34px;height:34px;border-radius:12px;
  background: linear-gradient(135deg, var(--pope-blue), var(--pope-cyan));
  box-shadow: 0 10px 22px rgba(0,121,193,.16);
}
.brand-title{font-weight:950;}
.brand-sub{font-size:12px;color:var(--muted2);font-weight:800;}
button.primary, a.primary{ /* legacy buttons */
  color:white;
  background: linear-gradient(135deg, var(--pope-blue), var(--pope-cyan));
  border:none;
  border-radius:14px;
  padding:10px 14px;
  font-weight:900;
  cursor:pointer;
  box-shadow: 0 12px 26px rgba(0,121,193,.18);
  text-decoration:none;
}
button.secondary, a.secondary{
  color:var(--ink);
  background: rgba(255,255,255,.70);
  border:1px solid var(--line2);
  border-radius:14px;
  padding:10px 14px;
  font-weight:900;
  cursor:pointer;
  text-decoration:none;
}
.logo{
  width:44px;
  height:44px;
  border-radius:14px;
  background: url("./assets/popeonline-logo.png") center/contain no-repeat;
}
/*test*/


/* --- Responsive enhancements (V2.2) --- */
@media (max-width: 720px){
  .topbar .row{flex-wrap:wrap; align-items:flex-start;}
  .nav{width:100%; margin-left:0; justify-content:flex-start;}
  .nav a{padding:10px 10px;}
  .hero-actions{flex-direction:column; align-items:stretch;}
  .hero-actions .btn{width:100%;}
  .pills{flex-wrap:wrap;}
}

@media (max-width: 520px){
  .container{padding:0 14px;}
  .h1{font-size:30px;}
  .hero-media{height:180px;}
  .card{padding:14px;}
  .auth-card{padding:16px;}
}


/* =========================
   V3 — Landing public / privé
   ========================= */
.bg-v3{
  background:
    radial-gradient(1100px 760px at 10% 12%, rgba(25,132,223,.22), transparent 58%),
    radial-gradient(900px 620px at 88% 18%, rgba(255,255,255,.92), transparent 56%),
    linear-gradient(90deg, #0a5c99 0%, #0f6eaf 36%, #edf4fb 68%, #fbfdff 100%);
}

.tree-landing{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(300px, 1fr) minmax(500px, 42vw) minmax(300px, 1fr);
  align-items:center;
  isolation:isolate;
}

.tree-bg,
.tree-divider,
.tree-header,
.tree-core,
.tree-side,
.tree-glow{position:relative;z-index:1;}

.tree-bg{position:absolute;inset:0;z-index:0;}

.tree-bg-private{
  background:
    radial-gradient(820px 820px at 14% 20%, rgba(255,255,255,.12), transparent 55%),
    radial-gradient(560px 560px at 30% 76%, rgba(255,255,255,.08), transparent 58%),
    linear-gradient(180deg, #0a578f 0%, #0d69a7 58%, #1077ba 100%);
  clip-path:polygon(0 0, 47.4% 0, 50.3% 100%, 0 100%);
}

.tree-bg-public{
  background:
    radial-gradient(820px 820px at 82% 18%, rgba(255,255,255,.88), transparent 54%),
    radial-gradient(540px 540px at 72% 80%, rgba(244,157,70,.10), transparent 58%),
    linear-gradient(180deg, #f5f9fd 0%, #eef4fa 56%, #fbfdff 100%);
  clip-path:polygon(52.2% 0, 100% 0, 100% 100%, 49.8% 100%);
}

.tree-divider{
  position:absolute;
  left:50%;
  top:0;
  transform:translateX(-50%);
  width:min(34vw, 500px);
  height:100%;
  background:
    linear-gradient(180deg, rgba(255,255,255,.48), rgba(255,255,255,.08)),
    radial-gradient(circle at 50% 12%, rgba(255,255,255,.82), transparent 34%);
  clip-path:polygon(42% 0, 58% 0, 76% 100%, 24% 100%);
  opacity:.95;
}

.tree-glow{
  position:absolute;
  inset:auto;
  width:32px;
  height:32px;
  border-radius:50%;
  background:radial-gradient(circle at center, rgba(244,157,70,.92), rgba(244,157,70,0));
  filter:blur(6px);
  opacity:.68;
}
.tree-glow-left{left:17%; top:58%;}
.tree-glow-right{right:17%; top:33%;}

.tree-header{
  position:absolute;
  top:22px;
  left:50%;
  transform:translateX(-50%);
  width:min(760px, calc(100vw - 44px));
  text-align:center;
  padding:14px 20px 18px;
}

.tree-header::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.55);
  background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.38));
  box-shadow:0 26px 60px rgba(7,22,42,.10);
  backdrop-filter:blur(18px);
  z-index:-1;
}

.tree-header-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(7,22,42,.08);
  color:#214765;
  font-size:12px;
  font-weight:900;
  letter-spacing:.18px;
  margin-bottom:10px;
}

.tree-header-kicker::before,
.tree-header-kicker::after{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#f49d46;
  box-shadow:0 0 0 4px rgba(244,157,70,.12);
}

.tree-hero-copy{
  margin:0;
  color:#082038;
  font-size:clamp(28px, 2.3vw, 44px);
  font-weight:950;
  line-height:1.1;
  letter-spacing:-.85px;
  text-wrap:balance;
}

.tree-core{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:108px 0 22px;
  gap:10px;
}

.tree-logo-stage{
  position:relative;
  width:min(82vh, 84vw);
  height:min(74vh, 840px);
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}

.tree-logo-stage::before{
  content:"";
  position:absolute;
  inset:4% 9% 8%;
  border-radius:50%;
  background:radial-gradient(circle at center, rgba(255,255,255,.98) 0%, rgba(255,255,255,.52) 34%, rgba(255,255,255,.10) 58%, rgba(255,255,255,0) 74%);
  filter:blur(16px);
}

.tree-logo-stage::after{
  content:"";
  position:absolute;
  inset:18% 24% 14%;
  border-radius:50%;
  background:radial-gradient(circle at center, rgba(17,120,194,.18), rgba(17,120,194,0));
  filter:blur(18px);
}

.tree-logo-main{
  position:relative;
  z-index:1;
  width:min(72vh, 72vw);
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  filter:drop-shadow(0 30px 56px rgba(10,79,134,.16));
}

.tree-core-note{
  text-align:center;
  width:min(600px, calc(100vw - 44px));
  padding:14px 22px;
  border-radius:999px;
  color:#17324b;
  font-weight:850;
  line-height:1.42;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:0 16px 34px rgba(7,22,42,.08);
  backdrop-filter:blur(12px);
}

.tree-side{
  min-height:100vh;
  display:flex;
  align-items:center;
}

.tree-side-private{justify-content:flex-end;padding:118px 0 58px 3.6vw;}
.tree-side-public{justify-content:flex-start;padding:118px 3.6vw 58px 0;}

.tree-side-panel{
  position:relative;
  width:min(406px, 92%);
  padding:24px 22px 24px;
}

.tree-side-panel::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:34px;
  box-shadow:0 30px 70px rgba(7,22,42,.10);
  z-index:-1;
}

.tree-side-panel-private{
  color:#fff;
  text-align:right;
  transform:translateX(3%) translateY(1%);
}

.tree-side-panel-private::before{
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(14px);
}

.tree-side-panel-public{
  color:#0a2742;
  text-align:left;
  transform:translateX(-3%) translateY(1%);
}

.tree-side-panel-public::before{
  background:linear-gradient(180deg, rgba(255,255,255,.84), rgba(255,255,255,.72));
  border:1px solid rgba(13,55,87,.09);
  backdrop-filter:blur(14px);
}

.tree-badge{
  display:inline-flex;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,255,255,.14);
  color:#fff;
  font-weight:900;
  letter-spacing:.2px;
  margin-bottom:14px;
}

.tree-badge-public{
  color:#163755;
  border-color:rgba(244,157,70,.16);
  background:rgba(244,157,70,.12);
}

.tree-side-title{
  margin:0 0 12px;
  font-size:clamp(28px, 1.75vw, 39px);
  line-height:1.12;
  font-weight:950;
  letter-spacing:-.65px;
}

.tree-side-title-public{color:#0b2946;}

.tree-side-copy{
  margin:0;
  font-size:clamp(15px, .98vw, 18px);
  line-height:1.72;
  font-weight:650;
  color:rgba(255,255,255,.90);
}

.tree-side-copy-public{color:#55728d;}

.tree-side-divider{
  width:92px;
  height:2px;
  margin:18px 0 20px auto;
  background:linear-gradient(90deg, rgba(244,157,70,0), rgba(244,157,70,.95));
  border-radius:999px;
}

.tree-side-divider-public{
  margin-left:0;
  margin-right:auto;
  background:linear-gradient(90deg, rgba(244,157,70,.95), rgba(244,157,70,0));
}

.branch-flow{
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:0 0 28px;
  padding:0;
}

.branch-flow-private{align-items:flex-end;}
.branch-flow-public{align-items:flex-start;}

.branch-item{
  position:relative;
  width:fit-content;
  max-width:100%;
  padding-left:18px;
  font-weight:800;
  line-height:1.42;
  color:#fff;
}

.branch-item::before{
  content:"";
  position:absolute;
  left:0;
  top:.52em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#f49d46;
  box-shadow:0 0 0 4px rgba(244,157,70,.12);
}

.branch-item-public{color:#17324b;}

.branch-flow-private .branch-item-1{ margin-right:5%; }
.branch-flow-private .branch-item-2{ margin-right:14%; }
.branch-flow-private .branch-item-3{ margin-right:22%; }
.branch-flow-private .branch-item-4{ margin-right:10%; }
.branch-flow-public .branch-item-1{ margin-left:5%; }
.branch-flow-public .branch-item-2{ margin-left:14%; }
.branch-flow-public .branch-item-3{ margin-left:22%; }
.branch-flow-public .branch-item-4{ margin-left:10%; }

.tree-cta{
  min-width:208px;
  padding:15px 24px;
  border-radius:18px;
  font-size:16px;
  font-weight:900;
  text-decoration:none;
  box-shadow:0 16px 36px rgba(7,22,42,.12);
}

.tree-cta-private{
  color:#0b5b95;
  background:linear-gradient(135deg, #ffffff, #eff7ff);
  border:1px solid rgba(255,255,255,.6);
}

.tree-cta-public{
  color:#14324e;
  background:linear-gradient(135deg, #fffaf5, #ffffff);
  border:1px solid rgba(244,157,70,.24);
}

.tree-cta:hover{transform:translateY(-2px);}

.topbar-v3{
  background: rgba(255,255,255,.76);
}

.glass-card{
  background: rgba(255,255,255,.76);
  border:1px solid rgba(7,22,42,.09);
  box-shadow: 0 22px 60px rgba(7,22,42,.10);
  backdrop-filter: blur(14px);
  border-radius: 28px;
}

.private-page{padding:26px 18px 70px;}
.private-hero{padding:24px; margin-top:20px;}
.private-hero-grid{display:grid;grid-template-columns: 1.15fr .85fr;gap:18px;align-items:center;}
.private-lead{font-size:18px;max-width:62ch;}
.private-pills{margin-top:18px;}
.section-head{max-width:820px;margin-bottom:20px;}
.service-grid .card,.contact-card{height:100%;}
.service-title{margin:0 0 10px;font-size:20px;letter-spacing:-.2px;}
.clean-list{padding-left:18px;margin:14px 0 0;color:var(--muted);line-height:1.75;}
.pricing-banner{display:grid;grid-template-columns: 1.1fr .9fr;gap:18px;padding:24px;align-items:center;}
.price-callout{
  font-size:24px;
  line-height:1.25;
  font-weight:900;
  color:var(--ink);
  margin-bottom:10px;
}
.contact-box{padding:24px;}
.contact-grid .card{padding:20px; text-decoration:none;}
.contact-icon{
  width:54px;
  height:54px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(0,121,193,.10);
  border:1px solid rgba(0,121,193,.18);
  font-size:28px;
  margin-bottom:14px;
}
.contact-card-accent{
  background: linear-gradient(180deg, #ffffff, #edf8ff);
}

.onboarding-page{padding:26px 18px 70px;}
.onboarding-shell{padding:24px;max-width:920px;margin:20px auto 0;}
.onboarding-intro{max-width:700px;}
.stepper{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:12px;
  margin:22px 0 24px;
}
.step{
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(7,22,42,.08);
  background:#fff;
  display:flex;
  align-items:center;
  gap:12px;
}
.step span{
  width:34px;
  height:34px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(7,22,42,.06);
  font-weight:900;
}
.step small{
  display:block;
  font-size:14px;
  font-weight:800;
  color:var(--muted);
}
.step.is-active{
  border-color: rgba(0,121,193,.28);
  box-shadow:0 12px 30px rgba(0,121,193,.08);
}
.step.is-active span,
.step.is-done span{
  background: linear-gradient(135deg, var(--pope-blue), var(--pope-cyan));
  color:#fff;
}
.wizard-step{display:none;}
.wizard-step.is-active{display:block;}
.conditional-field{margin-top:14px;}
.wizard-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;}
.wizard-actions.between{justify-content:space-between;}
.wizard-summary{margin-top:8px;}
.summary-card p{margin:0 0 12px; color:var(--muted);}
.summary-card strong{color:var(--ink);}

@media (max-width: 1380px){
  .tree-landing{grid-template-columns:minmax(270px, 1fr) minmax(420px, 42vw) minmax(270px, 1fr);}
  .tree-logo-stage{width:min(76vh, 82vw);height:min(70vh, 760px);}
  .tree-logo-main{width:min(66vh, 68vw);}
  .tree-side-panel{width:min(378px, 94%);}
}

@media (max-width: 1180px){
  .tree-header{width:min(700px, calc(100vw - 28px));}
  .tree-hero-copy{font-size:clamp(26px, 3vw, 36px);}
  .tree-landing{grid-template-columns:minmax(250px, 1fr) minmax(340px, 38vw) minmax(250px, 1fr);}
  .tree-side-title{font-size:clamp(25px, 2vw, 33px);}
  .tree-side-panel-private{transform:translateX(1%) translateY(1%);}
  .tree-side-panel-public{transform:translateX(-1%) translateY(1%);}
}

@media (max-width: 1040px){
  .tree-landing{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
    padding-top:20px;
  }
  .tree-bg-private,
  .tree-bg-public,
  .tree-divider,
  .tree-glow{display:none;}
  .tree-landing::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, #0b5a94 0%, #0f72b8 42%, #edf5fb 64%, #fbfdff 100%);
    z-index:0;
  }
  .tree-header{
    position:relative;
    top:auto;
    left:auto;
    transform:none;
    width:min(760px, calc(100vw - 24px));
    margin:0 auto;
  }
  .tree-core{
    order:1;
    min-height:auto;
    padding:24px 16px 12px;
  }
  .tree-logo-stage{width:min(88vw, 620px);height:auto;min-height:360px;}
  .tree-logo-main{width:min(76vw, 520px);}
  .tree-core-note{width:min(92vw, 560px);}
  .tree-side{
    min-height:auto;
    padding:16px 16px 28px;
    justify-content:center;
  }
  .tree-side-private{order:2;}
  .tree-side-public{order:3;}
  .tree-side-panel,
  .tree-side-panel-private,
  .tree-side-panel-public{
    width:min(760px, 100%);
    transform:none;
    text-align:left;
  }
  .tree-side-divider,
  .tree-side-divider-public{margin-left:0;margin-right:auto;background:linear-gradient(90deg, rgba(244,157,70,.95), rgba(244,157,70,0));}
  .branch-flow-private,
  .branch-flow-public{align-items:flex-start;}
  .branch-flow-private .branch-item-1,
  .branch-flow-private .branch-item-2,
  .branch-flow-private .branch-item-3,
  .branch-flow-private .branch-item-4,
  .branch-flow-public .branch-item-1,
  .branch-flow-public .branch-item-2,
  .branch-flow-public .branch-item-3,
  .branch-flow-public .branch-item-4{margin-left:0;margin-right:0;}
  .private-hero-grid,.pricing-banner{grid-template-columns:1fr;}
}

@media (max-width: 720px){
  .tree-header{padding:14px 16px 16px;}
  .tree-header::before{border-radius:24px;}
  .tree-hero-copy{font-size:clamp(24px, 8vw, 32px);}
  .tree-core{padding:18px 14px 8px;}
  .tree-logo-stage{width:min(94vw, 420px);min-height:230px;}
  .tree-logo-main{width:min(86vw, 340px);}
  .tree-core-note{
    width:100%;
    border-radius:24px;
    padding:14px 16px;
    font-size:14px;
  }
  .tree-side-panel{padding:22px 18px 22px;}
  .tree-side-panel::before{border-radius:28px;}
  .tree-side-title{font-size:clamp(24px, 7.2vw, 30px);}
  .tree-side-copy{font-size:15px;}
  .branch-item{width:100%;}
  .tree-cta{width:100%;text-align:center;}
  .stepper{grid-template-columns:1fr;}
  .wizard-actions,.wizard-actions.between{justify-content:flex-start;}
}


/* =========================
   POPE Online premium refonte
   ========================= */
:root{
  --po-night:#07111f;
  --po-night-2:#0b1830;
  --po-night-3:#0f2444;
  --po-line:rgba(255,255,255,.10);
  --po-line-soft:rgba(255,255,255,.06);
  --po-text:#ecf4ff;
  --po-muted:rgba(236,244,255,.72);
  --po-accent:#77d2ff;
  --po-accent-2:#0ea5e9;
  --po-shadow:0 24px 90px rgba(0,0,0,.34);
}

body.premium-night{
  color:var(--po-text);
  background:
    radial-gradient(1000px 600px at 8% 5%, rgba(14,165,233,.12), transparent 60%),
    radial-gradient(900px 600px at 92% 8%, rgba(119,210,255,.08), transparent 58%),
    linear-gradient(135deg, #06101d 0%, #09182d 46%, #0a1630 100%);
  min-height:100vh;
  overflow-x:hidden;
}

.po-home{position:relative; min-height:100vh;}
.po-noise{
  position:fixed; inset:0; pointer-events:none; opacity:.06;
  background-image: radial-gradient(rgba(255,255,255,.8) .55px, transparent .55px);
  background-size: 20px 20px;
  mix-blend-mode:soft-light;
}
.po-watermark{
  position:fixed; inset:auto; pointer-events:none; z-index:0; opacity:.07;
  background:url('./assets/popeonline-logo.png') center/contain no-repeat;
  filter:blur(.2px) saturate(1.02);
  animation: poFloat 20s ease-in-out infinite;
}
.po-watermark-home{ width:min(54vw,760px); height:min(54vw,760px); right:-8vw; top:10vh; }
.po-watermark-sub{ width:min(40vw,520px); height:min(40vw,520px); right:-5vw; top:12vh; opacity:.05; }
@keyframes poFloat{ 0%,100%{transform:translate3d(0,0,0) rotate(0deg)} 50%{transform:translate3d(-12px,16px,0) rotate(2deg)} }

.po-nav{
  position:sticky; top:0; z-index:20;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding:20px clamp(20px,4vw,48px);
  backdrop-filter:blur(16px);
  background:rgba(5,14,29,.46);
  border-bottom:1px solid var(--po-line-soft);
}
.po-nav-home{background:transparent; border-bottom:none; backdrop-filter:none; position:relative;}
.po-brand{display:flex; align-items:center; gap:14px; text-decoration:none; color:var(--po-text);}
.po-brand img{width:42px; height:42px; object-fit:contain; border-radius:14px; box-shadow:0 10px 30px rgba(0,0,0,.22);}
.po-brand span{display:flex; flex-direction:column; line-height:1.1;}
.po-brand strong{font-size:16px; letter-spacing:.04em; text-transform:uppercase;}
.po-brand small{font-size:11px; color:var(--po-muted); letter-spacing:.18em; text-transform:uppercase;}
.po-menu{display:flex; flex-wrap:wrap; gap:12px; align-items:center;}
.po-menu a{color:var(--po-muted); text-decoration:none; font-weight:700; padding:10px 12px; border-radius:999px;}
.po-menu a:hover{background:rgba(255,255,255,.06); color:var(--po-text);}
.po-menu-cta{border:1px solid var(--po-line) !important; color:var(--po-text) !important;}

.po-split-hero{position:relative; z-index:1; padding:10px clamp(20px,4vw,48px) 40px;}
.po-intro-block{max-width:760px; padding:20px 0 28px;}
.po-overline{
  display:inline-flex; align-items:center; gap:10px;
  font-size:11px; font-weight:900; letter-spacing:.28em; text-transform:uppercase;
  color:#b9ddf4; margin-bottom:16px;
}
.po-intro-block h1,
.po-page-copy h1{margin:0; font-size:clamp(38px,5vw,72px); line-height:.98; letter-spacing:-.04em; max-width:10.5ch;}
.po-intro-block p,
.po-page-copy p,
.po-section-head p,
.po-service-card p,
.po-surface-card p,
.po-cta-panel p,
.po-side-card p,
.po-contact-strip span{color:var(--po-muted); line-height:1.7; font-size:16px;}
.po-intro-block p{max-width:700px; margin:18px 0 0;}

.po-split-stage{
  position:relative; min-height:64vh; display:grid; grid-template-columns:1fr 1fr;
  border:1px solid var(--po-line-soft); border-radius:34px; overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
  box-shadow:var(--po-shadow);
}
.po-pane{position:relative; min-height:58vh; display:flex; align-items:flex-end; padding:44px clamp(22px,3vw,40px);}
.po-pane::before{content:''; position:absolute; inset:0; pointer-events:none;}
.po-pane-private::before{background:linear-gradient(160deg, rgba(11,67,108,.24) 0%, rgba(7,17,31,.08) 60%, transparent 100%);}
.po-pane-public::before{background:linear-gradient(200deg, rgba(16,90,132,.16) 0%, rgba(7,17,31,.06) 60%, transparent 100%);}
.po-pane-inner{position:relative; z-index:1; max-width:460px;}
.po-pane-topline,.po-card-label{
  display:inline-flex; padding:8px 12px; border-radius:999px; margin-bottom:18px;
  border:1px solid rgba(185,221,244,.22); background:rgba(255,255,255,.05);
  color:#d8efff; font-size:11px; font-weight:800; letter-spacing:.18em; text-transform:uppercase;
}
.po-pane h2,.po-section-head h2,.po-side-card h2,.po-cta-panel h2{margin:0 0 14px; font-size:clamp(28px,3vw,42px); line-height:1.08; letter-spacing:-.03em;}
.po-bullets{list-style:none; padding:0; margin:22px 0 28px; display:grid; gap:12px;}
.po-bullets li{position:relative; padding-left:18px; color:#eff7ff;}
.po-bullets li::before{content:''; position:absolute; left:0; top:.62em; width:7px; height:7px; border-radius:50%; background:linear-gradient(135deg,#83d3ff,#0ea5e9); box-shadow:0 0 18px rgba(131,211,255,.6);}
.po-pane-actions,.po-page-actions{display:flex; gap:12px; flex-wrap:wrap; margin-top:26px;}
.po-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:48px;
  padding:12px 18px; border-radius:999px; text-decoration:none; font-weight:800; letter-spacing:.01em;
  transition:transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.po-btn:hover{transform:translateY(-1px);}
.po-btn-solid{color:#05111f; background:linear-gradient(135deg,#f4fbff,#7ed6ff 55%,#41b8f7); box-shadow:0 14px 30px rgba(88,196,245,.22);}
.po-btn-ghost{color:var(--po-text); border:1px solid var(--po-line); background:rgba(255,255,255,.04);}
.po-btn-ghost:hover{background:rgba(255,255,255,.08);}

.po-divider-diagonal{position:absolute; inset:-12% auto -12% 50%; width:2px; transform:rotate(21deg); z-index:2;}
.po-divider-diagonal::before,
.po-divider-diagonal::after{content:''; position:absolute; inset:0; width:1px; background:linear-gradient(180deg, transparent, rgba(184,231,255,.28), transparent);}
.po-divider-core{position:absolute; inset:0; width:3px; margin-left:-1px; background:linear-gradient(180deg, transparent, rgba(128,215,255,.84), transparent); filter:blur(.6px); box-shadow:0 0 28px rgba(104,208,255,.52);} 

.po-home-footer-note{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:18px;}
.po-mini-card,.po-side-card,.po-service-card,.po-surface-card,.po-cta-panel,.po-contact-strip{
  position:relative; z-index:1;
  border:1px solid var(--po-line-soft);
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  border-radius:24px; box-shadow:var(--po-shadow);
}
.po-mini-card{padding:18px 20px; display:grid; gap:6px;}
.po-mini-card strong{font-size:14px;}
.po-mini-card span{color:var(--po-muted); font-size:14px;}

.po-page-wrap{position:relative; z-index:1; padding:32px clamp(20px,4vw,48px) 56px;}
.po-page-hero{display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:24px; align-items:stretch;}
.po-side-card{padding:26px; align-self:stretch;}
.po-side-card ul{margin:18px 0 0; padding-left:18px; color:var(--po-text); display:grid; gap:12px; line-height:1.6;}
.po-contact-strip{display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 22px; margin-top:18px;}
.po-contact-strip strong{display:block; margin-bottom:4px;}
.po-section{padding:46px 0 0;}
.po-section-head{max-width:760px; margin-bottom:18px;}
.po-grid-3,.po-grid-2{display:grid; gap:18px;}
.po-grid-3{grid-template-columns:repeat(3,1fr);}
.po-grid-2{grid-template-columns:repeat(2,1fr);}
.po-service-card,.po-surface-card{padding:24px;}
.po-service-card h3,.po-surface-card h3{margin:0 0 10px; font-size:23px; line-height:1.18; letter-spacing:-.03em;}
.po-service-card-highlight{background:linear-gradient(180deg, rgba(126,214,255,.16), rgba(255,255,255,.04));}
.po-inline-link{display:inline-flex; margin-top:14px; color:#d8efff; text-decoration:none; font-weight:800;}
.po-inline-link:hover{text-decoration:underline;}
.po-surface-section .po-surface-card{background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));}
.po-cta-panel{padding:28px; display:flex; align-items:center; justify-content:space-between; gap:24px;}

@media (max-width: 1080px){
  .po-split-stage,
  .po-page-hero,
  .po-grid-3,
  .po-grid-2,
  .po-home-footer-note{grid-template-columns:1fr;}
  .po-divider-diagonal{display:none;}
  .po-pane{min-height:auto;}
  .po-intro-block h1,.po-page-copy h1{max-width:none;}
}

@media (max-width: 760px){
  .po-nav{padding:16px 16px 14px; align-items:flex-start;}
  .po-menu{justify-content:flex-start;}
  .po-split-hero,.po-page-wrap{padding-left:16px; padding-right:16px;}
  .po-pane{padding:28px 18px;}
  .po-pane h2,.po-section-head h2,.po-side-card h2,.po-cta-panel h2{font-size:30px;}
  .po-contact-strip,.po-cta-panel{flex-direction:column; align-items:flex-start;}
}


/* ===============================
   POPE ONLINE HOMEPAGE V3 PREMIUM
   =============================== */
body.po-home.premium-night{
  min-height:100vh;
  overflow-x:hidden;
  background:
    radial-gradient(80% 120% at 50% 50%, rgba(0,121,193,.08) 0%, rgba(0,0,0,0) 52%),
    linear-gradient(90deg, #06101d 0%, #031427 22%, #031a36 50%, #082042 78%, #10284a 100%);
  color:#f4f8ff;
}

.po-split-hero-v3{
  min-height:100vh;
  display:grid;
  grid-template-rows:auto 1fr auto;
  padding:104px 28px 22px;
  position:relative;
  isolation:isolate;
}

.po-watermark-centered{
  position:fixed;
  inset:0;
  background:url('./assets/popeonline-logo.png') center center / min(32vw, 480px) auto no-repeat;
  opacity:.08;
  filter:blur(.2px) saturate(1.05);
  animation:poFloatMark 18s ease-in-out infinite;
  pointer-events:none;
  z-index:0;
}

@keyframes poFloatMark{
  0%,100%{transform:translateY(0) scale(1);opacity:.07}
  50%{transform:translateY(-8px) scale(1.02);opacity:.1}
}

.po-nav-home{
  position:fixed;
  top:0; left:0; right:0;
  z-index:20;
  padding:22px 36px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:linear-gradient(180deg, rgba(2,10,20,.74), rgba(2,10,20,.18) 72%, rgba(2,10,20,0));
  backdrop-filter: blur(10px);
}

.po-brand, .po-menu a{color:#f3f8ff;text-decoration:none}
.po-brand{display:flex;align-items:center;gap:12px}
.po-brand img{width:42px;height:42px;object-fit:contain;opacity:.92}
.po-brand strong{display:block;font-size:14px;letter-spacing:.24em;text-transform:uppercase}
.po-brand small{display:block;font-size:11px;opacity:.72;letter-spacing:.12em;text-transform:uppercase}
.po-menu{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.po-menu a{padding:10px 14px;border-radius:999px;font-weight:700;font-size:14px;color:rgba(244,248,255,.84)}
.po-menu a:hover{background:rgba(255,255,255,.07);color:#fff}
.po-menu-cta{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05)}

.po-intro-marquee{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  width:min(100%, 1680px);
  margin:0 auto;
  padding:0 1vw;
}

.po-overline-center{
  text-align:center;
  margin:0 0 18px;
  font-size:13px;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:rgba(235,243,255,.82);
}

.po-rotating-headlines{
  position:relative;
  width:100%;
  min-height:clamp(86px, 12vh, 150px);
  margin:0 auto;
}

.po-rotating-line{
  position:absolute;
  inset:0;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:clamp(44px, 6vw, 104px);
  line-height:.96;
  font-weight:800;
  letter-spacing:-.05em;
  color:#f6f9ff;
  opacity:0;
  transform:translateY(26px) scale(.985);
  transition:opacity .9s ease, transform .9s ease, filter .9s ease;
  filter:blur(8px);
  white-space:normal;
}

.po-rotating-line.is-visible{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
}

.po-intro-subline{
  margin:10px auto 0;
  max-width:1120px;
  font-size:clamp(16px, 1.2vw, 22px);
  line-height:1.55;
  color:rgba(226,236,250,.82);
}

.po-split-stage-balanced{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
  align-items:stretch;
  width:min(100%, 1560px);
  margin:18px auto 0;
}

.po-split-stage-balanced::before,
.po-split-stage-balanced::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:34px;
  pointer-events:none;
}
.po-split-stage-balanced::before{
  background:linear-gradient(90deg, rgba(0,121,193,.12), rgba(255,255,255,.02) 45%, rgba(4,110,168,.04) 55%, rgba(10,42,86,.18));
  z-index:-2;
}
.po-split-stage-balanced::after{
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 24px 60px rgba(0,0,0,.22);
  z-index:-1;
}

.po-divider-diagonal{
  position:absolute;
  left:50%; top:-4%; bottom:-4%;
  width:140px;
  transform:translateX(-50%);
  z-index:3;
  pointer-events:none;
  overflow:hidden;
}
.po-divider-diagonal::before{
  content:"";
  position:absolute;
  left:50%; top:-10%; width:2px; height:120%;
  transform:translateX(-50%) rotate(12deg);
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(130,195,255,.96) 22%, rgba(255,255,255,.98) 52%, rgba(73,158,227,.88) 78%, rgba(255,255,255,0));
  box-shadow:0 0 24px rgba(112,182,255,.4), 0 0 54px rgba(112,182,255,.28);
}
.po-divider-core{display:none}

.po-pane{
  min-height:340px;
  padding:30px 34px;
  border-radius:34px;
  position:relative;
  overflow:hidden;
  backdrop-filter: blur(12px);
}

.po-pane::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}

.po-pane-private-premium{
  background:linear-gradient(135deg, rgba(6,27,53,.88) 0%, rgba(5,31,60,.74) 42%, rgba(7,53,97,.60) 100%);
  border:1px solid rgba(94,172,235,.16);
}
.po-pane-private-premium::before{
  background:radial-gradient(90% 120% at 18% 12%, rgba(86,188,255,.15), transparent 58%);
}

.po-pane-public-premium{
  background:linear-gradient(135deg, rgba(12,31,58,.66) 0%, rgba(15,43,82,.74) 36%, rgba(20,55,102,.92) 100%);
  border:1px solid rgba(162,204,255,.12);
}
.po-pane-public-premium::before{
  background:radial-gradient(82% 120% at 82% 18%, rgba(174,210,255,.14), transparent 56%), linear-gradient(180deg, rgba(255,255,255,.015), rgba(255,255,255,0));
}

.po-pane-inner{position:relative;z-index:1;max-width:calc(100% - 24px)}
.po-pane-public .po-pane-inner{margin-left:44px; max-width:calc(100% - 52px)}
.po-pane-private .po-pane-inner{margin-right:44px; max-width:calc(100% - 52px)}

.po-pane-topline{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.22em;
  color:rgba(226,238,252,.72);
  margin-bottom:14px;
  font-weight:700;
}

.po-pane h2{
  margin:0 0 14px;
  font-size:clamp(30px, 2.4vw, 48px);
  line-height:1.04;
  letter-spacing:-.04em;
  color:#f7fbff;
}
.po-pane p{
  margin:0;
  font-size:16px;
  line-height:1.65;
  color:rgba(229,237,248,.84);
}

.po-bullets{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:11px}
.po-bullets li{
  position:relative;
  padding-left:18px;
  color:#edf4ff;
  font-weight:600;
}
.po-bullets li::before{
  content:"";
  position:absolute;left:0;top:.72em;
  width:7px;height:7px;border-radius:50%;
  background:linear-gradient(135deg, #b5e2ff, #4ea9f7);
  box-shadow:0 0 12px rgba(106,189,255,.36);
}

.po-pane-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.po-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  transition:transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.po-btn:hover{transform:translateY(-1px)}
.po-btn-solid{
  background:linear-gradient(135deg, rgba(255,255,255,.97), rgba(222,239,255,.92));
  color:#08203d;
  box-shadow:0 14px 28px rgba(0,0,0,.16);
}
.po-btn-ghost{
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.05);
  color:#f5f9ff;
}
.po-btn-ghost:hover{background:rgba(255,255,255,.08)}

.po-home-footer-note-compact{
  position:relative;
  z-index:2;
  width:min(100%, 1400px);
  margin:16px auto 0;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}
.po-mini-card{
  padding:14px 16px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(8px);
}
.po-mini-card strong{display:block;color:#fff;margin-bottom:4px}
.po-mini-card span{color:rgba(227,236,246,.78);font-size:14px;line-height:1.5}

@media (max-width: 1200px){
  .po-pane-public .po-pane-inner,
  .po-pane-private .po-pane-inner{margin-left:0;margin-right:0;max-width:100%}
  .po-divider-diagonal{width:96px}
}

@media (max-width: 980px){
  .po-nav-home{padding:18px 18px 12px; align-items:flex-start; gap:12px; flex-direction:column}
  .po-menu{width:100%;justify-content:flex-start}
  .po-split-hero-v3{padding:116px 16px 18px}
  .po-split-stage-balanced{grid-template-columns:1fr;gap:14px;margin-top:18px}
  .po-divider-diagonal{display:none}
  .po-pane{min-height:auto;padding:24px 22px;border-radius:26px}
  .po-home-footer-note-compact{grid-template-columns:1fr}
  .po-intro-subline{font-size:15px}
}

@media (max-width: 640px){
  .po-rotating-headlines{min-height:132px}
  .po-rotating-line{font-size:clamp(34px, 10vw, 56px); line-height:1.02}
  .po-pane h2{font-size:28px}
  .po-menu a{font-size:13px;padding:8px 12px}
}

/* ===== POPE Online Home V3.1 ===== */
.po-split-hero-v31{
  min-height:100vh;
  display:grid;
  grid-template-rows:minmax(0, .95fr) auto auto;
  padding:108px 28px 22px;
  position:relative;
  isolation:isolate;
}

.po-watermark-centered{
  background:url('./assets/popeonline-logo.png') center center / min(34vw, 520px) auto no-repeat;
  opacity:.075;
  filter:blur(.15px) saturate(1.04);
}

.po-home-topline{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(320px, 610px) minmax(360px, 1fr);
  align-items:center;
  gap:clamp(28px, 5vw, 84px);
  width:min(100%, 1620px);
  margin:0 auto;
  min-height:clamp(300px, 48vh, 470px);
}

.po-copy-column{align-self:start; padding-top:4px;}
.po-overline-left{
  margin:0 0 18px;
  font-size:13px;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:rgba(235,243,255,.82);
  font-weight:700;
}
.po-static-headline{
  margin:0;
  display:flex;
  flex-direction:column;
  gap:.02em;
  font-size:clamp(48px, 5.8vw, 98px);
  line-height:.95;
  letter-spacing:-.06em;
  color:#f6f9ff;
  font-weight:800;
  max-width:6.4ch;
}
.po-static-headline span{display:block;}

.po-spotlight-column{
  position:relative;
  min-height:clamp(250px, 44vh, 420px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.po-spotlight-column::before{
  content:"";
  position:absolute;
  inset:8% 3% 8% 3%;
  border-radius:34px;
  background:
    radial-gradient(70% 90% at 50% 50%, rgba(255,255,255,.035), rgba(255,255,255,0) 68%),
    linear-gradient(135deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.06);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.po-spotlight-sequence{
  position:relative;
  width:min(100%, 820px);
  min-height:280px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 clamp(20px, 4vw, 54px);
}
.po-sequence-item{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  opacity:0;
  transform:translateY(20px) scale(.985);
  filter:blur(10px);
  transition:opacity 1s ease, transform 1s ease, filter 1s ease;
  pointer-events:none;
}
.po-sequence-item.is-visible{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
}
.po-sequence-claim p{
  margin:0;
  max-width:20ch;
  font-size:clamp(22px, 2.4vw, 40px);
  line-height:1.25;
  letter-spacing:-.03em;
  color:rgba(243,248,255,.92);
  font-weight:600;
}
.po-sequence-logo{gap:10px;}
.po-wordmark{
  font-size:clamp(44px, 6vw, 94px);
  line-height:.92;
  font-weight:800;
  letter-spacing:-.06em;
  text-shadow:0 10px 30px rgba(0,0,0,.16);
}
.po-wordmark-label{
  font-size:clamp(16px, 1.3vw, 22px);
  text-transform:uppercase;
  letter-spacing:.28em;
  font-weight:700;
  color:rgba(241,246,255,.82);
}
.po-wordmark-public{
  background:linear-gradient(135deg, #ff92d2 0%, #ff4ea6 38%, #ff1b7d 72%, #ffc0e3 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 0 24px rgba(255,56,147,.18));
}
.po-wordmark-private{
  background:linear-gradient(135deg, #d8e8ff 0%, #77adff 26%, #2353a9 58%, #081c46 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 0 24px rgba(69,131,255,.14));
}

.po-split-stage-v31{
  margin-top:10px;
  align-items:stretch;
}
.po-pane{
  display:flex;
  align-items:flex-start;
}
.po-pane-inner,
.po-pane-public .po-pane-inner,
.po-pane-private .po-pane-inner{
  margin:0;
  max-width:100%;
}
.po-pane-inner-public-top{
  padding-top:0;
}
.po-pane h2{max-width:14ch;}
.po-pane p{max-width:58ch;}

.po-pane-private-premium{
  background:linear-gradient(135deg, rgba(6,27,53,.9) 0%, rgba(5,31,60,.76) 42%, rgba(7,53,97,.62) 100%);
  border:1px solid rgba(94,172,235,.16);
}
.po-pane-public-premium{
  background:linear-gradient(135deg, rgba(44,16,53,.62) 0%, rgba(78,22,72,.72) 34%, rgba(117,27,88,.84) 72%, rgba(146,31,106,.9) 100%);
  border:1px solid rgba(255,123,199,.18);
}
.po-pane-public-premium::before{
  background:
    radial-gradient(82% 120% at 82% 18%, rgba(255,150,219,.16), transparent 56%),
    radial-gradient(60% 90% at 18% 72%, rgba(255,78,166,.12), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
}
.po-pane-public-premium .po-pane-topline{color:rgba(255,221,239,.84)}
.po-bullets-public li::before{
  background:linear-gradient(135deg, #ffc2e5, #ff4ea6);
  box-shadow:0 0 12px rgba(255,78,166,.36);
}
.po-btn-solid-public{
  background:linear-gradient(135deg, rgba(255,242,250,.98), rgba(255,193,226,.95));
  color:#5d1044;
}
.po-btn-ghost-public{
  border:1px solid rgba(255,197,228,.18);
  background:rgba(255,255,255,.06);
}
.po-split-stage-balanced::before{
  background:linear-gradient(90deg, rgba(0,121,193,.12), rgba(255,255,255,.02) 45%, rgba(151,45,109,.08) 55%, rgba(111,28,84,.2));
}

.po-home-footer-note-compact{margin-top:14px;}

@media (max-width: 1280px){
  .po-home-topline{grid-template-columns:minmax(300px, 520px) minmax(300px, 1fr);gap:28px;}
  .po-static-headline{font-size:clamp(46px, 5.6vw, 86px);}
}

@media (max-width: 980px){
  .po-split-hero-v31{padding:116px 16px 18px;grid-template-rows:auto auto auto;}
  .po-home-topline{grid-template-columns:1fr;gap:18px;min-height:auto;}
  .po-copy-column{align-self:auto;}
  .po-static-headline{max-width:none;font-size:clamp(38px, 11vw, 68px);}
  .po-spotlight-column{min-height:230px;}
  .po-spotlight-sequence{min-height:220px;padding:0 12px;}
  .po-sequence-claim p{font-size:clamp(20px, 5.2vw, 32px);max-width:22ch;}
}


/* ===== POPE Online Home V4 integral ===== */
body.po-home-v4{
  min-height:100vh;
  overflow-x:hidden;
  background:
    radial-gradient(85% 120% at 22% 50%, rgba(0,121,193,.14) 0%, rgba(0,0,0,0) 52%),
    radial-gradient(80% 110% at 78% 46%, rgba(255,46,151,.14) 0%, rgba(0,0,0,0) 50%),
    linear-gradient(90deg, #07111d 0%, #061b31 26%, #091f3b 50%, #1c1530 74%, #2a1230 100%);
}

.po-split-hero-v4{
  min-height:100vh;
  display:grid;
  grid-template-rows:1fr auto;
  padding:110px 28px 24px;
  position:relative;
  isolation:isolate;
}

.po-split-stage-v4{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:34px;
  align-items:stretch;
  width:min(100%, 1600px);
  margin:0 auto;
  min-height:calc(100vh - 180px);
}

.po-split-stage-v4::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:38px;
  border:1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(90deg, rgba(0,121,193,.08) 0%, rgba(255,255,255,.015) 46%, rgba(255,46,151,.08) 100%);
  box-shadow:
    0 26px 64px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.04);
  z-index:0;
}

.po-split-stage-v4::after{
  content:"";
  position:absolute;
  top:0; bottom:0; left:50%;
  width:1px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.58) 20%, rgba(255,255,255,.26) 52%, rgba(255,255,255,.56) 80%, rgba(255,255,255,0));
  opacity:.38;
  z-index:1;
}

.po-tree-filigrane{
  position:absolute;
  inset:-3% 0 0 0;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:1;
  pointer-events:none;
}

.po-tree-filigrane-svg{
  width:min(108vw, 1800px);
  height:auto;
  opacity:.58;
}

.po-pane-v4{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  min-height:100%;
  padding:52px clamp(22px, 3.2vw, 52px);
  background:transparent;
  border:none;
  backdrop-filter:none;
}

.po-pane-v4::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:32px;
  pointer-events:none;
}

.po-pane-private.po-pane-v4::before{
  background:
    linear-gradient(135deg, rgba(6,27,53,.76) 0%, rgba(5,31,60,.58) 42%, rgba(7,53,97,.34) 100%);
  border:1px solid rgba(94,172,235,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}

.po-pane-public.po-pane-v4::before{
  background:
    linear-gradient(135deg, rgba(44,16,53,.34) 0%, rgba(78,22,72,.44) 34%, rgba(117,27,88,.52) 72%, rgba(146,31,106,.58) 100%);
  border:1px solid rgba(255,123,199,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}

.po-pane-v4 .po-pane-inner{
  position:relative;
  z-index:2;
  max-width:530px;
}

.po-pane-private.po-pane-v4 .po-pane-inner{
  margin-right:auto;
  padding-right:clamp(38px, 7vw, 132px);
}

.po-pane-public.po-pane-v4 .po-pane-inner{
  margin-left:auto;
  padding-left:clamp(38px, 7vw, 132px);
}

.po-pane-v4 .po-pane-topline{
  font-size:13px;
  letter-spacing:.26em;
  text-transform:uppercase;
  margin-bottom:16px;
}

.po-pane-v4 h2{
  margin:0 0 16px;
  max-width:12ch;
  font-size:clamp(32px, 2.65vw, 56px);
  line-height:1.02;
  letter-spacing:-.05em;
}

.po-pane-v4 p{
  font-size:16px;
  line-height:1.68;
  color:rgba(237,243,252,.84);
}

.po-pane-v4 .po-pane-actions{
  margin-top:28px;
}

.po-pane-v4 .po-btn{
  min-width:240px;
}

.po-home-v4 .po-home-footer-note-compact{
  width:min(100%, 1400px);
  margin:18px auto 0;
}

@media (max-width: 1180px){
  .po-pane-private.po-pane-v4 .po-pane-inner{padding-right:clamp(22px, 5vw, 70px);}
  .po-pane-public.po-pane-v4 .po-pane-inner{padding-left:clamp(22px, 5vw, 70px);}
  .po-tree-filigrane-svg{width:min(118vw, 1500px);}
}

@media (max-width: 980px){
  .po-split-hero-v4{padding:118px 16px 18px;}
  .po-split-stage-v4{
    grid-template-columns:1fr;
    gap:12px;
    min-height:auto;
  }
  .po-split-stage-v4::after{display:none;}
  .po-tree-filigrane{
    inset:4% 0 auto 0;
    align-items:flex-start;
  }
  .po-tree-filigrane-svg{
    width:min(140vw, 980px);
    opacity:.42;
  }
  .po-pane-v4{
    padding:24px 10px;
    min-height:auto;
  }
  .po-pane-v4::before{
    inset:0;
    border-radius:28px;
  }
  .po-pane-private.po-pane-v4 .po-pane-inner,
  .po-pane-public.po-pane-v4 .po-pane-inner{
    margin:0;
    padding:24px 22px;
    max-width:100%;
  }
  .po-pane-v4 h2{max-width:none; font-size:clamp(28px, 8vw, 40px);}
}

@media (max-width: 640px){
  .po-tree-filigrane-svg{
    width:min(170vw, 920px);
    opacity:.34;
  }
  .po-pane-v4 .po-btn{
    width:100%;
    min-width:0;
  }
}


/* ===== POPE V4.1 real logo filigrane ===== */

.po-tree-filigrane-img{
  width:min(120vw,1600px);
  height:auto;
  opacity:.08;
  filter: 
    hue-rotate(0deg)
    saturate(120%)
    brightness(110%);
  mix-blend-mode:screen;
}

@media (max-width:980px){
  .po-tree-filigrane-img{
    width:150vw;
    opacity:.06;
  }
}



/* ===== POPE Online V5 ===== */
:root{
  --po-fuchsia:#d92d8f;
  --po-fuchsia-2:#ff4da6;
  --po-white:#ffffff;
  --po-night:#07162A;
  --po-night-2:#0f2745;
  --po-line-soft:rgba(7,22,42,.10);
  --po-shadow-v5:0 24px 60px rgba(7,22,42,.12);
}

body.po-home-v5{
  min-height:100vh;
  position:relative;
  overflow-x:hidden;
  background:#fff;
  color:var(--po-night);
}

.po-page-bg{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 22%, rgba(0,121,193,.08), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(217,45,143,.07), transparent 24%),
    linear-gradient(180deg, #ffffff 0%, #ffffff 100%);
}

.po-tree-filigrane-v5{
  position:fixed;
  inset:0;
  z-index:0;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
.po-tree-filigrane-v5 img{
  width:min(88vw, 1080px);
  opacity:.08;
  filter:saturate(120%) brightness(105%);
}

.po-home-v5 .po-nav{
  position:sticky;
  top:0;
  z-index:30;
  background:rgba(255,255,255,.84);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(7,22,42,.08);
}
.po-home-v5-main{
  position:relative;
  z-index:2;
  width:min(100%, 1440px);
  margin:0 auto;
  padding:28px 22px 42px;
}

/* animation band */
.po-intro-band{
  margin:6px auto 22px;
}
.po-intro-shell{
  position:relative;
  border-radius:34px;
  overflow:hidden;
  border:1px solid rgba(7,22,42,.08);
  box-shadow:var(--po-shadow-v5);
  background:#081726;
}
.po-intro-scene{
  position:relative;
  width:100%;
  height:clamp(250px, 32vw, 390px);
  overflow:hidden;
  background:#02111f;
}
.po-intro-final-bg{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    radial-gradient(circle at 20% 45%, rgba(7,57,104,.22), transparent 34%),
    radial-gradient(circle at 78% 52%, rgba(3,160,215,.08), transparent 28%),
    linear-gradient(90deg, #03162a 0%, #06294a 52%, #021120 100%);
}
.po-intro-final-logo-wrap{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
.po-intro-final-logo{
  width:min(72vw, 900px);
  min-width:280px;
  opacity:0;
  transform:translateY(18px) scale(.985);
  filter:drop-shadow(0 14px 34px rgba(0,0,0,.26));
  transition:opacity 1.2s ease, transform 1.2s ease;
}
.po-intro-final-logo.show{
  opacity:1;
  transform:translateY(0) scale(1);
}
.po-intro-mosaic-stage{
  position:absolute;
  inset:0;
  z-index:4;
  overflow:hidden;
}
.po-intro-mosaic-watermark{
  position:absolute;
  inset:0;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  mix-blend-mode:screen;
}
.po-intro-mosaic-watermark img{
  width:min(68vw, 860px);
  min-width:260px;
  opacity:.13;
  filter:blur(.2px);
  transform:scale(1.01);
}
.po-intro-panels{
  position:absolute;
  inset:0;
  z-index:4;
  display:flex;
  width:100%;
  height:100%;
}
.po-intro-panel{
  position:relative;
  flex:1 1 20%;
  height:100%;
  overflow:hidden;
  will-change:opacity, transform, filter;
  transition:
    opacity 1.15s cubic-bezier(.22,.61,.36,1),
    transform 1.15s cubic-bezier(.22,.61,.36,1),
    filter 1.15s cubic-bezier(.22,.61,.36,1);
}
.po-intro-panel img{
  position:absolute;
  top:0;
  left:calc(var(--i) * -100%);
  width:500%;
  height:100%;
  object-fit:cover;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
  transform:scale(1.01);
}
.po-intro-panel.hide{
  opacity:0;
  transform:translateY(-2.5%) scale(.992);
  filter:blur(6px);
}
.po-intro-mosaic-stage::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:6;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.035), rgba(255,255,255,0) 16%, rgba(255,255,255,0) 84%, rgba(255,255,255,.02)),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 28%, rgba(0,0,0,.14) 100%);
}

/* compact split zones */
.po-split-v5{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  align-items:stretch;
  min-height:clamp(180px, 20vw, 235px);
}
.po-split-v5::before{
  content:"";
  position:absolute;
  top:8px;
  bottom:8px;
  left:50%;
  width:1px;
  background:linear-gradient(180deg, rgba(7,22,42,0), rgba(7,22,42,.24) 20%, rgba(217,45,143,.18) 50%, rgba(7,22,42,.24) 80%, rgba(7,22,42,0));
  transform:translateX(-50%);
}
.po-card-v5{
  position:relative;
  padding:26px 28px;
  border-radius:28px;
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 16px 38px rgba(7,22,42,.08);
  backdrop-filter:blur(6px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:clamp(180px, 20vw, 235px);
}
.po-card-v5 h2{
  margin:0 0 10px;
  font-size:clamp(24px, 2.1vw, 34px);
  line-height:1.05;
  letter-spacing:-.04em;
}
.po-card-v5 p{
  margin:0 0 18px;
  max-width:58ch;
  color:#3b526a;
  font-size:15px;
  line-height:1.5;
}
.po-card-v5-topline{
  display:inline-flex;
  margin-bottom:10px;
  font-size:12px;
  letter-spacing:.24em;
  text-transform:uppercase;
  font-weight:800;
}
.po-card-private{
  background:linear-gradient(135deg, rgba(0,121,193,.08), rgba(255,255,255,.86) 55%, rgba(255,255,255,.98));
}
.po-card-private .po-card-v5-topline{color:#0067b8;}
.po-card-public{
  background:linear-gradient(135deg, rgba(217,45,143,.08), rgba(255,255,255,.86) 55%, rgba(255,255,255,.98));
}
.po-card-public .po-card-v5-topline{color:#c12e83;}
.po-card-v5 .po-btn{
  align-self:flex-start;
}

/* harmonisation global pages */
body.premium-night,
body.bg{
  background:
    radial-gradient(circle at 10% 0%, rgba(0,121,193,.08), transparent 24%),
    radial-gradient(circle at 90% 0%, rgba(217,45,143,.08), transparent 20%),
    linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  color:#07162A;
}
body.premium-night::before,
body.bg::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    url('./assets/pope-tree-filigrane.png') center 48% / min(64vw, 820px) no-repeat;
  opacity:.05;
  pointer-events:none;
  z-index:0;
}
body.premium-night > *,
body.bg > *{
  position:relative;
  z-index:1;
}

.po-nav,
.topbar{
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(7,22,42,.08);
}
.po-page-wrap{
  width:min(100%, 1320px);
  margin:0 auto;
  padding:34px 22px 54px;
}
.po-page-hero{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 18px 42px rgba(7,22,42,.08);
}
.po-side-card,
.po-step,
.po-offer-card,
.po-contact-strip,
.po-section,
.auth-card,
.card,
.tile,
.panel,
.hero-card{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 16px 40px rgba(7,22,42,.06);
}
.po-overline,
.po-card-label{
  color:#006fc1;
}
.po-subpage-public .po-overline,
.po-subpage-public .po-card-label{
  color:#c22e83;
}
.po-btn-solid-public,
.btn.primary{
  background:linear-gradient(135deg, #b9227c, #ff4fa8);
  box-shadow:0 12px 26px rgba(217,45,143,.18);
}
.po-btn-solid,
.po-menu-cta,
.btn:not(.ghost):not(.secondary){
  background:linear-gradient(135deg, #0079C1, #03A0D7);
  color:white !important;
  box-shadow:0 12px 26px rgba(0,121,193,.18);
}
.po-btn-ghost,
.btn.ghost,
.btn.secondary{
  background:rgba(255,255,255,.72);
  color:#07162A;
  border:1px solid rgba(7,22,42,.10);
}

@media (max-width: 980px){
  .po-home-v5-main{padding:18px 14px 30px;}
  .po-intro-band{margin-bottom:16px;}
  .po-split-v5{
    grid-template-columns:1fr;
    gap:14px;
  }
  .po-split-v5::before{display:none;}
  .po-card-v5{
    min-height:190px;
    padding:22px 20px;
  }
  .po-card-v5 h2{font-size:clamp(22px, 6vw, 30px);}
  .po-tree-filigrane-v5 img{width:min(118vw, 880px); opacity:.07;}
  .po-intro-final-logo,
  .po-intro-mosaic-watermark img{
    width:min(86vw, 860px);
  }
  body.premium-night::before,
  body.bg::before{
    background-size:min(100vw, 680px);
    opacity:.04;
  }
}

@media (max-width: 640px){
  .po-intro-scene{height:250px;}
  .po-intro-final-logo{min-width:200px;}
  .po-card-v5 .po-btn{width:100%;}
  .po-card-v5 p{font-size:14px;}
}


/* ===== POPE Online V5.1 ===== */
.po-home-v5-1 .po-nav .po-brand strong,
.po-home-v5-1 .po-nav .po-brand small,
.po-home-v5-1 .po-nav .po-menu a:not(.po-menu-cta){
  color:#0b2440 !important;
}
.po-home-v5-1 .po-nav .po-menu a:not(.po-menu-cta){
  font-weight:800;
}
.po-home-v5-1 .po-nav .po-menu a:not(.po-menu-cta):hover{
  color:#006fc1 !important;
  background:rgba(0,121,193,.06);
}

.po-split-v5-1{
  margin-bottom:22px;
}
.po-card-v5-rich{
  padding:24px 28px 24px;
  min-height:280px;
}
.po-card-v5-rich .po-card-intro{
  margin:0 0 12px;
  color:#3c536a;
  font-size:15px;
  line-height:1.55;
}
.po-card-list{
  list-style:none;
  margin:0 0 18px;
  padding:0;
  display:grid;
  gap:10px;
}
.po-card-list li{
  position:relative;
  padding-left:18px;
  font-size:15px;
  color:#0d2744;
  line-height:1.45;
  font-weight:600;
}
.po-card-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:linear-gradient(135deg, #0079C1, #03A0D7);
  box-shadow:0 0 0 4px rgba(0,121,193,.10);
  transform:translateY(-50%);
}
.po-card-list-public li::before{
  background:linear-gradient(135deg, #c12882, #ff56ac);
  box-shadow:0 0 0 4px rgba(217,45,143,.10);
}

.po-footer-v5{
  position:relative;
  z-index:2;
  border-top:1px solid rgba(7,22,42,.08);
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(10px);
}
.po-footer-v5-inner{
  width:min(100%, 1440px);
  margin:0 auto;
  padding:16px 22px 22px;
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  color:#304760;
  font-size:14px;
}
.po-footer-v5-inner a{
  color:#0b2440;
  text-decoration:none;
  font-weight:700;
}
.po-footer-v5-inner a:hover{
  color:#006fc1;
}

.po-cookie-backdrop{
  position:fixed;
  inset:0;
  background:rgba(7,22,42,.26);
  backdrop-filter:blur(4px);
  z-index:80;
}
.po-cookie-modal{
  position:fixed;
  right:24px;
  bottom:24px;
  width:min(92vw, 420px);
  padding:22px 22px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(7,22,42,.10);
  box-shadow:0 24px 60px rgba(7,22,42,.20);
  z-index:81;
}
.po-cookie-tag{
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,121,193,.08);
  color:#006fc1;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.14em;
}
.po-cookie-modal h2{
  margin:0 0 10px;
  font-size:28px;
  line-height:1.05;
  letter-spacing:-.04em;
  color:#0b2440;
}
.po-cookie-modal p{
  margin:0 0 14px;
  color:#415b75;
  line-height:1.55;
  font-size:15px;
}
.po-cookie-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:10px;
}
.po-cookie-note{
  margin-top:12px !important;
  font-size:13px !important;
  color:#5d748c !important;
}
.po-cookie-open{
  overflow:hidden;
}

@media (max-width: 980px){
  .po-card-v5-rich{
    min-height:auto;
    padding:22px 20px;
  }
}
@media (max-width: 640px){
  .po-cookie-modal{
    left:14px;
    right:14px;
    bottom:14px;
    width:auto;
    padding:18px 16px 14px;
  }
  .po-cookie-actions .po-btn{
    width:100%;
  }
}


/* ===== POPE ONLINE V2.4 ===== */
.po-home-v5-2 .po-intro-panel{
  transition:
    opacity 1s cubic-bezier(.22,.61,.36,1),
    transform 1s cubic-bezier(.22,.61,.36,1),
    filter 1s cubic-bezier(.22,.61,.36,1);
}
.po-home-v5-2 .po-home-card-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.po-home-v5-2 .po-card-v5-rich{
  min-height:320px;
}
.po-home-v5-2 .po-btn-gift{
  border-color:rgba(217,45,143,.18);
  color:#a4206f;
}
.po-home-v5-2 .po-btn-gift:hover{
  background:rgba(217,45,143,.06);
}

.po-page-wrap-v24{
  width:min(100%, 1360px);
  padding-top:38px;
}
.po-page-hero-v24{
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
  align-items:stretch;
  gap:24px;
}
.po-side-card-accent{
  border-top:3px solid rgba(0,121,193,.32);
}
.po-side-card-public{
  border-top-color:rgba(217,45,143,.32);
}
.po-grid-cards{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
.po-surface-card{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 16px 40px rgba(7,22,42,.06);
  border-radius:22px;
  padding:20px;
}
.po-surface-card h3{
  margin:0 0 8px;
  font-size:20px;
  line-height:1.1;
  color:#0b2440;
}
.po-surface-card p{
  margin:0;
  color:#51687f;
  line-height:1.55;
}
.po-timeline-v24{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.po-step-num{
  display:inline-flex;
  width:38px;
  height:38px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  margin-bottom:10px;
  font-weight:900;
  color:#fff;
  background:linear-gradient(135deg,#0079C1,#03A0D7);
}
.po-subpage-public .po-step-num{
  background:linear-gradient(135deg,#b9227c,#ff4fa8);
}
.po-contact-strip-v24{
  margin-top:22px;
  border-radius:24px;
}

.app-v24{
  grid-template-columns:1.15fr .85fr;
}
.grid2-v24{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

body.po-public-v24 .panel,
body.po-public-v24 .card,
body.po-private-v24 .card,
body.po-private-v24 .glass-card,
body.po-private-v24 .wizard-summary,
body.po-private-v24 .summary-card{
  border-radius:22px;
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 16px 40px rgba(7,22,42,.06);
}

.onboarding-shell-v24{
  max-width:980px;
  margin:0 auto;
  padding:28px;
}

.stepper .step.is-active span,
.stepper .step.is-done span{
  background:linear-gradient(135deg,#0079C1,#03A0D7);
  color:#fff;
}
.wizard-step[hidden]{display:none !important;}

.po-nav .po-menu a, .topbar .nav a, .po-brand strong, .po-brand small, .brand .title, .brand .sub, .brand-title, .brand-sub{
  color:#0b2440 !important;
}
.po-nav .po-menu a:hover, .topbar .nav a:hover{
  color:#006fc1 !important;
}

@media (max-width: 1180px){
  .po-grid-cards{grid-template-columns:repeat(2,1fr);}
  .po-page-hero-v24{grid-template-columns:1fr;}
}
@media (max-width: 980px){
  .app-v24{grid-template-columns:1fr;}
  .grid2-v24{grid-template-columns:1fr;}
  .po-timeline-v24{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .po-grid-cards{grid-template-columns:1fr;}
  .po-home-v5-2 .po-home-card-actions .po-btn{width:100%;}
}


/* ===== POPE ONLINE V2.5 ===== */
.po-home-v5-2 .po-intro-panel{
  transition:
    opacity 1.35s cubic-bezier(.22,.61,.36,1),
    transform 1.35s cubic-bezier(.22,.61,.36,1),
    filter 1.35s cubic-bezier(.22,.61,.36,1);
}
.po-home-v5-2 .po-intro-panel.fade-in{
  animation: poPanelFadeIn 1.6s ease both;
}
@keyframes poPanelFadeIn{
  from{opacity:0; filter:blur(10px); transform:translateY(1.5%) scale(.996);}
  to{opacity:1; filter:blur(0); transform:translateY(0) scale(1);}
}
.po-home-v5-2 .po-intro-final-logo{
  transition:opacity 1.45s ease, transform 1.45s ease;
}
.po-home-v5-2 .po-btn-gift{
  color:#0f4f8f !important;
  border:1px solid rgba(0,121,193,.16);
  background:
    linear-gradient(135deg, rgba(0,121,193,.10), rgba(3,160,215,.12)),
    rgba(255,255,255,.86);
  box-shadow:0 10px 24px rgba(0,121,193,.08);
}
.po-home-v5-2 .po-btn-gift:hover{
  background:
    linear-gradient(135deg, rgba(0,121,193,.16), rgba(3,160,215,.18)),
    rgba(255,255,255,.94);
  color:#0b3d71 !important;
}
.po-home-v5-2 .po-btn-gift,
.po-private-v24 .po-btn-gift,
.po-public-v24 .po-btn-gift{
  font-weight:900;
}
.po-home-v5-2 .po-btn-gift::before,
.po-private-v24 .po-btn-gift::before,
.po-public-v24 .po-btn-gift::before{
  content:"";
  display:inline-block;
  width:10px;
  height:10px;
  margin-right:8px;
  border-radius:999px;
  background:linear-gradient(135deg,#0079C1,#03A0D7);
  box-shadow:0 0 0 4px rgba(0,121,193,.10);
  vertical-align:middle;
}

.po-page-wrap-v24{
  width:min(100%, 1420px);
  padding:42px 22px 60px;
}
.po-page-hero-v24{
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(250,252,255,.92)),
    rgba(255,255,255,.92);
  padding:28px;
  border-radius:30px;
  gap:26px;
}
.po-page-copy-v25{
  max-width:760px;
}
.po-page-copy-v25 h1{
  font-size:clamp(36px, 3.1vw, 58px);
  line-height:1.02;
  letter-spacing:-.05em;
  color:#0b2440;
  margin-bottom:16px;
}
.po-page-copy-v25 p{
  max-width:62ch;
  font-size:17px;
  line-height:1.72;
  color:#425c76;
}
.po-side-card-v25{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,251,255,.95));
  padding:26px;
}
.po-side-card-v25 h2{
  font-size:30px;
  line-height:1.08;
  letter-spacing:-.04em;
  color:#0b2440;
}
.po-side-card-v25 p,
.po-side-card-v25 li{
  color:#48627c;
  line-height:1.62;
  font-size:15px;
}
.po-grid-cards{
  gap:18px;
}
.po-surface-card{
  padding:22px;
  min-height:188px;
}
.po-surface-card h3{
  font-size:22px;
  line-height:1.1;
  margin-bottom:10px;
}
.po-surface-card p{
  font-size:15.5px;
  line-height:1.62;
}
.po-contact-strip-v24{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:22px 24px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.97), rgba(247,251,255,.92));
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 16px 40px rgba(7,22,42,.06);
}
.po-contact-strip-v24 strong{
  display:block;
  margin-bottom:4px;
  color:#0b2440;
  font-size:22px;
}
.po-contact-strip-v24 span{
  color:#526b83;
  line-height:1.6;
}

body.po-private-v24 .po-surface-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,251,255,.92));
}
body.po-public-v24 .po-surface-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(252,248,251,.93));
}
body.po-public-v24 .po-contact-strip-v24{
  background:
    linear-gradient(135deg, rgba(255,255,255,.97), rgba(252,248,251,.93));
}
body.po-private-v24::before,
body.po-public-v24::before,
body.po-v5-harmony::before{
  opacity:.035 !important;
  background-size:min(54vw, 700px) !important;
  background-position:center 72% !important;
}

.auth-card{
  position:relative;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 18px 44px rgba(7,22,42,.08);
}
.auth-card h2{
  color:#0b2440;
}
.auth-card .muted,
.auth-card .fineprint{
  color:#546d86;
}
.auth-card .row.gap.wrap .btn{
  min-width:220px;
}

.panel ul{
  margin:0;
  padding-left:18px;
}
.panel li{
  color:#51687f;
  line-height:1.6;
  margin-bottom:6px;
}

@media (max-width: 1180px){
  .po-page-hero-v24{
    grid-template-columns:1fr;
  }
  .po-page-copy-v25,
  .po-side-card-v25{
    max-width:none;
  }
}
@media (max-width: 980px){
  .po-page-wrap-v24{
    padding:28px 14px 42px;
  }
  .po-page-hero-v24{
    padding:20px;
    border-radius:24px;
  }
  .po-contact-strip-v24{
    flex-direction:column;
    align-items:flex-start;
  }
  .po-contact-strip-v24 .po-page-actions{
    width:100%;
  }
  .po-contact-strip-v24 .po-page-actions .po-btn{
    width:100%;
  }
}


/* ===== POPE Online V2.6 final adjustments ===== */
.po-home-v5-2 .po-intro-panel{
  transition:
    opacity 1.3s cubic-bezier(.22,.61,.36,1),
    transform 1.3s cubic-bezier(.22,.61,.36,1),
    filter 1.3s cubic-bezier(.22,.61,.36,1);
}
.po-home-v5-2 .po-intro-panel.fade-in{
  animation: poMosaicFadeIn 1.8s ease both;
}
@keyframes poMosaicFadeIn{
  from{opacity:0; filter:blur(8px); transform:scale(.998);}
  to{opacity:1; filter:blur(0); transform:scale(1);}
}
.po-home-v5-2 .po-intro-final-bg{
  background:
    radial-gradient(circle at 20% 45%, rgba(7,57,104,.22), transparent 34%),
    radial-gradient(circle at 78% 52%, rgba(3,160,215,.08), transparent 28%),
    linear-gradient(90deg, #03162a 0%, #06294a 52%, #021120 100%);
}
.po-home-v5-2 .po-intro-final-logo{
  transition:opacity 1.5s ease, transform 1.5s ease;
}

/* Premium cookie popup */
.po-cookie-backdrop{
  position:fixed;
  inset:0;
  background:rgba(7,22,42,.26);
  backdrop-filter:blur(4px);
  z-index:80;
}
.po-cookie-modal{
  position:fixed;
  right:24px;
  bottom:24px;
  width:min(92vw, 420px);
  padding:22px 22px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(7,22,42,.10);
  box-shadow:0 24px 60px rgba(7,22,42,.20);
  z-index:81;
}
.po-cookie-tag{
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,121,193,.08);
  color:#006fc1;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.14em;
}
.po-cookie-modal h2{margin:0 0 10px;font-size:28px;line-height:1.05;letter-spacing:-.04em;color:#0b2440;}
.po-cookie-modal p{margin:0 0 14px;color:#16304c !important;line-height:1.55;font-size:15px;}
.po-cookie-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;}
.po-cookie-note{margin-top:12px !important;font-size:13px !important;color:#5d748c !important;}
.po-cookie-open{overflow:hidden;}

/* Gift icon sky blue + navy ribbon */
.po-btn-gift{
  color:#0b2440 !important;
  border:1px solid rgba(0,121,193,.14);
  background:
    linear-gradient(135deg, rgba(166,230,255,.24), rgba(3,160,215,.14)),
    rgba(255,255,255,.92);
  box-shadow:0 10px 24px rgba(0,121,193,.08);
}
.gift-icon{
  display:inline-block;
  width:16px;
  height:16px;
  margin-right:8px;
  border-radius:3px;
  background:
    linear-gradient(180deg, rgba(11,36,64,.98), rgba(11,36,64,.98)) center/2px 100% no-repeat,
    linear-gradient(90deg, rgba(11,36,64,.98), rgba(11,36,64,.98)) center/100% 2px no-repeat,
    linear-gradient(135deg, #b8ecff, #6fd6ff);
  position:relative;
  top:2px;
  box-shadow:0 0 0 1px rgba(11,36,64,.10), 0 3px 8px rgba(0,121,193,.12);
}
.gift-icon::before,
.gift-icon::after{
  content:"";
  position:absolute;
  top:-5px;
  width:8px;
  height:8px;
  border:2px solid #0b2440;
  border-bottom:none;
  background:transparent;
}
.gift-icon::before{left:1px;border-right:none;border-radius:8px 0 0 0;}
.gift-icon::after{right:1px;border-left:none;border-radius:0 8px 0 0;}

/* Full-width flatter layout for private/public pages */
.po-page-wrap-v26{
  width:min(100%, 1580px);
  padding:34px 24px 60px;
}
.po-page-hero-v26{
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:26px;
  width:100%;
}
.po-page-hero-flat{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
}
.po-page-copy-v26{
  min-width:0;
  max-width:100%;
}
.po-page-copy-v26 h1{
  font-size:clamp(30px, 2.2vw, 42px) !important;
  line-height:1.06;
  letter-spacing:-.04em;
  max-width:15ch;
  color:#0b2440 !important;
}
.po-page-copy-v26 p{
  font-size:16px;
  line-height:1.68;
  max-width:68ch;
  color:#16304c !important;
}
.po-side-card-flat{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
}
.po-side-card-v26 h2{
  font-size:clamp(24px,1.6vw,32px);
  line-height:1.12;
  color:#0b2440 !important;
}
.po-side-card-v26 p,
.po-side-card-v26 li,
.po-surface-card p,
.po-contact-strip-v24 span,
.po-section-head p,
.muted,
.fineprint,
.po-page-copy p,
.po-card-intro{
  color:#16304c !important;
}
.po-overline,
.po-card-label,
.po-brand strong,
.po-brand small,
.brand-title,
.brand-sub,
.po-nav .po-menu a:not(.po-menu-cta),
.topbar .nav a:not(.btn){
  color:#0b2440 !important;
}
.po-grid-cards{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.po-surface-card{
  min-width:0;
  overflow-wrap:anywhere;
}
.po-surface-card h3,
.po-contact-strip-v24 strong,
.po-section-head h2{
  color:#0b2440 !important;
}
.po-contact-strip-v24{
  width:100%;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
body.premium-night::before,
body.bg::before{
  opacity:.035 !important;
  background-size:min(54vw, 700px) !important;
  background-position:center 72% !important;
}

@media (max-width: 1280px){
  .po-page-hero-v26{
    grid-template-columns:1fr;
  }
  .po-page-copy-v26 h1{max-width:none;}
}
@media (max-width: 980px){
  .po-page-wrap-v26{padding:24px 14px 40px;}
  .po-grid-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .po-contact-strip-v24{flex-direction:column;align-items:flex-start;}
}
@media (max-width: 640px){
  .po-grid-cards{grid-template-columns:1fr;}
  .po-cookie-modal{left:14px;right:14px;bottom:14px;width:auto;padding:18px 16px 14px;}
  .po-cookie-actions .po-btn{width:100%;}
}


/* ===== POPE ONLINE V2.6.1 ===== */

/* Gift icon image */
.gift-icon-img{
  width:18px;
  height:18px;
  margin-right:8px;
  vertical-align:-3px;
  border-radius:4px;
  box-shadow:0 2px 6px rgba(0,121,193,.10);
}
.gift-icon,
.gift-icon::before,
.gift-icon::after{display:none !important;}

/* Restore colored toplines private/public like V2.5 */
.po-card-private .po-card-v5-topline,
.po-subpage-private .po-overline,
.po-subpage-private .po-card-label{
  color:#006fc1 !important;
}
.po-card-public .po-card-v5-topline,
.po-subpage-public .po-overline,
.po-subpage-public .po-card-label{
  color:#c22e83 !important;
}

/* Make public headline keep opening words on same line when possible */
.po-subpage-public .po-page-copy-v26 h1{
  max-width:18ch;
}

/* Homepage animation visibility */
.po-intro-shell{
  background:#081726 !important;
}
.po-intro-scene{
  min-height:clamp(250px, 32vw, 390px);
}
.po-intro-panel{
  opacity:1;
}
.po-intro-panel.hide{
  opacity:0 !important;
  transform:translateY(-2.5%) scale(.992) !important;
  filter:blur(6px) !important;
}
.po-intro-panel.fade-in{
  animation: poMosaicFadeInV261 1.5s ease both;
}
@keyframes poMosaicFadeInV261{
  from{opacity:0; filter:blur(10px); transform:scale(1.012);}
  to{opacity:1; filter:blur(0); transform:scale(1);}
}
.po-intro-final-logo{
  opacity:0;
  transform:translateY(18px) scale(.985);
}
.po-intro-final-logo.show{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
}

/* Better responsive layout */
.po-home-v5-main{
  width:min(100%, 1480px);
  padding:24px 20px 40px;
}
.po-split-v5{
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.po-card-v5{
  min-width:0;
}
.po-page-wrap-v26{
  width:min(100%, 1600px);
  padding:34px 20px 56px;
}
.po-page-hero-v26{
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:24px;
}
.po-page-copy-v26 h1{
  font-size:clamp(28px, 2vw, 40px) !important;
  max-width:16ch;
}
.po-page-copy-v26 p,
.po-side-card-v26 p,
.po-side-card-v26 li,
.po-surface-card p,
.po-contact-strip-v24 span,
.po-cookie-modal p,
.muted,
.fineprint{
  color:#16304c !important;
}
.po-nav .po-menu a:not(.po-menu-cta),
.topbar .nav a:not(.btn),
.po-brand strong,
.po-brand small,
.brand-title,
.brand-sub,
.title,
.sub{
  color:#0b2440 !important;
}

@media (max-width: 1200px){
  .po-page-hero-v26{
    grid-template-columns:1fr;
  }
  .po-page-copy-v26 h1{
    max-width:none;
  }
}
@media (max-width: 980px){
  .po-home-v5-main{
    padding:18px 14px 28px;
  }
  .po-split-v5{
    grid-template-columns:1fr;
    gap:14px;
  }
  .po-page-wrap-v26{
    padding:24px 14px 40px;
  }
  .po-grid-cards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .po-contact-strip-v24{
    flex-direction:column;
    align-items:flex-start;
  }
  .po-contact-strip-v24 .po-page-actions{
    width:100%;
  }
  .po-contact-strip-v24 .po-page-actions .po-btn{
    width:100%;
  }
}
@media (max-width: 640px){
  .po-intro-scene{
    min-height:230px;
  }
  .po-grid-cards{
    grid-template-columns:1fr;
  }
  .po-cookie-modal{
    left:12px;
    right:12px;
    bottom:12px;
    width:auto;
  }
  .po-cookie-actions .po-btn{
    width:100%;
  }
}


/* V2.6.2 slogan animation */
.po-intro-slogan{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  color:white;
  font-weight:600;
  letter-spacing:.25em;
  font-size:clamp(18px,2vw,34px);
  opacity:0;
  transition:opacity 2.2s ease;
  z-index:5;
  text-align:center;
}
.po-intro-slogan.show{
  opacity:1;
}

/* remove card background edges */
.po-page-hero-flat,
.po-page-wrap,
.po-card-v5,
.po-surface-card{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
}

/* gift icon refined */
.gift-icon-img{
  width:16px;
  height:16px;
  margin-right:8px;
  vertical-align:-2px;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.12));
}

/* unify html background */
body{
  background:linear-gradient(180deg,#f7f9fc,#ffffff);
}


/* V2.6.3 slogan animation */
.po-intro-slogan-line{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
color:white;
font-size:clamp(28px,3vw,54px);
letter-spacing:.25em;
opacity:0;
transition:opacity 3.5s ease;
white-space:nowrap;
font-weight:500;
}

.po-intro-slogan-line.show{
opacity:1;
}

/* gift icon outline */
.gift-outline{
width:18px;
height:18px;
margin-right:8px;
vertical-align:-2px;
}

/* restore cards */
.po-page-hero-flat{
background:var(--surface);
box-shadow:var(--shadow-lg);
border-radius:28px;
}


/* V2.7 restore rounded cards */
.po-card-v5,
.po-surface-card,
.po-page-hero-flat{
background:rgba(255,255,255,0.95) !important;
border-radius:28px !important;
box-shadow:0 20px 60px rgba(10,35,70,0.12) !important;
border:1px solid rgba(0,0,0,0.04) !important;
}

/* gift icon premium */
.gift-premium{
width:22px;
height:22px;
margin-right:8px;
vertical-align:-4px;
}

/* slogan typography */
.po-intro-slogan-line{
text-transform:none;
font-weight:400;
letter-spacing:.12em;
}

/* fix unwanted code visibility */
.po-intro-final-logo{
font-size:0 !important;
}

/* homepage cards layout restore */
.po-split-v5{
grid-template-columns:1fr 1fr;
gap:24px;
}

@media (max-width:980px){
.po-split-v5{
grid-template-columns:1fr;
}
}


/* V2.7.1 remove rectangular sections */
.no-rect-section{
background:transparent !important;
border:none !important;
box-shadow:none !important;
border-radius:0 !important;
}


/* V2.7.2 slow slogan */
.slow-slogan{
animation-duration:14s !important;
transition:opacity 6s ease !important;
}

/* remove main rounded container */
.remove-main-card{
background:transparent !important;
box-shadow:none !important;
border:none !important;
}

/* watermark tree full screen */
.po-watermark-tree,
.tree-watermark{
position:fixed !important;
top:0;
left:0;
width:100vw;
height:100vh;
opacity:0.06;
object-fit:contain;
z-index:0;
pointer-events:none;
}



/* HERO TEXT ALIGNMENT FIX */
.po-hero-adjust{
max-width:1400px;
margin:auto;
padding:120px 40px;
}

.po-hero-adjust .po-page-copy{
max-width:720px;
}

.po-hero-adjust .po-side-card{
max-width:420px;
}

/* FULLSCREEN TREE WATERMARK */

.po-tree-watermark{
position:fixed;
top:50%;
left:50%;
transform:translate(-50%,-50%);
width:160vw;
height:auto;
opacity:0.04;
pointer-events:none;
z-index:0;
}

@media(max-width:900px){
.po-tree-watermark{
width:220vw;
}
}



/* V11 slogan responsive blue banner */

.po-intro-slogan-line{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
width:85%;
max-width:1100px;
text-align:center;
z-index:9999;
}

.po-intro-slogan-line .slogan{
opacity:0;
color:white;
font-size:clamp(26px,2.8vw,44px);
font-weight:500;
line-height:1.25;
transition:opacity 1.8s ease;
}

.po-intro-slogan-line.show1 .slogan-1{
opacity:1;
}

.po-intro-slogan-line.show2 .slogan-2{
opacity:1;
}



/* V12 slogans premium large */

.po-intro-slogan-line{
max-width:1400px;
width:92%;
}

.po-intro-slogan-line .slogan{
font-size:clamp(32px,3.8vw,64px);
font-weight:700;
letter-spacing:0.5px;
line-height:1.15;
}



/* V3 contact actions */
.po-menu-extended {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.po-menu-contact {
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  font-weight:800;
  border:1px solid rgba(7,22,42,.10);
  background:rgba(255,255,255,.78);
  color:#0b2440 !important;
  box-shadow:0 8px 18px rgba(7,22,42,.06);
}
.po-menu-contact:hover {
  background:rgba(255,255,255,.96);
}
.po-contact-choice {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.po-contact-strip .po-page-actions,
.po-page-actions .po-contact-choice {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.po-tree-filigrane-v5 img,
body.premium-night::before,
body.bg::before {
  background-size:min(84vw, 1200px) !important;
}
.po-tree-filigrane-v5 img {
  width:min(98vw, 1500px);
  opacity:.10;
}
.po-footer-v5-inner a[href^="mailto:"] {
  font-weight:800;
}

@media (max-width: 980px) {
  .po-menu-extended {
    gap:8px;
  }
  .po-menu-contact,
  .po-menu-cta {
    width:100%;
  }
  .po-contact-choice {
    width:100%;
  }
  .po-contact-choice .po-btn {
    width:100%;
  }
}

/* Header color tabs */
.po-link-private{
color:#0066ff !important;
border-bottom:3px solid #0066ff;
font-weight:700;
}
.po-link-public{
color:#e4007f !important;
border-bottom:3px solid #e4007f;
font-weight:700;
}

/* Cookie modal premium */
.po-cookie-modal{
position:fixed;
bottom:20px;
right:20px;
background:white;
padding:20px;
border-radius:12px;
box-shadow:0 10px 40px rgba(0,0,0,0.2);
z-index:9999;
}
.po-cookie-backdrop{
position:fixed;
inset:0;
background:rgba(0,0,0,0.2);
z-index:9998;
}


/* frontend4 cookie fix */
.cookie-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.48);
  backdrop-filter:blur(8px);
  z-index:99998;
}
.cookie-modal{
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:min(92vw, 560px);
  background:#ffffff;
  border-radius:18px;
  padding:24px;
  box-shadow:0 30px 80px rgba(0,0,0,.28);
  z-index:99999;
  color:#0b2440;
}
.cookie-modal[hidden], .cookie-overlay[hidden]{
  display:none !important;
}
.cookie-header{
  margin-bottom:16px;
}
.cookie-badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,102,255,.08);
  color:#0066ff;
  font-weight:800;
  font-size:12px;
  margin-bottom:10px;
}
.cookie-header h2{
  margin:0;
  font-size:28px;
  line-height:1.08;
  color:#0b2440;
}
.cookie-content p{
  margin:0 0 14px;
  color:#334e68;
  line-height:1.55;
  font-size:15px;
}
.cookie-buttons{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  flex-wrap:wrap;
  margin-top:8px;
}
.cookie-btn{
  appearance:none;
  border:none;
  cursor:pointer;
  border-radius:10px;
  padding:12px 16px;
  font-weight:700;
  font-size:14px;
}
.cookie-btn.primary{
  background:#0066ff;
  color:#fff;
}
.cookie-btn.secondary{
  background:#f2f4f7;
  color:#0b2440;
}
@media (max-width:640px){
  .cookie-buttons{
    flex-direction:column;
  }
  .cookie-btn{
    width:100%;
  }
  .cookie-modal{
    width:min(94vw, 94vw);
    padding:20px 16px;
  }
  .cookie-header h2{
    font-size:24px;
  }
}


.legal-container{
max-width:900px;
margin:60px auto;
padding:40px;
background:white;
border-radius:12px;
box-shadow:0 10px 40px rgba(0,0,0,0.08);
font-size:16px;
line-height:1.7;
color:#0b2440;
}

.legal-container h1{
font-size:32px;
margin-bottom:20px;
}

.legal-container h2{
margin-top:30px;
color:#0066ff;
}



.legal-page{
background:#f8fbff;
}

.legal-watermark{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:url('assets/logo-arbre.png') center no-repeat;
background-size:60%;
opacity:0.05;
z-index:-1;
}

.legal-header{
padding:20px 40px;
}

.legal-back{
color:#0066ff;
text-decoration:none;
font-weight:600;
}



/* ===== V5.3 debug & harmonisation ===== */
.po-menu-cta{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-height:46px;
  padding:12px 18px;
  line-height:1.1;
  white-space:nowrap;
}

.po-intro-final-logo-wrap{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:18px;
  z-index:4;
  pointer-events:none;
}

#finalLogo{
  display:block;
  width:min(70vw, 720px);
  max-width:100%;
  height:auto;
}

.po-intro-slogan-line{
  opacity:1 !important;
  position:relative !important;
  top:auto !important;
  left:auto !important;
  transform:none !important;
  width:min(92vw, 1200px) !important;
  max-width:1200px !important;
  text-align:center;
  z-index:5;
}

.po-intro-slogan-line .slogan{
  opacity:1 !important;
  margin:0;
  color:#ffffff;
  text-shadow:0 10px 30px rgba(2, 16, 34, .34);
}

.po-home-v5-2 .po-home-card-actions{
  align-items:stretch;
}

.po-home-v5-2 .po-home-card-actions .po-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.po-legal-page-shell{
  position:relative;
  min-height:100vh;
  overflow-x:hidden;
}

.po-legal-watermark{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
  z-index:0;
}

.po-legal-watermark img{
  width:min(88vw, 1000px);
  opacity:.06;
  filter:grayscale(100%);
}

.po-legal-wrap-unified{
  position:relative;
  z-index:1;
  width:min(100%, 1280px);
  margin:0 auto;
  padding:38px 22px 64px;
}

.po-legal-hero-unified{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:34px 32px;
  background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(244,249,255,.93));
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 18px 48px rgba(7,22,42,.08);
}

.po-legal-hero-unified h1,
.po-legal-card-unified h2{
  color:#0066ff;
}

.po-legal-hero-unified h1{
  margin:8px 0 12px;
  font-size:clamp(32px, 4vw, 54px);
  line-height:1.05;
}

.po-legal-hero-unified p{
  margin:0;
  max-width:920px;
  color:#4a6078;
  line-height:1.65;
}

.po-legal-grid-unified{
  position:relative;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
  margin-top:22px;
}

.po-legal-card-unified{
  position:relative;
  overflow:hidden;
  min-height:100%;
  padding:26px 24px;
  border-radius:24px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(10px);
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 14px 36px rgba(7,22,42,.06);
}

.po-legal-card-unified::before{
  content:"";
  position:absolute;
  inset:auto auto 0 0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg, rgba(0,102,255,.9), rgba(3,160,215,.55));
}

.po-legal-card-unified h2{
  margin:0 0 12px;
  font-size:22px;
  line-height:1.15;
}

.po-legal-card-unified p,
.po-legal-card-unified li{
  color:#29425b;
  line-height:1.68;
}

.po-legal-card-unified ul{
  margin:0;
  padding-left:18px;
}

.po-legal-card-full{
  grid-column:1 / -1;
}

@media (max-width: 980px){
  .po-split-v5,
  .po-split-v5-2{
    grid-template-columns:1fr 1fr !important;
    gap:12px;
    align-items:stretch;
  }

  .po-split-v5 .po-card-public,
  .po-split-v5-2 .po-card-public{
    order:1;
  }

  .po-split-v5 .po-card-private,
  .po-split-v5-2 .po-card-private{
    order:2;
  }

  .po-card-v5-rich{
    min-height:auto;
  }

  .po-card-v5{
    padding:20px 16px;
  }

  .po-card-v5-topline{
    font-size:20px;
  }

  .po-card-intro,
  .po-card-list li{
    font-size:14px;
  }

  .po-menu-cta{
    width:100%;
  }

  .po-legal-grid-unified{
    grid-template-columns:1fr;
  }

  .po-legal-card-full{
    grid-column:auto;
  }
}

@media (max-width: 640px){
  #finalLogo{
    width:min(82vw, 440px);
  }

  .po-intro-slogan-line .slogan{
    font-size:clamp(24px, 7vw, 34px) !important;
    line-height:1.18;
  }

  .po-split-v5,
  .po-split-v5-2{
    grid-template-columns:1fr 1fr !important;
    gap:10px;
  }

  .po-home-v5-2 .po-home-card-actions .po-btn{
    width:100%;
    min-height:44px;
    padding-inline:12px;
  }

  .po-card-v5{
    padding:18px 14px;
  }

  .po-card-v5-topline{
    font-size:18px;
  }

  .po-card-intro,
  .po-card-list li{
    font-size:13px;
  }

  .po-legal-wrap-unified{
    padding:20px 14px 48px;
  }

  .po-legal-hero-unified,
  .po-legal-card-unified{
    border-radius:22px;
    padding:22px 18px;
  }
}

/* === V5.4 mobile corrections === */
@media (max-width: 980px){
  .po-menu-extended{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:12px;
    width:100%;
    align-items:stretch;
  }

  .po-menu-extended .po-link-public{
    grid-column:1;
    grid-row:1;
  }

  .po-menu-extended .po-link-private{
    grid-column:2;
    grid-row:1;
  }

  .po-menu-extended .po-menu-contact-mail{
    grid-column:1 / -1;
    grid-row:2;
  }

  .po-menu-extended .po-menu-contact-phone{
    grid-column:1 / -1;
    grid-row:3;
  }

  .po-menu-extended .po-menu-cta{
    grid-column:1 / -1;
    grid-row:4;
    width:100%;
    justify-content:center !important;
    text-align:center !important;
    display:flex !important;
    min-height:56px;
    padding-left:20px;
    padding-right:20px;
  }

  .po-menu-extended > a{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .po-intro-shell{
    border-radius:28px;
  }

  .po-intro-scene{
    height:clamp(290px, 54vw, 360px) !important;
    min-height:290px !important;
  }

  .po-intro-final-logo-wrap{
    padding:18px 20px;
  }

  .po-intro-slogan-line{
    width:100% !important;
    max-width:none !important;
    padding:0 20px !important;
  }

  .po-intro-slogan-line .slogan{
    font-size:clamp(24px, 5vw, 40px) !important;
    line-height:1.16 !important;
    letter-spacing:0 !important;
    margin:0;
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
  }

  .po-split-v5 .po-card-private,
  .po-split-v5-2 .po-card-private{
    order:1 !important;
  }

  .po-split-v5 .po-card-public,
  .po-split-v5-2 .po-card-public{
    order:2 !important;
  }
}

@media (max-width: 640px){
  .po-menu-extended{
    gap:10px;
  }

  .po-menu-extended .po-link-public,
  .po-menu-extended .po-link-private{
    min-height:48px;
    padding:10px 12px;
  }

  .po-intro-scene{
    height:320px !important;
    min-height:320px !important;
  }

  .po-intro-final-logo-wrap{
    padding:20px 16px 18px;
  }

  .po-intro-slogan-line{
    padding:0 14px !important;
    top:58% !important;
  }

  .po-intro-slogan-line .slogan{
    font-size:clamp(20px, 7vw, 32px) !important;
    line-height:1.14 !important;
  }
}


/* ===== Responsive cleanup V-clean ===== */

/* slogan visibility */
.po-intro-slogan-line{
  z-index:8 !important;
  text-align:center;
}
.po-intro-slogan-line.is-visible{
  opacity:1 !important;
}
.po-intro-slogan-line.is-visible .slogan{
  opacity:1 !important;
}
.po-intro-slogan-line .slogan{
  margin:0;
  color:#ffffff;
  text-shadow:0 8px 24px rgba(0,0,0,.28);
}

/* homepage mobile: keep private left / public right */
@media (max-width: 980px){
  .po-split-v5,
  .po-split-v5-2{
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }
  .po-split-v5 .po-card-private,
  .po-split-v5-2 .po-card-private{
    order:1 !important;
  }
  .po-split-v5 .po-card-public,
  .po-split-v5-2 .po-card-public{
    order:2 !important;
  }

  .po-menu-extended .po-link-private{
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .po-menu-extended .po-link-public{
    grid-column:2 !important;
    grid-row:1 !important;
  }
}

/* animation: restore rectangular aspect on mobile */
@media (max-width: 980px){
  .po-intro-band{
    margin:10px auto 18px;
  }
  .po-intro-shell{
    border-radius:26px !important;
  }
  .po-intro-scene{
    height:clamp(180px, 34vw, 250px) !important;
    min-height:180px !important;
  }
  .po-intro-final-logo-wrap{
    padding:14px 18px !important;
  }
  #finalLogo{
    width:min(72vw, 430px) !important;
    min-width:180px !important;
    max-width:430px !important;
  }
  .po-intro-slogan-line{
    top:74% !important;
    left:50% !important;
    transform:translate(-50%, -50%) !important;
    width:90% !important;
    max-width:900px !important;
    padding:0 8px !important;
  }
  .po-intro-slogan-line .slogan{
    font-size:clamp(14px, 3.6vw, 24px) !important;
    line-height:1.25 !important;
    letter-spacing:.02em !important;
    white-space:normal !important;
  }
}
@media (max-width: 640px){
  .po-intro-scene{
    height:210px !important;
    min-height:210px !important;
  }
  #finalLogo{
    width:min(74vw, 340px) !important;
    min-width:160px !important;
  }
  .po-intro-slogan-line{
    top:76% !important;
    width:92% !important;
    padding:0 6px !important;
  }
  .po-intro-slogan-line .slogan{
    font-size:clamp(13px, 4vw, 18px) !important;
  }
}

/* subpages: real burger menu, no floating menu block on content */
.po-burger{
  display:none;
  width:48px;
  height:48px;
  border:none;
  background:transparent;
  border-radius:14px;
  padding:0;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
  box-shadow:none;
}
.po-burger span{
  display:block;
  width:28px;
  height:3px;
  border-radius:999px;
  background:#0b2440;
  transition:transform .22s ease, opacity .22s ease, background .22s ease;
}
.po-burger:hover span{
  background:#0079C1;
}
.po-burger.is-open span:nth-child(1){
  transform:translateY(9px) rotate(45deg);
}
.po-burger.is-open span:nth-child(2){
  opacity:0;
}
.po-burger.is-open span:nth-child(3){
  transform:translateY(-9px) rotate(-45deg);
}

@media (max-width: 980px){
  .po-subpage .po-nav{
    position:sticky;
    top:0;
    align-items:center !important;
  }
  .po-subpage .po-burger{
    display:inline-flex;
    margin-left:auto;
    z-index:41;
  }
  .po-subpage .po-menu-extended{
    display:none !important;
  }
  .po-subpage .po-menu-extended.open{
    display:flex !important;
    position:absolute;
    top:calc(100% + 8px);
    left:14px;
    right:14px;
    flex-direction:column;
    gap:10px;
    padding:14px;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(7,22,42,.08);
    border-radius:22px;
    box-shadow:0 18px 48px rgba(7,22,42,.16);
    z-index:40;
  }
  .po-subpage .po-menu-extended.open > a{
    width:100%;
    justify-content:center;
    text-align:center;
    color:#0b2440 !important;
    background:#ffffff;
    border:1px solid rgba(7,22,42,.08);
    min-height:48px;
  }
  .po-subpage .po-menu-extended.open .po-menu-cta{
    background:linear-gradient(135deg, #0079C1, #03A0D7);
    color:#fff !important;
    border:none !important;
  }
  .po-subpage .po-page-wrap-v24,
  .po-subpage .po-page-wrap-v26{
    padding-top:24px !important;
  }
}


/* ===== V6 responsive, auth and about page ===== */
.topbar .container,
.topbar .container.row.between{
  width:100%;
}
.topbar .container.row.between{
  align-items:center;
  gap:14px;
}
.topbar .row.gap.wrap{
  flex-wrap:wrap;
  justify-content:flex-end;
}
.app{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px, 420px);
  gap:18px;
  padding:22px 0 42px;
}
.grid2{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}
input, select, textarea{
  width:100%;
  max-width:100%;
}
.auth-card .input,
.auth-card input,
.auth-card textarea{
  width:100%;
}
.auth-card .btn{
  justify-content:center;
}
.password-wrap{
  position:relative;
}
.password-wrap .input{
  padding-right:56px;
}
.password-toggle{
  position:absolute;
  top:50%;
  right:10px;
  transform:translateY(-50%);
  border:none;
  background:transparent;
  width:38px;
  height:38px;
  border-radius:12px;
  cursor:pointer;
  font-size:18px;
  color:#35506B;
}
.password-toggle:hover{
  background:rgba(7,22,42,.05);
}
.auth-note-premium{
  margin:0 0 18px;
  padding:14px 16px;
  border-radius:18px;
  background:linear-gradient(135deg, rgba(0,121,193,.10), rgba(3,160,215,.08));
  border:1px solid rgba(0,121,193,.14);
  color:#29425b;
  line-height:1.6;
}
.auth-note-premium strong{
  color:#0b2440;
}
.about-shell{
  max-width:1200px;
  margin:0 auto;
  padding:28px 18px 48px;
}
.about-hero{
  position:relative;
  overflow:hidden;
  padding:30px;
  border-radius:28px;
  background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(244,249,255,.92));
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 18px 48px rgba(7,22,42,.08);
}
.about-hero-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:18px;
  align-items:stretch;
}
.about-card{
  padding:24px;
  border-radius:24px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(7,22,42,.08);
  box-shadow:0 12px 30px rgba(7,22,42,.06);
}
.about-list{
  margin:14px 0 0;
  padding-left:20px;
}
.about-list li{
  margin-bottom:8px;
  color:#35506B;
  line-height:1.6;
}
.about-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}
.about-highlight{
  color:#0b2440;
  font-weight:900;
}
@media (max-width: 1180px){
  .app{
    grid-template-columns:1fr;
  }
}
@media (max-width: 980px){
  .topbar{
    position:sticky;
    top:0;
    z-index:60;
  }
  .topbar .container.row.between{
    flex-direction:column;
    align-items:stretch;
  }
  .topbar .brand{
    width:100%;
  }
  .topbar .row.gap.wrap,
  .topbar .nav{
    width:100%;
    justify-content:stretch;
  }
  .topbar .row.gap.wrap > *,
  .topbar .nav > *{
    flex:1 1 100%;
  }
  .topbar .row.gap.wrap .btn,
  .topbar .nav .btn,
  .topbar .nav a{
    width:100%;
  }
  .auth-wrap{
    padding:18px 14px 34px;
  }
  .auth-card{
    padding:18px;
    border-radius:22px;
  }
  .auth-card .row.gap.wrap .btn{
    min-width:0;
    width:100%;
  }
  .grid2{
    grid-template-columns:1fr;
  }
  .about-hero-grid,
  .about-grid{
    grid-template-columns:1fr;
  }
  .about-hero,
  .about-card{
    padding:20px;
    border-radius:22px;
  }
  .po-subpage .po-nav{
    position:sticky;
    top:0;
  }
  .po-subpage .po-menu-extended.open{
    position:fixed;
    top:86px;
    left:14px;
    right:14px;
    max-height:calc(100vh - 110px);
    overflow:auto;
  }
  body.po-menu-open{
    overflow:hidden;
  }
  .po-page-hero-v24,
  .po-page-hero-v26{
    grid-template-columns:1fr !important;
  }
  .po-page-actions,
  .po-contact-choice,
  .po-home-card-actions{
    width:100%;
  }
  .po-page-actions .po-btn,
  .po-contact-choice .po-btn,
  .po-home-card-actions .po-btn{
    width:100%;
  }
}
@media (max-width: 640px){
  .about-shell{
    padding:18px 14px 40px;
  }
  .auth-note-premium{
    padding:12px 14px;
    font-size:14px;
  }
}

/* Unified Private/Public Buttons Style */
.btn-private, .btn-public {
  padding: 10px 18px;
  border-radius: 20px;
  font-weight: 600;
  text-decoration: none;
  display: inline-block;
}

.btn-private {
  border: 2px solid #2a6df4;
  color: #2a6df4;
}

.btn-public {
  border: 2px solid #ff2f92;
  color: #ff2f92;
}


/* V5 responsive fix */
@media (max-width:768px){
header,nav,.topbar{
display:flex;
flex-wrap:wrap;
}
button,.btn{
width:100%;
}
.consent-text{
margin-left:8px;
display:inline-block;
}
}


/* ===== V5.2 account choice + burger overlay fix ===== */
.po-signup-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}
.po-signup-choice-card{background:rgba(255,255,255,.94);border:1px solid rgba(7,22,42,.08);border-radius:26px;padding:24px;box-shadow:0 18px 44px rgba(7,22,42,.08);display:flex;flex-direction:column;gap:14px}
.po-signup-choice-card h3{margin:0;color:#0b2440}
.po-signup-choice-list{margin:0;padding-left:18px;color:#456}
.po-signup-choice-card .btn{align-self:flex-start;margin-top:auto}
.po-signup-choice-card-private{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(237,246,255,.95))}
@media (max-width: 820px){.po-signup-choice-grid{grid-template-columns:1fr}}

@media (max-width: 980px){
  .po-subpage .po-nav{z-index:5000 !important; isolation:isolate;}
  .po-subpage .po-burger{z-index:5002 !important; position:relative;}
  .po-subpage .po-menu-extended.open{
    display:flex !important;
    position:fixed !important;
    top:84px !important;
    left:12px !important;
    right:12px !important;
    bottom:auto !important;
    width:auto !important;
    max-height:calc(100vh - 104px) !important;
    overflow:auto !important;
    z-index:5001 !important;
    margin:0 !important;
  }
  body.po-menu-open::before{
    content:'';
    position:fixed;
    inset:0;
    background:rgba(7,22,42,.18);
    z-index:4999;
  }
}


/* ===== V6.1 overflow + legal/CGU refinements ===== */
.wrap{flex-wrap:wrap !important;}
.row > *{min-width:0;}
.topbar .row.gap.wrap{row-gap:10px;}
.topbar .row.gap.wrap > *{flex:0 1 auto;}
.app .panel .row.gap.wrap,
.app .card .row.gap.wrap,
.app .panel .po-contact-choice{
  align-items:stretch;
}
.app .panel .row.gap.wrap .btn,
.app .card .row.gap.wrap .btn,
.app .panel .po-contact-choice .btn,
.app .panel .po-contact-choice .po-btn{
  flex:1 1 220px;
  min-width:0;
  max-width:100%;
  white-space:normal;
  line-height:1.25;
  text-align:center;
}
.app .panel,
.app .card,
.grid2 > *,
.grid2 .panel{min-width:0;}
.app h2,
.app h3,
.app p,
.app .muted,
.app .kpi{overflow-wrap:anywhere;word-break:normal;}
.po-footer-v5-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  text-align:center;
}
.po-footer-v5-inner .po-footer-sep{opacity:.45;}
.po-legal-card-unified a,
.po-legal-hero-unified a{color:#0066ff;font-weight:800;word-break:break-word;}
.po-legal-card-unified p{margin:0 0 10px;}
.po-legal-card-unified p:last-child{margin-bottom:0;}
.po-legal-card-unified ul{margin:8px 0 0;}
.po-legal-card-unified li + li{margin-top:6px;}
@media (max-width: 1180px){
  .topbar .row.gap.wrap > *{flex:1 1 220px;}
}
@media (max-width: 980px){
  .topbar .row.gap.wrap > *{flex:1 1 100%;}
  .app .panel .row.gap.wrap .btn,
  .app .card .row.gap.wrap .btn,
  .app .panel .po-contact-choice .btn,
  .app .panel .po-contact-choice .po-btn{
    flex:1 1 100%;
  }
}
@media (max-width: 640px){
  .app{padding:18px 0 34px;gap:14px;}
  .topbar .container{padding-left:14px;padding-right:14px;}
}
