/* =========================================================
   RUBBISH LONDON — Design system
   ========================================================= */

:root{
  /* Surfaces */
  --rl-ground:#E7E9E2;
  --rl-surface:#f9f9f6;
  --rl-surface-low:#f4f4f1;
  --rl-surface-container:#eeeeeb;
  --rl-panel-alt:#F1F2EC;
  --rl-surface-variant:#e2e3e0;
  --rl-pitch-black:#0C1116;

  /* Lines */
  --rl-line-subtle:#CDD2C7;
  --rl-line-strong:#B7BEB0;

  /* Ink */
  --rl-on-surface:#1a1c1b;
  --rl-ink-secondary:#5B625A;

  /* Brand */
  --rl-primary:#b32500;
  --rl-primary-container:#d93b15;
  --rl-on-primary:#ffffff;
  --rl-secondary:#4f6600;
  --rl-on-secondary:#ffffff;
  --rl-secondary-fixed:#c4f334;
  --rl-secondary-fixed-dim:#a9d606;
  --rl-secondary-container:#c1f030;
  --rl-on-secondary-fixed:#161f00;
  --rl-error:#ba1a1a;
  --rl-error-container:#ffdad6;
  --rl-on-error-container:#93000a;

  /* Layout */
  --rl-container:1180px;
  --rl-gap-lg:44px;
  --rl-gap-md:20px;
  --rl-gap-sm:12px;
  --rl-gap-xs:8px;

  /* Type */
  --rl-font-head:"Archivo Narrow","Arial Narrow",Arial,sans-serif;
  --rl-font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --rl-font-mono:"JetBrains Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;
}

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--rl-ground);
  color:var(--rl-on-surface);
  font-family:var(--rl-font-body);
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--rl-primary);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--rl-font-head);font-weight:700;line-height:.94;letter-spacing:-.005em}
p{margin:0 0 1rem}
p:last-child{margin-bottom:0}
ul,ol{margin:0 0 1rem;padding-left:1.25rem}
figure{margin:0}
button{font-family:inherit}
hr{border:0;border-top:1px solid var(--rl-line-subtle);margin:2rem 0}
table{border-collapse:collapse;width:100%}

/* ---------- Accessibility ---------- */
.rl-skip-link{
  position:absolute;left:-9999px;top:0;z-index:9999;
  background:var(--rl-secondary-fixed);color:var(--rl-on-secondary-fixed);
  padding:12px 20px;font-family:var(--rl-font-mono);font-size:12px;text-transform:uppercase;
}
.rl-skip-link:focus{left:0}
.screen-reader-text{
  border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;
  overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important;
}
:focus-visible{outline:2px solid var(--rl-secondary);outline-offset:2px}

/* ---------- Typography helpers ---------- */
.rl-h-lg{font-family:var(--rl-font-head);font-size:clamp(48px,8vw,104px);line-height:.94;letter-spacing:-.005em;font-weight:700}
.rl-h-xl{font-family:var(--rl-font-head);font-size:clamp(48px,7.4vw,80px);line-height:.9;letter-spacing:-.005em;font-weight:700}
.rl-h-md{font-family:var(--rl-font-head);font-size:clamp(34px,5vw,52px);line-height:.94;letter-spacing:-.005em;font-weight:700}
.rl-h-sm{font-family:var(--rl-font-head);font-size:26px;line-height:.94;font-weight:700}
.rl-h-xs{font-family:var(--rl-font-head);font-size:20px;line-height:1.05;font-weight:700}
.rl-mono{font-family:var(--rl-font-mono);font-size:12px;line-height:1;letter-spacing:.08em;text-transform:uppercase;font-weight:400}
.rl-mono-xs{font-family:var(--rl-font-mono);font-size:10px;line-height:1.3;letter-spacing:.08em;text-transform:uppercase}
.rl-tabular{font-family:var(--rl-font-mono);font-size:21px;line-height:1;font-weight:500;font-variant-numeric:tabular-nums}
.rl-lede{font-size:18.5px;line-height:1.55}
.rl-muted{color:var(--rl-ink-secondary)}
.rl-up{text-transform:uppercase}
.rl-mark{background:var(--rl-secondary-fixed);color:var(--rl-on-secondary-fixed);padding:0 .35em}

/* ---------- Layout ---------- */
.rl-container{width:100%;max-width:var(--rl-container);margin-inline:auto;padding-inline:16px}
@media (min-width:768px){.rl-container{padding-inline:var(--rl-gap-lg)}}
.rl-main{flex:1 0 auto;width:100%;display:flex;flex-direction:column}
.rl-section{padding-block:48px}
.rl-section--top-rule{border-top:1px solid var(--rl-line-subtle)}
.rl-stack{display:flex;flex-direction:column;gap:64px;padding-block:48px}

.rl-section-head{
  display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px;
}
@media (min-width:768px){
  .rl-section-head{flex-direction:row;justify-content:space-between;align-items:flex-end}
}
.rl-section-head p{max-width:28rem;color:var(--rl-ink-secondary);margin:0}

/* ---------- Shadows / buttons ---------- */
.rl-docket{box-shadow:6px 6px 0 var(--rl-line-strong)}
.rl-docket-sm{box-shadow:4px 4px 0 var(--rl-line-strong)}

