/*
  designvali.com | Digital Design Studio | Hamburg Germany
  Noir #0B0A09 + Warm Gold #C9A227 | Cormorant Garamond + Work Sans
  CENTERED-SPLIT navigation | Editorial hero | Numbered service list
  2x2 Portfolio grid | Horizontal pricing table | Magazine testimonials
  dvl- CSS prefix | Completely unique from all previous builds
*/
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,600;1,700&family=Work+Sans:wght@300;400;500;600&display=swap');

:root {
  --dvl-bg:      #0B0A09;
  --dvl-surf:    #141210;
  --dvl-surf2:   #1E1C18;
  --dvl-surf3:   #272420;
  --dvl-gold:    #C9A227;
  --dvl-gold2:   #E8BE4A;
  --dvl-goldt:   rgba(201,162,39,.1);
  --dvl-goldt2:  rgba(201,162,39,.2);
  --dvl-cream:   #F6F0E4;
  --dvl-white:   #FFFFFF;
  --dvl-mid:     rgba(255,255,255,.55);
  --dvl-muted:   rgba(255,255,255,.28);
  --dvl-border:  rgba(255,255,255,.07);
  --dvl-border2: rgba(255,255,255,.14);
  --dvl-max:     1200px;
  --dvl-r:       3px;
  --dvl-r2:      8px;
  --dvl-r3:      14px;
  --dvl-r4:      22px;
  --dvl-rp:      100px;
  --dvl-fh:      'Cormorant Garamond', Georgia, serif;
  --dvl-fb:      'Work Sans', system-ui, sans-serif;
  --dvl-ease:    all 0.18s cubic-bezier(.4,0,.2,1);
  --dvl-ish:     0 0 0 3px rgba(201,162,39,.2);
}

/* ===== RESET ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--dvl-bg);color:var(--dvl-white);font-family:var(--dvl-fb);font-size:1rem;line-height:1.74;overflow-x:hidden;}
img{display:block;max-width:100%;}a{color:inherit;text-decoration:none;}ul{list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
input,textarea,select{font-family:inherit;}address{font-style:normal;}

/* ===== TYPOGRAPHY ===== */
h1{font-family:var(--dvl-fh);font-size:clamp(3rem,6vw,7rem);line-height:1.0;letter-spacing:-.01em;font-weight:600;}
h2{font-family:var(--dvl-fh);font-size:clamp(2.4rem,4.5vw,5rem);line-height:1.04;letter-spacing:-.01em;font-weight:600;}
h3{font-family:var(--dvl-fh);font-size:1.4rem;font-weight:600;line-height:1.3;}
p{font-size:.95rem;line-height:1.82;color:var(--dvl-mid);}

/* ===== CONTAINERS ===== */
.dvl-hull{max-width:var(--dvl-max);margin:0 auto;padding:0 2.5rem;}
.dvl-slab{padding:7rem 0;}

/* ===== CENTERED SPLIT NAVIGATION (logo centered, links both sides) ===== */
.dvl-nav-shell{
  background:rgba(11,10,9,.9);backdrop-filter:blur(18px);
  border-bottom:1px solid var(--dvl-border);
  position:sticky;top:0;z-index:200;
  transition:background .2s;
}
.dvl-nav-shell.dvl-nav-opaque{background:var(--dvl-bg);}
.dvl-nav-inner{
  max-width:var(--dvl-max);margin:0 auto;padding:0 2.5rem;
  display:grid;grid-template-columns:1fr auto 1fr;
  height:72px;align-items:center;gap:1rem;
}
/* Left nav links */
.dvl-nav-left{display:flex;align-items:center;gap:.1rem;justify-content:flex-end;}
/* CENTERED BIGGER LOGO */
.dvl-logo{
  font-family:var(--dvl-fh);font-size:1.8rem;font-weight:700;
  color:var(--dvl-white);letter-spacing:-.01em;text-align:center;
  white-space:nowrap;transition:color .14s;
}
.dvl-logo span{color:var(--dvl-gold);}
.dvl-logo:hover{color:var(--dvl-cream);}
/* Right nav links */
.dvl-nav-right{display:flex;align-items:center;gap:.1rem;justify-content:flex-start;}
/* Nav link styling - bigger than body text */
.dvl-nav-a{
  font-family:var(--dvl-fb);font-size:1.0rem;font-weight:600;
  color:var(--dvl-muted);padding:.38rem .72rem;border-radius:var(--dvl-r2);
  transition:var(--dvl-ease);white-space:nowrap;
}
.dvl-nav-a:hover,.dvl-nav-a.dvl-on{color:var(--dvl-gold);}
/* Lang */
.dvl-lang-wrap{display:flex;align-items:center;gap:.14rem;}
.dvl-lang-a{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--dvl-muted);padding:.16rem .3rem;transition:color .14s;}
.dvl-lang-a:hover,.dvl-lang-a.dvl-lon{color:var(--dvl-gold);}
.dvl-lang-sep{color:var(--dvl-border2);font-size:.7rem;}
/* Start CTA */
.dvl-nav-cta{
  font-family:var(--dvl-fb);font-size:.9rem;font-weight:600;
  color:var(--dvl-bg);background:var(--dvl-gold);
  padding:.4rem 1.1rem;border-radius:var(--dvl-rp);
  transition:background .14s;white-space:nowrap;
  display:inline-flex;align-items:center;gap:.4rem;
}
.dvl-nav-cta:hover{background:var(--dvl-gold2);}
/* Hamburger */
.dvl-burger{display:none;width:40px;height:40px;border-radius:var(--dvl-r2);background:var(--dvl-surf2);color:var(--dvl-white);align-items:center;justify-content:center;}
/* Mobile overlay */
.dvl-mob-ov{position:fixed;inset:0;background:var(--dvl-bg);z-index:290;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;opacity:0;visibility:hidden;transition:all .22s;}
.dvl-mob-ov.dvl-mob-on{opacity:1;visibility:visible;}
.dvl-mob-cls{position:absolute;top:1.4rem;right:1.4rem;color:var(--dvl-muted);width:42px;height:42px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid var(--dvl-border2);border-radius:var(--dvl-rp);}
.dvl-mob-lnk{font-family:var(--dvl-fh);font-size:2.4rem;font-weight:600;color:rgba(255,255,255,.35);display:block;text-align:center;padding:.35rem;transition:color .14s;font-style:italic;}
.dvl-mob-lnk:hover{color:var(--dvl-gold);}
.dvl-mob-cta{font-family:var(--dvl-fb);font-size:1.1rem;font-weight:600;color:var(--dvl-bg);background:var(--dvl-gold);padding:.7rem 2.2rem;border-radius:var(--dvl-rp);margin-top:1.2rem;}

