.rpl a{text-decoration:none;color:inherit;}
.rpl button{cursor:pointer;border:none;background:none;font:inherit;}
.rpl{font-family:var(–rep-font-body);color:var(–rep-text-secondary);line-height:1.6;}
.rpl h1,.rpl h2,.rpl h3,.rpl h4{font-family:var(–rep-font-display)!important;color:var(–rep-forest);line-height:1.15!important;margin:0;}
.rpl h1{font-size:clamp(2.3rem,4.5vw,3.5rem)!important;font-weight:700!important;letter-spacing:-.03em;}
.rpl h2{font-size:clamp(1.7rem,3.2vw,2.4rem)!important;font-weight:600!important;}
.rpl h3{font-size:clamp(1.05rem,1.8vw,1.3rem)!important;font-weight:600!important;}
.rpl h4{font-size:clamp(.9rem,1.4vw,1.1rem)!important;font-weight:600!important;}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px;}
.wrap–narrow{max-width:780px;margin:0 auto;padding:0 24px;}
/* ── Atoms ── */
.kicker{display:inline-block;font:600 .78rem/1 var(–rep-font-body);text-transform:uppercase;letter-spacing:.1em;color:var(–rep-teal);margin-bottom:12px;}
.kicker–light{color:var(–rep-green);}
.muted{color:var(–rep-text-muted);max-width:620px;}
.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:var(–rep-radius-full);background:var(–rep-bg-light);border:1px solid var(–rep-border);font:500 .78rem/1 var(–rep-font-body);color:var(–rep-text-secondary);}
.chip–green{background:rgba(146,241,203,.12);border-color:rgba(146,241,203,.30);color:var(–rep-forest);}
.chip–teal{background:rgba(65,153,159,.08);border-color:rgba(65,153,159,.25);color:var(–rep-teal);}
.chip–sun{background:rgba(247,212,80,.12);border-color:rgba(247,212,80,.35);color:#6C5E1A;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:var(–rep-radius-md);font:600 .95rem/1 var(–rep-font-body);transition:all .25s ease;min-height:48px;white-space:nowrap;text-decoration:none;}
.btn-primary{background:var(–rep-teal);color:#fff;}
.btn-primary:hover{background:#368F95;transform:translateY(-2px);box-shadow:var(–rep-shadow-md);}
.btn-accent{background:var(–rep-sun);color:var(–rep-forest);}
.btn-accent:hover{background:#f5cc3d;transform:translateY(-2px);box-shadow:var(–rep-shadow-md);}
.btn-outline{background:transparent;color:var(–rep-teal);border:1.5px solid var(–rep-teal);}
.btn-outline:hover{background:var(–rep-teal);color:#fff;}
.btn-ghost{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.25);}
.btn-ghost:hover{background:rgba(255,255,255,.18);}
.btn-white{background:#fff;color:var(–rep-forest)!important;}
.btn-white:hover{background:var(–rep-bg-light);transform:translateY(-2px);box-shadow:var(–rep-shadow-md);}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@keyframes dws-show{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.reveal{animation:dws-show .55s ease both!important;}
.reveal[data-delay=»1″]{animation-delay:.1s!important}
.reveal[data-delay=»2″]{animation-delay:.2s!important}
.reveal[data-delay=»3″]{animation-delay:.3s!important}
.reveal[data-delay=»4″]{animation-delay:.4s!important}
.reveal[data-delay=»5″]{animation-delay:.5s!important}
.reveal[data-delay=»6″]{animation-delay:.6s!important}
.reveal.is-visible{animation:none!important;opacity:1!important;transform:none!important;}
/* ===== 1. HERO ===== */
.dws-hero{
background:linear-gradient(160deg,#1A2B20 0%,#0F1C14 45%,#162A1B 100%);
color:#fff;padding:160px 0 110px;position:relative;overflow:hidden;
}
.dws-hero::before{
content:»»;position:absolute;inset:0;
background:url(«data:image/svg+xml,%3Csvg width=’80’ height=’80’ xmlns=’http://www.w3.org/2000/svg’%3E%3Ccircle cx=’1′ cy=’1′ r=’.8′ fill=’%2393F1C9′ opacity=’.04’/%3E%3C/svg%3E»);
pointer-events:none;
}
.dws-hero::after{
content:»»;position:absolute;top:-30%;left:-15%;width:60%;height:100%;
background:radial-gradient(ellipse,rgba(65,153,159,.14) 0%,transparent 60%);
pointer-events:none;
}
.dws-hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.dws-hero-eyebrow{
display:inline-flex;align-items:center;gap:8px;
background:rgba(147,241,201,.1);border:1px solid rgba(147,241,201,.22);
border-radius:var(–rep-radius-full);padding:6px 16px;
font:600 .75rem/1 var(–rep-font-body);color:var(–rep-green);
text-transform:uppercase;letter-spacing:.1em;margin-bottom:22px;
}
.dws-hero h1{color:#fff;margin-bottom:20px;}
.dws-hero h1 span{color:var(–rep-green);font-style:italic;}
.dws-hero .hero-sub{font-size:1.08rem;color:rgba(255,255,255,.72);line-height:1.75;margin-bottom:32px;max-width:520px;}
.dws-hero .hero-sub strong{color:#fff;}
.dws-hero .hero-sub em{color:var(–rep-green);font-style:normal;font-weight:600;}
.dws-hero-badges{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:32px;}
.dws-hero-badges .chip{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);color:rgba(255,255,255,.8);}
.dws-hero-badges .chip i{color:var(–rep-green);}
.dws-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px;}
.dws-trust-note{font-size:.8rem;color:rgba(255,255,255,.38);display:flex;align-items:center;gap:6px;}
.dws-trust-note::before{content:»;width:16px;height:1px;background:rgba(255,255,255,.2);}
/* Hero visual */
.dws-hero-visual{position:relative;display:flex;align-items:center;justify-content:center;min-height:440px;}
.dws-hero-visual .orb{
position:absolute;width:380px;height:380px;border-radius:50%;
background:radial-gradient(circle at 40% 40%,rgba(147,241,201,.12),rgba(65,153,159,.06) 55%,transparent 70%);
filter:blur(50px);animation:dws-float 10s ease-in-out infinite;
}
@keyframes dws-float{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(2deg)}}
.dws-hero-code{
position:relative;z-index:1;
background:rgba(15,28,20,.9);backdrop-filter:blur(12px);
border:1px solid rgba(147,241,201,.15);border-radius:var(–rep-radius-xl);
padding:32px;max-width:420px;width:100%;
box-shadow:0 40px 80px rgba(0,0,0,.5);
font-family:var(–rep-font-mono);font-size:.82rem;line-height:1.8;
}
.dws-hero-code .code-bar{
display:flex;gap:6px;align-items:center;margin-bottom:20px;padding-bottom:14px;
border-bottom:1px solid rgba(255,255,255,.07);
}
.dws-hero-code .dot{width:10px;height:10px;border-radius:50%;}
.dws-hero-code .dot-r{background:#ff5f57;}
.dws-hero-code .dot-y{background:#febc2e;}
.dws-hero-code .dot-g{background:#28c840;}
.dws-hero-code .code-file{font:500 .72rem/1 var(–rep-font-body);color:rgba(255,255,255,.4);margin-left:8px;}
.dws-hero-code .ln{color:rgba(255,255,255,.18);user-select:none;margin-right:16px;min-width:16px;text-align:right;}
.dws-hero-code .c-comment{color:rgba(147,241,201,.55);}
.dws-hero-code .c-tag{color:#7ec8e3;}
.dws-hero-code .c-attr{color:#f8c6a0;}
.dws-hero-code .c-str{color:var(–rep-green);}
.dws-hero-code .c-val{color:#e8c585;}
.dws-hero-code .c-plain{color:rgba(255,255,255,.65);}
/* Hero floating metrics */
.dws-metric{
position:absolute;z-index:2;
background:rgba(15,28,20,.88);backdrop-filter:blur(16px);
border:1px solid rgba(147,241,201,.18);border-radius:var(–rep-radius-lg);
padding:14px 18px;min-width:140px;
}
.dws-metric .m-val{font:700 1.4rem/1 var(–rep-font-display);color:var(–rep-green);margin-bottom:3px;}
.dws-metric .m-label{font:400 .72rem/1.3 var(–rep-font-body);color:rgba(255,255,255,.55);}
.dws-metric–lcp{top:12%;left:-5%;}
.dws-metric–score{bottom:18%;right:-8%;}
/* ===== 2. QUÉ ES (filosofía) ===== */
.dws-what{background:var(–rep-bg-light);padding:96px 0;}
.dws-what .wrap{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;}
.dws-what-copy h2{margin-bottom:20px;}
.dws-what-copy p{font-size:1.05rem;line-height:1.8;margin-bottom:18px;}
.dws-what-copy p strong{color:var(–rep-forest);}
.dws-what-copy .footnote{
font-size:.82rem;color:var(–rep-text-muted);margin-top:24px;
padding-left:12px;border-left:3px solid var(–rep-border);
}
.dws-stats{display:flex;flex-direction:column;gap:20px;position:sticky;top:24px;}
.dws-stat-card{
background:#fff;border:1px solid var(–rep-border);border-radius:var(–rep-radius-lg);
padding:24px 28px;transition:box-shadow .2s;
}
.dws-stat-card:hover{box-shadow:var(–rep-shadow-md);}
.dws-stat-card .s-val{
font:700 2.6rem/1 var(–rep-font-display);
background:var(–rep-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;
margin-bottom:6px;
}
.dws-stat-card .s-label{font:600 .85rem/1.3 var(–rep-font-body);color:var(–rep-forest);margin-bottom:4px;}
.dws-stat-card .s-note{font:400 .78rem/1.4 var(–rep-font-body);color:var(–rep-text-muted);}
.dws-what-tagline{
margin-top:28px;padding:20px 24px;
background:linear-gradient(135deg,rgba(65,153,159,.08),rgba(147,241,201,.06));
border:1px solid rgba(65,153,159,.2);border-radius:var(–rep-radius-md);
font:500 1rem/1.65 var(–rep-font-body);color:var(–rep-forest);
font-style:italic;
}
/* ===== 3. CÓMO — Stack técnico ===== */
.dws-how{background:var(–rep-forest);padding:90px 0;color:#fff;position:relative;overflow:hidden;}
.dws-how::before{
content:»»;position:absolute;right:-10%;bottom:-20%;width:50%;height:80%;
background:radial-gradient(ellipse,rgba(65,153,159,.12) 0%,transparent 65%);
pointer-events:none;
}
.dws-how .kicker–light{margin-bottom:10px;}
.dws-how h2{color:#fff;margin-bottom:14px;}
.dws-how-intro{font-size:1.05rem;color:rgba(255,255,255,.65);max-width:620px;margin-bottom:56px;line-height:1.75;}
.dws-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.dws-pillar{
background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
border-radius:var(–rep-radius-xl);padding:32px 28px;
transition:background .25s, border-color .25s, transform .25s;
}
.dws-pillar:hover{background:rgba(255,255,255,.07);border-color:rgba(147,241,201,.18);transform:translateY(-4px);}
.dws-pillar-icon{
width:52px;height:52px;border-radius:var(–rep-radius-md);
background:rgba(147,241,201,.1);
display:flex;align-items:center;justify-content:center;
font-size:26px;color:var(–rep-green);margin-bottom:20px;
}
.dws-pillar h3{color:#fff;margin-bottom:12px;}
.dws-pillar p{font-size:.92rem;color:rgba(255,255,255,.6);line-height:1.7;margin-bottom:16px;}
.dws-pillar .pillar-metrics{display:flex;flex-direction:column;gap:6px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.07);}
.dws-pillar .pm-row{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;}
.dws-pillar .pm-label{color:rgba(255,255,255,.45);}
.dws-pillar .pm-val{font:600 .78rem/1 var(–rep-font-body);color:var(–rep-green);background:rgba(147,241,201,.1);padding:3px 8px;border-radius:var(–rep-radius-full);}
/* CWV bar */
.dws-cwv{
display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
margin-top:52px;padding-top:40px;border-top:1px solid rgba(255,255,255,.07);
}
.dws-cwv-item{text-align:center;}
.dws-cwv-item .cv-val{font:700 2rem/1 var(–rep-font-display);color:var(–rep-green);margin-bottom:4px;}
.dws-cwv-item .cv-metric{font:600 .78rem/1 var(–rep-font-body);color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px;}
.dws-cwv-item .cv-name{font:400 .8rem/1.3 var(–rep-font-body);color:rgba(255,255,255,.5);}
/* ===== 4. TIPOLOGÍAS ===== */
.dws-types{padding:90px 0;background:#fff;}
.dws-types-head{text-align:center;margin-bottom:56px;}
.dws-types-head h2{margin-bottom:12px;}
.dws-types-head p{color:var(–rep-text-muted);max-width:520px;margin:0 auto;}
.dws-types-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.dws-type-card{
border:1px solid var(–rep-border);border-radius:var(–rep-radius-xl);
padding:32px 28px;transition:all .25s;position:relative;overflow:hidden;
}
.dws-type-card::before{
content:»»;position:absolute;inset:0;opacity:0;
background:linear-gradient(135deg,rgba(65,153,159,.06),rgba(147,241,201,.04));
transition:opacity .25s;
}
.dws-type-card:hover{box-shadow:var(–rep-shadow-lg);transform:translateY(-3px);border-color:rgba(65,153,159,.25);}
.dws-type-card:hover::before{opacity:1;}
.dws-type-card .tc-icon{
width:52px;height:52px;border-radius:var(–rep-radius-md);
background:var(–rep-bg-light);display:flex;align-items:center;justify-content:center;
font-size:26px;color:var(–rep-teal);margin-bottom:20px;
transition:background .25s;
}
.dws-type-card:hover .tc-icon{background:rgba(65,153,159,.1);}
.dws-type-card h3{margin-bottom:10px;}
.dws-type-card p{font-size:.9rem;color:var(–rep-text-muted);line-height:1.65;margin-bottom:16px;}
.dws-type-card .tc-from{font:600 .78rem/1 var(–rep-font-body);color:var(–rep-teal);}
.dws-type-card–wide{grid-column:span 3;}
/* ===== 5. PROCESO ===== */
.dws-process{background:var(–rep-bg-light);padding:90px 0;}
.dws-process-head{text-align:center;margin-bottom:56px;}
.dws-process-head h2{margin-bottom:12px;}
.dws-process-head .muted{margin:0 auto;}
.dws-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
.dws-steps::before{
content:»»;position:absolute;top:42px;left:calc(12.5% + 12px);
right:calc(12.5% + 12px);height:2px;
background:linear-gradient(90deg,var(–rep-teal),var(–rep-green));
opacity:.25;
}
.dws-step{text-align:center;padding:0 16px;}
.dws-step-num{
width:52px;height:52px;border-radius:50%;
background:var(–rep-forest);color:var(–rep-green);
font:700 1.1rem/52px var(–rep-font-display);
display:flex;align-items:center;justify-content:center;
margin:0 auto 20px;position:relative;z-index:1;
box-shadow:0 0 0 6px var(–rep-bg-light);
}
.dws-step h4{margin-bottom:8px;}
.dws-step p{font-size:.87rem;color:var(–rep-text-muted);line-height:1.6;}
.dws-process-note{
max-width:780px;margin:48px auto 0;
padding:22px 28px;background:#fff;
border:1px solid var(–rep-border);border-radius:var(–rep-radius-lg);
display:flex;align-items:flex-start;gap:14px;
}
.dws-process-note i{font-size:20px;color:var(–rep-teal);flex-shrink:0;margin-top:2px;}
.dws-process-note p{font-size:.9rem;color:var(–rep-text-muted);line-height:1.65;margin:0;}
.dws-process-note p strong{color:var(–rep-forest);}
/* ===== RESPONSIVE ===== */
@media(max-width:1024px){
.dws-hero .wrap{grid-template-columns:1fr;gap:40px;}
.dws-hero-visual{min-height:320px;}
.dws-hero-code{max-width:340px;}
.dws-metric–score{right:4%;}
.dws-what .wrap{grid-template-columns:1fr;}
.dws-stats{position:static;flex-direction:row;flex-wrap:wrap;}
.dws-stat-card{flex:1;min-width:160px;}
.dws-pillars{grid-template-columns:1fr 1fr;}
.dws-types-grid{grid-template-columns:1fr 1fr;}
.dws-type-card–wide{grid-column:span 2;}
.dws-steps{grid-template-columns:1fr 1fr;gap:40px;}
.dws-steps::before{display:none;}
}
@media(max-width:640px){
.dws-hero{padding:120px 0 80px;}
.dws-ctas{flex-direction:column;}
.dws-pillars{grid-template-columns:1fr;}
.dws-cwv{grid-template-columns:1fr 1fr;}
.dws-types-grid{grid-template-columns:1fr;}
.dws-type-card–wide{grid-column:span 1;}
.dws-steps{grid-template-columns:1fr;}
.dws-hero-visual{display:none;}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d4700f4 *//* ===== 6. PORTFOLIO ===== */
.dws-portfolio{padding:90px 0;background:#fff;}
.dws-portfolio-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px;flex-wrap:wrap;}
.dws-portfolio-head h2{margin-bottom:8px;}
.dws-portfolio-head .head-sub{font-size:.95rem;color:var(–rep-text-muted);}
.dws-portfolio-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px;}
.dws-pf{
display:inline-flex;align-items:center;gap:5px;
padding:6px 14px;border-radius:var(–rep-radius-full);
border:1.5px solid var(–rep-border);
font:500 .82rem/1 var(–rep-font-body);color:var(–rep-text-muted);
background:#fff;cursor:pointer;transition:all .18s;
}
.dws-pf.active,.dws-pf:hover{background:var(–rep-teal);color:#fff;border-color:var(–rep-teal);}
.dws-portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.dws-project-card{
border-radius:var(–rep-radius-xl);overflow:hidden;
border:1px solid var(–rep-border);
transition:all .25s;
}
.dws-project-card:hover{box-shadow:var(–rep-shadow-lg);transform:translateY(-4px);}
.dws-project-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform .35s;}
.dws-project-card:hover img{transform:scale(1.04);}
.dws-project-card .pc-info{padding:18px 20px;}
.dws-project-card .pc-type{font:500 .73rem/1 var(–rep-font-body);color:var(–rep-teal);text-transform:uppercase;letter-spacing:.09em;margin-bottom:5px;}
.dws-project-card .pc-name{font:600 1rem/1.3 var(–rep-font-display);color:var(–rep-forest);}
/* ===== 7. COMPARATIVA ===== */
.dws-compare{padding:88px 0;background:var(–rep-bg-light);}
.dws-compare-head{text-align:center;margin-bottom:52px;}
.dws-compare-head h2{margin-bottom:12px;}
.dws-compare-head p{color:var(–rep-text-muted);max-width:540px;margin:0 auto;}
.dws-compare-table{
width:100%;border-radius:var(–rep-radius-xl);overflow:hidden;
border:1px solid var(–rep-border);background:#fff;
box-shadow:var(–rep-shadow-sm);
}
.dws-compare-table thead th{
padding:18px 24px;font:600 .82rem/1 var(–rep-font-body);
text-transform:uppercase;letter-spacing:.08em;text-align:left;
}
.dws-compare-table thead th:first-child{color:var(–rep-text-muted);background:#fff;}
.dws-compare-table thead th:nth-child(2){background:#fef9ef;color:#6C5E1A;border-left:1px solid #e8e0c8;}
.dws-compare-table thead th:nth-child(3){background:rgba(65,153,159,.08);color:var(–rep-teal);border-left:1px solid rgba(65,153,159,.15);}
.dws-compare-table thead th:nth-child(3) span{font-size:1em;}
.dws-compare-table tbody tr:not(:last-child){border-bottom:1px solid var(–rep-border);}
.dws-compare-table tbody td{padding:16px 24px;font-size:.9rem;color:var(–rep-text-secondary);}
.dws-compare-table tbody td:first-child{font-weight:500;color:var(–rep-forest);}
.dws-compare-table tbody td:nth-child(2){background:#fffdf5;border-left:1px solid #e8e0c8;color:#7A6A2A;}
.dws-compare-table tbody td:nth-child(3){background:rgba(65,153,159,.03);border-left:1px solid rgba(65,153,159,.12);color:var(–rep-teal);font-weight:500;}
.dws-compare-table .yes{color:#2a7a4a;font-weight:600;}
.dws-compare-table .no{color:#b0443a;}
.dws-compare-table .ok{color:var(–rep-teal);font-weight:600;}
/* ===== 8. TESTIMONIOS ===== */
.dws-reviews{padding:88px 0;background:var(–rep-forest);overflow:hidden;position:relative;}
.dws-reviews::before{
content:»»;position:absolute;top:-30%;right:-10%;width:50%;height:80%;
background:radial-gradient(ellipse,rgba(65,153,159,.1) 0%,transparent 65%);
pointer-events:none;
}
.dws-reviews-head{text-align:center;margin-bottom:48px;position:relative;z-index:1;}
.dws-reviews-head .kicker–light{color:var(–rep-green);}
.dws-reviews-head h2{color:#fff;}
.dws-reviews-head p{color:rgba(255,255,255,.55);max-width:500px;margin:12px auto 0;}
/* Reviews reel (mismo patrón que homepage de Replanta) */
#reviews{position:relative;z-index:1;}
#reviews .container{max-width:1140px;margin:0 auto;padding:0 24px;}
#reviews .head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:36px;flex-wrap:wrap;}
#reviews .cta-all a{
display:inline-flex;align-items:center;gap:6px;
padding:10px 20px;border:1px solid rgba(255,255,255,.2);border-radius:var(–rep-radius-full);
color:rgba(255,255,255,.65);font:.6rem/1 var(–rep-font-body);font-size:.82rem;
transition:all .18s;
}
#reviews .cta-all a:hover{background:rgba(255,255,255,.08);color:#fff;}
.reel{width:100%;overflow:hidden;margin-bottom:20px;}
.track{display:flex;gap:16px;width:max-content;animation:reel-scroll 32s linear infinite;}
.track:hover,.track:focus-within{animation-play-state:paused;}
@keyframes reel-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.chunk{display:flex;gap:16px;}
.rv-card{
background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
border-radius:var(–rep-radius-lg);padding:22px;width:290px;flex-shrink:0;
transition:background .18s;
}
.rv-card:hover{background:rgba(255,255,255,.09);}
.rv-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.stars{color:var(–rep-sun);font-size:.95rem;letter-spacing:1px;}
.source{font:500 .7rem/1 var(–rep-font-body);color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.07em;}
.rv-card blockquote{font-size:.88rem;line-height:1.65;color:rgba(255,255,255,.75);margin:0 0 16px;}
.rv-card blockquote strong{color:#fff;}
.rv-bottom{display:flex;gap:10px;align-items:center;}
.avatar{width:32px;height:32px;border-radius:50%;background:var(–rep-teal);display:flex;align-items:center;justify-content:center;font:700 .75rem/1 var(–rep-font-body);color:#fff;flex-shrink:0;}
.name{font:600 .82rem/1.2 var(–rep-font-body);color:rgba(255,255,255,.8);}
.date{font:400 .7rem/1 var(–rep-font-body);color:rgba(255,255,255,.35);}
.row{margin-bottom:0;}
.row.reverse .track{animation-direction:reverse;}
/* ===== 9. CROSSLINKS Ecosistema ===== */
.dws-ecosystem{padding:90px 0;background:#fff;}
.dws-ecosystem-head{text-align:center;margin-bottom:52px;}
.dws-ecosystem-head h2{margin-bottom:12px;}
.dws-ecosystem-head p{color:var(–rep-text-muted);max-width:560px;margin:0 auto;}
.dws-eco-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.dws-eco-card{
border:1px solid var(–rep-border);border-radius:var(–rep-radius-xl);
padding:36px 32px;transition:all .25s;position:relative;overflow:hidden;
}
.dws-eco-card::after{
content:»»;position:absolute;inset:0;opacity:0;
background:linear-gradient(135deg,rgba(65,153,159,.05),rgba(147,241,201,.04));
transition:opacity .25s;pointer-events:none;
}
.dws-eco-card:hover{box-shadow:var(–rep-shadow-lg);transform:translateY(-4px);border-color:rgba(65,153,159,.25);}
.dws-eco-card:hover::after{opacity:1;}
.dws-eco-card .eco-icon{
width:56px;height:56px;border-radius:var(–rep-radius-md);
background:var(–rep-bg-light);display:flex;align-items:center;justify-content:center;
font-size:28px;color:var(–rep-teal);margin-bottom:20px;
}
.dws-eco-card h3{margin-bottom:10px;}
.dws-eco-card p{font-size:.92rem;color:var(–rep-text-muted);line-height:1.7;margin-bottom:20px;}
.dws-eco-card ul{display:flex;flex-direction:column;gap:6px;margin-bottom:24px;}
.dws-eco-card ul li{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(–rep-text-secondary);}
.dws-eco-card ul li::before{content:’✓’;color:var(–rep-teal);font-weight:700;flex-shrink:0;}
.dws-eco-card .eco-link{
display:inline-flex;align-items:center;gap:6px;
font:600 .88rem/1 var(–rep-font-body);color:var(–rep-teal);
transition:gap .18s;
}
.dws-eco-card .eco-link:hover{gap:10px;}
/* ===== 10. FAQs ===== */
.dws-faqs{padding:90px 0;background:var(–rep-bg-light);}
.dws-faqs-head{text-align:center;margin-bottom:52px;}
.dws-faqs-head h2{margin-bottom:12px;}
.dws-faqs-head p{color:var(–rep-text-muted);max-width:500px;margin:0 auto;}
.dws-faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.dws-faq{
border:1px solid var(–rep-border);border-radius:var(–rep-radius-lg);
background:#fff;overflow:hidden;
}
.dws-faq summary{
display:flex;align-items:center;justify-content:space-between;
padding:22px 28px;cursor:pointer;
font:600 .98rem/1.4 var(–rep-font-display);color:var(–rep-forest);
list-style:none;gap:16px;
transition:background .15s;
}
.dws-faq summary::-webkit-details-marker{display:none;}
.dws-faq summary:hover{background:var(–rep-bg-light);}
.dws-faq[open] summary{background:var(–rep-bg-light);}
.dws-faq .faq-icon{
width:28px;height:28px;border-radius:50%;
background:var(–rep-bg-light);border:1.5px solid var(–rep-border);
display:flex;align-items:center;justify-content:center;
font-size:14px;color:var(–rep-teal);flex-shrink:0;
transition:transform .25s;
}
.dws-faq[open] .faq-icon{transform:rotate(45deg);}
.dws-faq .faq-body{padding:0 28px 24px;border-top:1px solid var(–rep-border);}
.dws-faq .faq-body p{font-size:.95rem;line-height:1.75;color:var(–rep-text-secondary);padding-top:18px;margin:0;}
.dws-faq .faq-body p strong{color:var(–rep-forest);}
.dws-faq .faq-body a{color:var(–rep-teal);font-weight:600;}
/* ===== 11. CTA FINAL ===== */
.dws-cta-final{
padding:100px 0;
background:linear-gradient(160deg,#1A2B20 0%,#0F1C14 60%,#1A2B20 100%);
position:relative;overflow:hidden;
}
.dws-cta-final::before{
content:»»;position:absolute;inset:0;
background:url(«data:image/svg+xml,%3Csvg width=’80’ height=’80’ xmlns=’http://www.w3.org/2000/svg’%3E%3Ccircle cx=’1′ cy=’1′ r=’.8′ fill=’%2393F1C9′ opacity=’.03’/%3E%3C/svg%3E»);
}
.dws-cta-final .wrap{position:relative;z-index:1;text-align:center;}
.dws-cta-final .kicker–light{color:var(–rep-green);}
.dws-cta-final h2{color:#fff;margin-bottom:18px;max-width:640px;margin-left:auto;margin-right:auto;}
.dws-cta-final p{color:rgba(255,255,255,.6);max-width:540px;margin:0 auto 36px;font-size:1.05rem;line-height:1.75;}
.dws-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:28px;}
.dws-cta-final .trust-strip{
display:flex;gap:20px;justify-content:center;flex-wrap:wrap;
font:400 .78rem/1 var(–rep-font-body);color:rgba(255,255,255,.35);
}
.dws-cta-final .trust-strip span{display:flex;align-items:center;gap:5px;}
.dws-cta-final .trust-strip i{font-size:13px;color:var(–rep-green);}
.btn.btn-ghost{color:white;}
/* ── RESPONSIVE ── */
@media(max-width:1024px){
.dws-portfolio-grid{grid-template-columns:1fr 1fr;}
.dws-eco-grid{grid-template-columns:1fr;}
.dws-compare-table{overflow-x:auto;display:block;}
}
@media(max-width:640px){
.dws-portfolio-grid{grid-template-columns:1fr;}
.dws-portfolio-head{flex-direction:column;align-items:flex-start;}
.dws-faq summary{padding:18px 20px;font-size:.9rem;}
.dws-faq .faq-body{padding:0 20px 20px;}
}/* End custom CSS */