:root{--gold:#d8a63e;--gold2:#ffe08a;--deep:#070707;--panel:rgba(5,5,5,.72);--line:rgba(216,166,62,.58);--white:#f7f2e9;--muted:rgba(247,242,233,.74);--font-head:'Cinzel',Georgia,serif;--font-wide:'Bebas Neue','Oswald',Impact,sans-serif;--font-body:'Montserrat',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#030303;color:var(--white);font-family:var(--font-body);overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-3;background:#030303}a{color:inherit}.ra-site{min-height:100vh;background:#040404}.ra-wrap{width:min(1120px,calc(100% - 56px));margin:0 auto}.ra-header{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.88);border-bottom:1px solid var(--line);backdrop-filter:blur(14px);box-shadow:0 10px 40px rgba(0,0,0,.55)}.admin-bar .ra-header{top:32px}.ra-header-inner{height:92px;display:grid;grid-template-columns:170px 1fr 190px;align-items:center;gap:24px}.ra-logo img{width:112px;height:auto;display:block;filter:drop-shadow(0 0 16px rgba(216,166,62,.32))}.ra-nav{display:flex;justify-content:center;gap:34px;align-items:center}.ra-nav li{list-style:none;margin:0;padding:0}.ra-nav a{text-decoration:none;text-transform:uppercase;font-size:13px;font-weight:900;letter-spacing:.08em;padding:28px 0 13px;position:relative}.ra-nav a:hover,.ra-nav .current-menu-item a{color:var(--gold2)}.ra-nav a:after{content:"";position:absolute;left:50%;bottom:0;width:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold2),transparent);transform:translateX(-50%);transition:.2s}.ra-nav a:hover:after,.ra-nav .current-menu-item a:after{width:52px}.ra-header-phone{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:46px;padding:0 22px;text-decoration:none;border:1px solid #ffd976;border-radius:5px;background:linear-gradient(180deg,#ffe699 0%,#d8a642 48%,#8d641f 100%);color:#070707;font-weight:950;box-shadow:0 0 28px rgba(216,166,62,.35),inset 0 1px 0 rgba(255,255,255,.48)}.ra-header-phone svg{width:17px;height:17px;fill:#070707}.ra-hero{position:relative;min-height:690px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--line)}.ra-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.14),rgba(0,0,0,.22)),var(--ra-bg-desktop);background-size:cover;background-position:center top;filter:contrast(1.05) saturate(1.05)}.ra-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 46%,rgba(0,0,0,.08),rgba(0,0,0,.26) 45%,rgba(0,0,0,.52) 100%),linear-gradient(90deg,rgba(0,0,0,.24),rgba(0,0,0,.05),rgba(0,0,0,.24));pointer-events:none}.ra-hero-frame{position:absolute;inset:18px;border:1px solid rgba(216,166,62,.42);clip-path:polygon(3% 0,97% 0,100% 5%,100% 95%,97% 100%,3% 100%,0 95%,0 5%);box-shadow:inset 0 0 26px rgba(216,166,62,.14)}.ra-hero-inner{position:relative;z-index:2;text-align:center;width:min(860px,calc(100% - 40px));padding-top:28px}.ra-kicker{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--gold);font-size:16px;font-weight:800;letter-spacing:.45em;text-transform:uppercase;margin-bottom:18px;text-shadow:0 0 18px rgba(216,166,62,.45)}.ra-kicker span{display:block;width:170px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.ra-hero-title{margin:0;text-transform:uppercase;line-height:.94;letter-spacing:.025em;font-family:var(--font-wide);font-size:clamp(72px,7vw,110px);font-weight:900;text-shadow:0 6px 0 rgba(0,0,0,.6),0 0 30px rgba(255,255,255,.09)}.ra-hero-title b,.ra-hero-title strong{display:block}.ra-hero-title b{background:linear-gradient(180deg,#fff 0%,#d5d5d5 30%,#595b60 64%,#f7f7f7 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.25)}.ra-hero-title strong{background:linear-gradient(180deg,#fff0b0 0%,#d6a63e 40%,#8d631f 72%,#ffe697 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1px rgba(255,230,160,.18)}.ra-hero-intro{font-size:20px;line-height:1.55;max-width:680px;margin:18px auto 28px;color:#fff;text-shadow:0 4px 18px #000}.ra-hero-actions{display:flex;gap:24px;justify-content:center;align-items:center}.ra-btn{min-width:220px;height:56px;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;border-radius:5px;font-size:16px;font-weight:900}.ra-btn svg{width:22px;height:22px}.ra-btn-gold{background:linear-gradient(180deg,#ffe695,#d9a53e 52%,#9a6c22);color:#060606;box-shadow:0 0 26px rgba(216,166,62,.32),inset 0 1px 0 rgba(255,255,255,.55)}.ra-btn-gold svg{fill:#060606}.ra-btn-dark{background:rgba(0,0,0,.42);border:1px solid var(--line);box-shadow:inset 0 0 24px rgba(216,166,62,.08)}.ra-btn-dark svg{fill:#fff}.ra-section{position:relative;background:#030303;border-bottom:1px solid rgba(216,166,62,.34)}.ra-service-strip{padding:26px 0 26px;background:linear-gradient(180deg,#050505,#0a0a0a)}.ra-service-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}.ra-service-tile{min-height:185px;padding:26px 18px;text-align:center;position:relative;border:1px solid rgba(216,166,62,.72);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),rgba(0,0,0,.72);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);box-shadow:0 0 24px rgba(216,166,62,.07),inset 0 0 38px rgba(216,166,62,.05)}.ra-tile-icon{height:74px;display:flex;align-items:center;justify-content:center;color:var(--gold)}.ra-tile-icon svg{width:62px;height:62px;fill:none;stroke:currentColor;stroke-width:2.2}.ra-service-tile h3{margin:10px 0 0;font-size:16px;line-height:1.2;font-weight:700}.ra-service-tile i{display:block;width:42px;height:2px;background:var(--gold);margin:16px auto 0}.ra-about-band{padding:54px 0;background-image:linear-gradient(90deg,rgba(0,0,0,.2),rgba(0,0,0,.78) 43%,rgba(0,0,0,.92)),var(--ra-bg-desktop);background-size:cover;background-position:center}.ra-two-col{display:grid;grid-template-columns:38% 1fr;gap:58px;align-items:center}.ra-about-image{min-height:310px;display:flex;align-items:center}.ra-about-image img{width:100%;height:320px;object-fit:cover;border:1px solid rgba(216,166,62,.35);box-shadow:0 22px 70px rgba(0,0,0,.62)}.ra-copy h2,.ra-section-head h2,.ra-page-title{font-family:var(--font-head);font-size:clamp(32px,3.3vw,52px);line-height:1.08;margin:8px 0 18px;color:#f5f1e8;text-shadow:0 3px 18px #000}.ra-copy h2 strong,.ra-copy h2 em{color:var(--gold)}.ra-copy p{font-size:16px;line-height:1.68;color:var(--muted)}.ra-mini{margin:0;color:var(--gold);font-size:13px;font-weight:900;letter-spacing:.28em;text-transform:uppercase}.ra-trust-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:26px}.ra-trust{min-height:74px;border:1px solid rgba(216,166,62,.62);padding:13px;display:grid;grid-template-columns:34px 1fr;column-gap:9px;align-items:center;background:rgba(0,0,0,.48)}.ra-trust b{grid-row:1/3;color:var(--gold);font-size:25px}.ra-trust span{font-size:13px;text-transform:uppercase;font-weight:900;color:var(--gold2)}.ra-trust small{font-size:12px;color:#fff}.ra-gallery-preview{padding:38px 0 50px;background:#030303}.ra-gallery-preview .ra-wrap{display:grid;grid-template-columns:300px 1fr;gap:34px;align-items:start}.ra-section-head h2{font-size:29px;margin-top:8px}.ra-before-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ra-before-card{border:1px solid rgba(216,166,62,.72);background:#050505;border-radius:5px;overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.46)}.ra-before-imgs{height:155px;display:grid;grid-template-columns:1fr 1fr;position:relative}.ra-before-imgs img{width:100%;height:100%;object-fit:cover}.ra-before-imgs:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--gold)}.ra-before-imgs span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#050505;font-size:30px;font-weight:900;z-index:3}.ra-labels{height:34px;display:grid;grid-template-columns:1fr 1fr;text-align:center;border-top:1px solid rgba(216,166,62,.45)}.ra-labels b{font-size:12px;align-self:center}.ra-contact-strip{padding:34px 0 38px;background:#030303}.ra-contact-box{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;border:1px solid rgba(216,166,62,.72);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:inset 0 0 45px rgba(216,166,62,.05)}.ra-contact-box>div{min-height:132px;padding:24px 34px;display:flex;align-items:center;gap:22px;border-right:1px solid rgba(216,166,62,.45)}.ra-contact-box>div:last-child{border-right:0}.ra-contact-box svg{width:46px;height:46px;fill:var(--gold);flex:0 0 auto}.ra-contact-box p{margin:0;color:#fff;line-height:1.55}.ra-contact-box a{text-decoration:none;font-weight:900;font-size:19px}.ra-contact-phone{font-size:30px!important}.ra-footer{padding:24px 0 30px;text-align:center;border-top:1px solid rgba(216,166,62,.35);background:#050505}.ra-footer a{text-decoration:none;color:var(--gold);font-weight:700}.ra-page-hero{padding:86px 0 34px;text-align:center;background-image:linear-gradient(rgba(0,0,0,.74),rgba(0,0,0,.88)),var(--ra-bg-desktop);background-size:cover;background-position:center;border-bottom:1px solid var(--line)}.ra-page-title{margin:10px 0 12px;text-transform:uppercase}.ra-title-line{display:flex;align-items:center;justify-content:center;gap:18px}.ra-title-line:before,.ra-title-line:after{content:"";height:1px;width:190px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.ra-services-list{padding:40px 0 70px;background:#050505}.ra-service-row{display:grid;grid-template-columns:92px 1fr 330px;align-items:center;gap:24px;border:1px solid rgba(216,166,62,.7);margin:0 0 14px;padding:18px 20px;background:linear-gradient(90deg,rgba(216,166,62,.08),rgba(0,0,0,.6));clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}.ra-service-row .ra-tile-icon svg{width:58px}.ra-service-row h2{margin:0 0 7px;color:var(--gold2);font-size:19px;text-transform:uppercase}.ra-service-row p{margin:0;color:var(--muted);line-height:1.55}.ra-service-row img{width:100%;height:120px;object-fit:cover;border-left:1px solid rgba(216,166,62,.45)}.ra-gallery-page{padding:40px 0 70px;background:#040404}.ra-gallery-page .ra-before-grid{grid-template-columns:repeat(3,1fr)}.ra-gallery-page .ra-before-imgs{height:250px}.ra-about-page,.ra-contact-page{padding:58px 0 70px;background-image:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.58)),var(--ra-bg-desktop);background-size:cover;background-position:center}.ra-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px}.ra-contact-form{border:1px solid rgba(216,166,62,.55);padding:28px;background:rgba(0,0,0,.58)}.ra-contact-form input,.ra-contact-form textarea{width:100%;margin:0 0 14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);padding:16px;color:#fff;font-family:var(--font-body)}.ra-contact-form textarea{height:150px}.ra-contact-form button{width:100%;border:0;height:54px;font-weight:900;text-transform:uppercase;background:linear-gradient(180deg,#ffe695,#d9a53e 52%,#9a6c22);color:#050505}.ra-menu-toggle{display:none}.screen-reader-text{position:absolute;left:-9999px}
@media(max-width:1050px){.ra-wrap{width:min(100% - 34px,880px)}.ra-header-inner{grid-template-columns:120px 1fr 160px}.ra-nav{gap:18px}.ra-hero{min-height:640px}.ra-service-tiles{grid-template-columns:repeat(3,1fr)}.ra-two-col,.ra-gallery-preview .ra-wrap,.ra-contact-grid{grid-template-columns:1fr}.ra-contact-box{grid-template-columns:1fr}.ra-contact-box>div{border-right:0;border-bottom:1px solid rgba(216,166,62,.45)}.ra-contact-box>div:last-child{border-bottom:0}.ra-service-row{grid-template-columns:70px 1fr}.ra-service-row img{grid-column:1/-1;border-left:0;height:180px}.ra-before-grid,.ra-gallery-page .ra-before-grid{grid-template-columns:1fr 1fr}.ra-trust-cards{grid-template-columns:1fr 1fr}.ra-title-line:before,.ra-title-line:after{width:90px}}
@media(max-width:760px){.admin-bar .ra-header{top:46px}.ra-header-inner{height:auto;min-height:78px;grid-template-columns:82px 1fr;gap:10px;padding:10px 0}.ra-logo img{width:72px}.ra-menu-toggle{display:inline-flex;justify-self:end;background:transparent;color:#fff;border:1px solid rgba(216,166,62,.55);padding:10px 14px;text-transform:uppercase;font-weight:900}.ra-nav{grid-column:1/-1;display:none;flex-direction:column;gap:0;padding:10px 0;border-top:1px solid rgba(216,166,62,.25)}.ra-header.is-open .ra-nav{display:flex}.ra-nav a{padding:13px 0}.ra-header-phone{grid-column:1/-1;width:100%;height:42px}.ra-hero{min-height:720px;align-items:flex-start;padding-top:70px}.ra-bg{background-image:linear-gradient(rgba(0,0,0,.25),rgba(0,0,0,.46)),var(--ra-bg-mobile);background-position:center top}.ra-hero-frame{inset:10px}.ra-kicker{font-size:11px;letter-spacing:.28em;gap:10px}.ra-kicker span{width:48px}.ra-hero-title{font-size:clamp(54px,17vw,80px)}.ra-hero-intro{font-size:16px}.ra-hero-actions{flex-direction:column;gap:14px}.ra-btn{width:min(320px,100%)}.ra-service-tiles{grid-template-columns:1fr;gap:14px}.ra-service-tile{min-height:145px}.ra-about-band{padding:36px 0;background-image:linear-gradient(rgba(0,0,0,.82),rgba(0,0,0,.9)),var(--ra-bg-mobile)}.ra-copy h2,.ra-page-title{font-size:34px}.ra-trust-cards,.ra-before-grid,.ra-gallery-page .ra-before-grid{grid-template-columns:1fr}.ra-gallery-preview .ra-wrap{gap:18px}.ra-contact-box>div{padding:22px;align-items:flex-start}.ra-contact-phone{font-size:24px!important}.ra-page-hero{background-image:linear-gradient(rgba(0,0,0,.76),rgba(0,0,0,.91)),var(--ra-bg-mobile);padding-top:48px}.ra-title-line:before,.ra-title-line:after{display:none}.ra-about-page,.ra-contact-page{background-image:linear-gradient(rgba(0,0,0,.88),rgba(0,0,0,.92)),var(--ra-bg-mobile)}}

/* v4.1.0 mockup alignment pass */
.ra-wrap{width:min(1180px,calc(100% - 64px));}
.ra-header{position:relative;top:auto;background:#030303;border-bottom:1px solid rgba(216,166,62,.55);box-shadow:0 14px 44px rgba(0,0,0,.75);}
.admin-bar .ra-header{top:auto;}
.ra-header-inner{height:108px;grid-template-columns:210px 1fr 230px;gap:26px;position:relative;}
.ra-logo{align-self:center;display:flex;align-items:center;justify-content:flex-start;height:100%;}
.ra-logo img{width:135px;max-height:96px;object-fit:contain;background:transparent;filter:drop-shadow(0 9px 18px rgba(0,0,0,.75)) drop-shadow(0 0 16px rgba(216,166,62,.22));}
.ra-nav{gap:38px;align-self:center;}
.ra-nav a{font-size:13px;letter-spacing:.095em;padding:20px 0 14px;text-shadow:0 2px 12px #000;}
.ra-header-phone{height:49px;min-width:204px;white-space:nowrap;border-radius:4px;font-size:15px;letter-spacing:.02em;box-shadow:0 0 22px rgba(216,166,62,.35), inset 0 1px 0 rgba(255,255,255,.65), inset 0 -2px 0 rgba(0,0,0,.18);}
.ra-hero{min-height:455px;align-items:flex-start;border-bottom:1px solid rgba(216,166,62,.55);}
.ra-bg{background-image:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.18)),var(--ra-bg-desktop);background-position:center top;filter:contrast(1.11) saturate(1.1) brightness(1.02);}
.ra-hero:after{background:radial-gradient(ellipse at 50% 45%,rgba(0,0,0,.0) 0%,rgba(0,0,0,.12) 44%,rgba(0,0,0,.42) 100%),linear-gradient(90deg,rgba(0,0,0,.22),rgba(0,0,0,.0) 48%,rgba(0,0,0,.22));}
.ra-hero-frame{inset:0;border-top:0;border-left:1px solid rgba(216,166,62,.55);border-right:1px solid rgba(216,166,62,.55);border-bottom:1px solid rgba(216,166,62,.34);clip-path:none;box-shadow:inset 0 0 42px rgba(216,166,62,.12);}
.ra-hero-frame:before,.ra-hero-frame:after{content:"";position:absolute;top:0;width:104px;height:104px;border-top:2px solid var(--gold);opacity:.8;}
.ra-hero-frame:before{left:0;border-left:2px solid var(--gold);clip-path:polygon(0 0,100% 0,45% 12%,12% 45%,0 100%);}
.ra-hero-frame:after{right:0;border-right:2px solid var(--gold);clip-path:polygon(0 0,100% 0,100% 100%,88% 45%,55% 12%);}
.ra-hero-inner{padding-top:76px;width:min(760px,calc(100% - 40px));}
.ra-kicker{font-size:15px;letter-spacing:.43em;margin-bottom:14px;}
.ra-kicker span{width:170px;background:linear-gradient(90deg,transparent,rgba(216,166,62,.8),transparent);}
.ra-hero-title{font-size:clamp(72px,6.2vw,98px);line-height:.90;letter-spacing:.035em;filter:drop-shadow(0 12px 18px rgba(0,0,0,.8));}
.ra-hero-title b{background:linear-gradient(180deg,#fff 0%,#f3f3f3 20%,#9a9a9c 45%,#3d3d41 74%,#f9f9f9 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1.15px rgba(255,255,255,.28);}
.ra-hero-title strong{background:linear-gradient(180deg,#fff2b5 0%,#e2b24f 28%,#a77824 55%,#765114 75%,#ffe18c 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1.1px rgba(255,225,135,.25);}
.ra-hero-intro{font-size:19px;line-height:1.45;margin:17px auto 24px;max-width:640px;}
.ra-hero-actions{gap:24px;}
.ra-btn{min-width:204px;height:52px;border-radius:4px;font-size:16px;}
.ra-btn-gold{box-shadow:0 0 24px rgba(216,166,62,.34), inset 0 1px 0 rgba(255,255,255,.6), inset 0 -2px 0 rgba(0,0,0,.18);}
.ra-btn-dark{border-color:rgba(216,166,62,.72);background:rgba(0,0,0,.50);}
.ra-service-strip{padding:22px 0 24px;background:linear-gradient(180deg,#050505 0%,#0b0b0b 48%,#030303 100%);}
.ra-service-tiles{gap:24px;}
.ra-service-tile{min-height:178px;padding:24px 16px;border-color:rgba(216,166,62,.74);background:radial-gradient(circle at 50% 0,rgba(255,255,255,.08),transparent 48%),linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),rgba(0,0,0,.78);}
.ra-tile-icon{height:70px;}
.ra-tile-icon svg{width:62px;height:62px;stroke-width:2.1;filter:drop-shadow(0 0 10px rgba(216,166,62,.18));}
.ra-service-tile h3{font-size:16px;line-height:1.18;}
.ra-service-tile i{width:44px;margin-top:15px;box-shadow:0 0 10px rgba(216,166,62,.5);}
.ra-about-band{padding:48px 0;background-position:center top;border-top:1px solid rgba(216,166,62,.35);}
.ra-two-col{grid-template-columns:42% 1fr;gap:48px;}
.ra-about-image img{height:295px;object-fit:cover;border:0;box-shadow:0 18px 60px rgba(0,0,0,.62);opacity:.92;}
.ra-mini{font-size:12px;letter-spacing:.32em;}
.ra-copy h2{font-size:clamp(32px,3.05vw,46px);line-height:1.1;margin-top:9px;}
.ra-copy p{font-size:15px;}
.ra-trust-cards{gap:14px;margin-top:24px;}
.ra-trust{min-height:74px;padding:12px 13px;background:rgba(0,0,0,.58);}
.ra-gallery-preview{padding:34px 0 44px;}
.ra-gallery-preview .ra-wrap{grid-template-columns:320px 1fr;gap:34px;}
.ra-before-imgs{height:150px;}
.ra-contact-strip{padding:30px 0 34px;}
.ra-contact-box>div{min-height:122px;padding:22px 30px;}
.ra-contact-box svg{width:44px;height:44px;}
.ra-footer{padding:22px 0 26px;}
@media(max-width:1050px){.ra-header-inner{grid-template-columns:130px 1fr 190px;height:92px}.ra-logo img{width:100px;max-height:78px}.ra-header-phone{min-width:178px}.ra-hero{min-height:520px}.ra-hero-inner{padding-top:72px}.ra-service-tiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.ra-wrap{width:min(100% - 28px,640px)}.ra-header{position:relative}.ra-header-inner{grid-template-columns:86px 1fr;height:auto;min-height:82px;padding:9px 0}.ra-logo img{width:78px;max-height:70px}.ra-hero{min-height:650px;padding-top:0}.ra-bg{background-image:linear-gradient(rgba(0,0,0,.16),rgba(0,0,0,.48)),var(--ra-bg-mobile);background-position:center top}.ra-hero-inner{padding-top:64px}.ra-kicker{font-size:10px;letter-spacing:.25em}.ra-kicker span{width:46px}.ra-hero-title{font-size:clamp(47px,14vw,70px)}.ra-hero-intro{font-size:15.5px}.ra-service-tiles{grid-template-columns:1fr;gap:13px}.ra-service-tile{min-height:136px}.ra-two-col{grid-template-columns:1fr}.ra-gallery-preview .ra-wrap{grid-template-columns:1fr}.ra-contact-box{grid-template-columns:1fr}.ra-contact-box>div{border-right:0;border-bottom:1px solid rgba(216,166,62,.45)}.ra-contact-box>div:last-child{border-bottom:0}}


/* v4.2.0 premium alignment + card hover pass */
.ra-wrap{width:min(1240px,calc(100% - 56px));}
.ra-service-tiles,
.ra-trust-cards{align-items:stretch;}
.ra-service-tile,
.ra-trust,
.ra-before-card,
.ra-service-row,
.ra-contact-box,
.ra-contact-form,
.ra-about-image img{
  position:relative;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, filter .22s ease;
}
.ra-service-tile,
.ra-trust,
.ra-before-card,
.ra-service-row,
.ra-contact-box,
.ra-contact-form{
  clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px);
}
.ra-service-tile:hover,
.ra-trust:hover,
.ra-before-card:hover,
.ra-service-row:hover,
.ra-contact-box:hover,
.ra-contact-form:hover{
  border-color:rgba(255,224,138,.95);
  box-shadow:0 0 0 1px rgba(255,224,138,.45),0 0 28px rgba(216,166,62,.42),0 22px 48px rgba(0,0,0,.46),inset 0 0 34px rgba(216,166,62,.08);
  transform:translateY(-3px);
}
.ra-service-tile:hover .ra-tile-icon,
.ra-trust:hover b,
.ra-service-row:hover .ra-tile-icon{filter:drop-shadow(0 0 12px rgba(216,166,62,.6));}
.ra-service-tile:hover i{box-shadow:0 0 10px rgba(216,166,62,.55);}
.ra-service-tile{padding:28px 18px 24px;}
.ra-service-tile h3{display:flex;align-items:center;justify-content:center;min-height:48px;max-width:160px;margin:8px auto 0;}
.ra-trust{
  min-height:110px;
  padding:18px 14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:6px;
  text-align:center;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01)),rgba(0,0,0,.55);
}
.ra-trust b{grid-row:auto;font-size:24px;line-height:1;}
.ra-trust span,.ra-trust small{display:block;width:100%;text-align:center;}
.ra-trust span{font-size:13px;line-height:1.15;}
.ra-trust small{font-size:12px;line-height:1.35;color:rgba(247,242,233,.88);}
.ra-about-page .ra-wrap{display:block;}
.ra-about-page .ra-copy{
  max-width:920px;
  margin:0 auto 34px;
  text-align:center;
}
.ra-about-page .ra-copy p,
.ra-about-page .ra-mini,
.ra-about-page .ra-page-title{text-align:center;}
.ra-about-page .ra-about-image{
  justify-content:center;
  max-width:980px;
  margin:0 auto 34px;
}
.ra-about-page .ra-about-image img{
  width:100%;
  height:360px;
  object-fit:cover;
  clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 18px,100% calc(100% - 18px),calc(100% - 18px) 100%,18px 100%,0 calc(100% - 18px),0 18px);
}
.ra-about-page .ra-trust-cards{
  width:100%;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:0;
}
.ra-contact-box>div,
.ra-contact-box p,
.ra-contact-box a,
.ra-contact-box .ra-mini{
  text-align:center;
}
.ra-contact-box>div{justify-content:center;}
.ra-before-card{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01)),#050505;}
.ra-service-row{overflow:hidden;}
.ra-service-row:hover img,.ra-before-card:hover img,.ra-about-image img:hover{filter:brightness(1.04) saturate(1.05);}
@media(max-width:1050px){
  .ra-wrap{width:min(100% - 34px,1100px);}
  .ra-about-page .ra-trust-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .ra-wrap{width:min(100% - 26px,640px);}
  .ra-about-page .ra-copy{margin-bottom:24px;}
  .ra-about-page .ra-about-image img{height:260px;}
  .ra-about-page .ra-trust-cards{grid-template-columns:1fr;gap:14px;}
}


/* v4.3.0 fixed background / content scroll pass */
.ra-bg{
  background-attachment:fixed;
}

.ra-about-band,
.ra-page-hero,
.ra-about-page,
.ra-contact-page{
  background-attachment:fixed;
}

/* Keep the premium background visually locked while page content moves */
.ra-hero{
  background:#030303;
}

.ra-section,
.ra-service-strip,
.ra-gallery-preview,
.ra-contact-strip,
.ra-footer{
  position:relative;
  z-index:2;
}

/* iOS/mobile can stutter with background-attachment:fixed, so keep it stable with normal attachment on small screens */
@media(max-width:760px){
  .ra-bg,
  .ra-about-band,
  .ra-page-hero,
  .ra-about-page,
  .ra-contact-page{
    background-attachment:scroll;
  }
}


/* v4.4.0 high-end footer rebuild */
.ra-footer-premium{
  padding:44px 0 34px;
  background:
    radial-gradient(700px 180px at 50% 0%, rgba(216,166,62,.13), transparent 70%),
    linear-gradient(180deg,#070707 0%,#020202 100%);
  border-top:1px solid rgba(216,166,62,.58);
  text-align:left;
  position:relative;
  overflow:hidden;
}
.ra-footer-premium:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,224,138,.9),transparent);
  box-shadow:0 0 24px rgba(216,166,62,.55);
}
.ra-footer-premium:after{
  content:"";
  position:absolute;
  inset:auto -10% 0 -10%;
  height:140px;
  background:
    radial-gradient(circle at 15% 100%, rgba(216,166,62,.10), transparent 36%),
    radial-gradient(circle at 85% 100%, rgba(216,166,62,.08), transparent 36%);
  pointer-events:none;
}
.ra-footer-frame{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.1fr 1.4fr 1.1fr;
  align-items:center;
  gap:28px;
  padding:24px 28px;
  border:1px solid rgba(216,166,62,.68);
  background:
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01)),
    rgba(0,0,0,.62);
  clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 18px,100% calc(100% - 18px),calc(100% - 18px) 100%,18px 100%,0 calc(100% - 18px),0 18px);
  box-shadow:
    0 0 0 1px rgba(216,166,62,.10),
    0 24px 60px rgba(0,0,0,.55),
    inset 0 0 42px rgba(216,166,62,.055);
}
.ra-footer-frame:hover{
  border-color:rgba(255,224,138,.95);
  box-shadow:
    0 0 0 1px rgba(255,224,138,.32),
    0 0 30px rgba(216,166,62,.34),
    0 24px 60px rgba(0,0,0,.55),
    inset 0 0 42px rgba(216,166,62,.08);
}
.ra-footer-brand{
  display:flex;
  align-items:center;
  gap:16px;
}
.ra-footer-logo img{
  width:70px;
  height:70px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 0 16px rgba(216,166,62,.35));
}
.ra-footer-brand strong{
  display:block;
  font-family:var(--font-head);
  font-size:23px;
  line-height:1;
  color:#fff;
  letter-spacing:.03em;
}
.ra-footer-brand span{
  display:block;
  margin-top:7px;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.ra-footer-menu{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px 26px;
}
.ra-footer-menu a{
  position:relative;
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-size:12px;
  font-weight:950;
  letter-spacing:.12em;
  padding:10px 0;
  transition:color .2s ease, text-shadow .2s ease;
}
.ra-footer-menu a:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:3px;
  width:0;
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,var(--gold2),transparent);
  transition:width .2s ease;
}
.ra-footer-menu a:hover{
  color:var(--gold2);
  text-shadow:0 0 14px rgba(216,166,62,.42);
}
.ra-footer-menu a:hover:after{
  width:100%;
}
.ra-footer-contact{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:13px;
}
.ra-footer-call{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 20px;
  border:1px solid rgba(255,224,138,.76);
  border-radius:5px;
  background:linear-gradient(180deg,#ffe699 0%,#d8a642 52%,#8d641f 100%);
  color:#060606!important;
  text-decoration:none;
  font-size:14px;
  font-weight:950;
  box-shadow:0 0 24px rgba(216,166,62,.26), inset 0 1px 0 rgba(255,255,255,.5);
}
.ra-footer-call svg{
  width:17px;
  height:17px;
  fill:#060606;
}
.ra-footer-social{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid rgba(216,166,62,.65);
  border-radius:999px;
  background:rgba(0,0,0,.38);
  box-shadow:inset 0 0 22px rgba(216,166,62,.08);
}
.ra-footer-social svg{
  width:23px;
  height:23px;
  fill:var(--gold);
}
.ra-footer-bottom{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 6px 0;
  color:rgba(247,242,233,.66);
  font-size:13px;
}
.ra-footer-bottom p{
  margin:0;
}
.ra-footer-bottom a{
  color:var(--gold);
  font-weight:800;
  text-decoration:none;
}
.ra-footer-bottom a:hover{
  color:var(--gold2);
  text-shadow:0 0 12px rgba(216,166,62,.38);
}

@media(max-width:1050px){
  .ra-footer-frame{
    grid-template-columns:1fr;
    text-align:center;
  }
  .ra-footer-brand,
  .ra-footer-contact{
    justify-content:center;
  }
}
@media(max-width:760px){
  .ra-footer-premium{
    padding:34px 0 28px;
  }
  .ra-footer-frame{
    padding:22px 18px;
    gap:20px;
  }
  .ra-footer-brand{
    flex-direction:column;
  }
  .ra-footer-menu{
    flex-direction:column;
    gap:2px;
  }
  .ra-footer-contact{
    flex-direction:column;
  }
  .ra-footer-call{
    width:100%;
  }
  .ra-footer-bottom{
    flex-direction:column;
    text-align:center;
  }
}


/* v4.5.0 premium footer redesign + remove old contact strip */
.ra-contact-strip{
  display:none!important;
}

.ra-footer-premium-v2{
  position:relative;
  overflow:hidden;
  padding:54px 0 34px;
  text-align:left;
  background:
    radial-gradient(900px 220px at 50% 0%, rgba(216,166,62,.16), transparent 70%),
    radial-gradient(420px 160px at 8% 100%, rgba(216,166,62,.08), transparent 70%),
    radial-gradient(420px 160px at 92% 100%, rgba(216,166,62,.08), transparent 70%),
    linear-gradient(180deg,#060606 0%,#010101 100%);
  border-top:1px solid rgba(216,166,62,.75);
}
.ra-footer-premium-v2:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,224,138,.95),rgba(216,166,62,.55),transparent);
  box-shadow:0 0 34px rgba(216,166,62,.6);
}
.ra-footer-premium-v2:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background:
    linear-gradient(90deg,transparent 0%,rgba(216,166,62,.18) 50%,transparent 100%),
    repeating-linear-gradient(90deg,transparent 0 88px,rgba(216,166,62,.05) 89px,transparent 90px);
}

