/* Brandwein Remy Laser Pages · scoped styles only; does not modify site theme. */
.drb-remy{--drb-navy:#102a46;--drb-ink:#142e46;--drb-muted:#516578;--drb-teal:#07a6b6;--drb-teal-light:#ddf8f7;--drb-line:#dce8ed;--drb-bg:#f6fafb;font-family:inherit;color:var(--drb-ink);font-size:17px;line-height:1.68;width:100vw;max-width:none;margin:0 calc(50% - 50vw) 0;overflow:hidden;box-sizing:border-box}
.drb-remy *{box-sizing:border-box}
.drb-remy a{text-decoration:none}
.drb-remy p{line-height:1.75;margin:0 0 18px;color:var(--drb-muted)}
.drb-remy h1,.drb-remy h2,.drb-remy h3{font-family:inherit;letter-spacing:-.03em;line-height:1.18;clear:none;text-transform:none}
.drb-remy h1{font-size:clamp(37px,4.2vw,68px);font-weight:800;color:#fff;margin:15px 0 19px;max-width:740px}
.drb-remy h2{font-size:clamp(26px,2.55vw,40px);font-weight:780;color:var(--drb-navy);margin:7px 0 22px}
.drb-remy h3{font-size:21px;font-weight:750;color:var(--drb-navy);margin:0 0 11px}
.drb-remy strong{color:inherit}
.drb-remy-hero{isolation:isolate;position:relative;min-height:460px;display:flex;align-items:center;background:radial-gradient(ellipse at 76% 40%,#1e6573 0%,transparent 44%),linear-gradient(118deg,#0c233e 4%,#133a55 58%,#116a73 130%);color:#fff;padding:72px clamp(25px,5.5vw,76px);border-radius:0;overflow:hidden}
.drb-remy-hero:before{content:"";position:absolute;width:580px;height:580px;right:-140px;bottom:-340px;border:1px solid rgba(122,249,242,.23);border-radius:50%;box-shadow:0 0 0 52px rgba(122,249,242,.025),0 0 0 122px rgba(122,249,242,.025)}
.drb-remy-hero-inner{z-index:2;max-width:745px;position:relative}
.drb-remy-eyebrow,.drb-remy-kicker{font-weight:800;font-size:12px;line-height:1.5;letter-spacing:.15em;text-transform:uppercase;color:var(--drb-teal)}
.drb-remy-eyebrow{color:#b2f9f3;display:inline-flex;align-items:center;gap:11px}
.drb-remy-pulse{height:9px;width:9px;background:#73ede1;border-radius:50%;box-shadow:0 0 0 5px #73ede120}
.drb-remy .drb-remy-lede{color:#e1eff5;font-size:clamp(17px,1.5vw,21px);line-height:1.65;max-width:620px;margin-bottom:28px}
.drb-remy-hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-bottom:27px}
.drb-remy .drb-remy-btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;border:1px solid transparent;font-size:15px;font-weight:800;line-height:1.3;padding:14px 21px;border-radius:10px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;text-decoration:none;white-space:normal;text-align:center}
.drb-remy .drb-remy-btn:hover,.drb-remy .drb-remy-btn:focus-visible{transform:translateY(-2px);box-shadow:0 10px 25px #051b2c30}
.drb-remy .drb-remy-btn-primary{color:#063349;background:#96f0e7}
.drb-remy .drb-remy-btn-primary:hover{background:#c1fbf3;color:#063349}
.drb-remy .drb-remy-btn-secondary{color:#fff;border-color:#a4dad760;background:#ffffff09}
.drb-remy .drb-remy-btn-secondary:hover{color:#fff;background:#ffffff18}
.drb-remy .drb-remy-btn-light{color:#e8fffc;border-color:#ffffff70}
.drb-remy-chips{display:flex;gap:8px;flex-wrap:wrap}
.drb-remy-chips span{border:1px solid #b0f0e142;border-radius:999px;background:#d1f8f20b;padding:5px 11px;font-size:12px;color:#d8f5f7;line-height:1.4}
.drb-remy-toplink:empty{display:none}
.drb-remy-back{display:inline-block;color:#ccfaf1!important;font-size:13px;font-weight:750;margin-bottom:22px}
.drb-remy .drb-remy-back:hover{text-decoration:underline}
.drb-remy-art{position:absolute;right:-40px;top:0;width:46%;height:100%;pointer-events:none;opacity:.86;z-index:1}
.drb-remy-orb{position:absolute;right:5%;top:19%;width:min(27vw,380px);height:min(27vw,380px);border-radius:50%;background:radial-gradient(circle at 38% 30%,#d1ffff,#5ed3d9 12%,#218ea6 31%,#125a76 56%,#122944 75%);box-shadow:inset -28px -25px 48px #08233eaa,inset 13px 14px 40px #dcffff50,0 0 80px #37dadd3d;border:1px solid #a7f8f580}
.drb-remy-orb:after{content:"";position:absolute;inset:19%;border:1px solid #a2fff7a1;border-radius:50%;transform:rotate(-35deg) scaleX(.67);box-shadow:0 0 0 19px #9df7ff09,0 0 0 38px #9df7ff08}
.drb-remy-orb-flare{position:absolute;top:20%;left:17%;width:25%;height:15%;border-radius:60%;background:#c5ffffaa;filter:blur(20px)}
.drb-remy-ring{position:absolute;border-radius:50%;border:1px solid #8ff5f476;transform:rotate(30deg) scaleX(.65)}
.drb-remy-ring-a{right:-5%;top:5%;width:115%;height:95%}
.drb-remy-ring-b{right:4%;top:16%;width:90%;height:70%;border-style:dashed;opacity:.45}
.drb-remy-beam{position:absolute;transform:rotate(-28deg);height:2px;width:150%;right:-13%;top:55%;background:linear-gradient(90deg,transparent,#9efaf3,transparent);box-shadow:0 0 16px #b8fef7}
.drb-remy-beam-b{top:48%;height:1px;transform:rotate(-25deg);opacity:.45}
.drb-remy-art-label{position:absolute;bottom:13%;right:17%;font-size:12px;font-weight:900;letter-spacing:.23em;text-align:right;color:#c8faf7;line-height:1.6}
.drb-remy-main{background:#fff}
.drb-remy-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--drb-line);border-top:0;border-radius:0 0 15px 15px;margin:0 clamp(21px,4.5vw,64px);padding:22px 0;background:#fff;box-shadow:0 16px 35px #14385009}
.drb-remy-intro span{padding:1px 25px;border-right:1px solid var(--drb-line)}
.drb-remy-intro span:last-child{border-right:0}
.drb-remy-intro strong{display:block;font-size:14px;font-weight:800;color:var(--drb-navy)}
.drb-remy-intro small{display:block;color:#6b7f8e;font-size:12px}
.drb-remy-section{padding:65px clamp(25px,6vw,80px);max-width:1180px;margin:0 auto}
.drb-remy-section>*:last-child{margin-bottom:0}
.drb-remy-section p,.drb-remy-section li{max-width:920px}
.drb-remy-section a:not(.drb-remy-service-card){color:#087b96;text-decoration:underline;text-underline-offset:3px}
.drb-remy-tint{max-width:none;background:var(--drb-bg);padding-left:clamp(25px,6vw,80px);padding-right:clamp(25px,6vw,80px)}
.drb-remy-section-head{max-width:830px}
.drb-remy-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px}
.drb-remy .drb-remy-service-card{display:flex;flex-direction:column;text-decoration:none;background:#fff;border:1px solid var(--drb-line);border-radius:16px;padding:25px 23px;min-height:215px;color:var(--drb-ink);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}
.drb-remy .drb-remy-service-card:hover,.drb-remy .drb-remy-service-card:focus-visible{border-color:#61c9d0;box-shadow:0 12px 28px #1a536617;transform:translateY(-3px);color:var(--drb-ink)}
.drb-remy-service-symbol{font-size:21px;width:44px;height:44px;background:var(--drb-teal-light);color:#07869e;border-radius:12px;display:flex;justify-content:center;align-items:center;margin-bottom:17px}
.drb-remy-service-card strong{font-size:18px;line-height:1.3;color:var(--drb-navy);margin-bottom:8px}
.drb-remy-service-card>span:nth-last-child(2){font-size:13.5px;line-height:1.55;color:var(--drb-muted)}
.drb-remy-service-card .drb-remy-card-link{margin-top:auto;padding-top:15px;font-size:13px;font-weight:850;color:#07889a;display:block}
.drb-remy-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.drb-remy-feature-grid>div{border-left:3px solid #52cbd2;padding:5px 13px 3px 18px}
.drb-remy-feature-grid h3{font-size:18px}
.drb-remy-feature-grid p{font-size:15px}
.drb-remy-two{display:grid;grid-template-columns:1.7fr 1fr;gap:45px;align-items:center}
.drb-remy-side-card{background:var(--drb-bg);padding:26px;border-radius:17px;border:1px solid var(--drb-line)}
.drb-remy-side-card h3{font-size:20px}
.drb-remy-checks{list-style:none!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 25px;margin:23px 0 5px!important;padding:0!important}
.drb-remy-checks li{position:relative;padding-left:31px;margin:0;color:var(--drb-muted);font-size:15.5px}
.drb-remy-checks li:before{content:'✓';position:absolute;left:0;top:0;color:#038c9f;font-weight:900}
.drb-remy-faqs{border:1px solid var(--drb-line);border-radius:16px;overflow:hidden;margin-top:25px}
.drb-remy-faq-item{border-bottom:1px solid var(--drb-line);background:#fff}
.drb-remy-faq-item:last-child{border:0}
.drb-remy-faq-item summary{position:relative;cursor:pointer;list-style:none;display:block;padding:20px 57px 20px 23px;font-size:16px;font-weight:750;line-height:1.45;color:var(--drb-navy)}
.drb-remy-faq-item summary::-webkit-details-marker{display:none}
.drb-remy-faq-item summary:after{content:'+';position:absolute;right:25px;top:15px;font-size:26px;font-weight:400;color:#108fa2}
.drb-remy-faq-item[open] summary:after{content:'−'}
.drb-remy-faq-item[open]{background:#fafdfe}
.drb-remy-faq-item summary:hover{background:#f5fbfc}
.drb-remy-faq-answer{padding:0 25px 18px}
.drb-remy-faq-answer p{font-size:15px;margin-bottom:0}
.drb-remy-callout{display:grid;grid-template-columns:2fr 1fr;gap:30px;align-items:center;margin:12px clamp(25px,6vw,80px) 25px;border-radius:19px;padding:40px;background:linear-gradient(120deg,#10304b,#086271);color:#fff}
.drb-remy-callout .drb-remy-kicker{color:#9ce8e5}
.drb-remy-callout h2{color:#fff;font-size:clamp(25px,2.5vw,35px)}
.drb-remy-callout p{color:#deeff0;font-size:15px;margin-bottom:13px}
.drb-remy-callout small{display:block;color:#d1e7ed;font-size:12px;line-height:1.6}
.drb-remy-callout-actions{display:flex;flex-direction:column;gap:10px}
.drb-remy-disclaimer{font-size:12px!important;line-height:1.6!important;color:#738694!important;padding:2px clamp(25px,6vw,80px) 25px;margin:0!important;max-width:none!important}
.drb-remy-disclaimer a{color:#386a7c;text-decoration:underline}
@media(max-width:1020px){.drb-remy-art{opacity:.45;right:-17%}.drb-remy-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drb-remy-hero{min-height:430px}}
@media(max-width:750px){.drb-remy{font-size:16px;margin-bottom:0}.drb-remy-hero{border-radius:0;padding:50px 25px;min-height:0}.drb-remy-art{opacity:.16;width:75%;right:-35%}.drb-remy-orb{width:350px;height:350px}.drb-remy h1{font-size:clamp(35px,9vw,49px)}.drb-remy-intro{grid-template-columns:1fr;padding:3px 0;margin:0 15px}.drb-remy-intro span{padding:12px 17px;border-right:0;border-bottom:1px solid var(--drb-line)}.drb-remy-intro span:last-child{border-bottom:0}.drb-remy-section{padding:47px 24px}.drb-remy-feature-grid,.drb-remy-service-grid,.drb-remy-two,.drb-remy-callout{grid-template-columns:1fr}.drb-remy-callout{margin:0 17px 20px;padding:29px 24px}.drb-remy-checks{grid-template-columns:1fr}.drb-remy-side-card{margin-top:4px}.drb-remy-faq-item summary{padding-left:16px}.drb-remy-faq-answer{padding-left:17px}.drb-remy-disclaimer{padding:5px 25px 24px}.drb-remy-hero-actions{flex-direction:column;align-items:stretch;max-width:360px}}
@media(prefers-reduced-motion:reduce){.drb-remy *{transition:none!important}}


/* v1.1: Keep the site's global header, navigation, and footer, but suppress
   only the extra page title generated by a WordPress theme. Our hero H1 stays. */
body.drb-remy-page .fusion-page-title-bar,
body.drb-remy-page .fusion-page-title-bar-wrapper,
body.drb-remy-page .page-title-bar,
body.drb-remy-page .page-title-area,
body.drb-remy-page .page-title-section,
body.drb-remy-page .titlebar,
body.drb-remy-page .entry-header,
body.drb-remy-page header.page-header,
body.drb-remy-page .post > .entry-title,
body.drb-remy-page .post > .post-title,
body.drb-remy-page .fusion-post-title,
body.drb-remy-page .wp-block-post-title,
body.drb-remy-page #main > .fusion-row > h1,
body.drb-remy-page #content > h1.entry-title {display:none!important}

/* The content is edge-to-edge even when the current theme uses a 1140px
   centered content wrapper. Avoid changing the width of the site header. */
body.drb-remy-page {overflow-x:clip}
body.drb-remy-page #main {padding-top:0!important;padding-bottom:0!important}
body.drb-remy-page #content {width:100%!important;float:none!important;max-width:none!important}
body.drb-remy-page #main #sidebar,
body.drb-remy-page #main #sidebar-2 {display:none!important}
body.drb-remy-page #main .post-content {padding-top:0!important;padding-bottom:0!important}
body.drb-remy-page #main .fusion-row {overflow:visible}
body.drb-remy-page .drb-remy {width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
body.drb-remy-page .drb-remy-hero {border-radius:0}
/* Never let default block-alignment rules confine the plugin's page shell. */
body.drb-remy-page .entry-content > .drb-remy,
body.drb-remy-page .post-content > .drb-remy,
body.drb-remy-page .wp-block-post-content .drb-remy {max-width:none!important}

@media (max-width:420px){
  .drb-remy-hero{padding:40px 19px 44px}
  .drb-remy h1{font-size:clamp(32px,9.3vw,42px)}
  .drb-remy-hero-actions{max-width:none}
  .drb-remy .drb-remy-btn{padding:14px 12px;font-size:14px}
  .drb-remy-section{padding:42px 19px}
  .drb-remy-section h2{font-size:clamp(26px,7vw,34px)}
  .drb-remy-intro{margin:0 10px}
  .drb-remy-callout{margin:0 10px 18px;padding:25px 19px}
  .drb-remy-disclaimer{padding:5px 19px 22px}
  .drb-remy-service-card{min-height:auto}
}


/* ==============================================================
   v1.2 — true full-width sections + no duplicate theme title
   ==============================================================
   Each visual band runs edge-to-edge. Reading content and cards are
   centered in a fluid max-1200px column so they remain readable on 4K.
   Applies to all seven existing pages, without rewriting post_content.
*/
body.drb-remy-page .drb-remy-standalone,
body.drb-remy-page #drb-remy-content {
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  border:0;
  overflow:visible;
  background:#fff;
}
body.drb-remy-page #drb-remy-content > p:empty {display:none}
body.drb-remy-page #drb-remy-content > .drb-remy,
body.drb-remy-page .drb-remy {
  width:100vw!important;
  max-width:none!important;
  margin:0 calc(50% - 50vw)!important;
  padding:0!important;
  overflow:clip;
}
/* All rows extend over the complete browser width; no 1180px strips. */
body.drb-remy-page .drb-remy-hero,
body.drb-remy-page .drb-remy-main,
body.drb-remy-page .drb-remy-section,
body.drb-remy-page .drb-remy-intro,
body.drb-remy-page .drb-remy-callout {
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
body.drb-remy-page .drb-remy-section {
  margin:0;
  padding:clamp(44px,5vw,76px) clamp(20px,4vw,64px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1200px) minmax(0,1fr);
  column-gap:0;
  align-content:start;
}
body.drb-remy-page .drb-remy-section > * {
  grid-column:2;
  min-width:0;
}
body.drb-remy-page .drb-remy-tint {
  background:var(--drb-bg);
}
/* Full-bleed, comfortable local-care bar under the hero. */
body.drb-remy-page .drb-remy-intro {
  margin:0;
  border-left:0;
  border-right:0;
  border-radius:0;
  padding:22px max(22px,calc((100% - 1200px)/2));
  box-shadow:0 10px 25px #14385008;
}
/* CTA band follows the same alignment and bleeds to both edges. */
body.drb-remy-page .drb-remy-callout {
  margin:0;
  border-radius:0;
  padding:clamp(35px,4.2vw,64px) max(22px,calc((100% - 1200px)/2));
  grid-template-columns:minmax(0,2fr) minmax(220px,1fr);
  gap:clamp(25px,4vw,55px);
}
body.drb-remy-page .drb-remy-disclaimer {
  max-width:none!important;
  margin:0!important;
  padding:23px max(22px,calc((100% - 1200px)/2)) 33px;
  background:#fff;
}
/* Keep hero content aligned with centered section contents. */
body.drb-remy-page .drb-remy-hero {
  border-radius:0;
  padding-left:max(22px,calc((100% - 1200px)/2));
  padding-right:max(22px,calc((100% - 1200px)/2));
}
/* Safety net for themes which inject title bars even from header.php.
   Scope outside plugin content so the hero H1 is never hidden. */
body.drb-remy-page :is(.fusion-page-title-bar,.fusion-page-title-bar-wrapper,.page-title-bar,.page-title-area,.page-title-section,.page-title-wrapper,.page-header,.page-heading,.title-bar,.titlebar,.breadcrumb-title,.entry-header,.entry-title,.post-title,.single-post-title,.wp-block-post-title):not(.drb-remy *) {
  display:none!important;
}
body.drb-remy-page :is(main,#main,#content) h1:not(.drb-remy h1) {
  display:none!important;
}
@media(max-width:750px) {
  body.drb-remy-page .drb-remy-section {
    padding:46px 23px;
    grid-template-columns:minmax(0,1fr);
  }
  body.drb-remy-page .drb-remy-section > * {grid-column:1}
  body.drb-remy-page .drb-remy-intro {
    grid-template-columns:minmax(0,1fr);
    padding:0 23px;
  }
  body.drb-remy-page .drb-remy-intro span {padding:13px 0}
  body.drb-remy-page .drb-remy-callout {
    grid-template-columns:minmax(0,1fr);
    padding:35px 23px;
    gap:18px;
  }
  body.drb-remy-page .drb-remy-hero {padding:52px 23px}
  body.drb-remy-page .drb-remy-disclaimer {padding:24px 23px 28px}
}
@media(max-width:420px) {
  body.drb-remy-page .drb-remy-section {padding:41px 19px}
  body.drb-remy-page .drb-remy-intro {padding:0 19px}
  body.drb-remy-page .drb-remy-callout {padding:30px 19px}
  body.drb-remy-page .drb-remy-hero {padding:41px 19px 45px}
  body.drb-remy-page .drb-remy-disclaimer {padding:22px 19px 26px}
}
