/* Source: header-full-43.css */
/* Cabecera completa v4.3: overrides aislados, sin tocar el directorio /zonas/ */
@media(min-width:981px){
 body .site-header.dtgn-header-full{position:sticky!important;top:0!important;width:100%!important;max-width:none!important;margin:0!important;border:0!important;border-bottom:1px solid rgba(130,179,230,.17)!important;border-radius:0!important;background:#081426!important;backdrop-filter:blur(16px)!important;box-shadow:0 8px 30px rgba(0,0,0,.22)!important;overflow:visible!important}
 body.admin-bar .site-header.dtgn-header-full{top:32px!important}
 .dtgn-header-full .dtgn-header-top{display:block!important;background:#07101f!important;border-bottom:1px solid rgba(255,255,255,.09)!important;color:#b7cce7!important;font-size:12px!important}
 .dtgn-header-full .dtgn-header-top-inner{max-width:1360px!important;margin:auto!important;min-height:34px!important;padding:6px 28px!important;display:flex!important;justify-content:space-between!important;gap:20px!important;align-items:center!important}
 .dtgn-header-full .dtgn-header-top-inner>div{display:flex!important;gap:23px!important}
 .dtgn-header-full .dtgn-header-top a{color:#d7e8ff!important;text-decoration:none!important}
 .dtgn-header-full .nav{position:relative!important;max-width:1360px!important;width:100%!important;margin:auto!important;min-height:78px!important;padding:12px 28px!important;gap:18px!important}
 .dtgn-header-full .brand{flex-shrink:0!important;white-space:nowrap!important}
 .dtgn-header-full .brand-mark{width:44px!important;height:44px!important;border-radius:12px!important}
 .dtgn-header-full .menu{gap:0!important;flex-wrap:nowrap!important}
 .dtgn-header-full .menu>a,.dtgn-header-full .menu>.dtgn-nav-services>.dtgn-nav-services-link,.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{font-size:13px!important;padding:10px 10px!important;white-space:nowrap!important}
 .dtgn-header-full .desktop-header-cta{background:linear-gradient(110deg,#078fe8,#2159d9)!important;border:1px solid #258ce9!important;color:white!important;box-shadow:0 9px 22px rgba(0,107,222,.22)!important;padding:13px 17px!important;white-space:nowrap!important;font-size:13px!important;width:auto!important}
 .dtgn-header-full .dtgn-nav-zones{position:static!important}
 .dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{left:50%!important;top:calc(100% - 1px)!important;transform:translateX(-50%)!important;width:min(1190px,calc(100vw - 52px))!important;max-width:calc(100vw - 52px)!important;max-height:min(650px,calc(100vh - 145px))!important;grid-template-columns:225px minmax(0,1fr)!important;border-radius:0 0 16px 16px!important;box-shadow:0 25px 65px rgba(0,0,0,.34)!important;background:white!important;padding:0!important;overflow:auto!important}
 .dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{padding:24px 19px!important;min-width:0!important}
 .dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{background:white!important;padding:20px 17px!important;min-width:0!important;overflow:visible!important}
 .dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{gap:9px!important}
 .dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:8px!important}
 .dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col li a{font-size:11px!important;padding:4px 0!important}
 .dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:70px!important}
 .dtgn-header-full .dtgn-comarca-row-link{display:none!important}
}
@media(max-width:980px){
 .dtgn-header-full .dtgn-header-top{display:none!important}
 .dtgn-header-full .dtgn-comarca-row-link{display:block!important;z-index:3!important}
 .dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{pointer-events:none!important}
}
@media(min-width:981px) and (max-width:1160px){
 .dtgn-header-full .nav{padding-inline:15px!important;gap:9px!important}
 .dtgn-header-full .brand{font-size:14px!important}
 .dtgn-header-full .menu>a,.dtgn-header-full .menu>.dtgn-nav-services>.dtgn-nav-services-link,.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{padding-inline:7px!important;font-size:12px!important}
 .dtgn-header-full .desktop-header-cta{font-size:12px!important;padding:11px!important}
}

/* Source: reference-44.css */
/* v4.4 – reference screenshot: scoped overrides after all historical styles */
.site-header.dtgn-header-full .brand{gap:10px!important;text-decoration:none!important}
.site-header.dtgn-header-full .brand-mark{display:flex!important;align-items:flex-end!important;justify-content:center!important;gap:3px!important;width:34px!important;height:34px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;transform:skew(-14deg)!important}
.site-header.dtgn-header-full .brand-mark i{display:block!important;width:7px!important;background:linear-gradient(#16c9fa,#0876ef)!important;border-radius:1px!important}
.site-header.dtgn-header-full .brand-mark i:nth-child(1){height:12px!important}.site-header.dtgn-header-full .brand-mark i:nth-child(2){height:20px!important}.site-header.dtgn-header-full .brand-mark i:nth-child(3){height:29px!important}
.site-header.dtgn-header-full .dtgn-brand-name{font-size:23px!important;font-weight:850!important;letter-spacing:-1px!important;color:#fff!important;white-space:nowrap!important}.site-header.dtgn-header-full .dtgn-brand-name span{color:#04bafa!important}
@media(min-width:981px){
 body .site-header.dtgn-header-full{background:linear-gradient(105deg,#030c17,#051b30)!important}
 .site-header.dtgn-header-full .dtgn-header-top{background:#030c16!important}
 .site-header.dtgn-header-full .nav{max-width:1500px!important;min-height:76px!important;padding:12px 24px!important;justify-content:space-between!important}
 .site-header.dtgn-header-full .menu{gap:1px!important;flex:0 1 auto!important}
 .site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{font-size:13px!important;padding:12px 9px!important}
 .site-header.dtgn-header-full .menu .dtgn-projects-nav{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-link{background:linear-gradient(180deg,#7dc0f5,#2d75c3)!important;color:#03172c!important;border-radius:7px 7px 0 0!important}
 .site-header.dtgn-header-full .desktop-header-cta{border-radius:22px!important;background:linear-gradient(110deg,#00a6ff,#3158ed)!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{width:min(1210px,calc(100vw - 46px))!important;max-height:min(510px,calc(100vh - 165px))!important;grid-template-columns:220px minmax(0,1fr)!important;border-radius:12px!important;overflow:auto!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{background:linear-gradient(180deg,rgba(0,18,35,.45),#021527),url('../img/dtgn-tarragona-map.jpg') center 10%/contain no-repeat,#031629!important;padding:170px 18px 18px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-map-art{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature strong{font-size:17px!important;line-height:1.22!important;color:#fff!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature p{font-size:11px!important;line-height:1.5!important;color:#e6f3ff!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{padding:19px 16px!important;background:#fff!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{gap:12px!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{color:#07172b!important;font-size:13px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:5px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col li a{font-size:11px!important;line-height:1.35!important;color:#0760a8!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:67px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-zones-footer{padding-top:9px!important}
}
@media(max-width:980px){
 .site-header.dtgn-header-full .dtgn-header-top{display:none!important}
 .site-header.dtgn-header-full .dtgn-brand-name{font-size:19px!important}
 .site-header.dtgn-header-full .menu>.dtgn-service-nav{display:block!important}
 .site-header.dtgn-header-full .menu>.dtgn-projects-nav{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul,.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-more{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{display:grid!important;grid-template-columns:50px 1fr!important;align-items:center!important;min-height:49px!important;padding:5px 10px!important;gap:10px!important;border-bottom:1px solid rgba(120,164,210,.18)!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{grid-column:2!important;grid-row:1!important;margin:0!important;pointer-events:none!important;font-size:13px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{grid-column:1!important;grid-row:1!important;height:36px!important;width:50px!important;border-radius:5px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-row-link{position:absolute!important;inset:0!important;z-index:4!important;display:block!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{display:block!important}
}
@media(min-width:700px) and (max-width:980px){
 .site-header.dtgn-header-full .menu{background:#fff!important;color:#081b31!important}
 .site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .menu .dtgn-nav-zones-link{color:#082039!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{background:#fff!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{color:#09223d!important}
}
@media(max-width:699px){
 .site-header.dtgn-header-full .menu{background:#031321!important;color:#f0f8ff!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{background:#05182a!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{color:#eaf5ff!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-zones-footer a{color:#00c8ff!important}
}

/* Source: reference-45.css */
/* Reference v4.5 – deliberate final navigation layer. Scoped to the header. */
.site-header.dtgn-header-full .dtgn-header-call{display:none}
@media(min-width:981px){
 body .site-header.dtgn-header-full{background:#03111f!important;border-bottom:1px solid #123958!important;box-shadow:0 10px 30px #0005!important}
 .site-header.dtgn-header-full .dtgn-header-top{background:#020a13!important}
 .site-header.dtgn-header-full .dtgn-header-top-inner{max-width:1480px!important;min-height:38px!important;justify-content:flex-end!important;gap:26px!important;padding:5px 28px!important;font-size:11px!important}
 .site-header.dtgn-header-full .dtgn-header-top-inner>div{gap:22px!important}
 .site-header.dtgn-header-full .nav{max-width:1480px!important;min-height:84px!important;padding:12px 26px!important;gap:18px!important}
 .site-header.dtgn-header-full .brand{gap:8px!important;flex-shrink:0!important}
 .site-header.dtgn-header-full .dtgn-brand-name{font-size:clamp(22px,2vw,30px)!important;letter-spacing:-1.3px!important}
 .site-header.dtgn-header-full .brand-mark{width:36px!important;height:36px!important}
 .site-header.dtgn-header-full .menu{margin-left:auto!important;gap:2px!important;justify-content:center!important}
 .site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{font-size:13px!important;font-weight:600!important;border-radius:5px!important;padding:13px 10px!important;color:#edf7ff!important}
 .site-header.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{color:#03182b!important;background:linear-gradient(#b2ddff,#62a9e3)!important;border-radius:7px 7px 0 0!important}
 .site-header.dtgn-header-full .desktop-header-cta{font-size:13px!important;border-radius:30px!important;padding:14px 18px!important;background:linear-gradient(100deg,#009bfa,#415bf2)!important;box-shadow:0 5px 24px #0077e544!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{top:calc(100% - 1px)!important;width:min(1300px,calc(100vw - 44px))!important;max-width:calc(100vw - 44px)!important;max-height:min(470px,calc(100vh - 160px))!important;grid-template-columns:230px minmax(0,1fr)!important;border-radius:0 0 15px 15px!important;box-shadow:0 28px 60px #0006!important;overflow:hidden!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{padding:160px 18px 18px!important;justify-content:flex-end!important;background:linear-gradient(180deg,#03132233 0%,#03132299 40%,#031322 74%),url('../img/dtgn-tarragona-map.jpg') center 8%/100% auto no-repeat,#031322!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature strong{font-size:19px!important;line-height:1.15!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature p{font-size:11px!important;line-height:1.4!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature a{font-size:11px!important;padding:12px 8px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{padding:20px 16px 15px!important;overflow:auto!important;background:#fff!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{gap:15px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{gap:8px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{font-size:14px!important;font-weight:850!important;color:#071a30!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:75px!important;border-radius:7px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:4px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col li a{padding:3px 0!important;font-size:11px!important;color:#0066b8!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-zones-footer{display:none!important}
}
@media(min-width:981px) and (max-width:1250px){
 .site-header.dtgn-header-full .nav{gap:9px!important;padding-inline:15px!important}
 .site-header.dtgn-header-full .dtgn-brand-name{font-size:21px!important}
 .site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{font-size:11px!important;padding-inline:6px!important}
 .site-header.dtgn-header-full .desktop-header-cta{font-size:11px!important;padding:12px!important}
}
@media(max-width:980px){
 body .site-header.dtgn-header-full{background:#031222!important;border-radius:0!important;top:0!important;margin:0!important;width:100%!important;max-width:none!important;z-index:1100!important}
 body.admin-bar .site-header.dtgn-header-full{top:32px!important}
 .site-header.dtgn-header-full .nav{min-height:65px!important;padding:10px 16px!important;gap:10px!important}
 .site-header.dtgn-header-full .brand{gap:7px!important;margin-right:auto!important}
 .site-header.dtgn-header-full .brand-mark{width:25px!important;height:28px!important}
 .site-header.dtgn-header-full .brand-mark i{width:5px!important}
 .site-header.dtgn-header-full .dtgn-brand-name{font-size:20px!important;display:inline!important}
 .site-header.dtgn-header-full .dtgn-header-call{display:flex!important;align-items:center!important;justify-content:center!important;color:#c6e9ff!important;font-size:21px!important;padding:6px!important;order:2!important}
 .site-header.dtgn-header-full .mobile-menu-toggle{order:3!important}
 .site-header.dtgn-header-full .desktop-header-cta{order:1!important;width:auto!important;display:inline-flex!important;border-radius:25px!important;background:linear-gradient(100deg,#069be8,#3355eb)!important;font-size:11px!important;padding:10px 12px!important;white-space:nowrap!important}
 .site-header.dtgn-header-full .menu{right:0!important;top:65px!important;bottom:0!important;height:calc(100dvh - 65px)!important;max-height:none!important;width:min(390px,100vw)!important;border-radius:0!important;overflow-y:auto!important;padding:12px 12px 24px!important;box-shadow:-15px 20px 45px #0006!important}
 .site-header.dtgn-header-full .menu .dtgn-mobile-menu-heading{padding:0!important}
 .site-header.dtgn-header-full .menu .dtgn-mobile-kicker,.site-header.dtgn-header-full .menu .dtgn-mobile-menu-heading strong{display:none!important}
 .site-header.dtgn-header-full .dtgn-menu-search{margin:3px 0 12px!important}
 .site-header.dtgn-header-full .menu>.dtgn-service-nav{display:block!important}
 .site-header.dtgn-header-full .menu>.dtgn-projects-nav{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{position:static!important;transform:none!important;box-shadow:none!important;border-radius:0!important;max-height:none!important;width:100%!important;overflow:visible!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{overflow:visible!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{position:relative!important;min-height:47px!important;grid-template-columns:54px 1fr!important;gap:10px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{width:50px!important;height:34px!important;grid-column:1!important;grid-row:1!important;pointer-events:none!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{grid-column:2!important;grid-row:1!important;pointer-events:none!important}
 .site-header.dtgn-header-full .dtgn-comarca-row-link{display:block!important;position:absolute!important;inset:0!important;z-index:8!important}
 .site-header.dtgn-header-full .dtgn-mobile-contact{margin-top:12px!important}
}
@media(min-width:700px) and (max-width:980px){
 .site-header.dtgn-header-full .menu{background:#fff!important;color:#06182a!important}
 .site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{color:#0a213a!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual,.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{background:#fff!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{color:#0c243b!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{border-bottom:1px solid #e9eef5!important}
}
@media(max-width:699px){
 .site-header.dtgn-header-full .desktop-header-cta{display:none!important}
 .site-header.dtgn-header-full .menu{background:#03101e!important;color:#eaf5ff!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual,.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{background:#041626!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{color:#eaf5ff!important}
 .site-header.dtgn-header-full .dtgn-nav-zones.is-open>.dtgn-nav-zones-link{background:linear-gradient(100deg,#0752b9,#0968e8)!important;color:#fff!important}
 .site-header.dtgn-header-full .dtgn-mobile-contact .mobile-menu-cta{background:linear-gradient(100deg,#1051f3,#03b9f5)!important}
}
@media(max-width:380px){.site-header.dtgn-header-full .dtgn-brand-name{font-size:17px!important}}

/* Source: reference-46.css */
/* v4.6: last-loaded, header-only reference layout. No page content selectors. */
@media(min-width:981px){
body .site-header.dtgn-header-full{position:relative!important;top:auto!important;width:100%!important;background:#020d19!important}
.site-header.dtgn-header-full .dtgn-header-top{background:#020b15!important;border-bottom:1px solid #18364e!important}
.site-header.dtgn-header-full .dtgn-header-top-inner{max-width:1440px!important;justify-content:flex-end!important;min-height:35px!important;padding:4px 24px!important}
.site-header.dtgn-header-full .nav{max-width:1440px!important;min-height:77px!important;padding:10px 24px!important;gap:12px!important}
.site-header.dtgn-header-full .brand{min-width:238px!important;gap:9px!important}
.site-header.dtgn-header-full .brand-mark{background:transparent!important;box-shadow:none!important;border-radius:0!important;width:30px!important;height:34px!important;display:flex!important;align-items:end!important;gap:3px!important;transform:skew(-12deg)!important}
.site-header.dtgn-header-full .brand-mark i{background:linear-gradient(#00e0ff,#0873f3)!important;width:7px!important;border-radius:1px!important;display:block!important;box-shadow:none!important}
.site-header.dtgn-header-full .brand-mark i:nth-child(1){height:13px!important}.site-header.dtgn-header-full .brand-mark i:nth-child(2){height:23px!important}.site-header.dtgn-header-full .brand-mark i:nth-child(3){height:31px!important}
.site-header.dtgn-header-full .dtgn-brand-name{font-size:29px!important;font-weight:850!important;letter-spacing:-1.5px!important;white-space:nowrap!important}
.site-header.dtgn-header-full .dtgn-brand-name>span{color:#05aaff!important}
.site-header.dtgn-header-full .menu{margin-left:auto!important;gap:0!important;flex:0 1 auto!important}
.site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{padding:12px 8px!important;font-size:12px!important;white-space:nowrap!important}
.site-header.dtgn-header-full .menu>.dtgn-projects-nav{display:none!important}
.site-header.dtgn-header-full .dtgn-header-search{display:inline-flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-size:26px!important;text-decoration:none!important;width:26px!important;flex-shrink:0!important}
.site-header.dtgn-header-full .desktop-header-cta{background:linear-gradient(100deg,#009af2,#465ef6)!important;border:1px solid #64a5fa!important;border-radius:24px!important;padding:13px 16px!important;white-space:nowrap!important;font-size:12px!important}
.site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{width:min(1190px,calc(100vw - 36px))!important;max-height:430px!important;grid-template-columns:205px minmax(0,1fr)!important;top:calc(100% - 1px)!important;left:50%!important;transform:translateX(-50%)!important;border-radius:0 0 13px 13px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{padding:136px 15px 15px!important;background:linear-gradient(180deg,#00102005 5%,#00102077 45%,#001020 77%),url('../img/dtgn-tarragona-map.jpg') center 4%/100% auto no-repeat,#031525!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature strong{font-size:18px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{padding:18px 15px!important;overflow-y:auto!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{gap:14px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:69px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:5px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col li a{font-size:11px!important;line-height:1.4!important;padding:2px 0!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-more{margin-top:8px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-zones-footer{display:none!important}
}
@media(min-width:981px) and (max-width:1230px){
.site-header.dtgn-header-full .brand{min-width:170px!important}.site-header.dtgn-header-full .dtgn-brand-name{font-size:22px!important}
.site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .menu>.dtgn-nav-zones>.dtgn-nav-zones-link{font-size:11px!important;padding-inline:5px!important}
.site-header.dtgn-header-full .nav{gap:7px!important;padding-inline:14px!important}
}
@media(max-width:980px){
.site-header.dtgn-header-full .dtgn-header-search{display:none!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-row-link{display:block!important;z-index:10!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{position:relative!important;min-height:49px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{font-size:13px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{background-size:cover!important;background-position:center!important}
.site-header.dtgn-header-full .dtgn-mobile-contact .mobile-menu-cta{display:block!important}
}
@media(min-width:700px) and (max-width:980px){
.site-header.dtgn-header-full .menu{background:#fff!important}
.site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{background:#fff!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{border-bottom:1px solid #e6edf5!important}
}
@media(max-width:699px){
.site-header.dtgn-header-full .menu{background:#03101f!important}
.site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{background:#06172a!important}
}

/* Source: reference-47.css */
/* 4.7 fixes, limited to navigation. */
@media(min-width:981px){
 body .site-header.dtgn-header-full{margin:0!important;top:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;position:relative!important}
 body.admin-bar .site-header.dtgn-header-full{top:0!important}
 .site-header.dtgn-header-full .dtgn-header-top{min-height:35px!important}
 .site-header.dtgn-header-full .dtgn-header-top-inner{justify-content:space-between!important;max-width:1440px!important;padding-inline:24px!important}
 .site-header.dtgn-header-full .dtgn-header-top-inner>span{display:inline-flex!important;visibility:visible!important;opacity:1!important}
 .site-header.dtgn-header-full .nav{min-height:73px!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{width:min(1170px,calc(100vw - 40px))!important;max-height:none!important;grid-template-columns:200px minmax(0,1fr)!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{height:360px!important;min-height:360px!important;justify-content:flex-end!important;padding:155px 14px 16px!important;gap:9px!important;background:linear-gradient(180deg,transparent 0%,#03132344 43%,#031323 71%),url('../img/dtgn-tarragona-map.jpg') center 7%/contain no-repeat,#031323!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-map-art{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature strong{font-size:17px!important;line-height:1.18!important;margin:0!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature p{font-size:11px!important;line-height:1.38!important;margin:0!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature a{margin-top:6px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{padding:18px 13px!important;overflow:visible!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{gap:12px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:65px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:3px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col li a{line-height:1.3!important}
}
@media(max-width:980px){
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-map-art{display:none!important}
}

/* Source: final-49.css */
/* v4.9 - loaded AFTER all previous theme navigation styles. */
@media (min-width:981px) {
 body .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual {
   width:min(1120px,calc(100vw - 36px))!important;
   grid-template-columns:200px minmax(0,1fr)!important;
   height:auto!important;max-height:none!important;align-items:stretch!important;
 }
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature {
   height:auto!important;min-height:0!important;align-self:stretch!important;
   display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
   padding:178px 14px 15px!important;gap:9px!important;
   background:#031323!important;position:relative!important;isolation:isolate!important;
   overflow:hidden!important;
 }
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature::before {
   content:''!important;display:block!important;position:absolute!important;
   top:0!important;left:0!important;right:0!important;height:172px!important;
   background:url('../img/dtgn-map-only-49.jpg') center center/contain no-repeat!important;
   z-index:-1!important;
 }
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature strong,
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature p,
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature a {position:relative!important;z-index:1!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature strong {font-size:16px!important;line-height:1.2!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main {
   padding:17px 14px 15px!important;overflow:visible!important;align-self:start!important;
 }
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid {gap:13px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col {height:auto!important;min-height:0!important;gap:8px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul {gap:6px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-more {margin-top:7px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-zones-footer {display:none!important}
}

/* Source: redesign-50.css */
/* DigitalTGN 5.0 - scoped homepage redesign and navigation refinements */
body.home .dtgn5-hero{position:relative;isolation:isolate;min-height:700px;display:flex;align-items:flex-end;padding:190px 0 54px;background:#073452 url('../img/dtgn-mediterranean-hero-57.webp') center center/cover no-repeat!important;overflow:hidden}
body.home .dtgn5-hero::before{content:none!important}
body.home .dtgn5-hero .dtgn5-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,10,25,.90) 0%,rgba(0,15,33,.72) 34%,rgba(0,18,34,.28) 75%),linear-gradient(0deg,rgba(0,8,24,.72),transparent 65%);z-index:-1}
body.home .dtgn5-hero-layout{width:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:40px;position:relative;z-index:1}
body.home .dtgn5-hero-copy{max-width:690px}
body.home .dtgn5-hero-kicker{display:inline-block;color:#a5dfff;font-weight:800;letter-spacing:.13em;font-size:12px;margin-bottom:18px}
body.home .dtgn5-hero h1{font-size:clamp(38px,4.5vw,72px);line-height:1.04;letter-spacing:-.055em;margin:0 0 20px;color:#fff;font-weight:850}
body.home .dtgn5-hero h1 span{color:#08b7f8}
body.home .dtgn5-hero p{font-size:clamp(16px,1.4vw,20px);line-height:1.6;color:#eff8ff;max-width:600px;margin:0}
body.home .dtgn5-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:25px}
body.home .dtgn5-hero-actions .btn{border-radius:16px;background:linear-gradient(105deg,#05b8f3,#155cff);padding:16px 25px;color:#fff;box-shadow:0 12px 35px #001c4388}
body.home .dtgn5-hero-secondary{color:white;font-weight:750;text-decoration:none;border-bottom:1px solid #ffffff80;padding:8px 0}
body.home .dtgn5-hero-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;width:100%}
body.home .dtgn5-hero-services a{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:12px;align-content:center;min-height:88px;padding:16px;background:rgba(1,17,34,.86);border:1px solid #53a4d440;border-radius:16px;text-decoration:none;color:#fff;transition:transform .2s,background .2s}
body.home .dtgn5-hero-services a:hover{transform:translateY(-4px);background:#052a4a}
body.home .dtgn5-hero-services span{grid-row:1/3;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#05bdf6,#0750e7);font-size:26px;color:#fff}
body.home .dtgn5-hero-services b{font-size:16px;align-self:end}
body.home .dtgn5-hero-services small{font-size:13px;color:#d9e7f5}
@media(min-width:981px){
 body .site-header.dtgn-header-full{background:#031322!important}
 body .site-header.dtgn-header-full .dtgn-header-top{background:#03101e!important}
 body .site-header.dtgn-header-full .dtgn-header-top-inner{max-width:1420px!important}
 body .site-header.dtgn-header-full .nav{max-width:1480px!important;padding:0 26px!important;gap:18px!important;min-height:85px!important}
 body .site-header.dtgn-header-full .brand{min-width:280px!important}
 body .site-header.dtgn-header-full .dtgn-brand-name{font-size:35px!important;letter-spacing:-.065em!important}
 body .site-header.dtgn-header-full .menu{gap:clamp(9px,1.15vw,19px)!important}
 body .site-header.dtgn-header-full .menu>a,body .site-header.dtgn-header-full .dtgn-nav-zones-link{font-size:13px!important;white-space:nowrap!important}
 body .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{width:min(1260px,calc(100vw - 50px))!important;grid-template-columns:215px minmax(0,1fr)!important;border-radius:18px!important;overflow:hidden!important;box-shadow:0 28px 80px #0008!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{padding:205px 18px 18px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature::before{height:195px!important;background-size:contain!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{padding:22px 18px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{gap:16px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:92px!important;min-height:92px!important;background-size:cover!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{gap:9px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:9px!important}
 body .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-more{margin-top:12px!important}
}
.dtgn-photo-baix-ebre{background-image:url('../img/dtgn-baix-ebre-57.webp')!important}
.dtgn-photo-montsia{background-image:url('../img/dtgn-montsia-57.webp')!important}
.dtgn-photo-baix-camp{background-image:url('../img/dtgn-baix-camp-57.webp')!important}
.dtgn-photo-tarragones{background-image:url('../img/dtgn-tarragones-57.webp')!important}
.dtgn-photo-alt-camp{background-image:url('../img/dtgn-alt-camp-57.webp')!important}
@media(max-width:980px){body.home .dtgn5-hero{padding:120px 0 40px;min-height:680px}body.home .dtgn5-hero-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.home .dtgn5-hero{min-height:760px;padding:100px 0 26px;background-position:58% center!important}body.home .dtgn5-hero h1{font-size:38px}body.home .dtgn5-hero-layout{gap:26px}body.home .dtgn5-hero-services{gap:8px}body.home .dtgn5-hero-services a{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:4px;padding:12px;min-height:112px}body.home .dtgn5-hero-services span{grid-row:auto;width:38px;height:38px;font-size:20px}body.home .dtgn5-hero-services b{font-size:13px}body.home .dtgn5-hero-services small{font-size:12px}}

/* Source: redesign-51.css */
/* DigitalTGN 5.1 - final responsive polish, loaded last */
:root{--dtgn51-blue:#098ff1;--dtgn51-ink:#031625}
body.home .dtgn5-hero{min-height:690px;padding-top:105px!important;padding-bottom:40px!important;background-position:center 48%!important}
body.home .dtgn5-hero .dtgn5-hero-shade{background:linear-gradient(90deg,rgba(0,11,27,.93),rgba(0,20,41,.68) 50%,rgba(0,23,43,.18)),linear-gradient(0deg,rgba(0,9,25,.72),transparent 60%)!important}
body.home .dtgn5-hero-layout{gap:34px!important}
body.home .dtgn5-hero-copy{max-width:800px!important}
body.home .dtgn5-hero h1{font-size:clamp(38px,4.15vw,67px)!important;line-height:1.07!important;letter-spacing:-.045em!important}
body.home .dtgn5-hero-kicker{background:#0784d42b;border:1px solid #5fc6fa55;padding:9px 13px;border-radius:99px;color:#d1efff!important;letter-spacing:.08em!important}
body.home .dtgn5-hero-services a{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid #8edaff55!important;box-shadow:0 14px 35px #00142655}
body.home .dtgn5-hero-services a:focus-visible, .site-header a:focus-visible{outline:3px solid #44bfff!important;outline-offset:3px!important}
body.home #servicios{background:linear-gradient(180deg,#f4f9ff 0%,#fff 100%);padding-top:72px;padding-bottom:84px}
body.home #servicios .section-title{color:#0a2643;font-size:clamp(30px,3vw,44px);letter-spacing:-.035em}
body.home #servicios .section-intro{max-width:770px;color:#456075}
body.home #servicios .services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
body.home #servicios .service-card{position:relative;display:flex;flex-direction:column;min-height:295px;padding:26px 24px;border:1px solid #d7e7f4;border-radius:22px;background:#fff!important;box-shadow:0 12px 36px #06355713;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
body.home #servicios .service-card:hover{transform:translateY(-6px);box-shadow:0 24px 45px #06355724}
body.home #servicios .service-card::before{content:'';display:block;position:relative;width:74px;height:74px;border-radius:19px;background:#e9f5ff var(--img) center/64% no-repeat;margin:0 0 24px}
body.home #servicios .service-card .tag{display:inline-flex;align-self:start;color:#0076d1!important;font-weight:800;letter-spacing:.06em;font-size:11px;background:#e9f5ff;border-radius:999px;padding:6px 11px;margin-bottom:12px}
body.home #servicios .service-card h3{font-size:23px;color:#092b49;margin:0 0 11px}
body.home #servicios .service-card p{color:#496579;line-height:1.55;margin:0}
@media(min-width:981px){
 .site-header.dtgn-header-full{position:relative;z-index:2000}
 .site-header.dtgn-header-full .nav{max-width:1460px!important;min-height:82px!important;gap:12px!important}
 .site-header.dtgn-header-full .brand{min-width:250px!important;flex-shrink:0!important}
 .site-header.dtgn-header-full .dtgn-brand-name{font-size:32px!important}
 .site-header.dtgn-header-full .menu{gap:clamp(7px,.85vw,15px)!important}
 .site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{width:min(1220px,calc(100vw - 40px))!important;grid-template-columns:220px minmax(0,1fr)!important;max-height:min(690px,calc(100vh - 130px))!important;overflow-y:auto!important;overflow-x:hidden!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{padding:188px 17px 20px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature::before{height:182px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{padding:22px 18px 18px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:105px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{gap:14px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:8px!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-row-link{display:none!important}
 .site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col a{position:relative;z-index:1}
}
@media(max-width:1200px) and (min-width:981px){.site-header.dtgn-header-full .brand{min-width:190px!important}.site-header.dtgn-header-full .dtgn-brand-name{font-size:26px!important}.site-header.dtgn-header-full .menu{gap:7px!important}.site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .dtgn-nav-zones-link{font-size:12px!important}}
@media(max-width:980px){body.home #servicios .services{grid-template-columns:repeat(2,minmax(0,1fr))}body.home .dtgn5-hero{min-height:670px!important;padding-top:90px!important}body.home .dtgn5-hero-services{gap:12px!important}}
@media(max-width:600px){body.home .dtgn5-hero{min-height:760px!important;padding-top:90px!important;padding-bottom:25px!important}body.home .dtgn5-hero h1{font-size:clamp(34px,9vw,43px)!important}body.home .dtgn5-hero-services a{min-height:112px!important}body.home #servicios .services{grid-template-columns:1fr;gap:14px}body.home #servicios .service-card{min-height:230px;padding:22px}body.home #servicios .service-card::before{margin-bottom:14px}body.home #servicios{padding-top:50px;padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){body.home #servicios .service-card,body.home .dtgn5-hero-services a{transition:none!important}}

/* Source: redesign-52.css */
/* DigitalTGN 5.2 — unified visual finishing layer. Scoped to new design. */
:root{--dtgn52-cyan:#0cbcf2;--dtgn52-navy:#031829;--dtgn52-ink:#092943}
.site-header.dtgn-header-full{background:#031829!important;box-shadow:0 6px 30px rgba(0,12,28,.18)}
.site-header.dtgn-header-full .dtgn-header-top{background:#061321!important;border-bottom:1px solid rgba(143,202,243,.14)}
.site-header.dtgn-header-full .dtgn-header-top-inner{min-height:37px!important;max-width:1380px!important;color:#c9d9e7!important;font-size:12px!important}
.site-header.dtgn-header-full .dtgn-header-top a{color:#dbeefa!important;text-decoration:none}
.site-header.dtgn-header-full .dtgn-header-top a:hover{color:#60d8ff!important}
.site-header.dtgn-header-full .brand{text-decoration:none!important}
.site-header.dtgn-header-full .dtgn-brand-name{font-weight:850!important}
.site-header.dtgn-header-full .dtgn-brand-name span{color:#16baff!important}
.site-header.dtgn-header-full .desktop-header-cta{background:linear-gradient(105deg,#06b9ed,#1866ec)!important;border:1px solid #6fd6ff55!important;border-radius:12px!important;color:white!important;box-shadow:0 8px 24px #008cfa33!important;white-space:nowrap!important}
.site-header.dtgn-header-full .desktop-header-cta:hover{filter:brightness(1.12)}
@media(min-width:981px){
.site-header.dtgn-header-full .nav{max-width:1420px!important;min-height:80px!important;gap:14px!important;padding:0 26px!important}
.site-header.dtgn-header-full .brand{min-width:220px!important}
.site-header.dtgn-header-full .dtgn-brand-name{font-size:31px!important}
.site-header.dtgn-header-full .menu{gap:clamp(8px,.95vw,17px)!important}
.site-header.dtgn-header-full .menu>a,.site-header.dtgn-header-full .dtgn-nav-zones-link{font-size:13px!important;font-weight:700!important;line-height:1.3!important}
.site-header.dtgn-header-full .dtgn-nav-zones-panel.dtgn-nav-visual{width:min(1200px,calc(100vw - 52px))!important;grid-template-columns:225px minmax(0,1fr)!important;max-height:calc(100vh - 125px)!important;border:1px solid #d8e7f0!important;border-radius:16px!important;box-shadow:0 28px 65px rgba(0,17,38,.30)!important;overflow-y:auto!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature{min-height:0!important;padding:190px 19px 22px!important;background:#041c33!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature::before{height:178px!important;background-size:contain!important;background-position:center 10px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature strong{font-size:16px!important;line-height:1.35!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-feature p{font-size:12px!important;line-height:1.6!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-mega-main{padding:21px 21px 16px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-nav-zones-grid{gap:17px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col{min-width:0!important;gap:8px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col h3{font-size:15px!important;white-space:normal!important;line-height:1.3!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-photo{height:108px!important;min-height:108px!important;border-radius:9px!important;background-position:center!important;background-size:cover!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul{gap:7px!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-col ul a{font-size:12px!important;line-height:1.45!important}
.site-header.dtgn-header-full .dtgn-nav-visual .dtgn-comarca-more{font-size:12px!important;margin-top:9px!important}
}
body.home .dtgn5-hero{min-height:720px!important;padding:96px 0 38px!important;background-position:center 48%!important}
body.home .dtgn5-hero .dtgn5-hero-shade{background:linear-gradient(90deg,rgba(1,15,32,.91) 0%,rgba(2,20,41,.75) 39%,rgba(2,23,42,.18) 100%),linear-gradient(0deg,rgba(0,10,26,.79),transparent 63%)!important}
body.home .dtgn5-hero-layout{gap:42px!important}
body.home .dtgn5-hero-copy{max-width:780px!important}
body.home .dtgn5-hero h1{font-size:clamp(40px,4.55vw,70px)!important;line-height:1.065!important;letter-spacing:-.047em!important;text-wrap:balance}
body.home .dtgn5-hero h1 span{color:#22c6ff!important}
body.home .dtgn5-hero-copy>p{max-width:650px!important;font-size:clamp(16px,1.3vw,19px)!important;line-height:1.65!important}
body.home .dtgn5-hero-actions .btn{background:linear-gradient(105deg,#0bbcf1,#1864ec)!important;box-shadow:0 12px 32px #002e6280!important}
body.home .dtgn5-hero-services{gap:15px!important}
body.home .dtgn5-hero-services a{border-radius:17px!important;background:rgba(3,21,42,.87)!important;min-height:94px!important;border:1px solid rgba(143,211,255,.38)!important}
body.home .dtgn5-hero-services a:hover{background:rgba(7,49,82,.96)!important}
body.home #servicios .service-card{min-height:285px!important}
body.home #servicios .service-card h3{line-height:1.22!important}
body.home #servicios .service-card p{font-size:15px!important}
@media(max-width:980px){
.site-header.dtgn-header-full .nav{min-height:72px!important}
body.home .dtgn5-hero{min-height:710px!important;padding:100px 0 30px!important}
body.home .dtgn5-hero-services{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
body.home .dtgn5-hero{min-height:0!important;padding:94px 0 30px!important;background-position:59% center!important}
body.home .dtgn5-hero-layout{gap:30px!important}
body.home .dtgn5-hero h1{font-size:clamp(35px,9vw,44px)!important}
body.home .dtgn5-hero-services{gap:9px!important}
body.home .dtgn5-hero-services a{min-height:110px!important;padding:13px!important}
body.home #servicios .service-card{min-height:220px!important}
}
@media(prefers-reduced-motion:reduce){.site-header.dtgn-header-full .desktop-header-cta{transition:none!important}}

/* Source: redesign-53.css */
/* v5.3 — Home hero layout correction. This file is loaded after all previous CSS. */
body.home .dtgn5-hero{background-image:url('../img/dtgn-mediterranean-hero-57.webp')!important;background-repeat:no-repeat!important;background-size:cover!important;background-position:center center!important;min-height:740px!important;padding:96px 0 48px!important;align-items:center!important}
body.home .dtgn5-hero .dtgn5-hero-shade{background:linear-gradient(90deg,rgba(1,15,31,.83),rgba(1,15,31,.60) 38%,rgba(1,15,31,.13) 83%),linear-gradient(0deg,rgba(1,12,27,.55),transparent 55%)!important}
body.home .dtgn5-hero>.wrap.dtgn5-hero-layout{width:min(1380px,calc(100% - 96px))!important;max-width:1380px!important;margin-inline:auto!important;padding-inline:0!important;align-self:center!important;justify-content:center!important;gap:44px!important}
body.home .dtgn5-hero-copy{width:min(100%,760px)!important;max-width:760px!important;margin:0!important;padding:0!important;text-align:left!important}
body.home .dtgn5-hero-kicker{margin-bottom:18px!important}
body.home .dtgn5-hero h1{margin:0 0 21px!important;font-size:clamp(39px,4.25vw,66px)!important;line-height:1.08!important;letter-spacing:-.045em!important}
body.home .dtgn5-hero-copy>p{max-width:620px!important;margin:0!important;font-size:clamp(16px,1.25vw,19px)!important;line-height:1.6!important}
body.home .dtgn5-hero-actions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:18px!important;margin:26px 0 0!important}
body.home .dtgn5-hero-actions .btn{width:auto!important;padding:15px 25px!important}
body.home .dtgn5-hero-services{width:100%!important;max-width:1380px!important;margin:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(min-width:981px){body.home .dtgn5-hero{padding-top:110px!important}body.home .dtgn5-hero-layout{gap:48px!important}}
@media(max-width:980px){body.home .dtgn5-hero>.wrap.dtgn5-hero-layout{width:calc(100% - 64px)!important;gap:32px!important}body.home .dtgn5-hero{min-height:660px!important;padding:80px 0 36px!important}body.home .dtgn5-hero-services{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){body.home .dtgn5-hero{min-height:0!important;padding:76px 0 32px!important;background-position:54% center!important}body.home .dtgn5-hero>.wrap.dtgn5-hero-layout{width:calc(100% - 40px)!important;gap:28px!important}body.home .dtgn5-hero h1{font-size:clamp(35px,9vw,44px)!important}body.home .dtgn5-hero-actions{align-items:stretch!important;gap:12px!important}body.home .dtgn5-hero-actions .btn{width:100%!important}body.home .dtgn5-hero-secondary{text-align:center!important}body.home .dtgn5-hero-services{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Source: redesign-54.css */
/* DigitalTGN v5.4: scoped visual rebuild, no changes to the municipality directory. */
body.home .dtgn5-hero{min-height:700px!important;padding:105px 0 42px!important;background-size:cover!important;background-position:center center!important}
body.home .dtgn5-hero>.wrap.dtgn5-hero-layout{width:min(1300px,calc(100% - 100px))!important;max-width:1300px!important;margin-inline:auto!important;gap:52px!important}
body.home .dtgn5-hero-copy{max-width:775px!important;padding:0!important;margin:0!important}
body.home .dtgn5-hero h1{font-size:clamp(42px,4.6vw,72px)!important;line-height:1.09!important;max-width:780px!important}
body.home .dtgn5-hero-copy>p{font-size:19px!important;max-width:630px!important}
body.home .dtgn5-hero-services{width:100%!important;max-width:none!important;gap:18px!important}
body.home .dtgn5-hero-services a{border-radius:18px!important;min-height:100px!important}
body.home #servicios.dtgn54-services{padding:82px 0 100px!important;background:linear-gradient(180deg,#f3f8ff,#fff)!important;color:#0b2946!important}
body.home #servicios .dtgn54-services-inner{width:min(1320px,calc(100% - 80px))!important;max-width:1320px!important}
body.home .dtgn54-services-heading{text-align:center;margin:0 auto 42px;max-width:720px}
body.home .dtgn54-eyebrow{font-size:12px;letter-spacing:.19em;font-weight:900;color:#087bc8}
body.home .dtgn54-services-heading h2{font-size:clamp(34px,3.4vw,52px);letter-spacing:-.05em;line-height:1.1;margin:12px 0 14px;color:#082b4b}
body.home .dtgn54-services-heading h2 span{color:#078ce5}
body.home .dtgn54-services-heading p{color:#526a80;font-size:17px;line-height:1.6;margin:0}
body.home .dtgn54-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
body.home .dtgn54-service{min-width:0;display:flex;flex-direction:column;position:relative;overflow:hidden;border-radius:19px;border:1px solid #d7e6f2;background:#fff;color:#103654;box-shadow:0 15px 36px #0a39641a;transition:transform .22s,box-shadow .22s}
body.home .dtgn54-service:hover{transform:translateY(-7px);box-shadow:0 23px 48px #0a39642e}
body.home .dtgn54-service:focus-visible{outline:3px solid #008df3;outline-offset:3px}
body.home .dtgn54-service-art{height:170px;display:grid;place-items:center;position:relative;overflow:hidden;background:linear-gradient(130deg,#0b2949,#167ab8)}
body.home .dtgn54-service-art:before{content:'';position:absolute;width:230px;height:230px;right:-55px;top:-125px;border-radius:50%;background:#ffffff17}
body.home .dtgn54-service-art:after{content:'';position:absolute;width:210px;height:210px;left:-100px;bottom:-145px;border-radius:50%;background:#00c3ff23}
body.home .dtgn54-web .dtgn54-service-art{background:linear-gradient(135deg,#063357,#1688b9)}
body.home .dtgn54-seo .dtgn54-service-art{background:linear-gradient(135deg,#102e59,#1457ad)}
body.home .dtgn54-shop .dtgn54-service-art{background:linear-gradient(135deg,#053f59,#188ca0)}
body.home .dtgn54-care .dtgn54-service-art{background:linear-gradient(135deg,#0a3254,#2374a5)}
body.home .dtgn54-art-browser{position:relative;display:block;width:165px;height:105px;border:5px solid #d4f4ff;border-radius:11px;background:linear-gradient(130deg,#ffffff,#bce8ff);box-shadow:12px 16px 0 #03182e55;transform:rotate(-6deg)}
body.home .dtgn54-art-browser:before{content:'';position:absolute;top:0;left:0;right:0;height:21px;background:#083c62;border-radius:5px 5px 0 0}
body.home .dtgn54-art-browser i{position:absolute;top:7px;width:6px;height:6px;border-radius:50%;background:#66d9ff;z-index:1}
body.home .dtgn54-art-browser i:nth-child(1){left:10px}body.home .dtgn54-art-browser i:nth-child(2){left:21px}body.home .dtgn54-art-browser i:nth-child(3){left:32px}
body.home .dtgn54-art-browser b{position:absolute;top:37px;left:12px;width:82px;height:12px;border-radius:5px;background:#158bc9}
body.home .dtgn54-art-browser em{position:absolute;top:58px;left:12px;width:124px;height:23px;border-radius:5px;background:linear-gradient(90deg,#8fd9fa 60%,#c5e8f7 60%)}
body.home .dtgn54-art-chart{display:flex;align-items:end;gap:12px;width:174px;height:114px;padding:24px 14px 12px;border:3px solid #9bd9ff;border-radius:12px;background:#06254d99;position:relative;transform:rotate(4deg)}
body.home .dtgn54-art-chart i{display:block;width:26px;border-radius:5px 5px 0 0;background:linear-gradient(#4fffe4,#1aa2e8)}
body.home .dtgn54-art-chart i:nth-child(1){height:30px}body.home .dtgn54-art-chart i:nth-child(2){height:45px}body.home .dtgn54-art-chart i:nth-child(3){height:64px}body.home .dtgn54-art-chart i:nth-child(4){height:79px}
body.home .dtgn54-art-chart b{position:absolute;right:2px;top:-24px;font-size:65px;color:#a1f9e9;text-shadow:0 4px 10px #0006}
body.home .dtgn54-art-shop{position:relative;width:143px;height:100px;background:#c6f4ff;border-radius:8px;border:5px solid #eaffff;box-shadow:13px 13px 0 #001c3855;transform:rotate(-4deg)}
body.home .dtgn54-art-shop:before{content:'';position:absolute;left:-15px;right:-15px;top:-24px;height:37px;background:repeating-linear-gradient(90deg,#08a1d9 0 25px,#e8fbff 25px 50px);border-radius:8px 8px 14px 14px;border:4px solid #fff}
body.home .dtgn54-art-shop b{position:absolute;left:42px;top:26px;color:#0876b6;font-size:36px}
body.home .dtgn54-art-shop em{position:absolute;right:10px;bottom:0;width:28px;height:40px;background:#61bde5;border-radius:5px 5px 0 0}
body.home .dtgn54-art-shield{display:grid;place-items:center;position:relative;width:128px;height:133px;background:linear-gradient(145deg,#a8eaff,#30a6e8);clip-path:polygon(50% 0,95% 16%,90% 65%,50% 100%,10% 65%,5% 16%);color:#fff;font-size:74px;font-weight:900;filter:drop-shadow(9px 9px 4px #001b3c55)}
body.home .dtgn54-service-icon{display:grid;place-items:center;position:relative;z-index:2;width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#0eb7f1,#0b66d7);color:#fff;font-size:29px;font-weight:800;margin:-27px 0 0 23px;border:4px solid white;box-shadow:0 5px 14px #0759a433}
body.home .dtgn54-service-copy{display:flex;flex-direction:column;gap:10px;padding:16px 24px 27px;flex:1}
body.home .dtgn54-service-copy strong{font-size:22px;line-height:1.2;letter-spacing:-.025em;color:#092d4c}
body.home .dtgn54-service-copy small{font-size:14px;line-height:1.65;color:#52677a}
body.home .dtgn54-service-arrow{position:absolute;bottom:18px;right:17px;font-size:20px;color:#088bdc}
@media(max-width:1050px){body.home .dtgn54-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.home .dtgn5-hero>.wrap.dtgn5-hero-layout{width:calc(100% - 64px)!important}}
@media(max-width:620px){body.home .dtgn5-hero>.wrap.dtgn5-hero-layout{width:calc(100% - 38px)!important;gap:30px!important}body.home .dtgn5-hero{min-height:0!important;padding:76px 0 28px!important}body.home .dtgn5-hero h1{font-size:clamp(35px,9vw,44px)!important}body.home .dtgn5-hero-copy>p{font-size:16px!important}body.home .dtgn54-service-grid{grid-template-columns:1fr!important;gap:17px}body.home #servicios .dtgn54-services-inner{width:calc(100% - 38px)!important}body.home #servicios.dtgn54-services{padding:60px 0!important}body.home .dtgn54-service-art{height:185px}body.home .dtgn54-service-copy{min-height:140px}}
@media(prefers-reduced-motion:reduce){body.home .dtgn54-service{transition:none!important}}

/* 5.4 refinement: consistent content width, keyboard focus and card proportions */
@media(min-width:1200px){
 body.home .dtgn5-hero>.wrap.dtgn5-hero-layout{width:min(1260px,calc(100% - 112px))!important;}
 body.home #servicios .dtgn54-services-inner{width:min(1260px,calc(100% - 112px))!important;}
 body.home .dtgn54-service-art{height:188px;}
}
body.home .dtgn54-service{isolation:isolate;}
body.home .dtgn54-service-copy{padding-bottom:38px;}
body.home .dtgn54-service-arrow{right:22px;bottom:20px;}
body.home .dtgn54-service:focus-visible{outline:3px solid #00a6f7!important;outline-offset:4px!important;}
body.home .dtgn5-hero-actions a:focus-visible{outline:3px solid #fff;outline-offset:4px;}
@media(min-width:621px) and (max-width:1050px){
 body.home #servicios .dtgn54-services-inner{width:calc(100% - 64px)!important;}
 body.home .dtgn54-service-art{height:205px;}
}
@media(max-width:620px){
 body.home .dtgn54-service-copy{min-height:0!important;padding-bottom:40px;}
 body.home .dtgn54-service-art{height:195px!important;}
 body.home .dtgn54-service-grid{gap:20px!important;}
}

/* v5.5: lead-generation section; no fabricated claims */
body.home .dtgn55-conversion{padding:90px 0;background:#061d33;color:#fff;position:relative;overflow:hidden}
body.home .dtgn55-conversion:before{content:"";position:absolute;right:-15%;top:-110%;width:75%;aspect-ratio:1;background:radial-gradient(circle,#0b9fd338,transparent 65%);pointer-events:none}
body.home .dtgn55-conversion-layout{width:min(1260px,calc(100% - 80px));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:80px;position:relative}
body.home .dtgn55-eyebrow{color:#4bcaff;font-size:12px;letter-spacing:.18em;font-weight:800}
body.home .dtgn55-conversion h2{font-size:clamp(34px,3.5vw,56px);letter-spacing:-.045em;line-height:1.1;margin:17px 0 20px;color:white}
body.home .dtgn55-conversion h2 span{color:#43caff}
body.home .dtgn55-conversion p{color:#b9d2e5;font-size:17px;line-height:1.75;max-width:620px}
body.home .dtgn55-conversion-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
body.home .dtgn55-conversion-actions a{display:inline-flex;gap:18px;align-items:center;justify-content:center;border-radius:13px;padding:15px 20px;font-weight:800;text-decoration:none}
body.home .dtgn55-primary{background:linear-gradient(110deg,#09bdf0,#155ce9);color:white}
body.home .dtgn55-secondary{border:1px solid #6ab7e38c;color:#e8f8ff}
body.home .dtgn55-conversion-actions a:focus-visible{outline:3px solid #fff;outline-offset:4px}
body.home .dtgn55-conversion-steps{display:grid;gap:12px}
body.home .dtgn55-conversion-steps>div{display:grid;grid-template-columns:52px 1fr;gap:3px 14px;padding:19px 20px;border:1px solid #2e6482;background:#ffffff0a;border-radius:16px}
body.home .dtgn55-conversion-steps span{grid-row:span 2;color:#4bcaff;font-size:21px;font-weight:900}
body.home .dtgn55-conversion-steps strong{color:#fff;font-size:18px}
body.home .dtgn55-conversion-steps small{color:#b5cddd;font-size:14px;line-height:1.6}
@media(max-width:900px){body.home .dtgn55-conversion-layout{grid-template-columns:1fr;gap:38px}}
@media(max-width:600px){body.home .dtgn55-conversion{padding:62px 0}body.home .dtgn55-conversion-layout{width:calc(100% - 38px)}body.home .dtgn55-conversion-actions a{width:100%}}
