/* 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 auto 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-mic,.dda-voice,.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-mic.listening{background:#edf5f1;border-color:#5b947c;box-shadow:0 0 0 4px rgba(91,148,124,.12)}.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 46px 46px}.dda-send{grid-column:1/-1;min-height:42px}.dda-mic,.dda-voice{min-height:46px}.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 44px 44px}.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}}


/* V62 final polish — tighter mobile rhythm + more varied card life without changing site copy */
@media(max-width:700px){
  main .hero,main>section.hero{padding-top:24px!important;padding-bottom:26px!important;min-height:0!important;height:auto!important}
  main .hero .shell,main .hero-grid{min-height:0!important;height:auto!important;align-items:start!important;align-content:start!important}
  main .hero-grid{gap:14px!important;row-gap:14px!important}
  main .hero h1{margin:8px 0 14px!important;line-height:.96!important}
  main .hero h1+p,main .hero .lead,main .hero-copy>p{margin-top:0!important;padding-top:0!important}
  main .hero p{margin-bottom:14px!important}
  main .hero-art:empty,.hero-art.hero-art-copy-only{display:none!important;min-height:0!important;height:0!important;margin:0!important;padding:0!important}
  main .context-visual{margin-top:0!important;padding-top:0!important}
  main .section{padding-top:32px!important;padding-bottom:32px!important}
  main .section>.shell>h2+ .lead,main .section>.shell>h2+p{margin-top:8px!important}
}
/* quiet Google-like colour cues: blue / green / coral / violet, still inside the existing neutral system */
.cards>a.card,.dd-v60-related-card,.v61-card{overflow:hidden;isolation:isolate}
.cards>a.card::after,.dd-v60-related-card::after,.v61-card::after{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,#4d78a8 0 31%,#5b947c 31% 58%,#c68f84 58% 80%,#8b6fa8 80%);opacity:.72;pointer-events:none}
.cards>a.card:nth-child(2n)::after,.dd-v60-related-card:nth-child(2n)::after,.v61-card:nth-child(2n)::after{background:linear-gradient(90deg,#5b947c 0 36%,#4d78a8 36% 69%,#c68f84 69%)}
.cards>a.card:nth-child(3n)::after,.dd-v60-related-card:nth-child(3n)::after,.v61-card:nth-child(3n)::after{background:linear-gradient(90deg,#c68f84 0 30%,#8b6fa8 30% 58%,#4d78a8 58%)}
.cards>a.card:hover,.dd-v60-related-card:hover,.v61-card:hover{box-shadow:0 16px 38px rgba(32,33,36,.10)!important}
@media(max-width:700px){.cards>a.card:active,.dd-v60-related-card:active,.v61-card:active{transform:scale(.992)}}
/* Assistant mobile controls: larger tap targets and stable composer above phone browser chrome. */
@media(max-width:600px){
 .dda-panel{max-height:calc(100dvh - 12px);bottom:6px;left:6px;right:6px}
 .dda-compose{position:sticky;bottom:0;z-index:4}
 .dda-mic,.dda-voice{min-width:50px;min-height:50px;font-size:20px}
 .dda-send{min-height:46px;font-size:14px}
 .dda-listen{font-size:11px;line-height:1.35;min-height:18px}
}
