/* Approved Paper light · Studio presentation; adapted for WordPress. */
:root{font-family:'DM Sans',Arial,sans-serif;color:#243330;background:#f9faf8;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px}
button,input,select,textarea{font:inherit}
button{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{display:block;max-width:100%}
h1,h2,h3,h4,p{margin-top:0}
::selection{background:#bfdad1;color:#143a31}
:focus-visible{outline:3px solid #197d72;outline-offset:4px}
.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}
.section{padding:112px 0}
.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.055em;color:var(--accent);margin:0 0 20px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:48px;margin-bottom:42px}
.section-head h2,.value-section h2,.about-section h2,.contact-section h2,.detail-story h2{font:400 clamp(2.5rem,4.3vw,4.4rem)/1.03 var(--display);letter-spacing:-.045em;margin:0}
.section-head>p{max-width:370px;color:var(--muted);line-height:1.65;margin:0 0 5px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:16px 22px;border:1px solid transparent;border-radius:var(--radius);font-weight:700;font-size:.9rem;line-height:1.1;white-space:nowrap;transition:transform .2s,background .2s,color .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--accent);color:#fff}
.button-primary:hover{background:var(--accent-dark)}
.text-link{display:inline-flex;align-items:center;gap:13px;font-weight:700;font-size:.9rem;border-bottom:1px solid currentColor;padding-bottom:5px}
.text-link span,.email-link span{transition:transform .2s}
.text-link:hover span,.email-link:hover span{transform:translate(3px,-3px)}
.site-header{height:86px;background:var(--surface);border-bottom:1px solid var(--line);position:relative;z-index:20}
.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{font-size:1.21rem;font-weight:700;letter-spacing:-.06em;display:inline-flex;align-items:baseline;gap:.23em;white-space:nowrap}
.brand span{font-weight:500}
.brand i{width:5px;height:5px;border-radius:50%;background:var(--accent);margin-left:2px}
.site-header nav{display:flex;align-items:center;gap:33px;font-size:.84rem;font-weight:600}
.site-header nav>a:not(.nav-contact):hover,.site-footer nav a:hover{color:var(--accent)}
.nav-contact{border:1px solid var(--accent);border-radius:var(--radius);padding:12px 16px;display:inline-flex;gap:18px;align-items:center}
.nav-contact:hover{background:var(--accent);color:#fff}
.menu-button{display:none;border:0;background:transparent;width:42px;height:42px;padding:11px}
.menu-button span{display:block;height:2px;background:currentColor;margin:5px 0}
.hero{overflow:hidden}
.hero-copy h1{font:400 clamp(3.9rem,5.7vw,6.9rem)/.99 var(--display);letter-spacing:-.065em;margin:0 0 28px}
.hero-copy h1 em{font-style:normal;color:var(--accent)}
.hero-copy>p:not(.eyebrow){font-size:1.1rem;line-height:1.65;color:var(--muted);max-width:520px;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.hero-visual{min-width:0}
.preview-shell{width:100%;height:100%;overflow:hidden;border:1px solid #d9dfdc;border-radius:8px;background:#fff;box-shadow:0 15px 48px rgba(27,48,43,.12);display:flex;flex-direction:column;container-type:inline-size}
.preview-shell.phone{max-width:330px;border-radius:28px;border:7px solid #26322f;box-shadow:0 28px 70px rgba(18,41,35,.22)}
.preview-bar{height:28px;min-height:28px;background:#f3f5f4;border-bottom:1px solid #e2e6e3;display:flex;align-items:center;gap:10px;padding:0 12px;color:#8b9693;font-size:9px}
.window-dots{display:flex;gap:4px}
.window-dots i{width:5px;height:5px;background:#cdd5d1;border-radius:50%}
.preview-address{background:#fff;border-radius:3px;text-align:center;padding:3px 5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.preview-bar-end{font-size:10px}
.phone .preview-bar{height:23px;min-height:23px;padding:0 8px}
.phone .window-dots{display:none}
.preview-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#aabcb5 transparent;flex:1}
.preview-scroll::-webkit-scrollbar{width:7px}
.preview-scroll::-webkit-scrollbar-thumb{background:#aabcb5;border-radius:8px}
.preview-shell.phone .preview-scroll{overflow-x:hidden}
.hero-preview .preview-scroll,.card-preview .preview-scroll{pointer-events:none;scrollbar-width:none}
.hero-preview .preview-scroll::-webkit-scrollbar,.card-preview .preview-scroll::-webkit-scrollbar{display:none}
.hill{position:absolute;width:125%;height:80%;border-radius:50% 50% 0 0;left:-10%;bottom:-43%}
.hill-one{background:#6d8765;transform:rotate(-7deg)}
.hill-two{background:#466a4b;bottom:-59%;left:13%;transform:rotate(9deg)}
.path{position:absolute;background:#d3c3a3;width:23%;height:100%;bottom:-35%;left:42%;transform:perspective(170px) rotateX(35deg) rotate(-12deg);border-radius:70% 70% 0 0}
.plant{position:absolute;bottom:-4%;width:8%;height:55%;background:repeating-linear-gradient(140deg,#33563e 0 6px,#426a47 7px 13px);border-radius:60% 60% 15% 15%}
.plant-one{left:8%;height:70%}
.plant-two{left:23%;height:44%}
.plant-three{right:12%;height:76%}
.work-section{background:var(--paper)}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 28px}
.work-card{min-width:0}
.work-card-visual{display:block;overflow:hidden;background:#e9eeeb;height:350px;padding:25px 25px 0;position:relative}
.work-card-visual:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(18,43,35,.04)}
.work-card-visual:hover .card-preview{transform:translateY(-6px)}
.card-preview{height:395px;box-shadow:0 8px 28px rgba(26,46,39,.13);transition:transform .25s}
.work-card-wildacre .work-card-visual{background:#dce5d5}
.work-card-clearcoast .work-card-visual{background:#d8eef1}
.work-card-aisling .work-card-visual{background:#e3d9ce}
.work-card-body{padding:20px 0 0}
.work-card-meta{display:flex;gap:13px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.76rem;font-weight:600}
.project-type{display:inline-flex;align-items:center;padding:5px 9px;border-radius:2px;font-weight:700}
.project-type.real{background:#e2f1e8;color:#27513f}
.project-type.demo{background:#eceef5;color:#474b69}
.work-card-title{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-top:12px}
.work-card-title h3{font:400 2rem/1.1 var(--display);letter-spacing:-.04em;margin:0 0 6px}
.work-card-title p{margin:0;color:var(--muted);font-size:.9rem}
.work-card-title>a{width:38px;height:38px;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%;transition:background .2s,color .2s}
.work-card-title>a:hover{background:var(--accent);color:#fff}
.value-section{background:var(--value-bg,#e7f0eb)}
.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}
.value-grid h2{max-width:540px}
.value-copy p{font-size:1.07rem;line-height:1.8;color:var(--muted)}
.value-copy p:first-child{color:var(--ink)}
.value-copy .text-link{margin-top:13px}
.services-section{background:var(--paper)}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.services-grid article{border:1px solid var(--line);padding:28px;min-height:258px}
.services-grid h3{font:400 1.65rem var(--display);letter-spacing:-.035em;margin:23px 0 10px}
.services-grid p{color:var(--muted);line-height:1.65;font-size:.9rem;max-width:270px}
.service-icon{display:block;width:42px;height:40px;position:relative}
.service-icon:before,.service-icon:after{content:'';position:absolute;border:2px solid var(--accent)}
.icon-landing:before{inset:2px 0 5px}
.icon-landing:after{left:6px;right:6px;top:10px;height:3px;background:var(--accent);box-shadow:0 8px 0 var(--accent)}
.icon-portfolio:before{inset:2px 9px 8px 0;transform:rotate(-8deg)}
.icon-portfolio:after{inset:9px 0 1px 10px;transform:rotate(8deg)}
.icon-business:before{inset:2px 1px}
.icon-business:after{left:8px;right:8px;top:10px;height:4px;background:var(--accent);box-shadow:0 10px 0 var(--accent)}
.services-foot{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);margin-top:34px;padding-top:27px}
.services-foot p{max-width:620px;line-height:1.6;color:var(--muted);margin:0}
.about-section{border-top:1px solid var(--line);background:var(--surface)}
.about-grid{display:grid;grid-template-columns:.78fr 1.22fr;align-items:center;gap:12%}
.about-grid>div:last-child{max-width:590px}
.about-grid h2{margin-bottom:24px}
.about-grid p:not(.eyebrow){font-size:1.05rem;line-height:1.75;color:var(--muted)}
.contact-section{background:var(--contact-bg,#e9f1ec)}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%}
.contact-grid h2{max-width:510px;margin-bottom:25px}
.contact-grid>div>p:not(.eyebrow){line-height:1.7;max-width:390px;color:var(--muted)}
.email-link{font-weight:700;display:inline-flex;gap:12px;margin-top:28px;border-bottom:1px solid currentColor;padding-bottom:6px}
.contact-form{background:var(--paper);border:1px solid var(--line);padding:32px;display:grid;gap:20px}
.contact-form label{display:grid;gap:8px;font-size:.82rem;font-weight:700}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;background:#fff;border:1px solid #c8d3cd;border-radius:var(--radius);padding:13px 14px;outline:0;color:var(--ink);font-weight:400;font-size:.9rem}
.contact-form textarea{resize:vertical;min-height:120px}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}
.contact-form button{justify-self:start}
.form-help{font-size:.75rem;color:var(--muted);margin:-9px 0 0}
.site-footer{background:var(--footer-bg,#172f29);color:#fff;padding:54px 0 20px}
.footer-main{display:flex;justify-content:space-between;gap:30px;align-items:start}
.footer-main .brand{font-size:1.35rem}
.footer-main p{color:#b7cbc2;font-size:.9rem;margin:10px 0}
.site-footer nav{display:flex;gap:26px;color:#d9e5df;font-size:.82rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;color:#9bb7a9;font-size:.73rem;margin-top:65px;padding-top:18px}
.dh-site{--display:'Manrope',Arial,sans-serif!important;--accent:#3049dd!important;--accent-dark:#2237ae!important;--ink:#182553!important;--muted:#586284!important;--line:#d5dcf2!important;--surface:#f0f3ff!important;--value-bg:#e3e9ff!important;--about-bg:#d1dbff!important;--contact-bg:#e8edff!important;--footer-bg:#182456!important;--radius:12px!important;font-family:'Manrope',Arial,sans-serif}
.dh-site .eyebrow{letter-spacing:0}
.dh-site .brand{letter-spacing:-.07em}
.dh-site .hero-mobile{padding:74px 0 90px;background:radial-gradient(circle at 80% 28%,#e0e7ff 0 21%,transparent 45%),#f0f3ff}
.mobile-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:2%;min-height:600px;align-items:center}
.dh-site .hero-copy{position:relative;z-index:2}
.dh-site .hero-copy h1{font-size:clamp(3.6rem,5.3vw,6.6rem);font-weight:800;letter-spacing:-.075em;max-width:660px}
.dh-site .hero-copy h1 em{font-style:normal;text-decoration:underline;text-decoration-color:#a2b0ff;text-decoration-thickness:.12em;text-underline-offset:.11em}
.mobile-hero-note{display:flex;align-items:center;gap:12px;margin-top:60px;color:var(--muted);font-size:.83rem;font-weight:600}
.note-icon{border:1px solid #9aa9eb;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;color:var(--accent);font-size:1.2rem}
.mobile-hero-visual{height:600px;position:relative}
.mobile-hero-back{position:absolute;width:88%;height:390px;top:56px;right:0;opacity:.88;transform:rotate(2deg)}
.mobile-hero-back .preview-shell{border-radius:12px}
.mobile-hero-front{position:absolute;width:35%;height:500px;left:0;top:0;transform:rotate(-4deg)}
.mobile-hero-front .phone{max-width:none}
.mobile-feature-link{position:absolute;right:0;bottom:9px;background:#fff;border:1px solid var(--line);border-radius:12px;width:62%;padding:16px 18px;box-shadow:0 14px 36px rgba(26,43,113,.11)}
.mobile-feature-link>span{display:block;font-size:.68rem;color:var(--muted);margin-bottom:6px}
.mobile-feature-link strong{display:flex;justify-content:space-between;align-items:center;font-size:1.05rem}
.dh-site .section-head h2,.dh-site .value-section h2,.dh-site .about-section h2,.dh-site .contact-section h2{font-weight:800;letter-spacing:-.07em}
.dh-site .work-card-visual{border-radius:14px}
.dh-site .work-card-title h3{font-weight:800;font-size:1.45rem;letter-spacing:-.05em}
.dh-site .services-grid article{border-radius:14px;background:#f9faff}
.dh-site .services-grid h3{font-weight:800;font-size:1.25rem}
.dh-site .contact-form{border-radius:18px}
.dh-site .preview-shell{border-color:#c8d1ee}
.detail-heading{padding:60px 0 73px}
.back-link{display:inline-block;font-size:.82rem;font-weight:700;color:var(--accent);margin-bottom:43px}
.detail-heading-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:end}
.detail-heading h1{font:400 clamp(4rem,7vw,8rem)/.92 var(--display);letter-spacing:-.065em;margin:24px 0 15px}
.detail-line{font:400 clamp(1.4rem,2.3vw,2.2rem)/1.2 var(--display);color:var(--accent);margin:0}
.detail-summary>p{font-size:1.08rem;line-height:1.7;color:var(--muted);max-width:490px}
.detail-summary dl{margin:30px 0 0;border-top:1px solid var(--line)}
.detail-summary dl div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:10px 0;font-size:.8rem}
.detail-summary dt{color:var(--muted)}
.detail-summary dd{margin:0;font-weight:700;text-align:right}
.detail-preview-section{padding:75px 0 55px;background:var(--preview-bg,#e8efeb)}
.preview-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:25px}
.preview-heading h2{font:400 clamp(2.3rem,4vw,4rem)/1 var(--display);letter-spacing:-.05em;margin:0 0 12px}
.preview-heading p:not(.eyebrow){color:var(--muted);font-size:.85rem;margin:0}
.device-switch{display:flex;border:1px solid var(--line);padding:4px;background:#fff;border-radius:var(--radius)}
.device-switch button{border:0;background:transparent;padding:9px 16px;color:var(--muted);border-radius:var(--radius);font-size:.78rem;font-weight:700}
.device-switch button.active{background:var(--accent);color:#fff}
.detail-preview-stage{height:680px;background:color-mix(in srgb,var(--accent) 12%,white);border:1px solid color-mix(in srgb,var(--accent) 20%,white);display:flex;align-items:center;justify-content:center;padding:35px;overflow:hidden}
.detail-preview{height:100%;width:100%;max-width:1050px;transition:width .35s,border-radius .35s}
.detail-preview.phone{width:330px}
.preview-under{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;font-size:.75rem;color:var(--muted)}
.demo-note{color:var(--accent);font-weight:700}
.detail-story{background:var(--paper)}
.detail-story .section-head h2{max-width:620px}
.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:60px}
.story-grid article{border-top:1px solid var(--line);padding-top:15px}
.story-grid article>span{color:var(--accent);font-size:.72rem;font-weight:700}
.story-grid h3{font:400 1.8rem var(--display);margin:30px 0 12px}
.story-grid p{color:var(--muted);line-height:1.7;font-size:.91rem}
.detail-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:48px}
.detail-tags span{border:1px solid var(--line);padding:10px 14px;font-size:.75rem;font-weight:700}
.next-project{padding:75px 0;background:var(--surface)}
.next-project .container>a:not(.back-link){display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0 30px}
.next-project a span{font-size:.8rem;color:var(--muted);min-width:120px}
.next-project a strong{font:400 clamp(2rem,3.5vw,3.6rem) var(--display);letter-spacing:-.04em}
.next-project a i{font-style:normal;font-size:2rem;margin-left:auto}
.next-project .back-link{margin:20px 0 0}
.dh-site .detail-heading h1,.dh-site .preview-heading h2,.dh-site .story-grid h3,.dh-site .next-project a strong{font-weight:800;letter-spacing:-.07em}
.dh-site .detail-preview-stage{border-radius:20px}
.dh-site .detail-tags span{border-radius:30px}
.dh-site .detail-preview-section{--preview-bg:#e6ebff}
@media(max-width:950px){.container{width:min(100% - 40px,1200px)}
.hero-copy h1{font-size:clamp(3.4rem,7vw,5.5rem)}
.mobile-hero-grid{grid-template-columns:1fr 1fr}
.mobile-hero-front{width:42%}
.mobile-hero-back{width:88%;top:85px}
.mobile-feature-link{width:72%}
}
@media(max-width:720px){.container{width:calc(100% - 36px)}
.section{padding:76px 0}
.site-header{height:68px!important}
.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);padding:15px 18px 22px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px rgba(0,0,0,.07);flex-direction:column;align-items:stretch;gap:0}
.site-header.menu-open nav{display:flex}
.site-header nav a{padding:14px 5px}
.site-header nav .nav-contact{margin-top:10px;justify-content:space-between;padding:13px}
.menu-button{display:block}
.hero-copy h1{font-size:clamp(3.55rem,13vw,6rem)}
.hero-copy>p:not(.eyebrow){font-size:1rem}
.hero-actions{gap:19px}
.mobile-hero-grid{grid-template-columns:1fr;gap:50px}
.dh-site .hero-mobile{padding:58px 0 56px}
.dh-site .hero-copy h1{font-size:clamp(3.4rem,11.5vw,5.5rem)}
.mobile-hero-note{margin-top:25px}
.mobile-hero-visual{height:500px}
.mobile-hero-back{width:86%;height:320px;top:100px}
.mobile-hero-front{width:37%;height:390px}
.mobile-feature-link{width:68%;bottom:6px}
.section-head{display:block;margin-bottom:32px}
.section-head>p{margin-top:18px;max-width:530px}
.work-grid{gap:30px 15px}
.work-card-visual{height:260px;padding:15px 15px 0}
.card-preview{height:290px}
.work-card-title h3{font-size:1.6rem}
.work-card-title p{font-size:.77rem}
.work-card-title>a{width:32px;height:32px;flex:none}
.value-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}
.value-grid{gap:20px}
.about-grid{gap:40px}
.services-grid{grid-template-columns:1fr;gap:12px}
.services-grid article{min-height:0;padding:25px}
.services-foot{align-items:start;flex-direction:column}
.contact-grid{gap:35px}
.site-footer nav{flex-wrap:wrap}
.detail-heading{padding:35px 0 55px}
.back-link{margin-bottom:30px}
.detail-heading-grid{grid-template-columns:1fr;gap:30px}
.detail-heading h1{font-size:clamp(4rem,12vw,6rem)}
.detail-preview-section{padding:55px 0 35px}
.preview-heading{align-items:start;flex-direction:column}
.detail-preview-stage{height:570px;padding:16px}
.detail-preview.phone{width:min(330px,100%)}
.story-grid{grid-template-columns:1fr;gap:18px;margin-top:40px}
.story-grid h3{margin-top:12px}
}
@media(max-width:480px){.hero-copy h1{font-size:clamp(3.15rem,13vw,4.2rem)}
.hero-actions .button{width:100%}
.hero-actions .text-link{margin-top:4px}
.mobile-hero-visual{height:410px}
.mobile-hero-back{height:235px;top:90px;width:88%}
.mobile-hero-front{height:320px;width:43%}
.mobile-feature-link{width:73%;bottom:0;padding:11px}
.mobile-feature-link strong{font-size:.86rem}
.mobile-feature-link>span{font-size:.58rem}
.work-grid{grid-template-columns:1fr;gap:36px}
.work-card-visual{height:275px}
.card-preview{height:300px}
.work-card-title h3{font-size:1.85rem}
.form-row{grid-template-columns:1fr}
.contact-form{padding:22px}
.footer-main,.footer-bottom{flex-direction:column}
.footer-main{gap:28px}
.footer-bottom{gap:8px;margin-top:40px}
.detail-heading h1{font-size:3.85rem}
.detail-preview-stage{height:480px}
.detail-preview.phone{width:min(270px,100%)}
.preview-under{align-items:start;flex-direction:column}
.next-project a span{min-width:70px}
.next-project a strong{font-size:1.7rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
.dh-site .mobile-hero-front .preview-scroll{pointer-events:auto;scrollbar-width:thin}
.dh-site .mobile-hero-front .preview-scroll::-webkit-scrollbar{display:block}
.dh-site .text-link{border:0;border-left:3px solid var(--accent);border-radius:0;padding:3px 0 3px 13px;gap:0;color:var(--ink);font-weight:700;text-decoration:none;transition:color .18s}
.dh-site .text-link:hover{color:var(--accent)}
.dh-site .text-link span{display:none}
.dh-site .button{border-radius:7px;transition:background .18s}
.dh-site .button:hover{transform:none}
.dh-site .button span{display:none}
.dh-site .nav-contact{border-radius:7px}
.dh-site .nav-contact span{display:none}
.dh-site .value-section .eyebrow,.dh-site .services-section .eyebrow{display:inline-flex;width:max-content;align-items:center;padding:8px 13px;margin-bottom:23px;border:1px solid #b9c8fc;border-radius:999px;background:#f7f9ff;color:#263fa7;font-size:.75rem;font-weight:700;line-height:1;letter-spacing:0}
.dh-site .services-section .eyebrow{background:#eef2ff}
.dh-site .value-copy .text-link{margin-top:17px}
.dh-site .work-card-title>a{display:block;width:auto;height:auto;flex:none;border:0;border-bottom:1px solid currentColor;border-radius:0;padding:4px 0 3px;color:var(--accent);font-size:.75rem;font-weight:700;white-space:nowrap}
.dh-site .work-card-title>a:hover{background:transparent;color:var(--accent-dark)}
.dh-site .mobile-feature-link strong span{font-size:.68rem;white-space:nowrap}
.dh-site .services-grid{display:block;border-top:1px solid var(--line)}
.dh-site .services-grid article{display:grid;grid-template-columns:.8fr 1.2fr;align-items:start;gap:28px;min-height:0;padding:26px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.dh-site .services-grid .service-icon{display:none}
.dh-site .services-grid h3{font-size:1.25rem;line-height:1.3;margin:0}
.dh-site .services-grid p{max-width:560px;margin:0;font-size:.92rem}
.dh-site .services-foot{margin-top:0;border:0;padding-top:25px}
.dh-site .work-section .eyebrow,.dh-site .about-section .eyebrow,.dh-site .contact-section .eyebrow,.dh-site .detail-preview-section .eyebrow,.dh-site .detail-story .eyebrow,.dh-site .next-project .eyebrow{display:none}
@media(max-width:720px){.dh-site .work-card-title>a{font-size:.72rem}
.dh-site .services-grid article{grid-template-columns:1fr;gap:8px;padding:21px 0}
}
.dh-site .text-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--accent);border-radius:7px;background:transparent;color:var(--accent);padding:11px 17px;font-size:.84rem;line-height:1.2;transition:background .18s,color .18s,border-color .18s}
.dh-site .text-link:hover{background:var(--accent);color:#fff}
.dh-site .hero-actions{gap:12px}
.dh-site .hero-actions .button{min-height:48px;padding-inline:22px}
.dh-site .hero-actions .text-link{min-height:48px;padding-inline:22px}
.dh-site .work-card-title>a{border:1px solid var(--line);border-radius:6px;padding:9px 12px;color:var(--accent);transition:background .18s,border-color .18s}
.dh-site .work-card-title>a:hover{background:#edf1ff;border-color:var(--accent)}
.dh-site .packages-section{background:#fff}
.dh-site .packages-section .section-head{margin-bottom:35px}
.dh-site .packages-section .section-head h2{max-width:750px}
.dh-site .package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:stretch}
.dh-site .package-card{display:flex;flex-direction:column;min-width:0;border:1px solid #d5dcf2;border-radius:11px;background:#fff;overflow:hidden}
.dh-site .package-card-featured{border:2px solid var(--accent);box-shadow:0 18px 38px rgba(36,57,151,.09)}
.dh-site .package-card-top{min-height:256px;padding:28px 26px 25px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:start}
.dh-site .package-card-featured .package-card-top{background:#eef2ff;border-bottom-color:#d2dcff;padding:27px 25px 25px}
.dh-site .package-number{font-size:.72rem;font-weight:800;letter-spacing:.02em;color:var(--accent)}
.dh-site .package-card h3{font-size:clamp(1.55rem,2.1vw,2rem);font-weight:800;letter-spacing:-.06em;line-height:1.13;margin:22px 0 12px}
.dh-site .package-card-top p{font-size:.88rem;line-height:1.55;color:var(--muted);margin:0 0 22px}
.dh-site .package-scope{display:block;margin-top:auto;color:var(--ink);font-size:.8rem;font-weight:800}
.dh-site .package-includes{padding:27px 26px 23px;flex:1}
.dh-site .package-card-featured .package-includes{padding-inline:25px}
.dh-site .package-includes h4{font-size:.84rem;margin:0 0 21px}
.dh-site .package-includes ul{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.dh-site .package-includes li{display:grid;grid-template-columns:17px 1fr;gap:9px;color:var(--muted);font-size:.83rem;line-height:1.5}
.dh-site .package-includes li:before{content:'✓';font-weight:800;color:var(--accent)}
.dh-site .package-action{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 26px;background:#eef2ff;color:var(--accent);font-size:.81rem;font-weight:800;transition:background .18s,color .18s}
.dh-site .package-card-featured .package-action{background:var(--accent);color:#fff;padding-inline:25px}
.dh-site .package-action:hover{background:var(--accent-dark);color:#fff}
.dh-site .package-action span{font-size:1.2rem;line-height:1}
.dh-site .packages-foot{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px}
.dh-site .packages-foot p{margin:0;max-width:580px;font-size:.86rem;color:var(--muted);line-height:1.55}
.dh-site .inner-hero{background:#e7ecff;padding:54px 0 95px}
.dh-site .inner-hero .back-link{display:block;width:max-content;margin-bottom:67px}
.dh-site .inner-hero .eyebrow{display:inline-flex;width:max-content;padding:8px 13px;border:1px solid #b9c8fc;border-radius:999px;background:#f7f9ff;color:#263fa7;margin:0 0 24px;line-height:1}
.dh-site .inner-hero h1{font-size:clamp(3.7rem,7vw,6.9rem);font-weight:800;letter-spacing:-.075em;line-height:1.02;max-width:1020px;margin:0 0 25px}
.dh-site .inner-intro{font-size:1.06rem;line-height:1.7;color:var(--muted);max-width:650px;margin:0}
.dh-site .about-page-body{background:#fff}
.dh-site .about-page-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:center}
.dh-site .about-page-mark{min-height:440px;background:#e7ecff;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}
.dh-site .about-page-mark:before{content:'';position:absolute;border:1px solid #b3c2fb;width:90%;aspect-ratio:1;border-radius:50%;transform:translate(34%,35%)}
.dh-site .about-page-mark span{font-size:clamp(7rem,16vw,14rem);font-weight:800;letter-spacing:-.16em;line-height:1;color:#3049dd;z-index:1;transform:translateX(-.08em)}
.dh-site .about-page-mark small{position:absolute;bottom:24px;left:24px;font-size:.72rem;font-weight:800;color:#5364ac}
.dh-site .about-page-copy h2,.dh-site .about-page-end h2,.dh-site .faq-side h2,.dh-site .inner-cta h2{font-size:clamp(2.3rem,4vw,4rem);font-weight:800;letter-spacing:-.07em;line-height:1.08;margin:0 0 23px}
.dh-site .about-page-copy p{font-size:1rem;line-height:1.8;color:var(--muted);margin:0 0 20px}
.dh-site .about-page-copy .text-link{margin-top:14px}
.dh-site .about-page-end{background:#eef2ff;padding:87px 0}
.dh-site .about-page-end .container{display:grid;grid-template-columns:1fr .8fr;gap:13%;align-items:end}
.dh-site .about-page-end .eyebrow{margin-bottom:15px}
.dh-site .about-page-end h2{max-width:650px;margin:0}
.dh-site .about-page-end p:last-child{color:var(--muted);line-height:1.8;margin:0}
.dh-site .inner-cta{background:#dce5ff;padding:65px 0}
.dh-site .inner-cta .container{display:flex;justify-content:space-between;align-items:center;gap:25px}
.dh-site .inner-cta h2{margin:0;max-width:700px}
.dh-site .inner-cta .button{flex:none}
.dh-site .faq-body{background:#fff}
.dh-site .faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:11%}
.dh-site .faq-side{position:sticky;top:34px;align-self:start}
.dh-site .faq-side h2{font-size:clamp(2.15rem,3.2vw,3.3rem);max-width:390px}
.dh-site .faq-side p{color:var(--muted);line-height:1.7;max-width:330px;margin:0 0 25px}
.dh-site .faq-list{border-top:1px solid var(--line)}
.dh-site .faq-list details{border-bottom:1px solid var(--line)}
.dh-site .faq-list summary{list-style:none;display:grid;grid-template-columns:34px 1fr 25px;gap:14px;align-items:start;padding:23px 0;cursor:pointer;font-size:.98rem;font-weight:800;line-height:1.5}
.dh-site .faq-list summary::-webkit-details-marker{display:none}
.dh-site .faq-list summary span{color:var(--accent);font-size:.72rem;padding-top:4px}
.dh-site .faq-list summary b{font-size:1.25rem;font-weight:500;color:var(--accent);line-height:1.2;text-align:right}
.dh-site .faq-list details[open] summary b{transform:rotate(45deg)}
.dh-site .faq-list details p{margin:0 30px 25px 48px;max-width:600px;color:var(--muted);font-size:.9rem;line-height:1.75}
@media(max-width:1050px){.dh-site .package-grid{gap:10px}
.dh-site .package-card-top{padding:23px 20px;min-height:270px}
.dh-site .package-card-featured .package-card-top{padding:22px 19px}
.dh-site .package-includes{padding:23px 20px}
.dh-site .package-card-featured .package-includes{padding-inline:19px}
.dh-site .package-action,.dh-site .package-card-featured .package-action{padding:16px 20px}
}
@media(max-width:780px){.dh-site .package-grid{grid-template-columns:1fr}
.dh-site .package-card-top,.dh-site .package-card-featured .package-card-top{min-height:0;padding:25px}
.dh-site .package-includes,.dh-site .package-card-featured .package-includes{padding:25px}
.dh-site .package-action,.dh-site .package-card-featured .package-action{padding:17px 25px}
.dh-site .packages-foot{align-items:start;flex-direction:column}
.dh-site .about-page-grid,.dh-site .faq-grid{grid-template-columns:1fr;gap:45px}
.dh-site .about-page-mark{min-height:300px}
.dh-site .about-page-mark span{font-size:10rem}
.dh-site .faq-side{position:static}
.dh-site .about-page-end .container{grid-template-columns:1fr;gap:20px}
.dh-site .inner-cta .container{align-items:start;flex-direction:column}
}
@media(max-width:480px){.dh-site .hero-actions .text-link{width:100%}
.dh-site .inner-hero{padding:35px 0 65px}
.dh-site .inner-hero .back-link{margin-bottom:50px}
.dh-site .inner-hero h1{font-size:clamp(3rem,12vw,4.4rem)}
.dh-site .about-page-mark{min-height:260px}
.dh-site .about-page-mark span{font-size:8rem}
.dh-site .about-page-end{padding:65px 0}
.dh-site .faq-list summary{grid-template-columns:24px 1fr 20px;gap:9px;font-size:.92rem}
.dh-site .faq-list details p{margin-left:33px}
}
.dh-site .site-header{position:sticky;top:0;z-index:100;background:#f0f3ff;transition:box-shadow .2s}
.dh-site .site-header.is-scrolled{box-shadow:0 5px 18px rgba(24,37,83,.08)}
.dh-site #work,.dh-site #services,.dh-site #contact{scroll-margin-top:100px}
.dh-site .hero-mobile{background:#f0f3ff}
.dh-site .hero-copy h1 em{text-decoration:none}
.dh-site .mobile-hero-note{margin-top:42px;color:#59668d;font-weight:700}
.dh-site .value-copy p{margin-bottom:22px}
.dh-site .value-copy .text-link{margin-top:4px}
.dh-site .package-card-top,.dh-site .package-card-featured .package-card-top{min-height:225px}
.dh-site .package-card h3{margin:0 0 14px}
.dh-site .package-card-top p{margin:0 0 20px}
.dh-site .package-scope{font-size:.76rem;color:#40518f}
.dh-site .package-includes ul{gap:17px}
.dh-site .packages-foot{border-top:1px solid var(--line);padding-top:26px}
.dh-site .packages-foot h3{font-size:.88rem;letter-spacing:-.02em;margin:0 0 7px}
.dh-site .packages-foot p{font-size:.82rem;max-width:720px}
.dh-site .about-page-grid{grid-template-columns:.7fr 1.3fr;align-items:start;gap:11%;max-width:1050px}
.dh-site .about-page-grid>h2{font-size:clamp(2.3rem,4vw,4rem);font-weight:800;line-height:1.08;letter-spacing:-.07em;margin:0}
.dh-site .about-page-copy{max-width:640px}
.dh-site .about-page-copy p:first-child{color:var(--ink)}
.dh-site .faq-grid{display:block;max-width:860px}
.dh-site .faq-list summary{grid-template-columns:1fr 25px;gap:20px}
.dh-site .faq-list details p{margin:0 35px 25px 0}
.dh-site .preview-under{justify-content:flex-end}
.dh-site .detail-story .section-head{margin-bottom:30px}
.dh-site .story-grid{margin-top:0}
.dh-site .story-grid article{padding-top:15px}
.dh-site .next-project{padding:66px 0}
.back-to-top{position:fixed;right:22px;bottom:22px;z-index:90;display:flex;align-items:center;justify-content:center;gap:8px;min-width:75px;height:44px;padding:0 14px;border:1px solid #aebef4;border-radius:7px;background:#fff;color:#263fa7;font:800 .78rem 'Manrope',Arial,sans-serif;box-shadow:0 6px 18px rgba(24,37,83,.12);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s,background .2s,color .2s}
.back-to-top span:first-child{font-size:1.13rem;line-height:1}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.back-to-top:hover{background:#3049dd;color:#fff}
.back-to-top:focus-visible{outline:3px solid #3049dd;outline-offset:3px}
@media(max-width:780px){.dh-site .package-card-top,.dh-site .package-card-featured .package-card-top{min-height:0}
.dh-site .about-page-grid{grid-template-columns:1fr;gap:22px}
.dh-site .faq-grid{max-width:none}
}
@media(max-width:720px){.dh-site #work,.dh-site #services,.dh-site #contact{scroll-margin-top:78px}
.dh-site .hero-mobile{padding-top:52px}
.dh-site .mobile-hero-note{margin-top:25px}
.dh-site .value-grid{gap:24px}
.dh-site .faq-list summary{grid-template-columns:1fr 22px;gap:13px;font-size:.93rem}
.dh-site .faq-list details p{margin:0 25px 24px 0}
.back-to-top{right:15px;bottom:calc(15px + env(safe-area-inset-bottom));height:42px;min-width:69px}
}
.dh-site .package-card-top,.dh-site .package-card-featured .package-card-top{min-height:170px}
.dh-site .about-page-grid{display:block;max-width:730px}
.dh-site .about-page-copy{max-width:none}
.dh-site .about-page-copy p:first-child{font-size:1.2rem;line-height:1.65}
@media(max-width:780px){.dh-site .package-card-top,.dh-site .package-card-featured .package-card-top{min-height:0}
}
@media(max-width:720px){.back-to-top{width:42px;min-width:42px;padding:0}
.back-to-top span:last-child{display:none}
.dh-site .about-page-copy p:first-child{font-size:1.1rem}
}
.dh-site #work,.dh-site #services,.dh-site #contact{scroll-margin-top:24px}
@media(max-width:720px){.dh-site #work,.dh-site #services,.dh-site #contact{scroll-margin-top:16px}
}
.header-top-button{display:none}
@media(max-width:720px){.dh-site .back-to-top{display:none}
.dh-site .header-top-button.is-visible{display:grid;place-items:center;flex:none;width:36px;height:36px;margin-left:auto;margin-right:6px;border:1px solid #b6c4f4;border-radius:6px;background:#fff;color:#3049dd;font:800 1.2rem/1 'Manrope',Arial,sans-serif}
.dh-site .header-top-button:hover{background:#3049dd;color:#fff}
}
@media(max-width:360px){.dh-site .mobile-feature-link{width:84%}
.dh-site .mobile-feature-link strong span{font-size:.74rem}
}

.dh-site{min-width:0}
.dh-site{--accent:#20272b!important;--accent-dark:#06090b!important;--ink:#1b2225!important;--muted:#586267!important;--line:#d9dedd!important;--surface:#fff!important;--value-bg:#f1f3f2!important;--about-bg:#e8ecea!important;--contact-bg:#f4f6f5!important;--footer-bg:#171d20!important;--palette-pale:#f5f7f6;--palette-pale-strong:#e9eeec;--palette-preview:#eef1f0;--palette-shadow:rgba(27,34,37,.09)}
@media(min-width:781px){.dh-site .hero-copy h1{font-size:clamp(3.65rem,3.9vw,4.85rem);line-height:1.04;letter-spacing:-.07em;max-width:660px}
}
.dh-site .site-header,.dh-site .hero-mobile{background:var(--surface)}
.dh-site .site-header.is-scrolled{box-shadow:0 5px 18px var(--palette-shadow)}
.dh-site .mobile-hero-note{color:var(--muted)}
.dh-site .mobile-hero-front{width:40%;height:auto;aspect-ratio:9/18.5}
.dh-site .mobile-hero-front .phone{border-color:var(--ink)}
.dh-site .mobile-feature-link{box-shadow:0 14px 36px var(--palette-shadow)}
.dh-site .inner-hero{background:var(--surface);padding:38px 0 56px;border-bottom:1px solid var(--line)}
.dh-site .inner-hero .back-link{margin-bottom:38px}
.dh-site .inner-hero h1{font-size:clamp(2.45rem,4.6vw,4rem);line-height:1.08;letter-spacing:-.065em;margin:0 0 13px}
.dh-site .inner-intro{font-size:1rem;line-height:1.65}
.dh-site .inner-cta{background:var(--palette-pale-strong)}
.dh-site .package-card{border-color:var(--line)}
.dh-site .package-card-featured{border-color:var(--accent);box-shadow:0 18px 38px var(--palette-shadow)}
.dh-site .package-card-featured .package-card-top,.dh-site .package-action{background:var(--palette-pale)}
.dh-site .package-card-featured .package-card-top{border-color:var(--line)}
.dh-site .package-card-featured .package-action{background:var(--accent)}
.dh-site .package-scope{color:var(--ink)}
.dh-site .work-card-title>a:hover{background:var(--palette-pale)}
.dh-site .detail-preview-section{--preview-bg:var(--palette-preview)}
.dh-site .header-top-button.is-visible{border-color:var(--line);color:var(--accent)}
.dh-site .header-top-button:hover,.dh-site .back-to-top:hover{background:var(--accent);color:#fff}
.dh-site .back-to-top{border-color:var(--line);color:var(--accent);box-shadow:0 6px 18px var(--palette-shadow)}
.dh-site .detail-heading-v4{background:var(--surface);padding:35px 0 48px}
.dh-site .detail-heading-v4 .back-link{display:inline-block;margin:0 0 38px}
.dh-site .detail-heading-copy{max-width:850px}
.dh-site .detail-heading-copy .work-card-meta{margin:0 0 20px}
.dh-site .detail-heading-copy h1{font-size:clamp(2.8rem,5.3vw,5.4rem);line-height:1;letter-spacing:-.07em;margin:0 0 17px}
.dh-site .detail-heading-copy>p{max-width:670px;color:var(--muted);font-size:1.08rem;line-height:1.65;margin:0}
.dh-site .next-project-v4{background:var(--surface);padding:70px 0 80px}
.dh-site .next-project-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:20px}
.dh-site .next-project-head h2{font-size:clamp(1.55rem,2.4vw,2.2rem);letter-spacing:-.055em;line-height:1.2;margin:0}
.dh-site .next-project-head>a{font-size:.82rem;font-weight:750;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.dh-site .next-project-card{display:grid;grid-template-columns:1fr 1fr;min-height:335px;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}
.dh-site .next-project-v4 .container>a.next-project-card{display:grid;padding:0;border:1px solid var(--line);gap:0;align-items:stretch}
.dh-site .next-project-image{position:relative;min-height:335px;overflow:hidden;background:var(--palette-pale)}
.dh-site .next-project-image img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .35s ease}
.dh-site .next-project-card:hover .next-project-image img,.dh-site .next-project-card:focus-visible .next-project-image img{transform:scale(1.025)}
.dh-site .next-project-copy{display:flex;flex-direction:column;align-items:start;justify-content:center;padding:45px clamp(25px,4vw,65px)}
.dh-site .next-project-copy .project-type{min-width:0}
.dh-site .next-project-copy h3{font-size:clamp(2rem,3.2vw,3.25rem);line-height:1.04;letter-spacing:-.065em;margin:22px 0 12px;color:var(--ink)}
.dh-site .next-project-copy p{font-size:.94rem;color:var(--muted);line-height:1.6;margin:0 0 34px}
.dh-site .next-project-copy strong{display:inline-flex;align-items:center;gap:12px;color:var(--accent);font-size:.84rem;font-weight:800;letter-spacing:0}
.dh-site .next-project-copy strong span{color:inherit;font-size:1.2rem;min-width:0;transition:transform .18s ease}
.dh-site .next-project-card:hover .next-project-copy strong span,.dh-site .next-project-card:focus-visible .next-project-copy strong span{transform:translateX(3px)}
@keyframes v4-settle{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.dh-site .hero-copy{animation:v4-settle .38s ease-out both}
.dh-site .package-action span{transition:transform .18s ease}
.dh-site .package-action:hover span,.dh-site .package-action:focus-visible span{transform:translateX(3px)}
.dh-site .faq-list details[open] summary b{transition:transform .18s ease}
@media(max-width:720px){.dh-site .mobile-hero-front{width:min(48%,235px);height:auto;aspect-ratio:9/18.5}
.dh-site .inner-hero{padding:27px 0 42px}
.dh-site .inner-hero .back-link{margin-bottom:27px}
.dh-site .inner-hero h1{font-size:clamp(2.2rem,7vw,3.15rem)}
.dh-site .detail-heading-v4{padding:27px 0 37px}
.dh-site .detail-heading-v4 .back-link{margin-bottom:31px}
.dh-site .detail-heading-copy h1{font-size:clamp(2.5rem,9vw,4.2rem)}
.dh-site .detail-heading-copy>p{font-size:.98rem}
.dh-site .next-project-v4{padding:54px 0 62px}
.dh-site .next-project-card{grid-template-columns:1fr}
.dh-site .next-project-image{min-height:0;height:215px}
.dh-site .next-project-copy{padding:28px}
.dh-site .next-project-copy h3{font-size:2rem;margin:16px 0 10px}
.dh-site .next-project-copy p{margin-bottom:25px}
.dh-site .device-switch{width:100%}
.dh-site .device-switch button{flex:1;min-height:43px}
.dh-site .inner-cta .button,.dh-site .preview-under .button,.dh-site .contact-form button{width:100%;justify-content:center}
.dh-site .packages-foot .text-link,.dh-site .value-copy .text-link,.dh-site .about-page-copy .text-link{display:flex;width:max-content;max-width:100%;margin-inline:auto;text-align:center}
}
@media(max-width:480px){.dh-site .mobile-hero-front{width:min(52%,195px);height:auto;aspect-ratio:9/18.5}
.dh-site .inner-hero h1{font-size:clamp(2.15rem,9vw,2.85rem)}
.dh-site .next-project-head h2{font-size:1.55rem}
}
@media(prefers-reduced-motion:reduce){.dh-site .hero-copy{animation:none}
.dh-site .next-project-image img,.dh-site .next-project-copy strong span,.dh-site .package-action span{transition:none}
}

.dh-site .mobile-hero-front,.dh-site .mobile-hero-back{isolation:isolate}
.dh-site .mobile-hero-front{border-radius:28px;box-shadow:0 28px 70px rgba(18,41,35,.22)}
.dh-site .mobile-hero-back{border-radius:12px;box-shadow:0 15px 48px rgba(27,48,43,.12)}
.hero-loop-stage,.hero-loop-layer{position:absolute;inset:0}
.hero-loop-layer{opacity:0;pointer-events:none}
.hero-loop-layer.is-active{opacity:1}
.hero-loop-layer.is-overlaid{z-index:2;opacity:0}
.hero-loop-layer .preview-shell{height:100%}
.dh-site .mobile-hero-front .preview-shell,.dh-site .mobile-hero-back .preview-shell{box-shadow:none}
.dh-site .mobile-hero-front .preview-scroll{overflow:hidden;scrollbar-width:none;pointer-events:none}
.dh-site .mobile-hero-front .preview-scroll::-webkit-scrollbar{display:none}
.hero-loop-pan{will-change:transform}
.hero-loop-next{position:absolute;inset:0;z-index:3;width:100%;height:100%;padding:0;border:0;border-radius:28px;background:transparent;cursor:pointer}
.hero-loop-next:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.dh-site .mobile-hero-note{color:var(--muted)}
.dh-site .mobile-feature-link strong{gap:8px;flex-wrap:wrap}
.dh-site .mobile-feature-link strong span{margin-left:auto}
.dh-site .work-grid .hero-loop-work-pending{opacity:0;transform:translate3d(0,16px,0)}
.dh-site .work-grid .hero-loop-work-visible{animation:hero-loop-work-rise .43s cubic-bezier(.2,.75,.25,1) both}
.dh-site .work-grid .hero-loop-work-visible:nth-child(even){animation-delay:.13s}
@keyframes hero-loop-work-rise{0%{opacity:0;transform:translate3d(0,16px,0)}72%{opacity:1;transform:translate3d(0,-2px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
.dh-site .package-grid{--package-motion-gap:15px}
.dh-site .package-grid.is-awaiting .package-card{opacity:0}
@media(min-width:781px){.dh-site .package-grid.is-playing .package-card:nth-child(1){animation:package-spread-left .65s cubic-bezier(.2,.72,.2,1) both}
.dh-site .package-grid.is-playing .package-card:nth-child(2){z-index:2;animation:package-centre-settle .38s ease-out both}
.dh-site .package-grid.is-playing .package-card:nth-child(3){animation:package-spread-right .65s cubic-bezier(.2,.72,.2,1) both}
}
@keyframes package-spread-left{0%{opacity:0;transform:translate3d(calc(100% + var(--package-motion-gap)),5px,0)}28%{opacity:.9}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes package-spread-right{0%{opacity:0;transform:translate3d(calc(-100% - var(--package-motion-gap)),5px,0)}28%{opacity:.9}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes package-centre-settle{0%{opacity:.65;transform:translate3d(0,8px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes package-mobile-rise{0%{opacity:0;transform:translate3d(0,16px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@media(max-width:1050px){.dh-site .package-grid{--package-motion-gap:10px}
}
@media(max-width:780px){.dh-site .package-grid.is-awaiting .package-card{opacity:1}
.dh-site .package-grid .package-card.package-mobile-pending{opacity:0}
.dh-site .package-grid .package-card.package-mobile-visible{animation:package-mobile-rise .4s cubic-bezier(.2,.75,.25,1) both!important}
}
@media(max-width:480px){.dh-site .work-grid .hero-loop-work-visible:nth-child(even){animation-delay:0s}
}
@media(prefers-reduced-motion:reduce){.hero-loop-pan{will-change:auto}
.dh-site .work-grid .hero-loop-work-pending,.dh-site .package-grid.is-awaiting .package-card{opacity:1;transform:none}
.dh-site .work-grid .hero-loop-work-visible,.dh-site .package-grid.is-playing .package-card,.dh-site .package-grid .package-card.package-mobile-visible{animation:none!important}
}

@font-face{font-family:Manrope;src:url(fonts/manrope-latin.woff2) format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
.dh-site{--display:Manrope,Arial,sans-serif!important;--accent:#20272b!important;--accent-dark:#06090b!important;--ink:#1b2225!important;--muted:#586267!important;--line:#d9dedd!important;--surface:#fff!important;--paper:#fff;--value-bg:#f1f3f2!important;--about-bg:#e8ecea!important;--contact-bg:#f4f6f5!important;--footer-bg:#171d20!important;--palette-pale:#f1f3f2;--palette-pale-strong:#e8ecea;--palette-preview:#eef1f0;--palette-shadow:rgba(27,34,37,.09);--radius:7px!important;background:#fff;color:#1b2225;font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}
.dh-site .wp-site-blocks{padding:0}.dh-site .wp-block-template-part{margin:0}.dh-site .wp-block-post-content>*{margin-block:0}.dh-site .wp-block-group{box-sizing:border-box}.dh-site .container{max-width:1200px}.dh-site .wp-block-buttons{gap:20px}.dh-site .wp-block-button__link{font:700 14px/1.1 Manrope,Arial,sans-serif;display:inline-flex;justify-content:center;align-items:center;padding:16px 22px;border:1px solid #20272b;border-radius:7px;transition:transform .2s,background .2s}.dh-site .wp-block-button__link:hover{transform:translateY(-2px);background:#06090b}.dh-site .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:#20272b}.dh-site .wp-block-button.is-style-outline .wp-block-button__link:hover{background:#f1f3f2}.dh-site .wp-block-site-title{margin:0}.dh-site .brand a{display:flex;align-items:center;gap:8px;font-size:20px;letter-spacing:-.06em;font-weight:700}.dh-site .brand a:after{content:'';width:5px;height:5px;border-radius:50%;background:#20272b}.dh-site .site-header{background:#fff;position:sticky;top:0;z-index:100;transition:box-shadow .2s}.dh-site .wp-block-template-part:has(.site-header){position:sticky;top:0;z-index:100}.admin-bar.dh-site .wp-block-template-part:has(.site-header){top:32px}.dh-site .main-navigation{font-size:13.5px;font-weight:600}.dh-site .main-navigation .wp-block-navigation__container{gap:33px}.dh-site .main-navigation .nav-contact{padding:0;border:0;border-radius:0;background:transparent}.dh-site .main-navigation .nav-contact>.wp-block-navigation-item__content{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:44px;padding:12px 16px;border:1px solid #20272b;border-radius:7px;text-decoration:none;cursor:pointer}.dh-site .main-navigation .nav-contact>.wp-block-navigation-item__content:hover{background:#20272b;color:#fff}.dh-site .hero-copy h1{font-size:clamp(3.65rem,3.9vw,4.85rem);line-height:1.04;letter-spacing:-.07em;font-weight:800}.dh-site .hero-copy p{color:#586267;font-size:17.6px;line-height:1.65;max-width:520px;margin-bottom:30px}.dh-site .hero-mobile{padding:74px 0 90px;background:#fff}.dh-site .hero-copy{animation:v4-settle .38s ease-out both}.dh-site .hero-loop-next{inset:0}.dh-site .mobile-hero-front .preview-shell,.dh-site .mobile-hero-back .preview-shell{box-shadow:none;border-color:#d9dedd}.dh-site .mobile-hero-back{opacity:1}.dh-site .mobile-hero-front{border:0}.dh-site .hero-loop-stage{overflow:hidden;border-radius:inherit}.dh-site .hero-loop-layer .preview-scroll{overflow:hidden}.dh-site .mobile-feature-link strong b{font-weight:700}.dh-site .mobile-hero-note{margin-top:0;position:relative;z-index:4;flex-wrap:wrap;justify-content:flex-end;gap:14px;font-size:12px}.dh-hero-pause{border:1px solid #d9dedd;border-radius:5px;padding:6px 12px;color:#20272b;background:#fff;font-size:12px;min-height:36px}.dh-hero-pause[hidden]{display:none}.dh-site .preview-shell{container-type:normal}.dh-site .preview-scroll img{width:100%;max-width:none;height:auto}.dh-site .work-card-visual{padding:0;background:#eef1f0}.dh-site .work-card-visual>img{width:100%;height:auto;object-position:top center}.dh-site .work-card-meta{flex-wrap:wrap}.dh-site .section-head .wp-block-heading{max-width:750px;font-size:clamp(2.5rem,4.3vw,4.4rem);font-weight:800;letter-spacing:-.07em;line-height:1.03;margin:0}.dh-site .section-head>p{font-size:16px}.dh-site .value-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.dh-site .value-grid h2{font-size:clamp(2.5rem,4.3vw,4.4rem);font-weight:800;letter-spacing:-.07em;line-height:1.03}.dh-site .value-copy .wp-block-buttons{margin-top:28px}.dh-site .packages-foot h3{font-size:16px;font-weight:800}.dh-site .package-includes .wp-block-list{padding-left:18px}.dh-site .package-card .package-includes{flex:1}.dh-site .story-grid.wp-block-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.dh-site .story-grid .wp-block-column{border-top:1px solid #d9dedd;padding-top:15px}.dh-site .detail-story .container>h2{font-size:clamp(2.5rem,4.3vw,4.4rem);font-weight:800;line-height:1.03;letter-spacing:-.07em;margin:0 0 30px}.dh-site .story-grid h3{font-size:25px;font-weight:800;margin:0 0 12px}.dh-site .dh-device-panel{height:100%;width:100%;display:flex;justify-content:center;min-width:0}.dh-site .dh-device-panel[data-panel=phone]{display:none}.dh-site .device-switch button{display:none}.dh-site.has-js .device-switch button{display:block}.dh-site.has-js .dh-device-panel[hidden]{display:none}.dh-site.has-js .dh-device-panel:not([hidden]){display:flex}.dh-site .detail-preview.phone{height:100%;width:330px;max-width:100%}.dh-site .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.dh-site .contact-copy h2{font-size:clamp(2.5rem,4.3vw,4.4rem);font-weight:800;letter-spacing:-.07em;line-height:1.03}.dh-site .contact-copy p{color:#586267;font-size:17px;line-height:1.7}.dh-site .contact-copy .email-link{font-weight:700;font-size:20px;color:#20272b}.dh-site .contact-form{padding:34px;border:1px solid #d9dedd;border-radius:18px;background:#fff;min-width:0}.dh-site .contact-form form{padding:0;border:0;box-shadow:none}.dh-site .contact-form .ff-el-input--label label{font-size:12px;font-weight:700}.dh-site .contact-form .ff-el-form-control{border:1px solid #d9dedd;border-radius:6px;background:#fff;padding:13px 12px;font-size:14px;color:#1b2225;min-height:46px}.dh-site .contact-form .ff-el-form-control:focus{outline:3px solid #20272b;outline-offset:4px;border-color:#20272b;box-shadow:none}.dh-site .contact-form .ff-btn-submit{font-family:inherit;width:100%;border:0;border-radius:7px;background:#20272b!important;color:#fff!important;padding:17px 22px;font-size:14px;font-weight:700}.dh-site .contact-form .ff-btn-submit:hover{background:#06090b!important}.dh-site .contact-form textarea{min-height:135px}.dh-site .contact-form .ff-el-group{margin-bottom:19px}.dh-site .contact-form .ff-message-success{color:#1b2225;background:#f1f3f2;border-color:#d9dedd}.dh-site .contact-form .ff-errors-in-stack{color:#a21d28}.dh-site .contact-form .form-help{font-size:12px;color:#586267;margin:14px 0 0}.dh-site .privacy-content{max-width:730px}.dh-site .privacy-content h2{font-size:26px;margin:30px 0 12px}.dh-site .privacy-content p{margin-bottom:20px}.dh-site .site-footer{color:#e0e5e2;background:#171d20}.dh-site .site-footer a{color:inherit}.dh-site .footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:34px}.dh-site .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #394247;padding-top:22px;font-size:12px;color:#a8b5b0}.dh-site .site-footer .wp-block-navigation__container{gap:22px}.dh-site .site-footer .wp-block-navigation-item{font-size:12px}.dh-site .site-footer p{margin:0}.dh-site .inner-cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.dh-site .inner-cta h2{margin:0;font-size:clamp(1.9rem,3vw,3rem);font-weight:800;line-height:1.08;letter-spacing:-.055em}.dh-site #work,.dh-site #contact{scroll-margin-top:105px}.dh-site #services{scroll-margin-top:20px}.dh-site :focus-visible{outline:3px solid #20272b;outline-offset:4px}.dh-site .site-footer :focus-visible{outline-color:#fff}.dh-site .back-to-top{background:#fff;color:#20272b}.dh-site .site-main{margin:0}.dh-site .section h2,.dh-site .section h3{overflow-wrap:break-word}
@media(max-width:950px){.dh-site .container{width:calc(100% - 40px)}.dh-site .hero-copy h1{font-size:clamp(3rem,5.3vw,4rem)}.dh-site .contact-grid{gap:6%}}
@media(max-width:780px){.dh-site .value-grid,.dh-site .contact-grid{grid-template-columns:1fr;gap:32px}.dh-site .story-grid.wp-block-columns{grid-template-columns:1fr}.dh-site .inner-cta .container{flex-direction:column;align-items:flex-start}}
@media(min-width:721px){.dh-site .wp-block-navigation__responsive-container-open{display:none!important}.dh-site .wp-block-navigation__responsive-container:not(.is-menu-open){display:block!important}}
@media(max-width:720px){.dh-site .container{width:calc(100% - 36px)}.dh-site .section{padding-block:76px}.dh-site .site-header{height:68px}.admin-bar.dh-site .wp-block-template-part:has(.site-header){top:46px}.dh-site .hero-mobile{padding:52px 0 66px}.dh-site .mobile-hero-grid{grid-template-columns:1fr;gap:32px;min-height:0}.dh-site .hero-copy h1{font-size:clamp(3.25rem,13.85vw,4.5rem);max-width:600px;letter-spacing:-.07em}.dh-site .hero-copy p{font-size:16px;max-width:540px}.dh-site .mobile-hero-visual{height:480px;max-width:520px;margin-inline:auto;width:100%}.dh-site .mobile-hero-back{top:65px;width:83%;height:300px}.dh-site .mobile-hero-front{width:min(48%,235px);aspect-ratio:9/18.5}.dh-site .mobile-feature-link{bottom:0;width:72%}.dh-site .mobile-hero-note{justify-content:center;margin-top:12px}.dh-site .section-head{display:block}.dh-site .section-head>p{margin:22px 0 0;max-width:540px}.dh-site .value-grid h2,.dh-site .section-head .wp-block-heading,.dh-site .contact-copy h2{font-size:clamp(2.5rem,10vw,3.4rem)}.dh-site .dh-device-panel[data-panel=desktop]{display:none}.dh-site .dh-device-panel[data-panel=phone]{display:flex}.dh-site .detail-preview-stage{height:620px;padding:24px}.dh-site .preview-heading{align-items:flex-start;flex-direction:column}.dh-site .contact-form{padding:24px}.dh-site .footer-top,.dh-site .footer-bottom{flex-direction:column;align-items:flex-start}.dh-site .footer-top .wp-block-navigation__container{flex-wrap:wrap}.dh-site .main-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.dh-site .main-navigation .wp-block-navigation__responsive-container-open{display:flex!important}.dh-site .main-navigation .is-menu-open{position:fixed;inset:68px 0 auto;background:#fff;padding:20px 18px;border-bottom:1px solid #d9dedd;max-height:calc(100dvh - 68px);overflow:auto}.dh-site .main-navigation .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:16px;align-items:flex-start}.dh-site .main-navigation .is-menu-open .wp-block-navigation__container{align-items:flex-start;gap:20px;width:100%}.dh-site .main-navigation .is-menu-open .wp-block-navigation-item{width:100%}.dh-site .main-navigation .is-menu-open .wp-block-navigation__responsive-container-close{position:fixed;top:18px;right:18px}.dh-site .header-top-button.is-visible{display:inline-flex;margin-left:auto}.dh-site #work,.dh-site #contact{scroll-margin-top:90px}.dh-site #services{scroll-margin-top:5px}.dh-site .inner-cta .wp-block-buttons,.dh-site .inner-cta .wp-block-button{width:100%}.dh-site .inner-cta .wp-block-button__link{width:100%}}
@media(max-width:480px){.dh-site .hero-copy h1{font-size:clamp(3rem,13.85vw,3.75rem)}.dh-site .mobile-hero-visual{height:420px}.dh-site .mobile-hero-front{width:min(52%,195px)}.dh-site .mobile-hero-back{height:275px;top:56px}.dh-site .mobile-feature-link{width:80%;padding:14px}.dh-site .mobile-feature-link strong{font-size:14px}.dh-site .mobile-feature-link strong span{font-size:12px}.dh-site .hero-actions.wp-block-buttons,.dh-site .hero-actions .wp-block-button,.dh-site .hero-actions .wp-block-button__link{width:100%}.dh-site .footer-top nav{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.dh-site .hero-copy{animation:none}.dh-site .hero-loop-pan{will-change:auto}.dh-site .work-card,.dh-site .package-card{opacity:1!important;transform:none!important;animation:none!important}.dh-site .dh-hero-pause{display:none}.dh-site *{transition:none!important}}
.dh-site .dh-pending{opacity:0;transform:translateY(16px)}.dh-site .dh-work-enter{animation:hero-loop-work-rise .43s cubic-bezier(.2,.75,.25,1) both}.dh-site .dh-work-enter:nth-child(even){animation-delay:.13s}.dh-site .dh-package-enter{animation:package-mobile-rise .4s cubic-bezier(.2,.75,.25,1) both}.dh-site:not(.has-js) .contact-form .fluentform{display:none}.dh-site.has-js .dh-nojs{display:none}.dh-site .header-top-button{border:1px solid #d9dedd;border-radius:6px;padding:0;min-width:36px;height:36px;align-items:center;justify-content:center}.dh-site .section-head h2{max-width:750px}.dh-site .wp-block-columns.story-grid{margin-bottom:0}.dh-site .wp-block-navigation-item__content:focus-visible{outline-offset:4px}.dh-site .faq-answer p{margin-bottom:15px}.dh-site .contact-grid>.wp-block-group{min-width:0}
@media(max-width:480px){.dh-site .dh-work-enter:nth-child(even){animation-delay:0s}}

.dh-site .nav-contact .wp-block-navigation-item__label{display:inline}.dh-site .mobile-hero-front .preview-shell.phone{border:7px solid #1b2225}.dh-site .preview-shell.phone .preview-scroll{overflow-x:hidden}
.dh-site .preview-shell{border-color:#d9dedd}.dh-site .preview-shell.phone{border-color:#1b2225}.dh-site .detail-preview-stage{background:#eef1f0;border-color:#d9dedd}
@media(max-width:720px){.dh-site .site-header nav.main-navigation{display:flex;position:static;background:transparent;padding:0;border:0;box-shadow:none;flex-direction:row;gap:0}.dh-site .main-navigation .wp-block-navigation__responsive-container-open{min-width:42px;min-height:42px;border:1px solid #d9dedd;border-radius:6px;justify-content:center;align-items:center}}

.dh-site .about-page-copy{width:100%;max-width:730px;margin-inline:auto}.dh-site .inner-cta h2{font-size:clamp(2rem,4.3vw,3.65rem)}.dh-site .site-footer .brand{margin-bottom:12px}.dh-site .site-footer .brand a:after{background:#fff}.dh-site .story-grid .wp-block-column:before{display:block;font-size:10px;color:#586267;margin-bottom:15px}.dh-site .story-grid .wp-block-column:nth-child(1):before{content:"01"}.dh-site .story-grid .wp-block-column:nth-child(2):before{content:"02"}.dh-site .story-grid .wp-block-column:nth-child(3):before{content:"03"}
@media(max-width:720px){.dh-site .inner-cta h2{font-size:32px}.dh-site .detail-preview.phone{border-color:#c8d1ee}}

.dh-site .project-type.type-client{background:#e5ede9;color:#49695e}.dh-site .project-type.type-demo{background:#f1f3f2;color:#586267}

/* Portfolio refinements requested after the local editorial review. */
.dh-site .work-card{min-width:0}
@media(hover:hover) and (pointer:fine){.dh-site .work-card-visual:hover .dh-card-browser{transform:translateY(-6px)}}
.dh-site .work-card-visual:focus-visible .dh-card-browser{transform:translateY(-6px)}
/* Reveal the screens gently, then let their movement settle over a longer beat. */
.dh-site .dh-hero-preview .mobile-hero-back{--dh-preview-rise:22px;animation:dh-preview-reveal 1.2s ease-in-out .06s both,dh-preview-settle 2.3s cubic-bezier(.2,.6,.2,1) .06s both}
.dh-site .dh-hero-preview .mobile-hero-front{--dh-preview-rise:28px;animation:dh-preview-reveal 1.35s ease-in-out .16s both,dh-preview-settle 2.6s cubic-bezier(.2,.6,.2,1) .16s both}
@keyframes dh-preview-reveal{from{opacity:0}to{opacity:1}}
@keyframes dh-preview-settle{from{translate:0 var(--dh-preview-rise)}to{translate:0 0}}
.dh-site .work-card-visual{height:auto;aspect-ratio:586/350;padding:clamp(14px,2vw,25px) clamp(14px,2vw,25px) 0;background:var(--dh-card-bg,#eef1f0);border-radius:14px;overflow:hidden}
/* The browser extends below its stationary panel, including at the top of the hover lift. */
.dh-site .dh-card-browser{height:calc(100% + 24px);overflow:hidden;border:1px solid #cdd5d4;border-radius:7px;background:#fff;box-shadow:0 8px 28px rgba(26,46,39,.13);transition:transform .25s ease}
.dh-site .dh-card-bar{height:28px;display:flex;align-items:center;gap:10px;padding:0 12px;background:#f3f5f4;border-bottom:1px solid #d9dedd;color:#89918e;font-size:9px;line-height:1}
.dh-site .dh-preview-arrow{display:block;width:10px;height:10px;flex:none}
.dh-site .dh-card-address{flex:1;min-width:0;height:18px;line-height:18px;border-radius:3px;background:#fff;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-inline:8px}
.dh-site .dh-card-screen{height:calc(100% - 28px);overflow:hidden}
.dh-site .dh-card-screen img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.dh-site .dh-card-unavailable{display:flex;align-items:center;justify-content:center;height:100%;color:#586267;font-size:14px}
.dh-site .work-card-meta{gap:10px 14px;margin-block:18px 12px}
.dh-site .work-card-title{gap:18px;align-items:flex-start}
.dh-site .work-card-title>div{min-width:0}
.dh-site .work-card-title h3{font-size:clamp(22px,2vw,28px);line-height:1.15;margin:0 0 10px}
.dh-site .work-card-title p{font-size:15px;line-height:1.65;margin:0;max-width:44ch}
.dh-site .work-card-title>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:100px;line-height:1.3}
.dh-site .faq-list{max-width:900px;margin-inline:auto}
.dh-site .faq-list summary{font-size:20px;line-height:1.5;padding-block:26px;font-weight:700}
.dh-site .faq-list summary>span{font:inherit;color:inherit;padding-top:0}
.dh-site .faq-list summary b{font-size:25px}
.dh-site .faq-list .faq-answer p{font-size:17px;line-height:1.75;max-width:72ch;margin:0 36px 24px 0}
.dh-site .back-to-top{display:flex;min-width:44px;min-height:44px;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom))}
.dh-site .back-to-top:hover{background:#20272b;color:#fff}
.dh-site .back-to-top:focus-visible{outline-color:#20272b}
.dh-site .contact-form>.fluentform,.dh-site .contact-form>.wp-block-fluentfom-guten-block{margin-block:0}
.dh-site .contact-form{display:block}
.dh-site .contact-form form{margin-bottom:0}
.dh-site .contact-form .ff-el-group{margin-bottom:16px}
.dh-site .contact-form .ff_submit_btn_wrapper{margin-bottom:0}
.dh-site .contact-form textarea{min-height:112px}
.dh-site .contact-form .form-help{font-size:12px;line-height:1.6;margin-block:10px 0}
.dh-site .wp-block-paragraph:not(.back-link) a:not(.wp-element-button){text-underline-offset:3px}
.dh-site .back-link a{color:var(--ink);text-decoration:none}
.dh-site .wp-block-navigation a,.dh-site .brand a,.dh-site .work-card a,.dh-site .mobile-feature-link,.dh-site .package-action,.dh-site .next-project-card,.dh-site .back-to-top,.dh-site .header-top-button,.dh-site .button,.dh-site .next-project-head a{color:inherit;text-decoration:none}
.dh-site .site-footer p a{color:inherit}
.dh-site .button-primary{color:#fff}
@media(max-width:950px){
 .dh-site .mobile-hero-grid{grid-template-columns:1fr;gap:32px;min-height:0}
 .dh-site .hero-copy{max-width:650px;margin-inline:auto;text-align:center}
 .dh-site .hero-copy h1,.dh-site .hero-copy p{margin-inline:auto}
 .dh-site .hero-actions,.dh-site .wp-block-buttons{justify-content:center}
 .dh-site .mobile-hero-visual{width:100%;max-width:520px;margin-inline:auto}
 .dh-site .mobile-hero-note{justify-content:center}
 .dh-site .section-head{display:block;text-align:center}
 .dh-site .section-head h2,.dh-site .section-head>p{margin-inline:auto}
 .dh-site .section-head>p{margin-top:20px;max-width:540px}
 .dh-site .value-grid,.dh-site .contact-grid{grid-template-columns:1fr;gap:32px}
 .dh-site .value-grid>h2,.dh-site .contact-copy,.dh-site .inner-hero,.dh-site .detail-heading,.dh-site .preview-heading,.dh-site .next-project-head{text-align:center}
 .dh-site .value-grid>h2,.dh-site .contact-copy p,.dh-site .inner-intro,.dh-site .detail-heading-copy>p{margin-inline:auto}
 .dh-site .value-copy{text-align:center}
 .dh-site .value-copy p{max-width:650px;margin-inline:auto}
 .dh-site .packages-foot{align-items:center;flex-direction:column;text-align:center}
 .dh-site .packages-foot p{margin-inline:auto}
 .dh-site .package-card-top{text-align:center;align-items:center}
 .dh-site .package-card-top h3{width:100%;text-align:center}
 .dh-site .package-includes h4{text-align:center}
 .dh-site .package-includes .wp-block-list{width:fit-content;max-width:100%;padding-inline:0;margin-inline:auto;text-align:left}
 .dh-site .package-action{justify-content:center;text-align:center}
 .dh-site .inner-cta .container{flex-direction:column;align-items:center;text-align:center}
 .dh-site .preview-heading,.dh-site .next-project-head{flex-direction:column;align-items:center}
 .dh-site .detail-story h2,.dh-site .story-grid h3{text-align:center}
 .dh-site .story-grid .wp-block-column:before{text-align:center}
 .dh-site .about-page-copy .wp-block-buttons{justify-content:center}
 .dh-site .work-card-body{text-align:center}
 .dh-site .work-card-meta{justify-content:center}
 .dh-site .work-card-title{flex-direction:column;align-items:center;gap:16px}
 .dh-site .work-card-title p{margin-inline:auto}
 .dh-site .next-project-copy{text-align:center;align-items:center}
 .dh-site .next-project-copy strong{justify-content:center}
 .dh-site .footer-top,.dh-site .footer-bottom{flex-direction:column;align-items:center;text-align:center}
 .dh-site .footer-brand{text-align:center}
 .dh-site .footer-brand .brand a{justify-content:center}
 .dh-site .site-footer nav,.dh-site .site-footer .wp-block-navigation__responsive-container-content{justify-content:center;width:100%}
 .dh-site .site-footer .wp-block-navigation__container{justify-content:center;flex-wrap:wrap;gap:16px 22px}
}
@media(max-width:780px){
 .dh-site .contact-form .ff-el-form-control{font-size:16px;line-height:1.5;min-height:48px}
 .dh-site .contact-form textarea.ff-el-form-control{min-height:144px}
 .dh-site .contact-form .ff-btn-submit{font-size:16px;min-height:48px}
 .dh-site .contact-form .form-help{font-size:13px;line-height:1.65}
 .dh-site .work-grid{grid-template-columns:1fr;gap:38px;max-width:650px;margin-inline:auto}
 .dh-site .faq-list summary{font-size:18px;padding-block:23px}
 .dh-site .faq-list .faq-answer p{font-size:16px}
}
@media(max-width:480px){
 .dh-site .work-card-title h3{font-size:26px}
 .dh-site .contact-form{padding:22px}
 .dh-site .back-to-top{width:44px;height:44px;padding:0}
}
@media(prefers-reduced-motion:reduce){.dh-site .work-card-visual:hover .dh-card-browser,.dh-site .work-card-visual:focus-visible .dh-card-browser{transform:none}.dh-site .dh-card-browser{transition:none}.dh-site .dh-hero-preview .mobile-hero-front,.dh-site .dh-hero-preview .mobile-hero-back{animation:none}}

/* Each project reads as one linked card, with a distinct preview and details panel. */
.dh-site .work-card{position:relative;display:flex;flex-direction:column;border:1px solid #d9dedd;border-radius:15px;background:#fff;overflow:hidden}
.dh-site .work-card-link{display:block;color:inherit;text-decoration:none}
.dh-site .work-card-link:after{content:'';position:absolute;inset:0;z-index:1;border-radius:14px}
.dh-site .work-card-visual{display:block;border-radius:0;border-bottom:1px solid #d9dedd;flex:none}
.dh-site .work-card-body{padding:24px;text-align:left;flex:1}
.dh-site .work-card-meta{justify-content:flex-start;margin:0 0 16px;gap:8px 12px;font-size:12px;line-height:1.5}
.dh-site .work-card-body h3{font-size:clamp(24px,2vw,29px);line-height:1.15;letter-spacing:-.045em;margin:0 0 14px}
.dh-site .work-card-body>p{font-size:15px;line-height:1.6;margin:0;max-width:48ch;color:#586267}
.dh-site .work-card-footer{flex:none;border-top:1px solid #d9dedd}
.dh-site .work-card-action{position:relative;z-index:2;display:flex;align-items:center;min-height:56px;padding:16px 24px;font-size:14px;font-weight:700;line-height:1.4;color:#20272b;background:#f4f6f5;transition:background .2s,color .2s}
.dh-site .work-card-link:focus-visible .work-card-action{background:#20272b;color:#fff}
.dh-site .work-card-link:focus-visible{outline:none}
.dh-site .work-card-link:focus-visible:after{outline:3px solid #20272b;outline-offset:-3px}
.dh-site .work-card:focus-within .dh-card-browser{transform:translateY(-6px)}
@media(hover:hover) and (pointer:fine){.dh-site .work-card:hover .dh-card-browser{transform:translateY(-6px)}.dh-site .work-card-action:hover{background:#20272b;color:#fff}}
@media(min-width:781px){
 .dh-site .work-grid .work-card-body{padding:16px 20px}
 .dh-site .work-grid .work-card-meta{margin-bottom:10px}
 .dh-site .work-grid .work-card-body h3{font-size:26px;margin-bottom:8px}
 .dh-site .work-grid .work-card-body>p{max-width:none}
 .dh-site .work-grid .work-card-action{min-height:44px;padding:10px 20px;font-size:13px}
}
.dh-site .contact-form{scroll-margin-top:105px}
.dh-site .contact-form:has(fieldset:focus-visible){outline:3px solid #20272b;outline-offset:4px}
.dh-site .header-project-button{display:none}
@media(max-width:950px){
 .dh-site .site-header{height:68px}
 .dh-site .nav-inner{gap:12px;height:68px}
 .dh-site .header-project-button{display:block;margin-left:auto;flex:none}
 .dh-site .header-project-button .wp-block-button__link{min-height:44px;padding:12px 15px;font-size:12px;background:#20272b;color:#fff}
 .dh-site .main-navigation{flex:none;margin:0}
 .dh-site .main-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 .dh-site .main-navigation .wp-block-navigation__responsive-container-open{display:flex!important;min-width:44px;min-height:44px;justify-content:center;align-items:center}
 .dh-site .main-navigation .is-menu-open{position:fixed;inset:68px 0 auto;background:#fff;padding:20px 18px;border-bottom:1px solid #d9dedd;max-height:calc(100dvh - 68px);overflow:auto}
 .dh-site .main-navigation .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:16px;align-items:flex-start}
 .dh-site .main-navigation .is-menu-open .wp-block-navigation__container{align-items:flex-start;gap:20px;width:100%}
 .dh-site .main-navigation .is-menu-open .wp-block-navigation-item{width:100%}
 .dh-site .main-navigation .is-menu-open .wp-block-navigation__responsive-container-close{position:fixed;top:18px;right:18px}
 .dh-site .header-top-button.is-visible{display:inline-flex;margin-left:0;flex:none}
 .dh-site .contact-form{scroll-margin-top:90px}
}
@media(max-width:480px){
 .dh-site .nav-inner{gap:8px}
 .dh-site .site-header .brand a{font-size:17px;gap:5px}
 .dh-site .header-project-button .wp-block-button__link{padding-inline:12px}
 .dh-site .header-top-button.is-visible{display:none}
 .dh-site .work-grid{gap:28px}
 .dh-site .work-card-body{padding:20px}
 .dh-site .work-card-meta{font-size:11px;margin-bottom:14px}
 .dh-site .work-card-body h3{font-size:26px}
 .dh-site .work-card-action{padding-inline:20px}
}
@media(max-width:360px){
 .dh-site .site-header .brand a{font-size:15px;gap:4px}
 .dh-site .nav-inner{gap:6px}
 .dh-site .header-project-button .wp-block-button__link{padding-inline:9px;font-size:11px}
 .dh-site .work-card-body{padding:18px}
 .dh-site .work-card-action{padding-inline:18px}
}
@media(prefers-reduced-motion:reduce){.dh-site .work-card:focus-within .dh-card-browser,.dh-site .work-card:hover .dh-card-browser{transform:none}}

.dh-site .main-navigation .wp-block-navigation-item__content.is-current{font-weight:800;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.dh-site .main-navigation .nav-contact .wp-block-navigation-item__content.is-current{text-decoration:none}
.dh-site .main-navigation .nav-contact>.wp-block-navigation-item__content.is-current{background:#20272b;border-color:#20272b;color:#fff}
.dh-site .header-project-button .wp-block-button__link.is-current{box-shadow:0 0 0 3px #fff,0 0 0 5px #20272b}
@media(max-width:950px){
 .dh-site .main-navigation .is-menu-open{animation:none;transform:none}
 .dh-site .main-navigation .wp-block-navigation__responsive-container-open{border:1px solid #d9dedd;border-radius:6px}
 .dh-site .main-navigation .is-menu-open .wp-block-navigation__responsive-container-close{top:12px;right:20px;width:44px;height:44px;display:flex;justify-content:center;align-items:center;z-index:101;border:1px solid #d9dedd;border-radius:6px;background:#fff}
 .dh-site .main-navigation:has(.is-menu-open) .wp-block-navigation__responsive-container-open{visibility:hidden}
}
@media(max-width:720px){.dh-site .main-navigation .is-menu-open .wp-block-navigation__responsive-container-close{right:18px}}

/* A single reading panel connects the need, build and editing chapters. */
.dh-site .detail-story{padding:76px 0 20px}
.dh-site .detail-story .container>h2{max-width:22ch;margin:0 auto 32px;text-align:center}
.dh-site .story-grid.wp-block-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#f4f6f5;border:1px solid #d9dedd;border-radius:15px;overflow:hidden}
.dh-site .story-grid .wp-block-column{display:flex;flex-direction:column;align-items:center;min-width:0;padding:32px 28px;border-top:0;text-align:center}
.dh-site .story-grid .wp-block-column+.wp-block-column{border-left:1px solid #d9dedd}
.dh-site .story-grid .wp-block-column:before{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;margin:0 0 18px;border:1px solid #c2cdca;border-radius:8px;background:#fff;font-size:16px;line-height:1;font-weight:800;color:#20272b;font-variant-numeric:tabular-nums}
.dh-site .story-grid h3{font-size:clamp(22px,2vw,26px);line-height:1.2;letter-spacing:-.04em;margin:0 0 14px;text-align:center}
.dh-site .story-grid p{max-width:36ch;margin:0;font-size:16px;line-height:1.75;color:#586267;text-align:center}
.dh-site .story-grid p+p{margin-top:14px}

/* The next project keeps the same card vocabulary in a wider desktop composition. */
.dh-site .next-project-v4 .next-project-card{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;min-height:0;border-radius:15px}
.dh-site .next-project-card .work-card-visual{grid-row:1 / span 2;border-bottom:0;border-right:1px solid #d9dedd;min-height:335px}
.dh-site .next-project-card .work-card-body{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:32px clamp(28px,3vw,44px)}
.dh-site .next-project-card .work-card-body h3{font-size:clamp(28px,3vw,42px);margin-bottom:16px}
.dh-site .next-project-card .work-card-footer{grid-column:2}
.dh-site .next-project-card .work-card-action{padding-inline:clamp(28px,3vw,44px)}
@media(max-width:950px){
 .dh-site .detail-story{padding:54px 0 8px}
 .dh-site .detail-story .container>h2{margin-bottom:26px}
 .dh-site .story-grid.wp-block-columns{grid-template-columns:1fr;max-width:650px;margin-inline:auto}
 .dh-site .story-grid .wp-block-column{padding:28px 24px}
 .dh-site .story-grid .wp-block-column+.wp-block-column{border-left:0;border-top:1px solid #d9dedd}
 .dh-site .next-project-v4 .container{max-width:650px}
 .dh-site .next-project-v4 .next-project-card{display:flex;flex-direction:column}
 .dh-site .next-project-card .work-card-visual{min-height:0;border-right:0;border-bottom:1px solid #d9dedd}
 .dh-site .next-project-card .work-card-body{display:block;padding:24px}
 .dh-site .next-project-card .work-card-body h3{font-size:clamp(26px,4vw,32px);margin-bottom:14px}
 .dh-site .next-project-card .work-card-action{padding-inline:24px}
}
@media(max-width:480px){
 .dh-site .story-grid .wp-block-column{padding:26px 20px}
 .dh-site .story-grid .wp-block-column:before{margin-bottom:16px}
 .dh-site .next-project-card .work-card-body{padding:20px}
 .dh-site .next-project-card .work-card-action{padding-inline:20px}
}
@media(max-width:360px){.dh-site .next-project-card .work-card-body,.dh-site .next-project-card .work-card-action{padding-inline:18px}}

/* Desktop button review: keep the mobile action strip and one linked card. */
@media(min-width:951px){
 .dh-site .work-grid .work-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr}
 .dh-site .work-grid .work-card-visual{grid-column:1 / -1}
 .dh-site .work-grid .work-card-body{min-width:0;padding:16px 20px}
 .dh-site .work-grid .work-card-footer{grid-column:2;grid-row:2;align-self:end;display:flex;justify-content:flex-end;border-top:0;padding:0 20px 16px 0}
 .dh-site .work-grid .work-card-link,.dh-site .next-project-card .work-card-link{width:max-content;max-width:100%}
 .dh-site .work-grid .work-card-action,.dh-site .next-project-card .work-card-action{display:inline-flex;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid #c2cdca;border-radius:7px;background:#fff;font-size:13px}
 .dh-site .next-project-v4 .next-project-card{grid-template-columns:1fr minmax(0,.75fr) auto;grid-template-rows:1fr}
 .dh-site .next-project-card .work-card-visual{grid-column:1;grid-row:1}
 .dh-site .next-project-card .work-card-body{grid-column:2;grid-row:1;min-width:0;padding-right:20px}
 .dh-site .next-project-card .work-card-footer{grid-column:3;grid-row:1;align-self:center;display:flex;justify-content:flex-end;border-top:0;padding:28px clamp(28px,3vw,44px) 28px 0}
 .dh-site .work-grid .work-card-link:focus-visible .work-card-action,.dh-site .next-project-card .work-card-link:focus-visible .work-card-action{background:#20272b;border-color:#20272b;color:#fff}
}
@media(min-width:951px) and (hover:hover) and (pointer:fine){.dh-site .work-grid .work-card-action:hover,.dh-site .next-project-card .work-card-action:hover{background:#20272b;border-color:#20272b;color:#fff}}


/* One preview scene, shared by both screen selections at every viewport width. */
.dh-site .detail-preview-section{--dh-preview-height:max(320px,calc(100svh - 240px));background:var(--dh-preview-bg,#f1f3f2);padding:32px 0}
.dh-site .preview-sticky{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.dh-site .preview-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 24px;width:100%;max-width:1050px}
.dh-site .detail-preview-section .preview-heading,.dh-site .preview-heading>div{display:contents}
.dh-site .detail-preview-section .preview-heading h2{grid-column:1;grid-row:1;margin:0;font-size:clamp(22px,2.4vw,32px);line-height:1.15;letter-spacing:-.05em}
.dh-site .detail-preview-section .preview-heading p{grid-column:1/-1;grid-row:2;margin:0;font-size:13px;line-height:1.5;max-width:65ch;color:#586267}
.dh-site .preview-toolbar .device-switch{grid-column:2;grid-row:1;display:flex;width:auto;margin:0;padding:3px;border-radius:9px;min-height:44px}
.dh-site .preview-toolbar .device-switch button{min-height:44px;padding:8px 16px;flex:1;border-radius:6px;font-size:12px;cursor:pointer}
.dh-site .preview-toolbar .device-switch button:disabled{opacity:.45;cursor:default}
.dh-site .detail-preview-stage{width:100%;height:auto;min-height:0;padding:0;background:transparent;border:0;border-radius:0;overflow:visible;flex:none}
.dh-site .detail-preview-stage .dh-device-panel{height:auto;min-width:0;align-items:center}
.dh-site .detail-preview-section .detail-preview{flex:none;min-width:0;max-width:100%;border:5px solid var(--dh-preview-rim,#e0e6e3);outline:1px solid var(--dh-preview-outline,#596863);outline-offset:0;background:var(--dh-preview-rim,#e0e6e3);box-shadow:0 12px 30px rgba(27,34,37,.1);transition:none}
.dh-site .detail-preview-section .detail-preview.desktop{width:min(100%,1050px,calc(var(--dh-preview-height)*1.6));height:auto;aspect-ratio:16/10;border-radius:13px}
.dh-site .detail-preview-section .detail-preview.phone{width:min(100%,calc(min(640px,var(--dh-preview-height))*9/18.5));height:auto;aspect-ratio:9/18.5;border-radius:25px}
.dh-site .detail-preview-section .preview-bar{background:#f4f6f5;color:#586267;border-bottom:1px solid #d9dedd;flex:none}
.dh-site .detail-preview-section .desktop .preview-bar{border-radius:7px 7px 0 0}
.dh-site .detail-preview-section .phone .preview-bar{border-radius:19px 19px 0 0}
.dh-site .detail-preview-section .preview-scroll{overflow-x:hidden;overscroll-behavior:auto;scrollbar-color:#86958e transparent;background:#fff}
.dh-site .detail-preview-section .preview-scroll:focus-visible{outline:3px solid #20272b;outline-offset:-3px}
.dh-site .preview-actions{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;max-width:1050px;flex:none}
.dh-site .detail-preview-section .preview-under{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:0;margin:0;min-width:0;text-align:center}
.dh-site .preview-case-control{display:flex;justify-content:center;margin:0;min-width:0;text-align:center}
.dh-site .preview-case-link,.dh-site .work-more-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border:1px solid #20272b;border-radius:7px;background:#20272b;color:#fff;font:700 14px/1.4 Manrope,Arial,sans-serif;text-decoration:none;cursor:pointer}
.dh-site .detail-preview-section .preview-under .button{display:inline-flex;width:auto;justify-content:center;min-height:46px;padding:12px 20px;border:1px solid #adb9b4;border-radius:7px;background:transparent;color:#20272b;font:700 14px/1.4 Manrope,Arial,sans-serif;transform:none}
.dh-site .preview-actions .demo-note{font-size:12px;line-height:1.5;color:#586267;max-width:26ch}
.dh-site .preview-case-control[hidden],.dh-site .preview-progress[hidden],.dh-site .work-more[hidden],.dh-site .work-more-button[hidden],.dh-site .work-grid>.work-card[hidden]{display:none!important}
.dh-site .detail-story,.dh-site .work-card{scroll-margin-top:105px}
.dh-site .work-more{display:flex;align-items:center;flex-direction:column;gap:12px;margin-top:30px;text-align:center}
.dh-site .work-progress{font-size:13px;line-height:1.5;color:#586267;margin:0}
.dh-site .work-card-action-arrow{display:none;flex:none;margin-inline-start:auto}
.dh-site .is-scroll-preview .preview-runway{position:relative;overflow-anchor:none}
.dh-site .is-scroll-preview .preview-sticky{position:sticky;top:calc(var(--dh-header-bottom,80px) + 12px);height:calc(100svh - var(--dh-header-bottom,80px) - 40px - env(safe-area-inset-bottom,0px));gap:12px}
.dh-site .is-scroll-preview .preview-shell .preview-scroll{overflow:clip;touch-action:pan-y pinch-zoom}
.dh-site .is-scroll-preview .preview-scroll img{display:block;transition:none}
.dh-site:not(.has-js) .preview-toolbar .device-switch{display:none}
.dh-site:not(.has-js) .preview-toolbar .preview-heading h2{grid-column:1/-1}
.dh-site:not(.has-js) .detail-preview-stage .dh-device-panel:has(img){display:flex;margin-bottom:24px}
.dh-site .preview-progress{position:fixed;top:var(--dh-header-bottom,80px);left:0;right:0;height:var(--dh-progress-thickness,3px);z-index:60;background:var(--dh-progress-track,rgba(37,99,235,.16));opacity:0;pointer-events:none;transition:opacity var(--dh-progress-fade,160ms) ease}
.dh-site .preview-progress span{display:block;width:100%;height:100%;background:var(--dh-progress-color,#2563eb);transform:scaleX(0);transform-origin:left center}
.dh-site .is-previewing .preview-progress{opacity:1}
@media(hover:hover) and (pointer:fine){.dh-site .preview-case-link:hover,.dh-site .work-more-button:hover{background:#06090b}.dh-site .detail-preview-section .preview-under .button:hover{background:#fff;border-color:#20272b}}
@media(max-width:950px){.dh-site .work-card-action{gap:18px}.dh-site .work-card-action-arrow{display:block}.dh-site .detail-story,.dh-site .work-card{scroll-margin-top:90px}}
@media(max-width:720px){
 .dh-site .detail-preview-section{padding:24px 0}
 .dh-site .preview-toolbar{gap:8px 10px}
 .dh-site .detail-preview-section .preview-heading h2{font-size:20px}
 .dh-site .detail-preview-section .preview-heading p{text-align:center;max-width:none;font-size:12px}
 .dh-site .preview-toolbar .device-switch button{padding:8px 10px;font-size:11px}
 .dh-site .preview-actions{gap:8px;max-width:420px}
 .dh-site .preview-actions>div{flex:1}
 .dh-site .preview-actions a{width:100%!important;font-size:12px!important;padding:11px 8px!important}
 .dh-site .preview-actions .demo-note{font-size:11px}
 .dh-site .work-more{margin-top:24px}
 .dh-site .work-more-button{width:min(100%,330px)}
}
@media(max-width:350px){.dh-site .detail-preview-section .preview-heading h2{font-size:18px}.dh-site .preview-toolbar .device-switch button{padding:8px}}
@media(prefers-reduced-motion:reduce){.dh-site .preview-progress{transition:none}}

/* Package plans: phone-first reading, with the site's existing Manrope and blue. */
.dh-site .dh-package-plans{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;max-width:650px;margin-inline:auto;--package-motion-gap:16px}
.dh-site .dh-package-plans .package-card{display:flex;flex-direction:column;min-width:0;border:1px solid #cbd3d1;border-radius:14px;box-shadow:none;background:#fff;overflow:hidden}
.dh-site .dh-package-plans .package-card-top{display:flex;flex-direction:column;align-items:center;min-height:0;padding:24px 22px;background:#fff;border-bottom:1px solid #d9dedd;text-align:center}
.dh-site .dh-package-plans .package-card-top h3{width:100%;margin:0 0 10px;font-size:28px;line-height:1.15;letter-spacing:-.055em;text-align:center}
.dh-site .dh-package-plans .package-card-top>p{margin:0;font-size:16px;line-height:1.65;color:#586267;max-width:36ch}
.dh-site .package-card-facts{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;width:100%;min-width:0;margin-top:22px;padding:14px 12px;border-radius:9px;background:#f4f6f5}
.dh-site .package-card-facts:has(.package-price):has(.package-estimate){grid-template-columns:repeat(2,minmax(0,1fr))}
.dh-site .package-price{display:flex;align-items:center;justify-content:center;min-width:0;margin:0;padding-inline:14px}
.dh-site .package-price strong{position:relative;font-size:32px;line-height:1.15;letter-spacing:-.055em;font-weight:800;font-variant-numeric:tabular-nums;color:#1b2225;overflow-wrap:anywhere}
.dh-site .package-price .package-approximation{position:absolute;right:100%;top:50%;transform:translateY(-50%);margin-right:4px;font-size:20px;line-height:1;font-weight:500;letter-spacing:0;color:#586267}
.dh-site .dh-package-plans .package-card-top .package-estimate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;margin:0;padding-inline:10px;min-width:0;font-size:13px;line-height:1.5}
.dh-site .package-card-facts .package-price+.package-estimate{border-left:1px solid #d0d8d5}
.dh-site .package-estimate>span{font-size:12px}
.dh-site .package-estimate strong{font-weight:700;color:#1b2225}
.dh-site .package-card-content{display:flex;flex-direction:column;flex:1}
.dh-site .dh-package-plans .package-includes,.dh-site .dh-package-plans .package-excludes{margin:0;padding:24px 22px;flex:none;min-width:0}
.dh-site .dh-package-plans .package-excludes{border-top:1px solid #d9dedd;background:#fafbfb}
.dh-site .dh-package-plans h4{margin:0 0 18px;font-size:16px;line-height:1.4;font-weight:800;letter-spacing:-.02em;text-align:left;color:#1b2225}
.dh-site .dh-package-plans .wp-block-list{display:grid;gap:14px;width:100%;max-width:none;list-style:none;margin:0;padding:0;text-align:left}
.dh-site .dh-package-plans .wp-block-list li,.editor-styles-wrapper .package-includes li,.editor-styles-wrapper .package-excludes li{display:block;position:relative;min-width:0;padding-left:32px;margin:0;font-size:16px;line-height:1.6;color:#1b2225;overflow-wrap:break-word}
.dh-site .dh-package-plans .wp-block-list li:before,.editor-styles-wrapper .package-includes li:before,.editor-styles-wrapper .package-excludes li:before{content:"";position:absolute;left:0;top:3px;width:22px;height:22px;border-radius:50%;background:#eaf2fb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='m6 11 3 3 7-7' fill='none' stroke='%231559A6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/22px no-repeat}
.dh-site .dh-package-plans .package-excludes li:before,.editor-styles-wrapper .package-excludes li:before{background:#edf0ef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='m7 7 8 8m0-8-8 8' fill='none' stroke='%23586267' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center/22px no-repeat}
.dh-site .dh-package-plans .package-action{display:flex;justify-content:center;align-items:center;min-height:56px;margin-top:auto;padding:16px 22px;border-top:1px solid #d9dedd;background:#fff;color:#1559a6;font-size:16px;font-weight:800;line-height:1.5;text-align:center}
.dh-site .dh-package-plans .package-action:focus-visible{outline:3px solid #1559a6;outline-offset:-5px;background:#eaf2fb}
.dh-site .package-timing-note{max-width:650px;margin:20px auto 0;color:#586267;font-size:14px;line-height:1.65;text-align:left}
.dh-site .packages-section .packages-foot{display:block;margin-top:32px;padding-top:32px;border-top:1px solid #d9dedd;text-align:left}
.dh-site .packages-foot .packages-copy{max-width:none}
.dh-site .packages-foot h3{margin:0 0 14px;font-size:22px;font-weight:800;letter-spacing:-.035em}
.dh-site .packages-foot .packages-copy>p{max-width:65ch;margin:0 0 20px;font-size:16px;line-height:1.65}
.dh-site .package-shared-benefits{display:grid;grid-template-columns:minmax(0,1fr);gap:12px 32px;list-style:none;padding:0;margin:0 0 28px;font-size:16px;line-height:1.65}
.dh-site .package-shared-benefits li{margin:0;position:relative;padding-left:20px;color:#1b2225}
.dh-site .package-shared-benefits li:before{content:"";position:absolute;left:0;top:10px;width:7px;height:7px;border-radius:50%;background:#1559a6}
.dh-site .packages-foot .package-terms{padding:20px;border:1px solid #d9dedd;border-radius:10px;background:#f4f6f5;margin:0 0 24px}
.dh-site .packages-foot .package-terms p{max-width:75ch;margin:0;font-size:16px;line-height:1.7}
.dh-site .packages-foot .package-terms strong{display:block;color:#1b2225;font-weight:800;margin-bottom:5px}
.dh-site .packages-foot .package-terms p+p{margin-top:12px}
.dh-site .packages-foot .wp-block-buttons{justify-content:flex-start}
@media(hover:hover) and (pointer:fine){.dh-site .dh-package-plans .package-action:hover{background:#eaf2fb;color:#0b3970}}
@media(min-width:600px){.dh-site .package-shared-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:951px){
 .dh-site .dh-package-plans{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:16px;row-gap:0}
 .dh-site .dh-package-plans .package-card-top{min-height:230px;padding:28px 26px}
 .dh-site .dh-package-plans .package-card-top h3{font-size:clamp(27px,2.2vw,32px)}
 .dh-site .dh-package-plans .package-includes,.dh-site .dh-package-plans .package-excludes{padding:26px}
 .dh-site .package-timing-note{max-width:none}
 .dh-site .packages-section .packages-foot{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px 64px;align-items:start}
 .dh-site .packages-foot .packages-copy{grid-column:1;grid-row:1/span 2}
 .dh-site .packages-foot .package-shared-benefits{grid-template-columns:minmax(0,1fr);margin-bottom:0}
 .dh-site .packages-foot .package-terms{grid-column:2;grid-row:1;padding:24px;margin:0}
 .dh-site .packages-foot .package-terms p+p{margin-top:18px}
 .dh-site .packages-foot .wp-block-buttons{grid-column:2;grid-row:2;margin:0;justify-content:flex-start}
}
@supports(grid-template-rows:subgrid){
 @media(min-width:951px){
  .dh-site .dh-package-plans .package-card{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0}
  .dh-site .dh-package-plans .package-card-top{grid-row:1;min-height:0}
  .dh-site .dh-package-plans .package-card-content{display:contents}
  .dh-site .dh-package-plans .package-includes{grid-row:2}
  .dh-site .dh-package-plans .package-excludes{grid-row:3}
  .dh-site .dh-package-plans .package-action{grid-row:4;margin-top:0}
 }
}
/* Native package canvases use the same readable writing as the frontend. */
/* Two priced offers with a separate, native Home invitation. Reading order is
   one-page, multi-page, invitation; desktop places the invitation between them. */
.dh-site .package-offers{display:block}
.dh-site .package-offers .package-invitation,.editor-styles-wrapper .package-invitation{box-sizing:border-box;max-width:650px;margin:24px auto 0;padding:30px 26px;border:1px solid #cedbea;border-radius:14px;background:#eef4fa;color:#1b2225;text-align:center}
.dh-site .package-offers .package-invitation{--invitation-notch:24px;position:relative;isolation:isolate;overflow:hidden;padding:56px 26px 72px;border:0;border-radius:0 0 14px 14px;background:#b9ccdf;clip-path:polygon(0 0,50% var(--invitation-notch),100% 0,100% 100%,0 100%)}
.dh-site .package-offers .package-invitation:before{content:"";position:absolute;inset:1px;background:#eef4fa;border-radius:0 0 13px 13px;clip-path:polygon(0 0,50% calc(var(--invitation-notch) + 1px),100% 0,100% 100%,0 100%);pointer-events:none;z-index:-1}
.dh-site .package-offers .package-invitation:after{content:"";position:absolute;inset-inline:26px;bottom:20px;height:28px;background:#dce8f6;clip-path:polygon(0 0,50% 65%,100% 0,100% 16%,50% 81%,0 16%);transform:rotate(180deg);pointer-events:none}
.dh-site .package-invitation h3,.editor-styles-wrapper .package-invitation h3{margin:0 0 16px;font-size:30px;line-height:1.15;font-weight:800;letter-spacing:-.055em;color:#1b2225}
.dh-site .package-invitation>p,.editor-styles-wrapper .package-invitation>p{margin:0;font-size:16px;line-height:1.65;color:#465d73}
.dh-site .package-invitation .package-invitation-ideas,.editor-styles-wrapper .package-invitation-ideas{list-style:disc;padding:0 0 0 18px;margin:26px 0;display:grid;gap:0;text-align:left}
.dh-site .package-invitation-ideas li,.editor-styles-wrapper .package-invitation-ideas li{margin:0;padding:12px 0;border-top:1px solid #cedbea;font-size:16px;line-height:1.55;color:#1b2225}
.dh-site .package-invitation-ideas li:last-child,.editor-styles-wrapper .package-invitation-ideas li:last-child{border-bottom:1px solid #cedbea}
.dh-site .package-invitation .wp-block-buttons,.editor-styles-wrapper .package-invitation .wp-block-buttons{margin:24px 0 0;justify-content:center}
.dh-site .package-invitation .wp-block-button,.dh-site .package-invitation .wp-block-button__link{width:100%}
.dh-site .package-invitation .wp-block-button__link{min-height:52px;line-height:1.5;padding:14px 16px}
@media(min-width:951px){
 .dh-site .package-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px;row-gap:0;align-items:stretch}
 .dh-site .package-offers>.dh-package-collection,.dh-site .package-offers .dh-package-plans{display:contents;--package-motion-gap:20px}
 .dh-site .package-offers .package-card{grid-column:1;grid-row:1/span 4}
 .dh-site .package-offers .package-card:last-child{grid-column:3}
 .dh-site .package-offers .package-invitation{--invitation-notch:54px;grid-column:2;grid-row:1/span 4;align-self:stretch;display:flex;flex-direction:column;justify-content:center;margin:0;padding:106px 26px;max-width:none;min-width:0}
 .dh-site .package-offers .package-invitation:after{height:58px;bottom:30px}
 .dh-site .package-offers .package-timing-note{grid-column:1/-1;grid-row:5;margin:20px 0 0}
 .dh-site .package-offers .package-card-top{padding-inline:24px}
 .dh-site .package-offers .package-card-top>p{margin-bottom:22px}
 .dh-site .package-offers .package-card-facts{margin-top:auto}
 .dh-site .package-offers .package-card-top h3{font-size:clamp(26px,2.1vw,31px)}
 .dh-site .package-offers .is-playing .package-card:first-child{animation:package-spread-left .65s cubic-bezier(.2,.72,.2,1) both}
 .dh-site .package-offers .is-playing .package-card:last-child{z-index:auto;animation:package-spread-right .65s cubic-bezier(.2,.72,.2,1) both}
 .dh-site .package-offers:has(.is-playing) .package-invitation{animation:package-centre-settle .38s ease-out both}
 .dh-site .package-offers:has(.package-card:only-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:960px;margin-inline:auto}
 .dh-site .package-offers:has(.package-card:only-child) .package-card{grid-column:1}
 .dh-site .package-offers:not(:has(.package-card)) .package-invitation{grid-column:1/-1;max-width:650px;justify-self:center;display:block}
 .dh-site .package-offers:has(.package-card:nth-child(3)) .package-card:nth-child(2){grid-column:2}
 .dh-site .package-offers:has(.package-card:nth-child(3)) .package-invitation{grid-column:1/-1;grid-row:5;max-width:650px;justify-self:center;display:block;margin-top:24px}
 .dh-site .package-offers:has(.package-card:nth-child(3)) .package-timing-note{grid-row:6}
 .dh-site .package-offers:has(.package-card:nth-child(3)) .is-playing .package-card:nth-child(2){animation:package-centre-settle .38s ease-out both}
}
@media(prefers-reduced-motion:reduce){.dh-site .package-offers .package-invitation{animation:none!important}}
@media(max-width:950px){
 .dh-site .package-offers .package-invitation{clip-path:none;background:#eef4fa;border:1px solid #cedbea;border-radius:14px;padding:30px 26px}
 .dh-site .package-offers .package-invitation:before,.dh-site .package-offers .package-invitation:after{display:none}
}
/* Shorter desktop windows get less spacing, never clipped or smaller list text. */
@media(min-width:951px) and (max-height:950px){
 .dh-site .package-offers .package-card-top{padding:20px 22px}
 .dh-site .package-offers .package-card-top h3{font-size:28px;margin-bottom:8px}
 .dh-site .package-offers .package-card-top>p{line-height:1.5;margin-bottom:18px}
 .dh-site .package-offers .package-card-facts{padding:10px 8px}
 .dh-site .package-offers .package-includes,.dh-site .package-offers .package-excludes{padding:18px 22px}
 .dh-site .package-offers h4{margin-bottom:12px}
 .dh-site .package-offers .package-card .wp-block-list{gap:10px}
 .dh-site .package-offers .package-card .wp-block-list li{line-height:1.5}
 .dh-site .package-offers .package-invitation{padding-block:82px}
 .dh-site .package-offers .package-invitation h3{font-size:28px;margin-bottom:12px}
 .dh-site .package-offers .package-invitation>p{line-height:1.5}
 .dh-site .package-offers .package-invitation-ideas{margin-block:20px}
 .dh-site .package-offers .package-invitation-ideas li{padding-block:10px;line-height:1.5}
 .dh-site .package-offers .package-invitation .wp-block-buttons{margin-top:20px}
 .dh-site .package-offers .package-invitation:after{height:42px;bottom:24px}
}
.editor-styles-wrapper .package-offers{display:block}
.editor-styles-wrapper .package-offers .package-invitation{display:block}
.editor-styles-wrapper .package-offers .package-invitation{clip-path:none;background:#eef4fa;border:1px solid #cedbea;border-radius:14px;padding:30px 26px}
.editor-styles-wrapper .package-offers .package-invitation:before,.editor-styles-wrapper .package-offers .package-invitation:after{display:none}
.editor-styles-wrapper .package-includes,.editor-styles-wrapper .package-excludes{padding:24px;border:1px solid #d9dedd;border-radius:10px;margin-block:20px;background:#fff}
.editor-styles-wrapper .package-excludes{background:#fafbfb}
.editor-styles-wrapper .package-includes ul,.editor-styles-wrapper .package-excludes ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.editor-styles-wrapper .package-includes h4,.editor-styles-wrapper .package-excludes h4{font-size:16px;text-align:left;margin:0 0 18px}
.editor-styles-wrapper .package-includes li,.editor-styles-wrapper .package-excludes li{font-size:16px;line-height:1.6;color:#1b2225}
.dh-site .dh-package-plans .package-includes li:before,.editor-styles-wrapper .package-includes li:before{background-color:var(--dh-package-tick-background,#e4f4e9);background-image:var(--dh-package-tick-icon)}
.dh-site .dh-package-plans .package-excludes li:before,.editor-styles-wrapper .package-excludes li:before{background-color:var(--dh-package-cross-background,#f9e6e9);background-image:var(--dh-package-cross-icon)}
.dh-site .dh-package-plans .package-excludes,.editor-styles-wrapper .package-excludes{background:var(--dh-package-excluded-background,#fff1f3)}
.dh-site .dh-package-plans .package-excludes h4,.dh-site .dh-package-plans .package-excludes li,.editor-styles-wrapper .package-excludes h4,.editor-styles-wrapper .package-excludes li{color:var(--dh-package-excluded-text,#442a30)}
@media(max-width:950px){.dh-site .packages-foot .wp-block-buttons{justify-content:center}}
@media(max-width:599px){
 .dh-site .packages-foot .packages-copy>h3,.dh-site .packages-foot .packages-copy>p{text-align:center}
 .dh-site .packages-foot .packages-copy>p{max-width:32ch;margin-inline:auto;margin-bottom:24px}
 .dh-site .package-shared-benefits{display:block;margin-bottom:28px;padding:6px 20px;background:#f4f6f5;border:1px solid #d9dedd;border-radius:10px}
 .dh-site .package-shared-benefits li{padding:14px 0 14px 20px}
 .dh-site .package-shared-benefits li+li{border-top:1px solid #d9dedd}
 .dh-site .package-shared-benefits li:before{top:24px}
 .dh-site .packages-foot .package-terms{padding:0;border:0;border-top:1px solid #d9dedd;border-radius:0;background:transparent}
 .dh-site .packages-foot .package-terms p{padding:18px 0;font-size:15px;line-height:1.65}
 .dh-site .packages-foot .package-terms p+p{margin:0;border-top:1px solid #d9dedd}
 .dh-site .packages-foot .package-terms strong{margin-bottom:4px}
}
/* The collapsed menu reads toward its right-hand opener; entire rows remain links. */
@media(max-width:950px){
 .dh-site .main-navigation .is-menu-open .wp-block-navigation__container{align-items:stretch;gap:8px}
 .dh-site .main-navigation .is-menu-open .wp-block-navigation-item:not(.nav-contact)>.wp-block-navigation-item__content{display:flex;align-items:center;justify-content:flex-end;width:100%;min-height:44px;padding:8px 0;text-align:right}
 .dh-site .main-navigation .is-menu-open .nav-contact{margin-top:12px}
}
/* Phone preview controls form one centred sequence; existing viewport sizing still owns the frame. */
@media(max-width:720px){
 .dh-site .preview-toolbar{grid-template-columns:minmax(0,1fr);justify-items:center;gap:8px;max-width:420px}
 .dh-site .detail-preview-section .preview-heading h2{grid-column:1;grid-row:1;width:100%;max-width:none;font-size:22px;line-height:1.2;text-align:center}
 .dh-site .detail-preview-section .preview-heading p{grid-column:1;grid-row:2;max-width:34ch;margin-inline:auto;text-align:center;line-height:1.5}
 .dh-site .preview-toolbar .device-switch{grid-column:1;grid-row:3;width:220px;max-width:100%;margin-top:4px}
 .dh-site .preview-toolbar .device-switch button{font-size:12px}
 .dh-site .preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:8px;max-width:360px}
 .dh-site .preview-actions>div{min-width:0}
 .dh-site .preview-actions a{min-height:46px;font-size:13px!important;line-height:1.3!important;padding:12px 8px!important}
 .dh-site .preview-actions .demo-note{max-width:20ch;margin-inline:auto;line-height:1.5}
}
