#cce-snow{--navy:#0F3A6B;--sky:#2E9BD6;--orange:#E8732B;--orange-d:#c95f1d;--bg:#F7F7F5;--card:#fff;--ink:#1E2430;--muted:#5d6676;--line:#dfe3e8;--soft:#e7f1fb;
  max-width:1040px;margin:0 auto;padding:28px 20px 16px;background:var(--bg);color:var(--ink);border-radius:14px;font-family:inherit;font-size:16px;line-height:1.5;box-sizing:border-box;text-align:left}
#cce-snow *,#cce-snow *::before,#cce-snow *::after{box-sizing:border-box}
#cce-snow h2,#cce-snow h3,#cce-snow h4,#cce-snow p{letter-spacing:normal;text-transform:none}
#cce-snow button{font-family:inherit;cursor:pointer;text-transform:none;letter-spacing:normal;line-height:1.3;min-height:0;box-shadow:none}
#cce-snow .cce-head{text-align:center;margin-bottom:18px}
#cce-snow .cce-kicker{margin:0 0 4px;color:var(--orange);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:13px}
#cce-snow .cce-title{margin:0 0 6px;color:var(--navy);font-family:"Playfair Display",Lora,Georgia,serif;font-size:clamp(26px,4vw,38px);line-height:1.15}
#cce-snow .cce-lede{margin:0 auto;max-width:560px;color:var(--muted);font-size:16px}
#cce-snow .cce-progress{height:6px;background:var(--line);border-radius:6px;overflow:hidden;margin:18px 0 6px}
#cce-snow .cce-progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--sky),var(--navy));transition:width .35s ease}
#cce-snow .cce-stepcount{font-size:13px;color:var(--muted);text-align:right;margin-bottom:8px}
#cce-snow .cce-stage{min-height:320px}
#cce-snow .cce-step{animation:cceIn .3s ease}
@keyframes cceIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
#cce-snow .cce-q{margin:0 0 4px;color:var(--navy);font-family:"Playfair Display",Lora,Georgia,serif;font-size:clamp(21px,3vw,27px);line-height:1.2}
#cce-snow .cce-sub{margin:0 0 16px;color:var(--muted);font-size:15px}
#cce-snow .cce-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
#cce-snow .cce-grid.cce-big{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
#cce-snow .cce-card{position:relative;display:flex;flex-direction:column;text-align:left;background:var(--card);border:2px solid var(--line);border-radius:12px;padding:0;margin:0;overflow:hidden;transition:border-color .15s,box-shadow .15s,transform .15s,opacity .15s;color:inherit;width:100%}
#cce-snow .cce-card:hover{border-color:var(--sky);transform:translateY(-2px);box-shadow:0 6px 18px rgba(15,58,107,.12);background:var(--card);color:inherit}
#cce-snow .cce-card:focus-visible{outline:3px solid var(--sky);outline-offset:2px}
#cce-snow .cce-card.is-on{border-color:var(--orange);box-shadow:0 6px 18px rgba(232,115,43,.22)}
#cce-snow .cce-grid.has-pick .cce-card:not(.is-on){opacity:.72}
#cce-snow .cce-check{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:50%;background:#fff;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;z-index:2}
#cce-snow .cce-card.is-on .cce-check{background:var(--orange);border-color:var(--orange)}
#cce-snow .cce-img{aspect-ratio:4/3;background:#e9edf2 center/cover no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;color:#8a94a3;font-size:12px;line-height:1.3;border-bottom:1px solid var(--line);width:100%}
#cce-snow .cce-img.ph{background:repeating-linear-gradient(135deg,#eef1f5 0 12px,#e6eaf0 12px 24px)}
#cce-snow .cce-img.ph span{background:rgba(255,255,255,.85);padding:6px 8px;border-radius:6px}
#cce-snow .cce-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
#cce-snow .cce-label{font-weight:700;font-size:16px;color:var(--navy)}
#cce-snow .cce-desc{font-size:14px;color:var(--ink);font-weight:400}
#cce-snow .cce-price{font-size:14px;font-weight:700;color:var(--orange-d);margin-top:2px}
#cce-snow .cce-note{font-size:12px;font-style:italic;color:var(--muted);margin-top:auto;padding-top:6px;font-weight:400}
#cce-snow .cce-cardwrap{display:flex;flex-direction:column;gap:6px}
#cce-snow .cce-cardwrap .cce-card{flex:1}
#cce-snow .cce-qty{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff4ec;border:2px solid var(--orange);border-radius:10px;padding:6px 8px}
#cce-snow .cce-qbtn{width:36px;height:36px;border-radius:50%;border:0;background:var(--orange);color:#fff;font-size:20px;font-weight:700;padding:0;margin:0;display:flex;align-items:center;justify-content:center}
#cce-snow .cce-qbtn:hover{background:var(--orange-d);color:#fff}
#cce-snow .cce-qbtn[disabled]{opacity:.35;cursor:not-allowed}
#cce-snow .cce-qn{font-weight:700;color:var(--navy);font-size:15px}
#cce-snow .cce-chiprow{margin:0 0 18px}
#cce-snow .cce-chiprow h4{margin:0 0 8px;font-size:16px;color:var(--navy)}
#cce-snow .cce-chips{display:flex;flex-wrap:wrap;gap:8px}
#cce-snow .cce-chip{background:#fff;border:2px solid var(--line);border-radius:999px;padding:9px 16px;font-size:15px;color:var(--ink);margin:0}
#cce-snow .cce-chip:hover{border-color:var(--sky);background:#fff;color:var(--ink)}
#cce-snow .cce-chip.is-on{border-color:var(--orange);background:#fff4ec;color:var(--ink);font-weight:700}
#cce-snow .cce-chiprow .cce-note{display:block;margin-top:6px}
#cce-snow .cce-zip{display:flex;gap:10px;flex-wrap:wrap;align-items:center;max-width:460px}
#cce-snow .cce-zip input{flex:1;min-width:160px;padding:14px 16px;font-size:22px;letter-spacing:.12em;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);margin:0}
#cce-snow .cce-zip input:focus{border-color:var(--sky);outline:none}
#cce-snow .cce-zipmsg{margin-top:12px;padding:12px 14px;border-radius:10px;background:var(--soft);font-size:15px;max-width:560px}
#cce-snow .cce-footer{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px;padding:12px 14px;background:var(--navy);border-radius:12px;color:#fff}
#cce-snow.is-result .cce-footer{position:static}
#cce-snow .cce-back{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:8px;padding:10px 14px;font-size:15px;margin:0}
#cce-snow .cce-back:hover{background:rgba(255,255,255,.1);color:#fff}
#cce-snow .cce-back[disabled]{visibility:hidden}
#cce-snow .cce-next{background:var(--orange);border:0;color:#fff;border-radius:8px;padding:11px 18px;font-size:15px;font-weight:700;margin:0}
#cce-snow .cce-next:hover{background:var(--orange-d);color:#fff}
#cce-snow .cce-next[hidden]{display:none}
#cce-snow .cce-next[disabled]{opacity:.45;cursor:not-allowed}
#cce-snow .cce-running{text-align:center;flex:1}
#cce-snow .cce-running-label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
#cce-snow .cce-running-value{display:block;font-size:clamp(17px,2.4vw,22px);font-weight:700}
#cce-snow .cce-fineprint{font-size:12px;color:var(--muted);text-align:center;margin:10px 0 0}
#cce-snow .cce-result-top{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;text-align:center}
#cce-snow .cce-range{font-family:"Playfair Display",Lora,Georgia,serif;color:var(--navy);font-size:clamp(32px,6vw,52px);font-weight:700;line-height:1.1;margin:6px 0}
#cce-snow .cce-rangebar{height:12px;border-radius:12px;background:linear-gradient(90deg,#cfe7f6,var(--sky),var(--navy));margin:16px auto 6px;max-width:520px}
#cce-snow .cce-rangebar-ends{display:flex;justify-content:space-between;max-width:520px;margin:0 auto;font-size:12px;color:var(--muted)}
#cce-snow .cce-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}
#cce-snow .cce-fact{background:var(--soft);border-radius:12px;padding:14px;text-align:left}
#cce-snow .cce-fact b{display:block;color:var(--navy);font-size:20px}
#cce-snow .cce-fact span{font-size:13px;color:var(--muted)}
#cce-snow .cce-cols{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-top:16px;align-items:start}
#cce-snow .cce-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}
#cce-snow .cce-panel h4{margin:0 0 10px;color:var(--navy);font-size:17px}
#cce-snow .cce-panel h5{margin:16px 0 4px;color:var(--orange-d);font-size:13px;letter-spacing:.06em;text-transform:uppercase}
#cce-snow .cce-lines{list-style:none;margin:0;padding:0}
#cce-snow .cce-lines li{padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;margin:0}
#cce-snow .cce-lines li:last-child{border-bottom:0}
#cce-snow .cce-lines .r{display:flex;justify-content:space-between;gap:10px}
#cce-snow .cce-lines b{color:var(--navy);font-weight:600}
#cce-snow .cce-lines .amt{white-space:nowrap;color:var(--muted)}
#cce-snow .cce-lines .why{display:block;font-size:12px;color:var(--muted);font-style:italic;margin-top:2px}
#cce-snow .cce-pay{background:#fff4ec;border-radius:12px;padding:14px;margin-top:14px;font-size:14px}
#cce-snow .cce-pay b{color:var(--navy)}
#cce-snow .cce-disc{margin:0;padding-left:18px;font-size:13px;color:var(--muted)}
#cce-snow .cce-disc li{margin-bottom:6px}
#cce-snow .cce-form{display:grid;gap:10px}
#cce-snow .cce-form label{font-size:13px;font-weight:600;color:var(--navy);display:grid;gap:4px;margin:0}
#cce-snow .cce-form input,#cce-snow .cce-form select,#cce-snow .cce-form textarea{width:100%;padding:10px 12px;border:1px solid #c9d0d8;border-radius:8px;font:inherit;font-size:15px;background:#fff;color:var(--ink);margin:0}
#cce-snow .cce-form .cce-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#cce-snow .cce-form .cce-chips{gap:6px}
#cce-snow .cce-form .cce-chip{padding:7px 12px;font-size:14px}
#cce-snow .cce-consent{display:flex !important;grid-template-columns:none;gap:8px;align-items:flex-start;font-weight:400 !important;color:var(--muted) !important;font-size:12px !important}
#cce-snow .cce-consent input{width:auto;margin-top:3px}
#cce-snow .cce-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
#cce-snow .cce-cta{background:var(--orange);color:#fff;border:0;border-radius:8px;padding:13px 18px;font-size:16px;font-weight:700;width:100%;margin:0}
#cce-snow .cce-cta:hover{background:var(--orange-d);color:#fff}
#cce-snow .cce-cta[disabled]{opacity:.6}
#cce-snow .cce-err{color:#b3261e;font-size:13px;margin:0}
#cce-snow .cce-link{background:none;border:0;color:var(--navy);text-decoration:underline;font-size:14px;padding:6px 0;margin:0}
#cce-snow .cce-link:hover{background:none;color:var(--navy)}
#cce-snow .cce-thanks{background:#e5f4e4;border-radius:10px;padding:16px;font-size:15px}
#cce-snow .cce-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
#cce-snow .cce-gallery .cce-img{border-radius:10px;border:0}
#cce-snow .cce-admin table{width:100%;border-collapse:collapse;font-size:13px;background:#fff}
#cce-snow .cce-admin th,#cce-snow .cce-admin td{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}
#cce-snow .cce-admin th{background:var(--soft);color:var(--navy)}
#cce-snow .cce-admin tr.grp td{background:#f0efec;font-weight:700;color:var(--navy)}
@media (max-width:760px){#cce-snow .cce-cols{grid-template-columns:1fr}#cce-snow .cce-facts{grid-template-columns:1fr}}
@media (max-width:520px){#cce-snow{padding:20px 12px 12px}#cce-snow .cce-grid{grid-template-columns:1fr 1fr;gap:10px}#cce-snow .cce-grid.cce-big{grid-template-columns:1fr}#cce-snow .cce-body{padding:10px}#cce-snow .cce-label{font-size:15px}#cce-snow .cce-desc{font-size:13px}#cce-snow .cce-gallery{grid-template-columns:1fr 1fr}#cce-snow .cce-form .cce-two{grid-template-columns:1fr}#cce-snow .cce-running-label{display:none}}
#cce-snow .cce-bud{font-size:12px;font-weight:700;margin-top:2px}
#cce-snow .cce-bud.fit{color:#2f7a3d}
#cce-snow .cce-bud.over{color:#b3261e}
#cce-snow .cce-img.none{background:#f0f2f5;color:#8a94a3;font-size:15px;font-weight:600;letter-spacing:.04em}
#cce-snow .cce-budgetin{align-items:center}
#cce-snow .cce-dollar{font-size:24px;font-weight:700;color:var(--navy)}
#cce-snow .cce-budgetline{display:block;margin-top:4px;font-size:13px;line-height:1.4}
#cce-snow .cce-budgetline[hidden]{display:none}
#cce-snow .cce-bedit,#cce-snow .cce-bsave{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:6px;padding:1px 8px;font-size:12px;margin:0 2px}
#cce-snow .cce-bedit:hover,#cce-snow .cce-bsave:hover{background:rgba(255,255,255,.3);color:#fff}
#cce-snow .cce-budgetline input{width:90px;padding:2px 6px;border-radius:6px;border:0;font-size:13px;margin:0 4px;color:#1E2430;background:#fff}
#cce-snow .cce-bleft{color:#bfe8c6;font-weight:700}
#cce-snow .cce-bover{color:#ffc2b8;font-weight:700}
#cce-snow .cce-budcmp{margin:4px auto 10px;max-width:620px;padding:10px 14px;border-radius:10px;font-size:15px}
#cce-snow .cce-budcmp.fit{background:#e5f4e4}
#cce-snow .cce-budcmp.over{background:#fdecea}

#cce-snow .cce-bud{display:block;font-size:13px;font-weight:700;margin-top:4px}
#cce-snow .cce-save{background:#fff;border:1px solid #dfe3e8;border-left:5px solid #E8732B;border-radius:12px;padding:18px 20px;margin:0 0 20px}
#cce-snow .cce-save.over{border-left-color:#b3261e;background:#fff8f7}
#cce-snow .cce-save h4{margin:0 0 4px;color:#0F3A6B;font-size:19px}
#cce-snow .cce-save ul{list-style:none;margin:10px 0 0;padding:0}
#cce-snow .cce-save li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 0;border-top:1px solid #eef0f3}
#cce-snow .cce-save-what{flex:1 1 260px}
#cce-snow .cce-save-amt{font-weight:700;color:#2f7a3d;white-space:nowrap}
#cce-snow .cce-swap{background:#0F3A6B;color:#fff;border:0;border-radius:8px;padding:7px 14px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
#cce-snow .cce-swap:hover{background:#E8732B}
#cce-snow .cce-save-all{margin:10px 0 0;padding-top:12px;border-top:1px solid #eef0f3}
#cce-snow .cce-save-all .cce-bud{display:inline;margin:0}
#cce-snow .cce-save-all .cce-swap{margin-left:8px}
#cce-snow .cce-cans{text-align:center;padding:10px 0}
#cce-snow .cce-cans .cce-qty-big{display:inline-flex;align-items:center;gap:18px;margin:6px 0 12px}
#cce-snow .cce-cans .cce-qty-big .cce-qbtn{width:52px;height:52px;font-size:26px;border-radius:50%}
#cce-snow .cce-cans .cce-qty-big .cce-qn{font-size:26px;font-weight:700;min-width:120px;color:#0F3A6B}
#cce-snow .cce-cans .cce-price{display:block;font-size:17px;margin:0 0 8px}
#cce-snow .cce-chip small{font-size:12px;opacity:.75;margin-left:4px;font-weight:400}
/* ---------- snow estimator: map ---------- */
#cce-snow .ccs-icon{font-size:38px;line-height:1;padding:18px 16px 0;color:var(--navy)}
#cce-snow .ccs-addr{display:flex;gap:8px;margin:0 0 10px}
#cce-snow .ccs-addr input{flex:1;min-width:0;padding:12px 14px;font-size:17px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
#cce-snow .ccs-addr input:focus{border-color:var(--sky);outline:0}
#cce-snow .ccs-btn{background:#fff;color:var(--navy);border:2px solid var(--line);border-radius:10px;padding:9px 16px;font-size:15px;font-weight:600;margin:0}
#cce-snow .ccs-btn:hover{border-color:var(--sky);background:#fff;color:var(--navy)}
#cce-snow .ccs-btn.ccs-primary{background:var(--orange);border-color:var(--orange);color:#fff}
#cce-snow .ccs-btn.ccs-primary:hover{background:var(--orange-d);border-color:var(--orange-d);color:#fff}
#cce-snow .ccs-btn[disabled]{opacity:.45;cursor:not-allowed}
#cce-snow .ccs-msg{margin:0 0 10px;padding:10px 14px;background:var(--soft);border-radius:10px;font-size:15px}
#cce-snow .ccs-map{height:440px;border-radius:12px;overflow:hidden;border:2px solid var(--line);background:#cfd6de}
#cce-snow.ccs-drawing .ccs-map{border-color:var(--orange);cursor:crosshair}
#cce-snow .ccs-maptools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:0 0 10px;font-size:16px}
#cce-snow .ccs-maptools:empty{display:none}
#cce-snow .ccs-under{margin-top:10px}
#cce-snow .ccs-size{font-size:18px;color:var(--navy);margin:0 0 6px}
#cce-snow .ccs-check{display:inline-flex;gap:8px;align-items:center;font-size:15px;margin:0 0 6px}
#cce-snow .ccs-addrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:15px}
#cce-snow .ccs-addrow > span{flex:1 1 100%;font-weight:600;color:var(--navy)}
#cce-snow .ccs-addrow select,#cce-snow .ccs-addrow input{padding:8px 10px;border:2px solid var(--line);border-radius:8px;font-size:15px;background:#fff;color:var(--ink)}
#cce-snow .ccs-addrow input[type=number]{width:80px}
#cce-snow .ccs-addrow .cce-qty{min-width:200px}
#cce-snow .ccs-list{list-style:none;margin:6px 0 0;padding:0}
#cce-snow .ccs-list li{padding:8px 0;border-top:1px solid #eef0f3;font-size:15px}
#cce-snow .ccs-dot{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:8px;vertical-align:-1px}
#cce-snow .ccs-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;font-size:16px}
#cce-snow .ccs-table td{padding:10px 14px;border-bottom:1px solid #eef0f3}
#cce-snow .ccs-table td.r{text-align:right;font-weight:600}
#cce-snow .ccs-table tr.tot td{background:var(--soft);font-weight:700;color:var(--navy)}
#cce-snow .ccs-emhead{font-size:18px;margin:0 0 14px;padding:12px 16px;background:#fdecea;border-radius:10px}
#cce-snow .ccs-sched{list-style:none;margin:8px 0;padding:0}
#cce-snow .ccs-sched li{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px dashed #d6dbe2}
#cce-snow .cce-lines{list-style:none;margin:0 0 12px;padding:0}
#cce-snow .cce-lines li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #eef0f3}
#cce-snow .cce-lines .ccs-amt{font-weight:700;white-space:nowrap;color:var(--navy)}
/* leaflet inside themes */
#cce-snow .leaflet-container img,#cce-snow .leaflet-container .leaflet-tile{max-width:none !important;max-height:none !important;box-shadow:none !important;border:0 !important;padding:0 !important;margin:0 !important}
#cce-snow .leaflet-container a{box-shadow:none;text-decoration:none}
#cce-snow .leaflet-container{font:inherit;font-size:12px}
#cce-snow .ccs-v{background:#fff;border:3px solid #0F3A6B;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.5)}
#cce-snow .ccs-m{background:rgba(255,255,255,.8);border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.4)}
#cce-snow .ccs-m::after{content:"+";display:block;text-align:center;font-weight:700;color:#0F3A6B;line-height:16px;font-size:14px}
#cce-snow .ccs-tip{background:rgba(15,58,107,.85);color:#fff;border:0;border-radius:6px;font-weight:600;font-size:12px;padding:3px 7px;box-shadow:none}
#cce-snow .ccs-tip::before{display:none}
@media (max-width:600px){#cce-snow .ccs-map{height:360px}}
#cce-snow .ccs-mapwrap{position:relative}
#cce-snow .ccs-offline{position:absolute;left:12px;right:12px;top:50px;z-index:1000;background:#fff;border-left:5px solid #E8732B;border-radius:10px;padding:12px 14px;font-size:15px;box-shadow:0 4px 14px rgba(0,0,0,.2)}
#cce-snow .ccs-offline.ccs-small{top:auto;bottom:28px;font-size:13px;padding:8px 12px}

#cce-snow .ccs-instr{display:flex;align-items:center;gap:10px;flex:1 1 320px;background:#fff4ec;border:2px solid var(--orange);border-radius:10px;padding:10px 14px;font-size:16px}
#cce-snow .ccs-num{flex:0 0 auto;min-width:32px;height:32px;border-radius:50%;background:var(--orange);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
#cce-snow .ccs-btns{display:flex;gap:8px;flex-wrap:wrap}
#cce-snow .ccs-btns .ccs-btn{padding:11px 18px;font-size:16px}
#cce-snow .ccs-widths{margin:0 0 14px}
#cce-snow .ccs-wq{display:block;font-weight:700;color:var(--navy);margin:0 0 8px;font-size:17px}
#cce-snow .ccs-widths .cce-chip{text-align:left}
#cce-snow .ccs-wother{display:inline-flex;align-items:center;gap:6px;font-size:15px}
#cce-snow .ccs-wother input{width:70px;padding:8px;border:2px solid var(--line);border-radius:8px;font-size:15px}
#cce-snow .ccs-wsel[hidden]{display:none}
#cce-snow .ccs-v{border-width:4px}
/* v1.2: guide, bigger options */
#cce-snow .ccs-guide{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
#cce-snow .ccs-guide li{display:flex;gap:10px;align-items:flex-start;background:#fff;border:2px solid var(--line);border-radius:12px;padding:10px 12px;font-size:15px;opacity:.7}
#cce-snow .ccs-guide li.now{border-color:var(--orange);background:#fff4ec;opacity:1}
#cce-snow .ccs-guide li.done{opacity:.85}
#cce-snow .ccs-guide b{display:block;color:var(--navy);font-size:16px}
#cce-snow .ccs-guide small{display:block;color:var(--muted);font-size:14px;line-height:1.35;margin-top:2px}
#cce-snow .ccs-gn{flex:0 0 28px;height:28px;border-radius:50%;background:var(--line);color:var(--navy);font-weight:700;display:flex;align-items:center;justify-content:center}
#cce-snow .ccs-guide li.now .ccs-gn{background:var(--orange);color:#fff}
#cce-snow .ccs-guide li.done .ccs-gn{background:#2f7a3d;color:#fff}
#cce-snow .ccs-callout{background:#fff4ec;border:2px solid var(--orange);border-radius:12px;padding:14px 16px;margin:0 0 12px}
#cce-snow .ccs-wchips .cce-chip{font-size:16px;padding:10px 16px}
#cce-snow .ccs-wchips .cce-chip small{font-size:13px}
#cce-snow .ccs-rows{display:grid;gap:10px;margin:12px 0 0}
#cce-snow .ccs-row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px}
#cce-snow .ccs-rowhead{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:17px}
#cce-snow .ccs-rowhead .ccs-retrace{margin-left:auto}
#cce-snow .ccs-rowsub{margin:10px 0 4px;font-size:15px;font-weight:600;color:var(--navy)}
#cce-snow .ccs-rowsub .cce-chips{margin-top:6px}
#cce-snow .ccs-row .ccs-check{margin:8px 0 0;font-size:16px}
#cce-snow .ccs-assure{margin:14px 0 0;padding:12px 16px;background:#e5f4e4;border-radius:10px;font-size:15px}
#cce-snow .ccs-sec{margin:0 0 16px}
#cce-snow .ccs-sec h4{margin:0 0 10px;color:var(--navy);font-size:19px}
#cce-snow .ccs-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
#cce-snow .ccs-opt{display:flex;flex-direction:column;gap:3px;text-align:left;background:#fff;border:2px solid var(--line);border-radius:12px;padding:14px 16px;margin:0;color:var(--ink);font-size:17px}
#cce-snow .ccs-opt:hover{border-color:var(--sky);background:#fff;color:var(--ink)}
#cce-snow .ccs-opt.is-on{border-color:var(--orange);background:#fff4ec}
#cce-snow .ccs-opt b{color:var(--navy);font-size:17px}
#cce-snow .ccs-opt small{color:var(--muted);font-size:14px}
#cce-snow .ccs-opts-sm .ccs-opt{padding:12px 14px}
#cce-snow .ccs-dims{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;margin-top:12px}
#cce-snow .ccs-dims label{display:flex;flex-direction:column;gap:4px;font-weight:700;color:var(--navy);font-size:16px}
#cce-snow .ccs-dims label span{display:flex;align-items:center;gap:6px;font-weight:400;color:var(--ink)}
#cce-snow .ccs-dims input{width:110px;padding:12px;font-size:18px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
#cce-snow .ccs-dims .ccs-btn{padding:13px 22px;font-size:17px}
#cce-snow .ccs-steps{max-width:260px}
#cce-snow .ccs-list li{font-size:16px}
#cce-snow .ccs-saltwrap .cce-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
#cce-snow .ccs-dt th{text-align:left;padding:10px 14px;background:var(--soft);color:var(--navy);font-size:14px}
#cce-snow .ccs-dt th.r{text-align:right}
/* v1.3 extras layout */
#cce-snow .ccs-added{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin:0 0 16px}
#cce-snow .ccs-added h4,#cce-snow .ccs-addbox h4{margin:0 0 10px;color:var(--navy);font-size:19px}
#cce-snow .ccs-alist{list-style:none;margin:0;padding:0}
#cce-snow .ccs-alist li{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #eef0f3;font-size:16px}
#cce-snow .ccs-alist li:first-child{border-top:0}
#cce-snow .ccs-ai{flex:1;display:flex;flex-direction:column}
#cce-snow .ccs-ai small{color:var(--muted);font-size:14px}
#cce-snow .ccs-btn.ccs-sm{padding:6px 12px;font-size:14px}
#cce-snow .ccs-addbox{background:#fff;border:2px solid var(--line);border-radius:14px;padding:18px;margin:0 0 4px}
#cce-snow .ccs-qn{display:flex;align-items:center;gap:10px;margin:18px 0 10px;font-weight:700;color:var(--navy);font-size:17px}
#cce-snow .ccs-addbox h4 + .ccs-qn{margin-top:4px}
#cce-snow .ccs-qn span{flex:0 0 28px;height:28px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px}
#cce-snow .ccs-opts.ccs-two{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
#cce-snow .ccs-qrow{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:0 0 10px;font-size:17px;color:var(--navy)}
/* ================= v1.4: bigger, simpler, pictures ================= */
#cce-snow{font-size:18px}
#cce-snow .cce-title{font-size:clamp(30px,5vw,44px)}
#cce-snow .cce-lede{font-size:18px}
#cce-snow .cce-stepcount{font-size:15px}
#cce-snow .cce-q{font-size:clamp(26px,4vw,34px);margin-bottom:8px}
#cce-snow .cce-sub{font-size:18px;color:var(--ink)}
#cce-snow .cce-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
#cce-snow .cce-grid.cce-big{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
#cce-snow .cce-card{border-width:3px}
#cce-snow .cce-card.is-on{border-color:var(--orange);box-shadow:0 0 0 3px rgba(232,115,43,.25),0 8px 20px rgba(232,115,43,.2)}
#cce-snow .cce-grid.has-pick .cce-card:not(.is-on){opacity:1}
#cce-snow .cce-check{width:34px;height:34px;font-size:18px;top:12px;right:12px;z-index:2}
#cce-snow .cce-body{padding:14px 16px 16px;gap:6px}
#cce-snow .cce-label{font-size:21px;line-height:1.2}
#cce-snow .cce-desc{font-size:17px;line-height:1.4}
#cce-snow .cce-price{font-size:22px;color:var(--navy);font-weight:800}
#cce-snow .cce-note{font-size:16px;font-style:normal;color:var(--ink);background:#fff4ec;border-radius:8px;padding:8px 10px;margin-top:6px}
#cce-snow .cce-chip{font-size:17px;padding:11px 18px}
#cce-snow .ccs-art{aspect-ratio:16/9;background:linear-gradient(#e9f3fb,#d6e8f6);overflow:hidden}
#cce-snow .ccs-art svg{width:100%;height:100%;display:block}
#cce-snow .ccs-photo{aspect-ratio:16/9}
#cce-snow .ccs-badge{position:absolute;top:12px;left:12px;z-index:2;background:#2f7a3d;color:#fff;font-weight:800;font-size:14px;letter-spacing:.04em;padding:6px 10px;border-radius:999px}
#cce-snow .ccs-was{font-size:18px;color:#b3261e;text-decoration:line-through}
#cce-snow .ccs-tapnote{font-size:18px;font-weight:700;color:var(--orange-d);margin:0 0 12px}
#cce-snow .ccs-bigsec{margin-top:24px}
#cce-snow .ccs-bigsec h4{font-size:24px}
#cce-snow .ccs-savebanner{display:flex;align-items:center;gap:16px;background:#e5f4e4;border:3px solid #2f7a3d;border-radius:14px;padding:14px 18px;margin:0 0 18px;font-size:19px}
#cce-snow .ccs-savebig{flex:0 0 auto;background:#2f7a3d;color:#fff;font-weight:800;font-size:24px;padding:10px 14px;border-radius:10px}
#cce-snow .ccs-savebanner s{color:#b3261e}
#cce-snow .ccs-savebanner b{font-size:22px;color:#2f7a3d}
/* footer */
#cce-snow .cce-running-label{font-size:14px}
#cce-snow .cce-running-value{font-size:clamp(22px,3vw,28px)}
#cce-snow .cce-next,#cce-snow .cce-back{font-size:19px;padding:14px 22px}
/* map step */
#cce-snow .ccs-guide li{font-size:17px}
#cce-snow .ccs-guide b{font-size:18px}
#cce-snow .ccs-guide small{font-size:16px}
#cce-snow .ccs-instr{font-size:18px}
#cce-snow .ccs-addr input{font-size:19px;padding:14px 16px}
#cce-snow .ccs-btn{font-size:17px}
#cce-snow .ccs-msg{font-size:17px}
#cce-snow .ccs-rowhead{font-size:19px}
#cce-snow .ccs-assure{font-size:17px}
#cce-snow .ccs-opt b{font-size:19px}
#cce-snow .ccs-opt small{font-size:16px}
#cce-snow .ccs-qn{font-size:20px}
#cce-snow .ccs-table{font-size:18px}
#cce-snow .cce-qn{font-size:18px}
/* result */
#cce-snow .ccs-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:0 0 18px}
#cce-snow .ccs-pricebox{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;background:#fff;border:3px solid var(--navy);border-radius:16px;padding:22px 18px}
#cce-snow .ccs-pricebox.ccs-green{border-color:#2f7a3d;background:#f1faf0}
#cce-snow .ccs-pk{font-size:15px;font-weight:800;letter-spacing:.1em;color:var(--orange-d);text-transform:uppercase}
#cce-snow .ccs-pl{font-size:20px;font-weight:700;color:var(--navy)}
#cce-snow .ccs-pv{font-family:"Playfair Display",Lora,Georgia,serif;font-size:clamp(36px,6vw,52px);font-weight:700;color:var(--navy);line-height:1.1}
#cce-snow .ccs-green .ccs-pv{color:#2f7a3d}
#cce-snow .ccs-pv small{font-size:.45em}
#cce-snow .ccs-pricebox .ccs-was{font-size:22px}
#cce-snow .ccs-ps{font-size:17px;color:var(--ink)}
#cce-snow .ccs-green .ccs-ps b{color:#2f7a3d;font-size:19px}
#cce-snow .ccs-cols2{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:start}
@media (max-width:820px){#cce-snow .ccs-cols2{grid-template-columns:1fr}}
#cce-snow .ccs-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:0 0 16px}
#cce-snow .ccs-box h4{margin:0 0 10px;font-size:22px;color:var(--navy)}
#cce-snow .ccs-plain{font-size:18px;line-height:1.5;margin:0 0 12px;color:var(--ink)}
#cce-snow .ccs-plain.ccs-small{font-size:16px;color:var(--muted);margin:10px 0 0}
#cce-snow .ccs-checks{list-style:none;margin:0;padding:0}
#cce-snow .ccs-checks li{position:relative;padding:8px 0 8px 36px;font-size:18px;border-top:1px solid #eef0f3}
#cce-snow .ccs-checks li:first-child{border-top:0}
#cce-snow .ccs-checks li::before{content:"\2713";position:absolute;left:0;top:8px;width:26px;height:26px;border-radius:50%;background:#2f7a3d;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:15px}
#cce-snow .ccs-addr2{margin:10px 0 0;font-size:16px;color:var(--muted)}
#cce-snow .ccs-sched li{font-size:18px;padding:8px 0}
#cce-snow .ccs-sched small{font-size:14px;color:var(--muted)}
#cce-snow .ccs-fine{font-size:15px;color:var(--muted);margin:4px 0 16px}
#cce-snow .ccs-fine summary{cursor:pointer;font-weight:700}
#cce-snow .ccs-formpanel h4{font-size:24px}
#cce-snow .ccs-formpanel .cce-form label{font-size:17px}
#cce-snow .ccs-formpanel .cce-form input,#cce-snow .ccs-formpanel .cce-form textarea{font-size:18px;padding:12px 14px}
#cce-snow .ccs-formpanel .cce-cta{font-size:21px;padding:16px}
#cce-snow .ccs-formpanel a{font-weight:700}
@media (max-width:520px){#cce-snow .cce-grid{grid-template-columns:1fr}#cce-snow .cce-label{font-size:20px}}
#cce-snow .ccs-dt th{font-size:16px}
#cce-snow .cce-consent{font-size:16px !important}
#cce-snow .cce-fineprint{font-size:14px}
/* ================= v1.5 ================= */
#cce-snow{position:relative}
#cce-snow .ccs-topreset{position:absolute;top:14px;right:14px;z-index:5;background:#fff;color:var(--navy);border:2px solid var(--navy);border-radius:999px;padding:10px 18px;font-size:17px;font-weight:700;margin:0}
#cce-snow .ccs-topreset:hover{background:var(--navy);color:#fff}
#cce-snow .ccs-topreset[hidden]{display:none}
@media (max-width:640px){#cce-snow .ccs-topreset{position:static;display:block;margin:0 0 10px auto}}
#cce-snow .ccs-pin{background:none;border:0}
#cce-snow .ccs-pin svg{width:40px;height:52px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.5))}
#cce-snow .ccs-pintip{background:#0F3A6B;color:#fff;border:3px solid #fff;border-radius:10px;font-size:17px;padding:8px 12px;box-shadow:0 3px 10px rgba(0,0,0,.4);white-space:nowrap}
#cce-snow .ccs-pintip::before{border-right-color:#fff}
#cce-snow .ccs-confirm{text-align:center}
#cce-snow .ccs-confirm .ccs-wq{font-size:24px}
#cce-snow .ccs-confirm p{margin:4px 0 12px;font-size:18px}
#cce-snow .ccs-confirm .ccs-yes{font-size:20px;padding:14px 28px}
#cce-snow .ccs-small2{font-size:16px !important;color:var(--muted)}
#cce-snow .ccs-disabled .ccs-saltwrap{opacity:.45;filter:grayscale(.6)}
#cce-snow .ccs-disabled .cce-card{cursor:not-allowed}
#cce-snow .ccs-disabled .cce-card:hover{transform:none;box-shadow:none;border-color:var(--line)}
#cce-snow .ccs-offnote{font-size:18px;background:#fff4ec;border-left:5px solid var(--orange);padding:10px 14px;border-radius:8px;margin:0 0 12px}
#cce-snow .ccs-photoslot{aspect-ratio:16/9;overflow:hidden;background:#e9edf2}
#cce-snow .ccs-photoslot img{width:100%;height:100%;object-fit:cover;display:block}
#cce-snow .ccs-bliz{background:#fdecea;border-radius:8px;padding:10px 12px}
/* weather calendar */
#cce-snow .ccs-wx{background:linear-gradient(#e9f3fb,#d6e8f6);border:3px solid var(--navy);border-radius:18px;padding:20px;margin:0 0 18px}
#cce-snow .ccs-wxhead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:0 0 14px}
#cce-snow .ccs-wxhead h4{margin:2px 0 4px;font-size:clamp(26px,4vw,34px);color:var(--navy);font-family:"Playfair Display",Lora,Georgia,serif}
#cce-snow .ccs-wxhead p{margin:0;font-size:19px}
#cce-snow .ccs-wxnow{display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:10px 16px}
#cce-snow .ccs-wxnow svg{width:64px;height:64px}
#cce-snow .ccs-wxnow b{display:block;font-size:34px;color:var(--navy);line-height:1}
#cce-snow .ccs-wxnow small{font-size:15px;color:var(--muted)}
#cce-snow .ccs-cal{background:#fff;border:3px solid var(--navy);border-radius:14px;overflow:hidden}
#cce-snow .ccs-calbar{background:var(--navy);color:#fff;font-weight:800;font-size:20px;text-align:center;padding:10px;letter-spacing:.04em}
#cce-snow .ccs-calgrid{display:grid;grid-template-columns:repeat(7,1fr)}
#cce-snow .ccs-dow{text-align:center;font-weight:700;font-size:15px;color:var(--navy);padding:6px 0;background:#e7f1fb}
#cce-snow .ccs-day{min-height:96px;border-top:1px solid #e3e8ee;border-left:1px solid #e3e8ee;padding:6px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:14px}
#cce-snow .ccs-day:nth-child(7n+1){border-left:0}
#cce-snow .ccs-day.past{background:#f4f5f7;color:#aab2bd}
#cce-snow .ccs-day.today{box-shadow:inset 0 0 0 3px var(--orange)}
#cce-snow .ccs-day.snowy{background:#dbeeff}
#cce-snow .ccs-dn{align-self:flex-start;font-weight:700;font-size:14px}
#cce-snow .ccs-day svg{width:38px;height:38px}
#cce-snow .ccs-tmp b{font-size:16px;color:var(--ink)}
#cce-snow .ccs-tmp small{color:var(--muted)}
#cce-snow .ccs-snow{background:var(--navy);color:#fff;font-weight:800;border-radius:999px;padding:1px 8px;font-size:13px}
#cce-snow .ccs-pop{font-size:12px;color:var(--sky);font-weight:700}
@media (max-width:600px){#cce-snow .ccs-day{min-height:72px;padding:3px}#cce-snow .ccs-day svg{width:26px;height:26px}#cce-snow .ccs-tmp small{display:none}}
#cce-snow .ccs-day{min-height:58px}
#cce-snow .ccs-day.has{min-height:110px}
/* ================= v1.6 branding ================= */
#cce-snow .ccs-head{position:relative;overflow:hidden;background:linear-gradient(135deg,#0F3A6B 0%,#13497f 55%,#1d6fae 100%);border-radius:16px;padding:22px 24px 18px;margin:0 0 18px;color:#fff;text-align:center}
#cce-snow .ccs-brand{position:relative;z-index:1;display:inline-flex;align-items:center;gap:16px;text-align:left}
#cce-snow .ccs-emblem{width:96px;height:96px;flex:0 0 auto;filter:drop-shadow(0 3px 8px rgba(0,0,0,.35))}
#cce-snow .ccs-wordmark{display:flex;flex-direction:column;line-height:1}
#cce-snow .ccs-wm1{font-family:Cinzel,"Trajan Pro",Georgia,serif;font-weight:700;font-size:clamp(38px,6vw,58px);letter-spacing:.06em;color:#fff}
#cce-snow .ccs-wm2{font-family:Cinzel,"Trajan Pro",Georgia,serif;font-weight:500;font-size:clamp(13px,2vw,19px);letter-spacing:.14em;color:#bfe3fb;margin-top:6px;border-top:2px solid #E8732B;padding-top:6px}
#cce-snow .ccs-tagline{position:relative;z-index:1;margin:12px 0 0;font-size:16px;color:#d9ecfa;letter-spacing:.03em}
#cce-snow .ccs-flakes i{position:absolute;top:-12px;width:10px;height:10px;opacity:.75;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cg stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Cline x1='10' y1='1' x2='10' y2='19'/%3E%3Cline x1='2.2' y1='5.5' x2='17.8' y2='14.5'/%3E%3Cline x1='2.2' y1='14.5' x2='17.8' y2='5.5'/%3E%3C/g%3E%3C/svg%3E");animation:ccsSnow 9s linear infinite}
#cce-snow .ccs-flakes i:nth-child(1){left:4%;animation-delay:0s;width:12px;height:12px}
#cce-snow .ccs-flakes i:nth-child(2){left:12%;animation-delay:-3s}
#cce-snow .ccs-flakes i:nth-child(3){left:21%;animation-delay:-6s;width:14px;height:14px}
#cce-snow .ccs-flakes i:nth-child(4){left:30%;animation-delay:-1.5s}
#cce-snow .ccs-flakes i:nth-child(5){left:40%;animation-delay:-7.5s;width:8px;height:8px}
#cce-snow .ccs-flakes i:nth-child(6){left:52%;animation-delay:-4.5s}
#cce-snow .ccs-flakes i:nth-child(7){left:61%;animation-delay:-2s;width:13px;height:13px}
#cce-snow .ccs-flakes i:nth-child(8){left:70%;animation-delay:-5.5s}
#cce-snow .ccs-flakes i:nth-child(9){left:78%;animation-delay:-8s;width:9px;height:9px}
#cce-snow .ccs-flakes i:nth-child(10){left:86%;animation-delay:-1s;width:12px;height:12px}
#cce-snow .ccs-flakes i:nth-child(11){left:93%;animation-delay:-6.5s}
#cce-snow .ccs-flakes i:nth-child(12){left:47%;animation-delay:-3.8s;width:7px;height:7px}
@keyframes ccsSnow{0%{transform:translate(0,0) rotate(0)}50%{transform:translate(14px,90px) rotate(180deg)}100%{transform:translate(-6px,190px) rotate(360deg)}}
@media (prefers-reduced-motion:reduce){#cce-snow .ccs-flakes i{animation:none;top:auto}}
#cce-snow .cce-head{margin-bottom:10px}
#cce-snow .cce-title{font-size:clamp(26px,4vw,36px)}
#cce-snow .ccs-topreset{top:20px;right:20px;z-index:6;background:rgba(255,255,255,.95)}
@media (max-width:640px){#cce-snow .ccs-head{padding:18px 14px}#cce-snow .ccs-emblem{width:64px;height:64px}#cce-snow .ccs-brand{gap:10px}}
#cce-snow .ccs-foot{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px 0 0;font-size:15px;color:var(--muted);text-align:left}
#cce-snow .ccs-foot b{color:var(--navy)}
#cce-snow .ccs-foot a{color:var(--navy);font-weight:700}
#cce-snow .ccs-foot img{width:34px;height:34px}
/* polar bear */
#cce-snow .ccs-bearsay{display:flex;align-items:flex-end;gap:14px;margin:0 0 16px}
#cce-snow .ccs-bear{width:110px;height:127px;flex:0 0 auto}
#cce-snow .ccs-bubble{position:relative;background:#fff;border:3px solid var(--navy);border-radius:18px;padding:14px 18px;font-size:19px;margin-bottom:40px;max-width:520px}
#cce-snow .ccs-bubble::before{content:"";position:absolute;left:-14px;bottom:18px;border:10px solid transparent;border-right-color:var(--navy)}
#cce-snow .ccs-bubble::after{content:"";position:absolute;left:-9px;bottom:20px;border:8px solid transparent;border-right-color:#fff}
#cce-snow .cce-thanks .ccs-bearsay{margin:0}
#cce-snow .cce-thanks .ccs-bubble{margin-bottom:30px;font-size:18px}
#cce-snow .ccs-resbrand{display:flex;align-items:center;gap:12px;font-size:20px;color:var(--navy);margin:0 0 14px}
@media (max-width:520px){#cce-snow .ccs-bear{width:80px;height:92px}#cce-snow .ccs-bubble{font-size:17px;margin-bottom:24px}}
#cce-snow .ccs-emblem{width:110px;height:110px;background:radial-gradient(circle,#fff 0 60%,rgba(255,255,255,.85) 70%,rgba(255,255,255,0) 72%);border-radius:50%;padding:2px}
@media (max-width:640px){#cce-snow .ccs-emblem{width:70px;height:70px}}
/* ================= v1.7: less scrolling ================= */
#cce-snow{padding-top:16px}
#cce-snow .ccs-head{padding:12px 18px 10px;margin:0 0 10px}
#cce-snow .ccs-emblem{width:74px;height:74px}
#cce-snow .ccs-wm1{font-size:clamp(28px,4.4vw,42px)}
#cce-snow .ccs-wm2{font-size:clamp(11px,1.6vw,15px);margin-top:4px;padding-top:4px}
#cce-snow .ccs-tagline{margin:6px 0 0;font-size:14px}
#cce-snow .ccs-topreset{top:26px;right:26px;padding:8px 14px;font-size:16px}
#cce-snow .cce-head{display:none}
#cce-snow.ccs-first .cce-head{display:block;margin:0 0 4px}
#cce-snow.ccs-first .cce-title{font-size:clamp(24px,3.4vw,32px);margin:0 0 2px}
#cce-snow.ccs-first .cce-lede{font-size:17px}
#cce-snow .cce-progress{margin:8px 0 4px}
#cce-snow .cce-stepcount{margin-bottom:2px}
#cce-snow .cce-q{margin:0 0 6px}
#cce-snow .cce-sub{margin:0 0 12px}
#cce-snow .ccs-art,#cce-snow .ccs-photoslot,#cce-snow .ccs-photo{aspect-ratio:2/1}
#cce-snow.ccs-first .ccs-art{aspect-ratio:5/2}
#cce-snow .cce-body{padding:12px 16px 14px}
#cce-snow .cce-footer{margin-top:16px}
#cce-snow .ccs-bearsay{margin:0 0 12px;align-items:center}
#cce-snow .ccs-bear{width:86px;height:100px}
#cce-snow .ccs-bubble{margin-bottom:0;padding:12px 18px}
#cce-snow .ccs-bubble::before{bottom:auto;top:calc(50% - 10px)}
#cce-snow .ccs-bubble::after{bottom:auto;top:calc(50% - 8px)}
#cce-snow .ccs-hi{display:block;font-family:"Playfair Display",Lora,Georgia,serif;font-weight:700;color:var(--navy);font-size:clamp(24px,3.4vw,32px);line-height:1.15;margin-bottom:2px}
#cce-snow .ccs-guide{margin-bottom:10px}
#cce-snow .ccs-guide li{padding:8px 10px}
#cce-snow .ccs-map{height:400px}
@media (max-height:820px){#cce-snow .ccs-map{height:340px}}
/* scroll reminder */
#cce-snow .ccs-scrollhint{position:fixed;z-index:50;transform:translateX(-50%);background:var(--orange);color:#fff;border:3px solid #fff;border-radius:999px;padding:12px 22px;font-size:18px;font-weight:800;box-shadow:0 6px 18px rgba(0,0,0,.3);margin:0;animation:ccsBounce 1.4s ease-in-out infinite;white-space:nowrap}
#cce-snow .ccs-scrollhint[hidden]{display:none}
@keyframes ccsBounce{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,6px)}}
@media (prefers-reduced-motion:reduce){#cce-snow .ccs-scrollhint{animation:none}}
#cce-snow .cce-footer{z-index:1001}
#cce-snow .ccs-scrollhint{z-index:1002}
#cce-snow .ccs-topreset{z-index:1001}
#cce-snow .ccs-guide li:not(.now) small{display:none}
#cce-snow .ccs-guide li:not(.now){align-items:center}
@media (max-width:640px){
  #cce-snow .ccs-tagline{display:none}
  #cce-snow.ccs-first .cce-lede{display:none}
  #cce-snow.ccs-first .cce-title{font-size:22px}
  #cce-snow.ccs-first .ccs-art{aspect-ratio:3/1}
  #cce-snow .ccs-art,#cce-snow .ccs-photoslot{aspect-ratio:5/2}
  #cce-snow .ccs-bear{width:66px;height:76px}
  #cce-snow .ccs-hi{font-size:22px}
  #cce-snow .ccs-scrollhint{font-size:16px;padding:10px 16px}
  #cce-snow .ccs-guide{grid-template-columns:1fr 1fr}
}
/* ================= v1.8 ================= */
/* falling snow behind the whole estimator */
#cce-snow .ccs-snowbg{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;border-radius:14px}
#cce-snow .ccs-snowbg i{position:absolute;top:-20px;display:block;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cg stroke='%237fb3df' stroke-width='2' stroke-linecap='round'%3E%3Cline x1='10' y1='1' x2='10' y2='19'/%3E%3Cline x1='2.2' y1='5.5' x2='17.8' y2='14.5'/%3E%3Cline x1='2.2' y1='14.5' x2='17.8' y2='5.5'/%3E%3C/g%3E%3C/svg%3E");animation-name:ccsFall;animation-timing-function:linear;animation-iteration-count:infinite}
@keyframes ccsFall{0%{top:-20px;transform:translateX(0) rotate(0)}50%{transform:translateX(24px) rotate(180deg)}100%{top:100%;transform:translateX(-10px) rotate(360deg)}}
@media (prefers-reduced-motion:reduce){#cce-snow .ccs-snowbg{display:none}}
#cce-snow .ccs-head,#cce-snow .cce-head,#cce-snow .cce-progress,#cce-snow .cce-stepcount,#cce-snow .cce-stage,#cce-snow .ccs-foot{position:relative;z-index:1}
/* page friends */
#cce-snow .ccs-mini .ccs-bearsay{margin:0 0 12px}
#cce-snow .ccs-mini .ccs-bear{width:70px;height:81px}
#cce-snow .ccs-mini .ccs-bubble{font-size:18px;padding:10px 16px;max-width:760px;background:#fff}
#cce-snow .ccs-mini .ccs-bubble b{color:var(--navy)}
/* come-back explanation */
#cce-snow .ccs-comeback{margin:12px 0 0;padding:14px 16px;background:#e7f1fb;border-left:6px solid var(--navy);border-radius:10px;font-size:19px;line-height:1.45;color:var(--ink)}
#cce-snow .ccs-comeback b{color:var(--navy);font-weight:800}
#cce-snow .ccs-dt th:last-child{font-size:17px;color:var(--orange-d)}
/* see us in action */
#cce-snow .ccs-action{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px;align-items:center}
#cce-snow .ccs-action img{width:100%;border-radius:12px;aspect-ratio:4/3;object-fit:cover;display:block}
@media (max-width:640px){#cce-snow .ccs-action{grid-template-columns:1fr}}
#cce-snow .ccs-social{display:flex;flex-direction:column;gap:10px}
#cce-snow .ccs-social a{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:var(--navy);text-decoration:none;background:#f4f7fb;border:2px solid var(--line);border-radius:12px;padding:8px 12px}
#cce-snow .ccs-social a:hover{border-color:var(--sky)}
#cce-snow .ccs-social svg{width:34px;height:34px;flex:0 0 auto}
/* calendar */
#cce-snow .ccs-snow{background:var(--navy);color:#fff;font-size:14px;padding:2px 8px;white-space:nowrap}
#cce-snow .ccs-day.snowy{background:#cfe6ff}
#cce-snow .ccs-day.avg{background:#fafbfc;min-height:96px}
#cce-snow .ccs-avgtag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a96a6;margin:6px 0 2px}
#cce-snow .ccs-day.avg .ccs-tmp b{color:#6b7684;font-weight:600}
#cce-snow .ccs-legend{display:flex;flex-wrap:wrap;gap:16px;margin:10px 0 0;font-size:15px}
#cce-snow .ccs-legend i{display:inline-block;width:16px;height:16px;border-radius:4px;margin-right:6px;vertical-align:-3px;border:1px solid #c9d3df}
#cce-snow .ccs-legend .lg-f{background:#fff}#cce-snow .ccs-legend .lg-s{background:#cfe6ff}#cce-snow .ccs-legend .lg-a{background:#fafbfc}
#cce-snow .ccs-action{grid-template-columns:1fr}
#cce-snow .ccs-action img{aspect-ratio:16/10}
#cce-snow .ccs-social{flex-direction:row;flex-wrap:wrap}
#cce-snow .ccs-social a{flex:1 1 240px;min-width:0}
#cce-snow .ccs-social span{overflow-wrap:anywhere}
/* mascots dance on hover (or tap on phones) */
#cce-snow .ccs-bear{transform-origin:50% 95%;cursor:pointer;transition:transform .2s}
#cce-snow .ccs-bear:hover,#cce-snow .ccs-bear.ccs-dance{animation:ccsDance .9s ease-in-out infinite}
@keyframes ccsDance{0%{transform:translateY(0) rotate(0)}15%{transform:translateY(-10px) rotate(-12deg) scale(1.04)}30%{transform:translateY(0) rotate(0)}45%{transform:translateY(-10px) rotate(12deg) scale(1.04)}60%{transform:translateY(0) rotate(0)}75%{transform:translateY(-6px) rotate(-6deg)}90%{transform:translateY(0) rotate(6deg)}100%{transform:translateY(0) rotate(0)}}
@media (prefers-reduced-motion:reduce){#cce-snow .ccs-bear:hover,#cce-snow .ccs-bear.ccs-dance{animation:none}}
/* ===== v1.9: mascots dance with real body parts ===== */
#cce-snow .ccs-bear:hover,#cce-snow .ccs-bear.ccs-dance{animation:none}
#cce-snow .ccs-bear{overflow:visible}
#cce-snow .ccs-bear .m-shadow{transform-origin:65px 146px}
#cce-snow .ccs-bear:hover *,#cce-snow .ccs-bear.ccs-dance *{animation-duration:.9s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}
/* polar bear: grooves, waves one arm, rocks the shovel like a guitar */
#cce-snow .ccs-pb:hover .m-all,#cce-snow .ccs-pb.ccs-dance .m-all{animation-name:pbBob}
#cce-snow .ccs-pb:hover .m-head,#cce-snow .ccs-pb.ccs-dance .m-head{animation-name:pbHead}
#cce-snow .ccs-pb:hover .m-arm-l,#cce-snow .ccs-pb.ccs-dance .m-arm-l{animation-name:pbArmL}
#cce-snow .ccs-pb:hover .m-arm-r,#cce-snow .ccs-pb.ccs-dance .m-arm-r{animation-name:pbArmR}
#cce-snow .ccs-pb:hover .m-leg-l,#cce-snow .ccs-pb.ccs-dance .m-leg-l{animation-name:stepL}
#cce-snow .ccs-pb:hover .m-leg-r,#cce-snow .ccs-pb.ccs-dance .m-leg-r{animation-name:stepR}
#cce-snow .ccs-pb:hover .m-hat,#cce-snow .ccs-pb.ccs-dance .m-hat{animation-name:hatFlop}
@keyframes pbBob{0%,50%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-9px) rotate(-5deg)}75%{transform:translateY(-9px) rotate(5deg)}}
@keyframes pbHead{0%,50%,100%{transform:rotate(0)}25%{transform:rotate(-11deg) translateY(-2px)}75%{transform:rotate(11deg) translateY(-2px)}}
@keyframes pbArmL{0%,100%{transform:rotate(0)}25%{transform:rotate(80deg)}50%{transform:rotate(35deg)}75%{transform:rotate(85deg)}}
@keyframes pbArmR{0%,100%{transform:rotate(0)}25%{transform:rotate(-18deg)}50%{transform:rotate(-42deg)}75%{transform:rotate(-18deg)}}
@keyframes stepL{0%,50%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(-14deg)}}
@keyframes stepR{0%,50%,100%{transform:translateY(0) rotate(0)}75%{transform:translateY(-8px) rotate(14deg)}}
@keyframes hatFlop{0%,50%,100%{transform:rotate(0)}30%{transform:rotate(14deg)}80%{transform:rotate(-14deg)}}
/* scarves swing, eyes blink, shadows squash on every animal */
#cce-snow .ccs-bear:hover .m-tail,#cce-snow .ccs-bear.ccs-dance .m-tail{animation-name:tailSwing}
#cce-snow .ccs-bear:hover .m-eyes,#cce-snow .ccs-bear.ccs-dance .m-eyes{animation-name:blink;animation-duration:1.8s}
#cce-snow .ccs-bear:hover .m-shadow,#cce-snow .ccs-bear.ccs-dance .m-shadow{animation-name:shadowPulse}
@keyframes tailSwing{0%,100%{transform:rotate(0)}25%{transform:rotate(22deg)}75%{transform:rotate(-18deg)}}
@keyframes blink{0%,44%,52%,100%{transform:scaleY(1)}48%{transform:scaleY(.1)}}
@keyframes shadowPulse{0%,50%,100%{transform:scaleX(1);opacity:1}25%,75%{transform:scaleX(.8);opacity:.6}}
/* penguin: waddles side to side and flaps its flippers fast */
#cce-snow .ccs-penguin:hover .m-all,#cce-snow .ccs-penguin.ccs-dance .m-all{animation-name:pgWaddle}
#cce-snow .ccs-penguin:hover .m-arm-l,#cce-snow .ccs-penguin.ccs-dance .m-arm-l{animation-name:pgFlapL;animation-duration:.45s}
#cce-snow .ccs-penguin:hover .m-arm-r,#cce-snow .ccs-penguin.ccs-dance .m-arm-r{animation-name:pgFlapR;animation-duration:.45s}
#cce-snow .ccs-penguin:hover .m-head,#cce-snow .ccs-penguin.ccs-dance .m-head{animation-name:pgHead}
#cce-snow .ccs-penguin:hover .m-beak,#cce-snow .ccs-penguin.ccs-dance .m-beak{animation-name:beak;animation-duration:.45s}
#cce-snow .ccs-penguin:hover .m-leg-l,#cce-snow .ccs-penguin.ccs-dance .m-leg-l{animation-name:stepL}
#cce-snow .ccs-penguin:hover .m-leg-r,#cce-snow .ccs-penguin.ccs-dance .m-leg-r{animation-name:stepR}
#cce-snow .ccs-penguin:hover .m-hat,#cce-snow .ccs-penguin.ccs-dance .m-hat{animation-name:hatFlop}
@keyframes pgWaddle{0%,50%,100%{transform:rotate(0) translateY(0)}25%{transform:rotate(-13deg) translateY(-4px)}75%{transform:rotate(13deg) translateY(-4px)}}
@keyframes pgFlapL{0%,100%{transform:rotate(0)}50%{transform:rotate(55deg)}}
@keyframes pgFlapR{0%,100%{transform:rotate(0)}50%{transform:rotate(-55deg)}}
@keyframes pgHead{0%,50%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(8deg)}75%{transform:translateY(-3px) rotate(-8deg)}}
@keyframes beak{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.35)}}
/* reindeer: big hops with a squash on landing, nodding head, wiggling ears, glowing nose */
#cce-snow .ccs-deer:hover .m-all,#cce-snow .ccs-deer.ccs-dance .m-all{animation-name:rdHop}
#cce-snow .ccs-deer:hover .m-head,#cce-snow .ccs-deer.ccs-dance .m-head{animation-name:rdNod}
#cce-snow .ccs-deer:hover .m-arm-l,#cce-snow .ccs-deer.ccs-dance .m-arm-l{animation-name:rdArmL}
#cce-snow .ccs-deer:hover .m-arm-r,#cce-snow .ccs-deer.ccs-dance .m-arm-r{animation-name:rdArmR}
#cce-snow .ccs-deer:hover .m-leg-l,#cce-snow .ccs-deer.ccs-dance .m-leg-l{animation-name:rdKickL}
#cce-snow .ccs-deer:hover .m-leg-r,#cce-snow .ccs-deer.ccs-dance .m-leg-r{animation-name:rdKickR}
#cce-snow .ccs-deer:hover .m-ear-l,#cce-snow .ccs-deer.ccs-dance .m-ear-l{animation-name:earL;animation-duration:.45s}
#cce-snow .ccs-deer:hover .m-ear-r,#cce-snow .ccs-deer.ccs-dance .m-ear-r{animation-name:earR;animation-duration:.45s}
#cce-snow .ccs-deer:hover .m-nose,#cce-snow .ccs-deer.ccs-dance .m-nose{animation-name:noseGlow;animation-duration:.45s}
@keyframes rdHop{0%,50%,100%{transform:translateY(0) scale(1.04,.94)}12%,62%{transform:translateY(-4px) scale(.98,1.03)}25%{transform:translateY(-15px) rotate(-4deg)}75%{transform:translateY(-15px) rotate(4deg)}}
@keyframes rdNod{0%,50%,100%{transform:rotate(0)}25%{transform:rotate(-9deg)}75%{transform:rotate(9deg)}}
@keyframes rdArmL{0%,100%{transform:rotate(0)}25%{transform:rotate(60deg)}50%{transform:rotate(10deg)}75%{transform:rotate(-15deg)}}
@keyframes rdArmR{0%,100%{transform:rotate(0)}25%{transform:rotate(15deg)}50%{transform:rotate(-10deg)}75%{transform:rotate(-60deg)}}
@keyframes rdKickL{0%,50%,100%{transform:rotate(0)}25%{transform:rotate(25deg)}}
@keyframes rdKickR{0%,50%,100%{transform:rotate(0)}75%{transform:rotate(-25deg)}}
@keyframes earL{0%,100%{transform:rotate(0)}50%{transform:rotate(-18deg)}}
@keyframes earR{0%,100%{transform:rotate(0)}50%{transform:rotate(18deg)}}
@keyframes noseGlow{0%,100%{transform:scale(1);filter:none}50%{transform:scale(1.3);filter:drop-shadow(0 0 4px #ff5252)}}
@media (prefers-reduced-motion:reduce){#cce-snow .ccs-bear *{animation:none !important}}
/* a raised (waving) arm waves back and forth instead of swinging up */
#cce-snow .ccs-bear:hover .m-wave,#cce-snow .ccs-bear.ccs-dance .m-wave{animation-name:waveHi;animation-duration:.45s}
@keyframes waveHi{0%,100%{transform:rotate(-22deg)}50%{transform:rotate(18deg)}}
/* ===== v2.0: See us in action (video + gallery) ===== */
#cce-snow .ccs-action2{margin:20px 0 0;background:linear-gradient(135deg,#0F3A6B,#1d6fae);border-radius:18px;padding:22px;color:#fff}
#cce-snow .ccs-acthead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin:0 0 16px}
#cce-snow .ccs-acthead h3{margin:2px 0 4px;font-family:"Playfair Display",Lora,Georgia,serif;font-size:clamp(28px,4vw,38px);color:#fff}
#cce-snow .ccs-acthead .ccs-pk{color:#ffb98a}
#cce-snow .ccs-acthead .ccs-plain{color:#d9ecfa;margin:0}
#cce-snow .ccs-action2 .ccs-social{flex-direction:row;flex-wrap:wrap}
#cce-snow .ccs-action2 .ccs-social a{flex:0 1 auto;background:#fff}
#cce-snow .ccs-video{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#000;margin:0 0 14px;box-shadow:0 8px 24px rgba(0,0,0,.35)}
#cce-snow .ccs-video iframe,#cce-snow .ccs-video video{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
#cce-snow .ccs-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
#cce-snow .ccs-gallery.one{grid-template-columns:1fr}
#cce-snow .ccs-gimg{padding:0;margin:0;border:3px solid rgba(255,255,255,.85);border-radius:12px;overflow:hidden;background:#000;cursor:zoom-in;aspect-ratio:4/3;display:block}
#cce-snow .ccs-gallery.one .ccs-gimg{aspect-ratio:16/9}
#cce-snow .ccs-gimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
#cce-snow .ccs-gimg:hover img{transform:scale(1.06)}
#cce-snow .ccs-lightbox{position:fixed;inset:0;z-index:100000;background:rgba(5,15,30,.92);display:flex;align-items:center;justify-content:center}
#cce-snow .ccs-lightbox img{max-width:92vw;max-height:84vh;border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.6)}
#cce-snow .ccs-lightbox button{position:absolute;background:rgba(255,255,255,.95);color:#0F3A6B;border:0;border-radius:50%;width:54px;height:54px;font-size:34px;line-height:1;display:flex;align-items:center;justify-content:center;margin:0;padding:0}
#cce-snow .ccs-lbx{top:16px;right:16px}
#cce-snow .ccs-lbp{left:16px;top:50%;transform:translateY(-50%)}
#cce-snow .ccs-lbn{right:16px;top:50%;transform:translateY(-50%)}
#cce-snow .ccs-lbc{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:#fff;font-size:17px;font-weight:700}
/* ===== v2.1: real photos + video ===== */
#cce-snow .ccs-ps-season,#cce-snow .ccs-ps-emergency{aspect-ratio:2/1}
#cce-snow .ccs-ps-plow img{object-position:50% 62%}
#cce-snow .ccs-ps-salt img{object-position:50% 45%}
#cce-snow .ccs-actbody{display:block}
#cce-snow .ccs-actbody.portrait{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:16px;align-items:start}
#cce-snow .ccs-actbody.portrait .ccs-video{margin:0;aspect-ratio:9/16}
#cce-snow .ccs-actbody.portrait .ccs-gallery{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
#cce-snow .ccs-vfile video{object-fit:cover;background:#000}
@media (max-width:640px){#cce-snow .ccs-actbody.portrait{grid-template-columns:1fr}#cce-snow .ccs-actbody.portrait .ccs-video{max-width:340px;margin:0 auto 14px}}
/* ===== v2.2: gallery mosaic in one tidy box, expanded terms ===== */
#cce-snow .ccs-action2{background:#fff;color:var(--ink);border:3px solid var(--navy);padding:18px}
#cce-snow .ccs-acthead h3{color:var(--navy)}
#cce-snow .ccs-acthead .ccs-pk{color:var(--orange-d)}
#cce-snow .ccs-acthead .ccs-plain{color:var(--muted)}
#cce-snow .ccs-action2 .ccs-social a{background:#f4f7fb}
#cce-snow .ccs-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;grid-auto-flow:dense;gap:8px}
#cce-snow .ccs-mosaic .ccs-gimg{aspect-ratio:auto;border:0;border-radius:10px;width:100%;height:100%}
#cce-snow .ccs-mosaic .ccs-gimg.g-tall{grid-row:span 2}
#cce-snow .ccs-mosaic .ccs-gimg.g-big{grid-column:span 2;grid-row:span 2}
#cce-snow .ccs-mosaic .g-w2{grid-column:span 2}#cce-snow .ccs-mosaic .g-w3{grid-column:span 3}#cce-snow .ccs-mosaic .g-w4{grid-column:span 4}
#cce-snow .ccs-mosaic.single{grid-template-columns:1fr;grid-auto-rows:420px}
#cce-snow .ccs-mvid{grid-column:span 2;grid-row:span 3;margin:0;aspect-ratio:auto !important;border-radius:10px;box-shadow:none}
#cce-snow .ccs-mvid video{object-fit:cover}
@media (max-width:640px){
  #cce-snow .ccs-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:140px}
  #cce-snow .ccs-mosaic .ccs-gimg{grid-column:auto !important;grid-row:auto !important}
  #cce-snow .ccs-mosaic .ccs-gimg.g-mlast{grid-column:span 2 !important}
  #cce-snow .ccs-mvid{grid-column:span 2;grid-row:span 3}
}
#cce-snow .ccs-terms h4{margin:0 0 10px}
#cce-snow .ccs-tlist{margin:0;padding:0 0 0 22px}
#cce-snow .ccs-tlist li{font-size:17px;line-height:1.5;margin:0 0 8px;color:var(--ink)}
#cce-snow .ccs-tlist b{color:var(--navy)}
#cce-snow .ccs-cols2 > .ccs-col:last-child{position:sticky;top:16px}
@media (max-width:820px){#cce-snow .ccs-cols2 > .ccs-col:last-child{position:static}}
#cce-snow .ccs-terms .ccs-sched{margin:4px 0 0}
#cce-snow .ccs-gvid{cursor:default;overflow:hidden;border-radius:10px;background:#000}
#cce-snow .ccs-gvid video{width:100%;height:100%;object-fit:cover;display:block}
/* seamless mosaic: no white gaps between photos */
#cce-snow .ccs-mosaic{gap:0;border-radius:12px;overflow:hidden}
#cce-snow .ccs-mosaic .ccs-gimg,#cce-snow .ccs-mosaic .ccs-mvid{border-radius:0;border:0;box-shadow:none}
#cce-snow .ccs-mosaic .ccs-gimg img{border-radius:0}
/* ===== v3.0: easier driveway & walkway ===== */
#cce-snow .ccs-toprow{position:relative;z-index:6;display:flex;justify-content:flex-end;margin:-2px 0 8px}
#cce-snow .ccs-toprow[hidden]{display:none}
#cce-snow .ccs-toprow .ccs-topreset{position:static;top:auto;right:auto;display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--navy);border:3px solid var(--orange);border-radius:999px;padding:10px 20px;font-size:18px;font-weight:800;box-shadow:0 3px 10px rgba(0,0,0,.12)}
#cce-snow .ccs-toprow .ccs-topreset:hover{background:var(--orange);color:#fff}
#cce-snow .ccs-sizecards .cce-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
#cce-snow .ccs-sizecards .ccs-art{aspect-ratio:16/10;background:#d9ead0}
#cce-snow .ccs-sizecards .cce-label{font-size:20px}
#cce-snow .ccs-sizecards .cce-desc{font-size:16px}
#cce-snow .ccs-wrow{margin:0 0 6px}
#cce-snow .ccs-wrow .ccs-wq{display:block;font-weight:800;color:var(--navy);font-size:20px;margin:0 0 8px}
#cce-snow .ccs-mapsec{margin:18px 0 0;padding:16px;background:#fff;border:3px solid var(--orange);border-radius:16px}
#cce-snow .ccs-mapsec h4{margin:0 0 10px;font-size:22px;color:var(--navy)}
#cce-snow .ccs-sizeline{margin:10px 0 0;font-size:19px}
#cce-snow .ccs-demo{display:flex;align-items:center;gap:14px;background:#f4f7fb;border-radius:12px;padding:10px 12px;margin:0 0 10px;font-size:17px}
#cce-snow .ccs-demo svg{width:170px;height:85px;flex:0 0 auto;border-radius:8px}
@media (max-width:520px){#cce-snow .ccs-demo{flex-direction:column;align-items:flex-start}}
#cce-snow .dm-box{animation:dmBox 4s ease-in-out infinite}
#cce-snow .dm-hand1{animation:dmBox 4s ease-in-out infinite}
@keyframes dmBox{0%,15%{transform:translate(0,0)}50%,85%{transform:translate(58px,14px)}100%{transform:translate(0,0)}}
#cce-snow .dm-p1{animation:dmP1 3.5s infinite}#cce-snow .dm-p2{animation:dmP2 3.5s infinite}#cce-snow .dm-ln{animation:dmP2 3.5s infinite}
#cce-snow .dm-hand2{animation:dmHand2 3.5s ease-in-out infinite}
@keyframes dmP1{0%,15%{opacity:0}20%,100%{opacity:1}}
@keyframes dmP2{0%,55%{opacity:0}60%,100%{opacity:1}}
@keyframes dmHand2{0%,25%{transform:translate(0,0)}50%,100%{transform:translate(0,34px)}}
@media (prefers-reduced-motion:reduce){#cce-snow .ccs-demo *{animation:none !important}}
#cce-snow .ccs-maptools .ccs-bearsay{flex:1 1 360px;margin:0}
#cce-snow .ccs-maptools .ccs-bear{width:62px;height:72px}
#cce-snow .ccs-maptools .ccs-bubble{font-size:18px;padding:10px 16px;border-color:var(--orange)}
#cce-snow .ccs-maptools .ccs-bubble::before{border-right-color:var(--orange)}
#cce-snow .ccs-v{border-width:5px;box-shadow:0 2px 6px rgba(0,0,0,.45)}
#cce-snow .ccs-m::after{line-height:22px;font-size:20px}
#cce-snow .ccs-move{display:flex !important;align-items:center;justify-content:center;background:#E8732B;color:#fff;border:4px solid #fff;border-radius:50%;font-size:26px;line-height:1;box-shadow:0 2px 8px rgba(0,0,0,.45);cursor:move}
#cce-snow .ccs-homebtn{background:#fff;color:var(--navy);border:2px solid var(--navy);border-radius:10px;padding:8px 12px;font-size:15px;font-weight:700;margin:0;box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:pointer}
#cce-snow .ccs-pintip{font-size:20px;padding:10px 14px;animation:pinPulse 1.6s ease-in-out infinite}
@keyframes pinPulse{0%,100%{box-shadow:0 0 0 0 rgba(232,115,43,.7),0 3px 10px rgba(0,0,0,.4)}50%{box-shadow:0 0 0 10px rgba(232,115,43,0),0 3px 10px rgba(0,0,0,.4)}}
#cce-snow .ccs-pin svg{width:48px;height:62px}
#cce-snow .ccs-mapsec .ccs-map{height:440px}
#cce-snow .ccs-tip{pointer-events:none}
/* ===== v3.1: map-first with a big "skip the map" option, top Back button ===== */
#cce-snow .ccs-toprow{justify-content:space-between;gap:10px}
#cce-snow .ccs-topback{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--navy);border:3px solid var(--navy);border-radius:999px;padding:10px 20px;font-size:18px;font-weight:800;margin:0;box-shadow:0 3px 10px rgba(0,0,0,.12)}
#cce-snow .ccs-topback:hover{background:var(--navy);color:#fff}
#cce-snow .ccs-skipmap{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:#fff;color:var(--navy);border:3px solid var(--orange);border-radius:16px;padding:14px 18px;margin:0 0 14px;box-shadow:0 4px 14px rgba(232,115,43,.18);cursor:pointer}
#cce-snow .ccs-skipmap:hover{background:#fff4ec;color:var(--navy)}
#cce-snow .ccs-skipmap b{display:block;font-size:22px;line-height:1.2}
#cce-snow .ccs-skipmap small{display:block;font-size:17px;color:var(--ink);margin-top:2px}
#cce-snow .ccs-skipic{flex:0 0 48px;height:48px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800}
#cce-snow .ccs-skiparr{margin-left:auto;font-size:40px;line-height:1;color:var(--orange);font-weight:700}
#cce-snow .ccs-skip2{margin:14px 0 0}
#cce-snow .ccs-tomap{border-color:var(--navy);box-shadow:none}
#cce-snow .ccs-tomap .ccs-skipic{background:var(--navy)}
#cce-snow .ccs-tomap .ccs-skiparr{color:var(--navy)}
#cce-snow .ccs-mapsec{margin-top:0}
#cce-snow .ccs-mtbtn{margin-top:6px !important}
/* how-to animation sits in the corner of the map */
#cce-snow .ccs-mapwrap .ccs-demo{position:absolute;left:10px;bottom:24px;z-index:900;width:250px;flex-direction:column;align-items:flex-start;gap:4px;padding:8px;font-size:13px;line-height:1.3;background:rgba(255,255,255,.95);box-shadow:0 3px 12px rgba(0,0,0,.25);margin:0;pointer-events:none}
#cce-snow .ccs-mapwrap .ccs-demo svg{width:100%;height:auto}
@media (max-width:600px){#cce-snow .ccs-mapwrap .ccs-demo{width:150px;font-size:11px}}
#cce-snow .ccs-mapsec{padding:12px}
#cce-snow .ccs-mapwrap .ccs-demo{top:10px;left:52px;bottom:auto;width:210px}
/* ===== v3.2: add-ons with picture size menus ===== */
#cce-snow .ccs-xtypes .cce-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
#cce-snow .ccs-xtypes .ccs-art{aspect-ratio:2/1;background:#d9ead0}
#cce-snow .ccs-xtypes .cce-card.is-on{background:#fff4ec}
#cce-snow .ccs-addedinfo{display:block;margin-top:4px;padding:6px 8px;background:#e5f4e4;border-radius:8px;color:#1f5a2b;font-size:15px;line-height:1.35;font-weight:600}
#cce-snow .ccs-addedinfo b{color:#1f5a2b}
#cce-snow .ccs-tapadd{color:var(--muted);font-size:15px}
#cce-snow .ccs-sizebox{margin:16px 0 0;padding:16px;border:3px solid var(--orange);border-radius:14px;background:#fffaf6}
#cce-snow .ccs-sizebox .ccs-sizecards .cce-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
#cce-snow .ccs-exact{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:18px;font-weight:700;color:var(--navy);margin:14px 0}
#cce-snow .ccs-exact .cce-qty{display:inline-flex;min-width:220px}
#cce-snow .ccs-anotherrow{margin:12px 0 0;font-size:17px}
#cce-snow .ccs-anotherrow .cce-link{font-size:17px;font-weight:700}
#cce-snow .ccs-backsizes{display:inline-block;margin-top:10px;font-size:16px}
/* "Is the pin on your house?" sits on the map */
/* v3.4: compact "is this your house" box in the map's bottom-left corner */
#cce-snow .ccs-mapconfirm{position:absolute;left:12px;bottom:12px;z-index:950;display:flex;flex-direction:column;align-items:stretch;gap:6px;background:rgba(255,255,255,.97);border:3px solid var(--orange);border-radius:14px;padding:10px 12px;box-shadow:0 4px 14px rgba(0,0,0,.22);text-align:left;width:250px}
#cce-snow .ccs-mapconfirm .ccs-mcaddr{font-size:15px;font-weight:700;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#cce-snow .ccs-mapconfirm b{font-size:17px;color:var(--navy);line-height:1.2}
#cce-snow .ccs-mapconfirm .ccs-yes{font-size:17px;padding:9px 12px;width:100%}
#cce-snow .ccs-mapconfirm small{font-size:13px;color:var(--muted);line-height:1.3}
#cce-snow .ccs-mapconfirm.ccs-ok{border-color:#2f7a3d}
#cce-snow .ccs-addrchip{position:absolute;left:10px;bottom:10px;z-index:940;pointer-events:none;background:rgba(15,58,107,.9);color:#fff;font-size:14px;font-weight:700;padding:5px 10px;border-radius:8px;max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:700px){#cce-snow .ccs-mapconfirm{position:static;width:auto;margin:10px 0 0;padding:10px 14px;align-items:center;text-align:center;box-shadow:0 3px 10px rgba(0,0,0,.15)}#cce-snow .ccs-mapconfirm b{font-size:18px}#cce-snow .ccs-mapconfirm .ccs-yes{font-size:18px;padding:12px 18px}#cce-snow .ccs-mapconfirm .ccs-mcaddr{white-space:normal}}
/* savings */
#cce-snow .ccs-saveline{display:block;color:#c62828;font-weight:800;font-size:20px;margin-top:6px;line-height:1.25}
#cce-snow .ccs-saveline small{display:block;font-weight:600;font-size:15px;color:#c62828;opacity:.9;margin-top:2px}
#cce-snow .ccs-savebanner .ccs-savebig+.ccs-savebig{background:var(--orange)}
#cce-snow .ccs-ressave{margin-top:-4px}
@media (max-width:520px){#cce-snow .ccs-savebanner{flex-wrap:wrap;font-size:17px}#cce-snow .ccs-savebig{font-size:20px}}
/* rotating facts */
#cce-snow .ccs-mini .ccs-bubble{transition:opacity .4s}
#cce-snow .ccs-mini .ccs-bubble.ccs-fade{opacity:0}

/* v3.6: address suggestions */
#cce-snow .ccs-acwrap{position:relative;flex:1;min-width:0;display:flex}
#cce-snow .ccs-acwrap input{width:100%}
#cce-snow .ccs-ac{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:1200;list-style:none;margin:0;padding:6px 0;background:#fff;border:2px solid var(--sky);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
#cce-snow .ccs-ac li{padding:12px 16px;font-size:17px;color:var(--ink);cursor:pointer;line-height:1.3}
#cce-snow .ccs-ac li:hover,#cce-snow .ccs-ac li.is-on{background:#eaf4fc;color:var(--navy)}

/* v3.8: visible "+" to add a turn or corner */
#cce-snow .ccs-m{display:flex !important;align-items:center;justify-content:center;background:#fff;color:#E8732B;border:3px solid #E8732B;border-radius:50%;font:800 22px/1 Arial,sans-serif;box-shadow:0 2px 6px rgba(0,0,0,.45);cursor:pointer}
#cce-snow .ccs-m:hover{background:#E8732B;color:#fff}
#cce-snow .ccs-m::after{content:none}
/* v4.0: smaller handles with a big invisible grab area */
#cce-snow .ccs-v{background:transparent !important;border:0 !important;box-shadow:none !important;border-radius:50%}
#cce-snow .ccs-v span{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;box-sizing:border-box;background:#fff;border:3px solid #0F3A6B;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.55);transition:transform .12s}
#cce-snow .ccs-v:hover span,#cce-snow .ccs-v.leaflet-drag-target span{transform:scale(1.3)}
#cce-snow .ccs-m{font-size:17px !important;border-width:2px !important}
#cce-snow .ccs-move{font-size:20px !important;border-width:3px !important}
#cce-snow path.ccs-dragline{cursor:move;touch-action:none}

/* v4.4: no fade on every tap - only a light slide-in when a new step opens */
#cce-snow .cce-step{animation:none}
#cce-snow .cce-step.ccs-enter{animation:ccsEnter .22s ease-out}
@keyframes ccsEnter{from{opacity:.55;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){#cce-snow .cce-step.ccs-enter{animation:none}}

/* v4.6: on phones the "Watch" tip sits under the map so the map buttons never cover it */
@media (max-width:640px){
  #cce-snow .ccs-mapwrap{display:flex;flex-direction:column}
  #cce-snow .ccs-mapwrap .ccs-demo{position:static;order:2;width:auto;flex-direction:row;align-items:center;gap:10px;margin:8px 0 0;padding:8px 10px;font-size:14px;box-shadow:none;border:1px solid #d6e3ef}
  #cce-snow .ccs-mapwrap .ccs-demo svg{width:96px;height:48px;flex:0 0 96px}
  #cce-snow .ccs-mapwrap .ccs-addrchip{position:static;order:1;align-self:flex-start;margin:6px 0 0;max-width:100%}
}
