
.jwd-inline-hook { width:100%; max-width:none; margin:2rem auto; color-scheme:dark; border-radius:18px; overflow:hidden; }
.jwd-inline-hook .jwd-inline-main { padding:2.5rem 0 3rem; }
.jwd-inline-hook .container { width:min(1120px,calc(100% - 32px)); }
.jwd-inline-hook .steps { margin:1.6rem 0 2.4rem; }
.jwd-inline-hook .inline-owner { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,.58fr); gap:1.4rem; align-items:center; margin:0 0 2.6rem; padding:clamp(1rem,3vw,2rem); border:1px solid var(--line); border-radius:var(--radius); background:linear-gradient(135deg,#203f5b,#162f47); box-shadow:var(--shadow); }
.jwd-inline-hook .inline-owner h2 { margin-bottom:.65rem; }
.jwd-inline-hook .inline-owner-copy>p:not(.eyebrow) { color:#e1e9f0; }
.jwd-inline-hook .inline-owner-story { margin:.55rem 0 0!important; color:#d1deea!important; font-size:.82rem; }
.jwd-inline-hook .inline-owner-image { display:block; width:min(100%,260px); max-height:320px; object-fit:contain; justify-self:center; filter:drop-shadow(0 10px 18px rgb(0 0 0 / 24%)); }
.jwd-inline-hook .booking-section { margin-top:0; }
.jwd-inline-hook .booking-layout { grid-template-columns:minmax(0,1fr); }
.jwd-inline-hook .booking-card#booking-calendar { scroll-margin-top:2rem; }
.jwd-inline-hook .panel#estimate { margin-top:2.6rem; scroll-margin-top:2rem; }
.jwd-inline-hook .faq-section { margin-top:2.8rem; }
.jwd-inline-hook .booking-section,.jwd-inline-hook #estimate,.jwd-inline-hook #faq { scroll-margin-top:1.5rem; }
.jwd-inline-hook .step p { font-size:.95rem; }
@media(max-width:700px) { .jwd-inline-hook .inline-owner { grid-template-columns:1fr; text-align:center; } .jwd-inline-hook .inline-owner-image { max-height:260px; } .jwd-inline-hook .steps { grid-template-columns:1fr; gap:.7rem; margin-bottom:2rem; } .jwd-inline-hook .panel-header { display:block; } .jwd-inline-hook .rough-label { display:inline-block; margin-top:.8rem; } .jwd-inline-hook .meter-frame { height:980px; } }

/* Animate every icon inside a clickable control on pages carrying this flow. */
a:hover svg, a:focus-visible svg, button:not(:disabled):hover svg, button:not(:disabled):focus-visible svg, [role="button"]:hover svg, [role="button"]:focus-visible svg, summary:hover svg, summary:focus-visible svg { transition: transform .2s ease, filter .2s ease; transform: translateY(-2px) scale(1.08); filter: drop-shadow(0 3px 5px rgb(0 0 0 / 28%)); }
.jwd-hook .faq-item summary::after { transition: transform .2s ease, background-color .2s ease; }
.jwd-hook .faq-item summary:hover::after, .jwd-hook .faq-item summary:focus-visible::after { transform: scale(1.12); }
.jwd-hook .button span[aria-hidden="true"] { display: inline-block; transition: transform .2s ease; }
.jwd-hook .button:hover span[aria-hidden="true"], .jwd-hook .button:focus-visible span[aria-hidden="true"] { transform: translateY(-2px) scale(1.08); }
@media (prefers-reduced-motion: reduce) { a:hover svg, a:focus-visible svg, button:not(:disabled):hover svg, button:not(:disabled):focus-visible svg, [role="button"]:hover svg, [role="button"]:focus-visible svg, summary:hover svg, summary:focus-visible svg, .jwd-hook .faq-item summary::after, .jwd-hook .button span[aria-hidden="true"] { transition: none; transform: none; filter: none; } }

/* Reviewed service text beneath the conversion flow. */
.jwd-hook .jwd-clean-service { font-size:1rem;line-height:1.65;color:#fff;max-width:1100px;margin:2rem auto; }
.jwd-hook .jwd-clean-service :is(p,li,h2,h3,h4) {color:#fff;}
.jwd-hook .jwd-clean-service :is(h2,h3,h4) {font-size:clamp(1.25rem,2.5vw,1.8rem);line-height:1.3;margin:2rem 0 .8rem;}
.jwd-hook .jwd-clean-service ul {padding-left:1.4rem;}
.jwd-hook .jwd-clean-service li {margin:.35rem 0;}
.jwd-hook .jwd-clean-service a {color:#fff;text-underline-offset:.2rem;}
.jwd-hook .jwd-clean-service a:hover {color:#ff8177;}
.jwd-hook .jwd-clean-service a:focus-visible {outline:3px solid #c83b2c;outline-offset:3px;}

.jwd-hook .jwd-clean-service > section { margin-block:1.5rem;padding:clamp(1rem,3vw,1.6rem);border:1px solid #526d84;border-radius:14px;background:#192f43; }
.jwd-hook .jwd-clean-service > section > h2 {margin-top:0;}
.jwd-hook .jwd-clean-service .jwd-related-services {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:.7rem;list-style:none;padding:0;}
.jwd-hook .jwd-clean-service .jwd-related-services a {display:block;padding:.7rem .9rem;border:2px solid #526d84;border-radius:10px;text-decoration:none;background:#29445e;}

/* Owner name is real, accessible text beneath the portrait. */
.jwd-owner-portrait { margin:0; justify-self:center; text-align:center; max-width:100%; }
.jwd-owner-portrait img { margin-inline:auto; }
.jwd-owner-signature { display:block; margin:.55rem 0 0; color:#fff!important; font-family:"Segoe Script","Apple Chancery","Brush Script MT",cursive!important; font-size:clamp(1.25rem,2.6vw,1.8rem)!important; font-weight:400!important; font-style:italic; line-height:1.5; text-align:center; }

/* Bundled calligraphic font makes the owner signature consistent across devices. */
@font-face {font-family:"JWD Signature";src:url("/media/plg_content_jwdinlinehook/jwd-signature.woff?v=rc13") format("woff");font-style:normal;font-weight:400;font-display:swap;}
.jwd-owner-signature {font-family:"JWD Signature",cursive!important;font-style:normal!important;font-weight:400!important;font-size:clamp(1.55rem,3vw,2rem)!important;line-height:1.4;letter-spacing:.015em;}
