:root{
  --bg1:#0c1220;
  --bg2:#121a2a;
  --text:#eef1f6;
  --muted:#c2cad8;
  --gold:#b8963c;
  --line:rgba(184,150,60,.28);
  --card:rgba(255,255,255,.035);
  --card2:rgba(255,255,255,.02);
  --radius:18px;
  --radius2:14px;
  --shadow:0 18px 55px rgba(0,0,0,.33);
  --font-serif: ui-serif, "Georgia", "Times New Roman", serif;
  --font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --max:1200px;
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
html, body{
  max-width:100%;
  overflow-x:hidden;
  overscroll-behavior-x:none;
  touch-action:pan-y;
}
body{
  margin:0;
  min-height:100vh;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  min-height:640px;
  background:
    radial-gradient(900px 600px at 20% 15%, rgba(184,150,60,.08), transparent 62%),
    radial-gradient(900px 600px at 85% 85%, rgba(255,255,255,.05), transparent 58%),
    linear-gradient(135deg, var(--bg1), var(--bg2));
  color:var(--text);
  font-family: var(--font-serif);
  letter-spacing:.15px;
  overflow-y:auto;
  padding:28px 14px 48px;
  position:relative;
  width:100%;
}
body::before{
  content:"";
  position:absolute;
  inset:0;
  background-image: radial-gradient(rgba(255,255,255,.03) 1px, transparent 1px);
  background-size:4px 4px;
  opacity:.18;
  pointer-events:none;
}
body::after{
  content:"";
  position:absolute;
  width:980px;
  height:980px;
  border:1px solid rgba(184,150,60,.09);
  border-radius:999px;
  top:-560px;
  right:-560px;
  pointer-events:none;
}

.wrap{ width:min(var(--max), 92vw); position:relative; z-index:2; max-width:100%; }

.card{
  margin-top:18px;
  background:linear-gradient(180deg, var(--card), var(--card2));
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--radius);
  padding:40px 52px 36px;
  box-shadow:var(--shadow);
  backdrop-filter:blur(10px);
  max-width:100%;
}

.lang a,
.mini-link,
.btn,
.solution-link,
.tile-link{
  transition: transform .08s ease, background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 16px;
  border-radius:12px;
  text-decoration:none;
  font-family:var(--font-sans);
  letter-spacing:1px;
  font-size:12px;
}
.btn.primary{
  border:1px solid rgba(184,150,60,.52);
  color:var(--gold);
  background:rgba(184,150,60,.07);
  text-transform:uppercase;
}
.btn.primary:hover{
  background:rgba(184,150,60,.13);
  border-color:rgba(184,150,60,.75);
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
}
.btn.linklike{
  border:1px solid rgba(255,255,255,.10);
  color:rgba(238,241,246,.78);
  background:rgba(0,0,0,.085);
  text-transform:none;
  letter-spacing:.15px;
  font-family:var(--font-serif);
  font-size:14px;
}
.btn.linklike:hover{
  border-color:rgba(184,150,60,.50);
  background:rgba(184,150,60,.08);
  transform:translateY(-1px);
  color:rgba(238,241,246,.92);
}

.trust-frame{
  margin:0 0 18px;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
}
.trust-item,
.feature,
.process-step,
.solution-card,
.author-card,
.overview-card,
.video-side,
.video-box-wide{
  position:relative;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--radius2);
  box-shadow:0 12px 32px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
}
.trust-item{ padding:18px 18px 16px; }
.trust-item strong,
.eyebrow{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:rgba(238,241,246,.9);
  font-family:var(--font-sans);
}
.trust-item p,
.overview-card p,
.feature p,
.process-step p,
.solution-card p,
.author-card p,
.video-side p{
  margin:0;
  color:var(--muted);
  line-height:1.65;
  font-size:16px;
}

.intro-bridge{
  margin:0 0 18px;
  max-width:1020px;
  text-align:left;
  padding-left:22px;
  border-left:1px solid rgba(255,255,255,.08);
}
.intro-bridge p{
  margin:0 0 14px 0;
  color:var(--muted);
  font-size:18px;
  line-height:1.75;
}
.intro-bridge p:first-child{ color:var(--text); font-size:19px; }

.section-title{
  margin-top:30px;
  padding-top:18px;
  font-size:12px;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:rgba(238,241,246,.72);
  font-family:var(--font-sans);
  position:relative;
}
.section-title::before{
  content:"";
  position:absolute;
  left:0; right:0; top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, var(--line), transparent);
}

.overview-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:24px;
  align-items:stretch;
  max-width:100%;
}
.overview-card{ padding:22px; }
.overview-card h2,
.video-ph .title,
.author-card h3,
.solution-card h3,
.overview-card h3{
  margin:0 0 10px 0;
  font-weight:400;
  line-height:1.35;
  font-family:var(--font-serif);
  color:var(--text);
}
.overview-card h2{ font-size:30px; }
.overview-card ul{
  margin:16px 0 0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.75;
  font-size:16px;
}
.overview-card li+li{ margin-top:4px; }

