/* Reference service layout with Covenant branding and source-length content. */
.service-page{--red:#2b4e9a;--navy:#17294d;--ink:#172033;background:#f5f6f8}
.service-page .service-section{padding-top:60px;padding-bottom:60px}
.service-page .service-option-grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}
.service-page .service-option-grid:has(> :nth-child(2):last-child),.service-page .service-option-grid:has(> :nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:780px){.service-page .service-option-grid:has(> :nth-child(2):last-child),.service-page .service-option-grid:has(> :nth-child(4):last-child){grid-template-columns:minmax(0,1fr)}}
.service-page .service-final-cta{min-height:0;padding-top:60px;padding-bottom:60px}
.service-page .service-heading{margin-bottom:32px}
.service-page .service-showcase-cta .btn,.service-page .btn-red,.service-page .btn-dark{color:#fff}
.service-page .service-related .destination-card{align-items:flex-start;gap:18px}
.service-page .service-related .destination-card strong{display:block;font-size:18px;line-height:1.35}
.service-page .service-related .destination-card p{margin:10px 0 0;color:#5e6575;font-size:15px;line-height:1.65;font-weight:400}
.service-page .service-related .destination-card:hover p,.service-page .service-related .destination-card:focus-visible p{color:#fff}
@media(max-width:780px){.service-page .service-section,.service-page .service-final-cta{padding-top:40px;padding-bottom:40px}.service-page .service-heading{margin-bottom:24px}}
.service-page .service-hero{border-radius:20px;overflow:hidden}.service-page .service-form{background:#efeff0;color:#172033;height:auto;min-height:0;align-self:start}
.service-form iframe{display:block;width:100%;min-height:0}.service-form>span,.service-eyebrow,.service-text-link{color:#2b4e9a}
.service-hero-review-link{display:inline-block;margin-top:24px;text-decoration:underline;text-underline-offset:5px;color:#fff;font-size:14px}
.service-hero-copy>p a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.service-breadcrumb-bar .breadcrumb{margin-block:0;margin-inline:auto;padding-block:17px;opacity:1;align-items:center;font-size:13px;color:#475367}
.service-option-copy h2{font:800 25px/1.2 Raleway,sans-serif;margin:0 0 20px;color:#172033}.service-option-copy h3{font:750 21px/1.35 Raleway,sans-serif}
.service-option-copy p,.service-option-copy li,.service-source-detail p,.service-source-detail li{font-size:16px;line-height:1.85;color:#475367}
.service-option-copy a,.service-source-detail a{color:#2b4e9a;text-decoration:underline;text-underline-offset:3px}
.service-advantages{background:#17294d}.service-advantages .service-eyebrow,.service-final-cta .service-eyebrow{color:#b5ccf5}
.service-page .service-advantages .service-heading h2,.service-page .service-advantages .service-source-benefit h2,.service-page .service-advantages .service-source-benefit h3{color:#fff}
.service-page .service-advantages .service-source-benefit{text-align:center}
.service-page .service-advantages .service-source-benefit>ol{list-style-position:inside;padding-inline-start:0}
.service-source-detail{padding-top:48px;max-width:960px;margin:auto}.service-source-detail h2{font:800 32px/1.2 Raleway,sans-serif}.service-source-detail h3{font:750 24px/1.3 Raleway,sans-serif}
.service-source-detail table,.service-option-copy table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.service-source-detail td,.service-option-copy td{border:1px solid #dce2ec;padding:14px;min-width:130px}
.service-overview-media img,.service-option-media img,.service-project-card img{object-fit:cover;background:#e9edf3}
.service-page .service-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:320px}.service-page .service-project-card:nth-child(n){grid-column:auto;grid-row:auto}.service-project-card{margin:0}
.service-page .service-project-grid:has(> :only-child){grid-template-columns:1fr;max-width:800px;margin:auto}
.service-related .destination-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:780px){.service-form{min-height:0}.service-page .service-project-grid,.service-related .destination-card-grid{grid-template-columns:1fr}.service-hero h1{overflow-wrap:break-word}.service-option-copy h2{font-size:25px}}
.service-source-benefit{max-width:900px;margin:0 auto 40px;color:#fff}.service-source-benefit h2{font:800 30px/1.2 Raleway,sans-serif}.service-source-benefit p{color:#d8e1f1;line-height:1.85}
.service-consultation-copy{max-width:1000px}.service-consultation-copy h2{font:800 36px/1.2 Raleway,sans-serif}.service-consultation-copy p{line-height:1.85;color:#475367}.service-consultation-copy a:not(.btn){color:#2b4e9a;text-decoration:underline}
.service-page #quote,.service-page #page-details,.service-page #process,.service-page #gallery,.service-page #customer-reviews{scroll-margin-top:145px}
.service-reviews h2{font:800 clamp(32px,3.5vw,48px)/1.15 Raleway,sans-serif}.service-reviews .home-label{display:block;margin-bottom:14px}
@media(max-width:1320px){.service-page #quote,.service-page #page-details,.service-page #process,.service-page #gallery,.service-page #customer-reviews{scroll-margin-top:100px}}

/* Long custom-option descriptions use wide rows; shorter sections stay cards. */
.service-page .service-options.service-options-editorial .service-option-grid{grid-template-columns:minmax(0,1fr);gap:32px}
.service-options-editorial .service-option-card{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start;gap:40px;padding:36px;box-shadow:none;overflow:visible}
.service-options-editorial .service-option-card:hover{transform:none;box-shadow:none}
.service-options-editorial .service-option-media{height:auto;aspect-ratio:4/3;border-radius:14px}
.service-options-editorial .service-option-media img{display:block;width:100%;height:100%;object-fit:cover}
.service-options-editorial .service-option-copy{padding:0;min-width:0}
.service-options-editorial .service-option-copy h2{font-size:30px;line-height:1.2;margin:0 0 20px}
.service-options-editorial .service-option-copy p{line-height:1.75;margin:0 0 16px}
.service-options-editorial .service-option-copy p:last-child{margin-bottom:0}
.service-options-editorial .service-option-copy p a,.service-options-editorial .service-option-copy li a{display:inline;margin:0}
@media(min-width:901px){
 .service-options-editorial .service-option-media{position:sticky;top:150px;align-self:start;max-height:calc(100dvh - 180px)}
 .service-options-editorial .service-option-card:nth-child(even){grid-template-columns:minmax(0,3fr) minmax(0,2fr)}
 .service-options-editorial .service-option-card:nth-child(even) .service-option-media{order:2}
}
@media(max-width:900px){
 .service-options-editorial .service-option-card{grid-template-columns:minmax(0,1fr);gap:24px;padding:24px}
 .service-options-editorial .service-option-media{aspect-ratio:16/9;max-height:360px}
}
@media(max-width:560px){
 .service-options-editorial .service-option-card{padding:18px;gap:22px}
 .service-options-editorial .service-option-copy h2{font-size:25px}
 .service-options-editorial .service-option-media{aspect-ratio:4/3}
}

@media(min-width:901px) and (max-width:1320px){.service-options-editorial .service-option-media{top:110px;max-height:calc(100dvh - 140px)}}

.service-page :is(.service-option-copy,.service-source-benefit) a.service-option-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;max-width:100%;box-sizing:border-box;padding:12px 22px;margin:8px 0 0;border:1px solid #2b4e9a;border-radius:9px;background:#2b4e9a;color:#fff;font-weight:800;line-height:1.4;text-align:center;text-decoration:none;transition:background .2s,border-color .2s}
.service-page :is(.service-option-copy,.service-source-benefit) a.service-option-cta::after{content:'\2192'}
.service-page :is(.service-option-copy,.service-source-benefit) a.service-option-cta:hover{background:#17294d;border-color:#17294d;color:#fff}
.service-page :is(.service-option-copy,.service-source-benefit) a.service-option-cta:focus-visible{outline:3px solid #7cafff;outline-offset:4px}
.service-page .service-source-benefit a.service-option-cta{border-color:#92afe8}
.service-page .service-source-benefit a.service-option-cta:hover{background:#365fb6;border-color:#b5ccf5}
.service-options-document .service-option-copy p a{display:inline;margin:0}
:is(.service-option-copy,.service-source-detail) .service-option-links{display:flex;flex-wrap:wrap;gap:8px 20px}
:is(.service-option-copy,.service-source-detail) .service-option-links>a{white-space:nowrap}
.service-overview-copy .service-overview-phone{color:#2b4e9a;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.service-overview-copy .service-overview-phone:focus-visible{outline:3px solid #7cafff;outline-offset:4px}
.service-source-benefit .service-option-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px}
.service-source-benefit .service-option-links>a{white-space:nowrap}
.service-source-benefit a:not(.btn){color:#c8dbff;text-decoration:underline;text-underline-offset:3px}
/* Five approved options keep balanced rows, with the final option spanning both columns. */
@media(min-width:781px){
 .service-page .service-options-document .service-option-grid:has(> :nth-child(5):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-options-document .service-option-grid:has(> :nth-child(5):last-child)>.service-option-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:center}
 .service-options-document .service-option-grid:has(> :nth-child(5):last-child)>.service-option-card:last-child .service-option-media{height:100%;min-height:230px}
}
.service-options-document~.service-advantages .service-source-benefit ul{text-align:left;line-height:1.8;color:#d8e1f1;padding-left:24px}
.service-options-document~.service-advantages .service-source-benefit li+li{margin-top:12px}
/* Approved document sections can pair their copy with a selected project photo. */
.service-page .service-document-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:48px;max-width:none}
.service-page .service-document-feature-copy{min-width:0;text-align:left}
.service-page .service-document-feature-copy h2{margin:0 0 24px}
.service-page .service-document-feature-copy ul{padding-left:22px;margin:0;line-height:1.8}
.service-page .service-document-feature-copy li+li{margin-top:14px}
.service-page .service-document-feature-media{aspect-ratio:4/3;overflow:hidden;border-radius:16px}
.service-page .service-document-feature-media img{display:block;width:100%;height:100%;object-fit:cover}
.service-page .service-source-benefit.service-document-feature{margin-bottom:0}
.service-page :is(.service-process-note,.service-options-note){max-width:760px;margin:28px auto 0;text-align:center;color:#475367;line-height:1.8}
@media(max-width:900px){.service-page .service-document-feature{grid-template-columns:minmax(0,1fr);gap:28px}.service-page .service-document-feature-media{max-height:420px}}
