:root{color-scheme:light;--navy:#071e30;--navy2:#12344a;--teal:#00677d;--ice:#dff6fb;--cream:#fbf8ef;--paper:#fffefa;--line:#d9e0df;--ink:#142c3d;--muted:#4c626e;--yellow:#ffd352;--radius:20px;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}body{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;overflow-wrap:anywhere}h1{font-size:clamp(2.65rem,6vw,5.3rem);letter-spacing:-.065em;margin-bottom:20px}h1 em{font-style:normal;color:var(--teal)}h2{font-size:clamp(1.85rem,4vw,2.8rem);letter-spacing:-.045em;margin-bottom:14px}h3{font-size:1.2rem;margin-bottom:8px}p,li{line-height:1.58}a{color:var(--teal);text-underline-offset:3px}button,input,select{font:inherit}button,summary,a,input,select{touch-action:manipulation}button{cursor:pointer;font-weight:700;color:var(--ink);border:1px solid var(--line);border-radius:11px;background:var(--paper);padding:9px 13px;min-height:44px}button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #047da2;outline-offset:3px}button:hover{border-color:var(--teal)}button:disabled{opacity:.58;cursor:default}[hidden]{display:none!important}
.shell{width:min(100% - 48px,1130px);margin-inline:auto}.masthead{background:var(--navy);color:white}.mast{display:flex;min-height:78px;align-items:center;justify-content:space-between;gap:18px}.brand{display:inline-flex;align-items:center;gap:9px;color:inherit;text-decoration:none;font-size:clamp(1.04rem,2.8vw,1.48rem);font-weight:850;letter-spacing:-.045em;white-space:nowrap}.brand img{width:45px;height:45px;border-radius:12px}.brand b{color:#78d8eb}.mast nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.mast nav a{color:#e4f5fb;font-weight:650;text-decoration:none;padding-block:12px}.skip{position:absolute;left:8px;top:-100px;background:white;padding:10px;z-index:5}.skip:focus{top:8px}
.hero{margin:24px 0 40px;padding:clamp(24px,6vw,65px);border-radius:28px;background:linear-gradient(120deg,#edfaff 5%,#e6f6f6 69%,#d7f0f5);border:1px solid #c8e7ec;display:grid;grid-template-columns:1.55fr 1fr;align-items:center;gap:28px}.hero-copy>p:not(.eyebrow){font-size:clamp(1rem,2vw,1.2rem);max-width:42ch;color:#344e5d;margin-bottom:25px}.eyebrow{color:var(--teal);font-size:.78rem;font-weight:850;letter-spacing:.13em;margin-bottom:9px}.dot{display:inline-block;width:8px;height:8px;background:#02859c;border-radius:50%;margin-right:5px}.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid #e7b52a;border-radius:11px;min-height:46px;padding:9px 16px;background:var(--yellow);color:var(--navy);font-weight:800;text-decoration:none}.primary:hover{background:#ffdf74}
.ilmi-stage{display:grid;justify-items:center;align-items:center;text-align:center}.ilmi-stage button{background:radial-gradient(ellipse at 50% 54%,#afe7f5 6%,transparent 72%);border:0;padding:0;width:min(100%,265px)}.ilmi-stage img{display:block;width:100%;height:auto}.ilmi-note{margin-top:5px;background:#f8fdff;padding:10px 13px;border:1px solid #c6e5eb;border-radius:14px;width:100%}.ilmi-note span{font-size:.71rem;color:var(--teal);font-weight:850;letter-spacing:.09em}.ilmi-note p{margin:3px 0;font-weight:650;line-height:1.35}.ilmi-note small{color:var(--muted);line-height:1.35;display:block}
.section{margin:0 0 36px;scroll-margin-top:16px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}.section-title h2{margin-bottom:0}.tag{display:inline-block;background:var(--ice);color:#0a5366;border-radius:99px;padding:5px 10px;font-size:.8rem;font-weight:750}.search-label{display:block;font-weight:750;margin-bottom:5px}.period,.actions{display:flex;gap:8px;flex-wrap:wrap;margin-block:12px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.panel summary{font-weight:750;cursor:pointer;padding:12px 15px;min-height:44px}.section-panel,.filters .fields,.sources>p,.sources>ul{padding:14px 16px}.sources>p{margin:0}.sources>ul{margin:0;padding-left:36px}.sources li{margin-bottom:7px}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,165px),1fr));gap:10px 14px}.fields label{font-weight:650}.fields label:not(.check){display:grid;gap:4px;align-content:start}.check{display:flex;align-items:center;gap:7px;min-height:44px}.check input{width:19px;height:19px;accent-color:var(--teal)}input:not([type=checkbox]),select{width:100%;min-height:44px;border:1px solid #aabcc2;background:white;color:var(--ink);border-radius:10px;padding:8px 10px}.muted,small{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-block:14px}.cards>h3,.cards>.empty{grid-column:1/-1}.cards>h3{margin:9px 0 0}.empty{background:var(--paper);border:1px dashed #acc0c5;border-radius:14px;margin:0;padding:18px}.offer{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px;min-width:0;scroll-margin:16px}.offer-top{display:grid;grid-template-columns:87px 1fr;gap:13px;align-items:center}.product-image{width:87px;min-height:92px;display:grid;place-items:center;background:#eff8f9;border-radius:12px;text-align:center;padding:5px;align-content:center;font-size:.69rem;color:#3f5a63}.product-image img{width:100%;height:79px;object-fit:contain}.product-image .drop{width:32px;height:43px;margin:2px;fill:#83c9dd;stroke:#26758d;stroke-width:2}.offer dl{margin:12px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 9px;font-size:.92rem}.offer dt{font-weight:720}.offer dd{margin:0;overflow-wrap:anywhere}.prices{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin:4px 0}.prices strong{font-size:1.4rem;color:var(--navy);line-height:1.2}.offer .actions{margin-bottom:0}.signal{display:inline-block;padding:3px 8px;border-radius:7px;font-size:.81rem;background:#e8edef;color:#344c58}.green{background:#d9f1e3;color:#105c38}.yellow{background:#fff0be;color:#654900}.red{background:#fde0dc;color:#882619}
.list{list-style:none;padding:0}.list li{border-top:1px solid var(--line);padding:8px 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.list li>span{flex:1;min-width:180px}.list input[type=number]{width:76px}.list .done{text-decoration:line-through}.section-panel>.primary{margin-top:12px}.notice{position:fixed;z-index:2;bottom:12px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);background:var(--navy);color:white;border-radius:12px;padding:10px 14px;margin:0}dialog{width:min(95%,560px);max-height:85vh;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--paper)}dialog::backdrop{background:#071e3088}.close{float:right}.editorial{max-width:760px;padding:32px 0}.editorial section{margin:24px 0}.editorial ul{padding-left:22px}.editorial address{font-style:normal;line-height:1.55}.foot{background:var(--navy);color:#e0eef0;padding:24px 0;margin-top:40px}.foot .brand{margin-bottom:10px}.foot nav{display:flex;gap:9px 16px;flex-wrap:wrap;margin:9px 0}.foot a{color:#c8edf7}.foot p{font-size:.87rem;margin:13px 0 0}
@media(max-width:740px){.shell{width:calc(100% - 30px)}.mast{min-height:68px;flex-wrap:wrap;gap:0 10px;padding-block:7px}.mast nav{order:2;width:100%;gap:16px;font-size:.86rem}.mast nav a{padding-block:8px}.hero{padding:20px 17px;gap:12px;margin:14px 0 26px}.hero-copy>p:not(.eyebrow){margin-bottom:14px}.hero .eyebrow{letter-spacing:.075em}.hero .primary{font-size:.93rem}.ilmi-note{padding:6px}.ilmi-note p{font-size:.86rem}.ilmi-note small{font-size:.73rem}.cards{grid-template-columns:1fr}}
@media(max-width:490px){.hero{grid-template-columns:1fr;padding:20px 15px 13px;gap:11px}.hero h1{font-size:clamp(2.15rem,10vw,3rem);margin-bottom:10px}.hero-copy>p:not(.eyebrow){font-size:.98rem}.ilmi-stage{grid-template-columns:75px 1fr;gap:6px;text-align:left}.ilmi-note{padding:7px 8px}.section-title{align-items:start}.section-title .tag{max-width:115px;text-align:center}.brand img{width:39px;height:39px}.offer{padding:13px}.offer-top{grid-template-columns:76px 1fr}.product-image{width:76px}}

/* The three sister sites share a navy introduction, cream canvas and gold action. */
:root {
  --cream: #fbf7ed;
  --yellow: #ffbc22;
}
.hero {
  grid-template-columns: minmax(0,1.35fr) minmax(155px,.67fr) minmax(170px,.68fr);
  gap: clamp(15px,3vw,33px);
  align-items: center;
  margin-bottom: 12px;
  padding: clamp(20px,4vw,49px);
  background: linear-gradient(120deg,#071e30 2%,#102f44 71%,#14465a);
  color: #fffdf6;
  border-color: #163c50;
}
.hero h1 { font-family: Georgia, "Times New Roman", serif; font-weight: 750; font-size: clamp(2.6rem,5.4vw,5.05rem); letter-spacing: -.055em; }
.hero h1 em { color: #ffd36f; }
.hero .eyebrow { color: #f5d88a; }
.hero-copy>p:not(.eyebrow) { color: #e3edf2; }
.hero .primary { margin-top: 3px; }
.ilmi-stage { display: grid; gap: 5px; text-align: center; }
.ilmi-stage button {
  width: min(100%,198px);
  background: radial-gradient(ellipse at 50% 49%,#34798d 0%,#1a465c 46%,transparent 72%);
}
.ilmi-stage button:focus-visible { outline-color: #ffcf5a; }
.ilmi-note { background: #fff5d7; border-color: #edcc78; color: #142c3d; }
.ilmi-note span { color: #674a12; }
.ilmi-note p { font-family: Georgia, "Times New Roman", serif; font-size: .98rem; font-style: italic; line-height: 1.44; }
.ilmi-note small { font-size: .7rem; }
.hero-summary { padding: 15px 17px; border: 1px solid #4d6c76; border-radius: 16px; background: #112b3b; }
.hero-summary .eyebrow { font-size: .73rem; margin-bottom: 5px; }
.hero-summary strong { font-size: clamp(2rem,4.3vw,3.3rem); color: #ffd36f; font-variant-numeric: tabular-nums; }
.hero-summary p:not(.eyebrow) { margin: 0 0 7px; font-size: .94rem; }
.hero-summary a { color: #caeff7; font-size: .86rem; }
.home-context { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr); align-items: start; gap: 10px; margin-bottom: 24px; }
.ilmi-weather { display: flex; gap: 12px; align-items: center; padding: 9px 14px; }
.ilmi-weather h2 { font: 750 1rem/1.25 system-ui,sans-serif; letter-spacing: 0; margin-bottom: 3px; }
.ilmi-weather p { margin: 3px 0; font-size: .88rem; }
.ilmi-weather a { font-size: .73rem; }
#weather-quip, #gallery-quip { font-family: Georgia, "Times New Roman", serif; font-style: italic; color: #654d25; }
.ilmi-weather button, .gallery-view button { padding: 2px; flex: none; background: transparent; border-color: transparent; }
.ilmi-weather img, .gallery-view img { display: block; object-fit: contain; }
.ilmi-gallery { padding: 0 13px; }
.ilmi-gallery summary { padding-inline: 0; }
.ilmi-gallery label { display: block; font-size: .86rem; margin-bottom: 4px; }
.gallery-view { display: flex; align-items: center; gap: 9px; padding: 6px 0; }
.gallery-view p { margin: 0; font-size: .93rem; }
.mobile-nav { display: none; }
.home-page .mast nav a[aria-current] { color: #ffd36f; }

@media(max-width:850px) {
  .hero { grid-template-columns: minmax(0,1fr) minmax(150px,.62fr); }
  .hero-summary { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 0 11px; }
  .hero-summary .eyebrow { grid-column: 2; grid-row: 1; margin: 0; }
  .hero-summary strong { grid-column: 1; grid-row: 1 / 3; }
  .hero-summary p:not(.eyebrow) { grid-column: 2; grid-row: 2; margin: 0; }
  .hero-summary a { grid-column: 3; grid-row: 1 / 3; }
}
@media(max-width:740px) {
  .home-page { padding-bottom: calc(62px + env(safe-area-inset-bottom)); }
  .home-page .mast nav { display: none; }
  .home-page .mast { flex-wrap: nowrap; min-height: 62px; }
  .hero { grid-template-columns: minmax(0,1fr) minmax(90px,.42fr); gap: 9px 12px; margin-top: 12px; padding: 15px; }
  .hero-copy>p:not(.eyebrow) { margin-bottom: 9px; font-size: .93rem; }
  .hero .eyebrow { font-size: .66rem; letter-spacing: .065em; }
  .hero h1 { font-size: clamp(1.8rem,6.5vw,2.85rem); margin-bottom: 9px; }
  .ilmi-stage { display: contents; }
  .ilmi-stage button { grid-column: 2; grid-row: 1; align-self: center; width: min(100%,145px); padding: 0; }
  .ilmi-note { grid-column: 1 / -1; grid-row: 2; text-align: left; padding: 7px 10px; margin: 0; }
  .ilmi-note p { font-size: .9rem; }
  .hero-summary { padding: 7px 10px; }
  .hero-summary strong { font-size: 1.72rem; }
  .hero-summary p:not(.eyebrow), .hero-summary a { font-size: .76rem; }
  .home-context { grid-template-columns: 1fr; gap: 7px; margin-bottom: 19px; }
  .ilmi-weather { padding: 7px 10px; }
  .ilmi-weather img { width: 62px; height: 62px; }
  .ilmi-gallery summary { font-size: .9rem; }
  .mobile-nav {
    position: fixed; z-index: 3; inset: auto 0 0; display: grid; grid-template-columns: repeat(5,minmax(0,1fr));
    padding: 3px 4px max(3px,env(safe-area-inset-bottom)); background: var(--navy); border-top: 1px solid #345466;
  }
  .mobile-nav a {
    display: flex; flex-direction: column; gap: 2px; align-items: center; justify-content: center; min-height: 50px;
    color: #eaf6fa; text-decoration: none; font-size: clamp(.6rem,2.45vw,.78rem); font-weight: 750;
  }
  .mobile-nav a span { color: #ffd36f; font-size: 1.15rem; line-height: 1; }
  .mobile-nav a[aria-current] { color: #ffd36f; background: #15364a; border-radius: 8px; }
  .notice { bottom: calc(66px + env(safe-area-inset-bottom)); }
}
.retailer{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:4px 7px;border:1px solid var(--line);border-radius:5px;background:var(--ice);color:var(--navy);font-size:.75rem;font-weight:750;vertical-align:middle}
.retailer-logo img{display:block;max-width:100%;object-fit:contain}.retailer-light{background:#fff}.retailer-dark{background:var(--navy)}
.offer>.retailer{margin-bottom:9px}.source-identity{display:flex;align-items:center;flex-wrap:wrap;gap:4px 9px}.sources li>small{display:block;margin-top:3px}
