/* V56 Doors Dublin Assistant — one assistant, auto-open, desktop + mobile */
.dda-launch{position:fixed;right:18px;bottom:18px;z-index:120;border:1px solid #d8dde0;background:#fff;color:#202124;border-radius:999px;box-shadow:0 10px 32px rgba(32,33,36,.18);display:flex;align-items:center;gap:9px;padding:10px 14px 10px 10px;font:700 13px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;cursor:pointer}.dda-launch.panel-open{display:none}.dda-launch svg{width:30px;height:30px;display:block}.dda-launch .dda-dot{width:7px;height:7px;border-radius:50%;background:#5b947c}.dda-panel{position:fixed;right:18px;bottom:18px;z-index:121;width:min(430px,calc(100vw - 24px));max-height:min(720px,calc(100vh - 36px));background:#fff;border:1px solid #dfe3e6;border-radius:24px;box-shadow:0 22px 55px rgba(32,33,36,.22);display:none;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.dda-panel.open{display:flex;flex-direction:column}.dda-head{padding:16px 17px 13px;border-bottom:1px solid #e7e9eb;display:flex;align-items:center;gap:12px}.dda-head svg{width:38px;height:38px;flex:0 0 auto}.dda-head-copy{min-width:0;flex:1}.dda-head strong{font-size:15px;display:block}.dda-head small{display:block;color:#6f7378;margin-top:2px;line-height:1.35;max-width:310px}.dda-close{border:0;background:#f4f5f6;border-radius:50%;width:34px;height:34px;font-size:22px;cursor:pointer}.dda-chat{padding:15px;overflow:auto;min-height:210px;max-height:410px;background:#fbfcfc}.dda-msg{max-width:88%;padding:10px 12px;border-radius:15px;margin:0 0 9px;font-size:13px;line-height:1.48}.dda-msg.bot{background:#fff;border:1px solid #e3e5e7;border-top-left-radius:5px}.dda-msg.user{background:#edf5f1;margin-left:auto;border-top-right-radius:5px}.dda-msg strong{font-weight:750}.dda-msg a{color:#315f8f;font-weight:700}.dda-actions{display:flex;flex-wrap:wrap;gap:6px;margin:7px 0 12px}.dda-chip{border:1px solid #dfe3e6;background:#fff;color:#202124;border-radius:999px;padding:7px 9px;font-size:11px;cursor:pointer}.dda-chip:hover{background:#f5f7f8}.dda-compose{padding:11px 12px 12px;border-top:1px solid #e6e8ea;background:#fff}.dda-input-row{display:grid;grid-template-columns:1fr auto;gap:7px}.dda-input{width:100%;border:1px solid #cfd4d8;border-radius:16px;padding:12px 13px;font:inherit;outline:none;min-width:0}.dda-input:focus{border-color:#4d78a8;box-shadow:0 0 0 3px rgba(77,120,168,.10)}.dda-send{border:1px solid #d6dadd;background:#fff;border-radius:14px;min-width:42px;cursor:pointer;font-size:16px}.dda-send{background:#202124;color:#fff;border-color:#202124;padding:0 13px;font-size:12px;font-weight:800}.dda-listen{min-height:16px;margin-top:6px;font-size:10px;font-weight:700;color:#557066}.dda-note{font-size:10px;color:#777d82;line-height:1.4;margin-top:5px}.dda-lead{margin-top:9px;padding:10px;border:1px solid #dfe3e6;border-radius:14px;background:#fff}.dda-lead label{font-size:11px;font-weight:700;display:block}.dda-lead input{width:100%;border:1px solid #d7dbde;border-radius:10px;padding:9px 10px;margin:6px 0 7px;font:inherit}.dda-lead button{border:0;background:#5b947c;color:#fff;border-radius:999px;padding:9px 12px;font-size:11px;font-weight:800;cursor:pointer}.dda-price{border-left:3px solid #4d78a8;padding-left:9px;margin:7px 0}.dda-route-list{display:grid;gap:5px;margin-top:8px}.dda-route-list a{display:block;text-decoration:none;border:1px solid #e3e5e7;border-radius:10px;padding:8px 9px;background:#fff;color:#202124}.dda-route-list a small{display:block;color:#6f7378;font-weight:400;margin-top:2px}.dda-footer-links{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.dda-footer-links a{font-size:11px;text-decoration:none;border:1px solid #dfe3e6;border-radius:999px;padding:6px 8px;color:#202124;background:#fff}.dda-success{display:grid;grid-template-columns:44px 1fr;column-gap:9px;align-items:center;margin-top:8px;padding:10px;border-radius:13px;background:#edf6f1}.dda-success-door{grid-row:1/3}.dda-success-door svg{width:42px;height:42px}.dda-success strong,.dda-success small{display:block}.dda-success small{color:#557066;margin-top:2px;line-height:1.35}
@media(max-width:600px){.dda-launch{right:10px;bottom:10px;padding-right:12px}.dda-launch .dda-label{display:none}.dda-panel{left:8px;right:8px;bottom:8px;width:auto;max-height:calc(100dvh - 16px);border-radius:20px}.dda-head{padding:14px 14px 12px}.dda-chat{max-height:none;min-height:160px;flex:1}.dda-compose{padding-bottom:max(12px,env(safe-area-inset-bottom))}.dda-input-row{grid-template-columns:1fr 78px}.dda-send{min-height:42px}.dda-msg{max-width:94%;font-size:14px}.dda-note{font-size:10px}.dda-head-copy small{font-size:11px}}
@media(max-width:380px){.dda-panel{left:4px;right:4px;bottom:4px}.dda-input-row{grid-template-columns:1fr 74px}.dda-head svg{width:34px;height:34px}}


/* V60 responsive polish: remove oversized mobile whitespace without changing page copy */
@media(max-width:700px){
  .hero{padding-top:28px!important;padding-bottom:24px!important;min-height:0!important;height:auto!important}
  .hero .crumb{margin-bottom:14px!important}.hero h1{margin-top:10px!important;margin-bottom:18px!important;line-height:1.02!important}
  .hero p{margin-top:0!important;margin-bottom:16px!important}.section{padding-top:38px!important;padding-bottom:38px!important}
  main>section:first-child+section{margin-top:0!important}.context-visual{margin-top:0!important;padding-top:8px!important}
}
.dd-v60-related{margin:28px 0 38px}.dd-v60-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dd-v60-related-card{display:block;border:1px solid #e1e5e8;border-radius:16px;padding:17px;text-decoration:none;color:#202124;background:#fff}.dd-v60-related-card svg{width:100%;height:92px;background:#f7f8f8;border-radius:12px;margin-bottom:12px}.dd-v60-related-card h3{font-size:18px!important;margin:0 0 7px!important}.dd-v60-related-card p{font-size:13px!important;line-height:1.48!important;color:#5f6368!important;margin:0!important}@media(max-width:700px){.dd-v60-related-grid{grid-template-columns:1fr}.dd-v60-related-card{display:grid;grid-template-columns:94px 1fr;gap:12px}.dd-v60-related-card svg{grid-row:1/3;width:94px;height:80px;margin:0}.dd-v60-related-card h3,.dd-v60-related-card p{grid-column:2}}

/* V61 layout + interactive-card polish */
@media(max-width:700px){
  /* The old two-column split kept its desktop 70px gap after collapsing to one column. */
  .section .split,.split{gap:22px!important;row-gap:22px!important}
  .section{padding-top:36px!important;padding-bottom:36px!important}
  .section h2{margin-bottom:14px!important}
  .section .lead{margin-top:0!important}
  .section .sticky{margin-bottom:0!important}
  .hero+ .section,.hero+div+ .section{margin-top:0!important}
}
.cards>a.card,.dd-v60-related-card,.v61-card{position:relative!important;z-index:2!important;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:rgba(77,120,168,.12)}
.cards>a.card:focus-visible,.dd-v60-related-card:focus-visible,.v61-card:focus-visible{outline:3px solid rgba(77,120,168,.35);outline-offset:3px}
.dd-v60-related-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.dd-v60-related-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(32,33,36,.08);border-color:#cfd7dc}
.dd-v60-related-card .v61-mini-art{width:100%;height:92px;display:block;border-radius:12px;margin-bottom:12px;background:linear-gradient(145deg,#f8faf9,#f4f7f8)}
.v61-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.v61-card{display:block;text-decoration:none;color:#202124;border:1px solid #e1e5e8;border-radius:18px;padding:18px;background:#fff;min-height:100%;transition:transform .18s ease,box-shadow .18s ease}
.v61-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(32,33,36,.08)}
.v61-card svg{width:100%;height:auto;aspect-ratio:16/9;display:block;border-radius:13px;margin-bottom:14px}
.v61-card h3{font-size:19px!important;line-height:1.15!important;margin:0 0 8px!important}
.v61-card p{font-size:13px!important;line-height:1.5!important;color:#5f6368!important;margin:0!important}
.v61-card .v61-arrow{display:block;margin-top:12px;font-size:12px;font-weight:800;color:#4d78a8}
@media(max-width:700px){.v61-card-grid{grid-template-columns:1fr}.v61-card{display:grid;grid-template-columns:104px 1fr;column-gap:13px;align-items:start}.v61-card svg{grid-row:1/4;width:104px;aspect-ratio:1/1;margin:0}.v61-card h3,.v61-card p,.v61-card .v61-arrow{grid-column:2}}

/* V70 assistant stability + mobile ergonomics */
.dda-panel{height:min(720px,calc(100dvh - 36px));max-height:calc(100dvh - 36px)}
.dda-chat{flex:1;min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.dda-compose{flex:0 0 auto}.dda-input{font-size:16px}.dda-send:disabled{opacity:.55;cursor:wait}
.dda-lead-status{margin-top:7px;font-size:11px;line-height:1.35}.dda-route-list a{touch-action:manipulation}
@media(max-width:600px){
 html.dda-open,html.dda-open body{overflow:hidden}
 .dda-panel{position:fixed;inset:max(6px,env(safe-area-inset-top)) 6px max(6px,env(safe-area-inset-bottom)) 6px;width:auto;height:auto;max-height:none;border-radius:18px}
 .dda-head{flex:0 0 auto}.dda-chat{max-height:none!important;min-height:0!important}.dda-compose{padding-bottom:max(10px,env(safe-area-inset-bottom))}
 .dda-input-row{grid-template-columns:minmax(0,1fr) 78px}.dda-send{min-height:44px}.dda-input{min-height:48px}
 .dda-close{min-width:40px;min-height:40px}.dda-msg{font-size:14px;line-height:1.5}
}

/* V70 contextual door-hub cards */
.v70-continue{padding:46px 0;background:#f8faf9;border-top:1px solid #e6e9e8}.v70-continue-shell{width:min(1120px,calc(100% - 36px));margin:auto}.v70-continue-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:22px}.v70-continue-head span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:#5b947c}.v70-continue-head h2{font-size:clamp(28px,4vw,42px);line-height:1.04;font-weight:450;letter-spacing:-.025em;margin:7px 0 8px}.v70-continue-head p{margin:0;color:#6f7378;max-width:650px;line-height:1.55}.v70-continue-head>a{white-space:nowrap;text-decoration:none;background:#202124;color:#fff;border-radius:999px;padding:11px 15px;font-size:12px;font-weight:800}.v70-continue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v70-continue-card{display:flex;flex-direction:column;text-decoration:none;color:#202124;background:#fff;border:1px solid #e0e5e3;border-radius:18px;padding:13px;min-width:0;transition:transform .18s ease,box-shadow .18s ease}.v70-continue-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(32,33,36,.08)}.v70-continue-card svg{width:100%;height:auto;margin-bottom:11px}.v70-continue-card strong{font-size:16px;line-height:1.2}.v70-continue-card small{color:#697177;line-height:1.45;margin-top:6px}.v70-continue-card b{font-size:11px;color:#4d78a8;margin-top:auto;padding-top:11px}.v70-bg{fill:#fffdfa;stroke:#e2e6e4}.v70-main,.v70-door{fill:#fff;stroke:#202124;stroke-width:3}.v70-fine{fill:none;stroke:#4d78a8;stroke-width:2}.v70-soft{fill:none;stroke:#dfe4e2;stroke-width:3}.v70-floor{fill:none;stroke:#dfe4e2;stroke-width:2}.v70-accent{fill:none;stroke:#5b947c;stroke-width:3;stroke-linecap:round}.v70-warm{fill:#c68f84}.v70-warm-line{fill:none;stroke:#c68f84;stroke-width:3;stroke-linecap:round}.v70-glass{fill:#eef7fb;stroke:#4d78a8;stroke-width:3}.v70-metal{fill:#eef1f2;stroke:#596269;stroke-width:3}.v70-quick-click{cursor:pointer}.v70-quick-click:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
@media(max-width:850px){.v70-continue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v70-continue-head{align-items:start;flex-direction:column}.v70-continue-head>a{align-self:flex-start}}
@media(max-width:520px){.v70-continue{padding:34px 0}.v70-continue-shell{width:calc(100% - 24px)}.v70-continue-grid{grid-template-columns:1fr}.v70-continue-card{display:grid;grid-template-columns:104px 1fr;column-gap:12px;align-items:start}.v70-continue-card svg{grid-row:1/4;width:104px;margin:0}.v70-continue-card strong,.v70-continue-card small,.v70-continue-card b{grid-column:2}.v70-continue-card b{margin-top:0}.v70-continue-head h2{font-size:30px}}
/* V71 mobile voice + conversion polish */
.v71-quick-cta{max-width:1180px;margin:22px auto;padding:0 24px}.v71-quick-cta a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid #d9e3df;border-radius:18px;background:#f4faf7;color:#202124;text-decoration:none;box-shadow:0 8px 26px rgba(32,33,36,.06)}.v71-quick-cta span{color:#5b947c;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.v71-quick-cta strong{font-size:16px}.v71-quick-float{position:fixed;left:18px;bottom:18px;z-index:9994;display:flex;flex-direction:column;padding:10px 15px;border-radius:999px;background:#5b947c;color:#fff;text-decoration:none;box-shadow:0 8px 26px rgba(32,33,36,.2);line-height:1.1}.v71-quick-float span{font-size:11px}.v71-quick-float strong{font-size:13px;margin-top:3px}.dda-listen:not(:empty){min-height:22px;padding-top:6px;font-weight:650;color:#466f5e}@keyframes v71pulse{50%{transform:scale(1.08);box-shadow:0 0 0 7px rgba(91,148,124,.13)}}
@media(max-width:700px){.v71-quick-cta{padding:0 18px;margin:18px auto}.v71-quick-cta a{align-items:flex-start;flex-direction:column;gap:5px}.v71-quick-float{left:12px;bottom:12px}.dda-panel.open{height:min(78dvh,680px);max-height:calc(100dvh - 18px)}.dda-input-row{align-items:center}.dda-send{min-height:46px}}

/* V81 text-only Door Assistant */
.dda-input-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
.dda-send{background:#4d78a8!important;color:#fff!important;border:1px solid #4d78a8!important;border-radius:14px!important;min-width:74px!important;padding:0 16px!important;font-size:13px!important;font-weight:800!important;cursor:pointer!important}
.dda-send:hover{background:#416b99!important;border-color:#416b99!important}
.dda-send:focus-visible{outline:3px solid rgba(91,148,124,.22)!important;outline-offset:2px}
.dda-status{min-height:16px;margin-top:6px;font-size:10px;font-weight:700;color:#557066}
@media(max-width:600px){
 .dda-input-row{grid-template-columns:minmax(0,1fr) 78px!important}
 .dda-send{grid-column:auto!important;min-height:48px!important}
 .dda-input{min-height:48px!important}
}

/* V84 calm conversion layer */
.v71-quick-float{font-size:11px!important;padding:8px 11px!important;gap:3px!important;opacity:.92!important;box-shadow:0 5px 16px rgba(32,33,36,.10)!important}
.v71-quick-float strong{font-size:11px!important;font-weight:650!important}
.v71-quick-float span{font-size:9px!important}
@media(max-width:700px){.v71-quick-float{padding:7px 9px!important}}

/* V85 connected-system polish */
.v85-relation{display:inline-flex;align-self:flex-start;margin:0 0 7px;padding:4px 8px;border:1px solid #dfe7e3;border-radius:999px;background:#f7faf8;color:#557466;font-size:10px;font-weight:750;letter-spacing:.045em;text-transform:uppercase}
.v85-context-cta{margin-top:18px!important}.v85-context-cta a{display:inline-flex!important;width:auto!important;padding:9px 13px!important;border-radius:999px!important;font-size:12px!important;box-shadow:none!important}
header [data-quick-message]{display:none!important}
.v71-quick-cta,.v72-quick-cta{display:none!important}

/* V87 FINAL — Quick Message restraint. Header/top Quick Message controls are forbidden globally. */
header [data-quick-message],header a[href$="#quick-message"],header button[data-quick-message]{display:none!important}
.v71-quick-float,.v72-quick-float{top:auto!important;right:auto!important;left:18px!important;bottom:18px!important}
@media(max-width:700px){.v71-quick-float,.v72-quick-float{top:auto!important;right:auto!important;left:12px!important;bottom:12px!important}}

/* V101 photo input */
.dda-input-row{grid-template-columns:auto minmax(0,1fr) auto!important}.dda-photo{width:44px;min-height:48px;border:1px solid #cfd4d8;background:#fff;border-radius:14px;font-size:24px;line-height:1;color:#4d78a8;cursor:pointer}.dda-photo-ready{font-size:11px;color:#557066;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:700px){.dda-input-row{grid-template-columns:44px minmax(0,1fr) 78px!important}}

/* V153 FIX: floating assistant appears after a small scroll, preserving first-view product visibility. */
.dda-launch.dda-scroll-hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(10px)!important}
.dda-launch{transition:opacity .18s ease,transform .18s ease,visibility .18s ease}

/* V154 FINAL — Assistant launcher. Hidden only before first small scroll; visible reliably thereafter. */
.dda-launch{position:fixed!important;right:18px!important;bottom:18px!important;z-index:9998!important}
.dda-launch:not(.dda-scroll-hidden){opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
@media(max-width:600px){.dda-launch{right:10px!important;bottom:10px!important}}