/* ===== HERO - editorial with large background number ===== */
.dvl-intro{
  background:var(--dvl-bg);padding:10rem 0 7rem;
  position:relative;overflow:hidden;
  border-bottom:1px solid var(--dvl-border);
}
/* HUGE DECORATIVE BACKGROUND NUMBER */
.dvl-intro-deco{
  position:absolute;top:-4rem;right:-1rem;
  font-family:var(--dvl-fh);font-size:clamp(14rem,30vw,32rem);
  font-weight:700;color:rgba(201,162,39,.04);
  line-height:1;pointer-events:none;user-select:none;z-index:0;
  letter-spacing:-.04em;
}
.dvl-intro-body{position:relative;z-index:1;max-width:var(--dvl-max);margin:0 auto;padding:0 2.5rem;display:grid;grid-template-columns:1fr 340px;gap:6rem;align-items:center;}
.dvl-intro-pre{font-family:var(--dvl-fb);font-size:.48rem;font-weight:600;text-transform:uppercase;letter-spacing:.32em;color:var(--dvl-gold);margin-bottom:1.4rem;display:flex;align-items:center;gap:.6rem;}
.dvl-intro-pre::after{content:'';flex:1;height:1px;background:var(--dvl-goldt2);}
.dvl-intro h1{color:var(--dvl-white);margin-bottom:.8rem;}
.dvl-intro h1 em{font-style:italic;color:var(--dvl-gold);}
.dvl-intro-sub{max-width:46ch;font-size:.96rem;margin-bottom:2rem;}
.dvl-intro-acts{display:flex;gap:.7rem;flex-wrap:wrap;}
/* Right: case preview cards */
.dvl-intro-cards{display:flex;flex-direction:column;gap:.8rem;}
.dvl-intro-card{display:block;overflow:hidden;border-radius:var(--dvl-r3);transition:transform .22s;}
.dvl-intro-card:hover{transform:translateY(-3px);}
.dvl-intro-card img{width:100%;height:170px;object-fit:cover;}
.dvl-intro-card-lb{padding:.5rem .9rem;background:var(--dvl-surf);border-top:1px solid var(--dvl-border);font-size:.54rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--dvl-gold);}

