
/* Terra Vita Hub v381 — Homepage canonical order correction
   Purpose: remove v379/v380 runtime contamination, restore the exact homepage order, and keep the v374 hero in section 06. */
:root{
  --v381-ink:#082640;--v381-navy:#0a2a43;--v381-green:#1e7f4f;--v381-gold:#d6b26a;--v381-paper:#fffdf6;--v381-soft:#f6efe1;--v381-muted:rgba(8,38,64,.72);--v381-line:rgba(8,38,64,.14);
}
html{scroll-behavior:smooth;}
body.v381-static-homepage{background:linear-gradient(180deg,#fffdf6 0%,#fbf6ea 52%,#fffdf6 100%);color:var(--v381-ink);}
body.v381-static-homepage .tvh-nav-primary{gap:21px;}
body.v381-static-homepage .tvh-nav-primary a{font-size:13px;letter-spacing:.015em;}
.v381-homepage{overflow:hidden;}
.v381-container{width:min(1360px,calc(100% - 64px));margin-inline:auto;}
.v381-section{padding:28px 0;}
.v381-section + .v381-section{border-top:1px solid rgba(8,38,64,.06);}
.v381-section-label{display:flex;align-items:center;gap:10px;margin:0 0 16px;color:rgba(8,38,64,.62);font-size:11px;font-weight:950;letter-spacing:.15em;text-transform:uppercase;}
.v381-section-label span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:var(--v381-navy);color:#fffdf6;letter-spacing:0;}
.v381-section-label strong{color:var(--v381-navy);}
.v381-eyebrow{margin:0 0 10px;color:var(--v381-green);font-size:12px;font-weight:950;letter-spacing:.16em;text-transform:uppercase;}
.v381-lede{font-size:18px;line-height:1.55;color:var(--v381-muted);max-width:780px;}
.v381-orientation{padding-top:30px;background:linear-gradient(180deg,#fffdf6 0%,#fbf6ea 100%);}
.v381-orientation-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:22px;align-items:stretch;}
.v381-orientation-main,.v381-orientation-meta,.v381-boundary-grid,.v381-route,.v381-landing-panel,.v381-front-door-hero,.v381-public-route,.v381-panel,.v381-next-card{border:1px solid var(--v381-line);background:rgba(255,255,255,.78);border-radius:26px;box-shadow:0 18px 54px rgba(8,38,64,.06);}
.v381-orientation-main{padding:28px;}
.v381-orientation-main h1{margin:0;color:var(--v381-ink);font-size:clamp(36px,4.4vw,66px);line-height:1.02;letter-spacing:-.038em;max-width:980px;}
.v381-orientation-meta{display:grid;gap:0;padding:4px;}
.v381-orientation-meta div{padding:16px;border-bottom:1px solid rgba(8,38,64,.08);}
.v381-orientation-meta div:last-child{border-bottom:0;}
.v381-orientation-meta span,.v381-boundary-grid span,.v381-component-card span,.v381-triad span,.v381-three-grid span,.v381-spine-row span,.v381-audience-grid span,.v381-front-door-aside span{display:block;color:rgba(8,38,64,.54);font-size:10px;font-weight:950;letter-spacing:.13em;text-transform:uppercase;margin-bottom:6px;}
.v381-orientation-meta strong{display:block;color:var(--v381-ink);font-size:15px;line-height:1.35;}
.v381-boundary-grid{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;overflow:hidden;padding:0;}
.v381-boundary-grid div{padding:16px;border-right:1px solid rgba(8,38,64,.08);border-bottom:1px solid rgba(8,38,64,.08);}
.v381-boundary-grid div:nth-child(3n){border-right:0;}
.v381-boundary-grid div:nth-last-child(-n+3){border-bottom:0;}
.v381-boundary-grid strong{display:block;font-size:14px;line-height:1.42;color:var(--v381-ink);}
.v381-route{background:linear-gradient(135deg,#fffdf6 0%,#f6efe1 100%);}
.v381-route .v381-container{padding:0;}
.v381-route-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px;align-items:end;padding:22px 24px 0;}
.v381-route-head h2{margin:0;color:var(--v381-ink);font-size:clamp(23px,3vw,40px);line-height:1.12;letter-spacing:-.025em;}
.v381-route-head p{margin:0;color:var(--v381-muted);line-height:1.55;font-size:15px;}
.v381-route-steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:22px 24px 24px;}
.v381-route-step{position:relative;display:flex;flex-direction:column;min-height:150px;text-decoration:none;border:1px solid var(--v381-line);border-radius:19px;background:rgba(255,255,255,.76);padding:14px;color:var(--v381-ink)!important;}
.v381-route-step:after{content:'→';position:absolute;right:-12px;top:50%;transform:translateY(-50%);color:rgba(8,38,64,.30);font-weight:900;}
.v381-route-step:last-child:after{display:none;}
.v381-route-step span{color:var(--v381-green);font-size:11px;font-weight:950;letter-spacing:.11em;margin-bottom:16px;}
.v381-route-step strong{font-size:16px;line-height:1.1;}
.v381-route-step em{font-style:normal;font-size:12px;line-height:1.35;color:rgba(8,38,64,.62);margin-top:auto;}
.v381-landing-panel{display:grid;grid-template-columns:minmax(0,.95fr) minmax(450px,1.05fr);gap:24px;padding:26px;background:linear-gradient(135deg,#fffdf6 0%,#f9f1e4 100%);}
.v381-landing-panel h2{margin:0;color:var(--v381-ink);font-size:clamp(30px,3.7vw,54px);line-height:1.02;letter-spacing:-.034em;}
.v381-landing-panel p{color:var(--v381-muted);line-height:1.55;}
.v381-triad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-content:start;}
.v381-triad div,.v381-three-grid div,.v381-spine-row div,.v381-audience-grid div,.v381-entry-grid div{border:1px solid var(--v381-line);border-radius:20px;background:rgba(255,255,255,.75);padding:16px;}
.v381-triad strong,.v381-three-grid strong,.v381-spine-row strong,.v381-audience-grid strong,.v381-component-card strong{display:block;color:var(--v381-ink);font-size:17px;line-height:1.15;margin-bottom:7px;}
.v381-triad p,.v381-three-grid p,.v381-spine-row p,.v381-audience-grid p,.v381-component-card p,.v381-entry-grid p{margin:0;color:rgba(8,38,64,.66);font-size:13px;line-height:1.4;}
.v381-components-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.v381-component-card{display:block;min-height:128px;text-decoration:none;border:1px solid var(--v381-line);border-radius:22px;background:rgba(255,253,246,.88);padding:18px;color:var(--v381-ink)!important;box-shadow:0 14px 36px rgba(8,38,64,.045);}
.v381-diagram-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.v381-diagram-grid figure{margin:0;border:1px solid var(--v381-line);border-radius:24px;background:rgba(255,255,255,.78);padding:14px;box-shadow:0 14px 38px rgba(8,38,64,.05);}
.v381-diagram-grid img{display:block;width:100%;height:auto;border-radius:17px;}
.v381-diagram-grid figcaption{margin-top:10px;color:rgba(8,38,64,.70);font-size:13px;font-weight:800;line-height:1.35;}
.v381-front-door{padding-top:34px;}
.v381-front-door-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:26px;align-items:center;background:radial-gradient(circle at 12% 5%,rgba(214,178,106,.15),transparent 30%),linear-gradient(135deg,#082640 0%,#0a2a43 100%);padding:34px;color:#fffdf6;border-color:rgba(255,253,246,.18);box-shadow:0 30px 88px rgba(8,38,64,.23);}
.v381-front-door-hero h2{margin:0;color:#fffdf6;font-size:clamp(38px,5.4vw,76px);line-height:.98;letter-spacing:-.045em;max-width:850px;}
.v381-front-door-hero .v381-eyebrow{color:var(--v381-gold);}
.v381-front-door-hero p{color:rgba(255,253,246,.78);font-size:17px;line-height:1.55;max-width:780px;}
.v381-front-door-hero .v381-fine{font-size:14px;color:rgba(255,253,246,.66);}
.v381-front-door-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.v381-front-door-aside div{border:1px solid rgba(255,253,246,.18);border-radius:18px;background:rgba(255,255,255,.08);padding:16px;}
.v381-front-door-aside span{color:rgba(214,178,106,.90);}
.v381-front-door-aside strong{color:#fffdf6;font-size:18px;}
.v381-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.v381-actions a,.v381-panel a,.v381-entry-grid a,.v381-next-card a{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(8,38,64,.14);border-radius:999px;background:#fffdf6;color:var(--v381-ink)!important;text-decoration:none;font-size:13px;font-weight:850;padding:10px 14px;}
.v381-front-door-hero .v381-actions a:first-child{background:var(--v381-gold);border-color:var(--v381-gold);color:#082640!important;}
.v381-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px;}
.v381-entry-grid span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:rgba(30,127,79,.12);color:var(--v381-green);font-weight:950;margin-bottom:8px;}
.v381-entry-grid h3,.v381-public-route h3,.v381-panel h3{margin:0 0 8px;color:var(--v381-ink);font-size:22px;}
.v381-public-route{margin-top:16px;padding:18px;}
.v381-public-route ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;list-style:none;margin:14px 0 0;padding:0;counter-reset:step;}
.v381-public-route li{counter-increment:step;border:1px solid var(--v381-line);border-radius:16px;background:rgba(255,255,255,.72);padding:12px;color:var(--v381-ink);font-size:13px;font-weight:780;}
.v381-public-route li:before{content:counter(step,decimal-leading-zero);display:block;color:var(--v381-green);font-size:10px;font-weight:950;letter-spacing:.11em;margin-bottom:6px;}
.v381-three-grid,.v381-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.v381-spine-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;}
.v381-spine-row div{min-height:126px;}
.v381-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.v381-panel{padding:22px;}
.v381-panel p,.v381-panel li{color:var(--v381-muted);line-height:1.5;}
.v381-panel ul{margin:8px 0 0;padding-left:20px;}
.v381-panel a + a{margin-left:8px;}
.v381-chain-panel{background:linear-gradient(135deg,#fffdf6 0%,#f6efe1 100%);}
.v381-table-wrap{overflow:auto;border:1px solid var(--v381-line);border-radius:22px;background:rgba(255,255,255,.82);box-shadow:0 14px 38px rgba(8,38,64,.045);}
.v381-table-wrap table{width:100%;border-collapse:collapse;min-width:820px;}
.v381-table-wrap th,.v381-table-wrap td{text-align:left;padding:14px 16px;border-bottom:1px solid rgba(8,38,64,.08);font-size:14px;}
.v381-table-wrap th{color:rgba(8,38,64,.54);font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;background:rgba(8,38,64,.03);}
.v381-table-wrap td{color:var(--v381-muted);}
.v381-table-wrap tr:last-child td{border-bottom:0;}
.v381-next{padding-bottom:54px;}
.v381-next-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:24px;background:linear-gradient(135deg,#0a2a43 0%,#082640 100%);color:#fffdf6;}
.v381-next-card span{display:block;color:var(--v381-gold);font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;}
.v381-next-card h2{margin:0;color:#fffdf6;font-size:clamp(24px,3vw,38px);line-height:1.1;}
.v381-next-card nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.v381-next-card a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fffdf6!important;}
@media(max-width:1180px){.v381-route-steps{grid-template-columns:repeat(4,minmax(0,1fr));}.v381-route-step:after{display:none}.v381-components-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.v381-spine-row{grid-template-columns:repeat(3,minmax(0,1fr));}.v381-public-route ol{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:900px){.v381-container{width:min(100% - 32px,1360px)}.v381-orientation-grid,.v381-route-head,.v381-landing-panel,.v381-front-door-hero,.v381-two-col,.v381-entry-grid,.v381-next-card{grid-template-columns:1fr}.v381-boundary-grid,.v381-triad,.v381-diagram-grid,.v381-three-grid,.v381-audience-grid{grid-template-columns:1fr}.v381-next-card nav{justify-content:flex-start}.v381-front-door-hero h2{font-size:clamp(36px,10vw,58px)}}
@media(max-width:620px){.v381-route-steps,.v381-components-grid,.v381-spine-row,.v381-public-route ol{grid-template-columns:1fr}.v381-section{padding:22px 0}.v381-orientation-main,.v381-front-door-hero,.v381-landing-panel{padding:22px}.v381-route-head,.v381-route-steps{padding-left:18px;padding-right:18px}.v381-orientation-main h1{font-size:36px}.v381-front-door-aside{grid-template-columns:1fr}}
