/* Shared visual refinement. Original content, images and logo remain in place. */
body{background:#faf8fa;color:#272127}
body:before{display:none}
::selection{background:#ead0ea;color:#510051}
a:focus-visible,button:focus-visible{outline:3px solid #af00af;outline-offset:5px}
#header{background:rgba(255,255,255,.97);box-shadow:0 4px 24px #26002608;border-image:none;border-top:3px solid #7a007a}
#logo img{filter:none}
.navigation ul.navigation>li>a{letter-spacing:.035em;font-size:.74rem}
.navigation ul.navigation>li:last-child>a{background:#7a007a;color:#fff;border-radius:10px}
.navigation ul.navigation>li:last-child>a:hover{background:#510051;color:#fff}
.content_con{padding-top:1.75rem}
.page-title{font-size:clamp(2rem,4.4vw,3.7rem);line-height:1.13;letter-spacing:-.045em;max-width:22ch;margin:1.5rem 0 2rem;text-wrap:balance}
.page-title:after{width:64px;height:4px;box-shadow:none;margin-top:.5em}
.sub_header{box-shadow:none;background:transparent;border:0;border-bottom:1px solid #e6dfe6;border-radius:0;padding:.8rem 0;margin-bottom:2rem;backdrop-filter:none}
.breadcrumb{font-size:.8rem}
.content.sub h2,.content.fullwidth h2{border-left:0;padding-left:0}
.content.sub>h3,.content.sub>h4{margin-top:2rem}
.box{border-radius:20px;box-shadow:0 8px 24px #26002606;padding:1.6rem;transition:transform .2s,border-color .2s,box-shadow .2s}
.box:before{height:3px;transform:scaleX(1);opacity:.6}
.box:hover{transform:translateY(-3px);box-shadow:0 16px 36px #2600260c}
.box h4 a,.box h5 a{color:#260026;text-decoration:none}
.box p{color:#514851;font-size:.96rem}
.read_more{border-radius:12px;background:#7a007a;box-shadow:none;font-weight:700;letter-spacing:0;line-height:1.5}
.read_more:hover{background:#510051;box-shadow:0 8px 18px #7a007a18}
.three_column>.box{display:flex;flex-direction:column;align-items:flex-start}
.three_column>.box>.read_more{margin-top:auto}
.three_column>.clear{display:none}
.sidebar .sidebars2{box-shadow:none;background:#fff!important;border-radius:20px}
#contact_form{background:#fff;box-shadow:0 12px 40px #26002609;border-radius:22px}
#contact_form label{letter-spacing:0;font-weight:650}
.tabnav{gap:.6rem}.tabnav a{border-radius:10px;font-size:.9rem}
blockquote{box-shadow:none;background:#f1e7f1;padding:1.75rem;border-radius:0 18px 18px 0;line-height:1.5}
#footer{margin-top:2rem;padding-top:3rem;padding-bottom:3rem}
.DomCons-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:center;padding:clamp(1.5rem,4vw,3rem) 0 3rem}
.DomCons-eyebrow{font-size:.7rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:#7a007a;margin:0 0 1.25rem}
.DomCons-intro h2{font-size:clamp(2.4rem,4.8vw,4.1rem);line-height:1.07;letter-spacing:-.055em;color:#171117;margin-bottom:1.2rem}
.DomCons-intro h2 span{color:#7a007a}
.DomCons-intro-copy{font-size:1.05rem;line-height:1.8;color:#625762;max-width:46ch}
.DomCons-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.5rem;margin-top:1.6rem}
.DomCons-secondary{display:inline-flex;align-items:center;gap:.7rem;min-height:44px;font-size:.88rem;font-weight:650;text-decoration:none;color:#382538}
.DomCons-service-map{position:relative;background:linear-gradient(145deg,#260026,#510051);color:#fff;border-radius:26px;padding:clamp(1.4rem,3vw,2.3rem);box-shadow:0 24px 48px #26002618}
.DomCons-service-map>.DomCons-eyebrow{color:#e6bee6}
.DomCons-service-map>a{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;gap:.8rem;align-items:center;color:#fff;text-decoration:none;border-top:1px solid #ffffff26;padding:1.5rem 0;transition:background .2s}
.DomCons-service-map>a:hover{background:#ffffff08}
.DomCons-map-number{font-size:.7rem;color:#dfafdf;font-variant-numeric:tabular-nums}
.DomCons-service-map strong{display:block;font-size:1.12rem;font-weight:650}
.DomCons-service-map small{display:block;color:#dfc6df;font-size:.8rem;margin-top:.35rem;line-height:1.6}
.DomCons-map-note{font-size:.76rem;color:#dfc6df;border-top:1px solid #ffffff26;padding-top:1.2rem;margin:0}
@media(max-width:820px){.DomCons-intro{grid-template-columns:1fr;gap:2rem;padding-top:.75rem}.DomCons-intro h2{font-size:clamp(2.3rem,8vw,3.5rem)}.page-title{font-size:clamp(1.8rem,6vw,2.6rem)}.box{padding:1.3rem}#navigation{backdrop-filter:none;background:#fff}.DomCons-service-map{border-radius:20px}.content table{width:100%!important;max-width:100%!important}}
@media(prefers-reduced-motion:reduce){.box,.DomCons-service-map>a{transition:none}.box:hover{transform:none}}
