/* Shared layout for Ecommestrategy's explanatory service pages. */
.service-page{background:var(--paper);color:var(--ink)}
.service-page .site-header{position:sticky}
.service-page .wordmark{color:var(--white)}
.service-hero{position:relative;overflow:hidden;background:var(--forest);color:var(--white);padding:38px 0 0;isolation:isolate}
.service-hero::before{content:'';position:absolute;inset:0;z-index:-1;background-image:radial-gradient(#d0ddc01a .7px,transparent .7px);background-size:23px 23px}
.service-hero::after{content:'';position:absolute;right:-70px;bottom:-180px;width:560px;height:560px;border:1px solid #d0dfd014;border-radius:50%;box-shadow:0 0 0 55px #d0dfd00a,0 0 0 110px #d0dfd006;z-index:-1}
.service-crumbs{display:flex;align-items:center;gap:11px;color:#a9c2ad;font-size:14px;line-height:1.6;margin-bottom:55px}
.service-crumbs a:hover{color:var(--peach)}
.service-crumbs span{color:#e4a078}
.service-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;align-items:end;gap:88px;padding-bottom:77px}
.service-hero h1{font-size:clamp(48px,5.2vw,73px);line-height:1.04;letter-spacing:-.07em;max-width:750px;margin-bottom:27px}
.service-hero h1 em{color:var(--mint);display:block;margin-top:7px}
.service-lede{font-size:19px;line-height:1.75;color:#d0dacf;max-width:650px}
.service-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:31px}
.service-hero-actions .text-link{color:#e3ece0}
.service-hero-actions .text-link:hover{color:var(--peach)}
.service-meta{display:flex;align-items:center;gap:12px;color:#a9bdaa;font-size:14px;margin-top:35px}
.service-meta .person-monogram{width:38px;height:38px;font-size:14px}
.hero-answer-card{position:relative;background:var(--mint);color:var(--forest);border-radius:22px;padding:27px 29px 25px;transform:rotate(2deg);box-shadow:0 20px 50px #00000020}
.hero-answer-card.blue{background:var(--blue);transform:rotate(-2deg)}
.answer-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:18px;border-bottom:1px solid #142f2830;color:#42624d}
.answer-card-top .small-label{font-size:14px}
.answer-card-index{font-family:var(--serif);font-style:italic;font-size:35px;line-height:1;color:#497154}
.hero-answer-card h2{font-size:29px;line-height:1.15;margin-top:22px;letter-spacing:-.05em}
.hero-answer-card p{font-size:14px;line-height:1.75;color:#45614d;margin-top:17px}
.hero-answer-card ul{display:grid;gap:11px;margin-top:21px;padding-top:18px;border-top:1px solid #142f2830}
.hero-answer-card li{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.55;font-weight:700}
.hero-answer-card li::before{content:'+';font-size:18px;line-height:1;color:#4e7755}
.service-hero-bottom{border-top:1px solid #ffffff28;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.service-hero-bottom>span{font-size:14px;font-weight:700;letter-spacing:.06em;color:#a9bdaa}
.service-hero-bottom ul{display:flex;gap:30px;flex-wrap:wrap;color:#d4e1d2;font-size:14px}
.service-hero-bottom li{display:flex;align-items:center;gap:8px}
.service-hero-bottom li::before{content:'+';color:var(--peach);font-size:17px}
.service-hero-bottom>a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #ffffff2c;border-radius:50%;font-size:22px}
.service-hero-bottom>a:hover{background:#ffffff12}

.service-main{padding-top:102px}
.service-intro-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:84px;align-items:start}
.service-intro-grid h2{font-size:clamp(37px,4vw,54px)}
.service-intro-grid h2 em{color:#4b7258}
.service-intro-copy>p:not(.eyebrow){font-size:18px;line-height:1.8;color:var(--muted);max-width:670px}
.service-intro-copy>p+p{margin-top:18px}
.service-note{border-left:3px solid var(--peach);padding:17px 0 17px 20px;margin-top:26px;color:#4e6652;font-size:14px;line-height:1.75}
.service-note strong{color:var(--ink)}
.service-audience{margin-top:34px;display:grid;grid-template-columns:repeat(2,1fr);gap:15px}
.audience-card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:23px 22px;min-height:173px}
.audience-card:nth-child(2){background:#edf3e9}.audience-card:nth-child(3){background:#eff2f9}.audience-card:nth-child(4){background:#f2e9df}
.audience-card span{font-family:var(--serif);font-size:29px;font-style:italic;color:#58775a}
.audience-card h3{font-size:18px;line-height:1.35;letter-spacing:-.035em;margin-top:13px}
.audience-card p{font-size:14px;line-height:1.65;color:var(--muted);margin-top:8px}

.service-block{padding-block:102px;border-top:1px solid var(--line);margin-top:0}
.service-block-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:48px}
.service-block-heading h2{font-size:clamp(35px,3.8vw,52px)}
.service-block-heading h2 em{color:#4b7258}
.service-block-heading>p{font-size:16px;line-height:1.75;color:var(--muted);max-width:400px}
.service-check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.check-card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:24px 21px;min-height:247px}
.check-card:nth-child(2){background:#e8f0e7}.check-card:nth-child(3){background:#edf0f8}.check-card:nth-child(4){background:#f2e8dc}
.check-card .check-index{font-family:var(--serif);font-style:italic;font-size:33px;line-height:1;color:#537457}
.check-card h3{font-size:19px;line-height:1.3;letter-spacing:-.035em;margin-top:26px}
.check-card p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:11px}
.source-line{display:flex;align-items:flex-start;gap:12px;margin-top:28px;color:#5c6b5e;font-size:14px;line-height:1.7}
.source-line>span{font-family:var(--serif);font-style:italic;font-size:20px;line-height:1;color:#527454}
.source-line a{color:#3e6d4b;text-decoration:underline;text-underline-offset:3px}.source-line a:hover{color:#c15f2b}

.service-steps{display:grid;grid-template-columns:1fr 1fr;gap:0 65px;counter-reset:step}
.service-step{position:relative;display:grid;grid-template-columns:65px 1fr;gap:18px;padding:22px 0 24px;border-top:1px solid var(--line)}
.service-step:nth-child(-n+2){border-top:0;padding-top:0}.service-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--serif);font-style:italic;font-size:38px;line-height:1;color:#557658}.service-step h3{font-size:21px;line-height:1.3;letter-spacing:-.04em}.service-step p{font-size:14px;line-height:1.75;color:var(--muted);margin-top:8px}
.service-outcome{display:grid;grid-template-columns:.86fr 1.14fr;gap:65px;align-items:center;margin-top:48px;padding:31px 33px;background:var(--forest);color:var(--white);border-radius:20px}
.service-outcome .small-label{color:#a9c9ad;font-size:14px}.service-outcome h3{font-size:29px;line-height:1.15;margin-top:11px}.service-outcome h3 em{color:var(--mint)}.service-outcome p{font-size:15px;line-height:1.75;color:#c0d0c0}.service-outcome strong{color:var(--white)}

.service-honesty{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:74px}.honesty-card{border-radius:18px;padding:27px 27px 25px;border:1px solid var(--line);background:#f2e8dc}.honesty-card:last-child{background:#e9f0e6}.honesty-card .small-label{font-size:14px;color:#65715e}.honesty-card h3{font-size:25px;line-height:1.2;margin-top:13px}.honesty-card p{font-size:14px;line-height:1.75;color:#59665f;margin-top:13px}.honesty-card ul{display:grid;gap:10px;margin-top:16px}.honesty-card li{font-size:14px;line-height:1.55;display:flex;gap:10px;color:#56634f}.honesty-card li::before{content:'—';color:#ca6538}

.service-glossary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.glossary-card{border:1px solid var(--line);border-radius:15px;background:var(--white);padding:23px 22px}.glossary-card:nth-child(2){background:#edf2f8}.glossary-card:nth-child(3){background:#eef3e8}.glossary-card dt{font-size:19px;font-weight:700;letter-spacing:-.035em}.glossary-card dd{margin:9px 0 0;color:var(--muted);font-size:14px;line-height:1.7}.glossary-card code{font-family:monospace;font-size:14px;background:#ffffff8a;padding:2px 5px;border-radius:4px}

.service-faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:84px}.service-faq-heading h2{font-size:clamp(37px,4vw,53px)}.service-faq-heading h2 em{color:#4b7258}.service-faq-heading>p{font-size:15px;color:var(--muted);line-height:1.75;max-width:300px;margin-top:21px}.service-faq-heading .text-link{margin-top:18px}.service-faq-list details{border-bottom:1px solid var(--line)}.service-faq-list details:first-child{border-top:1px solid var(--line)}.service-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:21px 0;font-size:16px;font-weight:700;line-height:1.5;cursor:pointer}.service-faq-list summary:hover{color:#4a7054}.service-faq-list summary>span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e8eedf;color:#49694e;font-size:21px;font-weight:400;flex-shrink:0}.service-faq-list details[open] summary>span{transform:rotate(45deg)}.service-faq-list details>div{padding:0 48px 21px 0}.service-faq-list p{font-size:14px;line-height:1.8;color:var(--muted)}
.service-sources{border-top:1px solid var(--line);margin-top:0;padding:33px 0 64px}.service-sources h3{font-size:22px}.service-sources p{font-size:14px;line-height:1.75;color:var(--muted);margin-top:8px}.service-sources ul{display:flex;flex-wrap:wrap;gap:13px 24px;margin-top:17px}.service-sources li a{font-size:14px;color:#3f6c4b;text-decoration:underline;text-underline-offset:4px}.service-sources li a:hover{color:#c15f2b}

.service-cta{background:var(--forest);color:var(--white);padding-block:91px}.service-cta-grid{display:grid;grid-template-columns:1fr .85fr;gap:82px;align-items:center}.service-cta h2{font-size:clamp(42px,4.8vw,65px);line-height:1.04}.service-cta h2 em{color:var(--mint)}.service-cta p{font-size:16px;line-height:1.75;color:#c0d0c0;max-width:525px;margin-top:24px}.service-cta .button{margin-top:29px}.service-cta-card{border:1px solid #ffffff2d;border-radius:18px;padding:28px 27px}.service-cta-card .small-label{color:#abc6ad;font-size:14px}.service-cta-card h3{font-size:24px;line-height:1.25;margin-top:13px}.service-cta-card ol{display:grid;gap:14px;margin-top:21px}.service-cta-card li{display:flex;gap:13px;font-size:14px;line-height:1.6;color:#d4e1d2}.service-cta-card li span{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--peach);line-height:1.2}.service-cta-card .email-address{font-size:17px;color:var(--mint);margin-top:22px}.service-cta-card .email-address:hover{color:var(--peach)}
.service-page .site-footer{margin-top:0}

@media(max-width:1150px){.service-hero-grid{gap:50px}.service-hero h1{font-size:58px}.hero-answer-card{padding:23px}.hero-answer-card h2{font-size:25px}.service-intro-grid{gap:55px}.service-block-heading{gap:40px}.service-check-grid{gap:12px}.check-card{padding-inline:17px}.check-card h3{font-size:17px}.service-faq{gap:50px}.service-cta-grid{gap:55px}}
@media(max-width:800px){.service-hero{padding-top:28px}.service-crumbs{margin-bottom:40px}.service-hero-grid{grid-template-columns:1fr;gap:45px;padding-bottom:56px}.service-hero h1{font-size:clamp(46px,8.8vw,64px)}.service-lede{font-size:17px}.service-meta{margin-top:27px}.hero-answer-card{max-width:580px;margin-inline:auto;width:100%;transform:rotate(1.5deg)}.hero-answer-card.blue{transform:rotate(-1.5deg)}.service-hero-bottom{padding-block:23px;align-items:flex-start;flex-wrap:wrap}.service-hero-bottom>span{flex-basis:100%}.service-hero-bottom ul{gap:13px 25px}.service-hero-bottom>a{margin-left:auto}.service-main{padding-top:76px}.service-intro-grid{grid-template-columns:1fr;gap:35px}.service-intro-grid h2{font-size:43px}.service-intro-copy>p:not(.eyebrow){font-size:16px}.service-audience{max-width:620px}.service-block{padding-block:76px;margin-top:0}.service-block-heading{grid-template-columns:1fr;gap:21px;margin-bottom:36px}.service-block-heading h2{font-size:42px}.service-check-grid{grid-template-columns:1fr 1fr;gap:15px}.check-card{min-height:215px}.service-steps{gap:0 34px}.service-step{grid-template-columns:55px 1fr;gap:12px}.service-step::before{font-size:33px}.service-step h3{font-size:19px}.service-step p{font-size:14px}.service-outcome{grid-template-columns:1fr;gap:14px;margin-top:34px;padding:26px}.service-outcome h3{font-size:27px}.service-outcome p{font-size:14px}.service-honesty{gap:15px;margin-top:55px}.honesty-card{padding:23px}.honesty-card h3{font-size:22px}.service-glossary{grid-template-columns:1fr 1fr}.glossary-card:last-child{grid-column:1/-1}.service-faq{grid-template-columns:1fr;gap:32px}.service-faq-heading h2{font-size:43px}.service-faq-heading>p{max-width:580px}.service-sources{margin-top:0}.service-cta{padding-block:72px}.service-cta-grid{grid-template-columns:1fr;gap:34px}.service-cta h2{font-size:52px}.service-cta-card{max-width:600px}}
@media(max-width:580px){.service-hero{padding-top:22px}.service-crumbs{font-size:14px;margin-bottom:34px}.service-hero-grid{gap:36px;padding-bottom:46px}.service-hero h1{font-size:47px;line-height:1.05}.service-lede{font-size:16px;line-height:1.75}.service-hero-actions{gap:11px;margin-top:25px}.service-hero-actions .button{width:100%;font-size:14px}.service-hero-actions .text-link{font-size:14px}.service-meta{font-size:14px;margin-top:24px}.service-meta .person-monogram{width:35px;height:35px}.hero-answer-card{padding:21px 20px 20px;border-radius:19px}.answer-card-top .small-label{font-size:14px}.answer-card-index{font-size:29px}.hero-answer-card h2{font-size:24px;margin-top:18px}.hero-answer-card p{font-size:14px;margin-top:13px}.hero-answer-card ul{margin-top:17px;padding-top:15px}.hero-answer-card li{font-size:14px}.service-hero-bottom{gap:17px}.service-hero-bottom>span{font-size:14px}.service-hero-bottom ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;font-size:14px}.service-hero-bottom>a{width:36px;height:36px}.service-main{padding-top:63px}.service-intro-grid{gap:27px}.service-intro-grid h2{font-size:36px}.service-intro-copy>p:not(.eyebrow){font-size:15px;line-height:1.75}.service-note{font-size:14px;padding-left:15px}.service-audience{grid-template-columns:1fr 1fr;gap:11px}.audience-card{padding:18px 16px;min-height:185px}.audience-card span{font-size:26px}.audience-card h3{font-size:16px}.audience-card p{font-size:14px}.service-block{padding-block:63px;margin-top:0}.service-block-heading{margin-bottom:29px}.service-block-heading h2{font-size:36px}.service-block-heading>p{font-size:14px}.service-check-grid{grid-template-columns:1fr;gap:11px}.check-card{min-height:auto;padding:21px}.check-card h3{font-size:18px;margin-top:18px}.check-card p{font-size:14px}.source-line{font-size:14px}.service-steps{grid-template-columns:1fr;gap:0}.service-step,.service-step:nth-child(-n+2){border-top:1px solid var(--line);padding:20px 0}.service-step:first-child{border-top:0;padding-top:0}.service-step h3{font-size:20px}.service-step p{font-size:14px}.service-outcome{padding:23px 21px}.service-outcome h3{font-size:25px}.service-outcome p{font-size:14px}.service-honesty{grid-template-columns:1fr;gap:11px;margin-top:45px}.honesty-card{padding:21px}.honesty-card h3{font-size:23px}.honesty-card p{font-size:14px}.service-glossary{grid-template-columns:1fr;gap:11px}.glossary-card:last-child{grid-column:auto}.glossary-card{padding:20px}.service-faq-heading h2{font-size:37px}.service-faq-list summary{font-size:15px;padding-block:19px}.service-faq-list details>div{padding-right:15px}.service-faq-list p{font-size:14px}.service-sources{margin-top:0;padding-top:27px;padding-bottom:48px}.service-sources h3{font-size:20px}.service-sources p{font-size:14px}.service-sources ul{display:grid;gap:12px}.service-sources li a{font-size:14px}.service-cta{padding-block:63px}.service-cta-grid{gap:28px}.service-cta h2{font-size:45px}.service-cta p{font-size:15px}.service-cta-card{padding:22px 20px}.service-cta-card h3{font-size:22px}.service-cta-card li{font-size:14px}.service-cta-card .email-address{font-size:15px}}
@media(max-width:360px){.service-hero h1{font-size:43px}.service-audience{grid-template-columns:1fr}.audience-card{min-height:auto}.service-cta h2{font-size:41px}}

/* Readable service copy and author attribution, including narrow screens. */
.service-page .hero-answer-card p,.service-page .audience-card p,.service-page .check-card p,.service-page .service-step p,.service-page .service-outcome p,.service-page .honesty-card p,.service-page .honesty-card li,.service-page .glossary-card dd,.service-page .service-faq-list p,.service-page .service-intro-copy>p:not(.eyebrow),.service-page .service-note,.service-page .service-block-heading>p,.service-page .service-cta p{font-size:1rem}
.service-meta{font-size:.8125rem;line-height:1.7}
.service-meta a{text-decoration:underline;text-underline-offset:3px;color:#dce8d9}
.service-meta a:hover{color:var(--peach)}
.service-crumbs{flex-wrap:wrap;font-size:.875rem}
.service-meta .person-monogram{flex-shrink:0}
.glossary-card,.check-card,.audience-card{min-width:0;overflow-wrap:anywhere}
@media(max-width:580px){.service-audience{grid-template-columns:1fr}.audience-card{min-height:0}.service-hero-bottom ul{font-size:.875rem}.service-hero h1{font-size:clamp(2.35rem,9.7vw,2.9375rem)}}
