/* Royal Server · Framed Halloween. Sparse border ornaments, readable content. */
html.royal-halloween body .hw-frame-panel {
  --frame-line:#78516c;position:relative!important;isolation:isolate;min-width:0!important;
  padding:clamp(25px,3.1vw,42px)!important;border:1px solid #84576d70!important;
  border-radius:22px!important;background:radial-gradient(ellipse at 100% 0,#58386612,transparent 60%),linear-gradient(135deg,#18111e,#100d17)!important;
  box-shadow:0 18px 50px #0002,inset 0 1px #ffd2ab06!important;overflow:visible!important;
}
html.royal-halloween body .hw-frame-panel::before {
  content:""!important;position:absolute!important;inset:6px!important;z-index:-1!important;
  width:auto!important;height:auto!important;border:1px solid #ae8bb50e!important;border-radius:16px!important;
  background:none!important;filter:none!important;transform:none!important;pointer-events:none!important;
}
html.royal-halloween body .hw-frame-panel::after {
  content:""!important;position:absolute!important;inset:-1px!important;z-index:-1!important;width:auto!important;height:auto!important;
  background:linear-gradient(90deg,#e4a96f,#e4a96f00) top left/110px 1px no-repeat,linear-gradient(180deg,#e4a96f,#e4a96f00) top left/1px 80px no-repeat,linear-gradient(270deg,#ad85d5,#ad85d500) bottom right/110px 1px no-repeat,linear-gradient(0deg,#ad85d5,#ad85d500) bottom right/1px 80px no-repeat,url('frame-web.svg') top right/112px 112px no-repeat!important;
  border:0!important;border-radius:inherit!important;opacity:1!important;filter:none!important;transform:none!important;pointer-events:none!important;
}
html.royal-halloween body .hw-frame-decorated {margin-top:30px!important}
html.royal-halloween body :is(.seo-vps-section,.seo-colo-section,.seo-dedicated-section,.any-os-final-section,.os-section,.royal-rdns-showcase) {padding-top:48px!important;padding-bottom:48px!important}
html.royal-halloween body .hw-frame-ornament {
  display:block!important;position:absolute!important;z-index:4;top:-35px!important;right:25px!important;
  width:68px!important;height:68px!important;margin:0!important;padding:0!important;border:0!important;
  background:none!important;box-shadow:none!important;pointer-events:none!important;line-height:0!important;
}
html.royal-halloween body .hw-frame-ornament>img {
  display:block!important;position:static!important;inset:auto!important;width:100%!important;height:100%!important;
  max-width:100%!important;object-fit:contain!important;object-position:center!important;margin:0!important;padding:0!important;
  background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;
  filter:drop-shadow(0 5px 9px #0006)!important;pointer-events:none!important;
}
html.royal-halloween body .hw-frame-pumpkin {top:-33px!important;width:66px!important;height:66px!important}

/* Smaller cards have the same material and a fine copper/violet edge. */
html.royal-halloween body .rh-surface:not(.rs-product-card):not(.rs-vps-row),
html.royal-halloween body :is(.ddos-feature-image,.rdns-feature-strip>div,.os-card,.showcase-board) {
  border:1px solid #825d775b!important;border-radius:15px!important;
  background:radial-gradient(ellipse at 100% 0,#6747720b,transparent 65%),linear-gradient(145deg,#1a1322,#100d17)!important;
  box-shadow:0 7px 25px #0002,inset 0 1px #eac7d606!important;
}
html.royal-halloween body .rh-surface:not(.rs-product-card):not(.rs-vps-row):hover {border-color:#b68c7977!important;box-shadow:0 10px 32px #0003!important}
html.royal-halloween body .hw-frame-panel.rh-surface {border-radius:22px!important;padding:clamp(25px,3.1vw,42px)!important;border-color:#84576d70!important}
html.royal-halloween body :is(.hw-frame-panel,.rh-surface) p {font-family:RoyalSpace,Inter,system-ui,sans-serif!important;font-weight:400!important;line-height:1.85!important;color:#bfb0ca!important}
html.royal-halloween body .hw-frame-panel p {font-size:14px!important}
html.royal-halloween body .hw-frame-panel h2 {font-family:RoyalSpace,Inter,sans-serif!important;font-size:clamp(27px,3vw,38px)!important;line-height:1.25!important;font-weight:700!important;letter-spacing:-.035em!important;color:#f7e9d8!important}
html.royal-halloween body .hw-frame-panel h2 :is(span,strong) {color:#eeb174!important;background:none!important;-webkit-text-fill-color:#eeb174!important;text-shadow:none!important}
html.royal-halloween body :is(.section-title,.section-head h2,.section-header h2,.rdns-showcase-head h2,.any-os-head h2,.plans-wow-head h2) :is(span,strong) {color:#eeb174!important;-webkit-text-fill-color:#eeb174!important;background:none!important;text-shadow:none!important}
html.royal-halloween body :is(.os-icon,.os-mark,.feature-icon,.feature-number,.step-number,.cross-icon,.workflow-item>strong,.vpn-feature-icon) {background:linear-gradient(145deg,#423041,#241a30)!important;color:#f3c38f!important;border:1px solid #c0937742!important;box-shadow:none!important}
html.royal-halloween body :is(.ddos-check-list>div,.carrier-list>div) {background:#17111f!important;border-color:#986d9b39!important;color:#d9c6df!important;border-radius:9px!important}
html.royal-halloween body :is(.section-badge,.os-custom-badge,.any-os-ready,.feature-number) {color:#e4bc8f!important;background:#39233a70!important;border-color:#af7f8f3b!important;box-shadow:none!important}
html.royal-halloween body :is(.ddos-feature-image,.rdns-panel-card)>img {border-radius:10px!important}
html.royal-halloween body .ddos-feature-copy h3 {color:#f6e8d8!important;font-family:RoyalSpace,Inter,sans-serif!important;letter-spacing:-.025em!important}

/* No portraits beside individual options or products. */
html.royal-halloween body :is(.hw-story-art,.hw-product-character,.hw-page-ghost,.hw-page-pumpkins,.hw-heading-ghost) {display:none!important}
html.royal-halloween body :is(.rs-products-grid,.rs-vps-cpu-products,.cpu-plan-group,.rs-premium-grid) {row-gap:20px!important;padding-top:0!important}
html.royal-halloween body :is(.rs-sf-main,.vps-name,.storage-name) {padding-right:0!important}
html.royal-halloween body :is(.rs-sf-price,.vps-price,.storage-price,.rs-price-now b) {font-family:RoyalSpace,Inter,sans-serif!important;font-weight:700!important;font-size:31px!important;letter-spacing:-.04em!important;color:#efb475!important;-webkit-text-fill-color:#efb475!important}
html.royal-halloween body.hw-dedicated-page #rsProductsGrid .hw-server-card {border-radius:15px!important;border:1px solid #825d775b!important;background:linear-gradient(145deg,#1a1322,#100d17)!important;box-shadow:0 7px 25px #0002!important}
html.royal-halloween body.hw-dedicated-page #rsProductsGrid .hw-server-heading {padding-right:0!important}
html.royal-halloween body .hw-interactive-card {position:relative;isolation:isolate;transform:perspective(1200px) rotateX(var(--hw-rx,0deg)) rotateY(var(--hw-ry,0deg)) translateY(var(--hw-lift,0px))!important;transition:transform .25s,border-color .25s,box-shadow .25s!important}
html.royal-halloween body .hw-interactive-card>.hw-card-aura {background:radial-gradient(circle at var(--hw-light-x,80%) var(--hw-light-y,0%),#ac84c515,transparent 58%);opacity:.3}
html.royal-halloween body .hw-interactive-card:is(:hover,:focus-within)>.hw-card-aura {opacity:1}
html.royal-halloween body.hw-product-motion .hw-inview .hw-cta-shine {animation:none!important}
html.royal-halloween body.hw-product-motion .hw-animated-cta:is(:hover,:focus-visible) .hw-cta-shine {animation:hw-cta-sweep 1.1s ease-out!important}
html.royal-halloween body:not(.hw-product-motion) .hw-interactive-card {transform:none!important}

/* rDNS examples remain intact and evenly framed. */
html.royal-halloween body .rdns-showcase-grid {align-items:stretch!important;gap:20px!important}
html.royal-halloween body .rdns-panel-card {padding:22px!important}
html.royal-halloween body .rdns-panel-card::after {display:none!important}
html.royal-halloween body .rdns-panel-card>img {width:100%!important;height:auto!important;aspect-ratio:16/10;object-fit:contain!important;background:#09080e!important;border:1px solid #81617d3d!important;box-shadow:none!important}
html.royal-halloween body .rdns-panel-copy {padding-top:20px!important}
html.royal-halloween body .rdns-panel-copy>small {color:#b89cc8!important}
html.royal-halloween body .rdns-panel-copy h3 {font:700 21px/1.35 RoyalSpace,Inter,sans-serif!important;color:#f6e4cd!important;margin:0 0 11px!important}
html.royal-halloween body .rdns-panel-copy p {font-size:13px!important}
html.royal-halloween body .rdns-feature-strip>div {padding:17px!important}
html.royal-halloween body .rdns-feature-strip strong {font:700 16px/1.4 RoyalSpace,Inter,sans-serif!important;color:#efd8bc!important}
html.royal-halloween body .rdns-feature-strip span {color:#b7a7c3!important}
html.royal-halloween body :is(.rdns-main-btn,.rdns-reseller-main-btn) {background:linear-gradient(110deg,#f2b974,#e89448)!important;color:#2d180c!important;border-color:#e9b47a60!important}
html.royal-halloween body :is(.rdns-second-btn,.rdns-reseller-second-btn) {background:#281c31!important;color:#e7d6ef!important;border-color:#a27eaf42!important}
html.royal-halloween body .os-grid {display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}
html.royal-halloween body .os-grid>.os-card {min-width:0!important;width:auto!important;padding:20px 12px!important}
html.royal-halloween body .os-grid>.os-card strong {max-width:100%;overflow-wrap:anywhere;white-space:normal!important}
html.royal-halloween body .game-terminal {min-width:0!important}
html.royal-halloween body .game-terminal>.console-card {max-width:100%!important}

/* Homepage and footer: deliberate scenes instead of a character on each card. */
html.royal-halloween body .hw-service-card {min-height:0!important;padding:26px!important;border-radius:15px!important;background:linear-gradient(145deg,#1c1424,#110d19)!important;border-color:#88607b5e!important}
html.royal-halloween body .hw-service-card>small,html.royal-halloween body .hw-service-card>h3,html.royal-halloween body .hw-service-card>p {padding-right:0!important;max-width:none!important}
html.royal-halloween body .hw-service-card>h3 {font-family:RoyalSpace,Inter,sans-serif!important;font-weight:700!important;line-height:1.3!important;letter-spacing:-.03em!important;font-size:23px!important}
html.royal-halloween body .hw-service-head {margin-bottom:24px!important}
html.royal-halloween body .hw-service-head::after {display:none!important}
html.royal-halloween body .hw-service-character {display:none!important}
html.royal-halloween body .hw-service-specs {margin-top:22px!important}
html.royal-halloween body .hw-shield-emblem {position:relative;z-index:2;width:158px;height:158px;stroke:#e8b47d;filter:drop-shadow(0 0 20px #bd8a5919)}
html.royal-halloween body .hw-shield-panel {gap:35px!important;border-radius:22px!important}
html.royal-halloween body .hw-final-cta {margin-top:65px!important;padding:28px 0 32px!important;border:0!important;background:none!important;overflow:visible!important}
html.royal-halloween body .hw-final-inner {display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:30px!important;min-height:0!important;padding:35px!important}
html.royal-halloween body .hw-footer-ornament {position:absolute!important;top:-35px;right:28px;width:68px;height:68px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 5px 8px #0006)}
html.royal-halloween body .hw-final-copy h2 {font-family:RoyalSpace,Inter,sans-serif!important;font-size:clamp(27px,3vw,38px)!important;font-weight:700!important;line-height:1.2!important;letter-spacing:-.035em!important}
html.royal-halloween body .hw-final-copy h2 br {display:none}
html.royal-halloween body .hw-final-copy h2 span {margin-left:8px}
html.royal-halloween body .hw-final-copy .hw-kicker {font-size:8px!important;margin-bottom:12px!important}
html.royal-halloween body .hw-final-copy>p:not(.hw-kicker) {margin-bottom:0!important;max-width:none!important}
html.royal-halloween body .hw-final-cta .hw-web {display:none!important}
html.royal-halloween body.rh-motion :is(.hw-frame-ornament,.hw-footer-ornament).hw-inview {animation:hw-frame-float 7s ease-in-out infinite}
@keyframes hw-frame-float {0%,100%{translate:0 0}50%{translate:0 -3px}}
@media(max-width:1100px) and (min-width:701px) {html.royal-halloween body .os-grid {grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:700px) {
  html.royal-halloween body .hw-frame-panel {padding:25px 19px!important;border-radius:17px!important}
  html.royal-halloween body .hw-frame-panel.rh-surface {padding:25px 19px!important;border-radius:17px!important}
  html.royal-halloween body .hw-frame-panel::before {inset:5px!important;border-radius:12px!important}
  html.royal-halloween body .hw-frame-ornament {right:18px!important;top:-31px!important;width:58px!important;height:58px!important}
  html.royal-halloween body .hw-frame-pumpkin {top:-29px!important}
  html.royal-halloween body .hw-frame-panel p {font-size:13px!important}
  html.royal-halloween body .rdns-panel-card {padding:17px!important}
  html.royal-halloween body .rdns-panel-copy h3 {font-size:19px!important}
  html.royal-halloween body .os-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  html.royal-halloween body .hw-final-inner {grid-template-columns:minmax(0,1fr)!important;gap:22px!important;padding:29px 23px!important}
  html.royal-halloween body .hw-final-inner .hw-button {justify-self:start}
  html.royal-halloween body .hw-footer-ornament {width:58px;height:58px;right:20px;top:-30px}
  html.royal-halloween body .hw-final-copy h2 span {margin-left:0;display:block}
  html.royal-halloween body .hw-service-card {padding:24px!important}
}
@media(prefers-reduced-motion:reduce) {
  html.royal-halloween body :is(.hw-frame-ornament,.hw-footer-ornament) {animation:none!important}
  html.royal-halloween body .hw-interactive-card {transform:none!important;transition:none!important}
}
