h1{font-size:clamp(2.6rem,4.5vw,4.25rem)}
h2{font-size:clamp(2rem,3.2vw,3.15rem)}
.site-footer{border-top:2px solid var(--gold)}.footer-bottom{border-top:2px solid var(--gold)}
.section-image{width:100%;height:100%;min-height:330px;object-fit:cover;border-radius:1.35rem}
.banner-image{width:100%;max-height:330px;object-fit:cover;border-radius:1.35rem}
.card-image{width:calc(100% + 4rem);height:210px;object-fit:cover;margin:-2rem -2rem 1.5rem;border-radius:1.3rem 1.3rem 0 0}
.portrait{width:100%;max-height:720px;object-fit:cover;object-position:top;border-radius:1.35rem}
.image-strip{height:280px;width:100%;object-fit:cover}
.page-hero.has-image{background:linear-gradient(90deg,rgba(20,20,20,.78),rgba(20,20,20,.3)),var(--page-image) center/cover no-repeat;min-height:360px;display:flex;align-items:end}
@media(max-width:575px){.card-image{width:calc(100% + 4rem)}.section-image{min-height:260px}}
.btn-outline-light,.btn-outline-dark{background:var(--gold);border-color:var(--gold);color:#111}.btn-outline-light:hover,.btn-outline-dark:hover,.btn-gold:hover{background:#f0c445;border-color:#f0c445;color:#111;transform:translateY(-2px);box-shadow:0 10px 24px rgba(181,133,18,.24)}
.service-summary{position:relative;height:100%;background:linear-gradient(155deg,#4d4f54,#62646a);color:#fff;border:1px solid rgba(217,169,40,.22);border-radius:1.5rem;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 32px rgba(25,22,17,.12);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.service-summary:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 55%,rgba(217,169,40,.08))}.service-summary:hover{transform:translateY(-9px);border-color:rgba(217,169,40,.7);box-shadow:0 24px 55px rgba(25,22,17,.22)}.service-summary img{width:100%;height:220px;object-fit:cover;transition:transform .5s ease}.service-summary:hover img{transform:scale(1.045)}.service-summary>div{position:relative;z-index:1;padding:1.7rem;display:flex;flex-direction:column;align-items:flex-start;flex:1}.service-summary h3{font-size:1.3rem;line-height:1.25;margin-bottom:.8rem}.service-summary p{color:#f4f1eb;flex:1}.service-summary .btn{margin-top:.6rem}.service-detail{scroll-margin-top:110px}
.cv-hero{background:linear-gradient(120deg,#171717,#514019);color:#fff;padding:3.5rem 0}.cv-kicker{color:#d9a928;text-transform:uppercase;letter-spacing:.18em;font-weight:600;font-size:.78rem}.cv-layout{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:2.5rem;align-items:start}.cv-sidebar{position:sticky;top:105px}.cv-sidebar .portrait{max-height:520px}.cv-contact{display:block;text-align:center;background:#171717;color:#fff;text-decoration:none;border-radius:999px;padding:.85rem;margin-top:1rem;font-weight:600}.cv-contact:hover{background:#d9a928;color:#111}.cv-copy h2{font-size:1.75rem;color:#9f7510;margin-top:0}.cv-copy h3{font-size:1.3rem;margin-top:2.2rem}.cv-timeline{list-style:none;padding:0}.cv-timeline li{position:relative;padding:0 0 1.2rem 1.5rem;border-left:1px solid #dbc984}.cv-timeline li:before{content:'';position:absolute;left:-5px;top:.45rem;width:9px;height:9px;border-radius:50%;background:#d9a928}@media(max-width:991px){.cv-layout{grid-template-columns:1fr}.cv-sidebar{position:static}.cv-sidebar .portrait{max-width:440px}}
.cv-name{font-size:clamp(2.3rem,4.5vw,4.6rem);color:#fff}.contact-link{display:flex!important;align-items:center;gap:.6rem}.contact-link svg{width:18px;height:18px;flex:0 0 18px;fill:#b7830b}.whatsapp{width:58px;height:58px;padding:0;display:grid;place-items:center;border-radius:50%;isolation:isolate}.whatsapp:before,.whatsapp:after{content:'';position:absolute;inset:0;border-radius:50%;background:#159447;z-index:-1;animation:whatsapp-pulse 2s ease-out infinite}.whatsapp:after{animation-delay:1s}.whatsapp svg{width:27px;height:27px;fill:currentColor}@keyframes whatsapp-pulse{0%{transform:scale(1);opacity:.42}75%,100%{transform:scale(1.55);opacity:0}}.location-panel{padding:clamp(2rem,5vw,4rem);background:#f6f2e9;border-radius:1.5rem}.map-frame{padding:1rem;background:#595a5f;border-radius:1.4rem;box-shadow:0 18px 45px rgba(30,25,17,.16)}.map-frame iframe{display:block;width:100%;height:380px;border:0;border-radius:.8rem}@media(max-width:575px){.whatsapp{display:grid}.map-frame iframe{height:300px}.location-panel{padding:1.5rem}}
