/*
Theme Name: Resonix
Theme URI: https://resonixtech.com/
Author: Resonix Solutions FZ-LLC
Author URI: https://resonixtech.com/
Description: A dark, compact block theme for Resonix Solutions — specialised software for mobile packet core and special-event spectrum management. Activate it and every page (Home, About, Services, Portfolio, CoreNet, SESMA, Contact, Customer portal, Privacy) is created with its content. Edit any page in the normal block editor; edit header and footer in Appearance → Editor.
Version: 1.6.5
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: resonix
Tags: dark, block-patterns, full-site-editing, one-column, custom-logo, editor-style
*/

/* Tokens (Nocturne). Change the look here. */
:root{
  --color-bg:#161826;--color-surface:#232532;--color-text:#e9e9ed;--color-accent:#9184d9;
  --color-divider:color-mix(in srgb,#e9e9ed 16%,transparent);
  --color-neutral-100:#f3f5fe;--color-neutral-200:#e4e7f5;--color-neutral-300:#cfd3e5;--color-neutral-400:#b2b6ca;--color-neutral-500:#9397ab;--color-neutral-600:#75798c;--color-neutral-700:#595d6c;--color-neutral-800:#3f424d;--color-neutral-900:#292b31;
  --color-accent-100:#f5f4ff;--color-accent-200:#e7e5fe;--color-accent-300:#d2cefd;--color-accent-400:#b5abfc;--color-accent-500:#968ae0;--color-accent-600:#796cbf;--color-accent-700:#5d5294;--color-accent-800:#423a6a;--color-accent-900:#2b2741;
  --color-section:#262a60;--color-section-glow:#353b80;--color-section-ghost:#4c5397;
  --radius-sm:4px;--radius-md:8px;--radius-lg:14px;
  --shadow-sm:0 0 0 1px #3f424d;--shadow-md:0 0 0 1px #595d6c,0 6px 18px rgba(0,0,0,.55);--shadow-lg:0 0 0 1px #9397ab,0 16px 40px rgba(0,0,0,.65);
  --rx-rule:linear-gradient(to right,transparent,var(--color-divider) 48px,var(--color-divider) calc(100% - 48px),transparent);
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:clip}
:where(p,li,dd,td,h1,h2,h3,h4,a){overflow-wrap:break-word}
:where(a,button,input,select,textarea,summary,.wp-block-button__link){-webkit-tap-highlight-color:transparent;touch-action:manipulation}
:where(iframe,video,embed,object){max-width:100%}
.wp-block-table,.rx-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:color-mix(in srgb,var(--color-accent) 30%,transparent)}
:focus{outline:none}
:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
a{text-underline-offset:3px;transition:color .15s}
a:where(:hover){color:var(--color-accent-200)}
h1,h2,h3,h4,h5,h6{font-weight:500;text-wrap:balance}
h1{font-size:clamp(40px,5.2vw,66px);line-height:1.04;letter-spacing:-.03em}
h2{font-size:clamp(28px,3.2vw,42px);line-height:1.1;letter-spacing:-.022em}
h3{font-size:20px;line-height:1.25;letter-spacing:-.01em}
p{text-wrap:pretty}
img{max-width:100%;height:auto}
.wp-site-blocks>*+*{margin-block-start:0}
.rx-main{margin-block:0}
.rx-landing>*,.rx-landing>*+*{margin-block:0}

/* Header */
.rx-header{position:sticky;top:0;z-index:100;isolation:isolate}
/* Blur lives on a pseudo-element: backdrop-filter on the header itself would trap the fixed mobile menu inside the header bar. */
.rx-header::before{content:"";position:absolute;inset:0;z-index:-1;background:color-mix(in srgb,var(--color-bg) 82%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2)}
.admin-bar .rx-header{top:32px}
@media (max-width:782px){.admin-bar .rx-header{top:46px}}
.rx-header::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:var(--rx-rule)}
.rx-header__inner{padding-block:14px;gap:24px}
.rx-header .wp-block-site-logo img,.rx-portal .wp-block-site-logo img{max-height:40px;width:auto}
.rx-nav{font-size:14px;gap:6px 28px}
.rx-nav .wp-block-navigation-item__content{color:var(--color-neutral-300);text-decoration:none}
.rx-nav .wp-block-navigation-item__content:hover,.rx-nav .current-menu-item>.wp-block-navigation-item__content{color:var(--color-accent-300)}
.rx-nav .rx-nav-cta>.wp-block-navigation-item__content{color:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-md);padding:7px 14px}
.rx-nav .rx-nav-cta>.wp-block-navigation-item__content:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-accent-300)}
.rx-nav .wp-block-navigation__submenu-container{background:var(--color-surface)!important;color:var(--color-text)!important;border:0!important;border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:6px!important;min-width:220px!important}
.rx-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:9px 12px!important;border-radius:6px}
.rx-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:color-mix(in srgb,var(--color-text) 6%,transparent)}
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{color:var(--color-text)}
.wp-block-navigation__responsive-container.is-menu-open{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;z-index:100001!important;overflow-y:auto!important;overscroll-behavior:contain;background:var(--color-bg)!important;color:var(--color-text)!important;padding:max(20px,env(safe-area-inset-top)) clamp(20px,5vw,40px) max(32px,env(safe-area-inset-bottom))!important}
.admin-bar .wp-block-navigation__responsive-container.is-menu-open{top:46px!important;height:calc(100dvh - 46px)!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:56px!important;align-items:flex-start!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;width:100%}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%;flex-direction:column;align-items:flex-start!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:flex!important;align-items:center;min-height:48px;padding:6px 0!important;width:100%}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{position:static!important;display:flex!important;flex-direction:column;visibility:visible!important;opacity:1!important;width:100%!important;height:auto!important;min-width:0!important;border-left:1px solid var(--color-neutral-800)!important;border-radius:0!important;margin:0 0 8px 2px!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:17px!important;min-height:44px;color:var(--color-neutral-300)}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon{display:none!important}
.wp-block-navigation__responsive-container.is-menu-open .rx-nav-cta{margin-top:16px}
.wp-block-navigation__responsive-container.is-menu-open .rx-nav-cta>.wp-block-navigation-item__content{justify-content:center;width:auto;padding:10px 22px!important;font-size:17px!important}
.wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__responsive-container-close{display:none!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{position:absolute!important;top:max(18px,env(safe-area-inset-top));right:clamp(16px,5vw,36px);width:44px;height:44px;display:grid!important;place-items:center}
@media (max-width:599px){.wp-block-navigation__responsive-container-open:not(.always-shown){width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-md)}}
.wp-block-navigation__responsive-container-open:hover{background:color-mix(in srgb,var(--color-text) 8%,transparent)}
.wp-block-navigation__responsive-container-open svg,.wp-block-navigation__responsive-container-close svg{width:26px;height:26px}
html.has-modal-open,html.has-modal-open body{overflow:hidden}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{gap:18px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:22px;font-weight:500}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{box-shadow:none!important;background:transparent!important;padding:0 0 0 16px!important}

