/* Service navigation and pages share the existing Tecla identity. */
.service-title-link{display:inline-flex;align-items:center;gap:.45rem;color:inherit;text-decoration:none;}
.service-title-arrow{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--tecla-blue-soft);font-size:1.7rem;font-weight:500;transition:transform var(--tecla-transition);}
.service-title-link:hover .service-title-arrow{transform:translateX(4px);}
.service-title-link:focus-visible,.service-inline-link:focus-visible,.service-return a:focus-visible,.service-breadcrumb a:focus-visible{outline:2px solid var(--tecla-blue-soft);outline-offset:4px;border-radius:2px;}
.nom a{text-decoration:none;color:inherit;}
.nom .brand-title{display:block;font-size:2.5rem;font-weight:500;line-height:1.2;margin-top:20px;}
.dades a{color:inherit;text-decoration:none;}
.dades a:hover{text-decoration:underline;}
a.tecla-action-button{display:block;text-decoration:none;}
.service-detail{min-width:0;}
.service-breadcrumb{font-size:.9rem;color:var(--tecla-muted);margin:0 0 18px;}
.service-breadcrumb a{color:var(--tecla-blue-soft);}
.service-detail-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,1fr);border:1px solid var(--tecla-border-soft);background:var(--tecla-panel);border-radius:10px;overflow:hidden;margin-bottom:24px;}
.service-detail-copy{padding:2rem;}
.service-detail-copy h1{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:700;margin:.5rem 0 1rem;}
.service-detail-copy p{line-height:1.8;margin-bottom:0;}
.service-detail-photo{position:relative;min-height:250px;}
.service-detail-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.service-detail-section{padding:1.5rem;border:1px solid var(--tecla-border-soft);border-radius:10px;background:var(--tecla-panel);line-height:1.75;}
.service-detail-section h2,.service-detail-contact h2{font-size:1.2rem;font-weight:700;margin-bottom:.8rem;}
.service-detail-section p:last-child,.service-detail-section ul:last-child{margin-bottom:0;}
.service-detail-section li+li{margin-top:.5rem;}
.service-inline-link{color:var(--tecla-blue-soft);font-weight:600;text-underline-offset:4px;}
.service-detail-contact{margin-top:24px;padding:1.7rem;border:1px solid var(--tecla-blue);border-radius:10px;background:rgba(118,149,190,.09);line-height:1.75;}
.service-direct-contact{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-bottom:0;}
.service-direct-contact a{color:var(--tecla-blue-soft);text-underline-offset:4px;overflow-wrap:anywhere;}
.service-return{margin:24px 0;}
.service-return a{display:inline-flex;align-items:center;gap:.5rem;color:var(--tecla-blue-soft);min-height:44px;}
.meca-access{margin-top:20px;}
.service-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px;}
.service-example{min-width:0;width:100%;padding:1.25rem;border:1px solid var(--tecla-border-soft);border-radius:10px;background:var(--tecla-panel);}
.service-example h2{font-size:1.35rem;font-weight:700;}
.service-example>p,.service-example figcaption{color:var(--tecla-muted);}
.service-example figure{margin:0;}
.service-example figure>a{display:block;border-radius:10px;overflow:hidden;border:1px solid var(--tecla-border-soft);}
.service-example figure>a:focus-visible{outline:2px solid var(--tecla-blue-soft);outline-offset:4px;}
.service-example img{display:block;width:100%;height:auto;}
.service-example figcaption{font-size:.85rem;line-height:1.6;margin-top:10px;}
@media(max-width:1000px){.service-detail-layout .aside-dreta{order:0;}.service-detail-layout .actions-panel{margin:0;max-width:none;}.service-detail-hero{grid-template-columns:minmax(0,1.3fr) minmax(150px,1fr);}}
@media(max-width:680px){.service-detail-hero,.service-detail-sections{grid-template-columns:1fr;}.service-detail-copy{padding:1.5rem;}.service-detail-photo{min-height:180px;max-height:220px;}.service-detail-section{padding:1.3rem;}.service-example{width:100%;}}
/* Fixed animation canvas prevents the gears/chains wrapping on narrow screens.
   The original keyframes, offsets, durations and text cycle remain shared. */
.header-animation-frame{width:360px;max-width:100%;height:65px;overflow:hidden;}
.header-animation-canvas{width:360px;height:65px;}
@media(min-width:768px) and (max-width:1000px){
 .actions-panel{max-width:none;}
 .actions-panel .pc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
 .pc>.tecla-action-button{height:104px;margin:0;display:flex;flex-direction:column;justify-content:center;}
 .pc>.tecla-action-button .b-img{height:36px;width:100%;object-fit:contain;}
 .pc>.tecla-action-button h4{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:24px;margin:8px 14px;font-size:1rem;line-height:1.25;}
 .pc>.tecla-action-button h4 i{float:none;margin:0;flex-shrink:0;}
 .pc>.action-card-code .action-subtext{margin:0 14px;font-size:.75rem;}
 .pc>.support-code-panel,.pc>.remote-download-status{grid-column:1/-1;}
 .support-code-mode .pc>.boto-menu-remot{display:none;}
 .support-code-mode .pc>.action-card-code{grid-column:1/-1;height:64px;}
}
@media(max-width:767.98px){
 .aside-dreta,.tecla-action-button{display:none!important;}
 .header-row{margin-left:0;margin-right:0;}
 .header{height:auto;margin:18px 0;padding:10px 12px;}
 .header>.row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:8px 12px;margin:0;}
 .header>.row>.col-5{grid-column:1/-1;width:auto;padding:0;}
 .header>.row>.col-3,.header>.row>.col-4{width:auto;padding:0;align-self:center;}
 .header-animation-frame{height:56px;}
 .header-animation-canvas{transform:scale(.85);transform-origin:top left;}
 .header .slider{display:block;}
 .header .nom h1,.header .nom .brand-title{font-size:1.75rem;margin:0;line-height:1.2;}
 .header .dades{font-size:.72rem;}
 .header .dades ul li{white-space:normal;}
}
@media(max-width:359.98px){.header-animation-frame{height:50px;}.header-animation-canvas{transform:scale(.75);}}
@media(prefers-reduced-motion:reduce){.service-title-arrow{transition:none;}}
@media(max-width:680px){.service-examples{grid-template-columns:1fr;}}
