/* Shared public-page visual language. Scoped to avoid business widgets. */
body.dd-public{background:#faf8f2;color:#233f36}
.dd-public .dd-page-art{display:block;width:100%;height:auto;border-radius:18px;border:1px solid #e4e6da;box-shadow:0 8px 24px #2445360d}
.dd-public .dd-visual{margin:18px auto 0;max-width:440px}
.dd-public .dd-visual figcaption{font-size:12px;line-height:1.6;color:#496356;margin-top:7px}
.dd-public .fx-hero,.dd-public.dd-guide .hero{background:linear-gradient(115deg,#fff7e7,#edf5ed)!important;color:#244b3d;border-bottom:1px solid #dbe4d8}
.dd-public .fx-hero-inner,.dd-public.dd-guide .hero>.wrap{position:relative;text-align:left;padding-right:370px;min-height:240px;box-sizing:border-box}
.dd-public .fx-hero .dd-visual,.dd-public.dd-guide .hero .dd-visual{position:absolute;right:0;top:0;width:340px;margin:0}
.dd-public.dd-guide .hero .lead,.dd-public.dd-guide .hero .sub{color:#365b4b}
.dd-public.dd-guide .pill{background:#fff;color:#355747;border:1px solid #cadccf}
.dd-public.dd-guide .logo{background:#fff;color:#285b43}
.dd-public .fx-search,.dd-public.dd-help .card,.dd-public.dd-teams .card,.dd-public .form-container,.dd-public .login-container{border:1px solid #dbe4d7;border-radius:20px;box-shadow:0 8px 28px #25473409}
.dd-public.dd-help .tabs{gap:8px;display:flex;flex-wrap:wrap}
.dd-public.dd-help .tab-btn{min-height:44px;border-radius:12px}
.dd-public.dd-help h1,.dd-public.dd-teams h1{color:#285740;letter-spacing:-.035em}
.dd-public.dd-help .dd-visual{float:right;width:300px;margin:0 0 22px 26px}
.dd-public.dd-help .tabs{clear:both}
.dd-public.dd-teams>header{max-width:1000px;box-sizing:border-box;padding-right:380px;position:relative;min-height:300px}
.dd-public.dd-teams>header .dd-visual{position:absolute;right:24px;top:38px;width:320px}
.dd-public.dd-login{padding:24px 14px;box-sizing:border-box;background:radial-gradient(ellipse at top left,#f7ead0,transparent 65%),#edf4ed}
.dd-public.dd-login .login-container{max-width:460px;padding:30px}
.dd-public.dd-login .dd-visual{max-width:280px;margin:0 auto 18px}
.dd-public.dd-login .login-container h1{margin-bottom:16px;color:#285740;font-size:25px}
.dd-public.dd-register .dd-visual{max-width:480px;margin:0 auto 20px}
.dd-public.dd-register .form-container h1{color:#285740}
.dd-public.dd-simulation .hero>.wrap{position:relative;padding-right:290px;box-sizing:border-box;min-height:170px}
.dd-public.dd-simulation .hero .dd-visual{position:absolute;right:0;top:0;width:260px;margin:0}
.dd-public.dd-simulation .hero{background:linear-gradient(115deg,#fff7e7,#edf5ed)!important}
.dd-public.dd-simulation.ux-results-ready .hero .dd-visual{display:none}
.dd-public.dd-simulation.ux-results-ready .hero>.wrap{min-height:0;padding-right:0}
.home-story-section{margin:18px 0 22px}.home-story-section h2{font-size:20px;color:#254f3a;margin:0 0 6px}.home-story-section>p{font-size:12px;color:#586e60;margin:0 0 12px}
.home-story-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 1px 12px;overscroll-behavior-x:contain}
.home-story-card{flex:0 0 84%;max-width:340px;scroll-snap-align:start;border:1px solid #dbe4d7;border-radius:16px;overflow:hidden;background:white;color:#254f3a;text-decoration:none}
.home-story-card img{display:block;width:100%;aspect-ratio:3/2;height:auto}.home-story-card span{display:block;padding:10px 12px;font-size:14px;font-weight:700}.home-story-card:focus-visible{outline:3px solid #a95313;outline-offset:-3px}
@media(max-width:768px){
.dd-public .fx-hero-inner,.dd-public.dd-guide .hero>.wrap{padding-right:0;min-height:0}
.dd-public .fx-hero .dd-visual,.dd-public.dd-guide .hero .dd-visual{position:static;width:100%;max-width:350px;margin:16px auto 0}
.dd-public .fx-hero{padding:22px 16px}.dd-public .fx-hero h1{font-size:25px}
.dd-public.dd-guide .hero{padding:24px 18px}.dd-public.dd-guide .hero .lead{font-size:16px;margin-top:16px}
.dd-public.dd-guide .pills{display:none}
.dd-public.dd-help .dd-visual{float:none;width:100%;max-width:350px;margin:16px auto}
.dd-public.dd-teams>header{padding:20px 18px;min-height:0}.dd-public.dd-teams>header .dd-visual{position:static;width:100%;max-width:350px;margin:16px auto 0}
.dd-public.dd-login .dd-visual{max-width:220px}.dd-public.dd-login .login-container{padding:24px 20px}
.dd-public.dd-register .dd-visual{max-width:320px}
}
@media print{.dd-visual,.home-story-section{display:none!important}.dd-public .hero>.wrap,.dd-public .fx-hero-inner{padding-right:0!important;min-height:0!important}}

@media(max-width:768px){.dd-public .fx-header-inner{width:calc(100% - 24px);gap:12px}.dd-public .fx-brand{min-width:0;flex:0 1 145px}.dd-public .fx-brand img{width:100%;height:auto}.dd-public .fx-nav{gap:8px;font-size:12px;flex-shrink:0}.dd-public .fx-nav>a{white-space:nowrap}.dd-public .fx-nav .login{padding:10px 8px}}
@media(max-width:360px){.dd-public .fx-header{height:auto;min-height:64px}.dd-public .fx-header-inner{flex-wrap:wrap;padding:8px 0}.dd-public .fx-nav{margin-left:auto}}

/* Navigation must never cover the guide's reading area or anchor headings. */
.dd-public.dd-guide nav.toc{position:static;top:auto;z-index:auto;backdrop-filter:none;padding:12px 0;background:#fff}
.dd-public.dd-guide .guide-toc{display:block;border:0;padding:0 18px}
.dd-public.dd-guide .guide-toc>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 14px;border:1px solid #d5dfd0;border-radius:12px;background:#eef3e6;font-size:15px;box-sizing:border-box;list-style:none}
.dd-public.dd-guide .guide-toc>summary::-webkit-details-marker{display:none}
.dd-public.dd-guide .guide-toc>summary:before{content:none}
.dd-public.dd-guide .guide-toc>summary:after{content:'＋';font-size:20px;line-height:1;flex:none;color:#355747}
.dd-public.dd-guide .guide-toc[open]>summary:after{content:'−'}
.dd-public.dd-guide .guide-toc-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px 0 2px}
.dd-public.dd-guide .guide-toc-links a{display:flex;align-items:center;min-height:44px;white-space:normal;line-height:1.6;padding:9px 12px;overflow-wrap:anywhere}
.dd-public.dd-guide section[id],.dd-public.dd-guide #contact{scroll-margin-top:16px}
.dd-public.dd-guide h2{align-items:flex-start;line-height:1.5;overflow-wrap:anywhere}
.dd-public.dd-guide h2 .ic{margin-top:2px}
.dd-public.dd-guide h2>span:last-child{min-width:0}
.dd-public.dd-guide .guide-heading-label{display:block;font-size:13px;line-height:1.5;letter-spacing:.04em;color:#586e60;margin:0 0 4px;font-weight:600}
.dd-public.dd-guide .btnrow .btn{max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
@media(max-width:768px){
.dd-public.dd-guide h2{font-size:21px;gap:9px}
.dd-public.dd-guide h2 .ic{width:30px;height:30px;font-size:17px}
.dd-public.dd-guide .guide-toc-links{grid-template-columns:repeat(2,minmax(0,1fr))}
.dd-public.dd-guide .brand{align-items:flex-start}
.dd-public.dd-guide .brand>div:last-child{min-width:0}
.dd-public.dd-guide .brand h1{font-size:clamp(24px,6.2vw,30px);line-height:1.35}
.dd-public.dd-guide .brand h1>span{display:block;margin-top:2px}
.dd-public.dd-guide .hero .dd-visual{margin:0 auto 20px}
.dd-public.dd-register input[type="text"],.dd-public.dd-register input[type="email"],.dd-public.dd-register input[type="tel"],.dd-public.dd-register input[type="password"],.dd-public.dd-register select,.dd-public.dd-register textarea{width:100%}
}
@media print{.dd-public.dd-guide nav.toc{display:none}}

/* Image links name the destination explicitly on every screen size. */
.home-story-card{display:flex;flex-direction:column}
.home-story-card .home-story-copy{display:flex;flex:1;flex-direction:column;gap:8px;padding:14px}
.home-story-card .home-story-title{padding:0;font-size:17px;line-height:1.5;color:#254f3a}
.home-story-card .home-story-desc{padding:0;font-size:13px;font-weight:400;line-height:1.7;color:#496356}
.home-story-card .home-story-destination,#service-gallery .svc-destination{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;box-sizing:border-box;margin-top:auto;padding:10px 12px;border-radius:10px;background:#285740;color:#fff;font-size:14px;font-weight:700;line-height:1.6}
.home-story-card .home-story-destination>span{padding:0;font-size:18px;color:inherit;flex:none}
#service-gallery .svc-destination>span{font-size:18px;flex:none}
#service-gallery .svc-marquee{overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding-bottom:12px}
#service-gallery .svc-track{animation:none;transform:none}
#service-gallery .svc-card{scroll-snap-align:start}
#service-gallery .svc-cap{display:flex;flex:1;flex-direction:column;gap:8px;padding:14px}
#service-gallery .svc-cap-t{font-size:17px;line-height:1.5}
#service-gallery .svc-cap-d{font-size:13px;line-height:1.7;margin:0 0 6px}
#service-gallery .svc-card:focus-visible{outline:3px solid #a95317;outline-offset:-3px}
