:root { --service-accent: #1fd18a; }
* { box-sizing: border-box; }
body.service-page { background: #f7f7f2; color: #0b1220; }
.service-page .site-header { position: relative; }
.service-shell { overflow: hidden; }
.service-hero { min-height: 650px; padding: clamp(54px, 8vw, 105px) clamp(20px, 6vw, 94px); display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(340px, .7fr); gap: clamp(45px, 8vw, 110px); align-items: center; position: relative; }
.service-hero::after { content: attr(data-watermark); position: absolute; right: -2vw; bottom: -5vw; color: rgba(11,18,32,.035); font: 900 clamp(130px, 22vw, 330px)/.8 Inter, system-ui, sans-serif; letter-spacing: -.09em; pointer-events: none; }
.service-eyebrow { color: #087447; font-size: 12px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.service-hero h1 { max-width: 880px; font-size: clamp(45px, 6vw, 82px); line-height: .99; letter-spacing: -.06em; margin: 18px 0 24px; }
.service-hero h1 em { color: #087447; font-style: normal; }
.service-lead { max-width: 680px; color: #495568; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.65; }
.service-starting-price { display: inline-flex; margin: 3px 0 0; padding: 9px 13px; border: 1px solid rgba(8,116,71,.2); border-radius: 999px; background: #e5faf1; color: #087447; font-size: 13px; font-weight: 900; }
.service-hero .button { margin-top: 15px; }
.service-proof { background: #0b1220; color: white; border-radius: 24px; padding: clamp(27px, 4vw, 44px); box-shadow: 0 25px 70px rgba(11,18,32,.22); transform: rotate(1deg); position: relative; z-index: 1; }
.service-proof > span { color: #88e7bd; font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.service-proof h2 { font-size: clamp(25px, 3vw, 36px); line-height: 1.15; margin: 15px 0 23px; }
.proof-list { display: grid; gap: 0; }
.proof-item { display: grid; grid-template-columns: 34px 1fr; gap: 12px; padding: 17px 0; border-top: 1px solid rgba(255,255,255,.1); }
.proof-item b { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 8px; background: rgba(31,209,138,.13); color: #1fd18a; font-size: 11px; }
.proof-item strong { display: block; font-size: 14px; margin-bottom: 4px; }
.proof-item p { margin: 0; color: #9fabbc; font-size: 13px; line-height: 1.45; }
.service-value { background: white; padding: clamp(65px, 9vw, 120px) clamp(20px, 6vw, 94px); }
.value-heading { max-width: 780px; margin-bottom: 45px; }
.value-heading h2 { font-size: clamp(34px, 4.4vw, 59px); line-height: 1.05; letter-spacing: -.05em; margin: 12px 0 15px; }
.value-heading p { color: #657083; line-height: 1.65; }
.value-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.value-card { border: 1px solid #dfe3e5; border-radius: 18px; padding: clamp(23px, 3vw, 34px); min-height: 235px; }
.value-card span { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: #e5faf1; color: #087447; font-size: 11px; font-weight: 900; }
.value-card h3 { font-size: 20px; margin: 30px 0 11px; }
.value-card p { color: #657083; font-size: 14px; line-height: 1.6; }
.package-terms { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-top: 18px; overflow: hidden; border: 1px solid #dfe3e5; border-radius: 18px; background: #dfe3e5; }
.package-terms > div { padding: clamp(22px, 3vw, 32px); background: #f7f9f8; }
.package-terms strong { display: block; margin-bottom: 8px; color: #0b1220; font-size: 15px; }
.package-terms p { margin: 0; color: #657083; font-size: 13px; line-height: 1.65; }
.service-intake { background: #0b1220; color: white; padding: clamp(65px, 9vw, 120px) clamp(20px, 6vw, 94px); display: grid; grid-template-columns: minmax(250px,.7fr) minmax(520px,1.1fr); gap: clamp(45px, 8vw, 110px); align-items: start; }
.intake-copy h2 { font-size: clamp(35px, 4.2vw, 58px); line-height: 1.06; letter-spacing: -.05em; margin: 12px 0 20px; }
.intake-copy > p { color: #aeb8c7; line-height: 1.7; }
.privacy-note { border-top: 1px solid rgba(255,255,255,.13); margin-top: 28px; padding-top: 22px; color: #8e9aab; font-size: 13px; line-height: 1.55; }
.service-form-card { background: white; color: #0b1220; border-radius: 22px; padding: clamp(22px, 4vw, 42px); box-shadow: 0 30px 80px rgba(0,0,0,.25); }
.service-form-card h3 { font-size: clamp(25px, 3vw, 34px); margin: 0 0 7px; letter-spacing: -.035em; }
.form-intro { color: #657083; font-size: 13px; margin-bottom: 25px; }
.service-form { display: grid; grid-template-columns: 1fr 1fr; gap: 17px 14px; }
.service-form .field { display: grid; gap: 8px; }
.service-form .full { grid-column: 1 / -1; }
.service-form label > span { font-size: 13px; font-weight: 800; }
.service-form label > span small { color: #657083; font-weight: 500; }
.service-form input, .service-form select, .service-form textarea { width: 100%; min-height: 49px; border: 1px solid #d8dde0; border-radius: 11px; padding: 12px 13px; background: white; color: #0b1220; font: inherit; }
.service-form textarea { min-height: 110px; resize: vertical; }
.service-form .consent { grid-column: 1 / -1; display: flex; gap: 10px; align-items: flex-start; color: #657083; font-size: 12px; line-height: 1.5; }
.service-form .consent input { width: 18px; min-height: 18px; margin-top: 1px; accent-color: #087447; }
.form-error { grid-column: 1 / -1; color: #b32929; min-height: 18px; margin: 0; font-size: 12px; font-weight: 700; }
.service-form .button { grid-column: 1 / -1; width: 100%; }
.service-summary { display: none; }
.service-summary.active { display: block; }
.service-summary pre { white-space: pre-wrap; max-height: 330px; overflow: auto; background: #f2f5f4; border: 1px solid #d8dde0; border-radius: 12px; padding: 17px; color: #374357; font: 500 13px/1.65 Inter, system-ui, sans-serif; }
.summary-buttons { display: flex; gap: 9px; flex-wrap: wrap; }
.summary-buttons .button { min-height: 48px; }
.summary-status { min-height: 18px; color: #087447; font-size: 12px; font-weight: 800; }
.back-home { color: #5c6878; font-size: 13px; font-weight: 800; }
.back-home:hover { text-decoration: underline; }
.service-footer { background: #07101e; color: #8f9aac; padding: 28px clamp(20px, 6vw, 94px); display: flex; justify-content: space-between; gap: 20px; font-size: 12px; }
@media (max-width: 900px) { .service-hero, .service-intake { grid-template-columns: 1fr; } .service-hero { min-height: auto; } .service-proof { transform: none; } .value-grid { grid-template-columns: 1fr; } .value-card { min-height: auto; } }
@media (max-width: 680px) { .service-page .brand-copy span { display: none; } .service-page .header-actions .header-cta { display: none; } .service-hero { padding-top: 48px; } .service-hero h1 { font-size: clamp(41px, 13vw, 62px); } .package-terms { grid-template-columns: 1fr; } .service-form { grid-template-columns: 1fr; } .service-form .full, .service-form .consent, .service-form .button, .form-error { grid-column: 1; } .summary-buttons { flex-direction: column; } .service-footer { flex-direction: column; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
