/* Tema común. Conserva los contenidos y el funcionamiento de las páginas. */
.tc-homepage .ta-footer-help{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 24px;margin:0 auto 24px;max-width:1000px;padding:0 20px;font-size:.88rem}
.tc-homepage .ta-footer-help a{text-decoration:none}.tc-homepage .ta-footer-help a:hover{text-decoration:underline}
.tc-homepage .header .nav a[aria-current=page]{font-weight:750;color:#0058a3}
.tc-homepage .hp-menu-panel h2.ta-help-title{margin-top:18px}
.tc-all main{--primary-color:#0058a3;--secondary-color:#19365e;--accent-color:#0058a3;color:#52657e;background:#fcfdff;padding:0 0 30px!important}
.tc-all main *{box-sizing:border-box;min-width:0}
.tc-all main .container,.tc-all .ta-width{width:calc(100% - 64px)!important;max-width:1160px!important;margin:0 auto!important;padding-left:0!important;padding-right:0!important}
.tc-all main h1,.tc-all main h2,.tc-all main h3,.tc-all main strong{color:#19365e}
.tc-all main h1{font-size:clamp(2rem,3.4vw,3rem)!important;line-height:1.14!important;letter-spacing:-.025em;margin:12px 0 20px!important;text-wrap:balance}
.tc-all main h2{font-size:1.55rem!important;line-height:1.35!important;margin:0 0 18px!important;text-align:left}
.tc-all main h3{font-size:1.08rem!important;line-height:1.5!important;margin:0 0 12px!important}
.tc-all main p,.tc-all main li{font-size:1rem;line-height:1.75;overflow-wrap:break-word}
.tc-all main p{margin:0 0 18px}.tc-all main ul,.tc-all main ol{padding-left:24px;line-height:1.75}
.tc-all main a{color:#0058a3;text-underline-offset:3px}
.tc-all main [class*=kicker]{display:block;font-size:.78rem!important;letter-spacing:.07em;text-transform:uppercase;color:#0058a3!important;font-weight:750;margin-bottom:12px}
.tc-all main .btn{border:1px solid #0058a3!important;border-radius:9px!important;background:#0058a3!important;color:#fff!important;padding:13px 19px!important;font-size:.95rem;line-height:1.5;white-space:normal!important;text-decoration:none!important;box-shadow:none!important;text-align:center;display:inline-flex;justify-content:center;align-items:center;gap:9px;max-width:100%}
.tc-all main .btn:hover{background:#004b8b!important}
.tc-all main .btn-secondary,.tc-all main .btn-outline{background:transparent!important;color:#0058a3!important}
.tc-all main .ta-hero{padding:42px 0 46px!important;background:linear-gradient(130deg,#edf4ff,#fcfdff)!important}
.tc-all main .ta-hero-grid{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;gap:44px!important;align-items:start!important}
.tc-all main .ta-hero-copy>p{font-size:1.06rem;line-height:1.75;margin-bottom:23px}
.tc-all main .ta-hero-copy [class*=actions]{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 0}
.tc-all main .ta-hero-aside{width:100%;align-self:start}
.tc-all main .ta-photo{display:block;width:100%;height:330px;object-fit:cover;border-radius:18px;border:1px solid #d8e5f7}
.tc-all main .ta-mockup-caption{font-size:.76rem;margin-top:8px;color:#687b92}
.tc-all main .ta-hero-aside>aside{padding:25px;background:#fff;color:#52657e;border:1px solid #d8e5f7;border-radius:18px;box-shadow:none}
.tc-all main .send-panel .num{background:#0058a3;color:#fff}
.tc-all main .example{background:#edf4ff;color:#19365e;border:1px solid #d8e5f7}
.tc-all main .ta-hero-aside h2{font-size:1.2rem!important}
.tc-all main .ta-hero-aside :is(.quick-list,.guide-check){display:grid;gap:15px}
.tc-all main .ta-hero-aside :is(.quick-list,.guide-check)>div{display:flex;gap:12px;align-items:flex-start}
.tc-all main .ta-hero-aside i{color:#0058a3;margin-top:5px}
.tc-all main .ta-price-card{padding:23px;background:#fff;border:1px solid #d8e5f7;border-radius:17px;margin:22px 0}
.tc-all main .ta-price-card h2{font-size:1.2rem!important;margin-bottom:10px!important}
.tc-all main .ta-price-card p{font-size:.88rem;margin:12px 0 0;line-height:1.6}
.tc-all main table{width:100%;border-collapse:collapse;background:transparent;table-layout:auto}
.tc-all main th,.tc-all main td{padding:12px 9px;border-bottom:1px solid #d8e5f7;text-align:left;line-height:1.5;white-space:normal!important;overflow-wrap:normal}
.tc-all main th{color:#19365e;font-size:.88rem;background:#edf4ff!important}
.tc-all main td{color:#19365e;font-size:.98rem;background:transparent!important}
.tc-all main caption{color:#52657e;font-size:.85rem;text-align:left;padding:0 0 14px}
.tc-all main .ta-price-card :is(td,th):not(:first-child){text-align:right}
.tc-all main .ta-price-card td{font-weight:750;font-size:1.06rem}
.tc-all main .ta-section{padding:34px 0!important;background:#fcfdff!important}
.tc-all main .ta-section:nth-child(even){background:#f4f8ff!important}
.tc-all main :is(.title,.section-title,.pro-title,.guide-title,.send-title){text-align:left;margin:0 0 24px!important}
.tc-all main :is(.cards,.service-detail-grid,.pro-cards,.guide-cards,.service-grid,.step-grid,.channel-grid,.use-grid,.info-grid,.contact-row-grid,.sobre-contacto-grid){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.tc-all main :is(.card,.service-detail-card,.pro-card,.guide-card,.service-card,.channel-card,.use-card,.info-card,.price-card,.step-grid>.step){background:#fff!important;border:1px solid #d8e5f7!important;border-radius:13px!important;padding:22px!important;box-shadow:none!important;color:#52657e}
.tc-all main :is(.card,.service-detail-card,.pro-card,.guide-card,.service-card,.channel-card,.use-card)>i{font-size:1.4rem!important;color:#0058a3!important;display:block;margin-bottom:14px}
.tc-all main :is(.card,.service-detail-card,.pro-card,.guide-card,.service-card,.channel-card,.use-card) p{font-size:.94rem;line-height:1.7}
.tc-all main :is(.highlight,.info-card,.example-request,.example-message,.checklist,.example-box){background:#edf4ff!important;border-color:#d8e5f7!important;color:#19365e!important;border-radius:12px;padding:20px!important;margin-top:20px}
.tc-all main :is(.cta,.cta-box,.student-cta,.prof-price-card,.student-band,.hero-card){background:#edf4ff!important;color:#19365e!important;border:1px solid #d8e5f7!important;border-radius:16px!important;box-shadow:none!important}
.tc-all main :is(.cta,.cta-box){padding:26px!important}
.tc-all main :is(.cta,.cta-box) h2{color:#19365e!important}
.tc-all main :is(.student-offer-highlight,.student-badge){background:#0058a3!important;color:#fff!important}
.tc-all main .student-price-row span{color:#0058a3!important}
.tc-all main .student-band{padding:26px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px}
.tc-all main .student-band img{width:100%;height:auto;border-radius:12px}
.tc-all main :is(.student-cta,.prof-price-card){padding:24px!important}
.tc-all main :is(.table-wrap,.prof-price-card){max-width:100%;overflow-x:auto}
.tc-all main :is(.compare,.tc-binding-prices,.price-grid){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tc-all main .ta-details-area{padding:30px 0 0}
.tc-all main .ta-detail{background:#fcfdff;border:1px solid #d8e5f7;border-radius:12px;margin:0 0 13px;scroll-margin-top:140px}
.tc-all main .ta-detail>summary{padding:20px 23px;cursor:pointer;font-size:1rem;font-weight:650;line-height:1.6;color:#19365e}
.tc-all main .ta-detail[open]>summary{border-bottom:1px solid #d8e5f7}
.tc-all main .ta-detail-body{padding:25px}
.tc-all main .ta-detail-body>section{padding:0!important;background:transparent!important;margin:0!important}
.tc-all main .ta-detail-body .container{width:100%!important;max-width:none!important}
.tc-all main .faq-item{border:0!important;border-bottom:1px solid #d8e5f7!important;box-shadow:none!important;border-radius:0!important;padding:0 0 20px!important;margin:0 0 20px!important;background:transparent!important}
.tc-all main .faq-item:last-child{border:0!important;margin-bottom:0!important;padding-bottom:0!important}
.tc-all main .faq-item p{margin-bottom:0}
.tc-all main .service-page-points{display:flex;gap:12px;flex-wrap:wrap;margin-top:23px}
.tc-all main .service-page-point{background:#fff;border:1px solid #d8e5f7;color:#19365e}
.tc-all main .service-page-point i{color:#0058a3}
.tc-all main img{max-width:100%;height:auto}
.tc-all main .audience-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tc-all main .audience-item{background:#edf4ff!important;color:#19365e;padding:20px;border-radius:12px}
.tc-all main .audience-item i{color:#0058a3}
.tc-all .ta-policy{font-size:.85rem;line-height:1.7;margin:20px 0 0}
.tc-all main .legal-container{max-width:880px!important;padding:42px 0!important;font-size:1rem}
.tc-all main .legal-container h2{font-size:1.2rem!important;margin:30px 0 14px!important}
.tc-all main .legal-updated{font-size:.88rem;color:#687b92}
.tc-all main.presupuesto-page{background:linear-gradient(120deg,#edf4ff,#fcfdff)!important;padding:42px 0!important}
.tc-all main .presupuesto-layout{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:46px!important;align-items:start}
.tc-all main .presupuesto-intro{padding:0!important;background:transparent!important}
.tc-all main .presupuesto-ventajas{display:grid;gap:20px;margin-top:30px}
.tc-all main .presupuesto-ventaja{display:flex;align-items:center;gap:12px;color:#19365e}
.tc-all main .presupuesto-ventaja i{color:#0058a3}
.tc-all main .presupuesto-form-card{padding:28px!important;background:#fff!important;border:1px solid #d8e5f7;border-radius:18px;box-shadow:none}
.tc-all main .form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px}
.tc-all main .form-group.full{grid-column:1/-1}
.tc-all main input,.tc-all main select,.tc-all main textarea{max-width:100%;font-size:16px!important;border-color:#c9d9ec!important;border-radius:8px!important;background:#fcfdff!important}
.tc-all main :is(input:not([type=checkbox]),select,textarea){width:100%!important}
.tc-all main label{line-height:1.6;color:#19365e}
.tc-all main .form-check{display:flex;gap:12px;align-items:flex-start;margin:24px 0}
.tc-all main .form-check input{flex:0 0 auto;margin-top:6px}
.tc-all main .form-note,.tc-all main .form-help{font-size:.85rem;line-height:1.65}
.tc-all main :is(input,select,textarea):focus{outline:2px solid #78a9db;outline-offset:2px}
.tc-all main :is([id],details){scroll-margin-top:140px}
@media(max-width:1000px){.tc-all main .container,.tc-all .ta-width{width:calc(100% - 40px)!important}.tc-all main .ta-hero-grid{gap:28px!important}.tc-all main :is(.cards,.service-detail-grid,.pro-cards,.guide-cards,.service-grid,.step-grid,.channel-grid,.use-grid,.info-grid,.contact-row-grid,.sobre-contacto-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:768px){
 .tc-all main .ta-hero{padding:28px 0!important}.tc-all main .ta-hero-grid{grid-template-columns:minmax(0,1fr)!important;gap:25px!important}
 .tc-all main h1{font-size:2rem!important}.tc-all main h2{font-size:1.35rem!important}
 .tc-all main .ta-hero-copy>p{font-size:1rem;line-height:1.75}
 .tc-all main .ta-photo{height:240px!important;object-fit:cover}
 .tc-all main .ta-price-card{padding:20px;margin:20px 0}
 .tc-all main :is(.cards,.service-detail-grid,.pro-cards,.guide-cards,.service-grid,.step-grid,.channel-grid,.use-grid,.info-grid,.contact-row-grid,.sobre-contacto-grid,.tc-binding-prices,.price-grid,.compare,.student-band,.presupuesto-layout,.form-grid){grid-template-columns:minmax(0,1fr)!important}
 .tc-all main :is(.student-band,.student-cta,.prof-price-card){padding:19px!important}
 .tc-all main .ta-section{padding:26px 0!important}.tc-all main .ta-detail-body{padding:19px}.tc-all main .ta-detail>summary{padding:17px 19px}
 .tc-all main .audience-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tc-all main .prof-price-table :is(th,td){font-size:.8rem!important;padding:10px 5px!important}
 .tc-all main .ta-detail-body .prof-price-card{padding:8px!important}
 .tc-all main .presupuesto-layout{gap:28px!important}.tc-all main .presupuesto-form-card{padding:20px!important}
 .tc-all main .form-group.full{grid-column:auto}.tc-all main .form-submit{width:100%}
 .tc-all main.presupuesto-page{padding:28px 0!important}.tc-all main .legal-container{padding:28px 0!important}
 .tc-all main :is(.card,.service-detail-card,.pro-card,.guide-card,.service-card,.channel-card,.use-card,.info-card,.price-card){padding:19px!important}
 .tc-all .tecno-launcher-label{display:none!important}
}