/* Sections */
.rx-accent{color:var(--color-accent-300)}
.rx-hero{position:relative;isolation:isolate;overflow:hidden;min-height:min(92vh,880px);display:flex;flex-direction:column;justify-content:flex-end;padding-block:clamp(120px,16vw,200px) clamp(32px,4vw,48px)}
.rx-hero--page{min-height:min(70vh,640px);padding-block:clamp(96px,12vw,160px) clamp(48px,6vw,80px)}
.rx-hero>*{margin-block:0!important}
.rx-hero__bg{position:absolute!important;inset:0;z-index:-2;margin:0!important;max-width:none!important;width:100%!important}
.rx-hero__bg img{width:100%;height:100%;object-fit:cover;object-position:70% 40%;transform:scale(1.04);animation:rx-drift 24s ease-in-out infinite alternate}
.rx-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--color-bg) 18%,color-mix(in srgb,var(--color-bg) 55%,transparent) 52%,transparent 80%),linear-gradient(0deg,var(--color-bg) 2%,transparent 45%),radial-gradient(40% 60% at 85% 10%,color-mix(in srgb,var(--color-section-glow) 55%,transparent),transparent 70%)}
.rx-hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;right:clamp(-120px,8vw,14%);top:16%;width:clamp(320px,42vw,620px);aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 46px,color-mix(in srgb,var(--color-accent) 38%,transparent) 47px 48px);-webkit-mask-image:radial-gradient(circle,#000 10%,transparent 70%);mask-image:radial-gradient(circle,#000 10%,transparent 70%);animation:rx-pulse 7s ease-in-out infinite}
.rx-hero__content{max-width:760px}
.rx-hero h1{margin:0 0 22px;max-width:14ch;font-size:clamp(44px,6.6vw,92px);line-height:.98;letter-spacing:-.04em}
.rx-hero--page h1{font-size:clamp(40px,5.4vw,72px)}
.rx-hero .wp-block-buttons{margin-top:34px}
.rx-facts{position:relative;margin-top:clamp(56px,8vw,104px)!important;padding-top:22px;gap:24px!important}
.rx-facts::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:var(--rx-rule)}
.rx-fact{margin:0;font-size:14px;color:var(--color-neutral-400)}
.rx-fact strong{display:block;font-weight:500;font-size:clamp(20px,2vw,26px);letter-spacing:-.02em;color:var(--color-text);margin-bottom:2px}
@media (max-width:781px){.rx-facts{display:grid!important;grid-template-columns:1fr 1fr}}
@keyframes rx-drift{to{transform:scale(1.1) translate(-1.5%,1%)}}
@keyframes rx-pulse{0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}
.rx-showcase{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(96px,12vw,168px) clamp(64px,9vw,120px)}
.rx-showcase>*{margin-block:0!important}
.rx-showcase__bg{position:absolute!important;inset:0 0 auto 0;height:min(78%,720px);z-index:-2;margin:0!important;max-width:none!important;width:100%!important}
.rx-showcase__bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.rx-showcase::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--color-bg) 15%,color-mix(in srgb,var(--color-bg) 50%,transparent) 55%,color-mix(in srgb,var(--color-bg) 20%,transparent)),linear-gradient(0deg,var(--color-bg) 30%,transparent 75%),linear-gradient(180deg,var(--color-bg),transparent 25%)}
.rx-showcase--flip::before{background:linear-gradient(270deg,var(--color-bg) 15%,color-mix(in srgb,var(--color-bg) 50%,transparent) 55%,color-mix(in srgb,var(--color-bg) 20%,transparent)),linear-gradient(0deg,var(--color-bg) 30%,transparent 75%),linear-gradient(180deg,var(--color-bg),transparent 25%)}
.rx-showcase__content{max-width:620px}
.rx-showcase--flip .rx-showcase__content{margin-left:auto!important}
.rx-showcase h2{font-size:clamp(32px,4vw,54px);margin:0 0 18px;max-width:18ch}
.rx-num{font-variant-numeric:tabular-nums;color:var(--color-accent);margin-right:4px}
.rx-num::after{content:" /";color:var(--color-neutral-600)}
.rx-showcase .rx-address{max-width:620px}
.rx-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.rx-reveal.is-in{opacity:1;transform:none}
.rx-split{gap:clamp(32px,5vw,72px)!important;align-items:center!important}
.rx-split--top{align-items:flex-start!important}
.rx-section{padding-block:clamp(64px,9vw,128px)}
.rx-section--tight{padding-block-start:0}
.rx-section h2,.rx-band h2{margin:0 0 16px;max-width:22ch}
.rx-kicker{display:flex;align-items:center;gap:10px;margin:0 0 18px!important;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-400)}
.rx-kicker::before{content:"";flex:none;width:20px;height:1px;background:var(--color-accent)}
.rx-lede{font-size:clamp(17px,1.4vw,19px);line-height:1.6;color:var(--color-neutral-300);max-width:58ch}
.rx-meta{font-size:15px;color:var(--color-neutral-400)}
.rx-media{margin:0}
.rx-media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-lg);-webkit-mask-image:radial-gradient(ellipse 85% 85% at 55% 50%,#000 55%,transparent 100%);mask-image:radial-gradient(ellipse 85% 85% at 55% 50%,#000 55%,transparent 100%)}
.rx-lighten,.rx-lighten img{mix-blend-mode:lighten;background-color:transparent}
.rx-band{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(72px,9vw,128px);background:radial-gradient(60% 120% at 85% 0%,var(--color-section-glow),transparent 70%),var(--color-section)}
.rx-band::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--color-section-ghost) 45%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--color-section-ghost) 45%,transparent) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(70% 90% at 80% 20%,#000,transparent 75%);mask-image:radial-gradient(70% 90% at 80% 20%,#000,transparent 75%)}
.rx-band h2{font-size:clamp(30px,3.6vw,48px)}
.rx-band .rx-accent{color:var(--color-accent-200)}
.rx-band .rx-kicker{color:var(--color-accent-300)}
.rx-band .rx-kicker::before{background:var(--color-accent-300)}
.rx-band .rx-lede{color:var(--color-neutral-200)}
.rx-band .wp-block-button__link{color:var(--color-accent-200)!important;border-color:var(--color-accent-300)!important}

/* Cards */
.rx-cards{gap:16px!important;margin-top:clamp(36px,5vw,64px)!important}
.rx-cards>.wp-block-column{display:flex;flex-direction:column}
@media (min-width:782px) and (max-width:1100px){.rx-cards--4{flex-wrap:wrap!important}.rx-cards--4>.wp-block-column{flex:0 0 calc(50% - 8px)!important}}
.rx-card{position:relative;isolation:isolate;overflow:hidden;padding:28px 26px;border-radius:var(--radius-md);background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 92%,var(--color-accent-900)),var(--color-surface));box-shadow:var(--shadow-sm);transition:box-shadow .25s,transform .25s}
.rx-card::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .25s;background:radial-gradient(260px circle at var(--mx,50%) var(--my,0%),color-mix(in srgb,var(--color-accent) 20%,transparent),transparent 70%)}
.rx-card:hover::after{opacity:1}
.rx-card::before{content:"";position:absolute;left:26px;top:0;width:28px;height:2px;background:var(--color-accent);opacity:.0;transition:opacity .25s}
.rx-card:hover::before{opacity:1}
.rx-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.rx-card>*{margin-block:0}
.rx-card>*+*{margin-block-start:10px!important}
.rx-card h3{margin:0}
.rx-card p{font-size:15px;color:var(--color-neutral-400)}
.rx-card .rx-kicker{margin-bottom:0!important}
.rx-card-sub{color:var(--color-accent-300)!important;font-size:14px!important}
.rx-card--media{padding:12px 12px 26px}
.rx-card--media>:not(.rx-card__img){padding-inline:14px}
.rx-card--media>.rx-card__img+*{margin-block-start:22px!important}
.rx-card__img{margin:0}
.rx-card__img{overflow:hidden;border-radius:6px}
.rx-card__img img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:6px;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.rx-card:hover .rx-card__img img{transform:scale(1.05)}
.rx-card--product .wp-block-buttons{margin-top:auto!important;padding-top:14px}
.rx-ico::before{content:"";display:block;width:26px;height:26px;margin-bottom:22px;padding:10px;box-sizing:content-box;border-radius:10px;outline:1px solid var(--color-accent-800);outline-offset:-1px;background:var(--color-accent);-webkit-mask:var(--rx-i) center/contain no-repeat;mask:var(--rx-i) center/contain no-repeat}
.rx-ico--device-mobile{--rx-i:url("assets/icons/device-mobile.svg")}
.rx-ico--broadcast{--rx-i:url("assets/icons/broadcast.svg")}
.rx-ico--pulse{--rx-i:url("assets/icons/pulse.svg")}
.rx-ico--stack{--rx-i:url("assets/icons/stack.svg")}
.rx-ico--tree-structure{--rx-i:url("assets/icons/tree-structure.svg")}
.rx-ico--intersect{--rx-i:url("assets/icons/intersect.svg")}
.rx-ico--cell-signal-full{--rx-i:url("assets/icons/cell-signal-full.svg")}
.rx-ico--wrench{--rx-i:url("assets/icons/wrench.svg")}
.rx-ico--headset{--rx-i:url("assets/icons/headset.svg")}
.rx-ico--arrows-clockwise{--rx-i:url("assets/icons/arrows-clockwise.svg")}
.rx-ico--rocket-launch{--rx-i:url("assets/icons/rocket-launch.svg")}
.rx-ico--plugs-connected{--rx-i:url("assets/icons/plugs-connected.svg")}
.rx-ico--gauge{--rx-i:url("assets/icons/gauge.svg")}
.rx-ico--chart-line-up{--rx-i:url("assets/icons/chart-line-up.svg")}
.rx-ico--arrows-out{--rx-i:url("assets/icons/arrows-out.svg")}
.rx-ico--puzzle-piece{--rx-i:url("assets/icons/puzzle-piece.svg")}
.rx-ico--envelope-simple{--rx-i:url("assets/icons/envelope-simple.svg")}
.rx-ico--map-pin{--rx-i:url("assets/icons/map-pin.svg")}