/* ===== MARQUEE ===== */
.dvl-marquee-band{background:var(--dvl-surf);border-top:1px solid var(--dvl-border);border-bottom:1px solid var(--dvl-border);padding:.85rem 0;overflow:hidden;}
.dvl-marquee-run{display:flex;gap:3rem;white-space:nowrap;animation:dvl-march 32s linear infinite;}
.dvl-marquee-wd{font-family:var(--dvl-fh);font-size:.9rem;font-weight:600;font-style:italic;color:rgba(255,255,255,.25);flex-shrink:0;}
.dvl-marquee-sep{color:var(--dvl-gold);font-size:1rem;}
@keyframes dvl-march{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ===== SERVICES - Editorial numbered list ===== */
.dvl-slist{display:flex;flex-direction:column;}
.dvl-slist-row{
  display:grid;grid-template-columns:80px 280px 1fr auto;
  gap:0;align-items:center;
  border-bottom:1px solid var(--dvl-border);
  padding:2rem 0;transition:background .16s;cursor:default;
}
.dvl-slist-row:hover{background:var(--dvl-surf);}
.dvl-slist-row:first-child{border-top:1px solid var(--dvl-border);}
.dvl-slist-num{font-family:var(--dvl-fh);font-size:1rem;font-weight:400;color:var(--dvl-muted);padding-left:.5rem;}
.dvl-slist-img{height:70px;width:260px;overflow:hidden;border-radius:var(--dvl-r2);}
.dvl-slist-img img{width:100%;height:100%;object-fit:cover;}
.dvl-slist-txt{padding:0 2rem;}
.dvl-slist-nm{font-family:var(--dvl-fh);font-size:1.5rem;font-weight:600;color:var(--dvl-white);margin-bottom:.2rem;transition:color .14s;}
.dvl-slist-row:hover .dvl-slist-nm{color:var(--dvl-gold);}
.dvl-slist-desc{font-size:.84rem;color:var(--dvl-muted);max-width:48ch;}
.dvl-slist-end{padding-right:.5rem;text-align:right;}
.dvl-slist-price{font-family:var(--dvl-fh);font-size:.96rem;font-weight:600;color:var(--dvl-gold);display:block;margin-bottom:.3rem;}

/* ===== PORTFOLIO - 2x2 grid with hover overlay ===== */
.dvl-port-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;}
.dvl-port-item{position:relative;overflow:hidden;border-radius:var(--dvl-r4);aspect-ratio:4/3;cursor:pointer;}
.dvl-port-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.dvl-port-item:hover img{transform:scale(1.06);}
.dvl-port-over{
  position:absolute;inset:0;
  background:linear-gradient(to top, rgba(11,10,9,.9) 0%, transparent 55%);
  opacity:0;transition:opacity .28s;
  display:flex;flex-direction:column;justify-content:flex-end;padding:1.8rem;
}
.dvl-port-item:hover .dvl-port-over{opacity:1;}
.dvl-port-over-type{font-size:.48rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--dvl-gold);margin-bottom:.3rem;}
.dvl-port-over-nm{font-family:var(--dvl-fh);font-size:1.3rem;font-weight:600;color:var(--dvl-white);}
.dvl-port-wide{grid-column:1/-1;aspect-ratio:16/6;}

/* ===== NUMBERS STRIP ===== */
.dvl-nums-strip{background:var(--dvl-surf);border-top:1px solid var(--dvl-border);border-bottom:1px solid var(--dvl-border);padding:2rem 0;}
.dvl-nums-row{max-width:var(--dvl-max);margin:0 auto;padding:0 2.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
.dvl-nums-item{text-align:center;}
.dvl-nums-n{font-family:var(--dvl-fh);font-size:3.5rem;font-weight:700;color:var(--dvl-gold);line-height:1;}
.dvl-nums-l{font-size:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--dvl-muted);margin-top:.4rem;}

/* ===== PROCESS ===== */
.dvl-proc-section{background:var(--dvl-cream);}
.dvl-proc-inner{max-width:var(--dvl-max);margin:0 auto;padding:7rem 2.5rem;}
.dvl-proc-pre{font-family:var(--dvl-fb);font-size:.48rem;font-weight:600;text-transform:uppercase;letter-spacing:.28em;color:var(--dvl-surf2);display:block;margin-bottom:.7rem;}
.dvl-proc-inner h2{color:var(--dvl-surf);margin-bottom:3.5rem;}
.dvl-proc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
.dvl-proc-card{border-top:2px solid var(--dvl-surf);padding-top:1.4rem;}
.dvl-proc-card-num{font-family:var(--dvl-fh);font-size:2.4rem;font-weight:600;color:rgba(30,28,24,.2);line-height:1;margin-bottom:.7rem;}
.dvl-proc-card-nm{font-family:var(--dvl-fh);font-size:1rem;font-weight:600;color:var(--dvl-surf2);margin-bottom:.4rem;}
.dvl-proc-card-txt{font-size:.82rem;color:rgba(30,28,24,.6);line-height:1.72;}

/* ===== TESTIMONIALS - Magazine quote format ===== */
.dvl-testi-section{background:var(--dvl-bg);}
.dvl-testi-featured{border-left:3px solid var(--dvl-gold);padding:2.5rem 3rem;margin-bottom:3rem;}
.dvl-testi-big-q{font-family:var(--dvl-fh);font-size:clamp(1.6rem,3vw,2.8rem);font-style:italic;font-weight:400;color:var(--dvl-white);line-height:1.3;margin-bottom:1.2rem;max-width:60ch;}
.dvl-testi-big-who{font-family:var(--dvl-fb);font-size:.82rem;font-weight:500;color:var(--dvl-gold);}
.dvl-testi-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
.dvl-testi-sm{background:var(--dvl-surf);border-radius:var(--dvl-r3);padding:1.6rem;}
.dvl-testi-sm-q{font-size:.9rem;color:var(--dvl-mid);line-height:1.78;font-style:italic;margin-bottom:.8rem;}
.dvl-testi-sm-who{font-family:var(--dvl-fb);font-size:.76rem;font-weight:600;color:var(--dvl-gold);}

