/* Editors and public pages share these properties. Keep the approved art until its presentation is edited. */
/* Native hero replaces the flattened artwork, so every caption and CTA is editable. */
@media(min-width:781px){
 body.royal-home[data-royal-live-desktop="1"] .royal-header{position:relative;background:#080707;border-bottom:1px solid rgba(189,164,147,.22)}
 body.royal-home[data-royal-live-desktop="1"] .royal-header-inner{justify-content:space-between;gap:24px}
 body.royal-home[data-royal-live-desktop="1"] .royal-nav{flex:1;justify-content:center}
 body.royal-home[data-royal-live-desktop="1"] .royal-hero{background:#080707;overflow:visible}
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-copy{position:relative}
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-copy>.royal-eyebrow{font-size:14px;letter-spacing:.25em;margin:0 0 18px}
 body.royal-home[data-royal-live-desktop="1"] .royal-hero h1{line-height:1.05;margin:0 0 24px}
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-description{font-size:18px;line-height:1.55;max-width:560px}
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-actions{margin-top:28px}
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-actions .royal-button{min-width:200px;min-height:58px;padding:16px 30px;font-size:16px;border-radius:16px}
 body.royal-home[data-royal-live-desktop="1"] .royal-benefits{display:flex;flex-wrap:wrap;gap:20px;margin-top:34px}
 body.royal-home[data-royal-live-desktop="1"] .royal-benefits li{display:flex;align-items:center;gap:8px}
 body.royal-home[data-royal-live-desktop="1"] .royal-benefits strong{font-size:14px;font-weight:500}
}
body.royal-home[data-royal-live-desktop="1"] .royal-top-exact { display:none; }
@media(min-width:781px){
 body.royal-home[data-royal-live-desktop="1"] .royal-header.royal-live-mobile,
 body.royal-home[data-royal-live-desktop="1"] .royal-hero--mobile-live { display:block !important; }
 body.royal-home[data-royal-live-desktop="1"] .royal-header-inner { display:flex; min-height:84px; }
 body.royal-home[data-royal-live-desktop="1"] .royal-brand--header-logo { width:280px; }
 body.royal-home[data-royal-live-desktop="1"] .royal-brand--header-logo img { width:100%; height:auto; filter:none; }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-inner { min-height:540px; padding:40px 0; position:relative; }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-copy { width:49%; max-width:none; padding:0; z-index:2; }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero h1 { font-size:var(--current-hero-desktop); max-width:none; }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero h1>[data-royal-text=hero_title] { color:inherit; }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-art--device { position:absolute; inset:0 -6% 0 auto; width:67%; max-width:none; height:100%; margin:0; z-index:0; pointer-events:none; mask-image:linear-gradient(90deg,transparent,#000 30%); }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-art--device>img { width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; transform:none; filter:none; }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-art--device::before,
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-art--device::after { content:none; }
 body.royal-home[data-royal-live-desktop="1"] .royal-hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
 body.royal-home .royal-container { width:min(var(--current-desktop-width),calc(100% - 104px)); }
 body.royal-home[data-royal-custom-sizes="1"] h2 { font-size:var(--current-title-desktop); }
}
body.royal-home .royal-category-photo img { width:100%; height:100%; object-fit:cover; }
body.royal-home [data-royal-text=hero_title] { color:inherit; }
body.royal-home .royal-promo-card[hidden] { display:none !important; }
body.royal-home[data-royal-custom-sizes="1"] .royal-button { border-radius:var(--current-button-radius); }
@media(max-width:780px){
 body.royal-home .royal-container { width:calc(100% - var(--current-mobile-padding) * 2); }
 body.royal-home[data-royal-custom-sizes="1"] .royal-hero--mobile-live h1 { font-size:var(--current-hero-mobile); }
 body.royal-home[data-royal-custom-sizes="1"] h2 { font-size:var(--current-title-mobile); }
}

body.royal-home[data-royal-custom-colors="1"] .royal-header,
body.royal-home[data-royal-custom-colors="1"] .royal-hero,
body.royal-home[data-royal-custom-colors="1"] .royal-steps,
body.royal-home[data-royal-custom-colors="1"] .royal-categories,
body.royal-home[data-royal-custom-colors="1"] .royal-promotions,
body.royal-home[data-royal-custom-colors="1"] .royal-business-cta,
body.royal-home[data-royal-custom-colors="1"] .royal-footer { background:radial-gradient(ellipse at 80% 0%,color-mix(in srgb,var(--royal-bronze) 18%,transparent),transparent 70%),var(--royal-black); }
body.royal-home[data-royal-custom-colors="1"] h2,
body.royal-home[data-royal-custom-colors="1"] .royal-eyebrow,
body.royal-home[data-royal-custom-colors="1"] .royal-category-icon { color:var(--royal-champagne); }
body.royal-home[data-royal-custom-colors="1"] .royal-step-card,
body.royal-home[data-royal-custom-colors="1"] .royal-promo-content { background:var(--royal-graphite); }
body.royal-home[data-royal-custom-colors="1"] .royal-button-outline,
body.royal-home[data-royal-custom-colors="1"] [data-royal-text=hero_highlight] { color:var(--royal-champagne); }
body.royal-home[data-royal-custom-colors="1"] .royal-step-card { border-color:var(--royal-gold); }

/* Saved editor values take precedence over the original fixed visual. */
body.royal-home[data-royal-custom-colors="1"] { background:var(--royal-black)!important;color:var(--royal-paper)!important; }
body.royal-home[data-royal-custom-colors="1"] :is(.royal-header,.royal-hero,.royal-steps,.royal-categories,.royal-promotions,.royal-business-cta,.royal-footer,.royal-final-band) { background:var(--royal-black)!important; }
body.royal-home[data-royal-custom-colors="1"] :is(.royal-hero-copy p,.royal-promo-content p,.royal-step-card p,.royal-business-copy p,h1,h3) { color:var(--royal-paper)!important; }
body.royal-home[data-royal-custom-colors="1"] :is(.royal-button,.royal-button-gold) { background:var(--royal-champagne)!important;border-color:var(--royal-gold)!important;color:var(--royal-black)!important; }
body.royal-home[data-royal-custom-colors="1"] .royal-button-outline { background:transparent!important;color:var(--royal-champagne)!important; }
body.royal-home[data-royal-custom-colors="1"] .royal-hero-inner::after { background:linear-gradient(90deg,var(--royal-black),transparent)!important; }
body.royal-home[data-royal-custom-sizes="1"] .royal-button { border-radius:var(--current-button-radius)!important; }
body.royal-home { font-family:var(--royal-font)!important; }
body.royal-home :is(h1,h2) { font-family:var(--royal-serif)!important; }
@media(min-width:781px){
body.royal-home[data-royal-custom-sizes="1"] .royal-hero h1 { font-size:var(--current-hero-desktop)!important; }
body.royal-home[data-royal-custom-sizes="1"] h2 { font-size:var(--current-title-desktop)!important; }
}
@media(max-width:780px){
body.royal-home[data-royal-custom-sizes="1"] .royal-hero--mobile-live h1 { font-size:var(--current-hero-mobile)!important; }
body.royal-home[data-royal-custom-sizes="1"] h2 { font-size:var(--current-title-mobile)!important; }
}

/* Match the mobile editor reference while keeping saved per-device overrides. */
@media(max-width:600px){
 html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; }
 body.royal-home .royal-container{width:calc(100% - var(--royal-mobile-padding,16px) * 2 * var(--cdr-mobile-scale,1));}
 body.royal-home .royal-steps-grid{gap:calc(8px * var(--cdr-mobile-scale,1));}
 .royal-hero--mobile-live .royal-hero-art--device{left:auto;bottom:auto;isolation:isolate;}
 .royal-hero--mobile-live .royal-hero-art--device>img{
  display:block;flex:none;min-width:0;aspect-ratio:970 / 778;
  -webkit-mask-image:none;mask-image:none;
  /* Large filtered transparent PNGs can disappear in Safari compositing. */
  filter:none;
 }
}

/* Mobile blocks occupy normal rows; dragging is no longer needed to stack them. */
@media(max-width:600px){
 body.royal-home .royal-steps-grid{grid-template-columns:minmax(0,1fr);grid-auto-flow:row;gap:12px;}
 body.royal-home .royal-step-card{width:100%;min-width:0;min-height:0;padding:16px 12px;}
 body.royal-home .royal-step-title-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;padding-right:22px;}
 body.royal-home .royal-step-icon{width:32px;height:32px;margin:0;}
 body.royal-home .royal-step-title-row h3{font-size:18px;line-height:1.2;margin:0;min-width:0;}
 body.royal-home .royal-step-card p{padding-left:40px;margin:0;max-width:none;font-size:11px;line-height:1.4;}
 body.royal-home .royal-step-number{top:12px;right:12px;}
 body.royal-home .royal-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row;gap:6px;}
 body.royal-home .royal-category{height:120px;min-width:0;}
 body.royal-home .royal-category-name{padding:0 3px 8px;overflow-wrap:normal;word-break:normal;line-height:1.2;}
}

@media(max-width:600px){
 body.royal-home .royal-category-name{font-size:8px;letter-spacing:-.02em;padding-inline:2px;min-height:36px;}
 body.royal-home .royal-category-icon{width:30px;height:30px;margin-bottom:5px;}
 body.royal-home .royal-category-icon .royal-icon{width:18px;height:18px;}
}

/* The old sprite includes drawn icons below the photos. Crop that strip out,
   then align the live icons and captions independently of caption wrapping. */
@media(max-width:600px){
 body.royal-home .royal-category-photo{
  position:absolute;inset:0 0 auto;height:60%;width:100%;
  background-position-y:41%;overflow:hidden;
  -webkit-mask-image:linear-gradient(#000 0%,#000 65%,transparent 100%);
  mask-image:linear-gradient(#000 0%,#000 65%,transparent 100%);
 }
 body.royal-home .royal-category-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
 body.royal-home .royal-category-icon{position:absolute;left:50%;bottom:38px;transform:translateX(-50%);margin:0;}
 body.royal-home .royal-category-name{position:absolute;left:0;bottom:0;width:100%;height:36px;min-height:36px;display:flex;align-items:flex-start;justify-content:center;padding:0 2px 5px;}
}

@media(max-width:600px){
 body.royal-home .royal-promotions-intro{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;text-align:left;}
 body.royal-home .royal-promotions-intro h2{max-width:100%;margin:0;}
 body.royal-home .royal-promotions-intro>.royal-button{align-self:flex-start;justify-content:center;margin:8px 0 0;}
}
