/* Company-first homepage. Scoped so service pages retain their accepted design. */
#page-home #nav-mobile.rh-menu{background:#0b1827!important}
#page-home .rh-menu-inner{padding:24px 24px 96px;max-width:580px;margin:auto}
#page-home .rh-menu-label{color:#f3b748;font-size:16px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px}
#page-home .rh-menu-inner>a{display:flex;align-items:center;gap:16px;padding:16px 0;color:#fff;border-bottom:1px solid #334250;text-decoration:none;font-size:18px}
#page-home .rh-menu-inner>a svg{width:30px;height:30px;color:#f3b748;flex-shrink:0}
#page-home .rh-menu-inner>a small{display:block;font-size:16px;color:#c6d1db;margin-top:4px}
#page-home .rh-menu-inner>a b{margin-left:auto;color:#f3b748}
#page-home .rh-menu-secondary{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:24px}
#page-home .rh-menu-secondary a{display:flex;align-items:center;min-height:44px;color:#edf1f5;text-decoration:none;font-size:16px}
#page-home .rh-menu-inner .rh-menu-contact{color:#f3b748;font-size:18px}
#page-home .rh-home{color:#edf1f5;background:#0b1827;font-family:'Satoshi',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif}
#page-home .rh-home *{box-sizing:border-box}
#page-home #main-content.rh-home{overflow:visible}
#page-home #main-content.rh-home img{opacity:1!important;visibility:visible!important;filter:none!important;content-visibility:visible!important}
#page-home #main-content.rh-home>section{content-visibility:visible!important;opacity:1!important;transform:none!important}
#page-home #main-content.rh-home>section.rh-wrap{margin-inline:auto!important}
#page-home #main-content .rh-hero-photo{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
#page-home #main-content .rh-hero-content{position:relative;z-index:1;flex-shrink:0}
#page-home .rh-home .rh-wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
#page-home .rh-home section{scroll-margin-top:96px}
#page-home .rh-home>section{padding:96px 0!important;margin:0!important}
#page-home .rh-home .rh-hero{position:relative;min-height:680px;display:flex;align-items:center;padding:96px 0!important;isolation:isolate;overflow:hidden}
#page-home .rh-hero-photo{position:absolute;inset:0;z-index:-2}
#page-home .rh-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
#page-home .rh-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,15,26,.89),rgba(5,15,26,.54) 55%,rgba(5,15,26,.05)),linear-gradient(0deg,#0b1827,transparent 30%)}
#page-home .rh-home h1,#page-home .rh-home h2,#page-home .rh-home h3{color:#fff;letter-spacing:-.035em;text-wrap:balance;margin:0;font-family:"Source Serif Pro",Georgia,serif!important;font-weight:500;line-height:1.1}
#page-home .rh-home h1{font-size:clamp(48px,5.5vw,76px)!important;max-width:850px}
#page-home .rh-home h2{font-size:clamp(36px,3.6vw,48px)!important}
#page-home .rh-home h3{font-size:28px!important}
#page-home .rh-home p{font-size:18px!important;line-height:1.65;color:#c6d1db;margin:16px 0 0;max-width:56ch}
#page-home .rh-home .rh-eyebrow{font-size:16px!important;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#f3b748;margin:0 0 16px}
#page-home .rh-home .rh-intro{max-width:48ch;font-size:18px!important;color:#ecf0f3;margin-top:24px}
#page-home .rh-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}
#page-home .rh-home a{color:inherit;text-decoration:none}
#page-home .rh-home .rh-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:16px 24px;border-radius:6px;background:#f3b748;color:#112030;font-size:16px;font-weight:750;min-height:52px}
#page-home .rh-home .rh-phone{font-size:16px;font-weight:650;min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid #8894a0}
#page-home .rh-hero-owner{display:flex;align-items:center;gap:12px;margin-top:32px;width:fit-content;font-size:16px}
#page-home .rh-hero-owner img{width:48px;height:48px;object-fit:cover;border-radius:50%;border:1px solid #e8b754}
#page-home .rh-hero-owner span span{display:block;font-size:16px;color:#c6d1db;margin-top:4px}
#page-home .rh-section-head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:32px}
#page-home .rh-section-head>p{max-width:28ch}
#page-home .rh-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
#page-home .rh-lane{display:flex;flex-direction:column;background:#122437;border:1px solid #334250;border-radius:10px;overflow:hidden;transition:border-color .2s,transform .2s}
#page-home .rh-lane:hover{border-color:#f3b748;transform:translateY(-3px)}
#page-home .rh-lane-photo{height:172px;overflow:hidden}
#page-home .rh-lane-photo img{width:100%;height:100%;object-fit:cover}
#page-home .rh-lane-body{padding:24px 24px;display:flex;flex-direction:column;flex:1;align-items:start}
#page-home .rh-icon{width:32px;height:32px;flex-shrink:0;color:#f3b748;display:block;margin-bottom:16px}
#page-home .rh-lane h3{font-size:28px!important;min-height:57px}
#page-home .rh-lane p{font-size:16px!important;margin:16px 0 24px;line-height:1.6}
#page-home .rh-home .rh-link{color:#f4bd5a;font-size:16px;font-weight:650;margin-top:auto;display:inline-block;padding-block:8px}
#page-home .rh-small{margin-top:32px;border-block:1px solid #334250}
#page-home .rh-small summary{display:flex;align-items:center;gap:16px;cursor:pointer;min-height:80px;font-size:18px;list-style:none;padding:16px 0}
#page-home .rh-small summary::-webkit-details-marker{display:none}
#page-home .rh-small summary .rh-icon{margin:0}
#page-home .rh-expand{margin-left:auto;font-size:28px;color:#f3b748}
#page-home .rh-small[open] .rh-expand{transform:rotate(45deg)}
#page-home .rh-small-body{padding:0 0 24px}
#page-home .rh-job-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}
#page-home .rh-job-links a{padding:16px;background:#14283c;border-radius:6px;display:flex;align-items:center;gap:12px;font-size:16px}
#page-home .rh-job-links .rh-icon{margin:0;width:24px;height:24px}
#page-home .rh-extra{display:flex;flex-wrap:wrap;gap:8px 24px;padding-top:24px}
#page-home .rh-extra a{font-size:16px;color:#c6d1db;min-height:44px;display:inline-flex;align-items:center}
#page-home .rh-home .rh-about{background:#14283b}
#page-home .rh-about-grid{display:grid;grid-template-columns:350px 1fr;gap:96px;align-items:center}
#page-home .rh-owner-image{position:relative}
#page-home .rh-owner-image img{width:100%;height:380px;object-fit:cover;border-radius:8px}
#page-home .rh-owner-image>span{position:absolute;bottom:0;left:0;right:0;padding:48px 24px 24px;background:linear-gradient(transparent,#071727);font-size:16px;line-height:1.5;border-radius:0 0 8px 8px}
#page-home .rh-proof-links{display:grid;gap:12px;margin-top:32px}
#page-home .rh-proof-links a{display:flex;align-items:center;gap:16px;min-height:62px;font-size:16px}
#page-home .rh-proof-links .rh-icon{margin:0}
#page-home .rh-proof-links small{display:block;color:#f4bd5a;margin-top:4px;font-size:16px}
#page-home .rh-work-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:32px}
#page-home .rh-home figure{margin:0}
#page-home .rh-compare-images{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:8px;background:#203143}
#page-home .rh-compare-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#page-home .rh-compare-images .rh-before{clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}
#page-home .rh-before-label,#page-home .rh-after-label{position:absolute;top:16px;padding:8px 12px;background:#0b1827;color:#fff;font-size:16px;border-radius:4px}
#page-home .rh-before-label{left:16px}
#page-home .rh-after-label{right:16px}
#page-home .rh-compare-control{padding:16px 0}
#page-home .rh-compare-control label{display:block;font-size:16px;color:#c6d1db;margin-bottom:8px}
#page-home .rh-compare-control input{display:block;width:100%;height:44px;accent-color:#f3b748;cursor:ew-resize}
#page-home .rh-home figcaption h3{font-size:28px!important}
#page-home .rh-home figcaption p{font-size:16px!important;margin-top:12px}
#page-home .rh-gallery-side{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#page-home .rh-gallery-side img{width:100%;height:290px;object-fit:cover;border-radius:8px}
#page-home .rh-gallery-side figcaption{padding-top:24px}
#page-home .rh-gallery-side a{color:#f4bd5a;font-size:16px;line-height:1.5;display:inline-block;padding-block:16px}
#page-home .rh-home .rh-next{background:#152b37;border-top:1px solid #36504d}
#page-home .rh-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:0;margin:32px 0;list-style:none}
#page-home .rh-steps li{display:flex;gap:16px;border-top:1px solid #49615f;padding-top:24px}
#page-home .rh-steps h3{font-size:22px!important}
#page-home .rh-steps p{font-size:16px!important;margin-top:12px}
#page-home .rh-home .rh-note{font-size:16px!important;color:#bcc9d2;max-width:75ch}
#page-home .rh-note a{text-decoration:underline;text-underline-offset:3px}
#page-home .rh-home a:focus-visible,#page-home .rh-home summary:focus-visible,#page-home .rh-home input:focus-visible{outline:3px solid #f3b748;outline-offset:5px}
#page-home .rh-home a:hover .rh-link,#page-home .rh-extra a:hover{text-decoration:underline}
@media(max-width:1000px){#page-home .rh-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}#page-home .rh-lane h3{min-height:0}#page-home .rh-about-grid{grid-template-columns:280px 1fr;gap:32px}#page-home .rh-work-layout{grid-template-columns:1fr}#page-home .rh-gallery-side img{height:260px}}
@media(max-width:600px){
 #page-home .rh-home .rh-wrap{width:calc(100% - 40px)}
 #page-home .rh-home>section{padding:48px 0!important}
 #page-home .rh-home .rh-hero{min-height:640px;padding:48px 0 48px!important;align-items:flex-end}
 #page-home .rh-hero:after{background:linear-gradient(0deg,#0b1827 2%,rgba(5,15,26,.77) 60%,rgba(5,15,26,.12))}
 #page-home .rh-hero-photo img{object-position:center top}
 #page-home .rh-home h1{font-size:clamp(36px,10.2vw,46px)!important}
 #page-home .rh-home .rh-intro{font-size:18px!important;line-height:1.55;max-width:32ch}
 #page-home .rh-home .rh-eyebrow{font-size:16px!important;letter-spacing:.09em}
 #page-home .rh-actions{gap:12px 24px;margin-top:24px}
 #page-home .rh-hero-owner{margin-top:24px}
 #page-home .rh-section-head{display:block;margin-bottom:24px}
 #page-home .rh-section-head>p{margin-top:16px;max-width:none}
 #page-home .rh-lanes{gap:12px}
 #page-home .rh-lane-photo{height:126px}
 #page-home .rh-lane-body{padding:16px 16px}
 #page-home .rh-lane h3{font-size:22px!important;min-height:50px}
 #page-home .rh-lane p{font-size:16px!important;line-height:1.55;margin:12px 0 16px}
 #page-home .rh-lane .rh-link{font-size:16px}
 #page-home .rh-small summary{font-size:18px}
 #page-home .rh-job-links{grid-template-columns:1fr 1fr;gap:8px}
 #page-home .rh-job-links a{font-size:16px;flex-direction:column;align-items:start;padding:16px}
 #page-home .rh-extra{gap:4px 16px}
 #page-home .rh-about-grid{grid-template-columns:1fr;gap:32px}
 #page-home .rh-owner-image{max-width:350px}
 #page-home .rh-owner-image img{height:300px}
 #page-home .rh-gallery-side{gap:16px}
 #page-home .rh-gallery-side img{height:190px}
 #page-home .rh-home .rh-gallery-side h3{font-size:22px!important}
 #page-home .rh-steps{grid-template-columns:1fr;gap:24px;margin:32px 0}
 #page-home .rh-steps li{padding-top:24px}
}
@media(prefers-reduced-motion:reduce){#page-home .rh-home *{scroll-behavior:auto!important;transition:none!important}}
/* Final type pass: six roles at each breakpoint, no tiny card paragraphs. */
#page-home #main-content.rh-home p,#page-home #main-content.rh-home a{font-size:16px!important}
#page-home #main-content.rh-home h3{font-size:22px!important}
#page-home #main-content.rh-home .rh-eyebrow{font-size:16px!important}
#page-home #main-content.rh-home .rh-note,#page-home #main-content.rh-home .rh-extra a{font-size:16px!important}
#page-home .rh-menu-secondary a{font-size:16px}
/* svc653: stronger photographic contrast and a phone-sized service selector. */
#page-home .rh-home{background:#081321}
#page-home .rh-hero:after{background:linear-gradient(90deg,rgba(3,10,19,.94),rgba(3,10,19,.63) 50%,rgba(3,10,19,.08)),linear-gradient(0deg,#081321,transparent 35%)}
#page-home #main-content .rh-hero-photo img{object-fit:cover!important;width:100%!important;height:100%!important;max-width:none!important}
#page-home .rh-lane{background:#102238;border-color:#34475d;box-shadow:0 12px 28px #030a142b;border-radius:14px}
#page-home #main-content .rh-lane-photo img{object-fit:cover!important;width:100%!important;height:100%!important;max-width:none!important;display:block!important}
#page-home .rh-lane-photo{position:relative;width:100%!important;align-self:stretch!important}
#page-home .rh-lane-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#102238)}
#page-home .rh-lane .rh-icon{padding:8px;width:44px;height:44px;border:1px solid #8c6c38;border-radius:10px;background:#0b192a}
#page-home .rh-lane-body{padding-top:16px}
#page-home .rh-home .rh-about{background:#0c1c2f;border-block:1px solid #293c51}
#page-home .rh-home .rh-next{background:#0c1c2f;border-color:#293c51}
#page-home .rh-menu-inner>a{border-bottom-color:#2c4057}
#page-home .rh-menu-inner>a svg{padding:8px;box-sizing:content-box;border:1px solid #705a37;border-radius:10px;background:#102238}
#page-home .rh-menu-inner>a:hover{color:#f3b748}
#page-home .rh-carousel-controls{display:none}
#page-home .rh-home button:focus-visible{outline:3px solid #f3b748;outline-offset:4px}
@media(max-width:600px){
 #page-home .rh-hero:after{background:linear-gradient(0deg,#081321 1%,rgba(3,10,19,.91) 35%,rgba(3,10,19,.58) 70%,rgba(3,10,19,.12))}
 #page-home .rh-lanes.is-carousel{display:flex;gap:12px;width:calc(100% + 40px);max-width:none!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;margin-inline:-20px;padding:8px calc((100% + 40px - min(78vw,340px))/2) 24px;scroll-padding-inline:0;-webkit-overflow-scrolling:touch}
 #page-home .rh-lanes.is-carousel::-webkit-scrollbar{display:none}
 #page-home .is-carousel .rh-lane{flex:0 0 min(78vw,340px);max-width:none!important;scroll-snap-align:center;scroll-snap-stop:always;transform:none;min-width:0}
 #page-home .is-carousel .rh-lane.is-current{border-color:#ce9b47;box-shadow:0 12px 24px #0005}
 #page-home .is-carousel .rh-lane-photo{height:174px;flex-shrink:0}
 #page-home .is-carousel .rh-lane-body{padding:16px 24px 24px}
 #page-home .is-carousel .rh-lane h3{min-height:0}
 #page-home .is-carousel .rh-lane p{margin:12px 0 24px}
 #page-home .rh-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 24px}
 #page-home .rh-carousel-controls button{border:1px solid #506176;background:#102238;color:#fff;border-radius:50%;min-width:44px;height:44px;cursor:pointer;font-size:22px}
 #page-home .rh-carousel-controls .rh-dot{min-width:30px;width:30px;height:44px;background:transparent;border:0;padding:0}
 #page-home .rh-dot:before{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#8290a2;margin:auto}
 #page-home .rh-dot[aria-current=true]:before{background:#f3b748;width:20px;border-radius:4px}
 #page-home .rh-carousel-dots{display:flex;align-items:center}
 #page-home .rh-carousel-status{color:#c6d1db;font-size:16px;white-space:nowrap}
}
