:root{--red:#ad1526;--ink:#191e28;--muted:#616874;--soft:#f5f3f1;--line:#e4dfda}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:var(--ink);line-height:1.65}.container{width:min(1180px,calc(100% - 40px));margin:auto}h1,h2,h3{line-height:1.12}h1{font-size:clamp(3rem,6vw,5.4rem);letter-spacing:-.05em;margin:.15em 0}h2{font-size:clamp(2.1rem,4vw,3.4rem);letter-spacing:-.04em}p{color:var(--muted)}small{color:var(--red);font-weight:700;letter-spacing:.15em}.section{padding:105px 0}.soft{background:var(--soft)}header{position:fixed;z-index:20;width:100%;background:rgba(255,255,255,.96);box-shadow:0 2px 20px #0001}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.logo img{height:58px;width:auto;display:block}nav{display:flex;gap:24px;align-items:center}nav a{text-decoration:none;color:var(--ink);font-weight:700;font-size:.9rem}.btn{display:inline-block;background:var(--red);border:0;color:white!important;padding:13px 20px;text-decoration:none;font-weight:700;cursor:pointer}#menu{display:none}.hero{height:820px;position:relative;display:flex;align-items:flex-end;padding-bottom:90px;color:white}.hero>img,.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.shade{background:linear-gradient(90deg,#101621eF,#101621A5 58%,transparent)}.hero-copy{position:relative;z-index:2}.hero-copy h1{max-width:950px}.hero-copy p{color:#eee;max-width:700px;font-size:1.16rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.lead{font-size:1.3rem;color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px;border-left:1px solid var(--line);border-top:1px solid var(--line)}.cards article{background:white;padding:34px;min-height:270px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.cards b{color:var(--red)}.feature{width:100%;height:630px;object-fit:cover}ol{padding-left:22px}ol li{padding:12px 0}.twocards{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:40px}.twocards article{background:white;padding-bottom:25px}.twocards img{width:100%;height:350px;object-fit:cover}.twocards h3,.twocards p{margin-left:28px;margin-right:28px}.client-image{margin-top:35px;background:white;border:1px solid var(--line);padding:24px}.client-image img{display:block;width:100%;height:auto}.contact{background:#941220;color:white}.contact h2{color:white}.contact p,.contact small{color:#f3ccd1}.contact a{color:white;font-weight:700}form{background:white;padding:30px;display:grid;gap:14px}input,textarea{padding:14px;border:1px solid #ddd;font:inherit}footer{background:#111722;padding:28px 0;color:#aeb5c0}.foot{display:flex;align-items:center;justify-content:space-between}.foot img{height:62px;width:auto}footer i{font-style:normal}@media(max-width:900px){nav{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:25px;flex-direction:column}nav.open{display:flex}#menu{display:block}.split,.twocards{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.hero{height:720px}.feature{height:480px}}@media(max-width:600px){.section{padding:70px 0}.cards{grid-template-columns:1fr}.logo img{height:47px}.foot{flex-direction:column;gap:20px}.client-image{padding:10px}}
/* Exact high-resolution PraVaVe logo supplied by the client */
.logo{display:flex;align-items:center;max-width:390px;overflow:hidden}
.logo img{display:block;width:auto;height:64px;max-width:100%;object-fit:contain;object-position:left center}
.foot img{display:block;width:auto;height:72px;max-width:min(520px,65vw);object-fit:contain;object-position:left center}
@media(max-width:600px){.logo{max-width:260px}.logo img{height:48px}.foot img{height:auto;width:min(430px,90vw);max-width:90vw}}
/* Mobile header logo correction: keep the full supplied logo confined to the left logo area */
@media(max-width:600px){
  header .nav{height:64px;gap:10px}
  header .logo{width:190px;max-width:calc(100% - 78px);height:50px;overflow:hidden;flex:0 1 190px}
  header .logo img{width:100%;height:100%;max-width:100%;object-fit:contain;object-position:left center;display:block}
  header #menu{flex:0 0 auto;margin-left:auto;padding:8px 10px}
  header nav{top:64px}
}
@media(max-width:380px){
  header .logo{width:165px;flex-basis:165px;max-width:calc(100% - 72px)}
}
