@charset "UTF-8";
.wpcf7 .screen-reader-response {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  word-wrap: normal !important;
  word-break: normal !important;
}

.wpcf7 .hidden-fields-container {
  display: none;
}

.wpcf7 form .wpcf7-response-output {
  margin: 2em 0.5em 1em;
  padding: 0.2em 1em;
  border: 2px solid #00a0d2; /* Blue */
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
  display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
  border-color: #46b450; /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  border-color: #dc3232; /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
  border-color: #f56e28; /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #ffb900; /* Yellow */
}

.wpcf7-form-control-wrap {
  position: relative;
}

.wpcf7-not-valid-tip {
  color: #dc3232; /* Red */
  font-size: 1em;
  font-weight: normal;
  display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
  position: relative;
  top: -2ex;
  left: 1em;
  z-index: 100;
  border: 1px solid #dc3232;
  background: #fff;
  padding: 0.2em 0.8em;
  width: 24em;
}

.wpcf7-list-item {
  display: inline-block;
  margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
  content: " ";
}

.wpcf7-spinner {
  visibility: hidden;
  display: inline-block;
  background-color: #23282d; /* Dark Gray 800 */
  opacity: 0.75;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  margin: 0 24px;
  position: relative;
}

form.submitting .wpcf7-spinner {
  visibility: visible;
}