.rx-ico--network{--rx-i:url("assets/icons/network.svg")}
.rx-ico--magnifying-glass{--rx-i:url("assets/icons/magnifying-glass.svg")}
.rx-ico--gear{--rx-i:url("assets/icons/gear.svg")}
.rx-ico--scales{--rx-i:url("assets/icons/scales.svg")}
.rx-ico--lock{--rx-i:url("assets/icons/lock.svg")}
.rx-ico--git-fork{--rx-i:url("assets/icons/git-fork.svg")}
.rx-ico--terminal-window{--rx-i:url("assets/icons/terminal-window.svg")}
.rx-ico--list-checks{--rx-i:url("assets/icons/list-checks.svg")}
.rx-ico--database{--rx-i:url("assets/icons/database.svg")}
.rx-ico--bell-ringing{--rx-i:url("assets/icons/bell-ringing.svg")}
.rx-ico--waveform{--rx-i:url("assets/icons/waveform.svg")}
.rx-ico--cloud{--rx-i:url("assets/icons/cloud.svg")}
.rx-ico--users-three{--rx-i:url("assets/icons/users-three.svg")}
.rx-ico--shield-check{--rx-i:url("assets/icons/shield-check.svg")}
.rx-ico--buildings{--rx-i:url("assets/icons/buildings.svg")}
.rx-ico--target{--rx-i:url("assets/icons/target.svg")}
.rx-ico--arrows-split{--rx-i:url("assets/icons/arrows-split.svg")}
.rx-ico--squares-four{--rx-i:url("assets/icons/squares-four.svg")}
.rx-ico--toolbox{--rx-i:url("assets/icons/toolbox.svg")}
.rx-ico--chart-bar{--rx-i:url("assets/icons/chart-bar.svg")}
.rx-ico--swap{--rx-i:url("assets/icons/swap.svg")}
.rx-ico--map-trifold{--rx-i:url("assets/icons/map-trifold.svg")}
.rx-ico--sliders-horizontal{--rx-i:url("assets/icons/sliders-horizontal.svg")}
.rx-ico--arrows-in-simple{--rx-i:url("assets/icons/arrows-in-simple.svg")}
.rx-ico--funnel{--rx-i:url("assets/icons/funnel.svg")}
.rx-ico--file-text{--rx-i:url("assets/icons/file-text.svg")}
.rx-ico--printer{--rx-i:url("assets/icons/printer.svg")}
.rx-ico--globe{--rx-i:url("assets/icons/globe.svg")}
.rx-ico--lightning{--rx-i:url("assets/icons/lightning.svg")}
.rx-ico--hand-pointing{--rx-i:url("assets/icons/hand-pointing.svg")}
.rx-ico--check-circle{--rx-i:url("assets/icons/check-circle.svg")}
.rx-ico--cpu{--rx-i:url("assets/icons/cpu.svg")}
.rx-ico--calculator{--rx-i:url("assets/icons/calculator.svg")}
.rx-grid{gap:16px!important;margin-top:clamp(36px,5vw,64px)!important}
.rx-grid>.rx-card{display:flex;flex-direction:column;margin:0!important}
.rx-card--num .rx-card__num{font-size:13px!important;font-variant-numeric:tabular-nums;letter-spacing:.1em;color:var(--color-accent)!important;margin-bottom:8px!important}
.rx-card--vendor h3{font-size:22px}
.rx-stack{display:flex;flex-direction:column;gap:16px}
.rx-stack>.rx-card{margin:0!important}
.rx-chips{list-style:none;padding:0;margin:clamp(28px,4vw,48px) 0 0!important;display:flex;flex-wrap:wrap;gap:10px}
.rx-chips li{padding:10px 16px;border-radius:999px;font-size:15px;color:var(--color-neutral-200);background:color-mix(in srgb,var(--color-surface) 80%,transparent);box-shadow:inset 0 0 0 1px var(--color-neutral-800)}
.rx-chips li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-accent);margin-right:10px;vertical-align:middle}
.rx-print{margin-top:10px!important}
@media print{
  .rx-header,.rx-footer,.rx-print,.wp-block-buttons,.rx-hero::after{display:none!important}
  body{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .rx-hero{min-height:auto!important;padding-block:48px 24px!important}
  .rx-section,.rx-showcase,.rx-band{padding-block:32px!important;break-inside:avoid-page}
  .rx-card{break-inside:avoid}
  .rx-reveal{opacity:1!important;transform:none!important}
  .rx-hero__bg img{animation:none!important}
}

.rx-phase{margin-top:clamp(56px,8vw,96px)!important;font-size:15px!important}
.rx-feature{margin-top:clamp(28px,4vw,48px)!important;align-items:center!important;gap:clamp(24px,4vw,56px)!important}
.rx-feature--flip{flex-direction:row-reverse}
.rx-feature__title{font-size:clamp(22px,2.4vw,30px)}
.rx-shot{margin:0!important}
.rx-shot img{width:100%;height:auto;border-radius:var(--radius-md,8px);box-shadow:0 0 0 1px var(--color-neutral-800),var(--shadow-lg)}
.rx-shot figcaption{margin-top:10px!important;font-size:12px;letter-spacing:.06em;color:var(--color-neutral-400);text-align:left}
.rx-ticks{list-style:none;padding:0!important;margin:16px 0!important;display:flex;flex-direction:column;gap:10px}
.rx-ticks li{position:relative;padding-left:20px;font-size:15px;color:var(--color-neutral-300)}
.rx-ticks li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:2px;background:var(--color-accent)}
.rx-ticks strong{color:var(--color-text);font-weight:500}
.rx-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0!important}
.rx-tags span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:6px;color:var(--color-accent-200);background:var(--color-accent-900)}
@media (max-width:781px){.rx-feature--flip{flex-direction:column}}

