/* 27.1 Home-page facelift — scoped under .rbp-home so it never affects the theme header/footer.
   Deep navy + gold "premium heritage" design. Fonts (Saira Condensed / Mulish / Fraunces) are
   enqueued separately (see includes/home-facelift.php). Image URLs are root-relative so the page
   works on staging and live. Markup lives in the page's Elementor HTML widget. */
.rbp-home{--navy:#15233d;--navy-900:#0d1626;--navy-800:#1a2c4a;--gold:#c89a44;--gold-bright:#e3bd6a;--cream:#f4eee1;--paper:#faf6ee;--ink:#1a2130;--ink-soft:#4a5468;--line:#e2d8c4;--on-navy:#eef1f6;--on-navy-soft:#aeb9cc;--maxw:1180px;background:var(--cream);color:var(--ink);font-family:"Mulish",system-ui,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
.rbp-home *{box-sizing:border-box}
.rbp-home img{max-width:100%;display:block}
.rbp-home a{color:inherit;text-decoration:none}
.rbp-home h1,.rbp-home h2,.rbp-home h3{font-family:"Saira Condensed",Impact,sans-serif;text-transform:uppercase;line-height:.96;margin:0;letter-spacing:.005em}
.rbp-home p{margin:0}
.rbp-home .wrap{max-width:var(--maxw);margin:0 auto;padding-inline:20px;width:100%}
.rbp-home .eyebrow{font-family:"Saira Condensed",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.2em;font-size:.82rem;color:var(--gold)}
.rbp-home .btn{display:inline-flex;align-items:center;gap:.5em;font-family:"Saira Condensed",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.07em;font-size:1rem;padding:.72em 1.4em;border-radius:3px;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .15s,color .15s}
.rbp-home .btn-gold{background:var(--gold);color:var(--navy-900)}
.rbp-home .btn-gold:hover{background:var(--gold-bright);transform:translateY(-1px)}
.rbp-home .btn-ghost{background:transparent;color:var(--on-navy);border-color:rgba(255,255,255,.5)}
.rbp-home .btn-ghost:hover{border-color:var(--gold);color:var(--gold-bright)}
.rbp-home .btn-navy{background:var(--navy);color:#fff}
.rbp-home .btn-navy:hover{background:var(--navy-800);transform:translateY(-1px)}
.rbp-home .hero{position:relative;color:var(--on-navy);background:#0d1626}
.rbp-home .hero .bg{position:absolute;inset:0;background:center/cover no-repeat;background-image:url(/wp-content/uploads/2026/10/hero.jpg)}
.rbp-home .hero .scrim{position:absolute;inset:0;background:linear-gradient(100deg,rgba(13,22,38,.95) 0%,rgba(13,22,38,.82) 34%,rgba(13,22,38,.45) 62%,rgba(13,22,38,.2) 100%)}
.rbp-home .hero .inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:clamp(56px,9vw,120px) 20px}
.rbp-home .hero .col{max-width:600px}
.rbp-home .hero h1{font-weight:800;font-size:clamp(2.7rem,7.4vw,5.4rem);color:#fff;margin:.28em 0 .32em;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.rbp-home .hero h1 em{font-style:normal;color:var(--gold-bright)}
.rbp-home .hero .sub{font-size:clamp(1.05rem,1.6vw,1.28rem);color:#e7ebf2;max-width:33ch;margin-bottom:1.7em}
.rbp-home .hero .acts{display:flex;gap:14px;flex-wrap:wrap}
.rbp-home .hero .foot{position:relative;border-top:1px solid rgba(255,255,255,.12);background:rgba(8,14,24,.55)}
.rbp-home .hero .foot .wrap{display:flex;gap:10px 30px;flex-wrap:wrap;padding-block:14px;font-family:"Saira Condensed",sans-serif;text-transform:uppercase;letter-spacing:.11em;font-size:.82rem;color:var(--on-navy-soft)}
.rbp-home .hero .foot b{color:var(--gold);font-weight:700}
.rbp-home section{padding-block:clamp(54px,7vw,92px)}
.rbp-home .sec-head{max-width:640px;margin-bottom:38px}
.rbp-home .sec-head h2{font-size:clamp(2rem,4.2vw,3.1rem);margin:.25em 0 .35em}
.rbp-home .sec-head p{color:var(--ink-soft);font-size:1.08rem}
.rbp-home .navy{background:var(--navy);color:var(--on-navy)}
.rbp-home .navy .sec-head p{color:var(--on-navy-soft)}
.rbp-home .navy h2{color:#fff}
.rbp-home .cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(176px,1fr));gap:16px}
.rbp-home .cat{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:7px;overflow:hidden;transition:transform .18s,box-shadow .18s}
.rbp-home .cat:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(20,30,50,.16)}
.rbp-home .cat .ph{aspect-ratio:1/1;background:#fff;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden;border-bottom:1px solid var(--line)}
/* Every tile fills its square edge-to-edge so all categories read at the same scale,
   regardless of the source image's aspect ratio. Per-image framing via object-position below. */
.rbp-home .cat .ph img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.rbp-home .cat:nth-child(2) .ph img{object-position:center 38%} /* Flat Ribbons (tall) */
.rbp-home .cat:nth-child(3) .ph img{object-position:center 82%} /* Specialty (medallion low) */
.rbp-home .cat:nth-child(5) .ph img{object-position:center 42%} /* Printed Products */
.rbp-home .cat:hover .ph img{transform:scale(1.05)}
.rbp-home .cat .lab{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.rbp-home .cat .lab h3{color:var(--ink);font-size:1.22rem;text-transform:none;font-family:"Saira Condensed",sans-serif;letter-spacing:.01em}
.rbp-home .cat .lab span{font-family:"Saira Condensed",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:var(--gold);white-space:nowrap}
.rbp-home .cat:hover .lab span{color:var(--navy)}
.rbp-home .scenes{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.rbp-home .scenes figure{margin:0;position:relative;border-radius:5px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 10px 24px rgba(10,16,30,.22)}
.rbp-home .scenes img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.rbp-home .scenes figure:hover img{transform:scale(1.05)}
.rbp-home .scenes figcaption{position:absolute;left:0;right:0;bottom:0;padding:16px 14px;font-family:"Saira Condensed",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:.98rem;color:#fff;background:linear-gradient(to top,rgba(13,22,38,.92),rgba(13,22,38,.1) 85%,transparent)}
.rbp-home .split{display:grid;grid-template-columns:1fr 1fr;gap:min(6vw,64px);align-items:center}
.rbp-home .split .media{border-radius:6px;overflow:hidden;box-shadow:0 18px 40px rgba(10,16,30,.28)}
.rbp-home .split .media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5}
.rbp-home .split.wide .media img{aspect-ratio:3/2}
.rbp-home .split h2{font-size:clamp(1.9rem,3.6vw,2.8rem);margin-bottom:.4em}
.rbp-home .split p+p{margin-top:1em}
.rbp-home .split .body{color:var(--ink-soft);font-size:1.07rem}
.rbp-home .navy .split .body{color:#cdd6e5}
.rbp-home .split .cta{margin-top:1.8em}
.rbp-home .creed{text-align:center;background:var(--navy-900);color:var(--on-navy);background-image:radial-gradient(60% 120% at 50% -10%,rgba(200,154,68,.16),transparent 60%)}
.rbp-home .creed .tag{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(1.9rem,4.6vw,3.3rem);color:var(--gold-bright);line-height:1.1;max-width:18ch;margin:0 auto .5em}
.rbp-home .creed p{max-width:60ch;margin:0 auto;color:#cdd6e5;font-size:1.12rem}
.rbp-home .creed .rule{width:54px;height:3px;background:var(--gold);margin:0 auto 26px;border-radius:2px}
.rbp-home .whole{background:linear-gradient(90deg,var(--gold) 0%,#d9ad53 100%);color:var(--navy-900)}
.rbp-home .whole .wrap{display:flex;align-items:center;gap:30px 40px;flex-wrap:wrap;justify-content:space-between}
.rbp-home .whole h2{font-size:clamp(1.7rem,3.4vw,2.5rem)}
.rbp-home .whole p{max-width:46ch;margin-top:.4em;color:#3c2f14;font-weight:500}
.rbp-home .news{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.rbp-home .card{background:var(--paper);border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.rbp-home .card .pad{padding:22px}
.rbp-home .card .k{font-family:"Saira Condensed",sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--gold);font-weight:600}
.rbp-home .card h3{font-size:1.4rem;margin:.3em 0 .4em;color:var(--ink);text-transform:none;font-family:"Saira Condensed",sans-serif;letter-spacing:0}
.rbp-home .card p{color:var(--ink-soft)}
.rbp-home .card .mi{aspect-ratio:16/9;object-fit:cover;width:100%}
@media(max-width:900px){.rbp-home .split{grid-template-columns:1fr}.rbp-home .split .media{order:-1}.rbp-home .scenes{grid-template-columns:repeat(2,1fr)}.rbp-home .news{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.rbp-home *{transition:none!important}}
