/* The existing process section remains intact; the initial reading is added inline. */
.process.dg-process{row-gap:0}
.dg-process [hidden]{display:none!important}
.dg-invite{margin-top:32px;padding:26px;border-radius:16px;background:#f4f5f4;box-shadow:0 1px 0 #171a1b06,0 12px 28px #171a1b03;max-width:460px}
.dg-invite-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}
.dg-invite-top>span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#52605a}
.dg-invite-mark{width:26px;height:26px;stroke:#626b66;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;fill:none;flex-shrink:0}
.dg-invite h3{font-size:25px;font-weight:400;line-height:1.2;letter-spacing:-.04em;text-wrap:balance;margin:0 0 12px;color:#171a1b}
.dg-invite>p{font-size:15px;line-height:1.55;color:#626768;margin:0 0 22px;text-wrap:pretty}
.dg-primary{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:15px 22px;min-height:50px;border:1px solid #171a1b;border-radius:100px;background:#171a1b;color:#fff;font:inherit;font-size:14px;line-height:1.25;text-align:center;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,scale .15s}
.dg-primary:hover{background:#353a38;border-color:#353a38}
.dg-primary:active,.dg-text-button:active,.dg-back:active,.dg-close:active{scale:.96}
.dg-primary svg{width:18px;height:18px;flex-shrink:0;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.dg-primary:disabled{background:#dce0dc;border-color:#dce0dc;color:#767e78;cursor:default}
.dg-primary:disabled:active{scale:1}
.dg-invite .dg-primary{font-size:13px;padding-inline:18px;gap:12px;max-width:100%}
.dg-duration{display:block;margin-top:13px;font-size:12px;line-height:1.5;color:#536058}
.dg-panel{grid-column:1/-1;margin-top:48px;border-radius:20px;background:#f4f5f4;border:1px solid #e4e7e3;overflow:hidden;scroll-margin-top:80px}
.dg-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 28px 14px 40px;border-bottom:1px solid #dde2dc;gap:12px}
.dg-panel-header>span{font-size:12px;letter-spacing:.015em;color:#58615b}
.dg-close{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#576059;cursor:pointer;transition:background .2s,scale .15s}
.dg-close:hover{background:#e9ece7}
.dg-close svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.3;stroke-linecap:round}
.dg-view{padding:32px 40px 36px;animation:dg-enter .25s ease-out}
.dg-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:240px;margin-bottom:26px}
.dg-progress span{height:2px;background:#d7ddd6}
.dg-progress .is-done{background:#869286}.dg-progress .is-current{background:#222a24}
.dg-counter{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#68716a;margin:0 0 12px;font-variant-numeric:tabular-nums}
.dg-counter>span{color:#929a92;margin-left:5px}
.dg-question{font-size:clamp(25px,2.8vw,38px);font-weight:300;letter-spacing:-.045em;line-height:1.18;max-width:900px;margin:0 0 12px;text-wrap:balance;color:#171a1b}
.dg-question:focus,.dg-result-title:focus{outline:none}
.dg-hint{font-size:15px;line-height:1.55;color:#69716b;margin:0 0 26px;max-width:760px}
.dg-options{margin:0;padding:0;border:0;display:grid;grid-template-columns:1fr;gap:10px;min-width:0}
.dg-choice{display:grid;grid-template-columns:1fr 20px;align-items:center;gap:18px;padding:18px 22px;min-height:78px;background:#fff;border:1px solid #e0e5dd;border-radius:12px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.dg-choice>input{grid-column:2;grid-row:1;width:18px;height:18px;appearance:none;-webkit-appearance:none;margin:0;border:1px solid #aeb8ad;border-radius:50%;background:white;cursor:pointer}
.dg-choice>span{grid-column:1;grid-row:1;min-width:0}
.dg-choice strong{display:block;font-size:16px;font-weight:400;line-height:1.4;color:#242b25}
.dg-choice small{display:block;margin-top:3px;font-size:12px;line-height:1.5;color:#758072}
.dg-choice:hover{border-color:#9ba998}
.dg-choice:has(input:checked){border-color:#63705f;background:#f9fbf7;box-shadow:0 0 0 1px #63705f}
.dg-choice input:checked{background:#2b3628;border-color:#2b3628;box-shadow:inset 0 0 0 4px white}
.dg-choice:has(input:focus-visible){outline:2px solid #344431;outline-offset:3px}
.dg-unsure{background:transparent;min-height:60px;padding-block:12px;border-color:transparent}
.dg-unsure strong{font-size:14px;color:#63705e}.dg-unsure small{font-size:12px}
.dg-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:24px}
.dg-navigation .dg-primary{margin-left:auto}
.dg-back,.dg-text-button{min-height:44px;padding:10px 0;border:0;background:none;font:inherit;font-size:13px;line-height:1.5;color:#515e4d;text-decoration:underline;text-decoration-color:#b6c0b0;text-underline-offset:5px;cursor:pointer;transition:color .2s,scale .15s}
.dg-back:hover,.dg-text-button:hover{color:#171a1b;text-decoration-color:#171a1b}
.dg-process button:focus-visible,.dg-process a:focus-visible{outline:2px solid #344431;outline-offset:4px}
.dg-result{display:grid;grid-template-columns:1.1fr 1fr;gap:32px 48px}
.dg-result-main{min-width:0;padding-top:6px}
.dg-phase{display:inline-flex;padding:7px 12px;border-radius:100px;background:#e6ebe2;color:#40503a;font-size:12px;margin:4px 0 18px}
.dg-result-title{font-size:clamp(28px,3vw,43px);font-weight:300;letter-spacing:-.045em;line-height:1.16;margin:0 0 24px;text-wrap:balance;color:#171a1b}
.dg-focus{margin:0 0 14px;font-size:14px;line-height:1.5;color:#3e493b}
.dg-focus span{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#75816e;margin-bottom:4px}
.dg-reason{font-size:16px;line-height:1.65;color:#626b60;margin:0;text-wrap:pretty}
.dg-basis{font-size:12px;line-height:1.6;color:#7d8778;margin:18px 0 0}
.dg-deeper{align-self:start;border-radius:14px;padding:26px 28px;background:white;min-width:0}
.dg-detail-index{display:block;width:24px;height:24px;color:#7e8a77;margin-bottom:12px}
.dg-deeper h4{font-size:21px;font-weight:400;letter-spacing:-.025em;line-height:1.3;margin:0 0 18px;color:#283124}
.dg-deeper ul{padding:0;margin:0;list-style:none}
.dg-deeper li{display:flex;gap:14px;padding:13px 0;border-top:1px solid #e6ebe2;font-size:14px;line-height:1.5;color:#626c5c}
.dg-deeper li>span{padding-top:3px;font-size:12px;color:#8f9a88;font-variant-numeric:tabular-nums}
.dg-answers{border-top:1px solid #e6ebe2;margin-top:8px;padding-top:8px}
.dg-answers summary{min-height:44px;display:flex;align-items:center;font-size:12px;color:#5e6c56;cursor:pointer}
.dg-answers summary::after{content:'+';margin-left:auto;font-size:18px;font-weight:300}
.dg-answers[open] summary::after{content:'−'}
.dg-answers dl{margin:4px 0 0}.dg-answers dl>div{margin:0 0 16px}
.dg-answers dt{font-size:12px;color:#788471;line-height:1.5}.dg-answers dd{font-size:13px;color:#3d4b34;line-height:1.5;margin:4px 0 0}
.dg-result-cta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #d9e0d3;padding-top:28px}
.dg-result-cta>div{max-width:660px}.dg-result-cta h4{font-size:22px;font-weight:400;letter-spacing:-.035em;line-height:1.3;color:#25311f;margin:0 0 8px}
.dg-result-cta p{font-size:14px;line-height:1.6;color:#6b7563;margin:0}
.dg-result-cta .dg-primary{flex-shrink:0}
.dg-result-tools{grid-column:1/-1;display:flex;gap:12px 26px;align-items:center;flex-wrap:wrap;margin-top:-16px}
.dg-copy-status{font-size:12px;line-height:1.5;color:#5b7151}
.dg-fallback{grid-column:1/-1}.dg-fallback label{display:block;font-size:12px;margin-bottom:10px;color:#5b7151}
.dg-fallback textarea{display:block;width:100%;min-height:260px;resize:vertical;border:1px solid #bac6b1;border-radius:10px;padding:16px;background:white;color:#3d4b34;font:inherit;font-size:13px;line-height:1.6}
@keyframes dg-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.dg-result{grid-template-columns:1fr;gap:28px}.dg-result-cta{flex-direction:column;align-items:flex-start;gap:20px}.dg-invite{max-width:100%}.dg-result-title{max-width:700px}}
@media(max-width:600px){.dg-invite{margin-top:28px;padding:22px}.dg-invite h3{font-size:25px}.dg-invite .dg-primary{width:100%}.dg-panel{margin-top:32px;border-radius:16px;scroll-margin-top:80px}.dg-panel-header{padding:10px 12px 10px 20px}.dg-view{padding:24px 20px}.dg-progress{margin-bottom:22px;max-width:180px}.dg-question{font-size:28px;line-height:1.2}.dg-hint{font-size:14px;margin-bottom:22px}.dg-choice{padding:15px 16px;gap:14px;min-height:88px}.dg-choice strong{font-size:15px}.dg-choice small{font-size:12px}.dg-unsure{min-height:70px}.dg-navigation{gap:12px}.dg-navigation .dg-primary{font-size:12px;gap:10px;padding-inline:16px;max-width:calc(100% - 58px)}.dg-result{gap:26px}.dg-result-title{font-size:32px}.dg-reason{font-size:15px}.dg-deeper{padding:22px 20px}.dg-deeper h4{font-size:21px}.dg-result-cta .dg-primary{width:100%}.dg-result-cta h4{font-size:24px}.dg-result-tools{gap:8px 20px;margin-top:-12px}.dg-copy-status{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.dg-view{animation:none}.dg-process button,.dg-process a,.dg-choice{transition:none}}

@media(min-width:901px){.dg-options{grid-template-columns:1fr 1fr}.dg-choice{min-height:94px}.dg-unsure{min-height:94px}}

/* Secondary contact path stays directly below the booking CTA. */
.dg-whatsapp-cta{padding-top:24px;border-top-color:#e0e5dc}
.dg-whatsapp-cta h4{font-size:20px}
.dg-whatsapp-action{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:0 0 270px}
.dg-whatsapp-cta .dg-whatsapp-button{background:transparent;color:#344431;border-color:#aebaa5;gap:12px}
.dg-whatsapp-cta .dg-whatsapp-button:hover{background:#e6ebe2;border-color:#78886d}
.dg-whatsapp-action>small{max-width:270px;font-size:12px;line-height:1.55;text-align:right;color:#737f6a}
@media(max-width:900px){.dg-whatsapp-action{flex:auto;align-items:flex-start}.dg-whatsapp-action>small{text-align:left;max-width:360px}}
@media(max-width:600px){.dg-whatsapp-action{width:100%}.dg-whatsapp-cta h4{font-size:22px}.dg-whatsapp-action>small{max-width:none}}

/* Vector geometry stays identical on Safari, without a platform emoji glyph. */
.dg-detail-index svg{display:block;width:100%;height:100%;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.dg-dialog{padding:0;border:0;color:#171a1b;font:inherit;background:#f4f5f4}
.dg-dialog:not([open]){display:none}
.dg-dialog::backdrop{background:#171a1b66}
@media(max-width:900px){
 .dg-dialog[open]{position:fixed;inset:0;display:flex;margin:0;width:100%;max-width:none;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden;overscroll-behavior:none}
 .dg-dialog .dg-panel{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;margin:0;border:0;border-radius:0;overflow:hidden}
 .dg-dialog .dg-panel-header{flex-shrink:0;padding:calc(8px + env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) 8px max(20px,env(safe-area-inset-left,0px));background:#f4f5f4}
 .dg-dialog .dg-view{flex:1;min-height:0;animation:none}
 .dg-dialog .dg-question-view{display:flex;flex-direction:column;padding:0}
 .dg-question-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px max(20px,env(safe-area-inset-right,0px)) 16px max(20px,env(safe-area-inset-left,0px));-webkit-overflow-scrolling:touch}
 .dg-dialog .dg-progress{max-width:180px;margin-bottom:16px}
 .dg-dialog .dg-counter{margin-bottom:10px}
 .dg-dialog .dg-question{font-size:26px;line-height:1.15;margin-bottom:10px;max-width:600px}
 .dg-dialog .dg-hint{font-size:14px;line-height:1.4;margin-bottom:18px}
 .dg-dialog .dg-options{gap:8px}
 .dg-dialog .dg-choice{padding:12px 14px;gap:12px;min-height:72px}
 .dg-dialog .dg-choice strong{font-size:15px;line-height:1.3}
 .dg-dialog .dg-choice small{font-size:12px;line-height:1.4}
 .dg-dialog .dg-unsure{min-height:62px}
 .dg-dialog .dg-unsure strong{font-size:14px}
 .dg-dialog .dg-unsure small{font-size:12px}
 .dg-dialog .dg-navigation{flex-shrink:0;margin:0;padding:12px max(20px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));border-top:1px solid #dde2dc;background:#f4f5f4;gap:16px}
 .dg-dialog .dg-navigation .dg-primary{min-height:48px;font-size:13px;padding:13px 20px;max-width:calc(100% - 60px)}
 .dg-dialog .dg-result{overflow-y:auto;overscroll-behavior:contain;align-content:start;padding:24px max(20px,env(safe-area-inset-right,0px)) calc(28px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));-webkit-overflow-scrolling:touch}
 .dg-dialog .dg-close{flex-shrink:0}
}
@media(max-width:900px) and (max-height:700px){
 .dg-dialog .dg-question-content{padding-top:14px;padding-bottom:10px}
 .dg-dialog .dg-progress{margin-bottom:12px}
 .dg-dialog .dg-counter{margin-bottom:8px}
 .dg-dialog .dg-question{font-size:24px;margin-bottom:8px}
 .dg-dialog .dg-hint{font-size:13px;margin-bottom:14px}
 .dg-dialog .dg-choice{padding:10px 12px;min-height:64px}
 .dg-dialog .dg-choice strong{font-size:14px}
 .dg-dialog .dg-unsure{min-height:58px}
 .dg-dialog .dg-navigation{padding-top:10px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
}
/* Short phone viewports keep every option in view before resorting to internal scrolling. */
@media(max-width:900px) and (max-height:600px){
 .dg-dialog .dg-panel-header{padding-top:calc(4px + env(safe-area-inset-top,0px));padding-bottom:4px}
 .dg-dialog .dg-question-content{padding-top:10px;padding-bottom:8px}
 .dg-dialog .dg-progress{margin-bottom:8px}
 .dg-dialog .dg-counter{margin-bottom:6px}
 .dg-dialog .dg-question{font-size:22px;margin-bottom:7px}
 .dg-dialog .dg-hint{font-size:12px;margin-bottom:10px}
 .dg-dialog .dg-options{gap:6px}
 .dg-dialog .dg-choice{padding-block:8px;min-height:60px}
 .dg-dialog .dg-choice small{font-size:12px;line-height:1.4}
 .dg-dialog .dg-unsure{min-height:50px}
}
@media(max-width:360px) and (max-height:600px){
 .dg-dialog .dg-question-content{padding-inline:16px}
 .dg-dialog .dg-progress{margin-bottom:6px}
 .dg-dialog .dg-question{line-height:1.12}
 .dg-dialog .dg-hint{margin-bottom:8px}
 .dg-dialog .dg-options{gap:5px}
 .dg-dialog .dg-choice{padding-block:6px;min-height:56px}
 .dg-dialog .dg-unsure{min-height:48px}
}
