/* Glass Masters Brisbane design system. Palette sampled from the client's logo. Layout follows the Brigs Plumbing build. */
:root{--gm-ink:#081426;--gm-navy:#0F2748;--gm-blue:#174295;--gm-sky:#1776BE;--gm-link:#1560A8;--gm-glow:#6CC4FF;--gm-body:#24344D;--gm-muted:#51627B;--gm-mist:#F1F6FB;--gm-wash:#E4F1FB;--gm-line:#DCE6F0;--gm-white:#fff}
body{color:var(--gm-body);font-family:Barlow,system-ui,sans-serif;font-size:17px;line-height:1.65;background:#fff}
.gm-section{padding:72px 24px!important}.gm-section--tight{padding:48px 24px!important}
.gm-section>.e-con-inner{gap:28px}
.gm-mist{background:var(--gm-mist)}.gm-dark{background:var(--gm-ink)}
.elementor .elementor-element.elementor-widget-heading .elementor-heading-title{font-family:"Barlow Condensed",Barlow,sans-serif;font-weight:700;line-height:1.08;color:var(--gm-ink);letter-spacing:0}
.elementor h1.elementor-heading-title{font-size:clamp(38px,5vw,60px)}
.elementor h2.elementor-heading-title{font-size:clamp(30px,3.4vw,42px)}
.elementor h3.elementor-heading-title{font-size:24px}
.elementor .elementor-element.elementor-widget-heading .elementor-heading-title a{color:inherit}
.elementor .elementor-element.elementor-widget-heading .elementor-heading-title a:hover{color:var(--gm-link)}
.elementor-widget-text-editor{color:var(--gm-body)}
.elementor-widget-text-editor p{margin:0 0 14px}.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor ul{margin:0 0 14px 20px;padding:0}.elementor-widget-text-editor li{margin-bottom:6px}
.elementor-widget-text-editor a{color:var(--gm-link);text-decoration:underline;text-underline-offset:2px}
.elementor-widget-text-editor a:hover{color:var(--gm-blue)}
.gm-eyebrow .elementor-widget-container,.gm-eyebrow{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gm-link)}
.gm-eyebrow p::before{content:"";display:inline-block;width:32px;height:2px;background:currentColor;vertical-align:middle;margin-right:12px}
.gm-dark .gm-eyebrow,.gm-dark .gm-eyebrow .elementor-widget-container{color:var(--gm-glow)}
/* dark ground */
.gm-dark .elementor-element.elementor-widget-heading .elementor-heading-title,.elementor .gm-dark .elementor-element.elementor-widget-heading .elementor-heading-title{color:#fff}
.elementor .gm-dark .elementor-element.elementor-widget-heading .elementor-heading-title a:hover{color:var(--gm-glow)}
.gm-dark .elementor-widget-text-editor{color:#D5E0EE}
.gm-dark .elementor-widget-text-editor a{color:var(--gm-glow)}.gm-dark .elementor-widget-text-editor a:hover{color:#fff}
.gm-glow{color:var(--gm-glow)}
/* hero */
.gm-hero{background:radial-gradient(900px 480px at 88% 8%,rgba(23,118,190,.35),transparent 70%),var(--gm-ink);padding:64px 24px 72px!important}
.gm-hero__lead{font-size:18px}
.gm-hero__img img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.45);display:block}
.gm-trust{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:6px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);font-size:15px}
.gm-trust span{white-space:nowrap}.gm-trust strong{color:#fff}
.gm-crumbs{font-size:14px;color:#A9BBD2}.gm-crumbs a{color:#CFE0F2!important}
/* buttons */
.elementor .elementor-widget-button .elementor-button{font-family:Barlow,sans-serif;font-weight:600;border-radius:999px;padding:14px 26px;font-size:16px;line-height:1.2;min-height:48px;transition:background-color .15s,color .15s}
.gm-btn-call .elementor-button{background:var(--gm-glow)!important;color:var(--gm-ink)!important;font-weight:700!important;font-size:19px!important}
.gm-btn-call .elementor-button:hover,.gm-btn-call .elementor-button:focus{background:#fff!important;color:var(--gm-ink)!important}
.gm-btn-ghost .elementor-button{background:transparent!important;color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
.gm-btn-ghost .elementor-button:hover,.gm-btn-ghost .elementor-button:focus{background:#fff!important;color:var(--gm-ink)!important}
.gm-btn-solid .elementor-button{background:var(--gm-blue)!important;color:#fff!important}
.gm-btn-solid .elementor-button:hover,.gm-btn-solid .elementor-button:focus{background:var(--gm-ink)!important;color:#fff!important}
.gm-btns{gap:14px!important}.gm-btns>.elementor-element{width:auto!important}
/* grids + cards */
.e-con.gm-grid{display:grid!important;gap:22px;grid-template-rows:none!important;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
.gm-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gm-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}.gm-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.e-con.gm-card{background:#fff;border:1px solid var(--gm-line);border-radius:14px;overflow:hidden;--padding-top:0px;--padding-right:0px;--padding-bottom:20px;--padding-left:0px;gap:10px;transition:box-shadow .15s,transform .15s}
.e-con.gm-card:hover{box-shadow:0 14px 34px rgba(15,39,72,.14);transform:translateY(-2px)}
.gm-card>.elementor-widget-heading,.gm-card>.elementor-widget-text-editor{padding:0 20px}
.gm-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.gm-card .elementor-widget-text-editor{font-size:16px;color:var(--gm-muted)}
.e-con.gm-tile{background:#fff;border:1px solid var(--gm-line);border-radius:12px;--padding-top:16px;--padding-right:18px;--padding-bottom:16px;--padding-left:18px;gap:2px}
.gm-tile .elementor-widget-text-editor{font-size:15px;color:var(--gm-muted)}
.gm-photo img{width:100%;border-radius:14px;display:block;object-fit:cover;aspect-ratio:4/3}
.gm-photo--tall img{aspect-ratio:4/5}
.gm-photo .widget-image-caption,.gm-pair .widget-image-caption{font-size:14px;color:var(--gm-muted);margin-top:8px;text-align:left}
.gm-pair img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:12px;display:block}
.e-con.gm-split{gap:48px;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;align-items:center}
.e-con.gm-col{gap:16px;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
/* reviews */
.e-con.gm-review{background:#fff;border:1px solid var(--gm-line);border-radius:14px;--padding-top:22px;--padding-right:22px;--padding-bottom:22px;--padding-left:22px;gap:8px}
.gm-review .gm-stars{color:#C77700;font-size:17px;letter-spacing:2px}
.gm-review cite{font-style:normal;font-weight:600;color:var(--gm-ink);font-size:15px}
/* links lists */
.gm-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0!important;padding:0}
.gm-chips li{margin:0}.gm-chips a{display:inline-block;padding:9px 16px;border:1px solid var(--gm-line);border-radius:999px;background:#fff;text-decoration:none!important;font-weight:500;color:var(--gm-link)!important}
.gm-chips a:hover{background:var(--gm-wash);color:var(--gm-blue)!important}
/* faq (Elementor toggle) */
.gm-faq .elementor-toggle-item{border-bottom:1px solid var(--gm-line)}
.gm-faq .elementor-tab-title{border:0!important;padding:18px 0!important;font-weight:600;cursor:pointer}
.gm-faq .elementor-toggle-title{color:var(--gm-ink)!important;font-size:18px;font-family:Barlow,sans-serif}
.gm-faq .elementor-tab-title a:hover{color:var(--gm-link)!important}
.gm-faq .elementor-tab-content{border:0!important;padding:0 0 18px!important;color:var(--gm-body)}
.gm-faq .elementor-toggle-icon{color:var(--gm-link)}
/* CTA */
.e-con.gm-cta{background:radial-gradient(700px 300px at 90% 0,rgba(23,118,190,.4),transparent 70%),var(--gm-ink);border-radius:18px;--padding-top:44px;--padding-right:44px;--padding-bottom:44px;--padding-left:44px;align-items:center;justify-content:space-between;gap:24px}
/* form */
.gm-form .elementor-field-group{margin-bottom:12px}
.gm-form label{font-weight:600;color:var(--gm-ink);font-size:15px}
.gm-form .elementor-field-textual,.gm-form select{border:1px solid #9FB2C8!important;border-radius:8px!important;background:#fff!important;color:var(--gm-ink)!important;min-height:48px;font-size:16px!important}
.gm-form .elementor-button{background:var(--gm-blue)!important;color:#fff!important;border-radius:999px!important;width:auto;min-width:220px}
.gm-form .elementor-button:hover,.gm-form .elementor-button:focus{background:var(--gm-ink)!important;color:#fff!important}
.e-con.gm-formbox{background:#fff;border:1px solid var(--gm-line);border-radius:16px;--padding-top:28px;--padding-right:28px;--padding-bottom:28px;--padding-left:28px}
/* header */
.gm-hdr{background:var(--gm-ink);--padding-top:10px;--padding-bottom:10px;--padding-left:24px;--padding-right:24px;position:sticky;top:0;z-index:50}
.gm-hdr .e-con-inner{flex-direction:row!important;align-items:center;justify-content:space-between;gap:18px}
.gm-hdr__logo{width:auto!important}.gm-hdr__logo img{height:58px;width:auto;display:block}
.gm-hdr__nav{flex:1 1 auto;width:auto!important}
.gm-hdr__nav .elementor-nav-menu--main .elementor-item{color:#E4ECF5!important;font-weight:500;font-size:15px;padding:12px 11px!important}
.gm-hdr__nav .elementor-nav-menu--main .elementor-item:hover,.gm-hdr__nav .elementor-nav-menu--main .elementor-item:focus,.gm-hdr__nav .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--gm-glow)!important}
.gm-hdr__nav .elementor-nav-menu--dropdown{background:#fff!important;border-radius:0 0 10px 10px;box-shadow:0 18px 40px rgba(8,20,38,.28)}
.gm-hdr__nav .elementor-nav-menu--dropdown a{color:var(--gm-ink)!important;background:#fff!important;font-size:15px}
.gm-hdr__nav .elementor-nav-menu--dropdown a:hover,.gm-hdr__nav .elementor-nav-menu--dropdown a:focus{background:var(--gm-wash)!important;color:var(--gm-blue)!important}
.gm-hdr__nav .elementor-menu-toggle{color:#fff!important;background:transparent!important;font-size:26px}
.gm-hdr__nav .elementor-menu-toggle:hover{background:transparent!important;color:var(--gm-glow)!important}
.gm-hdr__call{width:auto!important}.gm-hdr__call .elementor-button{font-size:16px!important;padding:11px 20px!important;white-space:nowrap}
/* footer */
.gm-ftr{background:var(--gm-ink);color:#C6D3E4;font-size:15px;--padding-top:56px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px}
.gm-ftr .elementor-widget-text-editor{color:#C6D3E4;font-size:15px}
.gm-ftr a{color:#E4ECF5!important;text-decoration:none!important}.gm-ftr a:hover{color:var(--gm-glow)!important}
.gm-ftr ul{list-style:none;margin:0!important;padding:0}.gm-ftr li{margin:0 0 7px}
.gm-ftr .elementor-element.elementor-widget-heading .elementor-heading-title{color:#fff!important;font-size:18px}
.gm-ftr__logo img{width:140px;height:auto}
.gm-ftr__base{border-top:1px solid rgba(255,255,255,.14);padding-top:16px;font-size:14px}
/* mobile call bar */
.gm-callbar{display:none}
@media(max-width:1024px){.gm-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gm-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gm-hdr__call{display:none}}
@media(max-width:767px){body{font-size:16px}.gm-section{padding:48px 16px!important}.gm-section--tight{padding:36px 16px!important}.gm-hero{padding:40px 16px 48px!important}
.gm-grid-2,.gm-grid-3,.gm-grid-4{grid-template-columns:minmax(0,1fr)!important}.gm-grid-pairs{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gm-grid-chips{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.e-con.gm-cta{--padding-top:28px;--padding-right:22px;--padding-bottom:28px;--padding-left:22px}
.gm-split,.gm-cols{flex-direction:column!important}.gm-split>.e-con,.gm-cols>.e-con{width:100%!important}
.gm-hdr__logo img{height:46px}.gm-ftr{--padding-left:16px;--padding-right:16px;padding-bottom:84px}
.gm-trust span{white-space:normal}
.gm-callbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--gm-glow);padding:0;box-shadow:0 -6px 20px rgba(8,20,38,.25)}
.gm-callbar a{flex:1;text-align:center;padding:15px 8px;font-weight:700;color:var(--gm-ink)!important;font-size:18px;text-decoration:none!important}
.gm-callbar a+a{background:var(--gm-ink);color:#fff!important;flex:0 0 38%}}
@media(prefers-reduced-motion:reduce){.e-con.gm-card{transition:none}.e-con.gm-card:hover{transform:none}}
/* first-render fixes */
.gm-trust,.gm-trust span{color:#D5E0EE}
.e-con.gm-btns{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
.e-con.gm-split.gm-top{align-items:flex-start}
.gm-section>.e-con-inner>.gm-split+.gm-split,.gm-section>.e-con-inner>.gm-split+.gm-prose,.gm-section>.e-con-inner>.gm-prose+.gm-prose,.gm-section>.e-con-inner>.gm-prose+.gm-split{margin-top:20px}
.e-con.gm-prose{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;gap:12px}
.gm-paircap{font-size:15px;color:var(--gm-muted)}
.gm-cta .gm-btns{width:auto!important;margin-left:auto}
.gm-hdr__nav .elementor-nav-menu--main .elementor-item{font-family:Barlow,sans-serif}
.gm-hdr__nav .elementor-menu-toggle,.gm-hdr__nav .elementor-menu-toggle svg,.gm-hdr__nav .elementor-menu-toggle i{color:#fff!important;fill:#fff!important}
.gm-ftr__logo,.gm-ftr__logo .elementor-widget-container{text-align:left!important}
.gm-ftr__logo img{margin:0}
@media(max-width:1024px){.gm-hdr__nav .elementor-menu-toggle{margin-left:auto;margin-right:0}}
@media(max-width:767px){.gm-cta .gm-btns{margin-left:0;width:100%!important}}
.gm-trust{gap:8px 20px;font-size:14.5px}
.gm-hdr__nav .sub-arrow,.gm-hdr__nav .sub-arrow svg,.gm-hdr__nav .sub-arrow i{color:inherit;fill:currentColor;opacity:1}
@media(max-width:1024px){.gm-hdr__nav .elementor-menu-toggle{margin-left:auto!important;margin-right:0!important}}
/* horizontal logo lockup: icon left, name right */
.gm-hdr__logo{flex:0 0 auto}.gm-hdr__logo img{height:60px;width:auto;max-width:none}
.gm-ftr__logo img{width:280px;max-width:100%;height:auto}
@media(max-width:767px){.gm-hdr__logo img{height:50px}}

/* before/after cards: joined photos, drawn chips, story below */
.e-con.gm-ba-card{background:#fff;border:1px solid var(--gm-line);border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(8,20,38,.08);--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;gap:0;--gap:0px;transition:box-shadow .2s}
.e-con.gm-ba-card:hover{box-shadow:0 16px 38px rgba(8,20,38,.14)}
.e-con.gm-ba-row{gap:3px!important;background:#fff}
.gm-ba{position:relative;margin:0!important;overflow:hidden}
.gm-ba img{width:100%!important;height:auto;aspect-ratio:4/5;object-fit:cover;display:block;border-radius:0!important}
.gm-ba::after{content:"Before";position:absolute;left:10px;top:10px;z-index:2;padding:5px 12px;border-radius:999px;font:700 12px/1.3 Barlow,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;background:rgba(8,20,38,.86);color:#fff}
.gm-ba-after::after{content:"After";background:var(--gm-sky)}
.e-con.gm-ba-body{--padding-top:16px;--padding-right:20px;--padding-bottom:18px;--padding-left:20px;gap:6px;--gap:6px}
.elementor .gm-ba-title.elementor-widget-heading .elementor-heading-title{font-size:22px}
.gm-ba-story,.gm-ba-story p{font-size:16px;color:var(--gm-muted);margin:0}
.e-con.gm-ba-solo{grid-template-columns:minmax(0,760px)!important}
/* footer social icons */
.gm-social{display:flex;gap:10px;margin-top:6px}
.gm-social a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff!important;transition:background .2s}
.gm-social a:hover{background:var(--gm-sky);color:#fff!important}
/* narrow phones: keep logo and menu on one line */
@media(max-width:380px){.gm-hdr__logo img{height:40px}}
