/* Tecnocaldera legal documents. Scoped to this section; storefront controls are unchanged. */
.tc-legal-page{--legal-green:#107c50;--legal-deep:#113d2c;--legal-ink:#163328;--legal-muted:#52665c;--legal-line:#dce7e0;--legal-soft:#f3f8f5;--tc-legal-top:150px;color:var(--legal-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;padding-bottom:56px}
.tc-legal-page.page-shell{width:min(1280px,calc(100% - 64px));max-width:1280px;margin-inline:auto}
.tc-legal-page *{box-sizing:border-box;letter-spacing:0}
.tc-legal-page .tc-legal-heading{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin:10px 0 22px;padding:30px 34px 28px;border:1px solid #244c3a;border-radius:18px;background:linear-gradient(112deg,#163f2e 0%,#10291f 76%);color:#fff;box-shadow:0 10px 26px #112c2010}
.tc-legal-heading>div:first-child{min-width:0;max-width:970px}
.tc-legal-heading .tc-legal-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:11px;line-height:1.5;font-weight:650;color:#c3e4d0;text-transform:uppercase;letter-spacing:.08em}
.tc-legal-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border:1px solid #a9d3bb44;background:#ffffff0a;border-radius:9px;color:#c2ecb9}
.tc-legal-heading h1{margin:0 0 14px;max-width:33ch;font-family:Bahnschrift,"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:clamp(28px,2.5vw,36px);font-weight:700;line-height:1.14;color:#fff;text-wrap:balance;letter-spacing:-.018em}
.tc-legal-heading p{max-width:88ch;margin:0;font-size:15px;font-weight:400;line-height:1.7;color:#e0ece5}
.tc-legal-heading time{display:block;margin-top:17px;font-size:11px;line-height:1.5;color:#b9d1c3}
.tc-legal-page .tc-legal-actions{display:flex;gap:8px;flex-shrink:0}
.tc-legal-page :is(.tc-legal-print,.tc-legal-download){display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:1px solid #c4dfce55;border-radius:10px;color:#edf9f0;background:#ffffff08;cursor:pointer;transition:background .16s,border-color .16s}
.tc-legal-page .tc-legal-print[hidden]{display:none}
.tc-legal-page :is(.tc-legal-print,.tc-legal-download):hover{background:#ffffff1c;border-color:#c4dfce99}
.tc-legal-page>.tc-legal-pages{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 30px;padding:0}
.tc-legal-page .tc-legal-nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tc-legal-page .tc-legal-pages a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:10px 12px;margin:0;border:1px solid var(--legal-line);border-radius:10px;background:#fff;color:#435c4f;text-decoration:none;font-size:12px;line-height:1.35;font-weight:600;transition:background .16s,border-color .16s,color .16s}
.tc-legal-page .tc-legal-pages a[aria-current=page]{color:#07613a;border-color:#b9d6c4;background:#eaf5ed;box-shadow:inset 0 -2px 0 #107c50}
.tc-legal-page .tc-legal-pages a:hover{color:#075e37;border-color:#b7d2c1;background:#f1f8f3}
.tc-legal-page svg{width:19px;height:19px;flex-shrink:0;stroke-width:1.65}
.tc-legal-page .tc-legal-grid{display:grid;grid-template-columns:262px minmax(0,1fr);align-items:start;gap:26px}
.tc-legal-page .tc-legal-nav{position:sticky;top:var(--tc-legal-top);min-width:0;max-height:calc(100dvh - var(--tc-legal-top) - 18px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bed2c4 transparent;margin:0;border:1px solid var(--legal-line);border-radius:14px;background:#f8fbf9;box-shadow:0 2px 5px #16332804;z-index:5}
.tc-legal-nav>summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;min-height:56px;padding:14px 17px;font-size:13px;line-height:1.5;font-weight:650;color:var(--legal-ink)}
.tc-legal-nav>summary::-webkit-details-marker{display:none}
.tc-legal-nav>summary .tc-legal-chevron{margin-left:auto;width:15px;height:15px;transition:transform .18s}
.tc-legal-nav[open]>summary .tc-legal-chevron{transform:rotate(180deg)}
.tc-legal-index{padding:0 9px 12px}
.tc-legal-index>span{display:block;margin:0 8px 10px;padding:0 0 12px;border-bottom:1px solid var(--legal-line);font-size:10px;font-weight:600;line-height:1.65;color:var(--legal-muted);text-transform:uppercase;letter-spacing:.035em}
.tc-legal-page .tc-legal-index ol{display:grid;gap:3px;margin:0;padding:0;list-style:none}
.tc-legal-page .tc-legal-index a{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;padding:9px 9px;border:1px solid transparent;border-radius:7px;margin:0;font-size:12px;line-height:1.55;color:#52675c;text-decoration:none;font-weight:450}
.tc-legal-index a>span:first-child{color:#789084;font-size:10px;line-height:1.9;font-variant-numeric:tabular-nums}
.tc-legal-page .tc-legal-index a[aria-current=location]{border-color:#d4e5d9;background:#eaf4ee;color:#14573a;font-weight:650}
.tc-legal-page .tc-legal-index a:hover{color:#075c36;background:#edf5ef}
.tc-legal-page .tc-legal-content{min-width:0;max-width:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.tc-legal-page .tc-legal-content>section{position:relative;padding:28px 30px;margin:0 0 18px;border:1px solid var(--legal-line);border-radius:15px;background:#fff;box-shadow:0 2px 5px #16332805;scroll-margin-top:calc(var(--tc-legal-top) + 16px)}
.tc-legal-page .tc-legal-content>section:last-child{margin-bottom:0}
.tc-legal-page .tc-legal-content h2{display:flex;align-items:flex-start;gap:12px;margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid #e9efeb;font-family:Bahnschrift,"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-size:23px;line-height:1.35;font-weight:650;color:var(--legal-ink);text-wrap:pretty}
.tc-legal-content h2 .tc-legal-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 31px;min-height:31px;margin-top:0;border-radius:8px;background:#edf5ef;color:#107c50;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:11px;line-height:1.5;font-weight:650;font-variant-numeric:tabular-nums}
.tc-legal-page .tc-legal-content h3{margin:24px 0 9px;font-size:16px;font-weight:650;line-height:1.5;color:#244d39}
.tc-legal-page .tc-legal-content p{margin:0 0 15px}
.tc-legal-page .tc-legal-content :is(ul,ol){padding-left:23px;margin:0 0 18px}
.tc-legal-page .tc-legal-content li+li{margin-top:8px}
.tc-legal-page .tc-legal-content li::marker{color:var(--legal-green)}
.tc-legal-page .tc-legal-content address{font-style:normal;line-height:1.8;margin:16px 0}
.tc-legal-page .tc-legal-content a{color:#096b40;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.tc-legal-page .tc-legal-content strong{font-weight:650;color:#183b29}
.tc-legal-page .tc-legal-content>section>:last-child{margin-bottom:0}
.tc-legal-page .tc-legal-content .tc-legal-identity{display:grid;grid-template-columns:172px minmax(0,1fr);margin:20px 0 0;border:1px solid var(--legal-line);border-radius:10px;overflow:hidden;line-height:1.65}
.tc-legal-page .tc-legal-identity :is(dt,dd){min-width:0;margin:0;padding:13px 16px;border-bottom:1px solid var(--legal-line);font-size:13px}
.tc-legal-page .tc-legal-identity dt{background:#f3f7f4;font-weight:600;color:#496354}
.tc-legal-page .tc-legal-identity dd{font-weight:450;background:#fff}
.tc-legal-page .tc-legal-identity dt:last-of-type,.tc-legal-page .tc-legal-identity dd:last-child{border-bottom:0}
.tc-legal-page .tc-legal-content table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13px;line-height:1.7;margin:20px 0;border:1px solid var(--legal-line);border-radius:10px;overflow:hidden}
.tc-legal-content th,.tc-legal-content td{padding:13px 14px;border:0;border-bottom:1px solid var(--legal-line);text-align:left;vertical-align:top;overflow-wrap:anywhere}
.tc-legal-content th{color:#315c43;background:#f0f6f2;font-weight:650}
.tc-legal-content tr:last-child td{border-bottom:0}
.tc-legal-content code{font-size:12px;white-space:normal;overflow-wrap:anywhere;background:#f2f6f3;padding:2px 4px;border-radius:3px}
.tc-legal-page :is(a,button,summary):focus-visible{outline:2px solid #198d55;outline-offset:4px}
.tc-legal-heading :is(a,button):focus-visible{outline-color:#b4e8a4}
.tc-legal-page .tc-legal-content section:focus{outline:none}
.tc-legal-page .tc-legal-contact{display:flex;flex-wrap:wrap;gap:12px 24px;padding:23px 2px 0;margin:24px 0 0;border-top:1px solid var(--legal-line);font-size:13px;line-height:1.6}
.tc-legal-contact a{display:inline-flex;align-items:center;gap:8px;color:#176344;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.tc-legal-page.page-shell{width:calc(100% - 40px)}.tc-legal-page .tc-legal-heading{padding:26px 28px}.tc-legal-page .tc-legal-grid{grid-template-columns:230px minmax(0,1fr);gap:20px}.tc-legal-page>.tc-legal-pages{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:22px}.tc-legal-page .tc-legal-content>section{padding:24px}.tc-legal-page .tc-legal-content .tc-legal-identity{grid-template-columns:135px minmax(0,1fr)}}
@media(max-width:820px){
 .tc-legal-page .tc-legal-heading{margin-top:8px;padding:24px;gap:16px;border-radius:14px}
 .tc-legal-heading h1{font-size:30px;max-width:none}.tc-legal-heading p{font-size:14px;line-height:1.75}.tc-legal-heading time{font-size:10px}
 .tc-legal-page .tc-legal-grid{display:block}.tc-legal-page .tc-legal-nav{margin:0 0 18px;border-radius:10px;background:#f5faf6;max-height:calc(100dvh - var(--tc-legal-top) - 14px)}
 .tc-legal-nav>summary{min-height:52px;padding:13px 16px}.tc-legal-index{padding:0 10px 12px}.tc-legal-page .tc-legal-index a{min-height:44px;font-size:13px}
 .tc-legal-page .tc-legal-content{font-size:15px;line-height:1.8}.tc-legal-page .tc-legal-content>section{padding:25px 24px;scroll-margin-top:calc(var(--tc-legal-top) + 68px)}
 .tc-legal-page .tc-legal-content h2{font-size:22px}
}
@media(max-width:600px){
 .tc-legal-page.page-shell{width:calc(100% - 28px);padding-bottom:36px}
 .tc-legal-page .tc-legal-heading{flex-wrap:wrap;gap:16px;margin-bottom:16px;padding:22px 20px}
 .tc-legal-heading>div:first-child{width:100%}.tc-legal-heading h1{font-size:28px;line-height:1.16;letter-spacing:-.01em;text-wrap:initial;margin-bottom:14px}
 .tc-legal-heading .tc-legal-eyebrow{font-size:9px;gap:9px;letter-spacing:.05em;margin-bottom:16px}.tc-legal-mark{width:28px;height:28px;flex-basis:28px;border-radius:8px}
 .tc-legal-page .tc-legal-actions{gap:8px}.tc-legal-page :is(.tc-legal-print,.tc-legal-download){width:40px;height:40px;flex-basis:40px;border-radius:9px}
 .tc-legal-heading>.tc-legal-print,.tc-legal-heading>.tc-legal-actions{position:absolute;right:20px;bottom:20px}
 .tc-legal-heading time{display:flex;align-items:center;min-height:40px;max-width:calc(100% - 52px)}
 .tc-legal-heading:has(.tc-legal-actions) time{max-width:calc(100% - 100px)}
 .tc-legal-page>.tc-legal-pages{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:18px}
 .tc-legal-page .tc-legal-pages a{justify-content:flex-start;min-height:51px;padding:10px 12px;font-size:11px;gap:8px;border-radius:9px}
 .tc-legal-page .tc-legal-pages a svg{width:17px;height:17px}
 .tc-legal-page .tc-legal-content>section{padding:22px 19px;margin-bottom:14px;border-radius:12px}
 .tc-legal-page .tc-legal-content h2{font-size:21px;gap:10px;margin-bottom:17px;padding-bottom:15px}.tc-legal-content h2 .tc-legal-number{flex-basis:27px;min-height:27px;font-size:10px;border-radius:7px}
 .tc-legal-page .tc-legal-content h3{font-size:15px}.tc-legal-page .tc-legal-content{font-size:14px;line-height:1.85}
 .tc-legal-page .tc-legal-content .tc-legal-identity{grid-template-columns:1fr;border-radius:9px;margin-top:18px}
 .tc-legal-page .tc-legal-identity dt{padding:11px 13px 2px;border-bottom:0;background:#f4f8f5;font-size:11px}
 .tc-legal-page .tc-legal-identity dd{padding:2px 13px 12px;background:#f4f8f5;font-size:13px}.tc-legal-page .tc-legal-identity dt:last-of-type{border-bottom:0}
 .tc-legal-content .tc-legal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .tc-legal-page .tc-legal-content .tc-legal-table{display:block;border-radius:9px;table-layout:auto}.tc-legal-table tbody,.tc-legal-table tr{display:block}
 .tc-legal-content .tc-legal-table tr+tr{border-top:1px solid var(--legal-line)}
 .tc-legal-content .tc-legal-table td{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;width:auto;padding:10px 12px;border:0;font-size:12px;line-height:1.7}
 .tc-legal-content .tc-legal-table td::before{content:attr(data-label);color:#526f5d;font-weight:650;font-size:10px;line-height:2.04}
 .tc-legal-content .tc-legal-table td:first-child{background:#f2f7f3;color:#204e33;font-weight:650}
 .tc-legal-page .tc-legal-contact{display:grid;gap:13px;padding-top:20px;font-size:12px}.tc-legal-contact a{min-height:32px}
}
@media(prefers-reduced-motion:reduce){html:has(.tc-legal-page),.tc-legal-page *{scroll-behavior:auto!important;transition:none!important}}
@media print{
 body>.site-header,body>footer,.tc-legal-nav,.tc-legal-print,.tc-legal-actions,.tc-legal-contact,.tc-legal-page>.tc-legal-pages,body>.tc-sidecart,body>.tc-menu-drawer{display:none!important}
 .tc-legal-page.page-shell{width:100%;max-width:none;padding:0}.tc-legal-page .tc-legal-heading{background:#fff!important;color:#000;border:0;box-shadow:none;padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid #999}
 .tc-legal-heading :is(h1,p,time,.tc-legal-eyebrow){color:#000!important}.tc-legal-mark{display:none}.tc-legal-page .tc-legal-grid{display:block}
 .tc-legal-page .tc-legal-content{font-size:11pt;line-height:1.6}.tc-legal-page .tc-legal-content>section{padding:0 0 16px;margin:0 0 16px;border:0;border-radius:0;box-shadow:none}
 .tc-legal-page .tc-legal-content h2{font-size:16pt;break-after:avoid}.tc-legal-content a{color:inherit!important}.tc-legal-content p{orphans:3;widows:3}
}