.ra-footer-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.4fr .75fr 1.05fr .65fr;
  gap:34px;
  align-items:stretch;
  padding:34px;
  border:1px solid rgba(216,166,62,.72);
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),
    rgba(0,0,0,.66);
  clip-path:polygon(22px 0,calc(100% - 22px) 0,100% 22px,100% calc(100% - 22px),calc(100% - 22px) 100%,22px 100%,0 calc(100% - 22px),0 22px);
  box-shadow:
    0 26px 76px rgba(0,0,0,.62),
    0 0 0 1px rgba(255,224,138,.08),
    inset 0 0 54px rgba(216,166,62,.06);
}
.ra-footer-main:hover{
  border-color:rgba(255,224,138,.96);
  box-shadow:
    0 0 0 1px rgba(255,224,138,.32),
    0 0 38px rgba(216,166,62,.32),
    0 26px 76px rgba(0,0,0,.62),
    inset 0 0 54px rgba(216,166,62,.09);
}

.ra-footer-brand-block,
.ra-footer-links-block,
.ra-footer-contact-block,
.ra-footer-actions-block{
  position:relative;
}
.ra-footer-brand-block,
.ra-footer-links-block,
.ra-footer-contact-block{
  border-right:1px solid rgba(216,166,62,.34);
  padding-right:28px;
}
.ra-footer-brand-block{
  display:grid;
  grid-template-columns:96px 1fr;
  gap:20px;
  align-items:center;
}
.ra-footer-logo-large{
  width:96px;
  height:96px;
  display:grid;
  place-items:center;
  border:1px solid rgba(216,166,62,.42);
  background:rgba(0,0,0,.35);
  clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);
  box-shadow:inset 0 0 28px rgba(216,166,62,.08);
}
.ra-footer-logo-large img{
  width:82px;
  height:82px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 0 18px rgba(216,166,62,.38));
}
.ra-footer-brand-copy strong{
  display:block;
  font-family:var(--font-head);
  color:#fff;
  font-size:29px;
  line-height:1;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.ra-footer-brand-copy span{
  display:block;
  margin:9px 0 12px;
  color:var(--gold);
  font-size:12px;
  font-weight:950;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.ra-footer-brand-copy p{
  max-width:430px;
  margin:0;
  color:rgba(247,242,233,.70);
  font-size:14px;
  line-height:1.55;
}

.ra-footer-main h3{
  margin:0 0 18px;
  color:var(--gold2);
  font-size:12px;
  font-weight:950;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.ra-footer-links{
  display:grid;
  gap:10px;
}
.ra-footer-links a{
  width:max-content;
  position:relative;
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-size:13px;
  font-weight:900;
  letter-spacing:.10em;
  padding:3px 0 7px 18px;
}
.ra-footer-links a:before{
  content:"";
  position:absolute;
  left:0;
  top:8px;
  width:6px;
  height:6px;
  border:1px solid var(--gold);
  transform:rotate(45deg);
}
.ra-footer-links a:after{
  content:"";
  position:absolute;
  left:18px;
  bottom:2px;
  width:0;
  height:1px;
  background:linear-gradient(90deg,var(--gold2),transparent);
  transition:width .2s ease;
}
.ra-footer-links a:hover{
  color:var(--gold2);
  text-shadow:0 0 14px rgba(216,166,62,.4);
}
.ra-footer-links a:hover:after{
  width:calc(100% - 18px);
}

.ra-footer-contact-block p{
  margin:0 0 14px;
  color:rgba(247,242,233,.78);
  font-size:14px;
  line-height:1.62;
}
.ra-footer-phone-text{
  display:inline-flex;
  color:#fff;
  text-decoration:none;
  font-weight:950;
  font-size:21px;
  letter-spacing:.04em;
}
.ra-footer-phone-text:hover{
  color:var(--gold2);
  text-shadow:0 0 14px rgba(216,166,62,.45);
}

.ra-footer-actions-block{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:stretch;
  gap:14px;
}
.ra-footer-cta{
  min-height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:0 20px;
  border:1px solid rgba(255,224,138,.88);
  border-radius:5px;
  background:linear-gradient(180deg,#ffe79e 0%,#d9a53e 52%,#8f641f 100%);
  color:#050505!important;
  text-decoration:none;
  font-size:15px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
  box-shadow:0 0 28px rgba(216,166,62,.34), inset 0 1px 0 rgba(255,255,255,.52);
}
.ra-footer-cta svg{
  width:20px;
  height:20px;
  fill:#050505;
}
.ra-footer-facebook{
  min-height:54px;
  display:grid;
  place-items:center;
  border:1px solid rgba(216,166,62,.72);
  background:rgba(0,0,0,.38);
  text-decoration:none;
  clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px);
  box-shadow:inset 0 0 26px rgba(216,166,62,.08);
}
.ra-footer-facebook svg{
  width:26px;
  height:26px;
  fill:var(--gold);
}
.ra-footer-cta:hover,
.ra-footer-facebook:hover{
  transform:translateY(-2px);
  box-shadow:0 0 30px rgba(216,166,62,.45), inset 0 0 26px rgba(216,166,62,.08);
}

.ra-footer-lower{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:22px 4px 0;
  color:rgba(247,242,233,.62);
  font-size:13px;
}
.ra-footer-lower p{
  margin:0;
}
.ra-footer-lower a{
  color:var(--gold);
  font-weight:900;
  text-decoration:none;
}
.ra-footer-lower a:hover{
  color:var(--gold2);
  text-shadow:0 0 12px rgba(216,166,62,.42);
}

@media(max-width:1100px){
  .ra-footer-main{
    grid-template-columns:1fr 1fr;
  }
  .ra-footer-brand-block,
  .ra-footer-links-block{
    border-right:1px solid rgba(216,166,62,.34);
  }
  .ra-footer-contact-block{
    border-right:0;
  }
}
@media(max-width:760px){
  .ra-footer-premium-v2{
    padding:38px 0 28px;
  }
  .ra-footer-main{
    grid-template-columns:1fr;
    gap:24px;
    padding:24px 20px;
  }
  .ra-footer-brand-block,
  .ra-footer-links-block,
  .ra-footer-contact-block{
    border-right:0;
    border-bottom:1px solid rgba(216,166,62,.28);
    padding-right:0;
    padding-bottom:22px;
    text-align:center;
  }
  .ra-footer-brand-block{
    grid-template-columns:1fr;
    justify-items:center;
  }
  .ra-footer-brand-copy p{
    margin:0 auto;
  }
  .ra-footer-links{
    justify-items:center;
  }
  .ra-footer-actions-block{
    align-items:stretch;
  }
  .ra-footer-lower{
    flex-direction:column;
    text-align:center;
  }
}


/* v4.6.0 seamless gallery carousel */
.ra-recent-work-carousel,
.ra-gallery-carousel-page{
  padding:46px 0 58px;
  overflow:hidden;
  background:
    radial-gradient(600px 200px at 50% 0%, rgba(216,166,62,.10), transparent 70%),
    #030303;
}
.ra-section-head-centered{
  text-align:center;
  margin-bottom:28px;
}
.ra-section-head-centered h2{
  margin-left:auto;
  margin-right:auto;
}
.ra-carousel-shell{
  width:100%;
  overflow:hidden;
  position:relative;
  padding:10px 0 16px;
}
.ra-carousel-shell:before,
.ra-carousel-shell:after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:min(160px,12vw);
  z-index:3;
  pointer-events:none;
}
.ra-carousel-shell:before{
  left:0;
  background:linear-gradient(90deg,#030303,transparent);
}
.ra-carousel-shell:after{
  right:0;
  background:linear-gradient(270deg,#030303,transparent);
}
.ra-gallery-carousel-track{
  display:flex;
  gap:22px;
  width:max-content;
  animation:raGalleryMarquee 42s linear infinite;
  will-change:transform;
}
.ra-carousel-shell:hover .ra-gallery-carousel-track{
  animation-play-state:paused;
}
.ra-gallery-slide{
  flex:0 0 310px;
  height:210px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(216,166,62,.72);
  background:#050505;
  clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px);
  box-shadow:0 18px 46px rgba(0,0,0,.46), inset 0 0 28px rgba(216,166,62,.05);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.ra-gallery-slide:hover{
  transform:translateY(-4px);
  border-color:rgba(255,224,138,.95);
  box-shadow:0 0 0 1px rgba(255,224,138,.36),0 0 30px rgba(216,166,62,.42),0 24px 54px rgba(0,0,0,.55),inset 0 0 34px rgba(216,166,62,.08);
}
.ra-gallery-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(1.05) contrast(1.05);
  transition:transform .28s ease, filter .28s ease;
}
.ra-gallery-slide:hover img{
  transform:scale(1.045);
  filter:saturate(1.12) contrast(1.08) brightness(1.04);
}
.ra-gallery-slide:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.76));
  pointer-events:none;
}
.ra-gallery-slide span{
  position:absolute;
  left:16px;
  right:16px;
  bottom:14px;
  z-index:2;
  color:#fff;
  font-size:13px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:center;
  text-shadow:0 2px 12px #000;
}
.ra-carousel-shell-large .ra-gallery-slide{
  flex-basis:360px;
  height:250px;
}
@keyframes raGalleryMarquee{
  from{transform:translateX(0);}
  to{transform:translateX(calc(-50% - 11px));}
}
@media(max-width:760px){
  .ra-recent-work-carousel,
  .ra-gallery-carousel-page{
    padding:34px 0 44px;
  }
  .ra-gallery-carousel-track{
    gap:14px;
    animation-duration:34s;
  }
  .ra-gallery-slide,
  .ra-carousel-shell-large .ra-gallery-slide{
    flex-basis:245px;
    height:175px;
  }
  .ra-carousel-shell:before,
  .ra-carousel-shell:after{
    width:48px;
  }
}
@media(prefers-reduced-motion:reduce){
  .ra-gallery-carousel-track{
    animation:none;
  }
}