/* Buttons */
.wp-block-buttons{gap:10px}
.wp-block-button__link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:background .15s,color .15s,border-color .15s}
.wp-block-button__link:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent)!important;color:var(--color-accent-300)!important}
.wp-block-button__link:active{background:color-mix(in srgb,var(--color-accent) 22%,transparent)!important}
.rx-btn-quiet .wp-block-button__link{border-color:var(--color-divider)!important;color:var(--color-text)!important}
.rx-btn-quiet .wp-block-button__link:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent)!important;color:var(--color-text)!important}
.rx-btn-ghost .wp-block-button__link{border-color:transparent!important;padding-inline:6px!important}
.rx-btn-ghost .wp-block-button__link::after{content:"→";transition:transform .15s}
.rx-btn-ghost .wp-block-button__link:hover::after{transform:translateX(3px)}

/* Forms */
.rx-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:clamp(20px,3vw,32px);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}
.rx-field--full,.rx-form .rx-notice,.rx-form .rx-actions{grid-column:1/-1}
@media (max-width:600px){.rx-form{grid-template-columns:1fr}}
.rx-field label,#loginform label{display:block;margin-bottom:6px;font-size:12px;color:color-mix(in srgb,var(--color-text) 70%,transparent)}
.rx-input,#loginform input[type=text],#loginform input[type=password]{width:100%;min-height:44px;padding:9px 12px;font:inherit;font-size:15px;color:var(--color-text);caret-color:var(--color-accent);background:var(--color-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);transition:border-color .15s;box-sizing:border-box}
.rx-input:hover,#loginform input[type=text]:hover,#loginform input[type=password]:hover{border-color:color-mix(in srgb,var(--color-text) 45%,transparent)}
.rx-input:focus-visible,#loginform input:focus-visible{border-color:var(--color-accent);outline-offset:0}
textarea.rx-input{min-height:150px;resize:vertical}
.rx-submit,#loginform .button-primary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 22px;font:inherit;font-size:14px;font-weight:500;cursor:pointer;color:var(--color-accent);background:transparent;border:1px solid var(--color-accent);border-radius:var(--radius-md);transition:background .15s}
.rx-submit:hover,#loginform .button-primary:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}
.rx-submit:active,#loginform .button-primary:active{background:color-mix(in srgb,var(--color-accent) 22%,transparent)}
.rx-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.rx-notice{padding:12px 14px;border-radius:var(--radius-md);font-size:14px;background:var(--color-accent-900);color:var(--color-accent-200)}
.rx-notice--error{background:var(--color-neutral-900);color:var(--color-neutral-200)}
.rx-address{margin-top:32px}
.rx-address>*{margin-block:0}
.rx-address>*+*{margin-block-start:10px}
.rx-address h3{margin-bottom:12px}
.rx-address p{color:var(--color-neutral-300)}