.rl-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  padding:14px 24px;border:1px solid var(--rl-on-secondary-fixed);
  background:var(--rl-secondary);color:var(--rl-on-secondary);cursor:pointer;
  box-shadow:2px 2px 0 var(--rl-on-secondary-fixed);
  transition:transform .1s ease,box-shadow .1s ease;
  text-decoration:none;border-radius:0;
}
.rl-btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--rl-on-secondary-fixed);text-decoration:none;color:var(--rl-on-secondary)}
.rl-btn:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--rl-on-secondary-fixed)}
.rl-btn--lime{background:var(--rl-secondary-fixed);color:var(--rl-on-secondary-fixed)}
.rl-btn--lime:hover{color:var(--rl-on-secondary-fixed)}
.rl-btn--outline{background:transparent;color:var(--rl-on-surface);border-color:var(--rl-line-strong);box-shadow:2px 2px 0 var(--rl-line-strong)}
.rl-btn--outline:hover{box-shadow:4px 4px 0 var(--rl-line-strong);color:var(--rl-on-surface)}
.rl-btn--primary{background:var(--rl-primary);color:#fff;border-color:var(--rl-on-secondary-fixed)}
.rl-btn--primary:hover{color:#fff}
.rl-btn--block{width:100%}

/* ---------- Icons ---------- */
.material-symbols-outlined{
  font-family:"Material Symbols Outlined";font-weight:400;font-style:normal;
  font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;
  display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;
  -webkit-font-feature-settings:"liga";font-feature-settings:"liga";
  -webkit-font-smoothing:antialiased;vertical-align:middle;
}
.rl-icon-fill{font-variation-settings:'FILL' 1}

/* =========================================================
   HEADER
   ========================================================= */
.rl-header{
  position:sticky;top:0;z-index:50;width:100%;
  background:var(--rl-surface);border-bottom:2px solid var(--rl-line-strong);
  display:flex;flex-direction:column;
}
.rl-topbar{background:var(--rl-pitch-black);color:var(--rl-surface);width:100%;padding-block:8px}
.rl-topbar__inner{
  display:flex;justify-content:space-between;align-items:center;gap:24px;
  font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;
}
.rl-topbar__group{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.rl-topbar a,.rl-topbar span.rl-topbar__item{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none;transition:color .15s}
.rl-topbar a:hover{color:var(--rl-secondary-fixed);text-decoration:none}
.rl-topbar .material-symbols-outlined{font-size:14px}
.rl-topbar__social{display:flex;align-items:center;gap:16px}
@media (max-width:767px){
  .rl-topbar__hide-sm{display:none!important}
}
@media (max-width:1023px){
  .rl-topbar__hide-md{display:none!important}
}

.rl-header__bar{display:flex;justify-content:space-between;align-items:center;gap:16px;height:80px}
.rl-brand{
  font-family:var(--rl-font-head);font-size:26px;font-weight:700;line-height:1;
  letter-spacing:-.03em;text-transform:uppercase;color:var(--rl-on-surface);flex-shrink:0;
}
.rl-brand:hover{text-decoration:none;color:var(--rl-primary)}
.rl-brand img{max-height:48px;width:auto}

.rl-nav{display:none;height:100%}
@media (min-width:1024px){.rl-nav{display:flex}}
.rl-nav ul{display:flex;align-items:center;gap:32px;list-style:none;margin:0;padding:0;height:100%}
.rl-nav li{position:relative;height:100%;display:flex;align-items:center}
.rl-nav a{
  font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;
  color:var(--rl-on-surface);height:100%;display:flex;align-items:center;
  border-bottom:2px solid transparent;padding-bottom:2px;transition:color .15s,border-color .15s;
}
.rl-nav a:hover{color:var(--rl-primary);text-decoration:none}
.rl-nav .current-menu-item>a,
.rl-nav .current_page_item>a,
.rl-nav .current-menu-ancestor>a,
.rl-nav .current_page_parent>a{color:var(--rl-primary);border-bottom-color:var(--rl-primary)}
/* dropdown */
.rl-nav ul ul{
  display:none;position:absolute;top:100%;left:0;min-width:230px;height:auto;
  background:var(--rl-surface);border:1px solid var(--rl-line-strong);
  box-shadow:4px 4px 0 var(--rl-line-strong);flex-direction:column;gap:0;padding:6px 0;z-index:60;
}
.rl-nav li:hover>ul,.rl-nav li:focus-within>ul{display:flex}
.rl-nav ul ul li{height:auto;width:100%}
.rl-nav ul ul a{height:auto;padding:10px 16px;width:100%;border-bottom:0}
.rl-nav ul ul a:hover{background:var(--rl-panel-alt)}

.rl-header__actions{display:flex;align-items:center;gap:20px}
.rl-header__phone{display:none;font-family:var(--rl-font-mono);font-size:14px;font-weight:500;color:var(--rl-on-surface)}
@media (min-width:1180px){.rl-header__phone{display:block}}
.rl-header__cta{display:none}
@media (min-width:768px){.rl-header__cta{display:inline-flex}}

.rl-burger{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--rl-surface);border:1px solid var(--rl-line-strong);
  padding:10px 12px;cursor:pointer;color:var(--rl-on-surface);
  font-family:var(--rl-font-mono);font-size:12px;text-transform:uppercase;
}
@media (min-width:1024px){.rl-burger{display:none}}

.rl-mobile-nav{
  display:none;border-top:1px solid var(--rl-line-subtle);background:var(--rl-surface);
  padding:16px;max-height:75vh;overflow-y:auto;
}
.rl-mobile-nav.is-open{display:block}
.rl-mobile-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.rl-mobile-nav ul ul{padding-left:16px;border-left:1px solid var(--rl-line-subtle);margin-left:4px}
.rl-mobile-nav a{
  display:block;padding:12px 4px;border-bottom:1px solid var(--rl-line-subtle);
  font-family:var(--rl-font-mono);font-size:13px;text-transform:uppercase;color:var(--rl-on-surface);
}
.rl-mobile-nav__cta{margin-top:16px;display:flex;flex-direction:column;gap:10px}
@media (min-width:1200px){.rl-mobile-nav{display:none!important}}

/* =========================================================
   HERO
   ========================================================= */
.rl-hero{position:relative;width:100%;padding-block:64px;border-bottom:1px solid var(--rl-line-subtle);overflow:hidden}
@media (min-width:1024px){.rl-hero{padding-block:96px}}
.rl-hero__bg{position:absolute;inset:0;z-index:0;background:var(--rl-on-surface);overflow:hidden}
.rl-hero__bg img{width:100%;height:100%;object-fit:cover;opacity:.2}
.rl-hero__grid{
  position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:32px;align-items:start;
}
@media (min-width:1024px){
  .rl-hero__grid{grid-template-columns:7fr 5fr;gap:40px}
}
.rl-hero__copy{display:flex;flex-direction:column;gap:24px;padding-top:4px}
.rl-hero__title{color:var(--rl-surface);text-transform:uppercase;max-width:48rem;margin:0}
.rl-hero__title .rl-hero__hl{
  background:var(--rl-secondary-container);color:var(--rl-on-secondary-fixed);
  padding:0 8px;display:inline-block;margin-left:-8px;margin-top:8px;
}
.rl-hero__lede{color:var(--rl-surface-variant);max-width:36rem;margin:0}
.rl-badges{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}
.rl-badge{
  display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rl-line-strong);
  background:var(--rl-surface);padding:8px 12px;
}
.rl-badge .material-symbols-outlined{color:var(--rl-secondary);font-size:20px}
.rl-badge span:last-child{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}

/* Quote card */
.rl-quote-card{
  position:relative;background:var(--rl-surface);border:2px solid var(--rl-line-strong);
  padding:24px;display:flex;flex-direction:column;gap:24px;box-shadow:6px 6px 0 var(--rl-line-strong);
}
.rl-quote-card__flag{
  position:absolute;top:-14px;right:-12px;background:var(--rl-secondary-container);
  color:var(--rl-on-secondary-fixed);font-family:var(--rl-font-mono);font-size:12px;
  letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;
  border:1px solid var(--rl-on-secondary-fixed);transform:rotate(3deg);
  box-shadow:2px 2px 0 var(--rl-on-secondary-fixed);
}
.rl-quote-card__head{
  border-bottom:2px dashed var(--rl-line-strong);padding-bottom:16px;
  display:flex;justify-content:space-between;align-items:flex-end;gap:12px;
}
.rl-quote-card__head .material-symbols-outlined{font-size:36px;color:var(--rl-line-strong)}
.rl-quote-card__note{font-family:var(--rl-font-mono);font-size:10px;color:var(--rl-ink-secondary);text-align:center;margin:8px 0 0;line-height:1.5;text-transform:none;letter-spacing:.04em}

/* =========================================================
   FORMS (native + Contact Form 7)
   ========================================================= */
.rl-form{display:flex;flex-direction:column;gap:16px}
.rl-field{display:flex;flex-direction:column;gap:4px}
.rl-field label,.rl-form label{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.rl-row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:479px){.rl-row-2{grid-template-columns:1fr}}

.rl-form input[type=text],
.rl-form input[type=email],
.rl-form input[type=tel],
.rl-form input[type=url],
.rl-form input[type=number],
.rl-form input[type=date],
.rl-form input[type=file],
.rl-form select,
.rl-form textarea,
.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 input[type=tel],
.wpcf7 input[type=url],
.wpcf7 input[type=number],
.wpcf7 input[type=date],
.wpcf7 input[type=file],
.wpcf7 select,
.wpcf7 textarea,
.rl-search-form input[type=search]{
  width:100%;background:var(--rl-panel-alt);border:1px solid var(--rl-line-strong);
  padding:12px;border-radius:0;font-family:var(--rl-font-mono);font-size:16px;
  color:var(--rl-on-surface);appearance:none;-webkit-appearance:none;
}
.rl-form select,.wpcf7 select{background-image:none}
.rl-form input:focus,.rl-form select:focus,.rl-form textarea:focus,
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{
  outline:none;border-color:var(--rl-secondary);box-shadow:0 0 0 1px var(--rl-secondary);
}
.rl-form textarea,.wpcf7 textarea{min-height:150px;line-height:1.5;font-family:var(--rl-font-body)}
.rl-form input::placeholder,.wpcf7 input::placeholder,.wpcf7 textarea::placeholder{color:#8a918a}
.rl-form--uppercase input[type=text]{text-transform:uppercase}
.rl-honeypot{position:absolute!important;left:-9999px!important;opacity:0;height:0;width:0}

/* Contact Form 7 skin */
.wpcf7{width:100%}
.wpcf7 form.wpcf7-form{display:flex;flex-direction:column;gap:16px}
.wpcf7 p{margin:0;display:flex;flex-direction:column;gap:4px}
.wpcf7 label{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;display:flex;flex-direction:column;gap:4px}
.wpcf7 .wpcf7-list-item{margin:0 1em 0 0}
.wpcf7 input[type=submit],
.wpcf7 button[type=submit]{
  width:100%;margin-top:8px;background:var(--rl-secondary-fixed);color:var(--rl-on-secondary-fixed);
  font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  padding:16px;border:1px solid var(--rl-on-secondary-fixed);border-radius:0;cursor:pointer;
  box-shadow:2px 2px 0 var(--rl-on-secondary-fixed);transition:transform .1s,box-shadow .1s;
}
.wpcf7 input[type=submit]:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--rl-on-secondary-fixed)}
.wpcf7 .wpcf7-not-valid-tip{color:var(--rl-error);font-family:var(--rl-font-mono);font-size:11px;text-transform:none;letter-spacing:0}
.wpcf7 form .wpcf7-response-output{
  margin:8px 0 0;padding:12px;border:1px solid var(--rl-line-strong);background:var(--rl-panel-alt);
  font-family:var(--rl-font-mono);font-size:12px;text-transform:none;letter-spacing:.02em;border-radius:0;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output{border-color:var(--rl-error);background:var(--rl-error-container);color:var(--rl-on-error-container)}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--rl-secondary);background:var(--rl-secondary-fixed);color:var(--rl-on-secondary-fixed)}