.wpcf7-spinner::before {
  content: "";
  position: absolute;
  background-color: #fbfbfc; /* Light Gray 100 */
  top: 4px;
  left: 4px;
  width: 6px;
  height: 6px;
  border: none;
  border-radius: 100%;
  transform-origin: 8px 8px;
  animation-name: spin;
  animation-duration: 1000ms;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
  .wpcf7-spinner::before {
    animation-name: blink;
    animation-duration: 2000ms;
  }
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes blink {
  from {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.wpcf7 [inert] {
  opacity: 0.5;
}

.wpcf7 input[type="file"] {
  cursor: pointer;
}

.wpcf7 input[type="file"]:disabled {
  cursor: default;
}

.wpcf7 .wpcf7-submit:disabled {
  cursor: not-allowed;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
  direction: ltr;
}

.wpcf7-reflection > output {
  display: list-item;
  list-style: none;
}

.wpcf7-reflection > output[hidden] {
  display: none;
}.dfac-chatbot {
  --dfac-bg: #ffffff;
  --dfac-text: #17212b;
  --dfac-muted: #5b6875;
  --dfac-border: #d9e3ea;
  --dfac-main-color: #0f766e;
  --dfac-header-bg: #0f766e;
  --dfac-header-text: #ffffff;
  --dfac-launcher-bg: #0f766e;
  --dfac-launcher-text: #ffffff;
  --dfac-send-bg: #0f766e;
  --dfac-send-text: #ffffff;
  --dfac-contact-bg: #0f766e;
  --dfac-contact-text: #ffffff;
  --dfac-position-bottom: 22px;
  --dfac-position-side: 22px;
  --dfac-mobile-bottom: 14px;
  --dfac-mobile-side: 12px;
  --dfac-primary: var(--dfac-main-color);
  --dfac-primary-dark: #115e59;
  --dfac-accent: #f2fbf8;
  --dfac-shadow: 0 16px 44px rgba(15, 28, 41, 0.18);
  bottom: var(--dfac-position-bottom);
  box-sizing: border-box;
  color: var(--dfac-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  position: fixed;
  z-index: 9999;
}

.dfac-chatbot[data-dfac-position="right"] {
  left: auto;
  right: var(--dfac-position-side);
}

.dfac-chatbot[data-dfac-position="left"] {
  left: var(--dfac-position-side);
  right: auto;
}

.dfac-chatbot *,
.dfac-chatbot *::before,
.dfac-chatbot *::after {
  box-sizing: border-box;
}

.dfac-chatbot__launcher {
  align-items: center;
  background: var(--dfac-launcher-bg);
  border: 0;
  border-radius: 16px;
  box-shadow: var(--dfac-shadow);
  color: var(--dfac-launcher-text);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 700;
  height: 58px;
  justify-content: center;
  overflow: hidden;
  padding: 0;
  width: 58px;
}

.dfac-chatbot__launcher:hover,
.dfac-chatbot__launcher:focus-visible {
  background: var(--dfac-launcher-bg);
  filter: brightness(0.94);
}

.dfac-chatbot__launcher-icon {
  align-items: center;
  background: rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  display: inline-flex;
  height: 36px;
  justify-content: center;
  position: relative;
  width: 36px;
}

.dfac-chatbot__launcher-icon::before {
  background: currentColor;
  border-radius: 6px;
  content: "";
  height: 16px;
  left: 8px;
  position: absolute;
  top: 9px;
  width: 20px;
}

.dfac-chatbot__launcher-icon::after {
  border-right: 7px solid transparent;
  border-top: 7px solid currentColor;
  content: "";
  left: 12px;
  position: absolute;
  top: 22px;
}

.dfac-chatbot__launcher-image {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.dfac-chatbot__launcher-text {
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.dfac-chatbot__panel {
  background: var(--dfac-bg);
  border: 1px solid var(--dfac-border);
  border-radius: 8px;
  bottom: 76px;
  box-shadow: var(--dfac-shadow);
  display: flex;
  flex-direction: column;
  max-height: min(560px, calc(100vh - 120px));
  overflow: hidden;
  position: absolute;
  width: min(380px, calc(100vw - 32px));
}

.dfac-chatbot[data-dfac-position="right"] .dfac-chatbot__panel {
  left: auto;
  right: 0;
}

.dfac-chatbot[data-dfac-position="left"] .dfac-chatbot__panel {
  left: 0;
  right: auto;
}

.dfac-chatbot__panel[hidden] {
  display: none;
}

.dfac-chatbot__header {
  flex: 0 0 auto;
  align-items: center;
  background: var(--dfac-header-bg);
  color: var(--dfac-header-text);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding: 16px 18px;
}

.dfac-chatbot__eyebrow {
  font-size: 12px;
  line-height: 1.3;
  margin: 0 0 3px;
  opacity: 0.88;
}

.dfac-chatbot__title {
  color: inherit;
  font-size: 17px;
  line-height: 1.3;
  margin: 0;
}

.dfac-chatbot__close {
  align-items: center;
  background: rgba(255, 255, 255, 0.14);
  border: 0;
  border-radius: 999px;
  color: var(--dfac-header-text);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  height: 36px;
  justify-content: center;
  line-height: 1;
  overflow: hidden;
  padding: 0;
  position: relative;
  text-indent: -9999px;
  width: 36px;
}

.dfac-chatbot__close::before,
.dfac-chatbot__close::after {
  background: currentColor;
  border-radius: 999px;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  width: 18px;
}

.dfac-chatbot__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.dfac-chatbot__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.dfac-chatbot__close:hover,
.dfac-chatbot__close:focus-visible {
  background: rgba(255, 255, 255, 0.24);
}

.dfac-chatbot__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 14px;
  min-height: 0;
  overflow: hidden;
  padding: 16px;
}

.dfac-chatbot__scroll {
  flex: 1 1 auto;
  min-height: 0;
  overscroll-behavior: contain;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.dfac-chatbot__messages {
  display: grid;
  gap: 10px;
}

.dfac-chatbot__message-row {
  display: flex;
  gap: 8px;
  min-width: 0;
}

.dfac-chatbot__message-row--bot {
  align-items: flex-start;
  justify-content: flex-start;
}

.dfac-chatbot__bot-avatar {
  border: 1px solid var(--dfac-border);
  border-radius: 50%;
  display: block;
  flex: 0 0 auto;
  height: 34px;
  object-fit: cover;
  width: 34px;
}

.dfac-chatbot__message {
  background: var(--dfac-accent);
  border: 1px solid #c9eee4;
  border-radius: 8px;
  color: var(--dfac-text);
  font-size: 14px;
  line-height: 1.65;
  margin: 0;
  padding: 12px 14px;
}

.dfac-chatbot__message--bot {
  justify-self: start;
  max-width: 88%;
}

.dfac-chatbot__message-row--bot .dfac-chatbot__message--bot {
  flex: 1 1 auto;
  max-width: none;
  min-width: 0;
}

.dfac-chatbot__message--user {
  background: #ffffff;
  border-color: var(--dfac-border);
  justify-self: end;
  max-width: 88%;
}

.dfac-chatbot__notice {
  color: var(--dfac-muted);
  flex: 0 0 auto;
  font-size: 12px;
  line-height: 1.6;
  margin: 0;
}

.dfac-chatbot__quick-actions {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.dfac-chatbot__quick-button {
  background: #ffffff;
  border: 1px solid var(--dfac-border);
  border-radius: 8px;
  color: var(--dfac-text);
  cursor: pointer;
  font: inherit;
  font-size: 14px;
  line-height: 1.4;
  padding: 10px 12px;
  text-align: left;
}

.dfac-chatbot__quick-button:hover,
.dfac-chatbot__quick-button:focus-visible {
  background: #f7faf9;
  border-color: var(--dfac-primary);
}

.dfac-chatbot__contact {
  align-items: center;
  background: var(--dfac-contact-bg);
  border-radius: 8px;
  color: var(--dfac-contact-text);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 15px;
  font-weight: 700;
  justify-content: center;
  min-height: 44px;
  padding: 11px 14px;
  text-decoration: none;
}

.dfac-chatbot__form {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.dfac-chatbot__input {
  border: 1px solid var(--dfac-border);
  border-radius: 8px;
  color: var(--dfac-text);
  flex: 1 1 auto;
  font: inherit;
  font-size: 14px;
  min-height: 42px;
  min-width: 0;
  padding: 10px 12px;
}

.dfac-chatbot__input:focus {
  border-color: var(--dfac-primary);
  outline: 2px solid rgba(15, 118, 110, 0.16);
}

.dfac-chatbot__send {
  background: var(--dfac-send-bg);
  border: 0;
  border-radius: 8px;
  color: var(--dfac-send-text);
  cursor: pointer;
  flex: 0 0 auto;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  min-height: 42px;
  padding: 10px 14px;
}

.dfac-chatbot__send:hover,
.dfac-chatbot__send:focus-visible {
  background: var(--dfac-send-bg);
  filter: brightness(0.94);
}

.dfac-chatbot__send:disabled,
.dfac-chatbot__quick-button:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

.dfac-chatbot__contact:hover,
.dfac-chatbot__contact:focus-visible {
  background: var(--dfac-contact-bg);
  color: var(--dfac-contact-text);
  filter: brightness(0.94);
}

@media (max-width: 600px) {
  .dfac-chatbot {
    bottom: max(var(--dfac-mobile-bottom), env(safe-area-inset-bottom));
  }

  .dfac-chatbot[data-dfac-position="right"] {
    left: auto;
    right: var(--dfac-mobile-side);
  }

  .dfac-chatbot[data-dfac-position="left"] {
    left: var(--dfac-mobile-side);
    right: auto;
  }

  .dfac-chatbot__launcher {
    border-radius: 15px;
    height: 54px;
    padding: 0;
    width: 54px;
  }

  .dfac-chatbot__panel {
    bottom: calc(74px + max(var(--dfac-mobile-bottom), env(safe-area-inset-bottom)));
    display: flex;
    flex-direction: column;
    height: min(68vh, 560px);
    height: min(68svh, 560px);
    height: min(68dvh, 560px);
    left: var(--dfac-mobile-side);
    max-height: none;
    overflow: hidden;
    position: fixed;
    right: var(--dfac-mobile-side);
    top: auto;
    width: auto;
  }

  .dfac-chatbot[data-dfac-position="right"] .dfac-chatbot__panel,
  .dfac-chatbot[data-dfac-position="left"] .dfac-chatbot__panel {
    left: var(--dfac-mobile-side);
    right: var(--dfac-mobile-side);
  }
}

/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*//* New TOP content only: this file deliberately does not target theme/global elements. */
.dfh{--ink:#17151c;--muted:#565361;--lavender:#aa84d3;--line:#ddd0ed;color:var(--ink);font:16px/1.95 "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;background:#fff;overflow:clip}.dfh *{box-sizing:border-box}.dfh img{display:block;max-width:100%;height:auto}.dfh a{color:inherit;text-decoration:none}.dfh h1,.dfh h2,.dfh h3,.dfh p,.dfh figure{margin:0;padding:0}.dfh h1,.dfh h2,.dfh h3{font-family:"Noto Serif CJK JP","Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;color:#111;letter-spacing:-.045em}.dfh h2{font-size:clamp(34px,4.15vw,60px);line-height:1.45;margin-bottom:28px}.dfh h3{font-size:30px;line-height:1.5}.dfh p{color:var(--muted)}.dfh .dfh-wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.dfh .dfh-section{padding:120px 0}.dfh .dfh-label{font-size:12px;letter-spacing:.26em;line-height:1.5;color:#61586d;margin-bottom:25px}.dfh .dfh-small{font-size:13px;margin-top:20px}.dfh .dfh-center{text-align:center}.dfh .dfh-link{display:inline-flex;align-items:center;gap:16px;color:#76529f;font-size:14px;border-bottom:1px solid #bba6d5;line-height:1.8;padding-block:5px;white-space:nowrap}.dfh .dfh-link span{font-size:20px}.dfh .df-btn{gap:18px;font-size:15px;max-width:100%;min-width:0!important;white-space:normal!important;line-height:1.6;width:auto!important;margin-top:24px!important}.dfh .df-btn:hover{filter:brightness(1.05)}.dfh .dfh-sp{display:none}.dfh .dfh-hero{padding:52px 0 26px;background:radial-gradient(ellipse at 80% 42%,#f5effb55,transparent 65%)}.dfh .dfh-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;min-height:720px;gap:0}.dfh .dfh-hero-copy{position:relative;z-index:1;padding-block:40px}.dfh .dfh-hero h1{font-size:clamp(56px,6.1vw,88px);line-height:1.38;letter-spacing:-.065em;margin-bottom:30px}.dfh .dfh-hero h1 span{display:block;white-space:nowrap}.dfh .dfh-hero-description{font-size:16px;line-height:2.1}.dfh .dfh-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:20px}.dfh .dfh-hero-actions .dfh-link{margin-left:16px}.dfh .dfh-hero-art{height:680px;position:relative;min-width:0}.dfh .dfh-hero-art iframe{border:0;width:100%;height:100%;display:block;background:transparent}.dfh .dfh-motion-toggle{position:absolute;bottom:4px;right:12px;border:0;background:#fff9;color:#6b6375;font:12px/1.5 inherit;cursor:pointer;padding:8px 12px;border-radius:20px;display:flex;gap:10px;align-items:center}.dfh .dfh-scroll{font-size:10px;letter-spacing:.25em;text-align:right;color:#8b8194;padding-top:20px;border-top:1px solid #e9e1ef}.dfh .dfh-services{padding-top:112px}.dfh .dfh-services h2{margin-bottom:40px}.dfh .dfh-service{display:grid;grid-template-columns:190px minmax(0,1fr) auto;gap:35px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.dfh .dfh-service:first-child{padding-top:0}.dfh .dfh-service-icon{width:175px;height:170px;display:flex;align-items:center}.dfh .dfh-service-icon img{width:100%;height:100%;object-fit:contain}.dfh .dfh-service h3{font-size:34px;margin-bottom:13px}.dfh .dfh-service p{font-size:15px}.dfh .dfh-services .dfh-center{padding-top:24px}.dfh .dfh-product{background:radial-gradient(ellipse at 80% 30%,#e8dcfbaa,transparent 70%),linear-gradient(110deg,#f6f2fc,#f8f5fd 50%,#f6edf9);padding-block:100px}.dfh .dfh-product-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;column-gap:90px;align-items:center}.dfh .dfh-product-heading{padding-top:12px;align-self:end}.dfh .dfh-product-logo{width:180px;height:70px;object-fit:contain;object-position:left;margin-bottom:7px}.dfh .dfh-status{font-size:12px;letter-spacing:.05em;color:#68517c;margin-bottom:28px}.dfh .dfh-product h2{font-size:48px;line-height:1.5}.dfh .dfh-product-visual{grid-column:2;grid-row:1 / 3;padding:20px 0;max-height:580px;display:flex;align-items:center;justify-content:center}.dfh .dfh-product-visual img{max-height:540px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 22px 28px #7c5fa52b)}.dfh .dfh-product-description{align-self:start}.dfh .dfh-product-description p{max-width:450px}.dfh .dfh-product-description .dfh-small{margin-top:20px}.dfh .dfh-webwork h2{font-size:clamp(45px,6.1vw,88px);line-height:1.35;margin-bottom:30px}.dfh .dfh-web-intro{max-width:900px}.dfh .dfh-workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;position:relative;margin-top:65px}.dfh .dfh-workflow figure{position:relative;text-align:center;min-width:0}.dfh .dfh-workflow img{width:270px;height:250px;object-fit:contain;margin:auto;position:relative;z-index:1}.dfh .dfh-workflow figcaption{font-family:"Noto Serif CJK JP","Yu Mincho",serif;font-size:20px;margin-top:15px}.dfh .dfh-flow-line{position:absolute;left:70%;top:38%;width:70%;height:80px;z-index:0;overflow:visible}.dfh .dfh-flow-line path{fill:none;stroke:#d2b5f0;stroke-width:2}.dfh .dfh-workflow figure:last-child .dfh-flow-line{display:none}.dfh .dfh-web-cta{margin-top:65px}.dfh .dfh-web-cta p{font-family:"Noto Serif CJK JP","Yu Mincho",serif;color:#27202f;font-size:18px}.dfh .dfh-works{background:radial-gradient(ellipse at 100% 5%,#f5edfb 0,transparent 28%)}.dfh .dfh-work-grid{display:grid;grid-template-columns:1.13fr 1fr;gap:65px 55px;align-items:start;margin-top:55px}.dfh .dfh-work-0{grid-column:1 / 3;width:83%;margin-inline:auto}.dfh .dfh-work-2{padding-top:70px}.dfh .dfh-work-frame{overflow:hidden;aspect-ratio:1.5;background:#fcfafc}.dfh .dfh-work-frame img{width:100%;height:100%;object-fit:contain;transition:transform .25s}.dfh .dfh-work-caption{display:flex;align-items:baseline;gap:16px;margin-top:18px}.dfh .dfh-work-caption>span{font-size:11px;letter-spacing:.04em;color:#8e68ad;padding:1px 12px;background:#f6effb;border-radius:30px;white-space:nowrap}.dfh .dfh-work-caption h3{font-size:23px;letter-spacing:0}.dfh .dfh-work-caption b{margin-left:auto;font-size:20px;font-weight:400;color:#8f6cb0}.dfh .dfh-works .dfh-center{margin-top:65px}.dfh .dfh-approach{background:linear-gradient(170deg,#fff 50%,#f9f5fd);padding-block:135px}.dfh .dfh-approach-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:110px;align-items:center}.dfh .dfh-approach h2{margin:0;font-size:50px}.dfh .dfh-approach .dfh-link{margin-top:30px}.dfh .dfh-process{background:radial-gradient(ellipse at 95% 42%,#efe5fa99,transparent 60%),linear-gradient(115deg,#fff,#fcfaff 55%,#faf6fd)}.dfh .dfh-steps{list-style:none;margin:65px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:55px;text-align:center}.dfh .dfh-steps li{min-width:0}.dfh .dfh-step-art{position:relative;margin:0 auto 22px;height:180px;width:100%}.dfh .dfh-step-art img{height:165px;width:200px;object-fit:contain;margin:auto}.dfh .dfh-step-line{height:1px;background:#cdb7e8;position:absolute;top:100%;left:50%;width:calc(100% + 55px)}.dfh .dfh-step-line:before{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#b99bdc;left:-3px;top:-3px}.dfh .dfh-steps li:last-child .dfh-step-line{width:0}.dfh .dfh-step-no{color:#b49bd4;font-family:serif;font-size:24px}.dfh .dfh-steps h3{font-size:24px;margin:9px 0 18px;line-height:1.6}.dfh .dfh-steps p{font-size:14px;text-align:left;max-width:280px;margin:auto}.dfh .dfh-cost{border-top:1px solid var(--line);display:flex;gap:28px;justify-content:space-between;align-items:center;margin-top:65px;padding-top:38px}.dfh .dfh-cost h3{font-size:25px;margin-bottom:8px}.dfh .dfh-cost p{font-size:14px}.dfh .dfh-cost-links{display:flex;gap:25px;align-items:center}.dfh .dfh-cost-links .df-btn{margin-top:0!important}.dfh .dfh-faq-grid{display:grid;grid-template-columns:1fr 2fr;gap:70px}.dfh .dfh-faq h2{font-size:42px;white-space:nowrap}.dfh .dfh-faq details{border-top:1px solid #e2dce8}.dfh .dfh-faq details:last-child{border-bottom:1px solid #e2dce8}.dfh .dfh-faq summary{display:flex;gap:22px;align-items:center;padding:28px 4px;min-height:80px;cursor:pointer;list-style:none}.dfh .dfh-faq summary::-webkit-details-marker{display:none}.dfh .dfh-q{font-family:serif;font-size:29px;color:#b49bc9;line-height:1}.dfh .dfh-faq h3{font-size:18px;letter-spacing:0;flex:1;line-height:1.8}.dfh .dfh-faq-plus{flex:none;width:23px;height:23px;background:#f5effa;border-radius:50%;position:relative}.dfh .dfh-faq-plus:before,.dfh .dfh-faq-plus:after{content:"";position:absolute;width:9px;height:1px;background:#aa91c0;top:11px;left:7px}.dfh .dfh-faq-plus:after{transform:rotate(90deg)}.dfh .dfh-faq details[open] .dfh-faq-plus:after{transform:none}.dfh .dfh-answer{padding:0 38px 28px 55px;font-size:15px;line-height:2}.dfh .dfh-contact{padding-top:35px;padding-bottom:85px}.dfh .dfh-contact-inner{position:relative;min-height:500px;display:flex;align-items:center;background:radial-gradient(ellipse at 90% 90%,#e9d7f488,transparent 60%),linear-gradient(110deg,#fcfaff,#f7f1fb);padding:75px 65px;isolation:isolate;overflow:hidden}.dfh .dfh-contact-copy{position:relative;z-index:2;width:65%}.dfh .dfh-contact h2{font-size:46px;line-height:1.55;letter-spacing:-.06em}.dfh .dfh-contact-art{position:absolute;right:-80px;bottom:0;width:60%;height:100%;z-index:0}.dfh .dfh-person{width:100%;height:100%;object-fit:contain;object-position:right bottom}.dfh .dfh-contact-glass{position:absolute;width:160px;height:160px;left:5%;top:5%;transform:rotate(-14deg);opacity:.65}.dfh .dfh-contact-glass img{width:100%;height:100%;object-fit:contain}.dfh [data-loop]{animation:dfh-float 7s ease-in-out infinite;animation-play-state:paused}.dfh [data-loop].dfh-loop-active{animation-play-state:running}.dfh.dfh-enhanced [data-reveal]:not(.dfh-seen){opacity:0}.dfh.dfh-enhanced [data-reveal="work"]:not(.dfh-seen){opacity:1}.dfh.dfh-enhanced [data-reveal="work"]:not(.dfh-seen) img{clip-path:inset(100% 0 0)}.dfh [data-reveal].dfh-reveal-running{animation:dfh-icon-in .6s both}.dfh [data-reveal="product"].dfh-reveal-running{animation:dfh-product-in .6s both}.dfh [data-reveal="flow"].dfh-reveal-running{animation:dfh-icon-in .8s both}.dfh [data-reveal="work"].dfh-reveal-running{animation:none}.dfh [data-reveal="work"].dfh-reveal-running img{animation:dfh-work-in .7s both}.dfh [data-reveal="flow"].dfh-reveal-running path{stroke-dasharray:1;animation:dfh-line-in .8s both}.dfh .dfh-reveal-complete{animation:none!important;opacity:1!important}.dfh .dfh-reveal-complete img{animation:none!important;clip-path:none!important}@keyframes dfh-float{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -4px;rotate:.7deg}}@keyframes dfh-icon-in{0%{opacity:0;transform:translateY(12px) rotate(-3deg)}65%{opacity:1;transform:translateY(0) rotate(1deg)}100%{opacity:1;transform:none}}@keyframes dfh-product-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dfh-work-in{from{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}@keyframes dfh-line-in{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media(hover:hover) and (prefers-reduced-motion:no-preference){.dfh .dfh-work a:hover .dfh-work-frame img{transform:scale(1.02)}}
@media(max-width:1100px){.dfh .dfh-wrap{width:calc(100% - 64px)}.dfh .dfh-hero h1{font-size:6vw}.dfh .dfh-service{grid-template-columns:150px 1fr auto;gap:20px}.dfh .dfh-service-icon{width:145px}.dfh .dfh-service h3{font-size:29px}.dfh .dfh-product-grid{gap:40px}.dfh .dfh-product h2{font-size:40px}.dfh .dfh-approach-grid{gap:50px}.dfh .dfh-approach h2{font-size:42px}.dfh .dfh-cost{align-items:flex-start;flex-direction:column}.dfh .dfh-contact h2{font-size:39px}.dfh .dfh-faq-grid{gap:35px}.dfh .dfh-faq h2{font-size:35px}}
@media(max-width:760px){.dfh .dfh-wrap{width:calc(100% - 44px)}.dfh .dfh-section{padding:78px 0}.dfh .dfh-label{font-size:10px;letter-spacing:.22em;margin-bottom:20px}.dfh h2{font-size:34px;line-height:1.55;margin-bottom:22px;letter-spacing:-.06em}.dfh p{line-height:1.95}.dfh .dfh-sp{display:initial}.dfh .dfh-pc{display:none}.dfh .df-btn{font-size:14px;padding:15px 22px!important;min-height:54px;gap:15px}.dfh .dfh-hero{padding:26px 0 20px}.dfh .dfh-hero-grid{display:flex;flex-direction:column;min-height:0;gap:0}.dfh .dfh-hero-copy{padding:10px 0 0;width:100%}.dfh .dfh-hero h1{font-size:clamp(42px,12.2vw,68px);line-height:1.4;margin-bottom:22px}.dfh .dfh-hero-description{font-size:14px;line-height:2}.dfh .dfh-hero-actions{gap:12px}.dfh .dfh-hero-actions .df-btn{width:100%!important;margin-top:22px!important}.dfh .dfh-hero-actions .dfh-link{margin-left:0;font-size:12px}.dfh .dfh-hero-art{height:390px;width:100%;margin-top:4px}.dfh .dfh-motion-toggle{bottom:0;right:0;font-size:11px}.dfh .dfh-scroll{font-size:9px;margin-top:12px;padding-top:15px}.dfh .dfh-services{padding-top:75px}.dfh .dfh-services h2{margin-bottom:25px}.dfh .dfh-service{grid-template-columns:70px 1fr;column-gap:16px;row-gap:10px;padding:24px 0}.dfh .dfh-service-icon{width:72px;height:85px;grid-row:1}.dfh .dfh-service h3{font-size:25px;margin-bottom:6px;letter-spacing:-.04em}.dfh .dfh-service p{font-size:14px}.dfh .dfh-service>.dfh-link{grid-column:2;justify-self:start;font-size:12px;margin-top:0}.dfh .dfh-services .dfh-center{padding-top:10px}.dfh .dfh-product-grid{display:flex;flex-direction:column;gap:0;align-items:stretch}.dfh .dfh-product-logo{width:150px;height:55px}.dfh .dfh-status{font-size:11px;margin-bottom:20px}.dfh .dfh-product h2{font-size:35px;margin-bottom:10px}.dfh .dfh-product-visual{padding:25px 10px 30px;max-height:none}.dfh .dfh-product-visual img{max-height:420px;max-width:100%;margin:auto}.dfh .dfh-product-description{font-size:14px}.dfh .dfh-product-description .df-btn{width:100%!important}.dfh .dfh-webwork h2{font-size:43px;line-height:1.45}.dfh .dfh-web-intro{font-size:14px}.dfh .dfh-workflow{grid-template-columns:1fr;gap:12px;margin-top:35px}.dfh .dfh-workflow figure{display:grid;grid-template-columns:1.05fr 1fr;gap:12px;align-items:center;text-align:left}.dfh .dfh-workflow img{width:160px;height:155px}.dfh .dfh-workflow figcaption{font-size:17px;margin-top:0;position:relative;z-index:1}.dfh .dfh-flow-line{top:75%;left:7%;width:160px;height:60px;transform:rotate(75deg)}.dfh .dfh-web-cta{margin-top:32px}.dfh .dfh-web-cta p{font-size:16px;text-align:left}.dfh .dfh-web-cta .df-btn{width:100%!important}.dfh .dfh-work-grid{display:flex;flex-direction:column;gap:36px;margin-top:30px}.dfh .dfh-work-0{width:100%}.dfh .dfh-work-2{padding-top:0}.dfh .dfh-work{width:100%}.dfh .dfh-work-caption{gap:10px;margin-top:12px}.dfh .dfh-work-caption h3{font-size:21px}.dfh .dfh-work-caption>span{font-size:10px;padding-inline:10px}.dfh .dfh-works>div>p:not(.dfh-label){font-size:14px}.dfh .dfh-works .dfh-center{margin-top:36px}.dfh .dfh-approach-grid{display:block}.dfh .dfh-approach h2{font-size:35px;margin-bottom:25px}.dfh .dfh-approach p:not(.dfh-label){font-size:14px}.dfh .dfh-approach .dfh-link{margin-top:20px}.dfh .dfh-process>div>p:not(.dfh-label){font-size:14px}.dfh .dfh-steps{display:flex;flex-direction:column;gap:34px;margin-top:38px;text-align:left}.dfh .dfh-steps li{display:grid;grid-template-columns:75px 1fr;gap:18px}.dfh .dfh-step-art{height:100px;width:75px;margin:0;align-self:start;padding-top:12px}.dfh .dfh-step-art img{width:75px;height:85px}.dfh .dfh-step-line{width:1px!important;height:35px;left:50%;top:100%}.dfh .dfh-step-line:before{left:-3px}.dfh .dfh-steps li:last-child .dfh-step-line{display:none}.dfh .dfh-step-no{font-size:21px;line-height:1}.dfh .dfh-steps h3{font-size:21px;margin:6px 0 9px}.dfh .dfh-steps p{font-size:13px;margin:0;max-width:none}.dfh .dfh-cost{margin-top:38px;padding-top:28px;gap:20px}.dfh .dfh-cost h3{font-size:23px}.dfh .dfh-cost p{font-size:13px}.dfh .dfh-cost-links{flex-direction:column;width:100%;gap:19px}.dfh .dfh-cost-links .df-btn{width:100%!important}.dfh .dfh-faq-grid{display:block}.dfh .dfh-faq h2{font-size:34px;margin-bottom:12px}.dfh .dfh-faq-grid>div:first-child>.dfh-link{margin-bottom:26px;font-size:12px}.dfh .dfh-faq summary{gap:14px;padding:22px 0}.dfh .dfh-faq h3{font-size:16px;line-height:1.85}.dfh .dfh-q{font-size:25px}.dfh .dfh-answer{padding:0 12px 25px 34px;font-size:14px}.dfh .dfh-contact{padding-top:15px;padding-bottom:60px}.dfh .dfh-contact-inner{padding:35px 25px 0;min-height:650px;align-items:flex-start}.dfh .dfh-contact-copy{width:100%}.dfh .dfh-contact h2{font-size:30px;line-height:1.6;letter-spacing:-.065em}.dfh .dfh-contact p:not(.dfh-label){font-size:14px}.dfh .dfh-contact .df-btn{width:100%!important;font-size:13px;padding-inline:12px!important}.dfh .dfh-contact-art{width:100%;height:290px;right:-30px;bottom:0}.dfh .dfh-contact-glass{width:100px;height:100px;left:0;top:22%}}
@media(max-width:350px){.dfh .dfh-wrap{width:calc(100% - 36px)}.dfh .dfh-hero h1{font-size:39px}.dfh .dfh-hero-description{font-size:13px}.dfh .dfh-hero-art{height:330px}.dfh h2{font-size:30px}.dfh .dfh-services h2{font-size:29px}.dfh .dfh-service{grid-template-columns:60px 1fr;gap:12px}.dfh .dfh-service-icon{width:60px}.dfh .dfh-service h3{font-size:22px}.dfh .dfh-service p{font-size:13px}.dfh .dfh-product h2{font-size:30px}.dfh .dfh-webwork h2{font-size:37px}.dfh .dfh-contact-inner{padding-inline:19px}.dfh .dfh-contact h2{font-size:26px}.dfh .dfh-steps li{grid-template-columns:62px 1fr;gap:13px}.dfh .dfh-step-art{width:62px}.dfh .dfh-steps h3{font-size:19px}.dfh .dfh-cost h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.dfh *,.dfh *:before,.dfh *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.dfh [data-reveal]{opacity:1!important;transform:none!important}.dfh [data-reveal] img{clip-path:none!important}.dfh .dfh-motion-toggle{display:none}}
/* Operational controls and copy stay stable; preserve the public button fill. */
.dfh .df-btn:hover{transform:none!important}.dfh .dfh-service p,.dfh .dfh-product-description p:not(.dfh-small),.dfh .dfh-steps p,.dfh .dfh-cost p,.dfh .dfh-answer{font-size:16px}
@media(max-width:760px){.dfh p:not(.dfh-label):not(.dfh-status):not(.dfh-small),.dfh .dfh-faq h3,.dfh .dfh-answer{font-size:16px}.dfh .dfh-hero-description{font-size:15px!important}}
.dfh .dfh-contact-glass{width:300px;height:100%;left:40%;top:0;transform:none;opacity:.65}.dfh .dfh-contact-glass img{object-fit:cover;object-position:right center;mix-blend-mode:multiply}
@media(max-width:760px){.dfh .dfh-contact-glass{width:170px;height:100%;left:40%;top:0;opacity:.5}}
/* Approved section-image alignment, 2026-10-17. Latest copy overrides reference copy. */
@font-face{font-family:DFPreviewSerif;src:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/df-serif-Regular.woff) format('woff');font-weight:400 500;font-display:swap}
@font-face{font-family:DFPreviewSerif;src:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/df-serif-Bold.woff) format('woff');font-weight:600 900;font-display:swap}
.dfh{--line:#d7bdf4;--muted:#35323e}
.dfh h1,.dfh h2,.dfh h3{font-family:DFPreviewSerif,'Yu Mincho',serif;font-weight:600;letter-spacing:-.035em}
.dfh .dfh-wrap{width:min(1280px,calc(100% - 112px))}
.dfh .dfh-section{padding:110px 0}
.dfh h2{font-size:clamp(40px,5.15vw,72px);line-height:1.4;margin-bottom:28px}
.dfh .dfh-label{font-size:14px;letter-spacing:.28em;margin-bottom:28px}
.dfh .dfh-link{font-size:18px;color:#7846d8;border-color:#a67de8}
.dfh .df-btn{font-size:18px;padding:19px 40px!important;min-width:290px!important;border-radius:999px!important;letter-spacing:.03em}
.dfh .dfh-hero-grid{grid-template-columns:1fr 1fr;min-height:730px}
.dfh .dfh-hero h1{font-size:clamp(62px,7vw,98px);line-height:1.3;font-weight:600}
.dfh .dfh-hero h1 span:last-child{font-size:.74em;color:#cb32b7;margin-top:.12em}
.dfh .dfh-hero-description{font-family:DFPreviewSerif,serif;font-size:21px;line-height:1.9;color:#201c28}
.dfh .dfh-hero-art{height:730px;margin-left:-45px;width:calc(100% + 55px)}
.dfh .dfh-scroll{text-align:center}
.dfh .dfh-services h2{margin-bottom:50px;white-space:nowrap;font-size:clamp(40px,5vw,70px)}
.dfh .dfh-service{grid-template-columns:230px minmax(0,1fr) auto;gap:45px;padding:32px 0;min-height:230px}
.dfh .dfh-service:last-child{border-bottom:0}
.dfh .dfh-service-icon{width:215px;height:205px}
.dfh .dfh-service h3{font-size:42px;margin-bottom:10px}
.dfh .dfh-service p{font-size:18px;line-height:1.9}
.dfh .dfh-service>.dfh-link{font-size:16px}
.dfh .dfh-product{padding:85px 0;background:radial-gradient(ellipse at 80% 85%,#e6d2f4 0,transparent 65%),linear-gradient(120deg,#faf7ff,#f7f0fc)}
.dfh .dfh-product-grid{grid-template-columns:1fr 1.12fr;column-gap:35px}
.dfh .dfh-product-logo{width:225px;height:80px}
.dfh .dfh-status{display:table;border:1px solid #b48bd9;border-radius:30px;padding:2px 16px;font-family:DFPreviewSerif,serif;font-size:16px;line-height:1.7;margin-bottom:28px}
.dfh .dfh-product h2{font-size:clamp(42px,4.65vw,66px);line-height:1.4;margin-bottom:24px}
.dfh .dfh-product-description p{font-size:18px;line-height:1.9;max-width:none}
.dfh .dfh-product-description .dfh-small{font-size:13px}
.dfh .dfh-product-visual{min-height:590px;max-height:none;padding:35px 0}
.dfh .dfh-product-composition{position:relative;width:100%;padding:70px 40px 65px 25px;isolation:isolate}
.dfh .dfh-product-window{position:relative;z-index:1;border:3px solid #fff;border-radius:22px;background:linear-gradient(135deg,#fff,#fbf8ff);box-shadow:0 0 0 2px #e8d9fa,10px 15px 35px #c9a4e76b;overflow:hidden}
.dfh .dfh-product-window-bar{height:46px;display:flex;justify-content:space-between;align-items:center;padding:0 19px;color:white;background:linear-gradient(110deg,#aa86d6,#c6ace5);font:25px/1 DFPreviewSerif,serif}
.dfh .dfh-product-window-bar span{font:13px/1 sans-serif;letter-spacing:5px;opacity:.7}
.dfh .dfh-product-window>img{width:100%;height:385px;object-fit:contain;max-height:none;filter:none;padding:16px;background:white}
.dfh .dfh-product-visual .dfh-product-bubble{position:absolute;width:205px;height:190px;object-fit:contain;filter:drop-shadow(0 15px 18px #c8a6e144);max-height:none}
.dfh .dfh-product-bubble-back{right:-10px;top:-15px;z-index:0;transform:rotate(12deg) scale(1.12)}
.dfh .dfh-product-bubble-front{left:-65px;bottom:5px;z-index:2;transform:rotate(-10deg)}
.dfh .dfh-webwork h2{font-size:clamp(60px,7.3vw,104px);line-height:1.25}
.dfh .dfh-web-intro,.dfh .dfh-web-cta p{font:21px/1.9 DFPreviewSerif,serif;color:#211c2b}
.dfh .dfh-workflow{gap:70px;margin-top:65px}
.dfh .dfh-workflow img{width:285px;height:270px}
.dfh .dfh-workflow figcaption{font:24px/1.6 DFPreviewSerif,serif;margin-top:18px}
.dfh .dfh-flow-line{left:72%;top:43%;width:70%;height:100px}
.dfh .dfh-flow-line path{stroke:#d3b1f0;stroke-width:4;filter:drop-shadow(0 4px 4px #e9cbf5)}
.dfh .dfh-work-grid{grid-template-columns:1fr 1fr;gap:35px 55px;margin-top:20px}
.dfh .dfh-work-0{width:100%}
.dfh .dfh-work-2{padding-top:0}
.dfh .dfh-work-frame{aspect-ratio:1.95;background:transparent}
.dfh .dfh-work-0 .dfh-work-frame{aspect-ratio:2.25}
.dfh .dfh-work-caption{margin-top:10px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.dfh .dfh-work-caption h3{font-size:28px}
.dfh .dfh-work-caption>span{font:13px/1.6 DFPreviewSerif,serif;border:1px solid #e4d0fa}
.dfh .dfh-works .dfh-center{margin-top:18px}
.dfh .dfh-approach{padding:150px 0 70px}
.dfh .dfh-approach-grid{grid-template-columns:1.15fr 1fr;gap:55px;padding-bottom:110px;border-bottom:1px solid var(--line)}
.dfh .dfh-approach h2{font-size:clamp(46px,5.1vw,72px);line-height:1.5}
.dfh .dfh-approach-grid>div:last-child{padding-top:65px}
.dfh .dfh-approach p:not(.dfh-label){font:20px/2 DFPreviewSerif,serif;color:#27212e}
.dfh .dfh-approach .dfh-link{font-family:DFPreviewSerif,serif;font-size:21px;color:#211a2a}
.dfh .dfh-process{background:radial-gradient(ellipse at 80% 60%,#ebdcfa66,transparent 65%),linear-gradient(125deg,#fdfaff,#fff 50%,#f5effb)}
.dfh .dfh-process>div>p:not(.dfh-label){font:21px/1.8 DFPreviewSerif,serif;color:#292330}
.dfh .dfh-steps{gap:45px}
.dfh .dfh-step-art{height:210px;margin-bottom:28px}
.dfh .dfh-step-art img{width:225px;height:205px}
.dfh .dfh-step-line{width:calc(100% + 45px)}
.dfh .dfh-step-no{font:27px/1.5 DFPreviewSerif,serif}
.dfh .dfh-steps h3{font-size:27px}
.dfh .dfh-steps p{font:17px/1.8 DFPreviewSerif,serif;text-align:center;max-width:320px}
.dfh .dfh-cost h3{font-size:30px}
.dfh .dfh-cost p{font:17px/1.8 DFPreviewSerif,serif}
.dfh .dfh-faq-grid{grid-template-columns:1fr 1.8fr;column-gap:40px;row-gap:0;align-items:start}
.dfh .dfh-faq-grid>div:first-child{grid-column:1;grid-row:1}
.dfh .dfh-faq-list{grid-column:2;grid-row:1/3;border-left:1px solid var(--line);padding-left:40px}
.dfh .dfh-faq h2{font-size:clamp(34px,4.1vw,58px)}
.dfh .dfh-faq-link{grid-column:1;grid-row:2;align-self:start;justify-self:start;margin-top:0}
.dfh .dfh-faq summary{gap:25px;padding:30px 4px;min-height:110px}
.dfh .dfh-faq h3{font-size:25px;line-height:1.7}
.dfh .dfh-q{font-size:48px}
.dfh .dfh-faq-plus{width:36px;height:36px}
.dfh .dfh-faq-plus:before,.dfh .dfh-faq-plus:after{width:14px;left:11px;top:18px}
.dfh .dfh-answer{font:19px/1.9 DFPreviewSerif,serif;padding:0 35px 35px 70px}
.dfh .dfh-contact{padding-top:30px;padding-bottom:85px}
.dfh .dfh-contact-inner{min-height:700px;padding:95px 60px;background:radial-gradient(ellipse at 75% 70%,#ead5f6aa,transparent 70%),linear-gradient(120deg,#fff,#f3eafc)}
.dfh .dfh-contact-copy{width:67%}
.dfh .dfh-contact h2{font-size:clamp(42px,5.2vw,70px);line-height:1.45;margin-bottom:27px}
.dfh .dfh-contact p:not(.dfh-label){font:20px/1.8 DFPreviewSerif,serif;color:#201927}
.dfh .dfh-contact-art{right:-15%;width:78%;height:100%}
.dfh .dfh-person{object-fit:cover;object-position:62% bottom}
.dfh .dfh-contact-glass{width:65%;left:30%;opacity:.7}
@media(max-width:1100px) and (min-width:761px){.dfh .dfh-wrap{width:calc(100% - 70px)}.dfh .dfh-service{grid-template-columns:170px 1fr;gap:25px}.dfh .dfh-service>.dfh-link{grid-column:2}.dfh .dfh-service-icon{grid-row:1/3;width:160px;height:160px}.dfh .dfh-service h3{font-size:34px}.dfh .dfh-product-window>img{height:300px}.dfh .dfh-product-visual{min-height:500px}.dfh .dfh-product-bubble-front{left:-30px}.dfh .dfh-contact h2{font-size:47px}.dfh .dfh-faq h3{font-size:21px}}
@media(max-width:760px){
.dfh .dfh-wrap{width:calc(100% - 44px)}.dfh .dfh-section{padding:70px 0}.dfh .dfh-label{font-size:11px;margin-bottom:23px}.dfh h2{font-size:38px;line-height:1.45}.dfh .df-btn{min-width:0!important;font-size:16px;padding:17px 20px!important}.dfh .dfh-link{font-size:16px}
.dfh .dfh-hero-grid{min-height:0}.dfh .dfh-hero h1{font-size:clamp(43px,12.7vw,72px);line-height:1.3}.dfh .dfh-hero h1 span:last-child{font-size:.84em;margin-top:.13em}.dfh .dfh-hero-description{font-size:16px!important}.dfh .dfh-hero-art{width:calc(100% + 30px);height:430px;margin:10px -15px 0}.dfh .dfh-hero-actions .dfh-link{font-size:14px}
.dfh .dfh-services h2{white-space:normal;font-size:35px;margin-bottom:28px}.dfh .dfh-service{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:28px 0;min-height:0}.dfh .dfh-service-icon{width:145px;height:132px;margin-bottom:10px}.dfh .dfh-service h3{font-size:30px;margin-bottom:8px}.dfh .dfh-service p{font-size:16px;line-height:1.8}.dfh .dfh-service>.dfh-link{margin-top:14px;font-size:16px}
.dfh .dfh-product-heading{text-align:center;padding-top:0}.dfh .dfh-product-logo{width:180px;height:62px;object-position:center;margin:0 auto 5px}.dfh .dfh-status{font-size:13px;margin:0 auto 24px;padding:1px 15px}.dfh .dfh-product h2{font-size:35px;line-height:1.45;margin-bottom:0}.dfh .dfh-product-visual{min-height:0;padding:25px 0 15px}.dfh .dfh-product-composition{padding:35px 16px 45px}.dfh .dfh-product-window>img{height:300px;padding:12px}.dfh .dfh-product-window-bar{height:35px;font-size:20px;padding:0 12px}.dfh .dfh-product-window-bar span{font-size:9px;letter-spacing:3px}.dfh .dfh-product-visual .dfh-product-bubble{width:120px;height:120px}.dfh .dfh-product-bubble-back{right:-8px;top:-12px}.dfh .dfh-product-bubble-front{left:-16px;bottom:0}.dfh .dfh-product-description p{font-size:16px;line-height:1.9}.dfh .dfh-product-description .dfh-small{text-align:center;font-size:13px}
.dfh .dfh-webwork h2{font-size:clamp(40px,11vw,60px);line-height:1.3;max-width:330px}.dfh .dfh-web-intro{font:17px/1.85 DFPreviewSerif,serif}.dfh .dfh-workflow{gap:0;margin-top:15px}.dfh .dfh-workflow figure{grid-template-columns:1.1fr 1fr;gap:10px;min-height:170px}.dfh .dfh-workflow img{width:175px;height:170px}.dfh .dfh-workflow figcaption{font:17px/1.6 DFPreviewSerif,serif;margin-top:0}.dfh .dfh-flow-line{left:11%;top:79%;width:140px;height:60px}.dfh .dfh-web-cta{margin-top:25px}.dfh .dfh-web-cta p{font:17px/1.8 DFPreviewSerif,serif;text-align:center}
.dfh .dfh-works h2{font-size:36px}.dfh .dfh-work-grid{gap:30px;margin-top:25px}.dfh .dfh-work-frame,.dfh .dfh-work-0 .dfh-work-frame{aspect-ratio:1.55}.dfh .dfh-work-caption h3{font-size:24px}.dfh .dfh-work-caption>span{font-size:11px}.dfh .dfh-work-caption{padding-bottom:16px}.dfh .dfh-works .dfh-center .df-btn{width:100%!important}
.dfh .dfh-approach{padding-top:90px}.dfh .dfh-approach-grid{display:block;padding-bottom:65px}.dfh .dfh-approach h2{font-size:37px;line-height:1.55;margin-bottom:35px}.dfh .dfh-approach-grid>div:last-child{padding-top:0}.dfh .dfh-approach p:not(.dfh-label){font-size:18px;line-height:2}.dfh .dfh-approach .dfh-link{font-size:19px;margin-top:30px}
.dfh .dfh-process h2{font-size:37px}.dfh .dfh-process>div>p:not(.dfh-label){font:16px/1.9 DFPreviewSerif,serif}.dfh .dfh-steps{gap:35px}.dfh .dfh-steps li{grid-template-columns:82px 1fr;gap:20px}.dfh .dfh-step-art{width:82px;height:105px;margin:0}.dfh .dfh-step-art img{width:82px;height:95px}.dfh .dfh-step-no{font-size:23px}.dfh .dfh-steps h3{font-size:23px;line-height:1.45}.dfh .dfh-steps p{font:15px/1.8 DFPreviewSerif,serif;text-align:left}.dfh .dfh-cost h3{font-size:24px}.dfh .dfh-cost p{font-size:14px}
.dfh .dfh-faq-grid{display:flex;flex-direction:column;gap:0}.dfh .dfh-faq h2{font-size:38px;margin-bottom:30px}.dfh .dfh-faq-list{border-left:0;padding-left:0;width:100%}.dfh .dfh-faq-link{order:3;margin-top:28px}.dfh .dfh-faq summary{gap:16px;padding:25px 0;min-height:90px}.dfh .dfh-q{font-size:36px}.dfh .dfh-faq h3{font-size:19px!important;line-height:1.65}.dfh .dfh-faq-plus{width:30px;height:30px}.dfh .dfh-faq-plus:before,.dfh .dfh-faq-plus:after{left:8px;top:15px}.dfh .dfh-answer{font:16px/1.9 DFPreviewSerif,serif;padding:0 8px 28px 43px}
.dfh .dfh-contact{padding-top:20px}.dfh .dfh-contact-inner{padding:45px 25px 0;min-height:780px}.dfh .dfh-contact-copy{width:100%}.dfh .dfh-contact h2{font-size:35px;line-height:1.5;max-width:310px}.dfh .dfh-contact p:not(.dfh-label){font-size:16px}.dfh .dfh-contact-art{width:160%;height:370px;right:-40%;bottom:0}.dfh .dfh-person{object-fit:contain;object-position:center bottom}.dfh .dfh-contact-glass{width:65%;left:25%}
}
@media(max-width:350px){.dfh .dfh-wrap{width:calc(100% - 36px)}.dfh .dfh-hero h1{font-size:39px}.dfh .dfh-services h2{font-size:30px}.dfh .dfh-product h2{font-size:30px}.dfh .dfh-approach h2{font-size:31px}.dfh .dfh-contact h2{font-size:29px}.dfh .dfh-contact-inner{min-height:740px}.dfh .dfh-steps li{grid-template-columns:65px 1fr;gap:14px}.dfh .dfh-step-art{width:65px}.dfh .dfh-steps h3{font-size:21px}.dfh .dfh-cost h3{font-size:21px}}

/* Approved service artwork, clipped to each original icon without destructive alpha extraction. */
.dfh .dfh-service-crop{display:block;position:relative;width:100%;aspect-ratio:225/200;overflow:hidden;isolation:isolate}
.dfh .dfh-service-crop img{position:absolute!important;max-width:none!important;width:682.666667%!important;height:auto!important;left:-33.333333%;top:-145%;object-fit:initial!important}
.dfh .dfh-service-crop-ai img{top:-260%}
.dfh .dfh-service-crop-web img{top:-380%}
/* Correct real defects reported during owner review. */
.dfh .dfh-contact-art{isolation:isolate}
.dfh .dfh-contact-glass{z-index:0;pointer-events:none}
.dfh .dfh-person{position:relative;z-index:2}
.dfh.dfh-enhanced [data-reveal="work"]:not(.dfh-seen){opacity:0}
.dfh.dfh-enhanced [data-reveal="work"]:not(.dfh-seen) img{clip-path:none}
.dfh [data-reveal="work"].dfh-reveal-running{animation:dfh-work-fade .85s cubic-bezier(.2,.65,.3,1) both}
.dfh [data-reveal="work"].dfh-reveal-running img{animation:none;clip-path:none}
@keyframes dfh-work-fade{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
/* One shared major-heading scale; hero remains the intentionally larger H1. */
.dfh .dfh-section h2{font-size:clamp(40px,4.9vw,68px);line-height:1.45}
.dfh .dfh-faq-grid{grid-template-columns:1.1fr 1.8fr}
@media(max-width:760px){.dfh .dfh-section h2{font-size:clamp(30px,9.5vw,42px);line-height:1.45}.dfh .dfh-contact h2{font-size:clamp(29px,8.5vw,38px)}}
@media(prefers-reduced-motion:reduce){.dfh.dfh-enhanced [data-reveal="work"]:not(.dfh-seen){opacity:1}}
.dfh .dfh-product-composition{padding:0;aspect-ratio:1;min-height:0}
.dfh .dfh-product-visual .dfh-product-glass-art{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain;filter:none;z-index:0}
.dfh .dfh-product-window{position:absolute;left:11.6%;top:32.6%;width:75.4%;height:47.5%;border:0;border-radius:0;background:white;box-shadow:none;z-index:1;clip-path:polygon(0 0,100% 0,100% 100%,34% 100%,32% 80%,28% 72%,0 64%)}
.dfh .dfh-product-window-bar{display:none}
.dfh .dfh-product-window>img{width:100%;height:100%;padding:0 4px 0 28%;object-fit:contain;clip-path:inset(0 0 0 0)}
/* The actual product screenshot is retained; only its old surrounding LP background is clipped. */
.dfh .dfh-product-window>img{clip-path:inset(3.5% 3.2% 2% 5.5%)}
@media(max-width:760px){.dfh .dfh-product-composition{padding:0}.dfh .dfh-product-window>img{height:100%;padding:0 4px 0 28%}}
.dfh .dfh-faq h2{white-space:normal}
.dfh .dfh-product-window{left:22%;top:33%;width:63%;height:44%;clip-path:none;border-radius:8px}
.dfh .dfh-product-window>img{padding:0;clip-path:inset(3.5% 3.2% 2% 5.5% round 8px)}
@media(max-width:760px){.dfh .dfh-section h2{font-size:clamp(30px,9.5vw,42px)}.dfh .dfh-product-window>img{padding:0}}

/* Browser QA refinements: preserve live copy and the existing button colors. */
.dfh h2,.dfh h3{font-weight:500}
.dfh .df-btn{min-width:350px!important;padding:21px 44px!important;font-size:19px}
.dfh .dfh-product-window{left:22%;top:32.5%;width:63%;height:46%;background:transparent;display:flex;align-items:center;justify-content:center;overflow:visible;border-radius:0}
.dfh .dfh-product-window>img{flex:none;width:auto!important;max-width:100%;height:100%!important;object-fit:contain;padding:0;clip-path:inset(3.5% 3.2% 2% 5.5% round 8px)}
.dfh .dfh-faq-grid{grid-template-rows:min-content 1fr;row-gap:20px}
.dfh .dfh-contact-glass{left:0;width:100%;opacity:.65;mask-image:linear-gradient(to right,transparent 0%,#000 24%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 24%)}
.dfh .dfh-contact-glass img{object-fit:cover;object-position:center}
@media(max-width:760px){
.dfh .df-btn{min-width:0!important;font-size:16px;padding:18px 22px!important}
.dfh .dfh-product-visual{padding-top:0;padding-bottom:0}
.dfh .dfh-product-window>img{width:auto!important;height:100%!important;padding:0}
.dfh .dfh-contact h2{font-size:clamp(27px,8vw,34px);line-height:1.5}
.dfh .dfh-contact-inner{min-height:820px}
.dfh .dfh-contact-art{width:160%;height:370px;right:-40%}
.dfh .dfh-contact-glass{width:100%;left:0;opacity:.55}
}
/* Blend white source margins without changing the approved artwork. */
.dfh .dfh-service-crop,.dfh .dfh-workflow img,.dfh .dfh-step-art img{mix-blend-mode:multiply}
.dfh .dfh-person{filter:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/edge-cleanup.svg#person-edge)}
.dfh .dfh-product-visual .dfh-product-glass-art{filter:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/edge-cleanup.svg#glass-edge)}
@media(max-width:760px){.dfh .dfh-contact .df-btn{font-size:16px!important;min-height:60px;padding-inline:16px!important}}
@media(max-width:760px){.dfh .dfh-contact-inner{min-height:780px}}
@media(max-width:350px){.dfh .dfh-contact-inner{min-height:760px}.dfh .dfh-contact .df-btn{font-size:14px!important;padding-inline:10px!important;gap:10px;white-space:nowrap!important}}
/* Show a readable crop of the real answer, with the original front bubble above it. */
.dfh .dfh-product-window{left:10.8%;top:32%;width:74.4%;height:46%;background:white;display:block;overflow:hidden;border-radius:7px}
.dfh .dfh-product-window>img{position:relative;left:-6.5%;width:113%!important;max-width:none!important;height:auto!important;object-fit:initial;transform:translateY(-16%);clip-path:none;padding:0}
.dfh .dfh-product-visual .dfh-product-glass-front{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain;filter:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/edge-cleanup.svg#glass-edge);z-index:2;pointer-events:none;clip-path:polygon(7% 60%,32% 65%,34% 72%,31% 84%,28% 84%,28% 89%,21% 85%,5% 81%,1% 77%,3% 66%)}
/* Reveal completion must not remove this decorative foreground mask. */
.dfh .dfh-product-visual .dfh-product-glass-front{clip-path:polygon(7% 60%,32% 65%,34% 72%,31% 84%,28% 84%,28% 89%,21% 85%,5% 81%,1% 77%,3% 66%)!important}
/* Keep the actual answer text above the foreground decorative bubble. */
.dfh .dfh-product-window>img{transform:translateY(-28%)}

/* Section 03: restore the approved window caption using the existing live text. */
.dfh .dfh-product-composition>.dfh-product-window-bar{display:flex;position:absolute;left:14%;top:25%;width:69%;height:6.5%;padding:0;background:none;z-index:3;color:#fff;font:clamp(14px,2.2vw,24px)/1 DFPreviewSerif,serif;pointer-events:none}
.dfh .dfh-product-composition>.dfh-product-window-bar span{display:none}

/* Section 05: remove only built-in transparent outer margin; preserve source pixels and ratio. */
.dfh .dfh-works .dfh-work-frame img{transform:scale(1.12);transform-origin:center}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.dfh .dfh-works .dfh-work a:hover .dfh-work-frame img{transform:scale(1.135)}}

/* Requested copy and local visual adjustments; the evaluated ribbon and motion are retained. */
.dfh .dfh-hero h1>span:first-child{font-size:1em}
.dfh .dfh-hero h1>span:last-child{font-size:1em;color:inherit;margin-top:0}
.dfh .dfh-hero-accent{font:inherit;font-style:normal;color:#cb32b7}
.dfh .dfh-hero-description{font-size:18px;line-height:1.9;max-width:36em}
.dfh .dfh-section h2{font-weight:600}
.dfh .dfh-product-logo{width:260px;height:90px}
.dfh .dfh-service-crop,.dfh .dfh-step-art img{mask-image:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/soft-edge-mask.svg);mask-size:100% 100%;mask-repeat:no-repeat}
.dfh .dfh-contact-glass{mask-image:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/soft-edge-mask.svg);-webkit-mask-image:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/soft-edge-mask.svg);mask-size:100% 100%}
.dfh .df-btn{transition:transform .24s ease,box-shadow .24s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.dfh .df-btn:hover{transform:translateY(-3px)!important;box-shadow:0 12px 28px #9b75c930}}
@media(prefers-reduced-motion:no-preference){.dfh .df-btn:focus-visible{transform:translateY(-2px)!important}}
.dfh .df-btn:focus-visible{outline:2px solid #7952aa;outline-offset:5px}
@media(max-width:760px){.dfh .dfh-product-logo{width:210px;height:72px}.dfh .dfh-hero-description{font-size:16px!important}}

/* Independent transparent glass bubbles. The product screenshot remains a separate stationary layer. */
.dfh .dfh-product-composition{isolation:isolate}
.dfh .dfh-product-visual .dfh-product-glass-art{z-index:1;clip-path:polygon(9.5% 23.5%,85.5% 23.5%,85.5% 80%,34% 80%,34% 60%,9.5% 60%)!important}
.dfh .dfh-product-frame-repair{position:absolute;left:9.5%;top:60%;width:24.5%;height:20%;border-left:2px solid #fff;border-bottom:2px solid #fff;border-radius:0 0 0 15px;box-shadow:-2px 2px 0 1px #d5b8ec;z-index:1;pointer-events:none}
.dfh .dfh-product-window{z-index:2}
.dfh .dfh-product-composition>.dfh-product-window-bar{z-index:3}
.dfh .dfh-product-bubble{position:absolute;aspect-ratio:256/220;mask-image:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/chat-bubble-mask.svg);mask-size:100% 100%;mask-repeat:no-repeat;backdrop-filter:blur(1.25px) saturate(1.12);-webkit-backdrop-filter:blur(1.25px) saturate(1.12);background:linear-gradient(125deg,#ffffff30,#dcc2ed10 55%,#fff2);pointer-events:none}
.dfh .dfh-product-visual .dfh-product-bubble>img{width:100%;height:100%;max-height:none;margin:0;object-fit:contain;filter:none}
.dfh .dfh-product-bubble-back{width:38%;right:-.5%;top:10%;z-index:0;transform:rotate(11deg);animation-name:dfh-bubble-back;animation-duration:9.4s;animation-delay:-2.1s}
.dfh .dfh-product-bubble-front{width:34%;left:0;top:62%;z-index:4;transform:rotate(-9deg);animation-name:dfh-bubble-front;animation-duration:7.8s}
@keyframes dfh-bubble-front{0%,100%{translate:0 0;rotate:0deg}50%{translate:2px -7px;rotate:-1.3deg}}
@keyframes dfh-bubble-back{0%,100%{translate:0 0;rotate:0deg}50%{translate:-3px -4px;rotate:1.1deg}}
@media(prefers-reduced-motion:reduce){.dfh .dfh-product-bubble{backdrop-filter:none;-webkit-backdrop-filter:none}}

/* One transient text-only reveal; no persistent filter remains after completion. */
.dfh .dfh-filter-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.dfh [data-reveal="approach"].dfh-reveal-running{animation:dfh-approach-in 1.05s cubic-bezier(.18,.65,.3,1) both}
@keyframes dfh-approach-in{0%{opacity:0;transform:translateX(-42px) skewX(-5deg) scaleX(1.025)}40%{opacity:.72;transform:translateX(-16px) skewX(2deg) scaleX(.99)}74%{opacity:1;transform:translateX(2px) skewX(-.6deg)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.dfh [data-reveal="approach"]{filter:none!important;transform:none!important;opacity:1!important}}

/* Existing connector paths keep their draw timing; layered glass and glints. */
.dfh .dfh-flow-line path{fill:none;stroke-linecap:round;filter:none}
.dfh .dfh-flow-line .dfh-flow-shadow{stroke:#cdb5ed3b;stroke-width:12;filter:blur(3px);transform:translateY(4px)}
.dfh .dfh-flow-line .dfh-flow-glass{stroke-width:8;stroke:var(--dfh-glass-stroke)}
.dfh .dfh-flow-line .dfh-flow-glint{stroke:#ffffffb8;stroke-width:1.4;transform:translateY(-2px)}

/* Keep description inside its copy column and feather only CTA decoration/background. */
.dfh .dfh-hero-copy{min-width:0}
.dfh .dfh-hero-description{width:100%;max-width:31em}
.dfh .dfh-contact-inner{background:none}
.dfh .dfh-contact-inner:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 75% 70%,#ead5f6aa,transparent 70%),linear-gradient(120deg,#fff,#f3eafc);mask-image:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/soft-edge-mask.svg);mask-size:100% 100%}
.dfh .dfh-contact-glass{width:80.8%}
@media(max-width:760px){.dfh .dfh-contact-glass{width:75%}}

/* Clean code-native frame fallback while the unoccluded approved frame export is pending. */
.dfh .dfh-product-visual .dfh-product-glass-art{visibility:hidden}
.dfh .dfh-product-frame-repair{left:9.5%;top:23.5%;width:76%;height:56.5%;border:2px solid #ffffffd9;border-radius:20px 20px 7px 7px;background:linear-gradient(180deg,#c39af2c9 0%,#b68de9ab 15%,#ffffff75 15.2%,#ffffffe6 100%);box-shadow:inset 3px 2px 3px #fff9,-3px 0 2px #c09ae38c,0 9px 24px #aa81c42b}
.dfh .dfh-product-frame-repair:after{content:"● ● ●";position:absolute;right:2%;top:4.6%;font:clamp(8px,1.3vw,16px)/1 sans-serif;letter-spacing:.07em;color:#f5eaff}

/* CLEAN FRAME ASSET APPLIED: visual review still required. */
.dfh .dfh-product-visual .dfh-product-glass-art{visibility:visible;clip-path:none!important}
.dfh .dfh-product-frame-repair{display:none}

/* Fade source ground shadows before their canvas edges, including letterboxed step artwork. */
.dfh .dfh-service-crop,.dfh .dfh-step-art img{mask-image:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/soft-shadow-mask.svg)}

/* Glass recovery: material presence and independently floating product window. */
.dfh .dfh-product-screen{position:absolute;inset:0;z-index:1;animation-name:dfh-screen-float;animation-duration:12.8s;animation-delay:-1.8s}
.dfh .dfh-product-screen>.dfh-product-window-bar{display:flex;position:absolute;left:14%;top:25%;width:69%;height:6.5%;padding:0;background:none;z-index:3;color:#fff;font:clamp(14px,2.2vw,24px)/1 DFPreviewSerif,serif;pointer-events:none}
.dfh .dfh-product-screen>.dfh-product-window-bar span{display:none}
.dfh .dfh-product-bubble{background:linear-gradient(125deg,#dfc4f13d,#b888db22 55%,#fff3);backdrop-filter:url(#dfh-chat-refraction) blur(.3px) saturate(1.18);-webkit-backdrop-filter:url(#dfh-chat-refraction) blur(.3px) saturate(1.18)}
@keyframes dfh-screen-float{0%,100%{translate:0 2px;rotate:-.30deg}50%{translate:3px -10px;rotate:.25deg}}
@media(prefers-reduced-motion:reduce){.dfh .dfh-product-screen{animation:none!important;translate:none;rotate:none}.dfh .dfh-product-bubble{backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Requested mobile composition; desktop positioning remains unchanged. */
@media(max-width:760px){
.dfh .dfh-hero-grid{position:relative;display:block;min-height:690px}
.dfh .dfh-hero-copy{position:relative;z-index:2;padding-bottom:40px}
.dfh .dfh-hero-description{max-width:76%}
.dfh .dfh-hero-art{position:absolute;z-index:auto;top:230px;right:-16px;width:400px;height:440px;margin:0;pointer-events:none}
.dfh .dfh-hero-art iframe{position:relative;z-index:0;transform:scale(.72);transform-origin:right top;pointer-events:none}
.dfh .dfh-motion-toggle{z-index:5;min-height:44px;pointer-events:auto}
.dfh .dfh-service-icon{margin-left:auto;margin-right:auto}
.dfh .dfh-product-heading{text-align:left}
.dfh .dfh-product-logo{object-position:left;margin-left:0;margin-right:auto}
.dfh .dfh-webwork h2{font-size:clamp(31px,9vw,40px);line-height:1.35;max-width:none}
.dfh .dfh-webwork-tail{white-space:nowrap}
.dfh .dfh-webwork-tail>.dfh-sp{display:none}
.dfh .dfh-contact-inner{min-height:560px;padding:40px 20px 35px}
.dfh .dfh-contact-copy{width:100%}
.dfh .dfh-contact-copy>p:not(.dfh-label){max-width:62%}
.dfh .dfh-contact-art{width:112%;height:340px;right:-20%;top:170px;bottom:auto;pointer-events:none}
.dfh .dfh-person{object-position:right bottom}
}
@media(min-width:410px) and (max-width:760px){.dfh .dfh-hero-art iframe{transform:scale(.80)}}
@media(max-width:350px){.dfh .dfh-hero-grid{min-height:650px}.dfh .dfh-hero-art{top:210px}.dfh .dfh-hero-art iframe{transform:scale(.61)}.dfh .dfh-contact-inner{min-height:550px;padding-inline:18px}.dfh .dfh-contact-art{top:120px}}

@media(max-width:760px){.dfh .dfh-approach .dfh-phrase-keep{white-space:nowrap}.dfh .dfh-step-line{display:none}}

@media(max-width:760px){
.dfh .dfh-hero-grid{min-height:620px}
.dfh .dfh-motion-toggle{top:310px;bottom:auto}
.dfh .dfh-hero-art iframe{mask-image:url(//digital-frog-ai.com/wp-content/plugins/digital-frog-top-review/public/assets/hero-mobile-viewport-mask.svg);mask-size:100% 100%}
.dfh .dfh-contact .dfh-phrase-keep{white-space:nowrap}
}

@media(max-width:760px){
.dfh .dfh-product-heading{width:100%;align-self:stretch;text-align:left}
.dfh .dfh-product-heading .dfh-status{margin-left:0;margin-right:auto}
.dfh .dfh-process h2{font-size:clamp(29px,8.6vw,37px);white-space:nowrap}
.dfh .dfh-hero-description .dfh-phrase-keep{white-space:nowrap}
}

@media(max-width:350px){.dfh .dfh-contact-copy>p:not(.dfh-label){font-size:15px}}

/* Requested narrow revision: raise only the mobile Hero visual. */
@media(max-width:760px){.dfh .dfh-hero-art{top:90px}}
@media(max-width:350px){.dfh .dfh-hero-art{top:75px}}

/* Final section-edge spacing */
@media(min-width:761px){
.dfh .dfh-services{padding-bottom:80px}
.dfh .dfh-product{padding-top:64px}
.dfh .dfh-webwork{padding-bottom:72px}
.dfh .dfh-works{padding-top:72px;padding-bottom:72px}
.dfh .dfh-approach{padding-top:84px}
}
@media(max-width:760px){
.dfh .dfh-hero{padding-bottom:16px}
.dfh .dfh-hero-grid{min-height:0}
.dfh .dfh-hero-copy{padding-bottom:24px}
.dfh .dfh-services{padding-top:48px;padding-bottom:44px}
.dfh .dfh-product{padding-top:48px;padding-bottom:48px}
.dfh .dfh-webwork{padding-top:48px;padding-bottom:44px}
.dfh .dfh-works{padding-top:48px;padding-bottom:44px}
.dfh .dfh-approach{padding-top:52px;padding-bottom:44px}
.dfh .dfh-approach-grid{padding-bottom:32px}
.dfh .dfh-process{padding-top:48px;padding-bottom:48px}
.dfh .dfh-faq{padding-top:48px;padding-bottom:52px}
.dfh .dfh-contact{padding-top:16px;padding-bottom:52px}
}

/* Design-final: natural mobile CTA letter spacing; preserve padding and font sizes. */
@media(max-width:760px){.dfh .dfh-contact h2{letter-spacing:.02em}}


/* Hero readability revision. Keep the approved graphic and motion unchanged. */
@media(min-width:761px){
.dfh .dfh-hero-actions{margin-top:32px}
}
@media(max-width:760px){
.dfh .dfh-hero-art{top:clamp(135px,calc(50vw - 45px),170px)}
.dfh .dfh-hero-description{margin-top:244px;width:100%;max-width:none}
}
@media(min-width:410px) and (max-width:760px){
.dfh .dfh-hero-description{margin-top:280px}
}
@media(max-width:350px){
.dfh .dfh-hero-description{margin-top:220px}
}


/* Mobile description rise: leave the heading and artwork in place. */
@media(max-width:760px){.dfh .dfh-hero-description{margin-top:164px}}
@media(min-width:410px) and (max-width:760px){.dfh .dfh-hero-description{margin-top:200px}}
@media(max-width:350px){.dfh .dfh-hero-description{margin-top:160px}}
/* Only the selected page gets this class. Keep theme header/footer/widget CSS. */
.dftop-page .dfh{margin:0}
.dftop-page .dfh{--df-main:#7b5cff;--df-pink:#ef3f8f;--df-orange:#ff7a45;--df-dark:#07111f;--df-bg:#f6f3ff;--df-text:#111827}
/* Keep existing global heading decorations outside the new TOP body. */
.dftop-page .dfh h2,.dftop-page .dfh h3{padding:0;border:0;background:none}
.dftop-page .dfh h2::before,.dftop-page .dfh h2::after,.dftop-page .dfh h3::before,.dftop-page .dfh h3::after{content:none!important;display:none!important}
/* SWELL's transparent mobile header overlays the content flow by 48px. */
@media(max-width:760px){.dftop-page .dfh{padding-top:48px}}