/* ===== PRICING - HORIZONTAL TABLE (unique!) ===== */
.dvl-ptbl-wrap{overflow:auto;}
.dvl-ptbl{
  width:100%;min-width:640px;
  border:1px solid var(--dvl-border2);border-radius:var(--dvl-r4);
  overflow:hidden;
}
.dvl-ptbl-row{display:grid;grid-template-columns:200px repeat(3,1fr);}
.dvl-ptbl-cell{
  padding:1rem 1.4rem;
  border-right:1px solid var(--dvl-border);
  border-bottom:1px solid var(--dvl-border);
  background:var(--dvl-surf);
}
.dvl-ptbl-cell:last-child{border-right:none;}
.dvl-ptbl-row:last-child .dvl-ptbl-cell{border-bottom:none;}
.dvl-ptbl-head .dvl-ptbl-cell{background:var(--dvl-surf2);font-family:var(--dvl-fh);font-size:1.1rem;font-weight:600;color:var(--dvl-white);}
.dvl-ptbl-feat.dvl-ptbl-cell,.dvl-ptbl-head .dvl-ptbl-feat{background:var(--dvl-gold);color:var(--dvl-bg);}
.dvl-ptbl-head .dvl-ptbl-feat{color:var(--dvl-bg);}
.dvl-ptbl-price-cell{font-family:var(--dvl-fh);font-size:1.6rem;font-weight:700;color:var(--dvl-gold);}
.dvl-ptbl-feat .dvl-ptbl-price-cell{color:var(--dvl-bg);}
.dvl-ptbl-lbl{font-size:.8rem;color:var(--dvl-muted);font-weight:500;}
.dvl-ptbl-feat .dvl-ptbl-lbl{color:rgba(11,10,9,.5);}
.dvl-ptbl-check{color:var(--dvl-gold);}
.dvl-ptbl-feat .dvl-ptbl-check{color:var(--dvl-bg);}
.dvl-ptbl-row.dvl-ptbl-cta .dvl-ptbl-cell{padding:.9rem 1.4rem;}

/* ===== FAQ - large type accordion ===== */
.dvl-faq-list{max-width:840px;margin:0 auto;}
.dvl-faq-it{border-bottom:1px solid var(--dvl-border);}
.dvl-faq-it:first-child{border-top:1px solid var(--dvl-border);}
.dvl-faq-btn{width:100%;display:flex;align-items:center;gap:1rem;padding:1.4rem 0;cursor:pointer;background:none;border:none;text-align:left;}
.dvl-faq-q{font-family:var(--dvl-fh);font-size:1.1rem;font-weight:600;color:var(--dvl-white);flex:1;line-height:1.3;transition:color .14s;}
.dvl-faq-tog{color:var(--dvl-gold);flex-shrink:0;transition:transform .18s;}
.dvl-faq-it.dvl-faq-open .dvl-faq-tog{transform:rotate(45deg);}
.dvl-faq-it.dvl-faq-open .dvl-faq-q{color:var(--dvl-gold);}
.dvl-faq-ans{display:none;padding:.2rem 0 1.2rem;}
.dvl-faq-ans p{font-size:.92rem;color:var(--dvl-mid);max-width:62ch;}

/* ===== CTA BAND - light cream (opposite of dark sites) ===== */
.dvl-cta-band{background:var(--dvl-cream);}
.dvl-cta-inner{max-width:var(--dvl-max);margin:0 auto;padding:7rem 2.5rem;display:grid;grid-template-columns:1fr auto;gap:4rem;align-items:center;}
.dvl-cta-h2{font-family:var(--dvl-fh);font-size:clamp(2rem,4vw,4rem);font-weight:600;color:var(--dvl-surf);line-height:1.1;letter-spacing:-.01em;}
.dvl-cta-sub{font-size:.96rem;color:rgba(30,28,24,.5);margin-top:.5rem;max-width:44ch;}

/* ===== SECTION LABEL ===== */
.dvl-pre{font-family:var(--dvl-fb);font-size:.48rem;font-weight:600;text-transform:uppercase;letter-spacing:.28em;color:var(--dvl-gold);display:block;margin-bottom:.7rem;}

/* ===== BUTTONS ===== */
.dvl-btn-gold{display:inline-flex;align-items:center;gap:.44rem;font-family:var(--dvl-fb);font-size:.96rem;font-weight:600;color:var(--dvl-bg);background:var(--dvl-gold);padding:.7rem 1.9rem;border-radius:var(--dvl-rp);transition:background .14s;border:none;cursor:pointer;white-space:nowrap;}
.dvl-btn-gold:hover{background:var(--dvl-gold2);}
.dvl-btn-ghost{display:inline-flex;align-items:center;gap:.44rem;font-family:var(--dvl-fb);font-size:.96rem;font-weight:600;color:var(--dvl-white);background:transparent;padding:.68rem 1.9rem;border-radius:var(--dvl-rp);border:1px solid var(--dvl-border2);transition:var(--dvl-ease);white-space:nowrap;}
.dvl-btn-ghost:hover{border-color:var(--dvl-gold);color:var(--dvl-gold);}
.dvl-btn-dark{display:inline-flex;align-items:center;gap:.44rem;font-family:var(--dvl-fb);font-size:.96rem;font-weight:600;color:var(--dvl-gold);background:var(--dvl-surf2);padding:.7rem 1.9rem;border-radius:var(--dvl-rp);border:none;cursor:pointer;transition:opacity .14s;white-space:nowrap;}
.dvl-btn-dark:hover{opacity:.8;}
.dvl-btn-sm-g{display:inline-flex;align-items:center;gap:.36rem;font-family:var(--dvl-fb);font-size:.88rem;font-weight:600;color:var(--dvl-bg);background:var(--dvl-gold);padding:.44rem 1.1rem;border-radius:var(--dvl-rp);border:none;cursor:pointer;transition:background .14s;white-space:nowrap;}
.dvl-btn-sm-g:hover{background:var(--dvl-gold2);}
.dvl-btn-sm-o{display:inline-flex;align-items:center;gap:.36rem;font-family:var(--dvl-fb);font-size:.88rem;font-weight:600;color:var(--dvl-gold);background:transparent;padding:.42rem 1.1rem;border-radius:var(--dvl-rp);border:1px solid var(--dvl-border2);transition:var(--dvl-ease);white-space:nowrap;}
.dvl-btn-sm-o:hover{border-color:var(--dvl-gold);}
.dvl-btn-cream{display:inline-flex;align-items:center;gap:.44rem;font-family:var(--dvl-fb);font-size:.96rem;font-weight:600;color:var(--dvl-surf);background:var(--dvl-surf);padding:.7rem 1.9rem;border-radius:var(--dvl-rp);border:none;cursor:pointer;transition:opacity .14s;white-space:nowrap;background:var(--dvl-cream);}
.dvl-btn-cream:hover{opacity:.85;}