/* v4.7.0 working contact form */
.ra-contact-form h2{
  margin:0 0 18px;
  color:#fff;
  font-family:var(--font-head);
  font-size:28px;
  line-height:1.1;
  text-transform:uppercase;
}
.ra-form-alert{
  margin:0 0 16px;
  padding:14px 16px;
  border:1px solid rgba(216,166,62,.65);
  background:rgba(0,0,0,.45);
  color:#fff;
  font-size:14px;
  line-height:1.45;
}
.ra-form-alert-success{
  border-color:rgba(216,166,62,.9);
  box-shadow:0 0 18px rgba(216,166,62,.18);
}
.ra-form-alert-error{
  border-color:rgba(255,80,80,.75);
  box-shadow:0 0 18px rgba(255,80,80,.13);
}
.ra-honeypot{
  position:absolute!important;
  left:-99999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
.ra-form-note{
  margin:13px 0 0!important;
  color:rgba(247,242,233,.58)!important;
  font-size:12px!important;
  line-height:1.45!important;
  text-align:center;
}
.ra-contact-form button{
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.ra-contact-form button:hover{
  transform:translateY(-2px);
  box-shadow:0 0 26px rgba(216,166,62,.36);
  filter:brightness(1.04);
}


/* v4.8.0 GDPR consent checkbox */
.ra-form-note{
  display:none!important;
}
.ra-gdpr-check{
  display:grid;
  grid-template-columns:22px 1fr;
  gap:11px;
  align-items:flex-start;
  margin:2px 0 16px;
  padding:13px 14px;
  border:1px solid rgba(216,166,62,.48);
  background:rgba(0,0,0,.35);
  color:rgba(247,242,233,.82);
  font-size:13px;
  line-height:1.45;
  cursor:pointer;
}
.ra-gdpr-check input{
  width:18px!important;
  height:18px!important;
  margin:1px 0 0!important;
  accent-color:#d8a63e;
}
.ra-gdpr-check span{
  display:block;
}
.ra-gdpr-check:hover{
  border-color:rgba(255,224,138,.82);
  box-shadow:0 0 18px rgba(216,166,62,.16);
}


/* v4.9.0 mobile header + hero typography polish */
@media(max-width:760px){
  .admin-bar .ra-header{
    top:0;
  }

  .ra-header{
    position:sticky;
    top:0;
    background:linear-gradient(180deg,rgba(0,0,0,.96),rgba(0,0,0,.88));
    border-bottom:1px solid rgba(216,166,62,.55);
    box-shadow:0 12px 32px rgba(0,0,0,.62);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }

  .ra-header-inner{
    min-height:82px;
    height:auto;
    display:grid;
    grid-template-columns:76px 1fr auto;
    align-items:center;
    gap:10px;
    padding:10px 0;
  }

  .ra-logo{
    display:flex;
    align-items:center;
  }

  .ra-logo img{
    width:58px!important;
    max-height:58px!important;
    object-fit:contain;
    background:transparent!important;
    filter:drop-shadow(0 0 14px rgba(216,166,62,.35));
  }

  .ra-menu-toggle{
    display:inline-flex;
    grid-column:3;
    grid-row:1;
    justify-self:end;
    align-items:center;
    justify-content:center;
    min-width:82px;
    height:42px;
    padding:0 16px;
    border:1px solid rgba(216,166,62,.68);
    background:rgba(0,0,0,.34);
    color:#fff;
    border-radius:0;
    text-transform:uppercase;
    font-size:12px;
    font-weight:950;
    letter-spacing:.08em;
    box-shadow:inset 0 0 22px rgba(216,166,62,.08),0 0 16px rgba(0,0,0,.5);
  }

  .ra-header-phone{
    grid-column:2;
    grid-row:1;
    justify-self:end;
    width:auto!important;
    min-width:82px!important;
    height:42px!important;
    padding:0 16px!important;
    margin:0;
    gap:8px;
    font-size:0!important;
    border-radius:0;
    white-space:nowrap;
    box-shadow:0 0 18px rgba(216,166,62,.25), inset 0 1px 0 rgba(255,255,255,.42);
  }

  .ra-header-phone:after{
    content:"Call";
    font-size:12px;
    line-height:1;
    font-weight:950;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  .ra-header-phone svg{
    width:16px!important;
    height:16px!important;
  }

  .ra-nav{
    grid-column:1/-1;
    grid-row:2;
    display:none;
    margin-top:8px;
    padding:8px;
    gap:0;
    border:1px solid rgba(216,166,62,.36);
    background:rgba(0,0,0,.72);
    box-shadow:inset 0 0 28px rgba(216,166,62,.06);
  }

  .ra-header.is-open .ra-nav{
    display:grid;
  }

  .ra-nav a,
  .ra-nav li a{
    display:block;
    width:100%;
    padding:14px 10px!important;
    text-align:center;
    border-bottom:1px solid rgba(216,166,62,.14);
    font-size:12px;
    letter-spacing:.11em;
  }

  .ra-nav a:after{
    bottom:6px;
  }

  .ra-nav a:last-child,
  .ra-nav li:last-child a{
    border-bottom:0;
  }

  .ra-hero{
    min-height:calc(100svh - 82px);
    padding-top:0;
    align-items:center;
  }

  .ra-hero-inner{
    width:min(100% - 28px,460px);
    padding:34px 18px 28px;
    background:radial-gradient(circle at 50% 46%,rgba(0,0,0,.58),rgba(0,0,0,.28) 58%,transparent 100%);
  }

  .ra-kicker{
    margin-bottom:15px;
    font-size:10px;
    letter-spacing:.23em;
    gap:9px;
    white-space:nowrap;
  }

  .ra-kicker span{
    width:38px;
  }

  .ra-hero-title{
    font-size:clamp(49px,13.6vw,66px)!important;
    line-height:.94;
    letter-spacing:.018em;
    text-shadow:0 5px 0 rgba(0,0,0,.55),0 0 24px rgba(216,166,62,.16);
  }

  .ra-hero-title b{
    background:linear-gradient(180deg,#fff 0%,#ececec 38%,#9b9b9b 72%,#ffffff 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    -webkit-text-stroke:.45px rgba(255,255,255,.22);
  }

  .ra-hero-title strong{
    background:linear-gradient(180deg,#fff2b5 0%,#e0b44d 42%,#9a6a1f 74%,#ffe798 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    -webkit-text-stroke:.35px rgba(255,224,138,.18);
  }

  .ra-hero-intro{
    max-width:360px;
    margin:18px auto 24px;
    font-size:15px;
    line-height:1.48;
    color:rgba(255,255,255,.88);
  }

  .ra-hero-actions{
    gap:12px;
  }

  .ra-btn{
    width:min(330px,100%);
    min-width:0;
    height:54px;
    border-radius:0;
    font-size:15px;
  }

  .ra-btn-dark{
    background:rgba(0,0,0,.56);
  }
}

@media(max-width:380px){
  .ra-header-inner{
    grid-template-columns:62px 1fr auto;
  }
  .ra-logo img{
    width:50px!important;
    max-height:50px!important;
  }
  .ra-header-phone{
    min-width:72px!important;
    padding:0 12px!important;
  }
  .ra-menu-toggle{
    min-width:72px;
    padding:0 12px;
  }
  .ra-hero-title{
    font-size:clamp(43px,13vw,58px)!important;
  }
}


/* v5.1.0 mobile hero text refinement */
@media(max-width:760px){
  .ra-hero-title{
    font-family:var(--font-head)!important;
    font-size:clamp(24px,7.6vw,36px)!important;
    line-height:1.04!important;
    letter-spacing:.01em!important;
    font-weight:800!important;
    color:#f5f1e8!important;
    text-transform:uppercase!important;
    text-shadow:0 3px 18px rgba(0,0,0,.88)!important;
    max-width:320px;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .ra-hero-title b,
  .ra-hero-title strong{
    display:block;
    color:#f5f1e8!important;
    background:none!important;
    -webkit-background-clip:initial!important;
    background-clip:initial!important;
    -webkit-text-stroke:0!important;
    text-shadow:inherit!important;
  }

  .ra-hero-title strong{
    margin-top:2px;
  }

  .ra-kicker{
    color:var(--gold)!important;
  }
}

/* Stop the contact form global input styling making the GDPR checkbox oversized */
.ra-contact-form .ra-gdpr-check input[type="checkbox"]{
  -webkit-appearance:checkbox!important;
  appearance:checkbox!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  padding:0!important;
  margin:2px 0 0!important;
  border:1px solid rgba(216,166,62,.78)!important;
  border-radius:3px!important;
  background:#111!important;
  box-shadow:none!important;
  display:inline-block!important;
  flex:0 0 18px!important;
  accent-color:#d8a63e;
}

.ra-gdpr-check{
  grid-template-columns:18px 1fr!important;
  gap:10px!important;
  align-items:flex-start!important;
}

.ra-gdpr-check span{
  font-size:13px;
  line-height:1.42;
}


/* v5.2.0 reduce mobile hero top spacing */
@media(max-width:760px){
  .ra-hero{
    min-height:620px!important;
    align-items:flex-start!important;
  }

  .ra-hero-inner{
    padding-top:92px!important;
    padding-bottom:24px!important;
  }

  .ra-hero-frame{
    inset:8px!important;
  }
}

@media(max-width:390px){
  .ra-hero{
    min-height:590px!important;
  }

  .ra-hero-inner{
    padding-top:78px!important;
  }
}


/* v5.3.0 desktop + tablet hero text match mobile white serif style */
@media (min-width:761px){
  .ra-hero-title{
    font-family:var(--font-head)!important;
    font-size:clamp(46px,5.4vw,78px)!important;
    line-height:1.02!important;
    letter-spacing:.01em!important;
    font-weight:800!important;
    color:#f5f1e8!important;
    text-transform:uppercase!important;
    text-shadow:0 3px 18px rgba(0,0,0,.88)!important;
    max-width:760px;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .ra-hero-title b,
  .ra-hero-title strong{
    display:block;
    color:#f5f1e8!important;
    background:none!important;
    -webkit-background-clip:initial!important;
    background-clip:initial!important;
    -webkit-text-stroke:0!important;
    text-shadow:inherit!important;
    filter:none!important;
  }

  .ra-hero-title strong{
    margin-top:4px;
  }
}

@media (min-width:761px) and (max-width:1024px){
  .ra-hero-title{
    font-size:clamp(42px,5vw,64px)!important;
    max-width:680px;
  }
}


/* v5.4.0 editable icon support */
.ra-custom-icon-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
  font-size:34px;
  line-height:1;
  font-weight:900;
  filter:drop-shadow(0 0 12px rgba(216,166,62,.35));
}
.ra-trust b svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
}
.ra-trust b svg path,
.ra-trust b svg circle{
  fill:none;
  stroke:currentColor;
}
.ra-footer-logo-large + .ra-footer-brand-copy{}
.ra-footer-cta svg path,
.ra-footer-facebook svg path,
.ra-header-phone svg path{
  stroke:none;
}


/* v5.5.0 emoji picker/icon output polish */
.ra-custom-icon-text{
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
}
.ra-tile-icon .ra-custom-icon-text{
  font-size:48px;
}
.ra-footer-facebook .ra-custom-icon-text,
.ra-footer-cta .ra-custom-icon-text,
.ra-header-phone .ra-custom-icon-text{
  font-size:20px;
  color:inherit;
  filter:none;
}

/* v5.5.1 safe agency elevation pass — original layout preserved */
.ra-header{
  background:linear-gradient(180deg,rgba(10,10,10,.96),rgba(0,0,0,.88));
  border-bottom-color:rgba(255,224,138,.52);
  box-shadow:0 14px 38px rgba(0,0,0,.55),0 0 0 1px rgba(255,224,138,.05) inset;
}
.ra-header:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,rgba(255,224,138,.92),rgba(216,166,62,.55),transparent);
  box-shadow:0 0 18px rgba(216,166,62,.42);
  pointer-events:none;
}
.ra-logo{
  display:inline-flex;align-items:center;
}
.ra-logo img{
  transition:transform .22s ease,filter .22s ease;
}
.ra-logo:hover img{
  transform:translateY(-1px) scale(1.025);
  filter:drop-shadow(0 0 22px rgba(255,224,138,.38));
}
.ra-nav a{
  transition:color .18s ease,text-shadow .18s ease;
}
.ra-nav a:hover{
  text-shadow:0 0 16px rgba(216,166,62,.52);
}
.ra-header-phone,.ra-btn,.ra-footer-cta,.ra-service-cta{
  overflow:hidden;
  position:relative;
  transform:translateZ(0);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,filter .2s ease;
}
.ra-header-phone:before,.ra-btn:before,.ra-footer-cta:before,.ra-service-cta:before{
  content:"";
  position:absolute;
  top:-40%;bottom:-40%;left:-80%;width:42%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);
  transform:skewX(-18deg);
  transition:left .55s ease;
  pointer-events:none;
}
.ra-header-phone:hover,.ra-btn:hover,.ra-footer-cta:hover,.ra-service-cta:hover{
  transform:translateY(-2px);
  filter:saturate(1.08);
}
.ra-header-phone:hover:before,.ra-btn:hover:before,.ra-footer-cta:hover:before,.ra-service-cta:hover:before{
  left:125%;
}
.ra-btn-gold:hover,.ra-header-phone:hover{
  box-shadow:0 0 34px rgba(216,166,62,.46),0 12px 30px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.6);
}
.ra-btn-dark:hover{
  border-color:rgba(255,224,138,.9);
  box-shadow:0 0 28px rgba(216,166,62,.26),inset 0 0 28px rgba(216,166,62,.08);
}
.ra-elevation-panel{
  padding:62px 0;
  background:radial-gradient(640px 220px at 50% 0%,rgba(216,166,62,.11),transparent 72%),linear-gradient(180deg,#050505,#030303);
}
.ra-elevation-head{
  max-width:830px;
  margin:0 auto 28px;
  text-align:center;
}
.ra-elevation-head h2,.ra-services-intro h2{
  margin:8px 0 12px;
  font-family:var(--font-head);
  font-size:clamp(28px,3.2vw,44px);
  line-height:1.12;
  color:#fff7df;
}
.ra-elevation-head p,.ra-services-intro p{
  color:rgba(247,242,233,.78);
  line-height:1.7;
}
.ra-elevation-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.ra-elevation-grid article,.ra-about-luxury-notes article{
  border:1px solid rgba(216,166,62,.48);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),rgba(0,0,0,.62);
  padding:24px;
  clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%,0 14px);
  box-shadow:0 18px 40px rgba(0,0,0,.22),inset 0 0 26px rgba(216,166,62,.035);
}
.ra-elevation-grid span{
  display:inline-flex;
  margin-bottom:12px;
  color:var(--gold2);
  font-family:var(--font-head);
  letter-spacing:.12em;
}
.ra-elevation-grid h3,.ra-about-luxury-notes h3{
  margin:0 0 10px;
  color:#fff;
  font-family:var(--font-head);
  font-size:21px;
}
.ra-elevation-grid p,.ra-about-luxury-notes p{
  margin:0;
  color:rgba(247,242,233,.74);
  line-height:1.62;
  font-size:14px;
}
.ra-services-intro{
  max-width:900px;
  margin:0 auto 34px;
  text-align:center;
}
.ra-service-row{
  grid-template-columns:82px 1fr auto 230px;
  gap:22px;
}
.ra-service-cta{
  align-self:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:150px;
  height:44px;
  padding:0 16px;
  text-decoration:none;
  border:1px solid rgba(255,224,138,.72);
  background:linear-gradient(180deg,#ffe695,#d8a63e 55%,#926619);
  color:#070707;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.ra-about-luxury-notes{
  padding:42px 0 48px;
  background:#030303;
}
.ra-about-luxury-notes .ra-wrap{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.ra-footer-premium-v2{
  background:radial-gradient(780px 180px at 50% 0,rgba(216,166,62,.12),transparent 70%),linear-gradient(180deg,#080808,#010101);
}
.ra-footer-main{
  border-color:rgba(255,224,138,.58)!important;
  box-shadow:0 20px 55px rgba(0,0,0,.34),inset 0 0 35px rgba(216,166,62,.045);
}
.ra-footer-lower{
  border-top-color:rgba(255,224,138,.3)!important;
}
@media(max-width:980px){
  .ra-elevation-grid,.ra-about-luxury-notes .ra-wrap{grid-template-columns:1fr;}
  .ra-service-row{grid-template-columns:70px 1fr;}
  .ra-service-row img{grid-column:1/-1;width:100%;max-height:220px;object-fit:cover;}
  .ra-service-cta{grid-column:2;justify-self:start;}
}
@media(max-width:760px){
  .ra-elevation-panel{padding:42px 0;}
  .ra-elevation-grid article,.ra-about-luxury-notes article{padding:20px;}
  .ra-service-row{grid-template-columns:1fr;text-align:center;justify-items:center;}
  .ra-service-row img,.ra-service-cta{grid-column:auto;}
  .ra-service-cta{justify-self:center;}
  .ra-services-intro{text-align:center;margin-bottom:24px;}
}

/* v5.5.2 30K agency elevation — luxury header/footer + centred cards */
.ra-header-30k{
  background:
    radial-gradient(640px 90px at 50% 0,rgba(255,224,138,.16),transparent 72%),
    linear-gradient(180deg,rgba(12,11,9,.98),rgba(1,1,1,.92));
  border-bottom:1px solid rgba(255,224,138,.58);
  box-shadow:0 18px 60px rgba(0,0,0,.68),0 1px 0 rgba(255,255,255,.045) inset;
}
.ra-header-30k:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,238,172,.98),rgba(216,166,62,.7),transparent);
  box-shadow:0 0 22px rgba(255,224,138,.46);
  pointer-events:none;
}
.ra-header-luxury-strip{
  border-bottom:1px solid rgba(216,166,62,.2);
  background:linear-gradient(90deg,rgba(255,224,138,.055),rgba(0,0,0,.18),rgba(255,224,138,.055));
}
.ra-header-luxury-strip-inner{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  text-align:center;
  color:rgba(255,244,211,.82);
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.ra-header-luxury-strip-inner span:not(:last-child):after{
  content:"";
  display:inline-block;
  width:5px;height:5px;
  margin-left:22px;
  vertical-align:middle;
  border-radius:50%;
  background:var(--gold);
  box-shadow:0 0 12px rgba(216,166,62,.72);
}
.ra-header-30k .ra-header-inner{
  height:96px;
  grid-template-columns:185px 1fr 205px;
}
.ra-header-30k .ra-logo{
  width:148px;
  min-height:66px;
  justify-content:center;
  border:1px solid rgba(255,224,138,.18);
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.012));
  box-shadow:inset 0 0 26px rgba(216,166,62,.045),0 12px 34px rgba(0,0,0,.28);
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
}
.ra-header-30k .ra-logo img{width:118px;max-height:58px;object-fit:contain;}
.ra-header-30k .ra-nav{
  gap:10px;
  padding:8px;
  border:1px solid rgba(255,224,138,.14);
  background:rgba(0,0,0,.2);
  border-radius:999px;
  box-shadow:inset 0 0 24px rgba(255,224,138,.025);
}
.ra-header-30k .ra-nav a{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  padding:0 16px;
  border-radius:999px;
  color:rgba(255,255,255,.9);
}
.ra-header-30k .ra-nav a:after{bottom:5px;height:1px;}
.ra-header-30k .ra-nav a:hover,
.ra-header-30k .ra-nav .current-menu-item a{
  background:rgba(216,166,62,.08);
  color:#ffe08a;
}
.ra-header-30k .ra-header-phone{
  height:52px;
  border-radius:999px;
  letter-spacing:.03em;
  border-color:rgba(255,236,166,.92);
  box-shadow:0 0 32px rgba(216,166,62,.36),0 14px 34px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.62);
}

/* Premium card alignment: central text on every card/device */
.ra-service-tile,
.ra-trust,
.ra-before-card,
.ra-gallery-slide,
.ra-elevation-grid article,
.ra-about-luxury-notes article,
.ra-service-row,
.ra-contact-box>div,
.ra-footer-main>div,
.ra-footer-brand-block,
.ra-footer-contact-block,
.ra-footer-links-block,
.ra-footer-actions-block{
  text-align:center;
}
.ra-service-tile,
.ra-elevation-grid article,
.ra-about-luxury-notes article,
.ra-before-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.ra-trust{
  grid-template-columns:1fr;
  justify-items:center;
  align-content:center;
  row-gap:6px;
}
.ra-trust b{grid-row:auto;}
.ra-service-row{
  justify-items:center;
  text-align:center;
  background:
    radial-gradient(260px 120px at 50% 0,rgba(255,224,138,.09),transparent 72%),
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012)),
    rgba(0,0,0,.72);
  box-shadow:0 18px 48px rgba(0,0,0,.32),inset 0 0 32px rgba(216,166,62,.035);
}
.ra-service-row>div:nth-child(2){max-width:720px;}
.ra-service-row p{max-width:680px;margin-left:auto;margin-right:auto;}
.ra-service-row img{
  border-left:0;
  border:1px solid rgba(255,224,138,.24);
  box-shadow:0 16px 36px rgba(0,0,0,.34);
}
.ra-elevation-grid article,
.ra-about-luxury-notes article,
.ra-service-tile,
.ra-before-card{
  min-height:100%;
  border-color:rgba(255,224,138,.58);
  background:
    radial-gradient(260px 120px at 50% 0,rgba(255,224,138,.09),transparent 72%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.014)),
    rgba(0,0,0,.66);
  box-shadow:0 20px 52px rgba(0,0,0,.3),inset 0 0 34px rgba(216,166,62,.045);
}
.ra-elevation-grid article:hover,
.ra-about-luxury-notes article:hover,
.ra-service-tile:hover,
.ra-before-card:hover,
.ra-trust:hover,
.ra-service-row:hover{
  transform:translateY(-3px);
  border-color:rgba(255,224,138,.88);
  box-shadow:0 26px 70px rgba(0,0,0,.42),0 0 34px rgba(216,166,62,.12),inset 0 0 38px rgba(216,166,62,.06);
}
.ra-elevation-grid article,
.ra-about-luxury-notes article,
.ra-service-tile,
.ra-before-card,
.ra-trust,
.ra-service-row{
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
}

/* 30K footer */
.ra-footer-30k{
  padding:0 0 30px;
  background:
    radial-gradient(760px 260px at 50% 0,rgba(255,224,138,.14),transparent 72%),
    linear-gradient(180deg,#080706,#010101 72%);
  border-top:1px solid rgba(255,224,138,.48);
}
.ra-footer-appointment-panel{
  margin:34px 0 24px;
  padding:32px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:28px;
  align-items:center;
  text-align:left;
  border:1px solid rgba(255,224,138,.58);
  background:
    linear-gradient(120deg,rgba(255,224,138,.12),rgba(255,255,255,.035) 44%,rgba(0,0,0,.48)),
    rgba(0,0,0,.68);
  box-shadow:0 24px 70px rgba(0,0,0,.46),inset 0 0 42px rgba(216,166,62,.045);
  clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px);
}
.ra-footer-appointment-panel h2{
  margin:6px 0 10px;
  font-family:var(--font-head);
  font-size:clamp(28px,3vw,44px);
  color:#fff6dc;
}
.ra-footer-appointment-panel p:not(.ra-mini){
  max-width:760px;
  margin:0;
  color:rgba(247,242,233,.78);
  line-height:1.65;
}
.ra-footer-30k .ra-footer-main{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,224,138,.56)!important;
  background:
    radial-gradient(420px 170px at 12% 0,rgba(255,224,138,.11),transparent 70%),
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01)),
    rgba(0,0,0,.72);
  clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px);
}
.ra-footer-30k .ra-footer-main:before{
  content:"";
  position:absolute;
  left:24px;right:24px;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,224,138,.86),transparent);
}
.ra-footer-30k .ra-footer-logo-large{
  margin-left:auto;margin-right:auto;
  display:flex;
  justify-content:center;
}
.ra-footer-30k .ra-footer-links{
  align-items:center;
}
.ra-footer-30k .ra-footer-links a{
  justify-content:center;
}
.ra-footer-30k .ra-footer-actions-block{
  justify-content:center;
  align-items:center;
}
.ra-footer-30k .ra-footer-lower{
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid rgba(255,224,138,.28)!important;
}

/* Make every CTA feel alive but still classy */
.ra-btn,.ra-header-phone,.ra-footer-cta,.ra-service-cta,.ra-contact-form button{
  isolation:isolate;
}
.ra-btn:after,.ra-header-phone:after,.ra-footer-cta:after,.ra-service-cta:after,.ra-contact-form button:after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.28),transparent 42%);
  opacity:.42;
  pointer-events:none;
  z-index:-1;
}
.ra-btn:hover,.ra-header-phone:hover,.ra-footer-cta:hover,.ra-service-cta:hover,.ra-contact-form button:hover{
  letter-spacing:.04em;
}

@media(max-width:1050px){
  .ra-header-30k .ra-header-inner{grid-template-columns:150px 1fr 178px;gap:14px;}
  .ra-header-30k .ra-logo{width:132px;}
  .ra-header-30k .ra-logo img{width:104px;}
  .ra-header-30k .ra-nav{gap:4px;padding:6px;}
  .ra-header-30k .ra-nav a{padding:0 10px;font-size:12px;}
  .ra-header-luxury-strip-inner{gap:12px;font-size:10px;letter-spacing:.12em;}
  .ra-header-luxury-strip-inner span:not(:last-child):after{margin-left:12px;}
  .ra-footer-appointment-panel{grid-template-columns:1fr;text-align:center;justify-items:center;}
  .ra-footer-appointment-panel p:not(.ra-mini){margin-left:auto;margin-right:auto;}
}
@media(max-width:760px){
  .ra-header-luxury-strip{display:none;}
  .ra-header-30k .ra-header-inner{grid-template-columns:96px 1fr;min-height:82px;height:auto;}
  .ra-header-30k .ra-logo{width:88px;min-height:58px;}
  .ra-header-30k .ra-logo img{width:74px;}
  .ra-header-30k .ra-nav{
    border-radius:18px;
    background:rgba(0,0,0,.42);
    padding:12px;
  }
  .ra-header-30k .ra-nav a{width:100%;justify-content:center;}
  .ra-header-30k .ra-header-phone{height:46px;}
  .ra-service-row,.ra-contact-box>div{justify-content:center;align-items:center;}
  .ra-footer-appointment-panel{padding:24px 18px;margin-top:24px;}
  .ra-footer-30k .ra-footer-main>div{align-items:center!important;justify-content:center!important;}
  .ra-footer-brand-block{flex-direction:column;}
}
.ra-contact-form button{position:relative;overflow:hidden;}
.ra-footer-30k .ra-footer-brand-copy p{margin-left:auto;margin-right:auto;}
.ra-footer-30k .ra-footer-contact-block p{margin-left:auto;margin-right:auto;}
.ra-footer-30k .ra-footer-links a{width:auto;padding-left:0;}
.ra-footer-30k .ra-footer-links a:before{display:none;}
.ra-footer-30k .ra-footer-links a:after{left:50%;transform:translateX(-50%);}
.ra-footer-30k .ra-footer-links a:hover:after{width:70%;}

