:root{--tarivi-gold:#B8893A;--tarivi-bg:#EEEDEA;--tarivi-dark:#0E0E0E;--tarivi-ink:#141414}
.tarivi-wrap{width:min(1240px,100%);box-sizing:border-box;margin:0 auto;padding:0 24px}.tarivi-hero{min-height:570px;display:flex;align-items:center;background-color:#111;background-size:cover;background-position:center;color:#fff}.tarivi-hero .tarivi-wrap{padding-top:80px;padding-bottom:80px}.tarivi-hero h1{font:900 clamp(40px,5.5vw,70px)/1.02 Archivo,sans-serif;text-transform:uppercase;max-width:850px;margin:16px 0}.tarivi-kick{display:inline-block;font:700 12px Archivo,sans-serif;letter-spacing:2px;text-transform:uppercase;color:#c99c4b}.tarivi-section{padding:90px 0;background:#EEEDEA}.tarivi-section:nth-child(even){background:#fff}.tarivi-section-head{max-width:760px;margin-bottom:38px}.tarivi-section-head h2{font:900 clamp(29px,4vw,46px)/1.05 Archivo,sans-serif;color:#141414;text-transform:uppercase;margin:12px 0}.tarivi-copy{font:400 16px/1.75 Manrope,sans-serif;color:#444}.tarivi-copy p{margin:10px 0}.tarivi-hero .tarivi-copy{color:#eee;max-width:660px;margin-bottom:28px}.tarivi-hero .tarivi-kick{color:#e8c06c}.tarivi-hero .b1,.tarivi-lead-form button{display:inline-flex;background:linear-gradient(135deg,#b2863d,#e8bf6c 55%,#f7d88a);border:0;border-radius:999px;padding:15px 25px;color:#111;font:800 14px Archivo,sans-serif;text-decoration:none;cursor:pointer}.tarivi-content-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}.tarivi-content-row.image-left>div{order:2}.tarivi-content-row.image-left>img{order:1}.tarivi-content-row.text{display:block}.tarivi-content-image{width:100%;height:430px;object-fit:cover;border-radius:16px}.tarivi-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tarivi-card{background:#fff;border-radius:16px;overflow:hidden;color:#141414;text-decoration:none;box-shadow:0 8px 25px #0000000b;transition:transform .2s,box-shadow .2s}.tarivi-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px #0002}.tarivi-card>img{width:100%;height:220px;object-fit:cover;display:block}.tarivi-card>div{padding:24px}.tarivi-card h3{font:800 20px Archivo,sans-serif;text-transform:uppercase;margin:0 0 10px}.tarivi-card p{font-size:14px;line-height:1.65;color:#555}.tarivi-card b{color:#9a7128;font:700 13px Archivo,sans-serif}.tarivi-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:16px}.tarivi-gallery figure{margin:0;overflow:hidden;border-radius:14px}.tarivi-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.tarivi-gallery figure:hover img{transform:scale(1.05)}.tarivi-faq{display:grid;gap:12px}.tarivi-faq details{background:#fff;border-radius:14px;padding:20px 24px}.tarivi-faq summary{font:700 16px Archivo,sans-serif;cursor:pointer;color:#141414;display:flex;justify-content:space-between}.tarivi-faq summary span{font-size:24px;color:#b8893a}.tarivi-faq p{margin-bottom:0;color:#555}.tarivi-form-wrap{max-width:920px}.tarivi-lead-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#fff;padding:28px;border-radius:18px}.tarivi-lead-form label{display:flex;flex-direction:column;gap:7px;font:600 13px Manrope,sans-serif;color:#222}.tarivi-lead-form input,.tarivi-lead-form select,.tarivi-lead-form textarea{width:100%;box-sizing:border-box;border:1px solid #ddd;background:#f7f7f5;border-radius:9px;padding:13px 14px;font:14px Manrope,sans-serif}.tarivi-lead-form .wide{grid-column:1/-1}.tarivi-lead-form .tarivi-consent{flex-direction:row;align-items:center}.tarivi-lead-form .tarivi-consent input{width:auto}.tarivi-lead-form .tarivi-hp{position:absolute;left:-10000px}.tarivi-success{background:#e8f4e8;padding:14px;border-radius:8px}
@media(max-width:800px){.tarivi-section{padding:65px 0}.tarivi-content-row{grid-template-columns:1fr;gap:24px}.tarivi-content-row.image-left>div,.tarivi-content-row.image-left>img{order:initial}.tarivi-cards{grid-template-columns:repeat(2,1fr)}.tarivi-gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px}}
@media(max-width:560px){.tarivi-hero{min-height:500px}.tarivi-cards,.tarivi-lead-form{grid-template-columns:1fr}.tarivi-lead-form .wide{grid-column:auto}.tarivi-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:150px}}
/* Let the custom sections span the viewport even inside Elementor's boxed page container. */
.elementor-widget-tarivi-hero,.elementor-widget-tarivi-content,.elementor-widget-tarivi-cards,.elementor-widget-tarivi-gallery,.elementor-widget-tarivi-faq,.elementor-widget-tarivi-lead-form{width:100%;max-width:none}
.elementor-widget-tarivi-hero>.elementor-widget-container,.elementor-widget-tarivi-content>.elementor-widget-container,.elementor-widget-tarivi-cards>.elementor-widget-container,.elementor-widget-tarivi-gallery>.elementor-widget-container,.elementor-widget-tarivi-faq>.elementor-widget-container,.elementor-widget-tarivi-lead-form>.elementor-widget-container{width:100%}
.tarivi-hero,.tarivi-section{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}

/* Elementor can apply global img height:auto rules after widget styles. Lock our media frames. */
.tarivi-content-row .tarivi-content-image{display:block!important;width:100%!important;height:430px!important;min-height:430px!important;max-height:430px!important;object-fit:cover!important;object-position:center!important;border-radius:16px!important}
.tarivi-service-grid .bx{position:relative!important;display:block!important;overflow:hidden!important;min-height:270px!important}
.tarivi-service-grid .bx.x2{min-height:558px!important}
.tarivi-service-grid .bx>img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:100%!important;max-height:none!important;object-fit:cover!important;z-index:-2!important}
.tarivi-gallery figure{height:220px!important;min-height:220px!important}
.tarivi-gallery figure img{display:block!important;width:100%!important;height:100%!important;min-height:100%!important;max-height:none!important;object-fit:cover!important}
@media(max-width:800px){.tarivi-content-row .tarivi-content-image{height:320px!important;min-height:320px!important;max-height:320px!important}.tarivi-service-grid .bx{min-height:230px!important}.tarivi-service-grid .bx.x2{min-height:478px!important}.tarivi-gallery figure{height:190px!important;min-height:190px!important}}