.video-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:24px;
  align-items:start;
  max-width:100%;
}
.video-box-wide{
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .22s ease, border-color .22s ease;
  aspect-ratio:16 / 9;
  width:min(560px, 100%);
}
.video-box-wide:hover{
  border-color:rgba(184,150,60,.26);
  box-shadow:0 24px 70px rgba(0,0,0,.40);
  transform:translateY(-2px);
}
.video-ph{
  height:100%; width:100%; position:relative;
  display:flex; flex-direction:column; justify-content:flex-end;
  gap:12px; text-align:left; z-index:2;
  padding:26px 28px;
  background:linear-gradient(180deg, rgba(12,18,32,.15), rgba(12,18,32,.78));
}
.strategy-video-preview{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}
.strategy-video-preview img{ width:100%; height:100%; object-fit:cover; display:block; }
.video-ph .kicker{
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
  opacity:.78;
  font-family:var(--font-sans);
  position:relative;
  z-index:2;
}
.video-ph .title{
  position:relative;
  z-index:2;
  font-size:28px;
  max-width:18ch;
}
.video-ph .meta{
  position:relative;
  z-index:2;
  font-size:14px;
  opacity:.86;
  line-height:1.6;
  max-width:60ch;
  color:var(--muted);
}
.video-side{ padding:22px; }

.features{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  max-width:100%;
}
.feature{
  padding:18px;
  text-decoration:none;
  color:inherit;
  display:block;
}
.feature:hover{
  border-color:rgba(184,150,60,.45);
  transform:translateY(-2px);
  box-shadow:0 22px 65px rgba(0,0,0,.40);
}
.feature strong{
  display:block;
  margin-bottom:8px;
  font-size:14px;
  letter-spacing:1.4px;
  text-transform:uppercase;
  font-family:var(--font-sans);
  color:rgba(238,241,246,.86);
}

.process-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:16px;
  max-width:100%;
}
.process-step{ padding:18px; }
.step-no{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid rgba(184,150,60,.38);
  background:rgba(184,150,60,.08);
  color:var(--gold);
  font-family:var(--font-sans);
  font-size:13px;
  letter-spacing:1px;
  margin-bottom:12px;
}
.process-step h3{
  margin:0 0 8px 0;
  font-size:19px;
  font-weight:400;
  line-height:1.35;
}

.solutions-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  max-width:100%;
}
.solution-card{ padding:22px; }
.solution-card h3{ font-size:28px; }
.solution-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:16px;
  border:1px solid rgba(184,150,60,.52);
  color:var(--gold);
  background:rgba(184,150,60,.07);
  padding:12px 16px;
  border-radius:12px;
  text-decoration:none;
  font-family:var(--font-sans);
  letter-spacing:1px;
  text-transform:uppercase;
  font-size:12px;
}
.solution-link:hover{
  background:rgba(184,150,60,.13);
  border-color:rgba(184,150,60,.75);
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
}

.author-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr 260px;
  gap:28px;
  align-items:center;
  max-width:100%;
}
.author-card{ padding:22px; }
.author-card h3{ font-size:28px; }
.author-actions{ margin-top:16px; display:flex; flex-wrap:wrap; gap:10px; }
.author-portrait{
  width:100%;
  max-width:260px;
  margin-left:auto;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  overflow:hidden;
  box-shadow:0 18px 55px rgba(0,0,0,.35);
  background:rgba(0,0,0,.10);
  aspect-ratio:1 / 1;
}
.author-portrait img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.footer-slot{ margin-top:26px; }
.disclaimer{
  margin-top:26px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.10);
  font-size:14px;
  line-height:1.65;
  color:var(--muted);
}
.disclaimer a{
  color:rgba(194,202,216,.98);
  text-decoration:none;
  border-bottom:1px solid rgba(184,150,60,.22);
  font-family:var(--font-sans);
}
.disclaimer a:hover{ border-bottom-color:rgba(184,150,60,.50); }

.pe-footer{
  margin-top:38px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.10);
}
.pe-footer__meta{
  color: var(--muted, rgba(194,202,216,.9));
  font-size:13px;
  opacity:.92;
}
.module-intro{margin:10px 0 18px;color:var(--muted);font-size:16px;line-height:1.65;max-width:70ch;}
.project-note{
  margin-top:10px;
  font-size:14px;
  line-height:1.65;
  color:rgba(238,241,246,.92);
}
.project-note a{
  color:rgba(238,241,246,.96);
  text-decoration:none;
  border-bottom:1px solid rgba(184,150,60,.30);
  font-family:var(--font-sans);
}
.project-note a:hover{ border-bottom-color:rgba(184,150,60,.55); }