/* v5.5.3 final 30K polish pass — readability, depth, centred cards */
.ra-footer .ra-btn-gold,
.ra-footer .ra-btn-gold:visited,
.ra-footer-appointment-panel .ra-btn-gold,
.ra-footer-appointment-panel .ra-btn-gold:visited,
.ra-footer-30k .ra-footer-cta,
.ra-footer-30k .ra-footer-cta:visited{
  color:#050505!important;
  text-shadow:none!important;
}
.ra-footer .ra-btn-gold svg,
.ra-footer-appointment-panel .ra-btn-gold svg,
.ra-footer-30k .ra-footer-cta svg{
  fill:#050505!important;
  color:#050505!important;
  opacity:1!important;
  filter:none!important;
}
.ra-footer .ra-btn-gold,
.ra-footer-30k .ra-footer-cta,
.ra-header-30k .ra-header-phone,
.ra-btn-gold{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg,#fff4bf 0%,#e9bd55 39%,#bd8427 74%,#fff1ad 100%)!important;
  border:1px solid rgba(255,236,166,.95)!important;
  box-shadow:
    0 0 0 1px rgba(255,224,138,.20),
    0 16px 40px rgba(216,166,62,.25),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -2px 0 rgba(0,0,0,.18)!important;
  isolation:isolate;
}
.ra-footer .ra-btn-gold:before,
.ra-footer-30k .ra-footer-cta:before,
.ra-header-30k .ra-header-phone:before,
.ra-btn-gold:before{
  content:"";
  position:absolute;
  inset:-45% auto -45% -70%;
  width:55%;
  transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.66),transparent);
  opacity:.48;
  transition:left .55s ease;
  pointer-events:none;
  z-index:1;
}
.ra-footer .ra-btn-gold:hover:before,
.ra-footer-30k .ra-footer-cta:hover:before,
.ra-header-30k .ra-header-phone:hover:before,
.ra-btn-gold:hover:before{left:118%;}
.ra-footer .ra-btn-gold > *,
.ra-footer-30k .ra-footer-cta > *,
.ra-header-30k .ra-header-phone > *,
.ra-btn-gold > *{position:relative;z-index:2;}
.ra-footer-appointment-panel .ra-btn-gold{
  min-width:220px;
  height:58px;
  color:#050505!important;
  font-size:14px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ra-footer-appointment-panel .ra-btn-gold::after{display:none;}
.ra-footer-microtrust{
  margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.ra-footer-microtrust span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border:1px solid rgba(255,224,138,.30);
  background:rgba(0,0,0,.32);
  color:rgba(255,244,211,.88);
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  border-radius:999px;
  box-shadow:inset 0 0 18px rgba(216,166,62,.035);
}
.ra-header-30k{
  background:
    radial-gradient(740px 110px at 50% -10px,rgba(255,232,154,.20),transparent 72%),
    linear-gradient(180deg,rgba(18,15,10,.98),rgba(1,1,1,.94));
}
.ra-header-30k .ra-header-inner{
  height:88px;
  grid-template-columns:172px 1fr 205px;
}
.ra-header-30k .ra-logo{
  min-height:60px;
  width:136px;
  background:
    radial-gradient(circle at 50% 0,rgba(255,224,138,.13),transparent 70%),
    rgba(0,0,0,.36);
  border-color:rgba(255,224,138,.25);
}
.ra-header-30k .ra-logo img{width:108px;max-height:54px;}
.ra-header-30k .ra-nav{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012)),rgba(0,0,0,.36);
  border-color:rgba(255,224,138,.20);
  box-shadow:0 14px 35px rgba(0,0,0,.22),inset 0 0 24px rgba(255,224,138,.03);
}
.ra-header-30k .ra-nav a{
  min-height:38px;
  padding:0 15px;
  font-size:12px;
  letter-spacing:.11em;
}
.ra-header-30k .ra-nav a:hover,
.ra-header-30k .ra-nav .current-menu-item a{
  background:linear-gradient(180deg,rgba(255,224,138,.15),rgba(255,224,138,.055));
  box-shadow:inset 0 0 18px rgba(255,224,138,.035);
}
.ra-header-30k .ra-header-phone{height:48px;min-width:190px;font-size:13px;}
.ra-hero-actions .ra-btn,
.ra-contact-form button,
.ra-service-cta,
.ra-footer-cta,
.ra-header-phone{
  transform:translateZ(0);
  transition:transform .24s ease,box-shadow .24s ease,letter-spacing .24s ease,filter .24s ease;
}
.ra-hero-actions .ra-btn:hover,
.ra-contact-form button:hover,
.ra-service-cta:hover,
.ra-footer-cta:hover,
.ra-header-phone:hover{
  transform:translateY(-2px) scale(1.015);
  filter:saturate(1.06) brightness(1.02);
}
.ra-service-tile,
.ra-trust,
.ra-before-card,
.ra-gallery-slide,
.ra-elevation-grid article,
.ra-about-luxury-notes article,
.ra-service-row,
.ra-contact-box>div,
.ra-contact-form,
.ra-footer-main>div{
  text-align:center!important;
  align-items:center!important;
  justify-content:center!important;
}
.ra-service-tile h1,.ra-service-tile h2,.ra-service-tile h3,.ra-service-tile p,
.ra-trust h1,.ra-trust h2,.ra-trust h3,.ra-trust p,.ra-trust span,.ra-trust small,
.ra-before-card h1,.ra-before-card h2,.ra-before-card h3,.ra-before-card p,.ra-before-card span,
.ra-gallery-slide h1,.ra-gallery-slide h2,.ra-gallery-slide h3,.ra-gallery-slide p,.ra-gallery-slide span,
.ra-elevation-grid article h1,.ra-elevation-grid article h2,.ra-elevation-grid article h3,.ra-elevation-grid article p,.ra-elevation-grid article span,
.ra-about-luxury-notes article h1,.ra-about-luxury-notes article h2,.ra-about-luxury-notes article h3,.ra-about-luxury-notes article p,
.ra-service-row h1,.ra-service-row h2,.ra-service-row h3,.ra-service-row p,
.ra-contact-box h1,.ra-contact-box h2,.ra-contact-box h3,.ra-contact-box p,.ra-contact-box a,
.ra-footer-main h1,.ra-footer-main h2,.ra-footer-main h3,.ra-footer-main p,.ra-footer-main a,.ra-footer-main span,.ra-footer-main strong{
  text-align:center!important;
  margin-left:auto;
  margin-right:auto;
}
.ra-service-tile,
.ra-trust,
.ra-elevation-grid article,
.ra-about-luxury-notes article,
.ra-before-card,
.ra-service-row,
.ra-contact-form{
  background:
    linear-gradient(135deg,rgba(255,224,138,.08),transparent 32%),
    radial-gradient(320px 150px at 50% 0,rgba(255,224,138,.10),transparent 74%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),
    rgba(0,0,0,.72)!important;
  border-color:rgba(255,224,138,.54)!important;
}
.ra-service-tile:before,
.ra-trust:before,
.ra-elevation-grid article:before,
.ra-about-luxury-notes article:before,
.ra-before-card:before,
.ra-service-row:before{
  content:"";
  position:absolute;
  left:16px;right:16px;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,224,138,.74),transparent);
  opacity:.55;
  pointer-events:none;
}
.ra-gallery-slide{
  background:linear-gradient(180deg,rgba(255,224,138,.055),rgba(0,0,0,.86));
  border:1px solid rgba(255,224,138,.35);
  box-shadow:0 20px 46px rgba(0,0,0,.38);
}
.ra-gallery-slide span{
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%);
  width:max-content;
  max-width:calc(100% - 28px);
  text-align:center;
}
.ra-footer-30k .ra-footer-main{
  grid-template-columns:1.35fr .8fr 1.15fr .85fr;
  gap:0;
  padding:28px 30px;
  background:
    radial-gradient(480px 190px at 12% 0,rgba(255,224,138,.13),transparent 72%),
    radial-gradient(480px 190px at 88% 0,rgba(255,224,138,.09),transparent 72%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),
    rgba(0,0,0,.74)!important;
}
.ra-footer-30k .ra-footer-brand-block,
.ra-footer-30k .ra-footer-links-block,
.ra-footer-30k .ra-footer-contact-block,
.ra-footer-30k .ra-footer-actions-block{padding:0 22px;}
.ra-footer-30k .ra-footer-actions-block .ra-footer-cta{
  min-width:170px;
  height:54px;
  border-radius:6px;
  font-size:14px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ra-footer-30k .ra-footer-facebook{
  width:46px;
  height:46px;
  margin-top:16px;
  border:1px solid rgba(255,224,138,.45);
  background:rgba(0,0,0,.36);
  border-radius:999px;
  box-shadow:inset 0 0 18px rgba(216,166,62,.045),0 10px 26px rgba(0,0,0,.32);
}
.ra-footer-30k .ra-footer-facebook:hover{transform:translateY(-2px);border-color:rgba(255,224,138,.86);box-shadow:0 0 22px rgba(216,166,62,.18);}
.ra-footer-30k .ra-footer-lower{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  color:rgba(247,242,233,.58);
}
.ra-footer-30k .ra-footer-lower p{margin:0;}
.ra-footer-30k .ra-footer-lower a{color:#e9bd55;font-weight:900;}
@media(max-width:1050px){
  .ra-header-30k .ra-header-inner{grid-template-columns:140px 1fr 180px;height:84px;}
  .ra-header-30k .ra-nav a{padding:0 10px;font-size:11px;}
  .ra-footer-30k .ra-footer-main{grid-template-columns:1fr 1fr;row-gap:26px;}
  .ra-footer-30k .ra-footer-brand-block,.ra-footer-30k .ra-footer-links-block,.ra-footer-30k .ra-footer-contact-block,.ra-footer-30k .ra-footer-actions-block{border-right:0!important;}
}
@media(max-width:760px){
  .ra-header-30k .ra-header-inner{grid-template-columns:92px 1fr;min-height:78px;height:auto;}
  .ra-header-30k .ra-logo{width:84px;min-height:54px;}
  .ra-header-30k .ra-logo img{width:70px;}
  .ra-footer-microtrust{justify-content:center;}
  .ra-footer-appointment-panel .ra-btn-gold{width:100%;max-width:285px;}
  .ra-footer-30k .ra-footer-main{grid-template-columns:1fr;padding:26px 18px;}
  .ra-footer-30k .ra-footer-brand-block,.ra-footer-30k .ra-footer-links-block,.ra-footer-30k .ra-footer-contact-block,.ra-footer-30k .ra-footer-actions-block{padding:22px 0;border-right:0!important;border-bottom:1px solid rgba(255,224,138,.20);}
  .ra-footer-30k .ra-footer-actions-block{border-bottom:0;}
  .ra-footer-30k .ra-footer-lower{display:block;text-align:center;}
  .ra-footer-30k .ra-footer-lower p+p{margin-top:10px;}
}


/* v5.5.4 refined luxury pass — custom SVG services + cleaner header */
.ra-tile-icon,
.ra-service-row-icon,
.ra-trust b{
  color:#e0b04b;
}
.ra-tile-icon svg,
.ra-service-row-icon svg,
.ra-trust b svg{
  stroke:currentColor;
  fill:none;
  stroke-width:2.15;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 14px rgba(216,166,62,.14));
}
.ra-tile-icon svg{width:60px;height:60px;}
.ra-service-row-icon svg{width:48px;height:48px;}

.ra-header-30k{
  background:
    linear-gradient(180deg,rgba(17,14,11,.98),rgba(3,3,3,.95));
  box-shadow:0 14px 42px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.04);
}
.ra-header-30k:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,236,170,.44),transparent);
  pointer-events:none;
}
.ra-header-30k .ra-header-inner{
  height:84px;
  grid-template-columns:150px 1fr 188px;
  gap:28px;
}
.ra-header-30k .ra-logo{
  width:auto;
  min-height:0;
  padding:0;
  border:0;
  background:none;
  box-shadow:none;
  clip-path:none;
  justify-content:flex-start;
}
.ra-header-30k .ra-logo img{
  width:126px;
  max-height:62px;
  object-fit:contain;
  filter:drop-shadow(0 0 16px rgba(216,166,62,.18));
}
.ra-header-30k .ra-nav{
  gap:26px;
  padding:0;
  border:0;
  background:none;
  border-radius:0;
  box-shadow:none;
}
.ra-header-30k .ra-nav a,
.ra-header-30k .ra-nav li a{
  min-height:auto;
  padding:10px 0;
  background:none!important;
  border-radius:0;
  color:rgba(255,255,255,.9);
}
.ra-header-30k .ra-nav a:after,
.ra-header-30k .ra-nav li a:after{
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,#f5d27b,transparent);
}
.ra-header-30k .ra-nav a:hover,
.ra-header-30k .ra-nav .current-menu-item a,
.ra-header-30k .ra-nav li.current-menu-item a{
  background:none!important;
  color:#ffe6a0;
  text-shadow:0 0 14px rgba(216,166,62,.16);
}
.ra-header-30k .ra-header-phone{
  height:48px;
  padding:0 18px;
  border-radius:6px;
  letter-spacing:.06em;
  text-transform:uppercase;
  justify-self:end;
}
.ra-header-30k .ra-header-phone span{
  white-space:nowrap;
}

@media(max-width:1050px){
  .ra-header-30k .ra-header-inner{grid-template-columns:130px 1fr 170px;gap:18px;}
  .ra-header-30k .ra-logo img{width:112px;}
  .ra-header-30k .ra-nav{gap:18px;}
  .ra-header-30k .ra-nav a{font-size:12px;}
  .ra-header-30k .ra-header-phone{padding:0 14px;font-size:12px;}
}
@media(max-width:760px){
  .ra-header-30k .ra-header-inner{grid-template-columns:92px 1fr;gap:12px;}
  .ra-header-30k .ra-logo img{width:78px;max-height:54px;}
  .ra-header-30k .ra-nav{
    border:1px solid rgba(255,224,138,.16);
    background:linear-gradient(180deg,rgba(10,10,10,.96),rgba(0,0,0,.9));
    border-radius:10px;
    box-shadow:0 18px 44px rgba(0,0,0,.44);
  }
  .ra-header-30k .ra-nav a,
  .ra-header-30k .ra-nav li a{
    padding:14px 0;
  }
  .ra-header-30k .ra-header-phone{
    width:100%;
    justify-content:center;
  }
}


/* v5.5.5 final agency upgrade — cleaner header, fixed hero CTAs, centred footer panel, optional gallery text */
.ra-header-luxury-strip{
  border-bottom:1px solid rgba(224,176,75,.16);
  background:linear-gradient(90deg,rgba(224,176,75,.04),rgba(0,0,0,.12),rgba(224,176,75,.04));
}
.ra-header-luxury-strip-inner{
  min-height:28px;
  gap:18px;
  font-size:10px;
  letter-spacing:.16em;
  color:rgba(255,242,212,.76);
}
.ra-header-luxury-strip-inner span:not(:last-child):after{
  width:4px;height:4px;margin-left:18px;opacity:.9;
}
.ra-header-30k{
  background:linear-gradient(180deg,rgba(12,11,9,.98),rgba(2,2,2,.96));
  box-shadow:0 18px 48px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.04);
}
.ra-header-30k:after{display:none;}
.ra-header-30k .ra-header-inner{
  height:78px;
  grid-template-columns:132px 1fr 190px;
  gap:34px;
}
.ra-header-30k .ra-logo,
.ra-header-30k .ra-logo:hover{
  width:auto;
  padding:0;
  border:0;
  background:none!important;
  box-shadow:none!important;
  clip-path:none;
  transform:none;
}
.ra-header-30k .ra-logo img{
  width:116px;
  max-height:52px;
  filter:drop-shadow(0 0 12px rgba(216,166,62,.16));
}
.ra-header-30k .ra-nav{
  gap:26px;
  padding:0;
  background:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.ra-header-30k .ra-nav a,
.ra-header-30k .ra-nav li a{
  min-height:auto;
  padding:8px 0;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  background:none!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.ra-header-30k .ra-nav a:hover,
.ra-header-30k .ra-nav .current-menu-item a,
.ra-header-30k .ra-nav li.current-menu-item a{
  background:none!important;
  color:#f0c868;
  text-shadow:none;
}
.ra-header-30k .ra-nav a:after,
.ra-header-30k .ra-nav li a:after{
  bottom:-4px;
  height:1px;
  background:linear-gradient(90deg,transparent,#e4b34f,transparent);
}
.ra-header-30k .ra-nav a:hover:after,
.ra-header-30k .ra-nav .current-menu-item a:after,
.ra-header-30k .ra-nav li.current-menu-item a:after{
  width:100%;
}
.ra-header-30k .ra-header-phone{
  min-width:190px;
  height:46px;
  padding:0 18px;
  border-radius:4px;
  font-size:13px;
  letter-spacing:.04em;
}

.ra-hero{
  min-height:720px;
}
.ra-hero-inner{
  padding-top:72px;
  padding-bottom:54px;
}
.ra-hero-title{line-height:.96;}
.ra-hero-intro{
  margin:22px auto 30px;
}
.ra-hero-actions{
  gap:18px;
  flex-wrap:wrap;
  margin-top:0;
  margin-bottom:26px;
}
.ra-hero-actions .ra-btn{
  min-width:188px;
  height:52px;
  font-size:15px;
}
.ra-service-strip{padding-top:22px;}

.ra-footer-appointment-panel{
  grid-template-columns:1fr;
  justify-items:center;
  text-align:center!important;
  padding:34px 26px;
}
.ra-footer-appointment-panel-copy,
.ra-footer-appointment-panel-copy .ra-mini,
.ra-footer-appointment-panel-copy h2,
.ra-footer-appointment-panel-copy p{
  text-align:center!important;
  margin-left:auto;
  margin-right:auto;
}
.ra-footer-appointment-panel-copy p:not(.ra-mini){
  max-width:780px;
}
.ra-footer-microtrust{
  justify-content:center;
}

.ra-gallery-slide span:empty{display:none;}

@media(max-width:1050px){
  .ra-header-30k .ra-header-inner{grid-template-columns:118px 1fr 170px;gap:20px;height:76px;}
  .ra-header-30k .ra-logo img{width:102px;max-height:48px;}
  .ra-header-30k .ra-nav{gap:18px;}
  .ra-header-30k .ra-nav a,
  .ra-header-30k .ra-nav li a{font-size:11px;letter-spacing:.12em;}
  .ra-header-30k .ra-header-phone{min-width:170px;font-size:12px;}
}
@media(max-width:760px){
  .ra-header-luxury-strip{display:none;}
  .ra-header-30k .ra-header-inner{grid-template-columns:88px 1fr;gap:12px;min-height:74px;height:auto;padding:10px 0;}
  .ra-header-30k .ra-logo img{width:74px;max-height:48px;}
  .ra-header-30k .ra-nav{
    border:1px solid rgba(224,176,75,.16)!important;
    background:linear-gradient(180deg,rgba(8,8,8,.98),rgba(0,0,0,.92))!important;
    border-radius:8px!important;
    padding:10px 14px!important;
  }
  .ra-header-30k .ra-nav a,
  .ra-header-30k .ra-nav li a{padding:13px 0;font-size:12px;}
  .ra-header-30k .ra-header-phone{width:100%;justify-content:center;}
  .ra-hero{min-height:680px;padding-top:0;}
  .ra-hero-inner{padding-top:64px;padding-bottom:42px;}
  .ra-hero-actions{gap:12px;margin-bottom:18px;}
  .ra-hero-actions .ra-btn{width:min(300px,100%);}
}


/* v5.5.6 real header fix — hard replaced, no pills, no boxed logo, no clunky CTA */
.ra-header-final,
.ra-header.ra-header-final,
body .ra-header-final{
  position:sticky!important;
  top:0!important;
  z-index:999!important;
  background:
    linear-gradient(180deg,rgba(5,5,5,.98),rgba(0,0,0,.94))!important;
  border-top:1px solid rgba(255,224,138,.16)!important;
  border-bottom:1px solid rgba(216,166,62,.38)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.58)!important;
  backdrop-filter:blur(14px)!important;
}
.admin-bar .ra-header-final{top:32px!important;}

.ra-header-final:before,
.ra-header-final:after,
.ra-header-final .ra-header-luxury-strip{
  display:none!important;
  content:none!important;
}

.ra-header-final-inner,
body .ra-header-final .ra-header-final-inner{
  width:min(1120px,calc(100% - 56px))!important;
  margin:0 auto!important;
  min-height:74px!important;
  height:74px!important;
  display:grid!important;
  grid-template-columns:138px 1fr 178px!important;
  align-items:center!important;
  gap:30px!important;
  padding:0!important;
}

.ra-header-final .ra-logo-final,
.ra-header-final .ra-logo,
body .ra-header-final .ra-logo{
  width:auto!important;
  min-height:0!important;
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  clip-path:none!important;
  border-radius:0!important;
  transform:none!important;
}

.ra-header-final .ra-logo-final img,
.ra-header-final .ra-logo img,
body .ra-header-final .ra-logo img{
  width:104px!important;
  max-width:104px!important;
  height:auto!important;
  max-height:58px!important;
  object-fit:contain!important;
  display:block!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  clip-path:none!important;
  filter:drop-shadow(0 0 12px rgba(216,166,62,.18))!important;
}

.ra-header-final .ra-nav-final,
.ra-header-final .ra-nav,
body .ra-header-final .ra-nav{
  grid-column:auto!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:30px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.ra-header-final .ra-nav-final li,
.ra-header-final .ra-nav li{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}

.ra-header-final .ra-nav-final a,
.ra-header-final .ra-nav a,
.ra-header-final .ra-nav-final li a,
.ra-header-final .ra-nav li a,
body .ra-header-final .ra-nav a{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:0!important;
  height:auto!important;
  padding:8px 0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(255,255,255,.88)!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-shadow:none!important;
}

.ra-header-final .ra-nav-final a:after,
.ra-header-final .ra-nav a:after,
.ra-header-final .ra-nav-final li a:after,
.ra-header-final .ra-nav li a:after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:auto!important;
  bottom:-5px!important;
  width:0!important;
  height:1px!important;
  transform:none!important;
  background:linear-gradient(90deg,#b88624,#ffe28e,#b88624)!important;
  transition:width .22s ease!important;
}

.ra-header-final .ra-nav-final a:hover,
.ra-header-final .ra-nav a:hover,
.ra-header-final .ra-nav .current-menu-item a,
.ra-header-final .ra-nav-final .current-menu-item a{
  color:#f2c966!important;
  background:transparent!important;
  box-shadow:none!important;
}

.ra-header-final .ra-nav-final a:hover:after,
.ra-header-final .ra-nav a:hover:after,
.ra-header-final .ra-nav .current-menu-item a:after,
.ra-header-final .ra-nav-final .current-menu-item a:after{
  width:100%!important;
}

.ra-header-final .ra-header-contact-final,
body .ra-header-final .ra-header-contact-final{
  justify-self:end!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:9px!important;
  height:auto!important;
  min-width:0!important;
  width:auto!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#e0b04b!important;
  text-decoration:none!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  text-transform:none!important;
  overflow:visible!important;
}

.ra-header-final .ra-header-contact-final:before,
.ra-header-final .ra-header-contact-final:after{
  display:none!important;
  content:none!important;
}

.ra-header-final .ra-header-contact-final svg{
  width:17px!important;
  height:17px!important;
  fill:#e0b04b!important;
  color:#e0b04b!important;
  stroke:none!important;
  filter:none!important;
}

.ra-header-final .ra-header-contact-final:hover{
  color:#ffe08a!important;
  transform:none!important;
  letter-spacing:.04em!important;
  filter:none!important;
}

/* Footer quote panel: absolutely no side CTA, all centred */
.ra-footer-appointment-panel{
  grid-template-columns:1fr!important;
  text-align:center!important;
  justify-items:center!important;
  align-items:center!important;
}
.ra-footer-appointment-panel > .ra-btn,
.ra-footer-appointment-panel > a.ra-btn,
.ra-footer-appointment-panel > a.ra-btn-gold{
  display:none!important;
}
.ra-footer-appointment-panel-copy,
.ra-footer-appointment-panel-copy *{
  text-align:center!important;
}
.ra-footer-appointment-panel-copy p:not(.ra-mini){
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.ra-footer-microtrust{
  justify-content:center!important;
}

/* Hero CTA overlap fix */
.ra-hero-inner{
  padding-top:70px!important;
  padding-bottom:58px!important;
}
.ra-hero-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:18px!important;
  margin:0 auto 34px!important;
  position:relative!important;
  z-index:5!important;
}
.ra-hero-actions .ra-btn{
  min-width:190px!important;
  max-width:245px!important;
  height:52px!important;
  flex:0 1 220px!important;
  white-space:nowrap!important;
}

/* Gallery captions are optional: image-only cards when title is blank */
.ra-gallery-slide span:empty,
.ra-gallery-slide:not(:has(span)) span{
  display:none!important;
}
.ra-gallery-slide img{
  display:block!important;
}

@media(max-width:1050px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 34px,880px)!important;
    grid-template-columns:112px 1fr 150px!important;
    gap:18px!important;
    height:70px!important;
    min-height:70px!important;
  }
  .ra-header-final .ra-logo img{width:88px!important;max-width:88px!important;}
  .ra-header-final .ra-nav{gap:18px!important;}
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a{font-size:11px!important;letter-spacing:.11em!important;}
  .ra-header-final .ra-header-contact-final{font-size:12px!important;}
}

@media(max-width:760px){
  .admin-bar .ra-header-final{top:46px!important;}
  .ra-header-final{
    position:relative!important;
  }
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 28px,640px)!important;
    grid-template-columns:82px 1fr!important;
    height:auto!important;
    min-height:74px!important;
    gap:10px!important;
    padding:10px 0!important;
  }
  .ra-header-final .ra-logo img{width:68px!important;max-width:68px!important;max-height:48px!important;}
  .ra-menu-toggle-final,
  .ra-header-final .ra-menu-toggle{
    display:inline-flex!important;
    justify-self:end!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:84px!important;
    height:40px!important;
    padding:0 14px!important;
    border:1px solid rgba(224,176,75,.42)!important;
    border-radius:4px!important;
    background:rgba(0,0,0,.18)!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
  }
  .ra-header-final .ra-nav-final,
  .ra-header-final .ra-nav{
    grid-column:1/-1!important;
    display:none!important;
    flex-direction:column!important;
    width:100%!important;
    gap:0!important;
    padding:12px 0!important;
    margin-top:4px!important;
    border-top:1px solid rgba(224,176,75,.18)!important;
  }
  .ra-header-final.is-open .ra-nav-final,
  .ra-header-final.is-open .ra-nav{
    display:flex!important;
  }
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a{
    width:100%!important;
    padding:14px 0!important;
    font-size:12px!important;
  }
  .ra-header-final .ra-header-contact-final{
    grid-column:1/-1!important;
    justify-self:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:40px!important;
    padding-top:4px!important;
    border-top:1px solid rgba(224,176,75,.12)!important;
  }
  .ra-hero-inner{
    padding-top:58px!important;
    padding-bottom:46px!important;
  }
  .ra-hero-actions{
    flex-direction:column!important;
    gap:12px!important;
    margin-bottom:24px!important;
  }
  .ra-hero-actions .ra-btn{
    width:min(300px,100%)!important;
    max-width:300px!important;
    flex:0 0 auto!important;
  }
}


