*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#0b1714;background:#f6f3ed;line-height:1.55}a{text-decoration:none;color:inherit}.c{max-width:1160px;margin:auto;padding:0 24px}nav{position:sticky;top:0;z-index:10;background:#0b1714f5;color:white;border-bottom:1px solid #ffffff18}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-size:22px;font-weight:900;letter-spacing:.16em}.logo small{display:block;font-size:8px;color:#b8d1c8}.menu{display:flex;gap:20px;align-items:center;font-size:14px}.lang{border:1px solid #ffffff33;border-radius:99px;padding:7px 10px}.btn{display:inline-block;background:#d7b56f;color:#0b1714;padding:13px 20px;border-radius:99px;font-weight:800}.hero,.sub{background:radial-gradient(circle at 85% 15%,#1a725e55,transparent 35%),linear-gradient(135deg,#07110f,#0d3a30);color:white}.hero .c{padding-top:88px;padding-bottom:82px;display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.sub{padding:72px 0}.eye{font-size:12px;font-weight:900;letter-spacing:.17em;text-transform:uppercase;color:#91cbb9}h1{font-size:clamp(44px,6vw,74px);line-height:1;letter-spacing:-.045em;margin:15px 0 22px}h1 span{color:#d7b56f}h2{font-size:clamp(33px,4vw,52px);line-height:1.05;letter-spacing:-.035em;margin:10px 0 18px}.hero p,.sub p{font-size:19px;color:#d8e5e0;max-width:760px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.ghost{background:transparent;color:white;border:1px solid #ffffff55}.visual{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tile{height:190px;border-radius:20px;background-size:cover;background-position:center;position:relative;overflow:hidden}.tile.big{grid-column:span 2;height:225px}.tile:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,#000b)}.tile b{position:absolute;z-index:2;left:15px;bottom:13px;color:white}.sec{padding:78px 0}.white{background:white}.dark{background:#0b1714;color:white}.soft{background:#e7eeea}.lead{max-width:820px;color:#64716c;font-size:18px}.dark .lead{color:#bfd0ca}.g2,.g3{display:grid;gap:18px;margin-top:32px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.card{background:white;border:1px solid #dbe3df;border-radius:20px;padding:27px;box-shadow:0 12px 30px #0814100b}.card h3{font-size:21px;margin:7px 0}.card p{margin:0;color:#64716c}.dark .card{background:#10231d;border-color:#214237;color:white}.dark .card p{color:#bfd0ca}.tag{font-size:12px;font-weight:900;color:#0f5d4d;text-transform:uppercase;letter-spacing:.08em}.note{background:#dfece7;border:1px solid #cfddd7;border-radius:19px;padding:24px;margin-top:30px}.note strong{display:block;font-size:19px;margin-bottom:7px}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:34px}.step{border-top:3px solid #d7b56f;padding-top:15px}.step b{font-size:12px;color:#0f5d4d}.step h3{font-size:18px;margin:6px 0}.score{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.scorebox{background:white;border-radius:22px;padding:32px;color:#0b1714}.number{font-size:78px;font-weight:900}.number span{font-size:20px;color:#64716c}.bar{margin:16px 0}.bh{display:flex;justify-content:space-between;font-size:13px;font-weight:800}.track{height:8px;background:#e5ebe8;border-radius:99px}.fill{height:100%;background:#0f5d4d;border-radius:99px}.banner{background:linear-gradient(135deg,#0f5d4d,#11382f);color:white;border-radius:26px;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:25px}.banner h2{font-size:34px;margin:0 0 8px}.banner p{margin:0;color:#cce0d9}.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:25px}.box{background:white;border:1px solid #dbe3df;border-radius:20px;padding:27px}label{display:block;font-size:13px;font-weight:800;margin:13px 0 6px}input,textarea,select{width:100%;padding:13px;border:1px solid #ccd8d3;border-radius:11px;font:inherit}textarea{min-height:120px}button{border:0}footer{background:#06110e;color:#afc2bb;padding:40px 0}.foot{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.foot strong{color:white;letter-spacing:.15em}.legal{font-size:12px;color:#71827c}@media(max-width:900px){.hero .c,.score,.contact{grid-template-columns:1fr}.g3{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.menu a:not(.btn):not(.lang){display:none}}@media(max-width:620px){.g2,.g3,.steps{grid-template-columns:1fr}.visual{grid-template-columns:1fr}.tile.big{grid-column:span 1}.banner{align-items:flex-start;flex-direction:column}h1{font-size:45px}}
/* RETIVORA 4.1 – richer About / Method pages */
.storygrid{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:start;margin-top:34px}
.storypanel{background:#0f5d4d;color:white;border-radius:24px;padding:32px;position:sticky;top:100px}
.storypanel .bigline{font-size:31px;font-weight:900;line-height:1.08;letter-spacing:-.03em;margin:10px 0 16px}
.storypanel p{color:#d7e7e1}
.storylist{display:grid;gap:14px}
.storyitem{background:white;border:1px solid #dbe3df;border-radius:18px;padding:23px}
.storyitem strong{display:block;font-size:18px;margin-bottom:6px}
.storyitem p{margin:0;color:#64716c}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
.role{border:1px solid #29463d;background:#10231d;border-radius:22px;padding:30px}
.role .rolehead{font-size:12px;color:#d7b56f;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.role h3{font-size:26px;line-height:1.1;margin:9px 0 12px}
.role p{color:#c4d4ce}
.checks{display:grid;gap:10px;margin-top:18px}
.check{display:flex;gap:11px;align-items:flex-start;color:#d9e5e1;font-size:14px}
.check i{font-style:normal;color:#d7b56f;font-weight:900}
.insightgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.insight{border-left:3px solid #d7b56f;padding:8px 0 8px 20px}
.insight h3{font-size:21px;margin:0 0 8px}.insight p{color:#64716c;margin:0}
.process{margin-top:38px;display:grid;gap:0}
.processrow{display:grid;grid-template-columns:88px 1fr 1fr;gap:24px;padding:26px 0;border-top:1px solid #d7dfdb;align-items:start}
.processrow:last-child{border-bottom:1px solid #d7dfdb}
.processnum{font-size:38px;font-weight:900;color:#0f5d4d;line-height:1}
.processrow h3{font-size:24px;margin:0}
.processrow p{margin:0;color:#64716c}
.datagrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}
.dataitem{background:#10231d;border:1px solid #29463d;border-radius:18px;padding:23px;color:white}
.dataitem b{display:block;color:#d7b56f;margin-bottom:7px}.dataitem p{margin:0;color:#c4d4ce}
.case{background:white;border-radius:26px;border:1px solid #dbe3df;overflow:hidden;margin-top:32px}
.casehead{background:#0f5d4d;color:white;padding:27px 30px}
.casehead h3{font-size:27px;margin:5px 0}.casehead p{margin:0;color:#d6e7e1}
.casebody{padding:30px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.casecol b{display:block;color:#0f5d4d;margin-bottom:7px}.casecol p{margin:0;color:#64716c}
.deliverable{background:#f3f0e8;border:1px solid #e3ddcf;border-radius:22px;padding:30px}
.deliverable h3{font-size:26px;margin:0 0 12px}.deliverable p{font-size:17px;color:#58655f}
.quote{font-size:28px;line-height:1.25;font-weight:800;letter-spacing:-.02em;border-left:4px solid #d7b56f;padding-left:22px;margin:28px 0}
@media(max-width:900px){.storygrid,.duo{grid-template-columns:1fr}.storypanel{position:static}.insightgrid,.casebody{grid-template-columns:1fr}.processrow{grid-template-columns:60px 1fr}.processrow p{grid-column:2}.datagrid{grid-template-columns:1fr}}

/* SEO landing pages */
.servicehero{background:linear-gradient(135deg,#07110f,#0d3a30);color:white;padding:74px 0}.servicehero h1{max-width:940px}.servicehero p{max-width:800px;color:#d8e5e0;font-size:19px}.servicefacts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}.servicefact{background:#10231d;border:1px solid #29463d;border-radius:18px;padding:22px;color:white}.servicefact b{display:block;color:#d7b56f;margin-bottom:6px}.linkmore{display:inline-block;margin-top:14px;color:#0f5d4d;font-weight:800}.faq{margin-top:30px}.faq details{background:white;border:1px solid #dbe3df;border-radius:14px;padding:16px 18px;margin:10px 0}.faq summary{font-weight:800;cursor:pointer}.faq p{color:#64716c}.crumbs{font-size:13px;color:#bcd0c8;margin-bottom:12px}.crumbs a{text-decoration:underline}.seo-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:25px}.seo-list div{background:white;border:1px solid #dbe3df;border-radius:16px;padding:18px}.seo-list b{display:block;margin-bottom:5px}@media(max-width:760px){.servicefacts,.seo-list{grid-template-columns:1fr}}

/* ==========================================================
   RETIVORA 5.0 – Portfolio architecture
   ========================================================== */
:root{
  --rv-deep:#081310;
  --rv-deep2:#10241d;
  --rv-green:#0f5d4d;
  --rv-green2:#257e6a;
  --rv-gold:#d7b56f;
  --rv-cream:#f6f3ed;
  --rv-mint:#dfece7;
  --rv-line:#d8e2dd;
  --rv-muted:#64716c;
}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:34px}
.portfolio-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--rv-line);border-radius:24px;padding:32px;box-shadow:0 16px 40px rgba(8,19,16,.06)}
.portfolio-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--rv-gold)}
.portfolio-card .kicker{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--rv-green)}
.portfolio-card h3{font-size:28px;letter-spacing:-.025em;margin:9px 0 12px}
.portfolio-card p{color:var(--rv-muted);margin:0 0 18px}
.portfolio-card ul{margin:0;padding-left:18px;color:#4d5d57}
.portfolio-card li{margin:6px 0}
.product-hero{background:linear-gradient(135deg,#07110f 0%,#0b2c24 60%,#0f5d4d 100%);color:#fff;padding:78px 0}
.product-hero .wrap2{display:grid;grid-template-columns:1.12fr .88fr;gap:44px;align-items:center}
.product-hero h1{font-size:clamp(44px,6vw,72px);line-height:1;letter-spacing:-.045em;margin:14px 0 20px}
.product-hero p{font-size:18px;color:#d9e6e1;max-width:760px}
.product-hero .statement{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:28px}
.statement strong{display:block;color:var(--rv-gold);font-size:27px;line-height:1.18;margin-bottom:12px}
.audit-dimensions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px}
.dimension{background:#fff;border:1px solid var(--rv-line);border-radius:18px;padding:22px}
.dimension b{display:block;font-size:17px;margin-bottom:6px}
.dimension span{color:var(--rv-muted);font-size:14px}
.score-panel{background:#fff;border-radius:24px;padding:31px;border:1px solid var(--rv-line);box-shadow:0 18px 50px rgba(8,19,16,.07)}
.score-panel .score-number{font-size:70px;font-weight:950;letter-spacing:-.04em;line-height:1}
.score-panel .score-number span{font-size:20px;color:var(--rv-muted)}
.score-list{display:grid;gap:12px;margin-top:24px}
.score-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;border-bottom:1px solid #e4eae7;padding-bottom:10px}
.score-row:last-child{border:0}
.score-row b{font-size:14px}.score-row strong{color:var(--rv-green)}
.photo-report{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:center}
.photo-placeholder{min-height:390px;border-radius:24px;background:
 linear-gradient(160deg,rgba(6,17,14,.08),rgba(15,93,77,.28)),
 url('https://images.unsplash.com/photo-1604324017966-9f40d696f4f2?auto=format&fit=crop&w=1200&q=80') center/cover;border:1px solid var(--rv-line)}
.report-flow{display:grid;gap:12px;margin-top:22px}
.report-flow div{background:#f7f9f7;border:1px solid var(--rv-line);border-radius:15px;padding:16px 18px}
.report-flow b{color:var(--rv-green)}
.network-dashboard{background:#0e201a;color:#fff;border-radius:26px;padding:30px}
.network-dashboard h3{font-size:25px;margin:0 0 18px}
.network-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.network-kpi{background:#152e26;border:1px solid #29483f;border-radius:16px;padding:17px}
.network-kpi strong{display:block;color:var(--rv-gold);font-size:27px}
.network-kpi span{font-size:12px;color:#bed0c9}
.flow-line{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:30px}
.flow-node{position:relative;background:#fff;border:1px solid var(--rv-line);border-radius:18px;padding:20px;text-align:center}
.flow-node b{display:block;color:var(--rv-green);margin-bottom:5px}
.location-score{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;align-items:center}
.go-badge{display:inline-block;background:#dfeee8;color:#0f5d4d;border:1px solid #bcd5ca;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:900}
.warning-box{background:#fff8e8;border:1px solid #ead9ad;border-radius:18px;padding:20px;margin-top:24px;color:#5a5038}
.simple-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.simple-box{background:#fff;border:1px solid var(--rv-line);border-radius:18px;padding:23px}
.simple-box b{font-size:18px;display:block;margin-bottom:7px}
.simple-box p{margin:0;color:var(--rv-muted)}
.brand-message{text-align:center;max-width:880px;margin:0 auto}
.brand-message .big{font-size:clamp(34px,5vw,58px);font-weight:900;line-height:1.05;letter-spacing:-.04em}
.brand-message .big span{display:block;color:var(--rv-green)}
.brand-message p{font-size:18px;color:var(--rv-muted)}
.service-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.service-links a{font-size:13px;font-weight:800;background:#e4ece8;padding:9px 12px;border-radius:999px}
@media(max-width:920px){
  .portfolio-grid,.product-hero .wrap2,.photo-report,.location-score{grid-template-columns:1fr}
  .network-kpis{grid-template-columns:repeat(2,1fr)}
  .flow-line{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .portfolio-grid,.audit-dimensions,.simple-grid{grid-template-columns:1fr}
  .network-kpis,.flow-line{grid-template-columns:1fr}
}

/* RETIVORA 5.0 FIX — compatibility layer for 5.0 semantic class names */
.container{max-width:1160px;margin:auto;padding-left:24px;padding-right:24px}
.section{padding:78px 0}
.eyebrow{font-size:12px;font-weight:900;letter-spacing:.17em;text-transform:uppercase;color:#0f5d4d}
.dark .eyebrow,.product-hero .eyebrow,.subhero .eyebrow,.hero .eyebrow{color:#91cbb9}
.brand{font-size:22px;font-weight:900;letter-spacing:.16em;color:#fff}
.brand small{display:block;font-size:8px;color:#b8d1c8;letter-spacing:.08em}
.subhero{background:radial-gradient(circle at 85% 15%,#1a725e55,transparent 35%),linear-gradient(135deg,#07110f,#0d3a30);color:white;padding:72px 0}
.subhero p{font-size:19px;color:#d8e5e0;max-width:800px}
.hero>.container{padding-top:88px;padding-bottom:82px;display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}
.footer{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}
.footer strong{color:white;letter-spacing:.15em}
.footerlinks{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}
.footerlinks a{color:#afc2bb}
.footerlinks a:hover{color:white}
.scorewrap{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}
.table{width:100%;border-collapse:collapse;background:white;border:1px solid #dbe3df;border-radius:18px;overflow:hidden}
.table th,.table td{text-align:left;padding:16px 18px;border-bottom:1px solid #e1e7e4}
.table th{background:#0f5d4d;color:white}
.table tr:last-child td{border-bottom:0}
@media(max-width:900px){
  .hero>.container,.scorewrap{grid-template-columns:1fr}
  .menu a:not(.btn):not(.lang){display:none}
}
@media(max-width:620px){
  .container{padding-left:18px;padding-right:18px}
  .section{padding:58px 0}
  .product-hero{padding:58px 0}
  .subhero{padding:56px 0}
  .table{display:block;overflow-x:auto;white-space:nowrap}
}