/* ===== PAGE CAP ===== */
.dvl-pagecap{background:var(--dvl-surf);border-bottom:1px solid var(--dvl-border);padding:8rem 0 4rem;}
.dvl-pagecap-in{max-width:var(--dvl-max);margin:0 auto;padding:0 2.5rem;text-align:center;}
.dvl-pagecap h1{color:var(--dvl-white);max-width:18ch;margin:0 auto;}
.dvl-pagecap h1 em{color:var(--dvl-gold);}
.dvl-pagecap-sub{color:var(--dvl-muted);max-width:52ch;margin:.8rem auto 0;}

/* ===== FORMS ===== */
.dvl-fg{margin-bottom:.7rem;}
.dvl-fl{display:block;font-family:var(--dvl-fb);font-size:.44rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--dvl-muted);margin-bottom:.3rem;}
.dvl-fi{width:100%;background:var(--dvl-surf2);border:1px solid var(--dvl-border2);border-radius:var(--dvl-r2);padding:.72rem 1rem;color:var(--dvl-white);font-size:.94rem;transition:border-color .14s;}
.dvl-fi:focus{outline:none;border-color:var(--dvl-gold);box-shadow:var(--dvl-ish);}
.dvl-agree{display:flex;align-items:flex-start;gap:.5rem;font-size:.82rem;color:var(--dvl-muted);margin:1rem 0;line-height:1.6;}
.dvl-agree input{margin-top:.14rem;accent-color:var(--dvl-gold);}
.dvl-agree a{color:var(--dvl-gold);}

/* ===== CHECKOUT LAYOUT ===== */
.dvl-checkout-wrap{max-width:var(--dvl-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 290px;gap:4rem;align-items:start;}
.dvl-co-recap{background:var(--dvl-surf);border:1px solid var(--dvl-border2);border-radius:var(--dvl-r3);overflow:hidden;position:sticky;top:90px;}
.dvl-recap-hd{padding:.8rem 1.2rem;border-bottom:1px solid var(--dvl-border);background:var(--dvl-surf2);}
.dvl-recap-hl{font-family:var(--dvl-fb);font-size:.44rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--dvl-muted);}
.dvl-recap-body{padding:.9rem 1.2rem;}
.dvl-recap-ln{display:flex;justify-content:space-between;gap:.5rem;font-size:.82rem;margin-bottom:.4rem;}
.dvl-recap-lnm{color:var(--dvl-muted);}
.dvl-recap-lpr{font-family:var(--dvl-fh);font-weight:700;color:var(--dvl-gold);}
.dvl-recap-div{border:none;border-top:1px solid var(--dvl-border);margin:.6rem 0;}
.dvl-recap-tot{display:flex;justify-content:space-between;align-items:flex-end;}
.dvl-recap-totl{font-size:.44rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--dvl-muted);}
.dvl-recap-totv{font-family:var(--dvl-fh);font-size:2rem;font-weight:700;color:var(--dvl-gold);}