/* v5.5.7 tight header correction — less empty space and visible gold phone icon */
.ra-header-final,
.ra-header.ra-header-final,
body .ra-header-final{
  background:linear-gradient(180deg,rgba(5,5,5,.99),rgba(0,0,0,.96))!important;
  border-bottom:1px solid rgba(216,166,62,.44)!important;
  box-shadow:0 8px 26px rgba(0,0,0,.58)!important;
}

.ra-header-final-inner,
body .ra-header-final .ra-header-final-inner{
  min-height:58px!important;
  height:58px!important;
  grid-template-columns:92px 1fr 150px!important;
  gap:18px!important;
}

.ra-header-final .ra-logo-final img,
.ra-header-final .ra-logo img,
body .ra-header-final .ra-logo img{
  width:64px!important;
  max-width:64px!important;
  max-height:44px!important;
  filter:drop-shadow(0 0 10px rgba(216,166,62,.24))!important;
}

.ra-header-final .ra-nav-final,
.ra-header-final .ra-nav,
body .ra-header-final .ra-nav{
  gap:24px!important;
}

.ra-header-final .ra-nav-final a,
.ra-header-final .ra-nav a,
.ra-header-final .ra-nav-final li a,
.ra-header-final .ra-nav li a,
body .ra-header-final .ra-nav a{
  padding:6px 0!important;
  font-size:11px!important;
  letter-spacing:.13em!important;
}

.ra-header-final .ra-header-contact-final,
body .ra-header-final .ra-header-contact-final{
  color:#e0b04b!important;
  font-size:13px!important;
  gap:8px!important;
}

.ra-header-final .ra-header-contact-final svg,
.ra-header-final .ra-header-contact-final svg *,
.ra-header-final .ra-header-contact-final svg path,
body .ra-header-final .ra-header-contact-final svg,
body .ra-header-final .ra-header-contact-final svg *,
body .ra-header-final .ra-header-contact-final svg path{
  fill:#e0b04b!important;
  stroke:none!important;
  color:#e0b04b!important;
  opacity:1!important;
  filter:drop-shadow(0 0 6px rgba(216,166,62,.18))!important;
}

.ra-header-final .ra-header-contact-final:hover,
.ra-header-final .ra-header-contact-final:hover svg,
.ra-header-final .ra-header-contact-final:hover svg *,
.ra-header-final .ra-header-contact-final:hover svg path{
  color:#ffe08a!important;
  fill:#ffe08a!important;
}

/* Pull the hero back into proportion after the slim header */
.ra-hero{
  min-height:610px!important;
}
.ra-hero-inner{
  padding-top:38px!important;
  padding-bottom:42px!important;
}
.ra-hero-title{
  font-size:clamp(58px,5.7vw,92px)!important;
  line-height:.96!important;
}
.ra-hero-intro{
  margin:18px auto 24px!important;
}
.ra-hero-actions{
  margin-bottom:16px!important;
  gap:16px!important;
}
.ra-service-strip{
  padding-top:18px!important;
  padding-bottom:24px!important;
}
.ra-service-tile{
  min-height:158px!important;
  padding:22px 16px!important;
}
.ra-tile-icon{
  height:58px!important;
}
.ra-tile-icon svg{
  width:48px!important;
  height:48px!important;
}

@media(max-width:1050px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    min-height:58px!important;
    height:58px!important;
    grid-template-columns:82px 1fr 138px!important;
    gap:14px!important;
  }
  .ra-header-final .ra-logo img{width:58px!important;max-width:58px!important;}
  .ra-header-final .ra-nav{gap:16px!important;}
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a{font-size:10.5px!important;letter-spacing:.1em!important;}
  .ra-header-final .ra-header-contact-final{font-size:12px!important;}
  .ra-hero{min-height:570px!important;}
  .ra-hero-inner{padding-top:34px!important;padding-bottom:38px!important;}
}

@media(max-width:760px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    grid-template-columns:70px 1fr!important;
    min-height:64px!important;
    height:auto!important;
    padding:8px 0!important;
  }
  .ra-header-final .ra-logo img{width:54px!important;max-width:54px!important;}
  .ra-hero{min-height:620px!important;}
  .ra-hero-inner{padding-top:42px!important;padding-bottom:36px!important;}
  .ra-hero-title{font-size:clamp(46px,14vw,68px)!important;}
}


/* v5.5.8 reference-image match — build hero around bg-desktop.png instead of fighting it */
.ra-header-final,
.ra-header.ra-header-final,
body .ra-header-final{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:999!important;
  background:linear-gradient(180deg,rgba(0,0,0,.82),rgba(0,0,0,.18) 78%,transparent)!important;
  border:0!important;
  border-bottom:1px solid rgba(216,166,62,.24)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.admin-bar .ra-header-final{top:32px!important;}

.ra-header-final-inner,
body .ra-header-final .ra-header-final-inner{
  width:min(1120px,calc(100% - 56px))!important;
  height:66px!important;
  min-height:66px!important;
  grid-template-columns:92px 1fr 156px!important;
  gap:22px!important;
}

.ra-header-final .ra-logo img{
  width:58px!important;
  max-width:58px!important;
  max-height:46px!important;
}

.ra-header-final .ra-nav{
  gap:28px!important;
}
.ra-header-final .ra-nav a,
.ra-header-final .ra-nav li a{
  font-size:11px!important;
  letter-spacing:.14em!important;
  padding:7px 0!important;
}
.ra-header-final .ra-header-contact-final{
  font-size:13px!important;
  color:#e2b24d!important;
}
.ra-header-final .ra-header-contact-final svg,
.ra-header-final .ra-header-contact-final svg *,
.ra-header-final .ra-header-contact-final svg path{
  fill:#e2b24d!important;
  color:#e2b24d!important;
  opacity:1!important;
}

/* Hero now matches the uploaded design image ratio: 1672 x 941 */
.ra-hero{
  min-height:clamp(690px,56.28vw,941px)!important;
  height:clamp(690px,56.28vw,941px)!important;
  align-items:center!important;
  border-bottom:1px solid rgba(216,166,62,.7)!important;
  background:#000!important;
  overflow:hidden!important;
}
.ra-bg{
  inset:0!important;
  background-image:var(--ra-bg-desktop)!important;
  background-size:100% 100%!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  filter:none!important;
}
.ra-hero:after{
  background:radial-gradient(circle at 50% 46%,rgba(0,0,0,.03),rgba(0,0,0,.12) 46%,rgba(0,0,0,.28) 100%)!important;
}
.ra-hero-frame{
  display:none!important;
}
.ra-hero-inner{
  width:min(880px,calc(100% - 40px))!important;
  padding-top:76px!important;
  padding-bottom:0!important;
  transform:translateY(-8px)!important;
}
.ra-kicker{
  font-size:13px!important;
  letter-spacing:.42em!important;
  margin-bottom:14px!important;
}
.ra-kicker span{
  width:145px!important;
  opacity:.75!important;
}
.ra-hero-title{
  font-family:var(--font-head)!important;
  font-size:clamp(58px,6.1vw,106px)!important;
  line-height:.96!important;
  letter-spacing:.025em!important;
  font-weight:900!important;
  color:#fff!important;
  text-shadow:0 4px 28px rgba(0,0,0,.9)!important;
}
.ra-hero-title b,
.ra-hero-title strong{
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  -webkit-text-stroke:0!important;
  color:#fff!important;
}
.ra-hero-intro{
  max-width:720px!important;
  margin:20px auto 24px!important;
  font-size:18px!important;
  line-height:1.45!important;
  color:rgba(255,255,255,.92)!important;
}
.ra-hero-actions{
  margin:0 auto!important;
  gap:18px!important;
}
.ra-hero-actions .ra-btn{
  height:50px!important;
  min-width:190px!important;
  max-width:236px!important;
  flex:0 1 210px!important;
}

/* Cards sit tighter under the reference image like the mockup */
.ra-service-strip{
  margin-top:0!important;
  padding:24px 0 26px!important;
  background:#030303!important;
  border-top:1px solid rgba(216,166,62,.52)!important;
}
.ra-service-tiles{
  width:min(1080px,calc(100% - 56px))!important;
}
.ra-service-tile{
  min-height:170px!important;
  padding:22px 16px 20px!important;
}
.ra-tile-icon{
  height:60px!important;
}
.ra-tile-icon svg{
  width:48px!important;
  height:48px!important;
}

@media(max-width:1050px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 34px,880px)!important;
    grid-template-columns:76px 1fr 138px!important;
    gap:16px!important;
    height:62px!important;
    min-height:62px!important;
  }
  .ra-header-final .ra-logo img{width:52px!important;max-width:52px!important;}
  .ra-header-final .ra-nav{gap:18px!important;}
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a{font-size:10.5px!important;letter-spacing:.11em!important;}
  .ra-hero{
    min-height:clamp(620px,58vw,760px)!important;
    height:clamp(620px,58vw,760px)!important;
  }
  .ra-hero-inner{padding-top:68px!important;}
}

@media(max-width:760px){
  .ra-header-final{
    position:absolute!important;
  }
  .admin-bar .ra-header-final{top:46px!important;}
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    grid-template-columns:64px 1fr!important;
    min-height:64px!important;
    height:auto!important;
    padding:8px 0!important;
  }
  .ra-header-final .ra-logo img{width:48px!important;max-width:48px!important;}
  .ra-header-final .ra-header-contact-final{
    color:#e2b24d!important;
  }
  .ra-hero{
    min-height:720px!important;
    height:720px!important;
  }
  .ra-bg{
    background-image:var(--ra-bg-mobile)!important;
    background-size:cover!important;
  }
  .ra-hero-inner{
    padding-top:96px!important;
    transform:none!important;
  }
  .ra-kicker{font-size:10px!important;letter-spacing:.26em!important;}
  .ra-kicker span{width:45px!important;}
  .ra-hero-title{font-size:clamp(44px,13.5vw,66px)!important;}
  .ra-hero-intro{font-size:15.5px!important;margin:18px auto 22px!important;}
  .ra-hero-actions{flex-direction:column!important;gap:12px!important;}
  .ra-hero-actions .ra-btn{width:min(300px,100%)!important;max-width:300px!important;}
}


/* v5.5.9 hero-blended header — larger logo, transparent glass blend into image */
.ra-header-final,
.ra-header.ra-header-final,
body .ra-header-final{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:999!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.44) 58%,rgba(0,0,0,0) 100%)!important;
  border:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.admin-bar .ra-header-final{top:32px!important;}

.ra-header-final:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:118px!important;
  background:
    radial-gradient(520px 90px at 50% 0,rgba(216,166,62,.10),transparent 74%),
    linear-gradient(180deg,rgba(0,0,0,.68),rgba(0,0,0,.14),transparent)!important;
  pointer-events:none!important;
}
.ra-header-final:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:-1px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(216,166,62,.45),rgba(255,224,138,.35),rgba(216,166,62,.45),transparent)!important;
  opacity:.55!important;
  pointer-events:none!important;
}

.ra-header-final-inner,
body .ra-header-final .ra-header-final-inner{
  position:relative!important;
  z-index:2!important;
  width:min(1120px,calc(100% - 56px))!important;
  min-height:82px!important;
  height:82px!important;
  display:grid!important;
  grid-template-columns:128px 1fr 168px!important;
  align-items:center!important;
  gap:26px!important;
  padding:0!important;
}

.ra-header-final .ra-logo-final img,
.ra-header-final .ra-logo img,
body .ra-header-final .ra-logo img{
  width:92px!important;
  max-width:92px!important;
  max-height:68px!important;
  filter:
    drop-shadow(0 0 18px rgba(216,166,62,.34))
    drop-shadow(0 12px 18px rgba(0,0,0,.72))!important;
}

.ra-header-final .ra-nav-final,
.ra-header-final .ra-nav,
body .ra-header-final .ra-nav{
  gap:30px!important;
}

.ra-header-final .ra-nav-final a,
.ra-header-final .ra-nav a,
.ra-header-final .ra-nav-final li a,
.ra-header-final .ra-nav li a,
body .ra-header-final .ra-nav a{
  font-size:12px!important;
  letter-spacing:.15em!important;
  padding:8px 0!important;
  color:rgba(255,255,255,.90)!important;
}

.ra-header-final .ra-nav-final a:hover,
.ra-header-final .ra-nav a:hover,
.ra-header-final .ra-nav .current-menu-item a,
.ra-header-final .ra-nav-final .current-menu-item a{
  color:#f5c75e!important;
}

.ra-header-final .ra-header-contact-final,
body .ra-header-final .ra-header-contact-final{
  color:#e4b34f!important;
  font-size:13.5px!important;
  font-weight:950!important;
  gap:9px!important;
  text-shadow:0 8px 16px rgba(0,0,0,.72)!important;
}

.ra-header-final .ra-header-contact-final svg,
.ra-header-final .ra-header-contact-final svg *,
.ra-header-final .ra-header-contact-final svg path,
body .ra-header-final .ra-header-contact-final svg,
body .ra-header-final .ra-header-contact-final svg *,
body .ra-header-final .ra-header-contact-final svg path{
  fill:#e4b34f!important;
  color:#e4b34f!important;
  opacity:1!important;
  filter:drop-shadow(0 0 8px rgba(216,166,62,.34))!important;
}

/* Let the title start a little lower because the header is now part of the image */
.ra-hero-inner{
  padding-top:106px!important;
  transform:translateY(-2px)!important;
}
.ra-hero{
  min-height:clamp(690px,56.28vw,941px)!important;
  height:clamp(690px,56.28vw,941px)!important;
}

/* Desktop wide: preserve the exact reference-image feel */
@media(min-width:1400px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(1180px,calc(100% - 70px))!important;
    grid-template-columns:138px 1fr 180px!important;
  }
  .ra-header-final .ra-logo img{width:98px!important;max-width:98px!important;}
}

/* Tablet */
@media(max-width:1050px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 34px,880px)!important;
    min-height:78px!important;
    height:78px!important;
    grid-template-columns:108px 1fr 150px!important;
    gap:18px!important;
  }
  .ra-header-final .ra-logo-final img,
  .ra-header-final .ra-logo img{
    width:78px!important;
    max-width:78px!important;
    max-height:60px!important;
  }
  .ra-header-final .ra-nav{gap:18px!important;}
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a{font-size:11px!important;letter-spacing:.12em!important;}
  .ra-header-final .ra-header-contact-final{font-size:12px!important;}
  .ra-hero-inner{padding-top:96px!important;}
}

/* Mobile: keep header blended but readable */
@media(max-width:760px){
  .ra-header-final{
    position:absolute!important;
  }
  .admin-bar .ra-header-final{top:46px!important;}
  .ra-header-final:before{height:150px!important;background:linear-gradient(180deg,rgba(0,0,0,.82),rgba(0,0,0,.36),transparent)!important;}
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 28px,640px)!important;
    grid-template-columns:82px 1fr!important;
    min-height:76px!important;
    height:auto!important;
    padding:10px 0!important;
    gap:12px!important;
  }
  .ra-header-final .ra-logo-final img,
  .ra-header-final .ra-logo img{
    width:66px!important;
    max-width:66px!important;
    max-height:58px!important;
  }
  .ra-menu-toggle-final,
  .ra-header-final .ra-menu-toggle{
    background:rgba(0,0,0,.22)!important;
    backdrop-filter:blur(8px)!important;
  }
  .ra-header-final .ra-nav{
    background:rgba(0,0,0,.46)!important;
    backdrop-filter:blur(10px)!important;
    border:1px solid rgba(216,166,62,.20)!important;
    border-radius:8px!important;
  }
  .ra-hero-inner{
    padding-top:122px!important;
    transform:none!important;
  }
}


/* v5.6.0 full-home hero background + cleaner image-blended header */
body.home.ra-site,
body.front-page.ra-site,
body.home,
body.front-page{
  background:#000!important;
}

body.home.ra-site:before,
body.front-page.ra-site:before,
body.home:before,
body.front-page:before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-3!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.36) 45%,rgba(0,0,0,.70) 100%),
    url('../img/bg-desktop.png') center top / cover no-repeat!important;
  transform:translateZ(0)!important;
}

/* Keep homepage sections sitting over the same fixed image instead of blocking it with flat black */
body.home main,
body.front-page main{
  background:transparent!important;
}

body.home .ra-section,
body.home .ra-service-strip,
body.home .ra-gallery-preview,
body.home .ra-recent-work-carousel,
body.home .ra-contact-strip,
body.front-page .ra-section,
body.front-page .ra-service-strip,
body.front-page .ra-gallery-preview,
body.front-page .ra-recent-work-carousel,
body.front-page .ra-contact-strip{
  background:
    linear-gradient(180deg,rgba(0,0,0,.66),rgba(0,0,0,.76))!important;
  backdrop-filter:blur(1px)!important;
}

body.home .ra-about-band,
body.front-page .ra-about-band{
  background:
    linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.82) 48%,rgba(0,0,0,.88))!important;
}

/* Hero uses the same image and no extra hard panel */
body.home .ra-hero,
body.front-page .ra-hero{
  background:transparent!important;
}

body.home .ra-bg,
body.front-page .ra-bg{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.18) 72%,rgba(0,0,0,.34)),
    url('../img/bg-desktop.png')!important;
  background-size:100% 100%!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:1!important;
}

/* Header becomes part of the hero artwork */
.ra-header-final,
.ra-header.ra-header-final,
body .ra-header-final{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  z-index:999!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}

.admin-bar .ra-header-final{
  top:32px!important;
}

.ra-header-final:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0 0 auto 0!important;
  height:118px!important;
  background:
    radial-gradient(600px 95px at 50% 0,rgba(216,166,62,.12),transparent 70%),
    linear-gradient(180deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.38) 54%,rgba(0,0,0,0) 100%)!important;
  pointer-events:none!important;
  z-index:-1!important;
}

.ra-header-final:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  width:min(1020px,calc(100% - 80px))!important;
  height:1px!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(90deg,transparent,rgba(216,166,62,.38),rgba(255,224,138,.22),rgba(216,166,62,.38),transparent)!important;
  opacity:.48!important;
  pointer-events:none!important;
}

.ra-header-final-inner,
body .ra-header-final .ra-header-final-inner{
  position:relative!important;
  z-index:2!important;
  height:86px!important;
  min-height:86px!important;
  width:min(1120px,calc(100% - 56px))!important;
  grid-template-columns:142px 1fr 178px!important;
  gap:28px!important;
}

.ra-header-final .ra-logo-final img,
.ra-header-final .ra-logo img,
body .ra-header-final .ra-logo img{
  width:104px!important;
  max-width:104px!important;
  max-height:74px!important;
  filter:
    drop-shadow(0 0 20px rgba(216,166,62,.38))
    drop-shadow(0 16px 24px rgba(0,0,0,.82))!important;
}

.ra-header-final .ra-nav-final,
.ra-header-final .ra-nav,
body .ra-header-final .ra-nav{
  gap:32px!important;
}

.ra-header-final .ra-nav-final a,
.ra-header-final .ra-nav a,
.ra-header-final .ra-nav-final li a,
.ra-header-final .ra-nav li a,
body .ra-header-final .ra-nav a{
  color:rgba(255,255,255,.91)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.15em!important;
  text-shadow:0 8px 18px rgba(0,0,0,.88)!important;
}

.ra-header-final .ra-nav-final a:hover,
.ra-header-final .ra-nav a:hover,
.ra-header-final .ra-nav .current-menu-item a,
.ra-header-final .ra-nav-final .current-menu-item a{
  color:#f0c15b!important;
}

.ra-header-final .ra-header-contact-final,
body .ra-header-final .ra-header-contact-final{
  color:#e6b64f!important;
  font-size:14px!important;
  text-shadow:0 8px 18px rgba(0,0,0,.9)!important;
}

.ra-header-final .ra-header-contact-final svg,
.ra-header-final .ra-header-contact-final svg *,
.ra-header-final .ra-header-contact-final svg path,
body .ra-header-final .ra-header-contact-final svg,
body .ra-header-final .ra-header-contact-final svg *,
body .ra-header-final .ra-header-contact-final svg path{
  fill:#e6b64f!important;
  color:#e6b64f!important;
  opacity:1!important;
  filter:drop-shadow(0 0 8px rgba(216,166,62,.38))!important;
}

/* Lower hero copy slightly so the header feels embedded, not crowded */
body.home .ra-hero-inner,
body.front-page .ra-hero-inner{
  padding-top:120px!important;
  transform:translateY(-4px)!important;
}

/* Keep the service cards and lower content luxurious over the fixed bg */
body.home .ra-service-strip,
body.front-page .ra-service-strip{
  border-top:1px solid rgba(216,166,62,.50)!important;
  border-bottom:1px solid rgba(216,166,62,.44)!important;
}

body.home .ra-service-tile,
body.front-page .ra-service-tile,
body.home .ra-trust,
body.front-page .ra-trust,
body.home .ra-elevation-grid article,
body.front-page .ra-elevation-grid article,
body.home .ra-before-card,
body.front-page .ra-before-card{
  background:
    linear-gradient(135deg,rgba(255,224,138,.08),transparent 35%),
    radial-gradient(300px 145px at 50% 0,rgba(255,224,138,.10),transparent 72%),
    linear-gradient(180deg,rgba(12,12,12,.82),rgba(0,0,0,.72))!important;
  backdrop-filter:blur(2px)!important;
}

/* Tablet */
@media(max-width:1050px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    height:82px!important;
    min-height:82px!important;
    grid-template-columns:120px 1fr 154px!important;
    gap:18px!important;
  }
  .ra-header-final .ra-logo-final img,
  .ra-header-final .ra-logo img{
    width:86px!important;
    max-width:86px!important;
  }
  .ra-header-final .ra-nav{gap:20px!important;}
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a{font-size:11px!important;letter-spacing:.12em!important;}
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{padding-top:112px!important;}
}