.wpcf7-spinner{margin:0 auto}

/* Theme notices */
.rl-notice{
  padding:14px 16px;border:1px solid var(--rl-line-strong);background:var(--rl-panel-alt);
  font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.04em;line-height:1.6;
}
.rl-notice--ok{background:var(--rl-secondary-fixed);border-color:var(--rl-on-secondary-fixed);color:var(--rl-on-secondary-fixed)}
.rl-notice--error{background:var(--rl-error-container);border-color:var(--rl-error);color:var(--rl-on-error-container)}
.rl-notice--admin{background:#fff8e5;border-color:#d9a800;color:#5b4300}

/* =========================================================
   PRICE TABLE
   ========================================================= */
.rl-prices{display:flex;flex-direction:column;border-top:1px solid var(--rl-line-strong)}
.rl-price-row{
  display:grid;grid-template-columns:1fr;gap:12px;padding-block:16px;
  border-bottom:1px solid var(--rl-line-subtle);transition:background .15s;
}
.rl-price-row:hover{background:var(--rl-surface-low)}
@media (min-width:768px){
  .rl-price-row{grid-template-columns:40px 1.5fr 2fr auto;align-items:center;gap:16px}
}
.rl-price-row__idx{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;color:var(--rl-ink-secondary)}
.rl-price-row__name{display:flex;flex-direction:column}
.rl-price-row__name strong{font-family:var(--rl-font-head);font-size:26px;font-weight:700;line-height:.94;text-transform:uppercase}
.rl-price-row__name span{font-size:14px;color:var(--rl-ink-secondary)}
.rl-bar{height:12px;background:var(--rl-panel-alt);border:1px solid var(--rl-line-strong);position:relative}
.rl-bar__fill{position:absolute;inset-block:0;left:0;background:var(--rl-secondary-fixed)}
.rl-price-row__price{font-family:var(--rl-font-mono);font-size:21px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.rl-prices__foot{margin-top:24px;font-size:14px;color:var(--rl-ink-secondary);max-width:52rem}

/* =========================================================
   CARD GRIDS (services etc.)
   ========================================================= */
.rl-grid{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle)}
@media (min-width:640px){.rl-grid--2,.rl-grid--3,.rl-grid--4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){
  .rl-grid--3{grid-template-columns:repeat(3,1fr)}
  .rl-grid--4{grid-template-columns:repeat(4,1fr)}
}
.rl-card{
  background:var(--rl-surface);padding:24px;display:flex;flex-direction:column;gap:16px;
  transition:background .15s;
}
.rl-card:hover{background:var(--rl-panel-alt);text-decoration:none}
.rl-card__title{font-family:var(--rl-font-head);font-size:26px;font-weight:700;line-height:.94;text-transform:uppercase;color:var(--rl-on-surface);display:block}
.rl-card__title .material-symbols-outlined{color:var(--rl-primary);font-size:24px;margin-right:8px}
.rl-card p{font-size:14px;color:var(--rl-ink-secondary);margin:0}
.rl-card__price{margin-top:auto;font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.rl-card__price b{background:var(--rl-secondary-fixed);padding:2px 8px;font-weight:700}
.rl-card__more{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-primary);display:inline-flex;align-items:center;gap:6px}
.rl-card__thumb{margin:-24px -24px 0;border-bottom:1px solid var(--rl-line-subtle)}
.rl-card__thumb img{width:100%;aspect-ratio:16/10;object-fit:cover}

/* =========================================================
   STEPS
   ========================================================= */
.rl-steps{display:grid;grid-template-columns:1fr;gap:32px}
@media (min-width:768px){.rl-steps{grid-template-columns:repeat(3,1fr)}}
.rl-step{border-top:4px solid var(--rl-on-surface);padding-top:16px}
.rl-step__meta{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink-secondary)}
.rl-step h3{margin:8px 0 12px;font-size:26px;text-transform:uppercase}
.rl-step p{font-size:14px;color:var(--rl-ink-secondary);margin:0}