/* ===== BUILDER ===== */
.dvl-builder-wrap{max-width:var(--dvl-max);margin:0 auto;padding:4rem 2.5rem 8rem;display:grid;grid-template-columns:1fr 290px;gap:4rem;align-items:start;}
.dvl-build-group{margin-bottom:2rem;}
.dvl-build-label{display:block;font-family:var(--dvl-fb);font-size:.46rem;font-weight:600;text-transform:uppercase;letter-spacing:.24em;color:var(--dvl-gold);margin-bottom:.9rem;}
.dvl-pkg-row{background:var(--dvl-surf);border:1px solid var(--dvl-border);border-radius:var(--dvl-r2);padding:.88rem 1rem;display:flex;align-items:center;gap:.7rem;cursor:pointer;user-select:none;transition:var(--dvl-ease);margin-bottom:.44rem;}
.dvl-pkg-row:hover{border-color:var(--dvl-border2);}
.dvl-pkg-row.dvl-picked{border-color:var(--dvl-gold);background:var(--dvl-goldt);}
.dvl-pkg-dot{width:16px;height:16px;border:1px solid var(--dvl-border2);border-radius:var(--dvl-r);flex-shrink:0;transition:var(--dvl-ease);}
.dvl-pkg-row.dvl-picked .dvl-pkg-dot{background:var(--dvl-gold);border-color:var(--dvl-gold);}
.dvl-pkg-nm{font-size:.88rem;color:var(--dvl-muted);flex:1;}
.dvl-pkg-row.dvl-picked .dvl-pkg-nm{color:var(--dvl-white);font-weight:600;}
.dvl-pkg-pr{font-family:var(--dvl-fh);font-size:.84rem;font-weight:700;color:var(--dvl-gold);white-space:nowrap;}
.dvl-chip-wrap{display:flex;flex-wrap:wrap;gap:.5rem;}
.dvl-adn-chip{background:var(--dvl-surf);border:1px solid var(--dvl-border2);border-radius:var(--dvl-rp);padding:.44rem 1rem;cursor:pointer;user-select:none;transition:var(--dvl-ease);}
.dvl-adn-chip.dvl-chip-sel{border-color:var(--dvl-gold);background:var(--dvl-goldt);}
.dvl-chip-nm{font-size:.82rem;font-weight:600;color:var(--dvl-muted);}
.dvl-adn-chip.dvl-chip-sel .dvl-chip-nm{color:var(--dvl-white);}
.dvl-chip-pr{font-size:.62rem;color:var(--dvl-muted);margin-top:.1rem;}
.dvl-adn-chip.dvl-chip-sel .dvl-chip-pr{color:var(--dvl-gold);}
.dvl-hrs-box{background:var(--dvl-surf);border:1px solid var(--dvl-border2);border-radius:var(--dvl-r2);padding:1rem 1.1rem;}
.dvl-hrs-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem;}
.dvl-hrs-lbl{font-size:.88rem;color:var(--dvl-muted);}
.dvl-hrs-val{font-family:var(--dvl-fh);font-size:1.8rem;font-weight:700;color:var(--dvl-gold);}
.dvl-hrs-range{-webkit-appearance:none;width:100%;height:3px;background:var(--dvl-border2);border-radius:2px;cursor:pointer;}
.dvl-hrs-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--dvl-gold);border:2px solid var(--dvl-bg);cursor:pointer;}
.dvl-hrs-note{font-size:.64rem;color:var(--dvl-muted);margin-top:.5rem;}
/* Receipt */
.dvl-receipt{background:var(--dvl-surf2);border:1px solid var(--dvl-border2);border-radius:var(--dvl-r3);overflow:hidden;position:sticky;top:90px;}
.dvl-rcpt-hd{padding:.8rem 1.2rem;border-bottom:1px solid var(--dvl-border);}
.dvl-rcpt-hl{font-family:var(--dvl-fb);font-size:.44rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--dvl-muted);}
.dvl-rcpt-body{padding:.9rem 1.2rem;min-height:70px;}
.dvl-rcpt-empty{font-size:.78rem;color:var(--dvl-muted);font-style:italic;}
.dvl-rcpt-ln{display:flex;justify-content:space-between;gap:.5rem;font-size:.8rem;margin-bottom:.4rem;}
.dvl-rcpt-lnm{color:var(--dvl-muted);}
.dvl-rcpt-lnp{font-family:var(--dvl-fh);font-weight:700;color:var(--dvl-gold);}
.dvl-rcpt-ft{border-top:1px solid var(--dvl-border);padding:.9rem 1.2rem;}
.dvl-rcpt-tot{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:.9rem;}
.dvl-rcpt-totl{font-size:.44rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--dvl-muted);}
.dvl-rcpt-totv{font-family:var(--dvl-fh);font-size:2.4rem;font-weight:700;color:var(--dvl-gold);}
.dvl-rcpt-go{display:block;width:100%;background:var(--dvl-gold);color:var(--dvl-bg);font-family:var(--dvl-fb);font-size:.92rem;font-weight:600;padding:.76rem;border-radius:var(--dvl-rp);border:none;cursor:pointer;transition:background .14s;}
.dvl-rcpt-go:hover:not(:disabled){background:var(--dvl-gold2);}
.dvl-rcpt-go:disabled{opacity:.2;cursor:not-allowed;}

/* ===== SERVICE DETAIL ===== */
.dvl-svc-detail{max-width:var(--dvl-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 260px;gap:5rem;align-items:start;}
.dvl-svc-body h2{font-family:var(--dvl-fh);font-size:1.3rem;font-weight:600;color:var(--dvl-gold);margin:2.5rem 0 .5rem;}
.dvl-svc-body p{margin-bottom:.9rem;}
.dvl-deliv-it{display:flex;align-items:flex-start;gap:.44rem;font-size:.9rem;color:var(--dvl-mid);margin-bottom:.36rem;}
.dvl-deliv-it svg{color:var(--dvl-gold);flex-shrink:0;margin-top:.1rem;}
.dvl-svc-aside{position:sticky;top:90px;}
.dvl-aside-box{background:var(--dvl-surf);border:1px solid var(--dvl-border2);border-radius:var(--dvl-r3);overflow:hidden;}
.dvl-aside-top{padding:1.4rem;border-bottom:1px solid var(--dvl-border);}
.dvl-aside-from{font-size:.44rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--dvl-muted);margin-bottom:.3rem;}
.dvl-aside-price{font-family:var(--dvl-fh);font-size:1.5rem;font-weight:700;color:var(--dvl-gold);margin-bottom:.9rem;}
.dvl-aside-img img{width:100%;height:100px;object-fit:cover;display:block;}
.dvl-other-h{font-size:.42rem;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--dvl-muted);padding:1rem 1.4rem .5rem;}
.dvl-other-lk{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--dvl-muted);padding:.4rem 1.4rem;border-top:1px solid var(--dvl-border);transition:color .14s;font-family:var(--dvl-fh);font-style:italic;}
.dvl-other-lk:hover{color:var(--dvl-gold);}