/* Generic pages */
.rx-page-head{padding-block:clamp(48px,7vw,96px) 24px}
.rx-page-head h1,.rx-page-head .wp-block-post-title{font-size:clamp(36px,4.4vw,56px)}
.rx-page-body{padding-bottom:clamp(64px,8vw,112px)}
.rx-prose{max-width:760px}
.rx-prose h2{font-size:22px;margin-top:44px}
.rx-prose p,.rx-prose li{color:var(--color-neutral-300)}
.rx-prose li+li{margin-top:6px}
.rx-posts{gap:16px}
.wp-block-post-date{font-size:12px;letter-spacing:.06em;color:var(--color-neutral-500)}
.wp-block-post-title a{color:var(--color-text);text-decoration:none}
.wp-block-post-title a:hover{color:var(--color-accent-300)}
.wp-block-query-pagination{margin-top:40px;gap:12px}

/* Customer portal */
.rx-portal{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:28px clamp(20px,4vw,40px) 32px;background:radial-gradient(50% 60% at 50% 0%,color-mix(in srgb,var(--color-section-glow) 60%,transparent),transparent 70%),var(--color-bg)}
.rx-portal__brand{width:100%;max-width:1160px}
.rx-portal>.wp-block-post-content{flex:1;display:grid;place-items:center;width:100%;padding-block:40px}
.rx-portal-card{width:min(420px,100%);padding:36px 32px;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}
.rx-portal-card>*{margin-block:0}
.rx-portal-card>*+*{margin-block-start:12px}
.rx-portal-card h1{font-size:30px}
.rx-portal__foot{font-size:12px;color:var(--color-neutral-500)}
#loginform{margin-top:20px}
#loginform p{margin:0 0 14px}
#loginform .login-remember label{display:flex;align-items:center;gap:8px;font-size:13px}
#loginform input[type=checkbox]{accent-color:var(--color-accent);width:16px;height:16px}
#loginform .button-primary{width:100%}
.rx-login__lost{font-size:13px;margin-top:4px}