/* =========================================================
   SPLIT / STATS
   ========================================================= */
.rl-split{display:grid;grid-template-columns:1fr;gap:48px;align-items:center}
@media (min-width:1024px){.rl-split{grid-template-columns:1fr 1fr}}
.rl-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle)}
.rl-stat{background:var(--rl-surface);padding:24px}
.rl-stat b{display:block;font-family:var(--rl-font-head);font-size:36px;line-height:1;font-weight:700}
.rl-stat span{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink-secondary)}
.rl-media{aspect-ratio:4/3;background:var(--rl-panel-alt);border:1px solid var(--rl-line-strong);overflow:hidden}
.rl-media img{width:100%;height:100%;object-fit:cover}

/* =========================================================
   AREAS
   ========================================================= */
.rl-areas{display:flex;flex-wrap:wrap;gap:8px}
.rl-area{
  font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  border:1px solid var(--rl-line-strong);padding:6px 12px;background:var(--rl-surface);color:var(--rl-on-surface);
}
a.rl-area:hover{background:var(--rl-secondary-fixed);text-decoration:none}

/* =========================================================
   FAQ
   ========================================================= */
.rl-faq{max-width:52rem;border-top:1px solid var(--rl-line-strong)}
.rl-faq details{border-bottom:1px solid var(--rl-line-subtle);padding-block:16px}
.rl-faq summary{
  display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;
  font-family:var(--rl-font-head);font-size:26px;line-height:.94;font-weight:700;text-transform:uppercase;list-style:none;
}
.rl-faq summary::-webkit-details-marker{display:none}
.rl-faq summary .material-symbols-outlined{color:var(--rl-primary);transition:transform .2s;flex-shrink:0}
.rl-faq details[open] summary .material-symbols-outlined{transform:rotate(180deg)}
.rl-faq details>div,.rl-faq details>p{margin-top:16px;color:var(--rl-ink-secondary)}

