.colour-guide{scroll-margin-top:2rem}.colour-form{margin-top:2rem;max-width:850px}.colour-form fieldset{border:0;padding:0;margin:0 0 1.6rem}.colour-form legend{font-weight:600;margin-bottom:1rem}.colour-options{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.colour-options label{display:flex;align-items:flex-start;gap:.7rem;padding:1rem;border:1px solid #9c8875;border-radius:3px;line-height:1.6;cursor:pointer}.colour-options label:has(input:checked){background:#e9e1d6;border-color:#332921}.colour-form input{accent-color:#513629;flex-shrink:0;width:18px;height:18px;margin-top:3px}.colour-fields{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;margin-bottom:1.5rem}.colour-fields>label:first-child{display:grid;gap:.6rem}.colour-form select{font:inherit;padding:.8rem;background:#fffaf3;color:#332921;border:1px solid #9c8875;max-width:100%}.colour-cut{display:flex;align-items:center;gap:.7rem;line-height:1.6}.colour-result:not(:empty){margin-top:1.5rem;padding:1.5rem;border-left:3px solid #85664f;background:#e9e1d6;max-width:850px}.colour-result h3{font-size:1.4rem}.colour-result p{line-height:1.85;margin:1rem 0}.colour-form :focus-visible{outline:2px solid #85664f;outline-offset:4px}.colour-source{font-size:.85rem;color:#6b5a4b}.colour-home-guide{line-height:1.8;margin:1.5rem 0}.focus-services{grid-template-columns:repeat(3,minmax(0,1fr))}.focus-services>a{min-width:0}.treat-cards strong{overflow-wrap:anywhere}.colour-guide a{text-decoration:underline;text-underline-offset:3px}@media(max-width:800px){.colour-options,.focus-services{grid-template-columns:1fr}.colour-fields{display:grid;gap:1rem}.colour-form .button{max-width:100%;white-space:normal}.colour-result:not(:empty){padding:1.2rem}.colour-result a{overflow-wrap:anywhere}}
/* The first choice stays simple; booking details follow the advice. */
.colour-booking-form{margin:1.8rem 0;padding-top:1.5rem;border-top:1px solid #33292130}.colour-booking-form fieldset{border:0;padding:0;margin:0}.colour-booking-form legend{font-weight:600;margin-bottom:1rem}.colour-fields>label{display:grid;gap:.5rem;flex:1;min-width:180px}.colour-booking-form select{font:inherit;padding:.8rem;background:#fffaf3;color:#332921;border:1px solid #9c8875;border-radius:3px;width:100%;min-height:48px}.colour-booking-result:not(:empty){padding:1rem 0;border-top:1px solid #33292130}.colour-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.7rem 0}.colour-price-grid article{border:1px solid #33292124;padding:1.5rem}.colour-price-grid p{line-height:1.85}.colour-price{font-size:1.35rem;font-weight:600;line-height:1.6}.colour-price span{display:block;font-size:.95rem;font-weight:400}.colour-price-details{margin:1.5rem 0;padding:1rem 0;border-block:1px solid #33292124}.colour-price-details summary{cursor:pointer;font-weight:600;line-height:1.7;min-height:44px;display:list-item}.colour-table-wrap{overflow-x:auto;margin-top:1rem}.colour-table-wrap table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.colour-table-wrap caption{text-align:left;padding:.5rem 0 1rem;line-height:1.6}.colour-table-wrap th,.colour-table-wrap td{padding:.8rem .5rem;border-bottom:1px solid #33292124;vertical-align:top;line-height:1.7}.colour-guide .button,.colour-booking-form .button{min-height:48px}.treatment-page section[id],.treatment-page article[id]{scroll-margin-top:1.5rem}.colour-booking-form :focus-visible,.colour-price-details :focus-visible{outline:2px solid #85664f;outline-offset:4px}.colour-result>h3:focus{outline:2px solid #85664f;outline-offset:5px}.colour-result>a{display:inline-block;margin:.3rem 0}.colour-booking-form .button{white-space:normal;max-width:100%}@media(max-width:800px){.colour-price-grid{grid-template-columns:1fr}.colour-fields>label{min-width:0}.colour-table-wrap th,.colour-table-wrap td{padding:.6rem .35rem;font-size:.78rem}.colour-options label{min-height:52px}.colour-booking-form{margin-top:1.5rem}.colour-price-grid article{padding:1.2rem}}
@media(max-width:480px){.treat-header nav{min-width:0;gap:.55rem}.treat-header nav .button{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.4}.treat-header .brand{max-width:38%}.treat-header nav>a:first-child{font-size:.7rem}.treat-header nav .button .inline-icon{flex-shrink:0}}