/* Footer */
.rx-footer{position:relative;padding-block:72px 32px}
.rx-footer::before,.rx-footer__bottom::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:var(--rx-rule)}
.rx-footer__top{gap:40px!important}
.rx-footer .wp-block-site-logo img{max-height:44px;width:auto}
.rx-footer p,.rx-footer li{font-size:14px;color:var(--color-neutral-400)}
.rx-footer .wp-block-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.rx-footer a:not(.wp-block-button__link){color:var(--color-neutral-300);text-decoration:none}
.rx-footer a:not(.wp-block-button__link):hover{color:var(--color-accent-300)}
.rx-footer__bottom{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:56px!important;padding-top:24px}
.rx-footer__bottom p{margin:0;font-size:13px}
.rx-footer__links{display:flex;flex-wrap:wrap;gap:20px}

.rx-field--captcha .rx-input{max-width:160px}
.rx-captcha{min-height:65px}
/* Legacy light blocks (content from a previous light theme) */
.rx-legacy-light{background:linear-gradient(160deg,var(--color-surface),color-mix(in srgb,var(--color-section) 55%,var(--color-bg)))!important;color:var(--color-text)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--color-neutral-800)!important;background-image:linear-gradient(160deg,var(--color-surface),color-mix(in srgb,var(--color-section) 55%,var(--color-bg)))!important}
.rx-legacy-light :is(h1,h2,h3,h4,h5,h6){color:var(--color-text)!important}
.rx-legacy-light p,.rx-legacy-ink{color:var(--color-neutral-200)!important}
.rx-legacy-light :is(.has-small-font-size,p:first-child:not(:only-child)){letter-spacing:.14em}
.rx-legacy-dim{background-color:var(--color-bg)!important;opacity:.6!important}
.rx-legacy-btn{background:transparent!important;color:var(--color-accent-200)!important;border:1px solid var(--color-accent)!important;border-radius:var(--radius-md)!important;width:auto!important;min-height:44px;padding:10px 22px!important;display:inline-flex!important;align-items:center;justify-content:center;transition:background .2s}
.rx-legacy-btn:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent)!important}
.rx-legacy-btn:active{background:color-mix(in srgb,var(--color-accent) 22%,transparent)!important}
.rx-legacy-light .wp-block-button,.rx-legacy-light .wp-block-buttons{width:auto!important;justify-content:inherit}
/* Map */
.rx-map{position:relative;margin-top:clamp(28px,4vw,48px);border-radius:8px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--color-neutral-800),var(--shadow-sm);aspect-ratio:16/7;min-height:280px}
.rx-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.35) brightness(.85) contrast(1.05)}
/* Plugin forms (Contact Form 7, WPForms, Forminator, Gravity, Ninja, Elementor…) styled like the theme form */
:is(.wp-block-post-content,.entry-content) form:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper form,.nf-form-layout form,.elementor-form,.kb-form,.rx-plugin-form){padding:clamp(20px,3vw,32px)!important;border-radius:var(--radius-lg)!important;background:var(--color-surface)!important;box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--color-neutral-800)!important;max-width:100%}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) label{display:block!important;margin:0 0 6px!important;font-size:12px!important;font-weight:500!important;color:color-mix(in srgb,var(--color-text) 70%,transparent)!important}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=date],select,textarea){width:100%!important;max-width:100%!important;min-height:44px!important;padding:9px 12px!important;font:inherit!important;font-size:15px!important;color:var(--color-text)!important;caret-color:var(--color-accent);background:var(--color-bg)!important;border:1px solid var(--color-neutral-800)!important;border-radius:var(--radius-md)!important;box-shadow:none!important;transition:border-color .2s}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) :is(input,select,textarea):hover{border-color:color-mix(in srgb,var(--color-text) 45%,transparent)!important}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) :is(input,select,textarea):focus{border-color:var(--color-accent)!important;outline:none!important}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) textarea{min-height:150px!important;resize:vertical}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) :is(input[type=submit],button[type=submit],.wpforms-submit,.forminator-button-submit,.gform_button,.elementor-button){display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;min-height:44px!important;padding:10px 22px!important;font:inherit!important;font-size:14px!important;font-weight:500!important;cursor:pointer;color:var(--color-accent-200)!important;background:transparent!important;border:1px solid var(--color-accent)!important;border-radius:var(--radius-md)!important;box-shadow:none!important;transition:background .2s}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) :is(input[type=submit],button[type=submit],.wpforms-submit,.forminator-button-submit,.gform_button,.elementor-button):hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent)!important}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) :is(input[type=submit],button[type=submit]):active{background:color-mix(in srgb,var(--color-accent) 22%,transparent)!important}
.wpcf7-form p{margin:0 0 16px!important}
.wpcf7-form br{display:none}
.wpcf7-form .wpcf7-form-control-wrap{display:block;margin-top:6px}
.wpcf7-form .wpcf7-not-valid-tip,.wpforms-error{font-size:12px!important;color:#f0a3b0!important;margin-top:6px}
.wpcf7-form .wpcf7-response-output{margin:16px 0 0!important;padding:12px 14px!important;border:0!important;border-radius:var(--radius-md);font-size:14px;background:var(--color-accent-900);color:var(--color-accent-200)}
.wpcf7-spinner{background-color:var(--color-accent)!important}
:is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.elementor-form,.rx-plugin-form) .g-recaptcha,.wpcf7-form .wpcf7-recaptcha{margin:4px 0 16px;border-radius:4px;overflow:hidden;width:max-content;max-width:100%}
/* Product image rows + gallery */
.rx-media{margin-top:clamp(36px,5vw,64px)!important;gap:clamp(24px,4vw,56px);grid-template-columns:55% auto}
.rx-media.has-media-on-the-right{grid-template-columns:auto 55%}
.rx-media .wp-block-media-text__content{padding:0!important}
.rx-media .wp-block-media-text__media img{border-radius:8px;aspect-ratio:16/10;object-fit:cover;mix-blend-mode:lighten}
.rx-media h3{font-size:clamp(22px,2.4vw,30px);font-weight:500;margin:0 0 10px}
.rx-media p:not(.rx-kicker){color:var(--color-neutral-300)}
@media (max-width:600px){.rx-media.is-stacked-on-mobile .wp-block-media-text__content{padding-top:20px!important}}
.rx-gallery{margin-top:clamp(28px,4vw,48px)!important;gap:12px!important}
.rx-gallery .wp-block-image img{border-radius:8px;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}
.rx-gallery .wp-block-image{overflow:hidden;border-radius:8px}
.rx-gallery .wp-block-image:hover img{transform:scale(1.03)}
/* Home page video: behind the headline */
.rx-hero__video{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:62% 40%;opacity:0;transition:opacity 1s ease;pointer-events:none}
.rx-hero.is-video-playing .rx-hero__video{opacity:1}
.rx-hero.is-video-playing .rx-hero__bg{opacity:0;transition:opacity 1s ease}
.rx-vid-sound{position:absolute;z-index:2;right:max(clamp(16px,3vw,40px),env(safe-area-inset-right));bottom:clamp(16px,3vw,32px);min-height:44px;padding:10px 16px;font:500 13px/1 inherit;font-family:inherit;color:var(--color-text);background:color-mix(in srgb,var(--color-bg) 60%,transparent);border:1px solid color-mix(in srgb,var(--color-text) 30%,transparent);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;opacity:0;visibility:hidden;transition:opacity .4s,background .2s,border-color .2s}
.is-video-playing>.rx-vid-sound{opacity:1;visibility:visible}
.rx-vid-sound:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 18%,var(--color-bg))}
.rx-vid-sound:active{background:color-mix(in srgb,var(--color-accent) 30%,var(--color-bg))}
.rx-vid-sound[aria-pressed="true"]{border-color:var(--color-accent);color:var(--color-accent-200)}
.rx-hero:has(.rx-vid-sound) .rx-facts{padding-right:120px}
/* Home page video: as a section */
.rx-video-section{padding-block:clamp(48px,7vw,96px) 0}
.rx-video-section__inner{max-width:var(--wp--style--global--wide-size,1200px);margin-inline:auto}
.rx-video-frame{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);box-shadow:var(--shadow-md);aspect-ratio:16/9}
.rx-video-frame video{display:block;width:100%;height:100%;object-fit:cover;background:var(--color-bg)}
.rx-video-frame .rx-vid-sound{top:14px;bottom:auto;right:14px}
.rx-video-frame.is-video-playing .rx-vid-sound{opacity:1;visibility:visible}
@media (max-width:781px){
  .rx-hero:has(.rx-vid-sound) .rx-facts{padding-right:0;padding-bottom:56px}
  .rx-video-frame{border-radius:var(--radius-md)}
  .rx-video-frame video{object-fit:contain}
}
/* Splash video */
.rx-splash-lock,.rx-splash-lock body{overflow:hidden}
.rx-splash{position:fixed;inset:0;height:100vh;height:100dvh;overscroll-behavior:contain;touch-action:none;z-index:100000;background:var(--color-bg);display:grid;place-items:center;transition:opacity .7s ease,visibility .7s}
.rx-splash.is-out{opacity:0;visibility:hidden;pointer-events:none}
.rx-splash__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}
.rx-splash.is-playing .rx-splash__video{opacity:1}
.rx-splash.is-contain .rx-splash__video{object-fit:contain}
.rx-splash__video::-webkit-media-controls{display:none!important}
.rx-splash__loader{position:relative;display:flex;flex-direction:column;align-items:center;gap:22px;transition:opacity .4s}
.rx-splash.is-playing .rx-splash__loader{opacity:0}
.rx-splash__loader img{width:min(220px,50vw);height:auto}
.rx-splash__bar{width:160px;height:2px;border-radius:2px;background:var(--color-neutral-800);overflow:hidden}
.rx-splash__bar span{display:block;height:100%;width:0;background:var(--color-accent);box-shadow:0 0 12px var(--color-accent);transition:width .3s}
.rx-splash__controls{position:absolute;right:max(clamp(16px,3vw,32px),env(safe-area-inset-right));bottom:max(clamp(20px,4vw,40px),calc(env(safe-area-inset-bottom) + 16px));display:flex;gap:10px}
@media (max-width:767px){.rx-splash__controls{left:16px;right:16px;justify-content:space-between}.rx-splash__btn{flex:1;justify-content:center}}
.rx-splash__btn{font:500 14px/1 var(--font-body,Inter,sans-serif);color:var(--color-text);background:color-mix(in srgb,var(--color-bg) 55%,transparent);border:1px solid var(--color-accent);border-radius:8px;padding:12px 16px;min-height:44px;cursor:pointer;backdrop-filter:blur(6px);transition:background .2s}
.rx-splash__btn:hover{background:color-mix(in srgb,var(--color-accent) 22%,var(--color-bg))}
.rx-splash__btn:active{background:color-mix(in srgb,var(--color-accent) 34%,var(--color-bg))}
.rx-splash__btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
.rx-splash__progress{position:absolute;left:0;right:0;bottom:env(safe-area-inset-bottom,0);height:2px;background:transparent}
.rx-splash__progress span{display:block;height:100%;width:0;background:var(--color-accent)}