/* Mobile */
@media(max-width:760px){
  body.home.ra-site:before,
  body.front-page.ra-site:before,
  body.home:before,
  body.front-page:before{
    background:
      linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.44) 44%,rgba(0,0,0,.78) 100%),
      url('../img/bg-mobile.png') center top / cover no-repeat!important;
  }

  .admin-bar .ra-header-final{top:46px!important;}
  .ra-header-final:before{
    height:158px!important;
    background:linear-gradient(180deg,rgba(0,0,0,.82),rgba(0,0,0,.42),transparent)!important;
  }
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 28px,640px)!important;
    grid-template-columns:86px 1fr!important;
    min-height:82px!important;
    height:auto!important;
  }
  .ra-header-final .ra-logo-final img,
  .ra-header-final .ra-logo img{
    width:72px!important;
    max-width:72px!important;
    max-height:62px!important;
  }
  .ra-header-final .ra-nav{
    background:rgba(0,0,0,.48)!important;
    backdrop-filter:blur(10px)!important;
  }
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    padding-top:132px!important;
    transform:none!important;
  }
}


/* v5.6.1 continuous reference background — no solid black section blocks */
html,
body,
body.ra-site{
  background:#000!important;
}

body.ra-site:before,
body.home.ra-site:before,
body.front-page.ra-site:before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-10!important;
  background:
    radial-gradient(circle at 50% 18%,rgba(0,0,0,.02),rgba(0,0,0,.26) 48%,rgba(0,0,0,.58) 100%),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.38) 52%,rgba(0,0,0,.70) 100%),
    url('../img/bg-desktop.png') center top / cover no-repeat!important;
  background-attachment:fixed!important;
  transform:translateZ(0)!important;
  pointer-events:none!important;
}

body.home,
body.front-page,
body.home main,
body.front-page main,
body.ra-site main{
  background:transparent!important;
}

/* The hero uses the same image as the page backdrop, so scrolling feels continuous */
body.home .ra-hero,
body.front-page .ra-hero{
  background:transparent!important;
}

body.home .ra-bg,
body.front-page .ra-bg{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.14) 72%,rgba(0,0,0,.28)),
    url('../img/bg-desktop.png')!important;
  background-size:100% 100%!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:1!important;
}

/* Remove solid black slabs from the homepage sections */
body.home .ra-section,
body.front-page .ra-section,
body.home .ra-service-strip,
body.front-page .ra-service-strip,
body.home .ra-gallery-preview,
body.front-page .ra-gallery-preview,
body.home .ra-recent-work-carousel,
body.front-page .ra-recent-work-carousel,
body.home .ra-contact-strip,
body.front-page .ra-contact-strip,
body.home .ra-services-list,
body.front-page .ra-services-list,
body.home .ra-gallery-page,
body.front-page .ra-gallery-page,
body.home .ra-about-page,
body.front-page .ra-about-page,
body.home .ra-contact-page,
body.front-page .ra-contact-page{
  background:transparent!important;
}

/* Add subtle section readability without hiding the image */
body.home .ra-service-strip,
body.front-page .ra-service-strip,
body.home .ra-elevation-panel,
body.front-page .ra-elevation-panel,
body.home .ra-recent-work-carousel,
body.front-page .ra-recent-work-carousel,
body.home .ra-gallery-preview,
body.front-page .ra-gallery-preview,
body.home .ra-contact-strip,
body.front-page .ra-contact-strip{
  position:relative!important;
  isolation:isolate!important;
}

body.home .ra-service-strip:before,
body.front-page .ra-service-strip:before,
body.home .ra-elevation-panel:before,
body.front-page .ra-elevation-panel:before,
body.home .ra-recent-work-carousel:before,
body.front-page .ra-recent-work-carousel:before,
body.home .ra-gallery-preview:before,
body.front-page .ra-gallery-preview:before,
body.home .ra-contact-strip:before,
body.front-page .ra-contact-strip:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.54))!important;
  pointer-events:none!important;
}

body.home .ra-about-band,
body.front-page .ra-about-band{
  background:
    linear-gradient(90deg,rgba(0,0,0,.48),rgba(0,0,0,.62) 50%,rgba(0,0,0,.70))!important;
}

/* Make cards/glass panels premium but transparent enough to show the hero image around them */
body.home .ra-service-tile,
body.front-page .ra-service-tile,
body.home .ra-trust,
body.front-page .ra-trust,
body.home .ra-elevation-grid article,
body.front-page .ra-elevation-grid article,
body.home .ra-about-luxury-notes article,
body.front-page .ra-about-luxury-notes article,
body.home .ra-before-card,
body.front-page .ra-before-card,
body.home .ra-gallery-slide,
body.front-page .ra-gallery-slide,
body.home .ra-contact-box,
body.front-page .ra-contact-box{
  background:
    linear-gradient(135deg,rgba(255,224,138,.08),transparent 35%),
    radial-gradient(320px 155px at 50% 0,rgba(255,224,138,.10),transparent 72%),
    linear-gradient(180deg,rgba(10,10,10,.70),rgba(0,0,0,.56))!important;
  backdrop-filter:blur(3px)!important;
}

/* Footer should also sit over the same fixed hero background rather than ending in flat black */
body.home .ra-footer,
body.front-page .ra-footer,
body.home .ra-footer-30k,
body.front-page .ra-footer-30k{
  background:
    linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.76))!important;
  backdrop-filter:blur(2px)!important;
}

/* Stop any remaining pseudo layers from creating black blocks */
body.home .ra-footer-premium-v2:before,
body.home .ra-footer-premium-v2:after,
body.front-page .ra-footer-premium-v2:before,
body.front-page .ra-footer-premium-v2:after{
  opacity:.32!important;
}

/* Page sections outside homepage can also show the reference background softly */
.ra-page-hero,
.ra-services-list,
.ra-gallery-page,
.ra-about-page,
.ra-contact-page{
  background:
    linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.72)),
    url('../img/bg-desktop.png') center top / cover no-repeat!important;
  background-attachment:fixed!important;
}

/* Mobile: fixed attachment can be jumpy, so use a stable fixed pseudo background instead */
@media(max-width:760px){
  body.ra-site:before,
  body.home.ra-site:before,
  body.front-page.ra-site:before{
    background:
      radial-gradient(circle at 50% 14%,rgba(0,0,0,.04),rgba(0,0,0,.34) 48%,rgba(0,0,0,.68) 100%),
      linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.46) 48%,rgba(0,0,0,.78) 100%),
      url('../img/bg-mobile.png') center top / cover no-repeat!important;
    background-attachment:scroll!important;
  }

  body.home .ra-service-strip:before,
  body.front-page .ra-service-strip:before,
  body.home .ra-elevation-panel:before,
  body.front-page .ra-elevation-panel:before,
  body.home .ra-recent-work-carousel:before,
  body.front-page .ra-recent-work-carousel:before,
  body.home .ra-gallery-preview:before,
  body.front-page .ra-gallery-preview:before,
  body.home .ra-contact-strip:before,
  body.front-page .ra-contact-strip:before{
    background:linear-gradient(180deg,rgba(0,0,0,.56),rgba(0,0,0,.68))!important;
  }
}


/* v5.6.2 true artwork-through-sections + cleaner invisible header */

/* Site-wide fixed artwork layer */
html,
body,
body.ra-site{
  background:#000!important;
  min-height:100%!important;
}

body.ra-site:before,
body.home.ra-site:before,
body.front-page.ra-site:before,
body:before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-20!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.22) 45%,rgba(0,0,0,.44) 100%),
    url('../img/bg-desktop.png') center top / cover no-repeat!important;
  background-attachment:fixed!important;
  pointer-events:none!important;
}

body.ra-site,
.ra-site,
main,
body.home main,
body.front-page main{
  background:transparent!important;
}

/* Make every home section transparent enough to see the hero artwork through empty spaces */
body.home .ra-section,
body.front-page .ra-section,
body.home section,
body.front-page section,
body.home .ra-service-strip,
body.front-page .ra-service-strip,
body.home .ra-about-band,
body.front-page .ra-about-band,
body.home .ra-elevation-panel,
body.front-page .ra-elevation-panel,
body.home .ra-recent-work-carousel,
body.front-page .ra-recent-work-carousel,
body.home .ra-gallery-preview,
body.front-page .ra-gallery-preview,
body.home .ra-contact-strip,
body.front-page .ra-contact-strip,
body.home .ra-services-list,
body.front-page .ra-services-list,
body.home .ra-gallery-page,
body.front-page .ra-gallery-page,
body.home .ra-about-page,
body.front-page .ra-about-page,
body.home .ra-contact-page,
body.front-page .ra-contact-page{
  background:transparent!important;
  background-color:transparent!important;
}

/* Any dark overlay pseudo-layers need to be subtle, not solid black */
body.home .ra-service-strip:before,
body.front-page .ra-service-strip:before,
body.home .ra-elevation-panel:before,
body.front-page .ra-elevation-panel:before,
body.home .ra-recent-work-carousel:before,
body.front-page .ra-recent-work-carousel:before,
body.home .ra-gallery-preview:before,
body.front-page .ra-gallery-preview:before,
body.home .ra-contact-strip:before,
body.front-page .ra-contact-strip:before,
body.home .ra-footer-premium-v2:before,
body.home .ra-footer-premium-v2:after,
body.front-page .ra-footer-premium-v2:before,
body.front-page .ra-footer-premium-v2:after{
  background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.26))!important;
  opacity:1!important;
}

/* Use light glass cards, not black slabs */
body.home .ra-service-tile,
body.front-page .ra-service-tile,
body.home .ra-trust,
body.front-page .ra-trust,
body.home .ra-elevation-grid article,
body.front-page .ra-elevation-grid article,
body.home .ra-about-luxury-notes article,
body.front-page .ra-about-luxury-notes article,
body.home .ra-before-card,
body.front-page .ra-before-card,
body.home .ra-gallery-slide,
body.front-page .ra-gallery-slide,
body.home .ra-contact-box,
body.front-page .ra-contact-box,
body.home .ra-footer-main,
body.front-page .ra-footer-main,
body.home .ra-footer-appointment-panel,
body.front-page .ra-footer-appointment-panel{
  background:
    linear-gradient(135deg,rgba(255,224,138,.10),transparent 35%),
    radial-gradient(320px 150px at 50% 0,rgba(255,224,138,.10),transparent 70%),
    linear-gradient(180deg,rgba(8,8,8,.62),rgba(0,0,0,.44))!important;
  backdrop-filter:blur(3px)!important;
}

/* Remove empty black space from footer area too */
body.home .ra-footer,
body.front-page .ra-footer,
body.home .ra-footer-30k,
body.front-page .ra-footer-30k{
  background:linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.36))!important;
  background-color:transparent!important;
}

/* Hero still uses the original image cleanly */
body.home .ra-hero,
body.front-page .ra-hero{
  background:transparent!important;
}

body.home .ra-bg,
body.front-page .ra-bg{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.12) 70%,rgba(0,0,0,.24)),
    url('../img/bg-desktop.png')!important;
  background-size:100% 100%!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}

/* Clean header: no bar, no black block, no fake strip — just part of the artwork */
.ra-header-final,
.ra-header.ra-header-final,
body .ra-header-final{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:999!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}

.admin-bar .ra-header-final{top:32px!important;}

.ra-header-final:before,
.ra-header-final:after{
  display:none!important;
  content:none!important;
}

.ra-header-final-inner,
body .ra-header-final .ra-header-final-inner{
  width:min(1140px,calc(100% - 64px))!important;
  height:88px!important;
  min-height:88px!important;
  display:grid!important;
  grid-template-columns:150px 1fr 180px!important;
  align-items:center!important;
  gap:30px!important;
  padding:0!important;
  background:transparent!important;
}

.ra-header-final .ra-logo,
.ra-header-final .ra-logo-final{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  clip-path:none!important;
}

.ra-header-final .ra-logo img,
.ra-header-final .ra-logo-final img,
body .ra-header-final .ra-logo img{
  width:112px!important;
  max-width:112px!important;
  max-height:78px!important;
  filter:
    drop-shadow(0 0 18px rgba(216,166,62,.36))
    drop-shadow(0 14px 24px rgba(0,0,0,.85))!important;
}

.ra-header-final .ra-nav,
.ra-header-final .ra-nav-final,
body .ra-header-final .ra-nav{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  gap:34px!important;
  padding:0!important;
}

.ra-header-final .ra-nav a,
.ra-header-final .ra-nav li a,
body .ra-header-final .ra-nav a{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:rgba(255,255,255,.92)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.16em!important;
  padding:8px 0!important;
  text-shadow:0 8px 20px rgba(0,0,0,.9)!important;
}

.ra-header-final .ra-nav a:hover,
.ra-header-final .ra-nav .current-menu-item a,
.ra-header-final .ra-nav li.current-menu-item a{
  color:#e5b34e!important;
  background:transparent!important;
}

.ra-header-final .ra-nav a:after,
.ra-header-final .ra-nav li a:after{
  bottom:-4px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,#e5b34e,transparent)!important;
}

.ra-header-final .ra-header-contact-final,
body .ra-header-final .ra-header-contact-final{
  color:#e5b34e!important;
  font-size:14px!important;
  font-weight:950!important;
  text-shadow:0 8px 20px rgba(0,0,0,.9)!important;
}

.ra-header-final .ra-header-contact-final svg,
.ra-header-final .ra-header-contact-final svg *,
.ra-header-final .ra-header-contact-final svg path{
  fill:#e5b34e!important;
  color:#e5b34e!important;
  opacity:1!important;
}

/* Give the larger invisible header room */
body.home .ra-hero-inner,
body.front-page .ra-hero-inner{
  padding-top:128px!important;
}

/* Other page backgrounds also show the artwork rather than flat black */
.ra-page-hero,
.ra-services-list,
.ra-gallery-page,
.ra-about-page,
.ra-contact-page{
  background:
    linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.56)),
    url('../img/bg-desktop.png') center top / cover no-repeat!important;
  background-attachment:fixed!important;
}

/* Mobile */
@media(max-width:760px){
  body.ra-site:before,
  body.home.ra-site:before,
  body.front-page.ra-site:before,
  body:before{
    background:
      linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.36) 45%,rgba(0,0,0,.64) 100%),
      url('../img/bg-mobile.png') center top / cover no-repeat!important;
    background-attachment:scroll!important;
  }

  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 28px,640px)!important;
    grid-template-columns:88px 1fr!important;
    min-height:84px!important;
    height:auto!important;
    padding:10px 0!important;
    gap:12px!important;
  }

  .ra-header-final .ra-logo img,
  .ra-header-final .ra-logo-final img{
    width:74px!important;
    max-width:74px!important;
    max-height:66px!important;
  }

  .ra-header-final .ra-nav{
    background:rgba(0,0,0,.38)!important;
    backdrop-filter:blur(10px)!important;
    border:1px solid rgba(216,166,62,.22)!important;
    border-radius:8px!important;
  }

  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    padding-top:136px!important;
  }
}


/* v5.6.4 tighter hero/header pass */
.ra-header-final,
.ra-header.ra-header-final,
body .ra-header-final{
  background:transparent!important;
}
.ra-header-final-inner,
body .ra-header-final .ra-header-final-inner{
  width:min(1140px,calc(100% - 64px))!important;
  height:72px!important;
  min-height:72px!important;
  grid-template-columns:128px 1fr 170px!important;
  gap:24px!important;
}
.ra-header-final .ra-logo img,
.ra-header-final .ra-logo-final img,
body .ra-header-final .ra-logo img{
  width:94px!important;
  max-width:94px!important;
  max-height:66px!important;
}
.ra-header-final .ra-nav,
.ra-header-final .ra-nav-final,
body .ra-header-final .ra-nav{
  gap:28px!important;
}
.ra-header-final .ra-nav a,
.ra-header-final .ra-nav li a,
body .ra-header-final .ra-nav a{
  font-size:11px!important;
  letter-spacing:.14em!important;
  padding:6px 0!important;
}
.ra-header-final .ra-header-contact-final,
body .ra-header-final .ra-header-contact-final{
  font-size:13px!important;
}

body.home .ra-hero,
body.front-page .ra-hero{
  align-items:flex-start!important;
  min-height:clamp(680px,56vw,920px)!important;
  height:auto!important;
}
body.home .ra-hero-inner,
body.front-page .ra-hero-inner{
  width:min(900px,calc(100% - 40px))!important;
  padding-top:86px!important;
  padding-bottom:34px!important;
  transform:none!important;
}
body.home .ra-kicker,
body.front-page .ra-kicker{
  margin-bottom:10px!important;
  font-size:12px!important;
  letter-spacing:.34em!important;
}
body.home .ra-kicker span,
body.front-page .ra-kicker span{
  width:120px!important;
}
body.home .ra-hero-title,
body.front-page .ra-hero-title{
  font-size:clamp(54px,5.7vw,98px)!important;
  line-height:.94!important;
  margin:0 auto!important;
}
body.home .ra-hero-intro,
body.front-page .ra-hero-intro{
  margin:14px auto 20px!important;
  font-size:16px!important;
  line-height:1.42!important;
  max-width:760px!important;
}
body.home .ra-hero-actions,
body.front-page .ra-hero-actions{
  margin:0 auto 8px!important;
  gap:14px!important;
}
body.home .ra-hero-actions .ra-btn,
body.front-page .ra-hero-actions .ra-btn{
  min-width:184px!important;
  height:48px!important;
  font-size:15px!important;
}
body.home .ra-service-strip,
body.front-page .ra-service-strip{
  padding-top:18px!important;
}

@media(max-width:1050px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    grid-template-columns:110px 1fr 148px!important;
    height:68px!important;
    min-height:68px!important;
    gap:16px!important;
  }
  .ra-header-final .ra-logo img,
  .ra-header-final .ra-logo-final img{
    width:82px!important;
    max-width:82px!important;
    max-height:60px!important;
  }
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    padding-top:78px!important;
  }
  body.home .ra-hero-title,
  body.front-page .ra-hero-title{
    font-size:clamp(50px,6vw,82px)!important;
  }
}

@media(max-width:760px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 28px,640px)!important;
    grid-template-columns:84px 1fr!important;
    min-height:74px!important;
    height:auto!important;
    padding:8px 0!important;
  }
  .ra-header-final .ra-logo img,
  .ra-header-final .ra-logo-final img{
    width:68px!important;
    max-width:68px!important;
    max-height:58px!important;
  }
  body.home .ra-hero,
  body.front-page .ra-hero{
    min-height:660px!important;
  }
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    padding-top:110px!important;
    padding-bottom:26px!important;
  }
  body.home .ra-kicker,
  body.front-page .ra-kicker{
    font-size:10px!important;
    letter-spacing:.24em!important;
  }
  body.home .ra-kicker span,
  body.front-page .ra-kicker span{
    width:44px!important;
  }
  body.home .ra-hero-title,
  body.front-page .ra-hero-title{
    font-size:clamp(42px,13vw,64px)!important;
  }
  body.home .ra-hero-intro,
  body.front-page .ra-hero-intro{
    font-size:15px!important;
    margin:12px auto 18px!important;
  }
}


/* v5.6.5 compact hero/service row + refined icon set */
.ra-tile-icon svg,
.ra-service-row-icon svg{
  width:52px!important;
  height:52px!important;
  stroke-width:2.35!important;
  filter:drop-shadow(0 0 10px rgba(216,166,62,.16))!important;
}
.ra-tile-icon{
  height:52px!important;
  margin-bottom:12px!important;
}
body.home .ra-hero,
body.front-page .ra-hero{
  min-height:620px!important;
}
body.home .ra-hero-inner,
body.front-page .ra-hero-inner{
  padding-top:96px!important;
  padding-bottom:8px!important;
}
body.home .ra-hero-title,
body.front-page .ra-hero-title{
  font-size:clamp(52px,5.5vw,92px)!important;
  line-height:.93!important;
}
body.home .ra-hero-intro,
body.front-page .ra-hero-intro{
  margin:12px auto 16px!important;
}
body.home .ra-hero-actions,
body.front-page .ra-hero-actions{
  margin:0 auto 0!important;
  gap:12px!important;
}
body.home .ra-hero-actions .ra-btn,
body.front-page .ra-hero-actions .ra-btn{
  height:46px!important;
}
body.home .ra-service-strip,
body.front-page .ra-service-strip{
  margin-top:-10px!important;
  padding-top:0!important;
  padding-bottom:18px!important;
  background:transparent!important;
  border-top:0!important;
}
.ra-service-tiles{
  align-items:start!important;
}
.ra-service-tile{
  min-height:150px!important;
  padding:20px 16px 16px!important;
}
.ra-service-tile h3,
.ra-service-tile p{
  margin-top:0!important;
}

@media(max-width:1050px){
  body.home .ra-hero,
  body.front-page .ra-hero{min-height:580px!important;}
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{padding-top:88px!important;padding-bottom:6px!important;}
  body.home .ra-service-strip,
  body.front-page .ra-service-strip{margin-top:-8px!important;}
}

@media(max-width:760px){
  .ra-tile-icon svg,
  .ra-service-row-icon svg{width:46px!important;height:46px!important;}
  body.home .ra-hero,
  body.front-page .ra-hero{min-height:600px!important;}
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{padding-top:116px!important;padding-bottom:6px!important;}
  body.home .ra-service-strip,
  body.front-page .ra-service-strip{margin-top:-6px!important;}
}


/* v5.6.6 micro spacing fix for service card overlap */
body.home .ra-hero-inner,
body.front-page .ra-hero-inner{
  padding-bottom:16px!important;
}

body.home .ra-service-strip,
body.front-page .ra-service-strip{
  margin-top:4px!important;
  padding-top:0!important;
}

.ra-service-tiles{
  position:relative!important;
  z-index:2!important;
}

@media(max-width:1050px){
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    padding-bottom:14px!important;
  }
  body.home .ra-service-strip,
  body.front-page .ra-service-strip{
    margin-top:2px!important;
  }
}

@media(max-width:760px){
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    padding-bottom:12px!important;
  }
  body.home .ra-service-strip,
  body.front-page .ra-service-strip{
    margin-top:2px!important;
  }
}


/* v5.6.7 service card symmetry + unified alloy icons */
.ra-service-tiles{
  align-items:stretch!important;
}

.ra-service-tile{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:156px!important;
  padding:20px 16px 18px!important;
}

.ra-tile-icon{
  height:auto!important;
  min-height:46px!important;
  margin:0 0 18px 0!important;
}

.ra-tile-icon svg,
.ra-service-row-icon svg{
  width:50px!important;
  height:50px!important;
}

.ra-service-tile h3{
  margin:0!important;
  font-size:15px!important;
  line-height:1.22!important;
}

.ra-service-tile i{
  margin:18px auto 0!important;
}

@media(max-width:1050px){
  .ra-service-tile{
    min-height:150px!important;
    padding:18px 14px 16px!important;
  }
  .ra-tile-icon{
    margin:0 0 16px 0!important;
  }
  .ra-service-tile i{
    margin:16px auto 0!important;
  }
}

@media(max-width:760px){
  .ra-service-tile{
    min-height:142px!important;
    padding:16px 12px 14px!important;
  }
  .ra-tile-icon svg,
  .ra-service-row-icon svg{
    width:44px!important;
    height:44px!important;
  }
  .ra-tile-icon{
    margin:0 0 14px 0!important;
  }
  .ra-service-tile h3{
    font-size:14px!important;
  }
  .ra-service-tile i{
    margin:14px auto 0!important;
  }
}


/* v5.6.9 service section rebuilt as seamless watermark carousel */
body.home .ra-service-marquee-section,
body.front-page .ra-service-marquee-section{
  position:relative!important;
  z-index:8!important;
  margin-top:10px!important;
  padding:10px 0 26px!important;
  background:transparent!important;
  border-top:0!important;
  border-bottom:1px solid rgba(216,166,62,.34)!important;
  overflow:hidden!important;
}