.review-strip{
  margin:18px 0 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  align-items:stretch;
  max-width:100%;
}
.review-card{
  position:relative;
  background:linear-gradient(180deg, rgba(255,255,255,.032), rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--radius2);
  box-shadow:0 10px 26px rgba(0,0,0,.16);
  backdrop-filter:blur(10px);
  padding:20px;
}
.review-card h3{
  margin:0 0 8px 0;
  font-size:24px;
  font-weight:400;
  line-height:1.35;
  color:var(--text);
}
.review-card p{
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.68;
}
.review-stats{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 14px;
  margin:12px 0 8px;
}
.review-rating{
  color: var(--text);
  font-size:16px !important;
  font-size:28px;
  line-height:1;
}
.review-stars{
  font-size:17px;
  letter-spacing:1.8px;
  color:var(--gold);
  line-height:1;
}
.review-count{
  font-family:var(--font-sans);
  font-size:12px;
  letter-spacing:.25px;
  color:rgba(238,241,246,.78);
}
.review-meta{
  margin-top:10px;
  color:var(--muted);
  font-size:14px;
  line-height:1.7;
}
.review-actions{
  margin-top:14px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.author-review-wrap{ margin-top:18px; }
.agent-block{ margin-top:18px; }
.agent-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr 260px;
  gap:28px;
  align-items:center;
}
.pe-footer .disclaimer{
  color:rgba(238,241,246,.92);
  font-size:14px;
}
.review-stars .star {
  position: relative;
  display: inline-block;
  color: rgba(255,255,255,0.15);
}
.review-stars .star.full { color: var(--gold); }
.review-stars .star.half::before {
  content: "★";
  position: absolute;
  left: 0;
  width: 50%;
  overflow: hidden;
  color: var(--gold);
}

.pe-modal{
  position:fixed;
  inset:0;
  display:block;
  z-index:9999;
  overflow-x:hidden;
  overflow-y:auto;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
}
.pe-modal[aria-hidden="false"]{ opacity:1; pointer-events:auto; }
.pe-modal-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.55); opacity:0; transition:opacity .2s ease; }
.pe-modal-panel{
  position:relative;
  width:min(980px, 92vw);
  margin:7vh auto;
  background:rgba(20,20,24,.96);
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 18px 60px rgba(0,0,0,.45);
  opacity:0;
  transform:translateY(6px);
  transition:opacity .16s ease, transform .16s ease;
}
.pe-modal[aria-hidden="false"] .pe-modal-backdrop{ opacity:1; }
.pe-modal[aria-hidden="false"] .pe-modal-panel{ opacity:1; transform:translateY(0); }
.pe-modal-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 14px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.pe-modal-title{ font-size:13px; opacity:.9; font-family:var(--font-sans); letter-spacing:.6px; text-transform:uppercase; }
.pe-modal-close{
  width:36px; height:36px; border-radius:12px; border:1px solid rgba(255,255,255,.18);
  background:rgba(0,0,0,.45); color:rgba(238,241,246,.95); font-size:20px; line-height:1; cursor:pointer;
  display:flex; align-items:center; justify-content:center; backdrop-filter:blur(8px);
}
.pe-modal-close:hover{ background:rgba(184,150,60,.10); border-color:rgba(184,150,60,.45); }
.pe-modal-body{ padding:12px; }
.pe-video{ width:100%; height:auto; border-radius:12px; background:#000; }
.pe-video-hint{ margin-top:10px; font-size:13px; color:rgba(238,241,246,.78); line-height:1.4; font-family:var(--font-sans); }

img, video, iframe{ max-width:100%; height:auto; }

@media (max-width: 1100px){
  .process-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 980px){
  .card{ padding:34px 22px 26px; }
  .overview-grid,
  .video-grid,
  .author-grid{ grid-template-columns:1fr; display:grid; }
  .trust-frame,
  .features,
  .solutions-grid,
  .process-grid,
  .review-strip,
  .agent-grid{ grid-template-columns:1fr; }
  .author-portrait{ margin:0 auto; }
}
@media (max-width: 768px){
  body{
    padding:18px 10px 34px;
  }
  body::after{
    width:640px;
    height:640px;
    top:-360px;
    right:-360px;
  }
  .wrap{ width:100%; }
  .card{
    padding-left:18px;
    padding-right:18px;
  }
  .lang{
    margin-top:18px;
    gap:8px;
  }
  .lang a{ max-width:100%; }

  [id*="cookie"], [class*="cookie"],
  [id*="consent"], [class*="consent"]{
    max-width:calc(100vw - 24px) !important;
  }

  [id*="cookie"][role="dialog"], [class*="cookie"][role="dialog"],
  [id*="consent"][role="dialog"], [class*="consent"][role="dialog"],
  [id*="cookie-banner"], [class*="cookie-banner"],
  [id*="cookie-consent"], [class*="cookie-consent"],
  [id*="consent-banner"], [class*="consent-banner"],
  [id*="cookie-popup"], [class*="cookie-popup"],
  [id*="cookie-modal"], [class*="cookie-modal"],
  [id*="consent-modal"], [class*="consent-modal"]{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:12px !important;
    top:auto !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
    max-height:78vh !important;
    overflow:auto !important;
    border-radius:16px !important;
    z-index:2147483646 !important;
  }

  [id*="cookie-overlay"], [class*="cookie-overlay"],
  [id*="consent-overlay"], [class*="consent-overlay"],
  [id*="cookie-backdrop"], [class*="cookie-backdrop"],
  [id*="consent-backdrop"], [class*="consent-backdrop"]{
    background:rgba(0,0,0,.30) !important;
    z-index:2147483645 !important;
  }
}