/* ===== LEGAL / IMPRESSUM ===== */
.dvl-legal-wrap{max-width:820px;margin:0 auto;padding:5rem 2.5rem 8rem;}
.dvl-legal-eff{display:inline-block;font-size:.72rem;color:var(--dvl-muted);background:var(--dvl-surf2);border:1px solid var(--dvl-border);padding:.24rem .8rem;border-radius:var(--dvl-rp);margin-bottom:1.6rem;}
.dvl-legal-wrap h2{font-family:var(--dvl-fh);font-size:1.3rem;font-weight:600;color:var(--dvl-gold);margin:2.8rem 0 .6rem;font-style:italic;}
.dvl-legal-wrap h3{font-family:var(--dvl-fh);font-size:1rem;font-weight:600;color:var(--dvl-white);margin:1.4rem 0 .4rem;}
.dvl-legal-wrap p,.dvl-legal-wrap li{font-size:.9rem;color:var(--dvl-mid);line-height:1.78;margin-bottom:.9rem;}
.dvl-legal-wrap ul{padding-left:1.4rem;margin:.5rem 0 .9rem;}
.dvl-legal-wrap li{list-style:disc;}
.dvl-legal-wrap a{color:var(--dvl-gold);}
.dvl-legal-addr{background:var(--dvl-surf2);border-left:3px solid var(--dvl-gold);padding:.9rem 1.2rem;font-size:.88rem;color:var(--dvl-mid);line-height:1.9;margin:.9rem 0;border-radius:0 var(--dvl-r) var(--dvl-r) 0;}

/* ===== FOOTER ===== */
.dvl-footer-shell{background:var(--dvl-surf);}
.dvl-footer-main{max-width:var(--dvl-max);margin:0 auto;padding:4.5rem 2.5rem 2rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;}
/* BIGGER footer logo */
.dvl-foot-logo{font-family:var(--dvl-fh);font-size:1.8rem;font-weight:700;color:var(--dvl-white);letter-spacing:-.01em;margin-bottom:.4rem;font-style:italic;}
.dvl-foot-logo span{color:var(--dvl-gold);}
.dvl-foot-tag{font-size:.76rem;color:var(--dvl-muted);line-height:1.7;max-width:28ch;margin-bottom:1rem;}
.dvl-foot-soc{display:flex;gap:.4rem;}
.dvl-foot-soc a{width:32px;height:32px;border:1px solid var(--dvl-border);border-radius:var(--dvl-r2);display:flex;align-items:center;justify-content:center;color:var(--dvl-muted);transition:var(--dvl-ease);}
.dvl-foot-soc a:hover{border-color:var(--dvl-gold);color:var(--dvl-gold);}
.dvl-foot-col-h{font-size:.42rem;font-weight:600;text-transform:uppercase;letter-spacing:.28em;color:var(--dvl-muted);margin-bottom:.9rem;}
.dvl-foot-nav{display:flex;flex-direction:column;gap:.5rem;}
.dvl-foot-nav a{font-size:.82rem;color:var(--dvl-muted);transition:color .14s;}
.dvl-foot-nav a:hover{color:var(--dvl-gold);}
.dvl-foot-ct a{display:flex;align-items:flex-start;gap:.4rem;font-size:.8rem;color:var(--dvl-muted);margin-bottom:.5rem;transition:color .14s;}
.dvl-foot-ct a:hover{color:var(--dvl-gold);}
.dvl-foot-ct svg{color:var(--dvl-muted);flex-shrink:0;margin-top:.06rem;}
.dvl-footer-btm{border-top:1px solid var(--dvl-border);max-width:var(--dvl-max);margin:0 auto;padding:1rem 2.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;}
.dvl-foot-copy{font-size:.62rem;color:var(--dvl-muted);}
.dvl-foot-legal{display:flex;gap:1.2rem;flex-wrap:wrap;}
.dvl-foot-legal a{font-size:.62rem;color:var(--dvl-muted);transition:color .14s;}
.dvl-foot-legal a:hover{color:var(--dvl-gold);}
.dvl-foot-lang{display:flex;align-items:center;gap:.4rem;}
.dvl-foot-lang a{font-size:.62rem;font-weight:600;color:var(--dvl-muted);transition:color .14s;}
.dvl-foot-lang a:hover,.dvl-foot-lang a.dvl-lon{color:var(--dvl-gold);}

