/* Service 01 uses the site's existing type, accent and enquiry controls. */
.wd-hero { padding-block: clamp(34px, 4.5vw, 74px); background: #fff; }
.wd-hero__grid { display: grid; grid-template-columns: 1fr 1.05fr; align-items: center; gap: clamp(28px, 4vw, 68px); }
.wd-label { display: flex; align-items: center; gap: 12px; margin: 0 0 17px; color: var(--c-blue); font: 600 12px/1.5 var(--f-en); letter-spacing: .14em; }
.wd-label::before { content: ""; height: 2px; width: 24px; background: currentColor; }
.wd-label span { border-right: 1px solid var(--c-line); padding-right: 12px; }
.wd-hero h1 { margin: 0; font-size: clamp(36px, 4.05vw, 62px); letter-spacing: -.055em; line-height: 1.23; color: var(--c-text); font-weight: 900; }
.wd-hero h1 span { color: var(--c-blue); }
.wd-hero__lead { margin: 20px 0 9px; color: var(--c-text); font-size: clamp(17px, 1.45vw, 22px); font-weight: 700; line-height: 1.65; }
.wd-body, .wd-intro { margin: 0; color: var(--c-text-2); font-size: 15px; line-height: 1.9; }
.wd-hero__copy .wd-body { max-width: 33em; }
.wd-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; margin-top: 22px; }
.wd-actions .btn { min-height: 48px; height: auto; padding: 12px 17px; gap: 12px; justify-content: center; }
.wd-button-outline { border: 1px solid var(--c-blue); background: white; color: var(--c-blue); }
.wd-button-outline:hover { color: white; background: var(--c-blue); }
.wd-note { margin: 11px 0 0; color: var(--c-text-3); font-size: 12px; line-height: 1.8; }
.wd-hero__visual { min-width: 0; margin: 0; }
.wd-artboard { position: relative; display: block; width: 100%; aspect-ratio: 1.51; background: #e9edee; overflow: hidden; }
.wd-artboard img { position: absolute; display: block; height: auto; box-shadow: 0 6px 25px #16212e29; }
.wd-artboard__desktop { width: 84%; top: 10%; left: 5%; }
.wd-artboard__mobile { width: 21%; right: 4%; bottom: 6%; border: 2px solid #fff; }
.wd-hero__visual figcaption { padding-top: 9px; display: flex; align-items: baseline; gap: 10px; color: var(--c-text-3); font-size: 11px; }
.wd-hero__visual figcaption span { font-weight: 700; color: var(--c-text); }
.wd-index { border-block: 1px solid var(--c-border); background: #fff; }
.wd-index .container { display: flex; align-items: stretch; flex-wrap: wrap; }
.wd-index a { flex: 1; display: flex; align-items: center; justify-content: center; gap: 14px; min-height: 54px; font-size: 14px; font-weight: 700; color: var(--c-text); }
.wd-index a span { color: var(--c-blue); }
.wd-index a:hover, .wd-text-link:hover { color: var(--c-blue); text-decoration: underline; text-underline-offset: .3em; }
.wd-section { padding-block: clamp(52px, 6vw, 94px); }
.wd-section h2 { font-size: clamp(29px, 3.1vw, 46px); font-weight: 800; letter-spacing: -.045em; line-height: 1.38; }
.wd-intro { margin-top: 13px; max-width: 44em; }
.wd-samples { margin-top: clamp(20px, 2.7vw, 37px); }
.wd-work { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); align-items: center; gap: clamp(22px, 4vw, 64px); color: var(--c-text); }
.wd-work img { width: 100%; height: auto; display: block; border: 1px solid var(--c-border); }
.wd-work__category { font-size: 12px; font-weight: 700; color: var(--c-text-3); }
.wd-work__action { display: inline-flex; align-items: center; justify-content: center; gap: 22px; min-height: 52px; max-width: 100%; margin-top: 22px; padding: 14px 22px; border: 1px solid var(--c-blue); border-radius: 6px; background: var(--c-blue); color: #fff; font-size: 14px; font-weight: 700; line-height: 1.4; box-shadow: 0 5px 14px rgb(26 86 219 / 14%); transition: background .2s, border-color .2s, box-shadow .2s; }
.wd-work__action b { font-size: 18px; line-height: 1; }
.wd-work:hover .wd-work__action, .wd-work:focus-visible .wd-work__action { background: var(--c-blue-hover); border-color: var(--c-blue-hover); color: #fff; text-decoration: none; box-shadow: 0 7px 18px rgb(26 86 219 / 22%); }
.wd-work:focus-visible, .wd-artboard:focus-visible { outline: 2px solid var(--c-blue); outline-offset: 4px; }
.wd-samples h3, .wd-steps h3, .wd-price__details h3 { margin: 6px 0; font-size: clamp(18px, 1.55vw, 23px); line-height: 1.5; }
.wd-samples p, .wd-steps p, .wd-price dd { margin: 0; font-size: 14px; line-height: 1.85; color: var(--c-text-2); }
.wd-text-link { margin-top: 26px; }
.wd-split { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(28px, 6vw, 92px); align-items: start; }
.wd-price, .wd-faq { background: var(--c-fv-bg); border-block: 1px solid var(--c-border); }
.wd-price__amount { color: var(--c-blue); font-size: clamp(32px, 3.4vw, 50px); font-weight: 800; letter-spacing: -.035em; margin: 12px 0 7px; }
.wd-price__amount small { margin-left: 10px; color: var(--c-text-2); font-size: 13px; letter-spacing: normal; }
.wd-price__details dl { display: grid; grid-template-columns: max-content 1fr; margin: 15px 0 0; }
.wd-price dt, .wd-price dd { padding-block: 14px; border-top: 1px solid var(--c-line); }
.wd-price dt { padding-right: 20px; font-size: 14px; font-weight: 700; line-height: 1.85; }
.wd-author { display: flex; align-items: center; gap: 17px; margin-top: 22px; }
.wd-author img { width: 72px; height: 72px; object-fit: cover; border-radius: 50%; }
.wd-author small, .wd-author strong, .wd-author a { display: block; }
.wd-author small { font-size: 11px; color: var(--c-text-3); }
.wd-author strong { margin-block: 1px; font-size: 17px; }
.wd-author a { font-size: 12px; }
.wd-steps { list-style: none; margin: 0; padding: 0; }
.wd-steps li { display: grid; grid-template-columns: 27px 1fr; gap: 13px; border-top: 1px solid var(--c-line); padding-block: 17px; }
.wd-steps li > span { color: var(--c-blue); font: 500 15px/1.8 var(--f-en); }
.wd-steps h3 { margin: 0 0 6px; }
.wd-faq details:first-child { border-top: 1px solid var(--c-line); }
.wd-faq .review-faq p { font-size: 14px; }
.wd-contact { text-align: center; }
.wd-contact .contact__lead { margin-top: 15px; }
.wd-contact .wd-actions { justify-content: center; }
.wd-button-light { background: transparent; border: 1px solid #a8c3eb; color: white; }
.wd-button-light:hover { background: white; color: var(--c-navy); }
@media (max-width: 900px) {
  .wd-hero__grid { grid-template-columns: 1fr; }
  .wd-hero__visual { max-width: 640px; }
  .wd-hero__copy .wd-body { max-width: 40em; }
  .wd-split { grid-template-columns: 1fr; }
  .wd-wide { display: none; }
}
@media (max-width: 640px) {
  .wd-hero { padding-block: 30px; }
  .wd-hero__grid { gap: 22px; }
  .wd-hero h1 { font-size: clamp(33px, 8.4vw, 43px); }
  .wd-hero__lead { margin-top: 14px; }
  .wd-hero .wd-body, .wd-intro { font-size: 14px; }
  .wd-index a { flex-basis: 50%; justify-content: space-between; padding-inline: 8px; min-height: 44px; font-size: 12px; }
  .wd-work { grid-template-columns: 1fr; }
  .wd-actions { gap: 8px; }
  .wd-actions .btn { flex: 1 0 auto; gap: 6px; padding-inline: 10px; font-size: 13px; }
  .wd-price__details dl { display: block; }
  .wd-price dt { padding: 11px 0 2px; }
  .wd-price dd { border: 0; padding: 0 0 11px; }
}
.wd-work + .wd-work { margin-top: clamp(40px, 5vw, 72px); }
