
:root{--ink:#24494d;--teal:#287e83;--cream:#fff9ef;--sage:#ddebd5;--apricot:#f3b28d}body{background:var(--cream);color:var(--ink);font-family:Arial,sans-serif}header{background:#fffdf8;max-width:none;padding:15px max(5%,calc((100vw - 1350px)/2));border-bottom:1px solid #eee8dd;min-height:86px}.brand{display:block;flex-shrink:0;text-decoration:none}.brand img{display:block;width:280px;height:auto}header nav{gap:28px}header a{color:var(--ink);font-weight:600}.nav-cta{background:var(--teal);color:white;border:0;border-radius:14px;padding:14px 24px}main{max-width:1500px;padding-top:0}.holiday-hero{position:relative;isolation:isolate;display:flex;align-items:center;width:100vw;min-height:520px;margin-left:calc(50% - 50vw);padding:54px max(5%,calc((100vw - 1350px)/2)) 70px;background:#f8ebd8;background-image:linear-gradient(90deg,#fff9effa 0%,#fff9eff2 24%,#fff9efbd 39%,#fff9ef33 59%,#fff9ef00 74%),linear-gradient(0deg,#fff9ef 0%,#fff9ef00 17%),url('hero.webp');background-position:center,center,center 55%;background-size:cover;gap:0}.hero-copy{width:51%;max-width:600px;position:relative;z-index:1}.hero .badge{color:#287378;letter-spacing:2px;font-weight:700}.hero h1{font-family:Georgia,serif;font-weight:700;font-size:clamp(42px,4.8vw,68px);line-height:1.08;color:#163f44;letter-spacing:-2px;margin:16px 0 20px}.hero h1 em{color:#163f44}.hero .lead{color:#24494d;font-size:18px;line-height:1.6;max-width:520px;margin:0 0 25px}.cta{border-radius:14px;background:var(--teal);color:white;padding:17px 23px;box-shadow:0 7px 20px #245c5c12}.cta span{margin-left:12px}.subtle-link{color:#24494d;font-weight:600}.trust{color:#3e5b58;font-size:12px;line-height:1.7;margin-bottom:0}.journey{display:grid;grid-template-columns:repeat(3,1fr);background:var(--sage);border:1px solid #d4e2cb;border-radius:18px;margin:-8px 0 18px;position:relative;z-index:2;padding:20px 10px}.journey a{display:flex;gap:14px;align-items:center;justify-content:center;color:#24494d;text-decoration:none;padding:2px 10px;font-size:14px}.journey a+a{border-left:1px solid #bdceb8}.journey span{border:1px solid #7f9d8d;border-radius:50%;height:30px;width:30px;display:grid;place-items:center;font-size:11px;flex-shrink:0}.planner-title{border:0;padding:28px 0 24px}.planner-title h2{font-family:Georgia,serif;font-weight:700;font-size:36px;color:#24494d}.planner-title p{color:#52716c}.workspace{gap:22px}.panel,.canvaspanel,.storage,.faq{border:1px solid #e5ded1;box-shadow:0 5px 22px #22494d04;border-radius:16px}.panel{background:#fffefa}.canvaspanel{background:#fffdf8;padding:20px}.canvaswrap{background:#fff7e9;border:1px solid #e6dfd2}.canvashead b{color:#24494d}.pill{background:#e8f1e3;color:#335e57}.choicebar button{background:#fffdf8;border-color:#cddbd4;color:#24494d;border-radius:10px;font-weight:600}.choicebar button[aria-pressed=true]{background:var(--teal);border-color:var(--teal);color:white;box-shadow:inset 0 -3px #f6d77b}.move-controls{background:#eef5ee;border-color:#cdded2}.move-row button{color:#24494d;background:#fffefa;border-color:#bdd0c6;border-radius:9px}.move-caption span,.move-feedback{color:#385d56}.primary{background:var(--teal);border-color:var(--teal);color:white}button{border-radius:9px}button:hover:not(:disabled){filter:brightness(.96)}button:active:not(:disabled){transform:translateY(1px)}input,select{border-color:#cfdbd4;color:#24494d;border-radius:8px}label,.hint{color:#536c63}.status{border-color:#e2d9c7;background:#fffaf0;color:#4b4c37}.storage{background:#fffdfa}.storage a,.faq a,.legal a{color:#236d73}.faq{background:#fffdf7;margin-top:32px}.faq h2{color:#24494d}footer{background:#e7efdf;border-color:#d8e5d0;color:#48645b;padding-block:25px}footer a{color:#24494d}.legal h1{font-family:Georgia,serif}.legal .panel{box-shadow:none}.vehicle-picker h3{color:#24494d}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #b87345;outline-offset:3px}
@media(max-width:800px){header{padding:12px 4%;min-height:72px;gap:10px}.brand img{width:210px}.nav-cta{padding:11px 13px;border-radius:11px;font-size:12px}main{padding-inline:4%}.holiday-hero{min-height:580px;padding:36px 5% 210px;align-items:flex-start;background-image:linear-gradient(180deg,#fff9effa 0%,#fff9eff2 27%,#fff9efb0 45%,#fff9ef00 67%,#fff9ef 100%),url('hero.webp');background-position:center,68% bottom;background-size:cover,auto 100%;margin-bottom:0}.hero-copy{width:100%;max-width:480px}.hero h1{font-size:43px;letter-spacing:-1.2px;margin-top:13px}.hero .lead{font-size:16px;max-width:390px}.hero .badge{font-size:10px}.hero-actions{gap:12px;align-items:center;flex-direction:row}.hero-actions .cta{width:auto;font-size:13px;padding:14px 17px}.hero-actions .subtle-link{width:auto;font-size:12px;text-align:left}.trust{font-size:11px;max-width:290px}.journey{margin-top:-18px;padding:14px 8px;border-radius:14px;gap:6px}.journey a{flex-direction:column;gap:7px;padding:0 4px;text-align:center;font-size:11px;line-height:1.4}.journey span{width:25px;height:25px;font-size:10px}.planner-title{padding:24px 0 18px}.planner-title h2{font-size:29px}.canvaspanel{padding:12px}.canvaswrap svg{height:clamp(180px,36svh,320px)}.move-controls{padding:10px}.object-picker .choicebar button{font-size:11px}.panel{padding:20px}.legal header{flex-wrap:wrap}}@media(max-width:360px){.brand img{width:180px}.hero h1{font-size:38px}.journey a{font-size:10px}}@media print{.journey,.holiday-hero{display:none!important}body{background:white}.canvaspanel{background:white;border:0;box-shadow:none}}

html,body{overflow-x:clip}@media(max-width:800px){.holiday-hero{background-image:linear-gradient(180deg,#fff9efff 0%,#fff9eff5 45%,#fff9efe8 57%,#fff9ef20 78%,#fff9ef 100%),url('hero.webp')}.trust{color:#24494d}}
/* Mobile: reserve a full-width landscape area instead of cropping a tall cover. */
@media(max-width:800px){
 .holiday-hero{display:block;min-height:0;background:var(--cream);padding:30px 5% calc(56.3vw + 35px)}
 .holiday-hero::before{content:"";position:absolute;inset:auto 0 0;height:56.3vw;min-height:200px;background-image:linear-gradient(180deg,#fff9ef 0%,#fff9ef00 18%,#fff9ef00 85%,#fff9ef 100%),url('hero.webp');background-size:100% 100%,cover;background-position:center,center;z-index:0;pointer-events:none}
 .hero-copy{position:relative;z-index:1;max-width:none}
 .hero .trust{margin-bottom:0;max-width:none}
 .journey{margin-top:0}
}

@media(max-width:800px){.workspace>.panel{order:1}.workspace .canvaspanel{order:2}.editor-picker{margin:20px 0 12px}.editor-picker>b{display:block;font-size:13px;margin-bottom:9px}.editor-picker .choicebar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.editor-picker button{font-size:11px;padding:8px 2px}.mobile-jump{display:block;margin-top:16px}}
/* Object choices must fit the narrow desktop settings column. */
.editor-picker{margin:20px 0 16px;min-width:0}
.editor-picker>b{display:block;font-size:13px;margin-bottom:10px}
.editor-picker .choicebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.editor-picker .choicebar button{min-width:0;min-height:48px;width:100%;font-size:12px;line-height:1.35;padding:9px 6px;overflow-wrap:anywhere}
@media(max-width:800px){.editor-picker .choicebar{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.editor-picker .choicebar button{font-size:11px;padding:8px 2px;min-height:46px;overflow-wrap:normal}}

#placementControls{min-width:0}#placementControls .row{gap:10px}@media(max-width:800px){.canvaswrap svg{height:clamp(160px,28svh,260px)}.move-controls #placementControls{border-top:1px solid #ceddd3;margin-top:8px;padding-top:10px}.move-controls #placementControls .row:first-child button{min-height:42px;padding:8px;font-size:13px}.move-controls #placementControls label{font-size:11px}.move-controls #placementControls input{min-height:40px;padding:8px;margin-top:4px}.move-controls #placementControls .hint{font-size:10px;line-height:1.4;margin:8px 0 0}.move-controls #placementControls .row+.row{margin-top:8px}}
/* Desktop heading: keep the explanatory line with its title. */
@media(min-width:801px){.planner-title{display:block}.planner-title p{margin:10px 0 0;max-width:none;text-align:left}}

#graphicsToggle{font-size:11px;padding:7px 11px;min-height:36px;background:#eef5ee;border-color:#c2d7cf}#graphicsToggle[aria-pressed=true]{background:#287e83;color:white}#canvas [data-id]{transition:opacity .15s}#canvas [data-id]:hover{filter:brightness(1.025)}@media(max-width:800px){#graphicsToggle{font-size:10px;padding:6px 8px}}