/* =========================================================
   CTA BAND
   ========================================================= */
.rl-cta{background:var(--rl-on-surface);color:var(--rl-surface);padding-block:64px}
.rl-cta__grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:center}
@media (min-width:1024px){.rl-cta__grid{grid-template-columns:1fr 1fr}}
.rl-cta h2{text-transform:uppercase;line-height:1}
.rl-cta p{margin-top:24px;color:var(--rl-surface-variant);opacity:.8;max-width:28rem}
.rl-cta__actions{display:flex;flex-direction:column;gap:16px}
.rl-cta__action{
  display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px;
  transition:transform .15s;color:#fff;
}
.rl-cta__action:hover{transform:translateY(-2px);text-decoration:none;color:#fff}
.rl-cta__action--primary{background:var(--rl-primary)}
.rl-cta__action--ghost{border:2px solid var(--rl-surface-variant);color:var(--rl-surface)}
.rl-cta__action strong{font-family:var(--rl-font-head);font-size:26px;font-weight:700;line-height:.94;text-transform:uppercase;display:block}
.rl-cta__action small{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;opacity:.7}
.rl-cta__action .material-symbols-outlined{font-size:30px}

/* =========================================================
   PAGE HEADER (inner pages)
   ========================================================= */
.rl-page-head{background:var(--rl-on-surface);color:var(--rl-surface);padding-block:56px;position:relative;overflow:hidden}
.rl-page-head__bg{position:absolute;inset:0;z-index:0}
.rl-page-head__bg img{width:100%;height:100%;object-fit:cover;opacity:.18}
.rl-page-head__inner{position:relative;z-index:1}
.rl-page-head h1{text-transform:uppercase;color:var(--rl-surface);max-width:22ch}
.rl-page-head p{margin-top:20px;color:var(--rl-surface-variant);opacity:.85;max-width:44rem;font-size:18.5px}
.rl-crumbs{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-surface-variant);opacity:.75;margin-bottom:20px}
.rl-crumbs a{color:inherit}
.rl-crumbs a:hover{color:var(--rl-secondary-fixed)}
.rl-crumbs span{margin-inline:6px}

/* =========================================================
   ENTRY CONTENT (pages / posts / legal)
   ========================================================= */
.rl-prose{max-width:46rem;font-size:17px;line-height:1.7;color:var(--rl-on-surface)}
.rl-prose--wide{max-width:none}
.rl-prose h2{font-size:34px;text-transform:uppercase;margin:2.2em 0 .6em;line-height:1}
.rl-prose h3{font-size:24px;text-transform:uppercase;margin:1.8em 0 .5em;line-height:1.05}
.rl-prose h4{font-size:19px;margin:1.6em 0 .5em;font-family:var(--rl-font-head);text-transform:uppercase}
.rl-prose h2:first-child,.rl-prose h3:first-child{margin-top:0}
.rl-prose p{margin:0 0 1.25em}
.rl-prose ul,.rl-prose ol{margin:0 0 1.25em;padding-left:1.4em}
.rl-prose li{margin-bottom:.5em}
.rl-prose li::marker{color:var(--rl-primary)}
.rl-prose a{text-decoration:underline;text-underline-offset:2px}
.rl-prose blockquote{
  margin:1.6em 0;padding:20px 24px;background:var(--rl-panel-alt);
  border-left:4px solid var(--rl-secondary-fixed);font-size:18.5px;
}
.rl-prose blockquote p:last-child{margin-bottom:0}
.rl-prose img,.rl-prose .wp-caption{margin-block:1.6em;border:1px solid var(--rl-line-strong)}
.rl-prose figcaption,.rl-prose .wp-caption-text{font-family:var(--rl-font-mono);font-size:11px;color:var(--rl-ink-secondary);text-transform:uppercase;letter-spacing:.06em;margin-top:8px}
.rl-prose table{margin-block:1.6em;border:1px solid var(--rl-line-strong);font-size:15px}
.rl-prose th,.rl-prose td{border:1px solid var(--rl-line-subtle);padding:10px 12px;text-align:left}
.rl-prose th{background:var(--rl-panel-alt);font-family:var(--rl-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.rl-prose code{font-family:var(--rl-font-mono);font-size:14px;background:var(--rl-panel-alt);padding:2px 5px;border:1px solid var(--rl-line-subtle)}
.rl-prose pre{background:var(--rl-pitch-black);color:#e6e6e6;padding:20px;overflow-x:auto;font-family:var(--rl-font-mono);font-size:14px}
.rl-prose pre code{background:none;border:0;color:inherit;padding:0}
.rl-prose .alignleft{float:left;margin:0 1.5em 1em 0}
.rl-prose .alignright{float:right;margin:0 0 1em 1.5em}
.rl-prose .aligncenter{margin-inline:auto}
.rl-prose>*:last-child{margin-bottom:0}

.rl-content-layout{display:grid;grid-template-columns:1fr;gap:48px;align-items:start}
@media (min-width:1024px){.rl-content-layout{grid-template-columns:minmax(0,1fr) 320px;gap:56px}}
.rl-sidebar{display:flex;flex-direction:column;gap:24px;position:sticky;top:140px}
.rl-widget{background:var(--rl-surface);border:1px solid var(--rl-line-strong);padding:20px;box-shadow:4px 4px 0 var(--rl-line-strong)}
.rl-widget__title{font-family:var(--rl-font-head);font-size:20px;text-transform:uppercase;margin-bottom:14px;font-weight:700}
.rl-widget ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.rl-widget li a{font-size:14px;color:var(--rl-on-surface)}
.rl-widget li a:hover{color:var(--rl-primary)}

.rl-toc{background:var(--rl-panel-alt);border:1px solid var(--rl-line-strong);padding:20px 24px;margin-bottom:32px}
.rl-toc__title{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink-secondary);margin-bottom:10px}

/* =========================================================
   BLOG
   ========================================================= */
.rl-posts{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle)}
@media (min-width:640px){.rl-posts{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.rl-posts{grid-template-columns:repeat(3,1fr)}}
.rl-post-card{background:var(--rl-surface);display:flex;flex-direction:column;transition:background .15s}
.rl-post-card:hover{background:var(--rl-panel-alt)}
.rl-post-card__thumb{display:block;border-bottom:1px solid var(--rl-line-subtle);background:var(--rl-panel-alt)}
.rl-post-card__thumb img{width:100%;aspect-ratio:16/10;object-fit:cover}
.rl-post-card__body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}
.rl-post-card__meta{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink-secondary);display:flex;gap:10px;flex-wrap:wrap}
.rl-post-card__title{font-family:var(--rl-font-head);font-size:24px;line-height:1;font-weight:700;text-transform:uppercase}
.rl-post-card__title a{color:var(--rl-on-surface)}
.rl-post-card__title a:hover{color:var(--rl-primary);text-decoration:none}
.rl-post-card__excerpt{font-size:14px;color:var(--rl-ink-secondary);margin:0}
.rl-post-card__more{margin-top:auto;font-family:var(--rl-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-primary)}