/* ---------- Portable devices ---------- */
/* Hover-only effects stay off touch screens (no sticky hover states). */
@media (hover:none){
  .rx-card:hover{transform:none;box-shadow:var(--shadow-sm)}
  .rx-card:hover::after,.rx-card:hover::before{opacity:0}
  .rx-card:hover .rx-card__img img,.rx-gallery .wp-block-image:hover img{transform:none}
  .rx-card:active{box-shadow:var(--shadow-md)}
}
/* Tablets */
@media (max-width:1100px){
  .rx-hero::after{opacity:.6}
}
/* Phones */
@media (max-width:781px){
  .rx-hero{min-height:min(88svh,760px);padding-block:clamp(104px,28vw,140px) 28px}
  .rx-hero--page{min-height:0;padding-block:112px 40px}
  .rx-hero::before{background:linear-gradient(0deg,var(--color-bg) 8%,color-mix(in srgb,var(--color-bg) 72%,transparent) 55%,color-mix(in srgb,var(--color-bg) 35%,transparent))}
  .rx-hero::after{width:300px;right:-110px;top:8%;opacity:.45}
  .rx-hero__bg img,.rx-showcase__bg img{animation:none;transform:none;object-position:62% 40%}
  .rx-hero h1{font-size:clamp(38px,11vw,52px);max-width:none}
  .rx-hero--page h1{font-size:clamp(34px,9.6vw,46px)}
  .rx-hero .wp-block-buttons{margin-top:26px}
  .rx-facts{gap:18px 16px!important;margin-top:44px!important}
  .rx-showcase{padding-block:96px 64px}
  .rx-showcase__bg{height:min(62%,520px)}
  .rx-showcase::before,.rx-showcase--flip::before{background:linear-gradient(0deg,var(--color-bg) 40%,color-mix(in srgb,var(--color-bg) 60%,transparent) 75%,color-mix(in srgb,var(--color-bg) 40%,transparent))}
  .rx-showcase h2{font-size:clamp(28px,8vw,38px)}
  .rx-section{padding-block:64px}
  .rx-section--tight{padding-block-start:0}
  .rx-band{padding-block:64px}
  .rx-band .rx-split{gap:20px!important}
  .rx-card{padding:22px 20px}
  .rx-card--media{padding:10px 10px 22px}
  .rx-card--media>:not(.rx-card__img){padding-inline:10px}
  .rx-ico::before{margin-bottom:16px}
  .rx-cards,.rx-grid{margin-top:32px!important}
  .rx-lede{font-size:17px}
  .rx-split{gap:28px!important}
  .rx-map{aspect-ratio:4/3;min-height:240px}
  .rx-footer{padding-block:56px calc(24px + env(safe-area-inset-bottom))}
  .rx-footer__top{gap:32px!important}
  .rx-footer__bottom{flex-direction:column;margin-top:40px!important}
  .rx-footer__links{gap:6px 18px}
  .rx-footer__links a,.rx-footer .wp-block-list a{display:inline-flex;align-items:center;min-height:40px}
  .rx-portal-card{padding:28px 22px}
  .rx-prose h2{font-size:20px;margin-top:36px}
  /* Full-width actions are easier to hit with a thumb */
  .rx-hero .wp-block-buttons,.rx-band .wp-block-buttons{flex-direction:column;align-items:stretch}
  .rx-hero .wp-block-button__link,.rx-band .wp-block-button__link{justify-content:center;width:100%}
  .rx-form{padding:20px}
  .rx-form .rx-submit{width:100%}
}
/* Small phones (iPhone SE, 320–374px) */
@media (max-width:374px){
  .wp-block-group.alignfull{padding-inline:16px!important}
  .rx-hero h1{font-size:36px}
  .rx-facts{grid-template-columns:1fr!important}
  .rx-chips li{font-size:14px;padding:8px 12px}
}
/* Short landscape phones */
@media (max-height:500px) and (orientation:landscape){
  .rx-hero{min-height:0;padding-block:96px 32px}
  .rx-hero::after{display:none}
}
/* Inputs at 16px stop iOS zooming in on focus */
@media (max-width:1024px){
  .rx-input,#loginform input[type=text],#loginform input[type=password],
  :is(.wpcf7-form,.wpforms-form,.forminator-custom-form,.gform_wrapper,.nf-form-layout,.elementor-form,.kb-form,.rx-plugin-form) :is(input,select,textarea){font-size:16px!important}
}
/* Notch-safe edges when the phone is in landscape */
@media (orientation:landscape) and (max-width:1100px) and (hover:none){
  .rx-header,.wp-block-group.alignfull.has-global-padding{padding-left:max(var(--wp--style--root--padding-left,20px),env(safe-area-inset-left));padding-right:max(var(--wp--style--root--padding-right,20px),env(safe-area-inset-right))}
}
/* Data saver / slow connection: drop decorative motion */
.rx-lite .rx-hero__bg img,.rx-lite .rx-hero::after{animation:none!important}
.rx-lite .rx-reveal{opacity:1;transform:none;transition:none}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
