/* Revision 2 — follow the supplied desktop and mobile models. */
body.mascot-integrated.home-premium .reference-layout{background:#faf8f3;padding:28px 0 34px}
body.mascot-integrated.home-premium .reference-layout>.wrap{width:min(1440px,calc(100% - 64px))}
body.mascot-integrated.home-premium .reference-layout .hero-grid{display:grid;grid-template-columns:minmax(0,29fr) minmax(0,23fr) minmax(0,48fr);gap:12px;align-items:center}
body.mascot-integrated.home-premium .reference-layout .hero-copy{display:block;min-width:0}
body.mascot-integrated.home-premium .reference-layout h1{font-size:clamp(33px,3.3vw,49px);line-height:1.08;letter-spacing:-.045em;max-width:none;margin:0 0 23px;text-wrap:balance}
body.mascot-integrated.home-premium .reference-layout .lead{font-size:15px;line-height:1.55;margin:0 0 18px;max-width:none;color:#56564e}
body.mascot-integrated.home-premium .reference-layout .eyebrow{font-size:10px;line-height:1.4;letter-spacing:.1em;margin-bottom:16px}
body.mascot-integrated.home-premium .reference-layout .hero-note{font-size:12px;line-height:1.5;color:#606058;margin:0 0 18px}
body.mascot-integrated.home-premium .reference-layout .hero-explain{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;width:100%;padding:14px 18px;text-decoration:none;background:var(--cma-brand);color:#24241e;border-radius:28px;font-size:15px;font-weight:700}
body.mascot-integrated.home-premium .reference-layout .hero-benefits{font-size:10px;gap:8px 12px;margin-top:14px}
body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait{display:flex;align-items:center;justify-content:center;height:520px;min-width:0;padding:0;background:none;order:initial}
body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait img{position:static;width:100%;height:100%;object-fit:contain;object-position:center;filter:none;max-width:100%}
body.mascot-integrated.home-premium .reference-layout .compare-panel.choices{position:relative;margin:0;width:100%;min-width:0;padding:21px;background:#fff;border:1px solid #eee9e1;border-radius:15px;box-shadow:0 8px 30px #55462d05;order:initial}
body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top{padding:0;margin-bottom:18px}
body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top h2{font-size:clamp(20px,1.7vw,26px);line-height:1.18;letter-spacing:-.04em;margin:0;color:#20211f}
body.mascot-integrated.home-premium .reference-layout .compare-panel .products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product{padding:0 0 11px;min-height:0;background:#fff;border-radius:9px;border:1px solid #e9e5df;overflow:hidden;transition:transform .6s ease,box-shadow .6s ease}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product h3{font-size:14px;line-height:1.3;letter-spacing:-.025em;margin:10px 10px 7px;color:#252621}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product .product-cta{font-size:12px;padding:0 10px;color:#706044}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product-pro{background:#20211f;border-color:#20211f}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product-pro h3{color:white}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product-pro .product-cta{color:#ff9292}
body.mascot-integrated.home-premium .reference-layout .reference-product-art{position:relative;height:auto;aspect-ratio:1.6;overflow:hidden;background:#f7f5ef;border:0}
body.mascot-integrated.home-premium .reference-layout .reference-product-art img{position:absolute;left:var(--art-x);top:var(--art-y);width:var(--art-width);height:var(--art-height);max-width:none;object-fit:fill;object-position:initial;transform:none!important;transition:none!important;border-radius:0}
/* Exact six scenes from the supplied 4 × 2 palette, with no extra overlay. */
body.mascot-integrated main .compact-hero .hero-visual>figure.reference-palette-scene{display:block;position:relative;width:100%;max-width:none;height:auto;min-height:0;max-height:none;aspect-ratio:485.5/404.5;margin:0;overflow:hidden;border:1px solid #eee9df;border-radius:19px;background:#faf8f4;box-shadow:none}
body.mascot-integrated main .compact-hero .hero-visual>figure.reference-palette-scene>img{position:absolute;inset:auto;left:calc(-100% * var(--scene-col));top:calc(-100% * var(--scene-row));display:block;width:400%;height:200%;max-width:none;max-height:none;aspect-ratio:auto;object-fit:fill;object-position:initial;border-radius:0;transform:none}
@media(min-width:801px) and (max-width:1100px){body.mascot-integrated.home-premium .reference-layout>.wrap{width:calc(100% - 36px)}body.mascot-integrated.home-premium .reference-layout .hero-grid{grid-template-columns:minmax(0,28fr) minmax(0,22fr) minmax(0,50fr);gap:8px}body.mascot-integrated.home-premium .reference-layout h1{font-size:33px}body.mascot-integrated.home-premium .reference-layout .lead{font-size:14px}body.mascot-integrated.home-premium .reference-layout .compare-panel.choices{padding:14px}body.mascot-integrated.home-premium .reference-layout .compare-panel .products{gap:8px}body.mascot-integrated.home-premium .reference-layout .compare-panel .product h3{font-size:12px;margin-left:7px;margin-right:7px}body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait{height:460px}}
@media(max-width:800px){body.mascot-integrated.home-premium .reference-layout{padding:22px 0 26px}body.mascot-integrated.home-premium .reference-layout>.wrap{width:calc(100% - 32px)}body.mascot-integrated.home-premium .reference-layout .hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px 8px;align-items:start}body.mascot-integrated.home-premium .reference-layout .hero-copy{display:block;grid-column:1;grid-row:1;order:initial}body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait{grid-column:2;grid-row:1;align-self:stretch;min-height:280px;height:100%;max-height:450px;order:initial}body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait img{object-position:center top}body.mascot-integrated.home-premium .reference-layout .compare-panel.choices{grid-column:1/-1;grid-row:2;padding:18px;order:initial}body.mascot-integrated.home-premium .reference-layout .compare-panel .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}body.mascot-integrated.home-premium .reference-layout h1{font-size:clamp(26px,5.3vw,40px);margin-bottom:18px;letter-spacing:-.045em;text-wrap:initial}body.mascot-integrated.home-premium .reference-layout .hero-copy .eyebrow{display:block;font-size:8px;margin-bottom:12px}body.mascot-integrated.home-premium .reference-layout .lead{font-size:13px;line-height:1.45;margin-bottom:14px}body.mascot-integrated.home-premium .reference-layout .hero-note{font-size:10px;line-height:1.4;margin-bottom:12px}body.mascot-integrated.home-premium .reference-layout .hero-explain{font-size:12px;padding:12px 13px;min-height:46px;border-radius:24px}body.mascot-integrated.home-premium .reference-layout .hero-benefits{display:none}body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top h2{font-size:24px}body.mascot-integrated.home-premium .reference-layout .compare-panel .product h3{font-size:16px}body.mascot-integrated main .compact-hero .hero-visual>figure.reference-palette-scene{order:2;aspect-ratio:485.5/404.5;height:auto;max-height:none;width:100%;border-radius:15px}}
@media(max-width:380px){body.mascot-integrated.home-premium .reference-layout h1{font-size:25px}body.mascot-integrated.home-premium .reference-layout .hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}body.mascot-integrated.home-premium .reference-layout .hero-explain{font-size:11px}body.mascot-integrated.home-premium .reference-layout .compare-panel.choices{padding:13px}body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top h2{font-size:21px}}

/* Revision 3: native high-definition assets, full scenes without atlas cropping. */
body.mascot-integrated.home-premium .reference-layout{background:#fafafa}
body.mascot-integrated.home-premium .reference-layout .hero-explain{background:var(--cma-brand)}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product .product-cta{color:#444}
body.mascot-integrated.home-premium .reference-layout .compare-panel .product-pro .product-cta{color:#ff9292}
body.mascot-integrated.home-premium .reference-layout .reference-product-art{aspect-ratio:3/2;background:#fff}
body.mascot-integrated.home-premium .reference-layout .reference-product-art img{position:static;inset:auto;display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center}
body.mascot-integrated main .compact-hero .hero-visual>figure.reference-palette-scene{aspect-ratio:3/2;background:#fff;border-color:#ededed}
body.mascot-integrated main .compact-hero .hero-visual>figure.reference-palette-scene>img{position:static;inset:auto;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}

/* v6: complete integrated panda scenes; retain every paw and product in frame. */
body.mascot-integrated .dc-hero .hero-visual>figure.reference-palette-scene{aspect-ratio:3/2;background:#fff;height:auto;max-height:none;margin:0;overflow:hidden}
body.mascot-integrated .dc-hero .hero-visual>figure.reference-palette-scene>img{position:static;width:100%;height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;transform:none}

/* Mobile product priority: immediate product choices on phones and small tablets. */
@media (max-width: 800px) {
  body.mascot-integrated.home-premium .reference-layout {
    padding: 12px 0 24px;
  }
  body.mascot-integrated.home-premium .reference-layout > .wrap {
    width: calc(100% - 28px);
  }
  body.mascot-integrated.home-premium .reference-layout .hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 84px;
    gap: 12px;
    align-items: center;
  }
  body.mascot-integrated.home-premium .reference-layout .hero-copy {
    display: contents;
  }
  body.mascot-integrated.home-premium .reference-layout .hero-copy > * {
    order: initial;
  }
  body.mascot-integrated.home-premium .reference-layout .hero-copy > .eyebrow,
  body.mascot-integrated.home-premium .reference-layout .hero-copy > .hero-explain,
  body.mascot-integrated.home-premium .reference-layout .hero-copy > .hero-benefits {
    display: none;
  }
  body.mascot-integrated.home-premium .reference-layout .hero-copy > h1 {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    font-size: clamp(23px, 5.8vw, 32px);
    line-height: 1.12;
    letter-spacing: -.035em;
    margin: 0;
    max-width: none;
    text-wrap: balance;
  }
  body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    height: 116px;
    min-height: 0;
    max-height: none;
    padding: 0;
    margin: 0;
    pointer-events: none;
  }
  body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait img {
    object-fit: contain;
    object-position: center;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel.choices {
    grid-column: 1 / -1;
    grid-row: 2;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    scroll-margin-top: 20px;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top {
    padding: 0;
    margin: 0 0 12px;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top h2 {
    font-size: 19px;
    line-height: 1.25;
    letter-spacing: -.025em;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .product {
    display: grid;
    grid-template-columns: clamp(42px, 15vw, 64px) minmax(0, 1fr);
    grid-template-rows: 1fr auto;
    column-gap: 7px;
    row-gap: 0;
    align-items: center;
    min-width: 0;
    min-height: 92px;
    padding: 10px 8px;
    border: 1px solid #e3e3e3;
    border-radius: 12px;
    background: #fff;
    text-decoration: none;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .product:focus-visible {
    outline: 3px solid #c32b24;
    outline-offset: 3px;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .reference-product-art {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: center;
    width: 100%;
    height: 56px;
    aspect-ratio: auto;
    margin: 0;
    background: #fff;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .product h3 {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    margin: 0;
    font-size: clamp(13px, 3.6vw, 16px);
    line-height: 1.25;
    letter-spacing: -.02em;
    overflow-wrap: normal;
    color: #252621;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .product .product-cta {
    grid-column: 2;
    grid-row: 2;
    align-self: start;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3px;
    margin: 5px 0 0;
    padding: 0;
    font-size: 11px;
    line-height: 1.3;
    color: #555;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .product .product-cta > span {
    position: static;
    font-size: 16px;
    line-height: 1;
  }
  body.mascot-integrated.home-premium .reference-layout .compare-panel .product-pro .product-cta {
    color: #b32323;
  }
  body.mascot-integrated.home-premium .reference-layout .hero-copy > .lead {
    grid-column: 1 / -1;
    grid-row: 3;
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.5;
    max-width: none;
  }
  body.mascot-integrated.home-premium .reference-layout .hero-copy > .hero-note {
    grid-column: 1 / -1;
    grid-row: 4;
    margin: 0;
    font-size: 12px;
    line-height: 1.5;
  }
}

@media(prefers-reduced-motion:reduce){.mascot-integrated *{scroll-behavior:auto!important}.mascot-integrated .product,.mascot-integrated .product img{transition:none!important;transform:none!important}}

/* Mobile refinement after live desktop and 390px review, 19 October 2026. */
@media(max-width:800px){
 body.mascot-integrated .insurance-header .header{min-height:82px;padding:8px 0;width:calc(100% - 32px)}
 body.mascot-integrated .insurance-header .brand .real-logo{width:200px;height:72px;max-width:calc(100vw - 100px)}
 body.mascot-integrated .insurance-header .menu{width:44px;height:44px;justify-content:center;padding:8px;flex-shrink:0}
 body.mascot-integrated.home-premium .reference-layout .hero-grid{grid-template-columns:minmax(0,1fr) 88px;gap:14px 10px}
 body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait{height:108px}
 body.mascot-integrated.home-premium .reference-layout .hero-copy>h1{font-size:clamp(23px,5.8vw,30px);line-height:1.14;text-wrap:initial}
 body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top{margin-bottom:12px}
 body.mascot-integrated.home-premium .reference-layout .compare-panel .products{gap:10px}
 body.mascot-integrated.home-premium .reference-layout .compare-panel .product{grid-template-columns:minmax(0,1fr);grid-template-rows:50px auto auto;gap:5px;min-height:116px;padding:10px 12px;border-radius:14px;text-align:center;align-content:start}
 body.mascot-integrated.home-premium .reference-layout .compare-panel .reference-product-art{grid-column:1;grid-row:1;width:88px;height:50px;justify-self:center}
 body.mascot-integrated.home-premium .reference-layout .compare-panel .product h3{grid-column:1;grid-row:2;align-self:center;font-size:15px;line-height:1.3;margin:0;letter-spacing:-.025em}
 body.mascot-integrated.home-premium .reference-layout .compare-panel .product .product-cta{grid-column:1;grid-row:3;justify-content:center;align-items:center;gap:8px;margin:0;font-size:11px;line-height:1.4;border:0}
 body.mascot-integrated.home-premium .reference-layout .compare-panel .product .product-cta>span{font-size:14px}
}

@media(max-width:800px){body.mascot-integrated.home-premium .reference-layout .hero-copy>h1 br{display:initial}}

@media(max-width:800px){body.mascot-integrated.home-premium .reference-layout .compare-panel .section-top h2{text-wrap:balance}}

/* Mobile: dedicated left-presenting pose, preserving the pa face markings. */
body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait picture{display:block;width:100%;height:100%}
@media(max-width:800px){
 body.mascot-integrated.home-premium .reference-layout .hero-grid{grid-template-columns:max-content minmax(0,1fr);gap:14px 4px}
 body.mascot-integrated.home-premium .reference-layout .hero-copy>h1{font-size:clamp(26px,7.3vw,32px);line-height:1.12;letter-spacing:-.035em}
 body.mascot-integrated.home-premium .reference-layout .home-title-main{white-space:normal}
 body.mascot-integrated.home-premium .reference-layout .home-title-word{display:block}
 body.mascot-integrated.home-premium .reference-layout .hero-copy>h1 br{display:none}
 body.mascot-integrated.home-premium .reference-layout .hero-copy>h1 em{display:block;margin-top:6px;font-size:.84em;line-height:1.2;white-space:normal}
 body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait{height:clamp(148px,46vw,190px);width:100%;justify-self:start}
 /* Centre the panda in the space remaining between the title and the right page edge. */
 body.mascot-integrated.home-premium .reference-layout .mascot-home-portrait img{object-position:center}
}