.rl-post-featured{margin-bottom:32px;border:1px solid var(--rl-line-strong)}
.rl-post-featured img{width:100%;max-height:520px;object-fit:cover}

.rl-entry-meta{
  display:flex;flex-wrap:wrap;gap:16px;align-items:center;
  font-family:var(--rl-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--rl-ink-secondary);
}
.rl-entry-meta .material-symbols-outlined{font-size:14px;margin-right:4px}

.rl-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.rl-tag{
  font-family:var(--rl-font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  border:1px solid var(--rl-line-strong);padding:5px 10px;background:var(--rl-surface);color:var(--rl-on-surface);
}
.rl-tag:hover{background:var(--rl-secondary-fixed);text-decoration:none}

.rl-pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:40px;justify-content:center}
.rl-pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 10px;
  border:1px solid var(--rl-line-strong);background:var(--rl-surface);color:var(--rl-on-surface);
  font-family:var(--rl-font-mono);font-size:12px;
}
.rl-pagination .page-numbers:hover{background:var(--rl-panel-alt);text-decoration:none}
.rl-pagination .page-numbers.current{background:var(--rl-on-surface);color:var(--rl-surface);border-color:var(--rl-on-surface)}

.rl-postnav{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle);margin-top:48px}
@media (min-width:640px){.rl-postnav{grid-template-columns:1fr 1fr}}
.rl-postnav a{background:var(--rl-surface);padding:20px;display:flex;flex-direction:column;gap:6px;color:var(--rl-on-surface)}
.rl-postnav a:hover{background:var(--rl-panel-alt);text-decoration:none}
.rl-postnav span{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink-secondary)}
.rl-postnav strong{font-family:var(--rl-font-head);font-size:19px;text-transform:uppercase;line-height:1.05}
.rl-postnav .rl-postnav--next{text-align:right;align-items:flex-end}