body.home .ra-service-marquee-shell,
body.front-page .ra-service-marquee-shell{
  position:relative!important;
  width:100%!important;
  overflow:hidden!important;
}

body.home .ra-service-marquee-shell:before,
body.home .ra-service-marquee-shell:after,
body.front-page .ra-service-marquee-shell:before,
body.front-page .ra-service-marquee-shell:after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  width:140px!important;
  z-index:2!important;
  pointer-events:none!important;
}
body.home .ra-service-marquee-shell:before,
body.front-page .ra-service-marquee-shell:before{
  left:0!important;
  background:linear-gradient(90deg,rgba(3,3,3,.94),rgba(3,3,3,0))!important;
}
body.home .ra-service-marquee-shell:after,
body.front-page .ra-service-marquee-shell:after{
  right:0!important;
  background:linear-gradient(270deg,rgba(3,3,3,.94),rgba(3,3,3,0))!important;
}

body.home .ra-service-marquee-track,
body.front-page .ra-service-marquee-track{
  display:flex!important;
  align-items:stretch!important;
  gap:0!important;
  width:max-content!important;
  animation:raServiceMarquee 28s linear infinite!important;
  will-change:transform!important;
}
body.home .ra-service-marquee-shell:hover .ra-service-marquee-track,
body.front-page .ra-service-marquee-shell:hover .ra-service-marquee-track{
  animation-play-state:paused!important;
}

body.home .ra-service-marquee-item,
body.front-page .ra-service-marquee-item{
  position:relative!important;
  min-width:240px!important;
  width:240px!important;
  min-height:170px!important;
  padding:20px 18px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  background:transparent!important;
}

body.home .ra-service-marquee-item:after,
body.front-page .ra-service-marquee-item:after{
  content:""!important;
  position:absolute!important;
  right:0!important;
  top:50%!important;
  width:1px!important;
  height:74px!important;
  transform:translateY(-50%)!important;
  background:linear-gradient(180deg,transparent,rgba(216,166,62,.36),transparent)!important;
}

body.home .ra-service-watermark,
body.front-page .ra-service-watermark{
  width:118px!important;
  height:118px!important;
  margin:0 auto 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:rgba(216,166,62,.40)!important;
  opacity:1!important;
}
body.home .ra-service-watermark svg,
body.front-page .ra-service-watermark svg{
  width:100%!important;
  height:100%!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  filter:drop-shadow(0 0 18px rgba(216,166,62,.10))!important;
}

body.home .ra-service-marquee-item h3,
body.front-page .ra-service-marquee-item h3{
  margin:0!important;
  max-width:188px!important;
  color:#f6f1e7!important;
  font-size:20px!important;
  line-height:1.14!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
  text-shadow:0 6px 16px rgba(0,0,0,.64)!important;
}

@keyframes raServiceMarquee{
  from { transform:translateX(0); }
  to { transform:translateX(-50%); }
}

@media(max-width:1050px){
  body.home .ra-service-marquee-section,
  body.front-page .ra-service-marquee-section{
    margin-top:8px!important;
    padding:8px 0 22px!important;
  }
  body.home .ra-service-marquee-shell:before,
  body.home .ra-service-marquee-shell:after,
  body.front-page .ra-service-marquee-shell:before,
  body.front-page .ra-service-marquee-shell:after{
    width:88px!important;
  }
  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:24s!important;
  }
  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-width:210px!important;
    width:210px!important;
    min-height:156px!important;
    padding:18px 14px 16px!important;
  }
  body.home .ra-service-watermark,
  body.front-page .ra-service-watermark{
    width:100px!important;
    height:100px!important;
    margin-bottom:8px!important;
  }
  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    font-size:18px!important;
    max-width:170px!important;
  }
}

@media(max-width:760px){
  body.home .ra-service-marquee-section,
  body.front-page .ra-service-marquee-section{
    margin-top:4px!important;
    padding:10px 0 18px!important;
  }
  body.home .ra-service-marquee-shell:before,
  body.home .ra-service-marquee-shell:after,
  body.front-page .ra-service-marquee-shell:before,
  body.front-page .ra-service-marquee-shell:after{
    width:34px!important;
  }
  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:18s!important;
  }
  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-width:164px!important;
    width:164px!important;
    min-height:132px!important;
    padding:14px 10px 12px!important;
  }
  body.home .ra-service-marquee-item:after,
  body.front-page .ra-service-marquee-item:after{
    height:52px!important;
  }
  body.home .ra-service-watermark,
  body.front-page .ra-service-watermark{
    width:78px!important;
    height:78px!important;
    margin-bottom:6px!important;
  }
  body.home .ra-service-watermark svg,
  body.front-page .ra-service-watermark svg{
    stroke-width:2.15!important;
  }
  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    max-width:134px!important;
    font-size:15px!important;
    line-height:1.16!important;
  }
}


/* v5.7.0 service carousel typography + premium watermark SVG refinement */
body.home .ra-service-marquee-item,
body.front-page .ra-service-marquee-item{
  min-width:248px!important;
  width:248px!important;
  min-height:176px!important;
  padding:18px 18px 14px!important;
}

body.home .ra-service-watermark,
body.front-page .ra-service-watermark{
  width:132px!important;
  height:132px!important;
  margin:0 auto 8px!important;
  color:rgba(216,166,62,.30)!important;
}

body.home .ra-service-watermark svg,
body.front-page .ra-service-watermark svg{
  width:100%!important;
  height:100%!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  filter:drop-shadow(0 0 20px rgba(216,166,62,.08))!important;
  opacity:1!important;
}

body.home .ra-service-marquee-item h3,
body.front-page .ra-service-marquee-item h3{
  margin:0!important;
  max-width:210px!important;
  font-family:var(--font-head)!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  font-size:22px!important;
  line-height:1.12!important;
  font-weight:700!important;
  color:rgba(247,242,233,.98)!important;
  text-shadow:0 8px 18px rgba(0,0,0,.72)!important;
}

body.home .ra-service-marquee-item:after,
body.front-page .ra-service-marquee-item:after{
  height:82px!important;
  background:linear-gradient(180deg,transparent,rgba(216,166,62,.28),transparent)!important;
}

@media(max-width:1050px){
  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-width:224px!important;
    width:224px!important;
    min-height:164px!important;
    padding:16px 14px 12px!important;
  }
  body.home .ra-service-watermark,
  body.front-page .ra-service-watermark{
    width:118px!important;
    height:118px!important;
    margin-bottom:6px!important;
  }
  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    max-width:188px!important;
    font-size:19px!important;
  }
}

@media(max-width:760px){
  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-width:176px!important;
    width:176px!important;
    min-height:134px!important;
    padding:12px 10px 10px!important;
  }
  body.home .ra-service-watermark,
  body.front-page .ra-service-watermark{
    width:86px!important;
    height:86px!important;
    margin-bottom:4px!important;
  }
  body.home .ra-service-watermark svg,
  body.front-page .ra-service-watermark svg{
    stroke-width:2.15!important;
  }
  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    max-width:150px!important;
    font-size:15px!important;
    line-height:1.15!important;
  }
}


/* v5.7.1 slimmer service marquee, always moving */
body.home .ra-service-marquee-section,
body.front-page .ra-service-marquee-section{
  margin-top:6px!important;
  padding:4px 0 16px!important;
}

body.home .ra-service-marquee-shell:before,
body.home .ra-service-marquee-shell:after,
body.front-page .ra-service-marquee-shell:before,
body.front-page .ra-service-marquee-shell:after{
  width:64px!important;
}

body.home .ra-service-marquee-track,
body.front-page .ra-service-marquee-track{
  animation-duration:22s!important;
}

/* no hover pause */
body.home .ra-service-marquee-shell:hover .ra-service-marquee-track,
body.front-page .ra-service-marquee-shell:hover .ra-service-marquee-track{
  animation-play-state:running!important;
}

body.home .ra-service-marquee-item,
body.front-page .ra-service-marquee-item{
  min-width:164px!important;
  width:164px!important;
  min-height:122px!important;
  padding:8px 10px 8px!important;
}

body.home .ra-service-marquee-item:after,
body.front-page .ra-service-marquee-item:after{
  height:56px!important;
  opacity:.7!important;
}

body.home .ra-service-watermark,
body.front-page .ra-service-watermark{
  width:72px!important;
  height:72px!important;
  margin:0 auto 4px!important;
  color:rgba(216,166,62,.26)!important;
}

body.home .ra-service-watermark svg,
body.front-page .ra-service-watermark svg{
  stroke-width:1.9!important;
  filter:drop-shadow(0 0 12px rgba(216,166,62,.06))!important;
}

body.home .ra-service-marquee-item h3,
body.front-page .ra-service-marquee-item h3{
  max-width:138px!important;
  font-size:14px!important;
  line-height:1.1!important;
  letter-spacing:.04em!important;
}

@media(max-width:1050px){
  body.home .ra-service-marquee-section,
  body.front-page .ra-service-marquee-section{
    padding:4px 0 14px!important;
  }
  body.home .ra-service-marquee-shell:before,
  body.home .ra-service-marquee-shell:after,
  body.front-page .ra-service-marquee-shell:before,
  body.front-page .ra-service-marquee-shell:after{
    width:42px!important;
  }
  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:19s!important;
  }
  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-width:146px!important;
    width:146px!important;
    min-height:114px!important;
    padding:8px 8px 6px!important;
  }
  body.home .ra-service-watermark,
  body.front-page .ra-service-watermark{
    width:64px!important;
    height:64px!important;
    margin-bottom:4px!important;
  }
  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    max-width:124px!important;
    font-size:13px!important;
  }
}

@media(max-width:760px){
  body.home .ra-service-marquee-section,
  body.front-page .ra-service-marquee-section{
    margin-top:2px!important;
    padding:6px 0 12px!important;
  }
  body.home .ra-service-marquee-shell:before,
  body.home .ra-service-marquee-shell:after,
  body.front-page .ra-service-marquee-shell:before,
  body.front-page .ra-service-marquee-shell:after{
    width:22px!important;
  }
  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:16s!important;
  }
  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-width:122px!important;
    width:122px!important;
    min-height:102px!important;
    padding:6px 6px 6px!important;
  }
  body.home .ra-service-watermark,
  body.front-page .ra-service-watermark{
    width:54px!important;
    height:54px!important;
    margin-bottom:3px!important;
  }
  body.home .ra-service-watermark svg,
  body.front-page .ra-service-watermark svg{
    stroke-width:2.05!important;
  }
  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    max-width:108px!important;
    font-size:11px!important;
    line-height:1.08!important;
  }
  body.home .ra-service-marquee-item:after,
  body.front-page .ra-service-marquee-item:after{
    height:42px!important;
  }
}


/* v5.7.2 text-only endless service carousel */
body.home .ra-service-marquee-section,
body.front-page .ra-service-marquee-section{
  padding:6px 0 14px!important;
  margin-top:4px!important;
  border-top:1px solid rgba(216,166,62,.18)!important;
  border-bottom:1px solid rgba(216,166,62,.24)!important;
  background:linear-gradient(90deg,rgba(0,0,0,.10),rgba(0,0,0,.24),rgba(0,0,0,.10))!important;
}

body.home .ra-service-marquee-track,
body.front-page .ra-service-marquee-track{
  animation-duration:20s!important;
}

body.home .ra-service-marquee-shell:hover .ra-service-marquee-track,
body.front-page .ra-service-marquee-shell:hover .ra-service-marquee-track{
  animation-play-state:running!important;
}

body.home .ra-service-watermark,
body.front-page .ra-service-watermark,
body.home .ra-service-watermark svg,
body.front-page .ra-service-watermark svg{
  display:none!important;
}

body.home .ra-service-marquee-item,
body.front-page .ra-service-marquee-item{
  min-width:auto!important;
  width:auto!important;
  min-height:42px!important;
  padding:0 34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
}

body.home .ra-service-marquee-item:after,
body.front-page .ra-service-marquee-item:after{
  right:0!important;
  height:18px!important;
  background:linear-gradient(180deg,transparent,rgba(216,166,62,.48),transparent)!important;
}

body.home .ra-service-marquee-item h3,
body.front-page .ra-service-marquee-item h3{
  margin:0!important;
  max-width:none!important;
  white-space:nowrap!important;
  font-family:var(--font-head)!important;
  text-transform:uppercase!important;
  letter-spacing:.13em!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:700!important;
  color:rgba(247,242,233,.92)!important;
  text-shadow:0 6px 16px rgba(0,0,0,.78)!important;
}

body.home .ra-service-marquee-item h3:before,
body.front-page .ra-service-marquee-item h3:before{
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  margin-right:18px;
  vertical-align:middle;
  border-radius:50%;
  background:#d8a63e;
  box-shadow:0 0 12px rgba(216,166,62,.65);
}

@media(max-width:1050px){
  body.home .ra-service-marquee-section,
  body.front-page .ra-service-marquee-section{
    padding:6px 0 12px!important;
  }

  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:18s!important;
  }

  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-height:40px!important;
    padding:0 26px!important;
  }

  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    font-size:13px!important;
    letter-spacing:.11em!important;
  }
}

@media(max-width:760px){
  body.home .ra-service-marquee-section,
  body.front-page .ra-service-marquee-section{
    padding:6px 0 10px!important;
    margin-top:2px!important;
  }

  body.home .ra-service-marquee-shell:before,
  body.home .ra-service-marquee-shell:after,
  body.front-page .ra-service-marquee-shell:before,
  body.front-page .ra-service-marquee-shell:after{
    width:28px!important;
  }

  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:15s!important;
  }

  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-height:36px!important;
    padding:0 20px!important;
  }

  body.home .ra-service-marquee-item h3,
  body.front-page .ra-service-marquee-item h3{
    font-size:11px!important;
    letter-spacing:.09em!important;
  }

  body.home .ra-service-marquee-item h3:before,
  body.front-page .ra-service-marquee-item h3:before{
    width:5px;
    height:5px;
    margin-right:12px;
  }

  body.home .ra-service-marquee-item:after,
  body.front-page .ra-service-marquee-item:after{
    height:14px!important;
  }
}

/* =========================================================
   v5.7.4 Mobile stability + slower gallery carousel
   - fixes mobile header/menu layout
   - prevents horizontal overflow
   - improves readable hero spacing on phones/tablets
   - slows Recent Work/Gallery carousel dramatically
   ========================================================= */
html,
body,
.ra-site{
  max-width:100%!important;
  overflow-x:hidden!important;
}

img,
video,
iframe{
  max-width:100%!important;
}

.ra-wrap{
  width:min(1120px,calc(100% - 44px))!important;
}

/* Gallery was moving far too fast. Keep seamless, but premium and calm. */
.ra-gallery-carousel-track,
body.home .ra-gallery-carousel-track,
body.front-page .ra-gallery-carousel-track,
.ra-gallery-carousel-page .ra-gallery-carousel-track{
  animation-duration:96s!important;
  animation-timing-function:linear!important;
}

.ra-carousel-shell:hover .ra-gallery-carousel-track{
  animation-play-state:running!important;
}

/* Also calm down the text/service marquee because it reads like a gallery reel on mobile. */
body.home .ra-service-marquee-track,
body.front-page .ra-service-marquee-track{
  animation-duration:46s!important;
}

/* Tablet: tighter but still desktop-quality. */
@media(max-width:1050px){
  .ra-wrap{
    width:min(100% - 34px,900px)!important;
  }

  .ra-header-final,
  .ra-header.ra-header-final,
  body .ra-header-final{
    position:sticky!important;
    top:0!important;
    background:rgba(3,3,3,.88)!important;
    border-bottom:1px solid rgba(216,166,62,.38)!important;
    backdrop-filter:blur(14px)!important;
    box-shadow:0 18px 44px rgba(0,0,0,.58)!important;
  }

  .admin-bar .ra-header-final{
    top:32px!important;
  }

  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 34px,920px)!important;
    min-height:76px!important;
    height:auto!important;
    grid-template-columns:96px 1fr auto!important;
    gap:16px!important;
    padding:8px 0!important;
  }

  .ra-header-final .ra-logo img,
  .ra-header-final .ra-logo-final img,
  body .ra-header-final .ra-logo img{
    width:78px!important;
    max-width:78px!important;
    max-height:60px!important;
  }

  .ra-header-final .ra-nav,
  .ra-header-final .ra-nav-final,
  body .ra-header-final .ra-nav{
    gap:16px!important;
    justify-content:flex-end!important;
  }

  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a,
  body .ra-header-final .ra-nav a{
    font-size:10px!important;
    letter-spacing:.11em!important;
  }

  .ra-header-final .ra-header-contact-final,
  body .ra-header-final .ra-header-contact-final{
    display:none!important;
  }

  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    width:min(840px,calc(100% - 38px))!important;
    padding-top:72px!important;
  }

  .ra-gallery-carousel-track,
  body.home .ra-gallery-carousel-track,
  body.front-page .ra-gallery-carousel-track,
  .ra-gallery-carousel-page .ra-gallery-carousel-track{
    animation-duration:82s!important;
  }

  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:42s!important;
  }
}

/* Proper mobile rebuild: header, hero, grids and carousels. */
@media(max-width:760px){
  .ra-wrap{
    width:min(100% - 24px,640px)!important;
  }

  .admin-bar .ra-header-final{
    top:46px!important;
  }

  .ra-header-final,
  .ra-header.ra-header-final,
  body .ra-header-final{
    position:sticky!important;
    top:0!important;
    left:auto!important;
    right:auto!important;
    background:rgba(3,3,3,.94)!important;
    border-bottom:1px solid rgba(216,166,62,.42)!important;
    box-shadow:0 16px 38px rgba(0,0,0,.66)!important;
    backdrop-filter:blur(16px)!important;
  }

  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 24px,640px)!important;
    display:grid!important;
    grid-template-columns:74px 1fr!important;
    align-items:center!important;
    min-height:68px!important;
    height:auto!important;
    gap:10px!important;
    padding:8px 0!important;
  }

  .ra-header-final .ra-logo,
  .ra-header-final .ra-logo-final{
    display:flex!important;
    align-items:center!important;
  }

  .ra-header-final .ra-logo img,
  .ra-header-final .ra-logo-final img,
  body .ra-header-final .ra-logo img{
    width:62px!important;
    max-width:62px!important;
    max-height:54px!important;
    object-fit:contain!important;
  }

  .ra-menu-toggle,
  .ra-menu-toggle-final,
  body .ra-menu-toggle-final{
    display:inline-flex!important;
    justify-self:end!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:86px!important;
    height:40px!important;
    margin:0!important;
    padding:0 14px!important;
    border:1px solid rgba(216,166,62,.55)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.04)!important;
    color:#f7f2e9!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
    box-shadow:inset 0 0 20px rgba(216,166,62,.06),0 8px 22px rgba(0,0,0,.34)!important;
  }

  .ra-header-final .ra-nav,
  .ra-header-final .ra-nav-final,
  body .ra-header-final .ra-nav{
    grid-column:1 / -1!important;
    display:none!important;
    width:100%!important;
    margin:6px 0 0!important;
    padding:10px!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    background:linear-gradient(180deg,rgba(12,12,12,.96),rgba(0,0,0,.92))!important;
    border:1px solid rgba(216,166,62,.30)!important;
    border-radius:18px!important;
    box-shadow:0 18px 44px rgba(0,0,0,.54),inset 0 0 24px rgba(216,166,62,.04)!important;
    backdrop-filter:blur(14px)!important;
  }

  .ra-header-final.is-open .ra-nav,
  .ra-header.is-open .ra-nav,
  body .ra-header-final.is-open .ra-nav{
    display:flex!important;
  }

  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a,
  body .ra-header-final .ra-nav a{
    display:flex!important;
    width:100%!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:46px!important;
    padding:12px 10px!important;
    color:#f7f2e9!important;
    font-size:12px!important;
    letter-spacing:.12em!important;
    text-align:center!important;
    border-bottom:1px solid rgba(216,166,62,.16)!important;
  }

  .ra-header-final .ra-nav a:after,
  .ra-header-final .ra-nav li a:after{
    display:none!important;
  }

  .ra-header-final .ra-nav a:hover,
  .ra-header-final .ra-nav .current-menu-item a,
  .ra-header-final .ra-nav li.current-menu-item a{
    color:#ffe08a!important;
    text-shadow:0 0 18px rgba(216,166,62,.36)!important;
  }

  .ra-header-final .ra-nav a:last-child,
  .ra-header-final .ra-nav li:last-child a{
    border-bottom:0!important;
  }

  .ra-header-final .ra-header-contact-final,
  body .ra-header-final .ra-header-contact-final{
    grid-column:1 / -1!important;
    display:none!important;
    width:100%!important;
    min-height:42px!important;
    justify-content:center!important;
    margin-top:6px!important;
    font-size:13px!important;
  }

  .ra-header-final.is-open .ra-header-contact-final,
  .ra-header.is-open .ra-header-contact-final{
    display:flex!important;
  }

  body.home .ra-hero,
  body.front-page .ra-hero{
    min-height:auto!important;
    height:auto!important;
    padding:46px 0 34px!important;
    align-items:flex-start!important;
  }

  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner{
    width:min(100% - 24px,620px)!important;
    padding-top:24px!important;
    padding-bottom:0!important;
  }

  body.home .ra-kicker,
  body.front-page .ra-kicker{
    gap:9px!important;
    font-size:10px!important;
    letter-spacing:.20em!important;
    line-height:1.35!important;
    flex-wrap:wrap!important;
  }

  body.home .ra-kicker span,
  body.front-page .ra-kicker span{
    width:34px!important;
  }

  body.home .ra-hero-title,
  body.front-page .ra-hero-title{
    font-size:clamp(42px,14.5vw,68px)!important;
    line-height:.94!important;
    letter-spacing:.02em!important;
    max-width:100%!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }

  body.home .ra-hero-intro,
  body.front-page .ra-hero-intro{
    max-width:95%!important;
    font-size:15px!important;
    line-height:1.55!important;
    margin:14px auto 18px!important;
    color:rgba(255,255,255,.92)!important;
  }

  body.home .ra-hero-actions,
  body.front-page .ra-hero-actions{
    width:100%!important;
    flex-direction:column!important;
    gap:12px!important;
    margin:0 auto!important;
  }

  body.home .ra-hero-actions .ra-btn,
  body.front-page .ra-hero-actions .ra-btn,
  .ra-btn{
    width:min(100%,330px)!important;
    min-width:0!important;
    height:48px!important;
    font-size:14px!important;
  }

  .ra-service-tiles,
  .ra-trust-cards,
  .ra-before-grid,
  .ra-gallery-page .ra-before-grid,
  .ra-elevation-grid,
  .ra-about-luxury-notes,
  .ra-contact-grid,
  .ra-two-col{
    grid-template-columns:1fr!important;
  }

  .ra-service-tile,
  body.home .ra-service-tile,
  body.front-page .ra-service-tile{
    min-height:auto!important;
    padding:18px 16px!important;
  }

  .ra-service-row{
    grid-template-columns:1fr!important;
    text-align:center!important;
    padding:18px 16px!important;
  }

  .ra-service-row img{
    grid-column:auto!important;
    height:170px!important;
    border-left:0!important;
  }

  .ra-contact-box{
    grid-template-columns:1fr!important;
  }

  .ra-contact-box>div{
    min-height:auto!important;
    padding:20px!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    gap:12px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(216,166,62,.28)!important;
  }

  .ra-contact-box>div:last-child{
    border-bottom:0!important;
  }

  .ra-copy h2,
  .ra-section-head h2,
  .ra-page-title{
    font-size:clamp(30px,9vw,42px)!important;
    line-height:1.1!important;
  }

  .ra-page-hero{
    padding:42px 0 28px!important;
  }

  .ra-gallery-carousel-track,
  body.home .ra-gallery-carousel-track,
  body.front-page .ra-gallery-carousel-track,
  .ra-gallery-carousel-page .ra-gallery-carousel-track{
    gap:14px!important;
    animation-duration:68s!important;
  }

  .ra-gallery-slide,
  .ra-carousel-shell-large .ra-gallery-slide,
  body.home .ra-gallery-slide,
  body.front-page .ra-gallery-slide{
    flex:0 0 252px!important;
    width:252px!important;
    height:178px!important;
  }

  .ra-carousel-shell:before,
  .ra-carousel-shell:after{
    width:34px!important;
  }

  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:36s!important;
  }

  body.home .ra-service-marquee-item,
  body.front-page .ra-service-marquee-item{
    min-height:38px!important;
    padding:0 24px!important;
  }
}

