:root{--bg:#e0e5d5;--ink:#253b32;--accent:#b44529;--surface:#c8d3bb;--border:color-mix(in srgb,var(--ink) 22%,transparent);--gridline:color-mix(in srgb,var(--bg) 13%,transparent);--display:Georgia,serif;--body:Verdana,sans-serif}h1,h2{font-family:var(--display)}h3{margin-bottom:15px}section>h2+p{margin-top:26px}main>section+section{border-top:1px solid var(--border)}.art{min-width:0}.art svg{width:100%}.choice-image{max-width:640px;width:100%;max-height:450px;object-fit:contain;margin:25px 0}.stage-inner .art{max-width:850px;margin:auto;width:100%}.stage-inner>p{max-width:45ch;margin:22px auto}.stage>h2{position:relative;z-index:1}legend{font-size:19px;margin-bottom:18px}details{border-color:var(--border)}summary{font-size:20px}fieldset[disabled] input{opacity:.65}input[type=checkbox]{padding:0}header .brand{font-family:var(--body)}.auth main{min-height:calc(100svh - 170px)}.auth-help summary{font-size:16px}.stage-inner{min-height:0}.stage{padding-bottom:70px}.action{max-width:100%;font-size:16px}.status{min-height:1.8em}.note{margin-top:20px}footer{border-color:var(--border)}@media(min-width:900px) and (min-height:900px) and (prefers-reduced-motion:no-preference){.motion-ready .stage{min-height:190vh}.motion-ready .stage-inner{position:sticky;top:20px;min-height:90vh}}@media(max-width:899px),(max-height:899px){.stage-inner{position:static!important;min-height:0!important}.stage{min-height:0!important}.auth-shell{grid-template-columns:minmax(0,1fr)}}.canopy-hero{position:relative;padding:30px 5vw 0}.canopy-heading{position:relative;z-index:2;max-width:550px}.canopy-heading h1{font-family:var(--display);font-size:clamp(48px,5.3vw,82px);letter-spacing:-.025em}.canopy-heading p{margin:20px 0}.canopy-hero .art{width:80%;margin:-180px 0 0 auto}.canopy-hero .art svg{max-height:740px}.arrival{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:8vw;margin-top:40px}.pockets{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.7fr);gap:35px;margin-top:45px}.pockets article{padding:35px 25px;background:var(--surface);border-radius:50% 50% 5px 5px}.pockets h3{font-family:var(--display);margin-bottom:18px}.packing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7vw;margin-top:35px}.packing label{display:flex;gap:16px;align-items:center;border-bottom:1px solid var(--border);padding:12px 0}.packing input{width:24px;min-height:24px;accent-color:var(--ink)}.packing aside{padding:35px;background:var(--surface)}.bag-plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px;gap:12px;margin:35px auto;padding:28px;border:2px solid var(--ink);border-radius:70px 70px 20px 20px}.bag-pocket{padding:45px 20px;border:1px solid var(--border);text-align:center}.bag-pocket.wide{grid-column:1/-1;background:var(--surface)}.return-line{display:grid;grid-template-columns:minmax(0,.4fr) minmax(0,1.6fr);gap:18px;margin-top:30px}.canopy-end{display:flex;gap:30px;align-items:center;justify-content:space-between;margin-top:35px}.auth-shell{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}.auth-art{align-self:stretch;display:flex;align-items:center;background:var(--surface);border-radius:50% 50% 12px 12px}.auth-copy{padding:28px 0}.auth h1{font-family:var(--display)}@media(max-width:899px){.canopy-hero .art{width:100%;margin:15px 0 0}.arrival,.pockets,.packing,.return-line{grid-template-columns:minmax(0,1fr)}.canopy-end{display:block}.canopy-end .action{margin-top:24px}.pockets article{border-radius:25px;padding:25px}.auth-art{min-height:240px}}
@media(max-width:899px){.auth .auth-shell{grid-template-columns:minmax(0,1fr);gap:32px}.auth .auth-copy{width:100%;max-width:520px;grid-column:1}.auth .auth-art{grid-column:1;max-width:100%;width:100%;margin:0}.auth .auth-art svg{height:auto;max-height:270px}.auth .auth-copy h1{overflow-wrap:normal}.auth .password-field input{min-width:0}}

/* Final composition follows the per-brand design agreement. */
 :root{--bg:#fafaf4;--ink:#253b32;--accent:#a45437;--surface:#e6ebdf;--display:Arial,sans-serif;--body:Arial,sans-serif}.canopy header{max-width:1280px;margin:auto;padding:20px 24px}.canopy-hero{margin:0 24px;padding:80px 20px 0;border-radius:38px;background:radial-gradient(ellipse at 50% 110%,#9aac8d 0,#e8eddf 62%);overflow:hidden;text-align:center;display:block}.canopy-heading{position:relative;z-index:2;margin:auto}.canopy-heading h1{font:600 clamp(44px,5.1vw,76px)/1.04 var(--display);letter-spacing:-.04em;max-width:900px;margin:auto}.canopy-heading p{margin:24px auto 26px;font-size:20px;color:#253b32}.canopy-heading .action{margin:0;background:#2d4934;border:1px solid #50724e;border-radius:12px;box-shadow:inset 0 2px #849d73,0 4px 10px #243d2c18}.canopy-hero>.art{width:min(800px,100%);margin:25px auto -70px;height:610px}.canopy-hero>.art svg{height:auto;width:100%;max-height:none}.canopy main>section:not(.canopy-hero){border:0;padding:100px max(6vw,24px)}.canopy #arrival{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw}.canopy #arrival h2{font-size:56px;max-width:11ch}.canopy #arrival .grid2{display:block;padding-top:15px}.canopy #arrival .grid2 p+p{margin-top:24px}.canopy #pockets{background:#263c30;color:#f4f5e9;padding-bottom:120px}.canopy .pockets{gap:30px;margin-top:55px}.canopy .pockets article{background:transparent;border-top:1px solid #f4f5e95a;border-radius:0;padding:30px 25px 0 0;color:#f4f5e9}.canopy .pockets h3{font:30px/1.2 Georgia,serif}.canopy #pack{display:grid;grid-template-columns:.65fr 1.35fr;gap:5vw;background:#edf0e6}.canopy #pack>h2{font:58px/1.1 Georgia,serif;max-width:11ch}.canopy #pack .grid2{gap:35px}.canopy #layout{width:58%;margin-left:42%;padding:85px 6vw}.canopy #return{display:grid;grid-template-columns:1fr 1.4fr;gap:5vw;background:#cbd4b8}.canopy #return h2{font:58px/1.1 Georgia,serif;max-width:12ch}.canopy #return .return-lines{margin:0}.canopy #help{max-width:980px;margin:auto}.canopy #take{background:#253b32;color:#f4f5e9}.canopy #take h2{font:clamp(46px,6vw,85px)/1.05 Georgia,serif;max-width:16ch}.canopy #take .action{background:#edf0e6;color:#253b32}.canopy.auth .auth-art{background:#e7ecdd;border-radius:30px}.canopy.auth .auth-shell{gap:7vw}.canopy.auth .auth-copy h1{font-weight:600;letter-spacing:-.04em}.canopy.auth .auth-copy{padding:30px}.canopy.auth button.primary{border-radius:10px}.canopy.auth input{border-color:#738568;border-radius:6px}@media(max-width:899px){.canopy-hero{margin:0 16px;padding:45px 16px 0;border-radius:24px}.canopy-heading h1{font-size:clamp(38px,6vw,62px)}.canopy-heading p{font-size:18px}.canopy-hero>.art{height:auto;margin:25px auto -30px;max-width:650px}.canopy main>section:not(.canopy-hero){padding:65px 6vw}.canopy #arrival,.canopy #pack,.canopy #return{display:block}.canopy #arrival h2,.canopy #pack>h2,.canopy #return h2{font-size:42px;max-width:none;margin-bottom:32px}.canopy #layout{width:100%;margin:0}.canopy.auth .auth-copy{padding:0}.canopy.auth .auth-art svg{max-height:360px}.canopy.auth .auth-art{max-height:370px;padding:5px}}
@media(max-width:899px){.auth .auth-shell{grid-template-columns:minmax(0,1fr)}.auth .auth-copy,.auth .auth-art{grid-column:1;grid-row:auto}.auth .auth-copy{width:100%;max-width:520px}.auth .auth-copy h1{overflow-wrap:normal}}

@media (max-width:899px) {
  .canopy.auth .auth-shell { grid-template-columns:minmax(0,1fr); gap:32px; }
  .canopy.auth .auth-art, .canopy.auth .auth-copy { grid-column:1; grid-row:auto; width:100%; min-width:0; }
  .canopy.auth .auth-copy { max-width:520px; }
}

.canopy-heading { max-width:900px; }
.canopy #take .text-link:focus-visible, .canopy #pockets a:focus-visible { outline-color:#f4f5e9; }

.canopy #arrival { align-items:center; }
.arrival-copy .lead { margin:28px 0 18px; }
.arrival-copy .action { margin-top:28px; border-radius:10px; }
.packing-study { margin:0; position:relative; min-height:460px; padding:60px 50px; border-radius:30px; background:#263c30; color:#f4f5e9; }
.packing-paper { padding:28px 30px 38px; background:#edf0e6; color:#253b32; max-width:330px; transform:rotate(-5deg); box-shadow:14px 22px 30px #0c211f42; }
.packing-paper img { margin-bottom:22px; }
.packing-paper span { font:26px/1.2 Georgia,serif; }
.packing-paper ul { list-style:none; padding:0; margin:20px 0 0; }
.packing-paper li { padding:10px 0; border-bottom:1px solid #253b3235; }
.study-pack { position:absolute; right:24px; bottom:72px; padding:16px; background:#cbd4b8; box-shadow:9px 15px 20px #0c211f38; transform:rotate(8deg); }
.packing-study figcaption { margin-top:34px; font-size:14px; }
.canopy #pack { grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); }
.canopy #pack .packing { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; margin-top:0; }
.canopy .bag-plan { border-radius:40px 40px 16px 16px; }
@media(max-width:899px){.packing-study{min-height:390px;padding:36px 30px;margin-top:32px}.study-pack{right:18px;bottom:68px;width:86px}.canopy #pack .packing{grid-template-columns:minmax(0,1fr)}}

/* Allow room for enlarged text on medium screens. */
@media(min-width:900px) and (max-width:1199px){.canopy #arrival,.canopy #pack,.canopy #return{display:block}.canopy #arrival h2,.canopy #pack>h2,.canopy #return h2{max-width:none;font-size:42px;margin-bottom:32px}.canopy .packing-study{margin-top:32px}.canopy .pockets{grid-template-columns:minmax(0,1fr)}.canopy #pack .packing{grid-template-columns:minmax(0,1fr)}.canopy #layout{width:100%;margin:0}.canopy .canopy-end{display:block}}
@media(max-width:1199px){.canopy.auth .auth-shell{grid-template-columns:minmax(0,1fr);gap:36px}.canopy.auth .auth-copy,.canopy.auth .auth-art{grid-column:1;grid-row:auto;width:100%;min-width:0}.canopy.auth .auth-copy{max-width:650px;padding:0;margin:auto}.canopy.auth .auth-art{max-width:650px;margin:0 auto;transform:none}.canopy.auth .auth-art svg{max-height:400px}.canopy.auth .auth-copy h1{max-width:none}}

/* Recovery: full-page composition, original objects, and readable return notes. */
.canopy .section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:48px; }
.canopy .section-heading h2 { max-width:13ch; }
.canopy .section-heading p { max-width:28ch; }
.canopy #pockets { background:var(--bg); color:var(--ink); max-width:1280px; margin:auto; }
.canopy #pockets .section-heading { display:block; text-align:center; }
.canopy #pockets h2 { max-width:none; }
.canopy #pockets .section-heading p { max-width:none; margin:20px auto; }
.canopy .pockets { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; margin:0; }
.canopy .pockets article { background:#edf0e6; color:var(--ink); padding:36px; border:1px solid #253b3226; border-radius:20px; }
.canopy .pockets h3 { font:600 28px/1.15 var(--body); margin:0 0 16px; }
.canopy .pocket-paper { grid-row:span 2; }
.canopy .pocket-paper .pocket-drawing { margin:0 -20px 28px; }
.canopy .pocket-small { display:flex; flex-direction:column; }
.canopy .cord-study { margin:12px 0 -10px; }
.canopy .cord-study svg { width:100%; max-height:155px; }
.canopy .pockets .pocket-return { display:grid; grid-template-columns:60px minmax(0,1fr); gap:24px; background:#d8e1c7; }
.canopy #pack { max-width:1280px; margin:0 auto; border-radius:26px; padding:64px; background:#253b32; color:#f4f5e9; align-items:start; }
.canopy #pack>h2 { font:500 clamp(38px,3.4vw,50px)/1.1 Georgia,serif; }
.canopy #pack legend { font-size:17px; }
.canopy #pack .packing label { border-color:#f4f5e940; }
.canopy #pack input { accent-color:#cbd4b8; }
.canopy #pack .packing aside { background:#e6ebdf; color:#253b32; border-radius:14px; padding:28px; }
.canopy #pack .packing aside h3 { font-size:24px; }
.canopy #pack .action { font-size:15px; white-space:normal; text-align:center; }
.canopy #pack a:focus-visible,.canopy #pack input:focus-visible { outline-color:#cbd4b8; }
.canopy #layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:64px; align-items:center; width:auto; max-width:1280px; margin:95px auto; padding:60px; background:#e7ebdf; border-radius:26px; }
.canopy #layout h2 { font:500 clamp(38px,3.4vw,52px)/1.08 Georgia,serif; max-width:12ch; margin-bottom:24px; }
.canopy .layout-key { margin:30px 0 0; padding:0; list-style:none; }
.canopy .layout-key li { padding:18px 0; border-top:1px solid #253b322a; display:flex; flex-direction:column; gap:4px; }
.canopy .layout-key strong { font-size:18px; }
.canopy .layout-key span { font-size:16px; }
.canopy .bag-plan { display:block; border:0; padding:0; margin:0; max-width:none; border-radius:0; }
.canopy .bag-plan svg { width:100%; }
.canopy .bag-plan figcaption { font-size:14px; text-align:center; margin-top:18px; }
.canopy #return { display:block; max-width:1280px; margin:auto; background:var(--bg); padding-top:0; }
.canopy #return h2 { font:500 clamp(38px,3.6vw,54px)/1.08 var(--body); max-width:14ch; }
.canopy .return-feature { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:40px; align-items:center; border-radius:24px; background:#d9e1cb; padding:45px; }
.canopy .return-intro .lead { font:500 30px/1.3 Georgia,serif; }
.canopy .return-intro p+p { margin-top:24px; }
.canopy .return-notebook { margin:0; }
.canopy .return-notebook figcaption { text-align:center; font-size:14px; }
.canopy .return-line { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:20px 0 0; }
.canopy .return-line article { padding:28px; border:1px solid #253b3226; border-radius:14px; }
.canopy .return-line h3 { font:600 23px/1.2 var(--body); overflow-wrap:normal; white-space:nowrap; margin-bottom:16px; }
.canopy .return-line p { font-size:18px; margin-bottom:16px; }
.canopy .return-line span { font-size:15px; }
.canopy #help { padding-top:25px; padding-bottom:90px; }
.canopy #help h2 { margin-bottom:35px; text-align:center; }
.canopy #take { max-width:1280px; margin:0 auto; padding:64px; border-radius:26px; background:#253b32; color:#f4f5e9; }
.canopy .canopy-end { display:flex; align-items:center; gap:50px; margin:0; }
.canopy #take h2 { font:500 clamp(42px,5vw,72px)/1.05 Georgia,serif; margin-bottom:28px; }
.canopy .canopy-end .action { flex:none; }
.canopy .canopy-map { margin-top:70px; padding-top:40px; border-top:1px solid #f4f5e94a; display:grid; grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr)); gap:32px; }
.canopy .canopy-map .brand { display:flex; align-items:center; align-self:start; text-decoration:none; color:#f4f5e9; }
.canopy .canopy-map .brand img { background:#edf0e6; border-radius:5px; padding:3px; }
.canopy .canopy-map>div { display:flex; flex-direction:column; }
.canopy .canopy-map strong { font-size:16px; margin-bottom:18px; }
.canopy .canopy-map a:not(.brand) { display:inline-flex; align-items:center; min-height:44px; font-size:15px; text-decoration:none; }
.canopy .canopy-map a:hover { text-decoration:underline; }
.canopy #take a:focus-visible { outline-color:#f4f5e9; }
.canopy:not(.auth) footer { max-width:1280px; margin:auto; border:0; }
@media(max-width:1350px) { .canopy #pack,.canopy #layout,.canopy #take { margin-inline:24px; } }
@media(max-width:1199px) { .canopy #pack { display:block; } .canopy #pack>h2 { max-width:none; margin-bottom:32px; } .canopy #pack .packing { grid-template-columns:repeat(2,minmax(0,1fr)); } .canopy #layout { gap:36px; padding:40px; } .canopy .return-line { grid-template-columns:minmax(0,1fr); } .canopy .canopy-end { display:block; } .canopy .canopy-end .action { margin-top:28px; } }
@media(max-width:899px) { .canopy .section-heading { display:block; margin-bottom:30px; } .canopy .section-heading p { margin-top:20px; } .canopy .section-heading .text-link { margin-top:22px; } .canopy .pockets { grid-template-columns:minmax(0,1fr); } .canopy .pocket-paper { grid-row:auto; } .canopy .pockets article { padding:28px; } .canopy .pockets .pocket-return { grid-template-columns:48px minmax(0,1fr); gap:16px; } .canopy #pack { padding:36px 26px; } .canopy #layout { display:block; padding:36px 26px; margin-block:65px; } .canopy .bag-plan { margin-top:25px; } .canopy #layout h2 { max-width:none; } .canopy #pack .packing { grid-template-columns:minmax(0,1fr); } .canopy .return-feature { display:block; padding:28px; } .canopy .return-notebook { margin-top:24px; } .canopy .return-intro .lead { font-size:25px; } .canopy #take { padding:40px 28px; } .canopy .canopy-map { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 18px; margin-top:45px; } .canopy .canopy-map .brand { grid-column:1/-1; } .canopy .canopy-map strong { font-size:15px; } .canopy .canopy-map a:not(.brand) { font-size:14px; } }
@media(max-width:420px) { .canopy #pack,.canopy #layout,.canopy #take { margin-inline:16px; } .canopy .canopy-end .action { white-space:normal; text-align:center; } .canopy .pockets .pocket-return { display:block; } .canopy .pocket-return>img { margin-bottom:20px; } }
