.ycp-broadband{--bb-green:#09563e;--bb-paper:#fffefa;--bb-ink:#242e2b;box-sizing:border-box;padding:clamp(1.25rem,3vw,2.5rem);border:1px solid #c6d3bf;border-radius:1.25rem;background:var(--bb-paper);color:var(--bb-ink);font-family:"DM Sans",sans-serif;font-size:1rem;line-height:1.65;min-width:0;width:100%;text-align:left}
.ycp-broadband *{box-sizing:border-box}.ycp-broadband [hidden]{display:none!important}
.ycp-broadband .ycp-bb-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}
.ycp-broadband .ycp-bb-symbol{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.8rem;background:#e8eee1;color:var(--bb-green);font-size:2rem}
.ycp-broadband .ycp-bb-mode{font-size:.75rem;font-weight:700;padding:.35rem .6rem;background:#e8eee1;color:#064331;border-radius:.4rem}
.ycp-broadband h2,.ycp-broadband h3,.ycp-broadband h4{font-family:Manrope,"DM Sans",sans-serif;font-weight:500;color:var(--bb-green);letter-spacing:-.04em;line-height:1.2;margin:0 0 1rem}
.ycp-broadband h2{font-size:clamp(1.6rem,2.4vw,2rem)}.ycp-broadband h3{font-size:1.6rem}.ycp-broadband h4{font-size:1.35rem}
.ycp-broadband p{color:inherit;margin:0 0 1rem;font-size:1rem;line-height:1.65}
.ycp-broadband label{display:block;font-size:.95rem;font-weight:600;color:var(--bb-green);margin:0 0 .45rem}
.ycp-broadband input,.ycp-broadband select{display:block;width:100%;min-width:0;min-height:3.25rem;border:1px solid #82977d;border-radius:.5rem;background:#fffefa;color:#242e2b;font:inherit;font-size:1rem;padding:.75rem .9rem;margin:0}
.ycp-broadband input{ text-transform:uppercase }.ycp-broadband input::placeholder{color:#596653;opacity:1;text-transform:none}
.ycp-broadband .ycp-bb-search{display:flex;flex-wrap:wrap;gap:.65rem}.ycp-broadband .ycp-bb-search input{flex:1 1 8rem;width:8rem}
.ycp-broadband button{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;border:0;border-radius:.5rem;background:var(--bb-green);color:#fffefa;font:inherit;font-size:1rem;font-weight:600;padding:.9rem 1.1rem;min-height:3.25rem;cursor:pointer;text-align:left;white-space:normal;line-height:1.35;box-shadow:none}
.ycp-broadband button:hover{background:#064331;color:#fffefa}.ycp-broadband button:disabled{opacity:.65;cursor:wait}
.ycp-broadband :is(input,select,button):focus-visible,.ycp-broadband .ycp-bb-results:focus-visible{outline:3px solid #09563e;outline-offset:3px}
.ycp-broadband .ycp-bb-status{margin:1rem 0;font-weight:500}.ycp-broadband .ycp-bb-status:empty{display:none}.ycp-broadband .is-error{color:#8b2820}
.ycp-broadband .ycp-bb-addresses{margin-top:1.25rem}.ycp-broadband .ycp-bb-check-address{width:100%;margin-top:.75rem}
.ycp-broadband .ycp-bb-results{margin-top:1.5rem;border-top:1px solid #c6d3bf;padding-top:1.5rem}
.ycp-broadband .ycp-bb-option{padding:1.25rem;border:1px solid #c6d3bf;background:#f3f6ed;border-radius:.85rem;margin-top:1rem}
.ycp-broadband .ycp-bb-option button{width:100%;background:#d9eca6;color:#064331;margin-top:1rem}.ycp-broadband .ycp-bb-option button:hover{background:#c8df8b}
.ycp-broadband .ycp-bb-speed{font-family:Manrope,sans-serif;font-size:clamp(1.65rem,3vw,2.15rem);font-weight:500;color:var(--bb-green);letter-spacing:-.04em;line-height:1.2;margin-bottom:.4rem}
.ycp-broadband .ycp-bb-caption,.ycp-broadband .ycp-bb-note{font-size:.875rem;line-height:1.6;color:#43583e}.ycp-broadband .ycp-bb-note{margin-top:1rem;margin-bottom:0}
.ycp-broadband .ycp-bb-speeds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:.75rem 0}.ycp-broadband .ycp-bb-speeds>div{min-width:0}.ycp-broadband .ycp-bb-speed-label{font-size:.875rem;font-weight:600;color:#43583e;margin-bottom:.4rem}.ycp-broadband .ycp-bb-speeds .ycp-bb-speed{font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.4;overflow-wrap:anywhere}
.ycp-broadband .ycp-bb-disclosure{padding:.75rem;background:#e8eee1;border-radius:.5rem;font-size:.9rem;font-weight:500}
@media(max-width:600px){.ycp-broadband .ycp-bb-search{display:grid;grid-template-columns:1fr}.ycp-broadband .ycp-bb-search input{width:100%}.ycp-broadband .ycp-bb-option{padding:1rem}.ycp-broadband .ycp-bb-top{align-items:flex-start}}
.ycp-bb-results-panel{scroll-margin-top:2rem;background:#eaf0e3;border-color:transparent;box-shadow:none}
.ycp-bb-results-panel[hidden]{display:none!important}
.ycp-bb-results-panel:focus{outline:none}
.ycp-bb-results-panel:focus-visible{outline:3px solid #09563e;outline-offset:4px}
.ycp-bb-results-panel .ycp-bb-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1.25rem}
.ycp-broadband .ycp-bb-results-heading{display:flex;flex-direction:column;align-items:stretch;gap:1.25rem;margin-bottom:1.75rem}
.ycp-broadband .ycp-bb-results-heading h2,.ycp-broadband .ycp-bb-results-heading h3{margin:0;font-size:clamp(1.6rem,2.5vw,2.1rem);color:#242e2b}
.ycp-broadband .ycp-bb-eyebrow{font-size:.7rem;letter-spacing:.12em;font-weight:700;color:#09563e;margin:0 0 .65rem}
.ycp-broadband .ycp-bb-selected-address{display:grid;grid-template-columns:1.25rem 1fr;align-items:center;column-gap:.8rem;row-gap:.2rem;background:#fffefa;padding:1rem 1.2rem;border-radius:.65rem;border-left:3px solid #09563e;color:#09563e;overflow-wrap:anywhere;font-size:1rem;margin:0}
.ycp-broadband .ycp-bb-address-label{grid-column:2;font-size:.8rem;color:#43583e}
.ycp-broadband .ycp-bb-selected-address strong{grid-column:2;font-weight:600;line-height:1.5}
.ycp-broadband .ycp-bb-selected-address:before{grid-column:1;grid-row:1 / 3}
.ycp-broadband .ycp-bb-selected-address:before{content:"";flex:0 0 1rem;height:1.25rem;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.5' d='M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3' fill='none' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat}
.ycp-broadband .ycp-bb-option{padding:0;overflow:hidden;background:#fffefa;border-color:#d3ddcb;box-shadow:0 5px 18px #00332808;display:flex;flex-direction:column}
.ycp-bb-results-panel .ycp-bb-option{margin-top:0}
.ycp-broadband .ycp-bb-option-header{display:flex;align-items:center;gap:.85rem;background:#f5f7f0;padding:1.3rem 1.5rem;border-bottom:1px solid #e1e7da;color:#09563e}
.ycp-broadband .ycp-bb-option-header h3,.ycp-broadband .ycp-bb-option-header h4{font-size:1.35rem;line-height:1.3;margin:0;flex:1;min-width:0;color:inherit}
.ycp-broadband .ycp-bb-connection-icon{display:grid;place-items:center;flex:0 0 2.75rem;height:2.75rem;border-radius:.75rem;background:#e6eedb;color:#09563e}
.ycp-broadband .ycp-bb-connection-icon svg{width:1.6rem;height:1.6rem}
.ycp-broadband .ycp-bb-technology{font-size:.7rem;font-weight:700;letter-spacing:.06em;background:#e6eedb;color:#09563e;padding:.35rem .6rem;border-radius:2rem;white-space:nowrap}
.ycp-broadband .is-full-fibre .ycp-bb-option-header{background:#09563e;color:#fffefa;border-color:#09563e}
.ycp-broadband .is-full-fibre .ycp-bb-connection-icon{background:#ffffff14;color:#d9eca6}
.ycp-broadband .is-full-fibre .ycp-bb-technology{background:#d9eca6;color:#064331}
.ycp-broadband .ycp-bb-option-body{padding:1.5rem;display:flex;flex-direction:column;flex:1}
.ycp-broadband .ycp-bb-speeds{margin:0 0 .65rem;gap:1.25rem}
.ycp-broadband .ycp-bb-speed-label{display:flex;align-items:center;gap:.45rem;font-size:.85rem}
.ycp-broadband .ycp-bb-speed-label span{font-size:1.15rem;line-height:1}
.ycp-broadband .ycp-bb-speeds>div+div{border-left:1px solid #e1e7da;padding-left:1.25rem}
.ycp-broadband .ycp-bb-speeds .ycp-bb-speed{font-size:clamp(1.35rem,2.1vw,1.8rem);line-height:1.35;color:#09563e}
.ycp-broadband .ycp-bb-option-description{border-top:1px solid #e1e7da;padding-top:1.1rem;margin-top:.25rem}
.ycp-broadband .ycp-bb-option-notice{margin-top:auto;padding-top:.25rem}
.ycp-broadband .ycp-bb-option button{margin-top:0;background:#e3edce;color:#064331}
.ycp-broadband .is-full-fibre button{background:#d9eca6}
.ycp-broadband .ycp-bb-explain{display:inline-flex;align-items:center;align-self:flex-start;min-height:2.75rem;color:#09563e;font-size:.9rem;font-weight:500;line-height:1.5;text-decoration:underline;text-underline-offset:.2em;margin-bottom:.5rem;gap:.5rem}
.ycp-broadband .ycp-bb-explain:hover{color:#064331;text-decoration-thickness:2px}
.ycp-broadband .ycp-bb-explain:focus-visible{outline:3px solid #09563e;outline-offset:3px;border-radius:.2rem}
.ycp-bb-results-panel>.ycp-bb-explain{margin-top:.75rem;margin-bottom:0}
.ycp-bb-spinner{display:inline-block;flex:0 0 auto;width:1.2rem;height:1.2rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ycp-bb-spin .8s linear infinite}
.ycp-broadband button[aria-busy="true"]{opacity:1;cursor:wait}
.ycp-broadband .ycp-bb-loading{display:flex;align-items:flex-start;gap:1.25rem;padding:1.5rem;background:#fffefa;border:1px solid #d3ddcb;border-radius:.85rem;color:#09563e}
.ycp-broadband .ycp-bb-loading>.ycp-bb-spinner{width:2rem;height:2rem;border-width:3px;margin-top:.2rem}
.ycp-broadband .ycp-bb-loading p:first-child{font-size:1.1rem;font-weight:500;margin-bottom:.6rem}
.ycp-broadband .ycp-bb-loading p:last-child{margin-bottom:0}
.ycp-bb-loading-dots{display:inline-flex;gap:.18em;margin-left:.3em;white-space:nowrap}
.ycp-bb-loading-dots span{animation:ycp-bb-dot 1.4s ease-in-out infinite}
.ycp-bb-loading-dots span:nth-child(2){animation-delay:.2s}.ycp-bb-loading-dots span:nth-child(3){animation-delay:.4s}
.ycp-broadband .ycp-bb-error-message{font-weight:500;color:#8b2820}
.ycp-broadband .ycp-bb-retry-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.ycp-broadband .ycp-bb-retry-actions button+button{background:#e3edce;color:#064331}
@keyframes ycp-bb-spin{to{transform:rotate(360deg)}}
@keyframes ycp-bb-dot{0%,70%,100%{opacity:.3}35%{opacity:1}}
@media(prefers-reduced-motion:reduce){.ycp-bb-spinner,.ycp-bb-loading-dots span{animation:none}}
@media(max-width:600px){.ycp-bb-results-panel{padding:1.1rem}.ycp-broadband .ycp-bb-option-header{padding:1.1rem;gap:.6rem;flex-wrap:wrap}.ycp-broadband .ycp-bb-option-header h3,.ycp-broadband .ycp-bb-option-header h4{font-size:1.2rem}.ycp-broadband .ycp-bb-option-body{padding:1.15rem}.ycp-broadband .ycp-bb-technology{font-size:.65rem}.ycp-broadband .ycp-bb-speeds{gap:.75rem}.ycp-broadband .ycp-bb-speeds>div+div{padding-left:.75rem}.ycp-broadband .ycp-bb-speeds .ycp-bb-speed{font-size:1.4rem}.ycp-broadband .ycp-bb-selected-address{padding:.65rem .8rem}}
