.service-page .header { position: relative; }
.service-hero { position: relative; min-height: 510px; display: flex; align-items: center; color: #fff; background: var(--navy2) center/cover no-repeat; }
.service-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,24,43,.97) 0%, rgba(18,38,65,.88) 42%, rgba(18,38,65,.36) 73%, rgba(18,38,65,.12)); }
.service-hero .container { position: relative; padding: 85px 0; }
.breadcrumb { margin-bottom: 26px; color: #c7d1dd; font-size: 12px; font-weight: 700; }
.breadcrumb a { color: var(--orange); }
.service-hero h1 { max-width: 820px; margin: 0 0 25px; font-size: clamp(42px,6vw,72px); line-height: 1.03; letter-spacing: -.045em; }
.service-hero p { max-width: 700px; margin-bottom: 32px; color: #dbe2ec; font-size: 18px; }
.service-intro { display: grid; grid-template-columns: 1.2fr .8fr; gap: 75px; align-items: start; }
.service-intro h2,.service-steps h2,.service-faq h2 { margin: 12px 0 22px; font-size: clamp(32px,4vw,48px); line-height: 1.1; letter-spacing: -.035em; }
.service-intro p { color: var(--muted); }
.service-panel { padding: 32px; background: var(--navy); color: #fff; border-radius: 7px; box-shadow: var(--shadow); }
.service-panel h3 { margin-bottom: 20px; font-size: 21px; }
.service-panel ul { margin: 0; padding: 0; list-style: none; }
.service-panel li { padding: 12px 0; border-top: 1px solid rgba(255,255,255,.16); color: #d5deea; font-size: 14px; }
.service-panel li::before { content: "✓"; margin-right: 10px; color: var(--orange); font-weight: 900; }
.service-photo { margin: 0; height: 430px; overflow: hidden; background: var(--navy2); }
.service-photo img { width: 100%; height: 100%; object-fit: cover; }
.project-gallery { padding: 66px 0; background: #f8fafc; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.project-gallery h2 { margin: 12px 0 12px; font-size: clamp(32px,4vw,48px); line-height: 1.1; letter-spacing: -.035em; }
.project-gallery .gallery-lead { max-width: 720px; margin: 0 0 32px; color: var(--muted); }
.project-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; max-width: 980px; margin: 0 auto; }
.project-grid.three { grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 1080px; }
.project-grid.single { grid-template-columns: minmax(0,680px); justify-content: center; }
.project-card { position: relative; height: 290px; overflow: hidden; margin: 0; border: 1px solid #dfe5ec; border-radius: 10px; background: var(--navy2); box-shadow: 0 12px 35px rgba(18,38,65,.13); }
.project-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.project-card:hover img { transform: scale(1.025); }
.project-card figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 52px 22px 20px; color: #fff; background: linear-gradient(transparent,rgba(9,20,36,.92)); font-size: 14px; font-weight: 700; }
.project-card.before::after,.project-card.after::after { position: absolute; top: 16px; left: 16px; padding: 7px 11px; border-radius: 3px; color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.project-card.before::after { content: "Antes"; background: #8f2e2e; }
.project-card.after::after { content: "Depois"; background: #28764d; }
.story-showcase { padding: 78px 0 92px; overflow: hidden; background: #f7f9fc; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.story-heading { display: grid; grid-template-columns: 1fr .8fr; gap: 60px; align-items: end; margin-bottom: 38px; }
.story-heading h2 { margin: 12px 0 0; font-size: clamp(32px,4vw,48px); line-height: 1.08; letter-spacing: -.035em; }
.story-heading p { margin: 0; color: var(--muted); }
.story-layout { display: grid; grid-template-columns: repeat(12,1fr); grid-template-rows: 210px 120px 225px; gap: 18px; max-width: 1050px; margin: auto; }
.story-image { position: relative; overflow: hidden; margin: 0; border: 1px solid #dce3eb; border-radius: 11px; background: var(--navy2); box-shadow: 0 16px 45px rgba(18,38,65,.12); }
.story-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.story-image:hover img { transform: scale(1.025); }
.story-image figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 45px 18px 16px; color: #fff; background: linear-gradient(transparent,rgba(8,19,34,.88)); font-size: 13px; font-weight: 700; }
.story-large { grid-column: 1 / span 7; grid-row: 1 / span 2; }
.story-note { grid-column: 8 / span 5; grid-row: 1; align-self: stretch; padding: 26px 28px; border-left: 4px solid var(--orange); border-radius: 8px; background: #fff; box-shadow: 0 14px 38px rgba(18,38,65,.08); }
.story-note b { display: block; margin-bottom: 8px; color: var(--navy); font-size: 17px; }
.story-note p { margin: 0; color: var(--muted); font-size: 14px; }
.story-side { grid-column: 8 / span 5; grid-row: 2 / span 2; }
.story-low { grid-column: 2 / span 5; grid-row: 3; transform: translateY(18px); }
.story-layout.two .story-side { grid-row: 2 / span 2; }
.service-steps { background: var(--cream); }
.steps-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; margin-top: 42px; }
.step-card { padding: 28px 24px; background: #fff; border: 1px solid var(--line); border-radius: 6px; }
.step-card b { display: block; margin-bottom: 20px; color: var(--orange); font-size: 13px; }
.step-card h3 { font-size: 17px; }
.step-card p { margin: 0; color: var(--muted); font-size: 13px; }
.service-faq .faq-list { margin: 35px 0 0; }
.related { background: var(--navy2); color: #fff; }
.related h2 { margin: 10px 0 30px; font-size: 36px; }
.related-links { display: flex; flex-wrap: wrap; gap: 10px; }
.related-links a { padding: 11px 15px; border: 1px solid rgba(255,255,255,.25); border-radius: 4px; color: #dce5ef; font-size: 13px; font-weight: 700; }
.related-links a:hover { border-color: var(--orange); color: var(--orange); }
@media(max-width:900px){.service-intro{grid-template-columns:1fr}.steps-grid{grid-template-columns:repeat(2,1fr)}.project-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.story-heading{grid-template-columns:1fr;gap:14px}.story-layout{grid-template-rows:280px auto 260px 240px}.story-large{grid-column:1/span 8;grid-row:1}.story-note{grid-column:8/span 5;grid-row:2;margin-top:-55px;z-index:2}.story-side{grid-column:6/span 7;grid-row:3}.story-low{grid-column:1/span 6;grid-row:4;transform:translateY(-35px)}}
@media(max-width:600px){.service-hero{min-height:480px}.service-hero h1{font-size:42px}.service-hero p{font-size:16px}.service-intro{gap:40px}.service-photo{height:280px}.steps-grid,.project-grid,.project-grid.three,.project-grid.single{grid-template-columns:1fr}.project-gallery{padding:55px 0}.project-card{height:260px}.story-showcase{padding:60px 0}.story-layout{display:flex;flex-direction:column}.story-image{height:250px}.story-large{height:300px}.story-note{order:2;margin:-32px 14px 0;z-index:2}.story-side{order:3}.story-low{order:4;transform:none;width:82%;align-self:flex-end}}

/* Product models sourced from the manufacturers and separated from RG's real-service portfolio. */
.model-showcase{padding:92px 0;background:#f6f4f0}
.model-heading{display:flex;justify-content:space-between;gap:48px;align-items:end;margin-bottom:38px}
.model-heading h2{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.04em;margin:10px 0 0;max-width:680px}
.model-heading>p{max-width:430px;margin:0;color:#657184}
.model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.model-grid.single{grid-template-columns:minmax(0,820px);justify-content:center}
.model-card{display:grid;grid-template-columns:minmax(190px,.8fr) 1.2fr;background:#fff;border:1px solid #dfe4ea;border-radius:12px;overflow:hidden;box-shadow:0 18px 45px rgba(20,38,62,.08)}
.model-card-media{min-height:300px;padding:25px;background:linear-gradient(145deg,#fff,#eef1f4);display:grid;place-items:center}
.model-card-media img{width:100%;height:255px;object-fit:contain}
.model-card-copy{padding:32px 30px;display:flex;flex-direction:column;justify-content:center}
.model-brand{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#ff852e;font-weight:800}
.model-card h3{font-size:23px;line-height:1.2;margin:9px 0 12px}
.model-card p{font-size:14px;color:#657184;margin-bottom:18px}
.model-card a{font-size:13px;font-weight:800;color:#263e60;align-self:flex-start;border-bottom:2px solid #ff852e;padding-bottom:3px}
.model-disclaimer{font-size:11px;color:#657184;margin:18px 0 0}
@media(max-width:900px){.model-heading{align-items:start;flex-direction:column;gap:14px}.model-grid{grid-template-columns:1fr}}
@media(max-width:600px){.model-showcase{padding:70px 0}.model-card{grid-template-columns:1fr}.model-card-media{min-height:230px}.model-card-media img{height:210px}.model-card-copy{padding:25px}}