@media(max-width:420px){
  .ra-wrap{
    width:min(100% - 18px,390px)!important;
  }

  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:min(100% - 18px,390px)!important;
    grid-template-columns:66px 1fr!important;
  }

  .ra-header-final .ra-logo img,
  .ra-header-final .ra-logo-final img,
  body .ra-header-final .ra-logo img{
    width:56px!important;
    max-width:56px!important;
  }

  body.home .ra-hero-title,
  body.front-page .ra-hero-title{
    font-size:clamp(38px,14vw,58px)!important;
  }

  .ra-gallery-slide,
  .ra-carousel-shell-large .ra-gallery-slide,
  body.home .ra-gallery-slide,
  body.front-page .ra-gallery-slide{
    flex-basis:224px!important;
    width:224px!important;
    height:160px!important;
  }
}


/* =========================================================
   v5.7.5 Proper mobile CTA + centred menu rebuild
   - fixes oversized hero CTA panels on phones
   - centres the opened mobile menu
   - keeps header compact and aligned
   - stops hero title being cut off on small screens
   - slows gallery/service reels further for a premium feel
   ========================================================= */
html, body, body.ra-site, .ra-site, main{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}

/* calmer premium motion */
.ra-gallery-carousel-track,
body.home .ra-gallery-carousel-track,
body.front-page .ra-gallery-carousel-track,
.ra-gallery-carousel-page .ra-gallery-carousel-track{
  animation-duration:140s!important;
  animation-timing-function:linear!important;
}
body.home .ra-service-marquee-track,
body.front-page .ra-service-marquee-track{
  animation-duration:72s!important;
  animation-timing-function:linear!important;
}
.ra-carousel-shell:hover .ra-gallery-carousel-track,
body.home .ra-service-marquee-shell:hover .ra-service-marquee-track,
body.front-page .ra-service-marquee-shell:hover .ra-service-marquee-track{
  animation-play-state:running!important;
}

@media(max-width:760px){
  body{overflow-x:hidden!important;}

  /* Header: compact, centred and stable */
  .ra-header-final,
  .ra-header.ra-header-final,
  body .ra-header-final{
    position:sticky!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    background:rgba(3,3,3,.96)!important;
    border-bottom:1px solid rgba(216,166,62,.42)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.72)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
    z-index:9999!important;
  }
  .admin-bar .ra-header-final{top:46px!important;}

  .ra-header-final:before,
  .ra-header-final:after{
    display:none!important;
    content:none!important;
  }

  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    width:calc(100% - 28px)!important;
    max-width:420px!important;
    min-height:68px!important;
    height:auto!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:8px 0!important;
    display:grid!important;
    grid-template-columns:64px 1fr!important;
    gap:10px!important;
    align-items:center!important;
  }

  .ra-header-final .ra-logo,
  .ra-header-final .ra-logo-final{
    justify-self:start!important;
    width:auto!important;
    min-width:0!important;
  }
  .ra-header-final .ra-logo img,
  .ra-header-final .ra-logo-final img,
  body .ra-header-final .ra-logo img{
    width:54px!important;
    max-width:54px!important;
    max-height:50px!important;
    object-fit:contain!important;
  }

  .ra-menu-toggle,
  .ra-menu-toggle-final,
  body .ra-menu-toggle-final{
    justify-self:end!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:86px!important;
    height:40px!important;
    padding:0 15px!important;
    margin:0!important;
    border-radius:5px!important;
    border:1px solid rgba(216,166,62,.58)!important;
    background:rgba(0,0,0,.34)!important;
    color:#f7f2e9!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
    box-shadow:0 0 18px rgba(216,166,62,.08), inset 0 0 18px rgba(216,166,62,.035)!important;
  }

  /* Mobile menu: full, centred and no left drift */
  .ra-header-final .ra-nav,
  .ra-header-final .ra-nav-final,
  body .ra-header-final .ra-nav{
    grid-column:1 / -1!important;
    justify-self:center!important;
    align-self:center!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    margin:10px auto 0!important;
    padding:14px 12px!important;
    gap:0!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    background:linear-gradient(180deg,rgba(8,8,8,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(216,166,62,.32)!important;
    border-radius:14px!important;
    box-shadow:0 18px 46px rgba(0,0,0,.62), inset 0 0 28px rgba(216,166,62,.035)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }
  .ra-header-final.is-open .ra-nav,
  .ra-header-final.is-open .ra-nav-final,
  .ra-header.is-open .ra-nav,
  body .ra-header-final.is-open .ra-nav{
    display:flex!important;
  }
  .ra-header-final .ra-nav li,
  .ra-header-final .ra-nav-final li{
    width:100%!important;
    display:block!important;
  }
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a,
  .ra-header-final .ra-nav-final a,
  .ra-header-final .ra-nav-final li a,
  body .ra-header-final .ra-nav a{
    width:100%!important;
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:14px 8px!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid rgba(216,166,62,.14)!important;
    background:transparent!important;
    color:#f7f2e9!important;
    text-align:center!important;
    font-size:12px!important;
    line-height:1.1!important;
    letter-spacing:.15em!important;
    text-transform:uppercase!important;
  }
  .ra-header-final .ra-nav li:last-child a,
  .ra-header-final .ra-nav a:last-child{
    border-bottom:0!important;
  }
  .ra-header-final .ra-nav a:hover,
  .ra-header-final .ra-nav .current-menu-item a,
  .ra-header-final .ra-nav li.current-menu-item a{
    color:#ffe08a!important;
    text-shadow:0 0 16px rgba(216,166,62,.42)!important;
  }
  .ra-header-final .ra-header-contact-final,
  body .ra-header-final .ra-header-contact-final{
    display:none!important;
  }

  /* Hero: starts cleanly under sticky header and keeps title inside viewport */
  body.home .ra-hero,
  body.front-page .ra-hero,
  .ra-hero{
    min-height:auto!important;
    height:auto!important;
    padding:42px 0 30px!important;
    align-items:flex-start!important;
    overflow:hidden!important;
  }
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner,
  .ra-hero-inner{
    width:calc(100% - 24px)!important;
    max-width:420px!important;
    padding:0!important;
    margin:0 auto!important;
    transform:none!important;
  }
  body.home .ra-kicker,
  body.front-page .ra-kicker,
  .ra-kicker{
    max-width:100%!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    font-size:10px!important;
    letter-spacing:.18em!important;
    line-height:1.35!important;
    margin:0 auto 12px!important;
  }
  body.home .ra-kicker span,
  body.front-page .ra-kicker span,
  .ra-kicker span{
    width:28px!important;
    min-width:28px!important;
  }
  body.home .ra-hero-title,
  body.front-page .ra-hero-title,
  .ra-hero-title{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    font-size:clamp(35px,10.8vw,47px)!important;
    line-height:1.02!important;
    letter-spacing:.01em!important;
    text-align:center!important;
    overflow:visible!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    white-space:normal!important;
  }
  body.home .ra-hero-title b,
  body.home .ra-hero-title strong,
  body.front-page .ra-hero-title b,
  body.front-page .ra-hero-title strong,
  .ra-hero-title b,
  .ra-hero-title strong{
    display:block!important;
    max-width:100%!important;
  }
  body.home .ra-hero-intro,
  body.front-page .ra-hero-intro,
  .ra-hero-intro{
    width:100%!important;
    max-width:340px!important;
    margin:14px auto 18px!important;
    font-size:14.5px!important;
    line-height:1.55!important;
    text-align:center!important;
  }

  /* CTA buttons: no huge panels, no square blocks */
  body.home .ra-hero-actions,
  body.front-page .ra-hero-actions,
  .ra-hero-actions{
    width:100%!important;
    max-width:340px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
    margin:0 auto!important;
    padding:0!important;
  }
  body.home .ra-hero-actions .ra-btn,
  body.front-page .ra-hero-actions .ra-btn,
  .ra-hero-actions .ra-btn,
  .ra-btn{
    width:100%!important;
    max-width:320px!important;
    min-width:0!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    padding:0 18px!important;
    margin:0 auto!important;
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    border-radius:5px!important;
    aspect-ratio:auto!important;
    text-align:center!important;
    font-size:14px!important;
    line-height:1!important;
    overflow:hidden!important;
  }
  body.home .ra-hero-actions .ra-btn svg,
  body.front-page .ra-hero-actions .ra-btn svg,
  .ra-hero-actions .ra-btn svg,
  .ra-btn svg{
    width:19px!important;
    height:19px!important;
    flex:0 0 19px!important;
  }

  .ra-contact-box>div{
    min-height:auto!important;
  }

  .ra-gallery-carousel-track,
  body.home .ra-gallery-carousel-track,
  body.front-page .ra-gallery-carousel-track,
  .ra-gallery-carousel-page .ra-gallery-carousel-track{
    animation-duration:115s!important;
  }
  body.home .ra-service-marquee-track,
  body.front-page .ra-service-marquee-track{
    animation-duration:60s!important;
  }
}

@media(max-width:390px){
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner,
  body.home .ra-hero-inner,
  body.front-page .ra-hero-inner,
  .ra-hero-inner{
    width:calc(100% - 20px)!important;
    max-width:370px!important;
  }
  body.home .ra-hero-title,
  body.front-page .ra-hero-title,
  .ra-hero-title{
    font-size:clamp(32px,10.4vw,41px)!important;
  }
  body.home .ra-hero-actions,
  body.front-page .ra-hero-actions,
  .ra-hero-actions{
    max-width:310px!important;
  }
}

/* v5.7.6 final mobile menu centering fix */
@media (max-width: 980px){
  html, body{
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  .ra-header-final,
  .ra-header.ra-header-final,
  body .ra-header-final{
    width:100%!important;
    max-width:100vw!important;
    overflow:visible!important;
  }
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding-left:22px!important;
    padding-right:22px!important;
    overflow:visible!important;
  }

  /* Force the opened menu to be centred to the viewport, not the logo/left edge */
  .ra-header-final .ra-nav,
  .ra-header-final .ra-nav-final,
  body .ra-header-final .ra-nav,
  body .ra-header-final .ra-nav-final{
    position:absolute!important;
    top:calc(100% + 12px)!important;
    left:50%!important;
    right:auto!important;
    width:calc(100vw - 40px)!important;
    max-width:360px!important;
    min-width:0!important;
    margin:0!important;
    padding:16px 14px!important;
    transform:translateX(-50%)!important;
    z-index:999999!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    text-align:center!important;
  }
  .ra-header-final.is-open .ra-nav,
  .ra-header-final.is-open .ra-nav-final,
  body .ra-header-final.is-open .ra-nav,
  body .ra-header-final.is-open .ra-nav-final{
    display:flex!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
  }
  .ra-header-final .ra-nav li,
  .ra-header-final .ra-nav-final li,
  body .ra-header-final .ra-nav li,
  body .ra-header-final .ra-nav-final li{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .ra-header-final .ra-nav a,
  .ra-header-final .ra-nav li a,
  .ra-header-final .ra-nav-final a,
  .ra-header-final .ra-nav-final li a,
  body .ra-header-final .ra-nav a,
  body .ra-header-final .ra-nav li a{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    justify-content:center!important;
    text-align:center!important;
  }
}

@media (max-width: 430px){
  .ra-header-final .ra-nav,
  .ra-header-final .ra-nav-final,
  body .ra-header-final .ra-nav,
  body .ra-header-final .ra-nav-final{
    width:calc(100vw - 32px)!important;
    max-width:350px!important;
  }
}


/* v5.7.8 hard mobile menu viewport centring + reviews widget */
.ra-reviews-widget-section{
  padding:56px 0;
  background:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.84))!important;
  border-top:1px solid rgba(216,166,62,.36);
  border-bottom:1px solid rgba(216,166,62,.36);
}
.ra-reviews-intro{
  max-width:650px;
  margin:8px auto 0;
  color:var(--muted);
  line-height:1.65;
}
.ra-reviews-widget-card{
  margin:26px auto 0;
  max-width:980px;
  background:rgba(0,0,0,.52);
  border:1px solid rgba(216,166,62,.42);
  box-shadow:0 22px 70px rgba(0,0,0,.38), inset 0 0 34px rgba(216,166,62,.05);
  border-radius:10px;
  padding:24px;
  overflow:hidden;
}

@media(max-width:980px){
  .ra-header-final .ra-nav,
  .ra-header-final .ra-nav-final,
  body .ra-header-final .ra-nav,
  body .ra-header-final .ra-nav-final{
    position:fixed!important;
    top:112px!important;
    left:50vw!important;
    right:auto!important;
    width:min(360px, calc(100vw - 32px))!important;
    max-width:calc(100vw - 32px)!important;
    margin:0!important;
    transform:translateX(-50%)!important;
    box-sizing:border-box!important;
    z-index:9999999!important;
  }
  .admin-bar .ra-header-final .ra-nav,
  .admin-bar .ra-header-final .ra-nav-final,
  body.admin-bar .ra-header-final .ra-nav,
  body.admin-bar .ra-header-final .ra-nav-final{
    top:158px!important;
  }
  .ra-header-final.is-open .ra-nav,
  .ra-header-final.is-open .ra-nav-final,
  body .ra-header-final.is-open .ra-nav,
  body .ra-header-final.is-open .ra-nav-final{
    left:50vw!important;
    transform:translateX(-50%)!important;
  }
}
@media(max-width:430px){
  .ra-header-final .ra-nav,
  .ra-header-final .ra-nav-final,
  body .ra-header-final .ra-nav,
  body .ra-header-final .ra-nav-final{
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
  }
  .ra-reviews-widget-section{padding:42px 0;}
  .ra-reviews-widget-card{padding:14px;border-radius:8px;}
}


/* v5.7.9 mobile/tablet header phone removal */
@media (max-width: 980px){
  .ra-header-final .ra-header-contact-final,
  body .ra-header-final .ra-header-contact-final,
  .ra-header-contact-final{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }
  .ra-header-final-inner,
  body .ra-header-final .ra-header-final-inner{
    grid-template-columns:auto auto!important;
    justify-content:space-between!important;
    align-items:center!important;
  }
}
@media (min-width: 981px){
  .ra-header-final .ra-header-contact-final,
  body .ra-header-final .ra-header-contact-final{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
  }
}

/* v5.8.0 force-hide header number on mobile/tablet; desktop/laptop only */
@media (max-width:1180px){
  header.ra-header-final .ra-desktop-phone-only,
  header.ra-header-final .ra-header-contact-final,
  .ra-header-final .ra-header-contact-final{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    max-width:0!important;
    max-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    overflow:hidden!important;
    position:absolute!important;
    left:-9999px!important;
    pointer-events:none!important;
  }
  .ra-header-final .ra-header-final-inner{
    grid-template-columns:auto auto!important;
    justify-content:space-between!important;
  }
}
@media (min-width:1181px){
  header.ra-header-final .ra-desktop-phone-only,
  header.ra-header-final .ra-header-contact-final{
    display:inline-flex!important;
    position:relative!important;
    left:auto!important;
    visibility:visible!important;
    opacity:1!important;
  }
}

/* v5.8.1 - Prestige Awards footer badge */
.ra-footer-award{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  margin-top:18px;
  text-decoration:none!important;
  width:100%;
  max-width:235px;
  filter:drop-shadow(0 0 16px rgba(216,166,62,.20));
  transition:transform .22s ease, filter .22s ease;
}
.ra-footer-award img{
  display:block;
  width:100%;
  height:auto;
  max-height:150px;
  object-fit:contain;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ra-footer-award:hover{
  transform:translateY(-2px);
  filter:drop-shadow(0 0 24px rgba(255,224,138,.34));
}
@media(max-width:980px){
  .ra-footer-award{margin-left:auto;margin-right:auto;justify-content:center;max-width:215px;}
}
@media(max-width:620px){
  .ra-footer-award{max-width:190px;margin-top:16px;}
}

/* v5.8.2 - fuller premium footer layout */
.ra-footer-fuller-v582 .ra-wrap{
  max-width:min(1220px, calc(100vw - 34px));
}
.ra-footer-fuller-v582 .ra-footer-appointment-panel{
  max-width:none!important;
  width:100%;
  margin-left:auto!important;
  margin-right:auto!important;
}
.ra-footer-fuller-v582 .ra-footer-main{
  width:100%;
  max-width:none!important;
  grid-template-columns:1.28fr .78fr 1.05fr 1.12fr!important;
  align-items:stretch!important;
  padding:34px 34px!important;
  gap:0!important;
  min-height:0!important;
}
.ra-footer-fuller-v582 .ra-footer-main>div{
  min-height:100%;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  text-align:left!important;
}
.ra-footer-fuller-v582 .ra-footer-brand-block{
  display:grid!important;
  grid-template-columns:92px 1fr;
  gap:22px;
  align-items:start!important;
}
.ra-footer-fuller-v582 .ra-footer-logo-large{
  width:92px!important;
  height:92px!important;
  min-width:92px!important;
  margin:0!important;
}
.ra-footer-fuller-v582 .ra-footer-logo-large img{
  max-width:72px!important;
  max-height:72px!important;
}
.ra-footer-fuller-v582 .ra-footer-brand-copy,
.ra-footer-fuller-v582 .ra-footer-brand-copy *{
  text-align:left!important;
  margin-left:0!important;
  margin-right:0!important;
}
.ra-footer-fuller-v582 .ra-footer-brand-copy strong{
  font-size:clamp(26px, 2.2vw, 34px)!important;
  line-height:.92!important;
  margin-bottom:10px!important;
}
.ra-footer-fuller-v582 .ra-footer-brand-copy>span{
  color:#e9bd55!important;
  letter-spacing:.18em!important;
  font-size:12px!important;
  line-height:1.4!important;
}
.ra-footer-fuller-v582 .ra-footer-brand-copy p{
  max-width:340px!important;
  font-size:14px!important;
  line-height:1.62!important;
  color:rgba(247,242,233,.74)!important;
  margin-top:14px!important;
}
.ra-footer-fuller-v582 .ra-footer-award{
  max-width:175px!important;
  margin-top:18px!important;
}
.ra-footer-fuller-v582 .ra-footer-links-block,
.ra-footer-fuller-v582 .ra-footer-services-block,
.ra-footer-fuller-v582 .ra-footer-contact-block{
  border-left:1px solid rgba(216,166,62,.35);
  padding-left:34px!important;
  padding-right:28px!important;
}
.ra-footer-fuller-v582 .ra-footer-main h3{
  text-align:left!important;
  margin:0 0 20px!important;
  color:#ffe08a!important;
  letter-spacing:.22em!important;
  font-size:12px!important;
}
.ra-footer-fuller-v582 .ra-footer-links{
  align-items:flex-start!important;
  gap:13px!important;
}
.ra-footer-fuller-v582 .ra-footer-links a{
  justify-content:flex-start!important;
  text-align:left!important;
  margin:0!important;
  padding:0!important;
  width:auto!important;
  color:#fff!important;
}
.ra-footer-fuller-v582 .ra-footer-links a:after{
  left:0!important;
  transform:none!important;
}
.ra-footer-service-list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:12px;
}
.ra-footer-service-list li{
  position:relative;
  padding-left:18px;
  color:rgba(247,242,233,.78);
  font-family:Montserrat,system-ui,sans-serif;
  font-size:14px;
  line-height:1.35;
  text-align:left!important;
}
.ra-footer-service-list li:before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#e9bd55;
  box-shadow:0 0 14px rgba(216,166,62,.45);
}
.ra-footer-fuller-v582 .ra-footer-contact-block p,
.ra-footer-fuller-v582 .ra-footer-contact-block a,
.ra-footer-fuller-v582 .ra-footer-contact-block span{
  text-align:left!important;
  margin-left:0!important;
  margin-right:0!important;
}
.ra-footer-fuller-v582 .ra-footer-contact-block p{
  max-width:285px!important;
  line-height:1.62!important;
  color:rgba(247,242,233,.74)!important;
}
.ra-footer-fuller-v582 .ra-footer-phone-text{
  display:inline-flex!important;
  margin-top:10px!important;
  color:#e9bd55!important;
  font-size:22px!important;
}
.ra-footer-actions-inline{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  margin-top:22px;
  flex-wrap:wrap;
}
.ra-footer-fuller-v582 .ra-footer-cta{
  min-width:174px!important;
  height:52px!important;
  margin:0!important;
}
.ra-footer-fuller-v582 .ra-footer-facebook{
  margin:0!important;
}
.ra-footer-fuller-v582 .ra-footer-lower{
  max-width:none!important;
  width:100%;
}
@media(max-width:1100px){
  .ra-footer-fuller-v582 .ra-footer-main{
    grid-template-columns:1fr 1fr!important;
    row-gap:0!important;
  }
  .ra-footer-fuller-v582 .ra-footer-brand-block,
  .ra-footer-fuller-v582 .ra-footer-services-block{
    border-left:0!important;
  }
  .ra-footer-fuller-v582 .ra-footer-brand-block,
  .ra-footer-fuller-v582 .ra-footer-links-block,
  .ra-footer-fuller-v582 .ra-footer-services-block,
  .ra-footer-fuller-v582 .ra-footer-contact-block{
    padding:28px!important;
    border-bottom:1px solid rgba(216,166,62,.24)!important;
  }
  .ra-footer-fuller-v582 .ra-footer-services-block,
  .ra-footer-fuller-v582 .ra-footer-contact-block{
    border-bottom:0!important;
  }
}
@media(max-width:700px){
  .ra-footer-fuller-v582 .ra-wrap{max-width:calc(100vw - 26px);}
  .ra-footer-fuller-v582 .ra-footer-main{
    grid-template-columns:1fr!important;
    padding:22px 20px!important;
  }
  .ra-footer-fuller-v582 .ra-footer-main>div{
    text-align:center!important;
    align-items:center!important;
    border-left:0!important;
    border-bottom:1px solid rgba(216,166,62,.22)!important;
    padding:24px 0!important;
  }
  .ra-footer-fuller-v582 .ra-footer-contact-block{border-bottom:0!important;}
  .ra-footer-fuller-v582 .ra-footer-brand-block{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
  }
  .ra-footer-fuller-v582 .ra-footer-brand-copy,
  .ra-footer-fuller-v582 .ra-footer-brand-copy *,
  .ra-footer-fuller-v582 .ra-footer-main h3,
  .ra-footer-fuller-v582 .ra-footer-links a,
  .ra-footer-service-list li,
  .ra-footer-fuller-v582 .ra-footer-contact-block p,
  .ra-footer-fuller-v582 .ra-footer-contact-block a,
  .ra-footer-fuller-v582 .ra-footer-contact-block span{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .ra-footer-service-list li{padding-left:0!important;}
  .ra-footer-service-list li:before{display:none!important;}
  .ra-footer-fuller-v582 .ra-footer-links{align-items:center!important;}
  .ra-footer-fuller-v582 .ra-footer-links a{justify-content:center!important;}
  .ra-footer-actions-inline{justify-content:center!important;}
}