/* Comments */
.rl-comments{margin-top:56px;border-top:1px solid var(--rl-line-strong);padding-top:32px}
.rl-comments h2,.rl-comments h3{font-size:26px;text-transform:uppercase;margin-bottom:20px}
.rl-comments ol.comment-list{list-style:none;margin:0 0 32px;padding:0;display:flex;flex-direction:column;gap:20px}
.rl-comments ol.children{list-style:none;margin:20px 0 0;padding-left:24px;border-left:1px solid var(--rl-line-subtle);display:flex;flex-direction:column;gap:20px}
.rl-comments .comment-body{background:var(--rl-surface);border:1px solid var(--rl-line-strong);padding:20px}
.rl-comments .comment-author{display:flex;align-items:center;gap:10px;font-family:var(--rl-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.rl-comments .comment-author img{border-radius:0;border:1px solid var(--rl-line-strong)}
.rl-comments .comment-metadata{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--rl-ink-secondary);margin-bottom:10px}
.rl-comments .reply a{font-family:var(--rl-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.rl-comments .comment-respond{background:var(--rl-panel-alt);border:1px solid var(--rl-line-strong);padding:24px}
.rl-comments .comment-form{display:flex;flex-direction:column;gap:14px}
.rl-comments .comment-form p{display:flex;flex-direction:column;gap:4px;margin:0}
.rl-comments .comment-form label{font-family:var(--rl-font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.rl-comments .comment-form input[type=text],
.rl-comments .comment-form input[type=email],
.rl-comments .comment-form input[type=url],
.rl-comments .comment-form textarea{
  width:100%;background:var(--rl-surface);border:1px solid var(--rl-line-strong);padding:12px;border-radius:0;
  font-family:var(--rl-font-body);font-size:15px;
}
.rl-comments .comment-form .form-submit input[type=submit]{
  background:var(--rl-secondary);color:#fff;border:1px solid var(--rl-on-secondary-fixed);
  font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  padding:14px 24px;cursor:pointer;box-shadow:2px 2px 0 var(--rl-on-secondary-fixed);border-radius:0;
}
.rl-comments .comment-form-cookies-consent{flex-direction:row;align-items:center;gap:8px}

/* =========================================================
   CONTACT PAGE
   ========================================================= */
.rl-contact-grid{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle)}
@media (min-width:640px){.rl-contact-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.rl-contact-grid{grid-template-columns:repeat(4,1fr)}}
.rl-contact-tile{background:var(--rl-surface);padding:24px;display:flex;flex-direction:column;gap:10px}
.rl-contact-tile .material-symbols-outlined{color:var(--rl-primary);font-size:28px}
.rl-contact-tile__label{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink-secondary)}
.rl-contact-tile__value{font-family:var(--rl-font-head);font-size:20px;font-weight:700;line-height:1.1;word-break:break-word}
.rl-contact-tile__value a{color:var(--rl-on-surface)}
.rl-contact-tile__value a:hover{color:var(--rl-primary)}
.rl-contact-tile small{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--rl-ink-secondary)}

.rl-contact-split{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}
@media (min-width:1024px){.rl-contact-split{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}
.rl-form-panel{background:var(--rl-surface);border:2px solid var(--rl-line-strong);padding:28px;box-shadow:6px 6px 0 var(--rl-line-strong)}
.rl-form-panel__head{border-bottom:2px dashed var(--rl-line-strong);padding-bottom:16px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.rl-form-panel__head .material-symbols-outlined{font-size:34px;color:var(--rl-line-strong)}

.rl-map{border:2px solid var(--rl-line-strong);box-shadow:6px 6px 0 var(--rl-line-strong);background:var(--rl-panel-alt);line-height:0}
.rl-map iframe{width:100%;height:420px;border:0;display:block;filter:grayscale(.25) contrast(1.05)}
.rl-map__foot{
  line-height:1.4;padding:10px 14px;border-top:2px solid var(--rl-line-strong);background:var(--rl-surface);
  font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
}

.rl-hours{border:1px solid var(--rl-line-strong);background:var(--rl-surface)}
.rl-hours__row{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--rl-line-subtle);font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase}
.rl-hours__row:last-child{border-bottom:0}
.rl-hours__row.is-today{background:var(--rl-secondary-fixed);color:var(--rl-on-secondary-fixed)}

/* =========================================================
   ABOUT PAGE
   ========================================================= */
.rl-values{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle)}
@media (min-width:640px){.rl-values{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.rl-values{grid-template-columns:repeat(3,1fr)}}
.rl-value{background:var(--rl-surface);padding:24px;display:flex;flex-direction:column;gap:12px}
.rl-value .material-symbols-outlined{color:var(--rl-primary);font-size:30px}
.rl-value h3{font-size:20px;text-transform:uppercase}
.rl-value p{font-size:14px;color:var(--rl-ink-secondary);margin:0}

.rl-timeline{display:flex;flex-direction:column;border-left:2px solid var(--rl-line-strong);padding-left:24px;gap:28px}
.rl-timeline__item{position:relative}
.rl-timeline__item::before{
  content:"";position:absolute;left:-31px;top:6px;width:12px;height:12px;
  background:var(--rl-secondary-fixed);border:1px solid var(--rl-on-secondary-fixed);
}
.rl-timeline__year{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-primary)}
.rl-timeline__item h3{font-size:20px;text-transform:uppercase;margin:6px 0 8px}
.rl-timeline__item p{font-size:14px;color:var(--rl-ink-secondary);margin:0}

.rl-team{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle)}
@media (min-width:640px){.rl-team{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.rl-team{grid-template-columns:repeat(4,1fr)}}
.rl-member{background:var(--rl-surface);display:flex;flex-direction:column}
.rl-member img{width:100%;aspect-ratio:1/1;object-fit:cover;border-bottom:1px solid var(--rl-line-subtle)}
.rl-member__ph{width:100%;aspect-ratio:1/1;background:var(--rl-panel-alt);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--rl-line-subtle)}
.rl-member__ph .material-symbols-outlined{font-size:60px;color:var(--rl-line-strong)}
.rl-member__body{padding:18px;display:flex;flex-direction:column;gap:6px}
.rl-member__name{font-family:var(--rl-font-head);font-size:20px;font-weight:700;text-transform:uppercase;line-height:1}
.rl-member__role{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-primary)}
.rl-member__bio{font-size:13px;color:var(--rl-ink-secondary);margin:0}

.rl-logos{display:flex;flex-wrap:wrap;gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle)}
.rl-logos__item{background:var(--rl-surface);flex:1 1 180px;padding:24px;display:flex;align-items:center;justify-content:center;min-height:110px}
.rl-logos__item img{max-height:56px;width:auto;object-fit:contain;filter:grayscale(1);opacity:.75}

/* =========================================================
   SERVICE SINGLE
   ========================================================= */
.rl-service-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rl-line-subtle);border:1px solid var(--rl-line-subtle);margin-bottom:32px}
@media (min-width:640px){.rl-service-facts{grid-template-columns:repeat(3,1fr)}}
.rl-fact{background:var(--rl-surface);padding:18px}
.rl-fact span{display:block;font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink-secondary);margin-bottom:6px}
.rl-fact b{font-family:var(--rl-font-head);font-size:22px;font-weight:700;line-height:1}

.rl-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.rl-checklist li{display:flex;gap:10px;align-items:flex-start;font-size:15px}
.rl-checklist .material-symbols-outlined{color:var(--rl-secondary);font-size:20px;flex-shrink:0;margin-top:1px}

/* =========================================================
   FOOTER
   ========================================================= */
