/* Ivory and sand provide breathing room around the channel's forest identity. */
html:has(#canal){background:#f3f0e9}
body:has(#canal){background:#f3f0e9;color:#233b33}
body:has(#canal) .topbar{background:#093e32;box-shadow:0 0 0 100vmax #093e32;clip-path:inset(0 -100vmax);padding:22px 0;border:0;color:#fffaf0}
body:has(#canal) .top-label{color:#e2e9df}
body:has(#canal) .hero{padding:65px 0 48px;gap:64px}
body:has(#canal) .hero h1{color:#173f32}
body:has(#canal) .hero h1 span{color:#8b6328}
body:has(#canal) .eyebrow{color:#7a6137}
body:has(#canal) .lead{color:#516059}
body:has(#canal) .text-link{color:#173f32}
body:has(#canal) .text-link span{color:#8b6328;border-color:#b5996366;background:#e9dfca}
body:has(#canal) .hero-note{background:linear-gradient(140deg,#184e3f,#0b392e);color:#fffaf0;border-color:#285444;box-shadow:0 18px 38px #16372c19}
body:has(#canal) .hero-note p{color:#e0e8df}
body:has(#canal) .trust-grid{gap:18px;padding:0 0 52px}
body:has(#canal) .trust-grid article{background:#fffdf8;border:1px solid #dedbd2;box-shadow:0 5px 16px #443a2005}
body:has(#canal) .trust-grid article:hover{background:#fff;box-shadow:0 12px 25px #443a2010;border-color:#c1b18f}
body:has(#canal) .trust-grid h2{color:#263e34}
body:has(#canal) .trust-grid p{color:#58645d}
body:has(#canal) .mini-icon{background:#f1e8d6;color:#866125;border-color:#e5d5b4}
body:has(#canal) .workspace{background:#fff;border-color:#dedbd2;box-shadow:0 18px 50px #443a2010}
body:has(#canal) .workspace-top{background:#eae4d7;border-color:#dad1bf}
body:has(#canal) .workspace-top h2{color:#243c32}
body:has(#canal) .workspace .eyebrow{color:#705a34}
body:has(#canal) .tabs{background:#dcd6c9}
body:has(#canal) fieldset{border-color:#e6e2d9}
body:has(#canal) legend span{background:#f0e6d2;color:#80602b}
body:has(#canal) .choice{border-color:#dfded5}
body:has(#canal) .choice:has(input:checked){background:#f4f5ee}
body:has(#canal) .hint{color:#5e6961}
body:has(#canal) .aftercare{padding:62px 0;gap:65px}
body:has(#canal) .aftercare h2,body:has(#canal) .aftercare strong{color:#243c32}
body:has(#canal) .aftercare p,body:has(#canal) .aftercare li span{color:#526159}
body:has(#canal) .aftercare li:before{color:#80602b;border-color:#d9c8a5;background:#eee3cd}
body:has(#canal) .aftercare li:after{background:#d5ccb9}
body:has(#canal) .privacy-section{background:#fffdf8;border:1px solid #dedbd2;box-shadow:0 8px 28px #443a2005}
body:has(#canal) .privacy-section h2,body:has(#canal) .privacy-section summary{color:#243c32}
body:has(#canal) .privacy-section details{border-color:#e3ded3}
body:has(#canal) .privacy-section details p{color:#526159}
body:has(#canal) .privacy-section summary:after{color:#866125}
body:has(#canal) .emergency{background:#f3ecdc;color:#6c5a38;border-color:#b38d48}
body:has(#canal) .footer{border-color:#d9d3c6;color:#56645b}
@media(max-width:850px){body:has(#canal) .hero{gap:30px;padding-top:44px}}
@media(max-width:620px){body:has(#canal) .topbar{padding:16px 0}body:has(#canal) .hero{padding:36px 0 30px}body:has(#canal) .trust-grid{gap:12px;padding-bottom:32px}body:has(#canal) .aftercare{gap:24px;padding:38px 0}}
body:has(#canal) .hero-note{padding-top:0}
.channel-team-photo{display:block;width:calc(100% + 68px);max-width:none;margin:0 -34px 26px;height:230px;object-fit:cover;object-position:center 62%}
body:has(#canal) .hero-note .shield{display:none}
body:has(#canal) .hero-note:before,body:has(#canal) .hero-note:after{display:none}
@media(max-width:850px){.channel-team-photo{width:calc(100% + 52px);margin-left:-26px;margin-right:-26px;height:200px}}
@media(max-width:620px){.channel-team-photo{width:calc(100% + 54px);margin-left:-27px;margin-right:-27px;height:auto;aspect-ratio:4/3}}
.aftercare-photo{display:block;width:100%;height:260px;object-fit:cover;object-position:center 55%;border-radius:18px;margin-bottom:28px;border:1px solid #d8d1c3}
body:has(#canal) .aftercare{align-items:center}
body:has(#canal) .aftercare ol{background:#eae4d7;border:1px solid #dad1bf;padding:32px 28px 8px;border-radius:20px}
@media(max-width:620px){.aftercare-photo{height:auto;aspect-ratio:4/3;margin-bottom:22px}body:has(#canal) .aftercare ol{padding:26px 20px 0}}
/* Shared top and bottom edges for the two process columns. */
body:has(#canal) .aftercare{align-items:stretch;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
body:has(#canal) .aftercare>div{min-width:0}
body:has(#canal) .aftercare>div>p:last-child{margin-bottom:0}
body:has(#canal) .aftercare ol{display:flex;flex-direction:column;justify-content:space-evenly;padding:32px;margin:0}
body:has(#canal) .aftercare li:last-child{padding-bottom:0}
@media(max-width:620px){body:has(#canal) .aftercare{grid-template-columns:minmax(0,1fr);gap:24px}body:has(#canal) .aftercare ol{padding:26px 22px}}

/* Justify explanatory prose while keeping controls and submitted reports intact. */
.lead,.hero-note>p,.trust-grid article>p,.aftercare>div>p:not(.eyebrow),.aftercare li>span,.privacy-section details>p,.emergency,.workspace .hint,.form-actions>p,.consent>span,.receipt>p:not(.eyebrow),#follow-form>p:not(.status){text-align:justify;text-align-last:start;hyphens:auto;overflow-wrap:break-word}
@media(max-width:620px){.lead,.hero-note>p,.trust-grid article>p,.aftercare>div>p,.aftercare li>span,.privacy-section details>p,.workspace .hint{word-spacing:normal}}

/* Only the brand and exit action belong in the header. */
body:has(#canal) .topbar{display:flex;align-items:center;justify-content:space-between}