/* ===== COOKIE + CHAT ===== */
.dvl-cookie-bar{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--dvl-surf2);border-top:2px solid var(--dvl-gold);padding:1rem 2.5rem;display:none;align-items:center;gap:1.5rem;justify-content:space-between;flex-wrap:wrap;}
.dvl-cookie-bar p{font-size:.8rem;color:var(--dvl-muted);margin:0;}
.dvl-cookie-bar a{color:var(--dvl-gold);}
.dvl-ck-btns{display:flex;gap:.5rem;flex-shrink:0;}
.dvl-ck-yes{background:var(--dvl-gold);color:var(--dvl-bg);font-family:var(--dvl-fb);font-size:.82rem;font-weight:600;padding:.4rem 1rem;border-radius:var(--dvl-r);cursor:pointer;border:none;}
.dvl-ck-no{background:transparent;color:var(--dvl-muted);font-family:var(--dvl-fb);font-size:.82rem;padding:.4rem 1rem;border:1px solid var(--dvl-border2);border-radius:var(--dvl-r);cursor:pointer;}
.dvl-chat-fab{position:fixed;bottom:4.5rem;right:1.5rem;z-index:9990;width:56px;height:56px;background:var(--dvl-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;box-shadow:0 6px 24px rgba(201,162,39,.3);transition:var(--dvl-ease);}
.dvl-chat-fab:hover{background:var(--dvl-gold2);transform:scale(1.06);}
.dvl-chatpop{position:fixed;bottom:7.8rem;right:1.5rem;z-index:9989;width:278px;background:var(--dvl-surf);border:1px solid var(--dvl-border2);border-radius:var(--dvl-r3);box-shadow:0 20px 60px rgba(0,0,0,.5);opacity:0;pointer-events:none;transform:translateY(8px) scale(.97);transition:opacity .2s,transform .22s;overflow:hidden;}
.dvl-chatpop.dvl-cp-on{opacity:1;pointer-events:auto;transform:none;}
.dvl-chatpop-hd{background:var(--dvl-gold);padding:.8rem 1.1rem;display:flex;align-items:center;justify-content:space-between;}
.dvl-chatpop-nm{font-family:var(--dvl-fh);font-size:.95rem;font-weight:700;color:var(--dvl-bg);font-style:italic;}
.dvl-chat-done{display:none;text-align:center;padding:.9rem;font-family:var(--dvl-fh);font-size:.9rem;font-weight:600;color:var(--dvl-gold);}
.dvl-chat-inp{width:100%;background:var(--dvl-surf2);border:1px solid var(--dvl-border2);border-radius:var(--dvl-r);padding:.5rem .8rem;font-size:.84rem;color:var(--dvl-white);margin-bottom:.36rem;resize:none;transition:border-color .14s;}
.dvl-chat-inp:focus{outline:none;border-color:var(--dvl-gold);}
.dvl-chat-send{width:100%;background:var(--dvl-gold);color:var(--dvl-bg);font-family:var(--dvl-fb);font-size:.86rem;font-weight:600;padding:.5rem;border-radius:var(--dvl-rp);border:none;cursor:pointer;}

/* ===== REVEAL ANIMATION ===== */
.dvl-reveal{opacity:0;transform:translateY(16px);transition:opacity .44s,transform .44s;}
.dvl-reveal.dvl-in{opacity:1;transform:none;}

/* ===== RESULT PAGE ===== */
.dvl-result-pg{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:6rem 2.5rem;}

/* ===== ABOUT PAGE ===== */
.dvl-about-cols{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;}
.dvl-about-img{border-radius:var(--dvl-r4);overflow:hidden;}
.dvl-about-img img{width:100%;height:420px;object-fit:cover;}

/* ===== CONTACT ===== */
.dvl-contact-cols{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;}

/* ===== RESPONSIVE ===== */
@media(max-width:1024px){
  .dvl-nav-left,.dvl-nav-right,.dvl-lang-wrap,.dvl-nav-cta{display:none;}
  .dvl-burger{display:flex;}
  .dvl-nav-inner{grid-template-columns:1fr auto;}
  .dvl-logo{text-align:left;}
  .dvl-intro-body{grid-template-columns:1fr;}
  .dvl-intro-cards{display:none;}
  .dvl-slist-row{grid-template-columns:50px 1fr auto;}
  .dvl-slist-img{display:none;}
  .dvl-proc-steps{grid-template-columns:1fr 1fr;}
  .dvl-testi-row{grid-template-columns:1fr;}
  .dvl-footer-main{grid-template-columns:1fr 1fr;}
  .dvl-cta-inner{grid-template-columns:1fr;}
  .dvl-checkout-wrap,.dvl-builder-wrap,.dvl-svc-detail{grid-template-columns:1fr;}
  .dvl-about-cols,.dvl-contact-cols{grid-template-columns:1fr;}
  .dvl-port-grid{grid-template-columns:1fr;}
  .dvl-port-wide{grid-column:1;}
  .dvl-nums-row{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:640px){
  .dvl-hull{padding:0 1.5rem;}
  .dvl-footer-main{grid-template-columns:1fr;padding:3rem 1.5rem 1.5rem;}
  .dvl-footer-btm{padding:1rem 1.5rem;flex-direction:column;align-items:flex-start;}
  h1{font-size:clamp(2.4rem,8vw,4rem);}
  h2{font-size:clamp(2rem,7vw,3.5rem);}
  .dvl-proc-steps{grid-template-columns:1fr;}
  .dvl-nums-row{grid-template-columns:1fr 1fr;}
  .dvl-slist-row{grid-template-columns:1fr;}
  .dvl-slist-num{display:none;}
}