.rl-footer{
  background:var(--rl-on-surface);color:var(--rl-surface);width:100%;
  border-top:4px dashed var(--rl-line-subtle);margin-top:64px;flex-shrink:0;
}
.rl-footer__grid{display:grid;grid-template-columns:1fr;gap:48px;padding-block:var(--rl-gap-lg) 0;margin-bottom:48px}
@media (min-width:768px){.rl-footer__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.rl-footer__grid{grid-template-columns:repeat(4,1fr)}}
.rl-footer__col{display:flex;flex-direction:column;gap:16px}
.rl-footer__col h3{font-family:var(--rl-font-head);font-size:14px;text-transform:uppercase;color:var(--rl-surface);letter-spacing:.02em}
.rl-footer__col p{color:var(--rl-surface-variant);opacity:.8;margin:0;font-size:15px}
.rl-footer__col nav,.rl-footer__col ul{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}
.rl-footer__col nav a,.rl-footer__col ul a{
  font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--rl-surface-variant);opacity:.8;
}
.rl-footer__col nav a:hover,.rl-footer__col ul a:hover{opacity:1;color:var(--rl-secondary-fixed);text-decoration:none}
.rl-footer__contact{display:flex;flex-direction:column;gap:10px;font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.06em;color:var(--rl-surface-variant);opacity:.85}
.rl-footer__contact p{display:flex;align-items:flex-start;gap:8px;margin:0;font-family:inherit;font-size:inherit;opacity:1}
.rl-footer__contact .material-symbols-outlined{font-size:16px;flex-shrink:0;margin-top:1px}
.rl-footer__contact a{color:inherit}
.rl-footer__contact a:hover{color:var(--rl-secondary-fixed)}
.rl-footer__bottom{
  padding-block:32px var(--rl-gap-lg);border-top:1px solid rgba(226,227,224,.2);
  display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:16px;text-align:center;
}
@media (min-width:768px){.rl-footer__bottom{flex-direction:row;text-align:left}}
.rl-footer__brand{font-family:var(--rl-font-head);font-size:26px;font-weight:700;text-transform:uppercase;color:var(--rl-surface);flex-shrink:0}
.rl-footer__copy{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-surface-variant);opacity:.6}
.rl-footer__legal{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}
.rl-footer__legal a{font-family:var(--rl-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-surface-variant);opacity:.6}
.rl-footer__legal a:hover{opacity:1;color:var(--rl-secondary-fixed)}

/* Sticky mobile call bar */
.rl-mobile-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:60;display:grid;grid-template-columns:1fr 1fr;
  border-top:2px solid var(--rl-on-secondary-fixed);
}
@media (min-width:768px){.rl-mobile-bar{display:none}}
.rl-mobile-bar a{
  display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 8px;
  font-family:var(--rl-font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;
}
.rl-mobile-bar a:first-child{background:var(--rl-primary);color:#fff}
.rl-mobile-bar a:last-child{background:var(--rl-secondary-fixed);color:var(--rl-on-secondary-fixed)}
body.has-mobile-bar{padding-bottom:52px}
@media (min-width:768px){body.has-mobile-bar{padding-bottom:0}}

/* Search form */
.rl-search-form{display:flex;gap:8px}
.rl-search-form button{
  background:var(--rl-on-surface);color:#fff;border:1px solid var(--rl-on-surface);
  padding:0 16px;cursor:pointer;font-family:var(--rl-font-mono);font-size:12px;text-transform:uppercase;
}

/* 404 */
.rl-404{text-align:center;padding-block:80px;display:flex;flex-direction:column;align-items:center;gap:24px}
.rl-404__code{font-family:var(--rl-font-head);font-size:clamp(90px,18vw,180px);line-height:.85;font-weight:700;color:var(--rl-primary)}

/* WP core alignment helpers */
.alignwide{max-width:1100px;margin-inline:auto}
.alignfull{max-width:none;width:100%}
.wp-block-image img{border:1px solid var(--rl-line-strong)}
.sticky .rl-post-card__title::after{content:" ★";color:var(--rl-primary)}
.bypostauthor{}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-block:1.6em}

/* Print */
@media print{
  .rl-header,.rl-footer,.rl-mobile-bar,.rl-cta{display:none!important}
  body{background:#fff}
}

/* ===== Wersja PL — dodatki ===== */
@media (min-width:1024px){.rl-values--4{grid-template-columns:repeat(4,1fr)}}
.rl-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:0}
@media (min-width:768px){.rl-gallery{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1024px){.rl-gallery{grid-template-columns:repeat(5,1fr)}}
.rl-gallery a{display:block;border:1px solid var(--rl-line-subtle);overflow:hidden}
.rl-gallery img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}
.rl-gallery a:hover img{transform:scale(1.04)}
.rl-prose figure.rl-inline-figure{margin:28px 0}
.rl-prose figure.rl-inline-figure img{width:100%;height:auto;display:block}
.rl-prose .rl-callout{border-left:4px solid var(--rl-primary);background:var(--rl-panel-alt);padding:16px 20px;margin:24px 0}
.rl-card h3.rl-card__title{margin:0}

/* PL: dłuższe etykiety menu — pełne menu od 1200 px, telefon w nagłówku od 1440 px */
.rl-nav a{white-space:nowrap}
.rl-header__cta{white-space:nowrap}
@media (min-width:1024px){.rl-nav{display:none}.rl-burger{display:inline-flex}}
@media (min-width:1200px){.rl-nav{display:flex}.rl-burger{display:none}.rl-nav ul{gap:22px}}
@media (min-width:1180px){.rl-header__phone{display:none}}
@media (min-width:1440px){.rl-header__phone{display:block}.rl-nav ul{gap:28px}}
/* PL: kolumna treści nie może rozpychać strony na telefonach */
.rl-content-layout{grid-template-columns:minmax(0,1fr)}
@media (min-width:1024px){.rl-content-layout{grid-template-columns:minmax(0,1fr) 320px}}
.rl-cta h2 .rl-mark{display:inline-block;margin-top:.14em;line-height:1.02;padding-top:.04em}
.rl-prose .rl-gallery a{border:1px solid var(--rl-line-subtle);text-decoration:none}
.rl-prose .rl-gallery img{margin:0;border:0;max-width:100%}
