/* Hero and navigation refinement. */
header .nav-wrap{width:calc(100% - 60px);gap:26px}
header .brand>span{display:flex;align-items:baseline;gap:9px;white-space:nowrap}
header .brand strong{font-size:30px;letter-spacing:0;line-height:1.15}
header .brand small{font-size:25px;font-weight:700;letter-spacing:-1px;line-height:1.2;margin:0}
header .brand-logo{width:54px;height:52px}
header nav{margin-left:auto;gap:24px}
.header-phone{line-height:1.5;text-align:right}
.header-phone span{font-size:16px;color:#852b36;margin:0;font-weight:700}
.header-phone strong{font-size:21px;color:#852b36}
.hero-inner{grid-template-columns:1.35fr 1fr}
.hero h1{font-size:clamp(36px,3.35vw,54px);letter-spacing:-2px}
.hero-copy{position:relative}
.hero .actions{gap:14px}
.hero .btn{gap:22px;min-height:58px;padding:15px 24px;border-radius:8px;font-size:15px;font-weight:700;transition:background .2s,box-shadow .2s,transform .2s}
.hero .primary{background:#c1a065;color:#25292d;border-color:#c1a065;box-shadow:0 5px 16px #a9844820}
.hero .outline{color:#26384b;border-color:#a7b0b9;background:#ffffff70}
.hero .btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.hero .btn:hover{transform:translateY(-2px);box-shadow:0 7px 22px #222c3012}
.hero .primary:hover{background:#d1b47f}
.hero .outline:hover{background:#fff;border-color:#26384b}
.hero .btn:hover svg{transform:translateX(3px)}
.hero .hero-foot{display:block;max-width:550px;font-size:13px;line-height:2.1;color:#657075;margin-top:29px;padding-right:18px}
.hero-foot span{white-space:nowrap}
.hero-foot span+span{border:0;padding:0}
.hero-emblem{position:absolute;width:145px;height:auto;left:50%;top:31%;opacity:.055;transform:translateX(-50%);pointer-events:none;z-index:1}
.portrait-caption{right:8px;bottom:22px;padding:14px 20px}
.portrait-caption>span{font-size:14px;letter-spacing:0}
.portrait-name{display:flex;align-items:center;gap:14px}
.portrait-caption .portrait-name strong{font-size:24px;letter-spacing:0;white-space:nowrap;display:flex;align-items:baseline;gap:10px}
.portrait-caption .portrait-name small{font-size:13px;margin:0}
.portrait-name>img{width:79px;height:37px;object-fit:contain;mix-blend-mode:multiply}
.trust-bar .wrap{display:flex;align-items:center;justify-content:center;gap:0;padding:21px 0}
.trust-bar .wrap>span{display:block;position:relative;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0 26px;min-height:0;font-size:15px}
.trust-bar .wrap>span+span:before{content:'｜';position:absolute;left:-8px;top:0;color:#655237;font-weight:400}
.trust-bar .wrap b{display:inline;margin-right:6px}
.trust-bar .trust-copy b{margin:0}
.trust-bar .wrap .consult-accent{color:#315c89;font-weight:800}
.quick-menu{top:38vh;right:20px;width:82px;border:2px solid #9d8154;border-radius:12px;overflow:hidden;box-shadow:0 7px 22px #26384b20;will-change:transform}
.quick-menu a{font-size:13px;font-weight:800;padding:17px 7px;border-bottom:1px solid #cbd0ce;line-height:1.6}
.quick-menu a:first-child{color:#26384b;background:#f2e4cb;font-size:15px}
.quick-menu a:nth-child(2){background:#fff4a8;color:#493e09}
.quick-menu a:nth-child(3){background:#dff2df;color:#28653b}
.quick-menu .top-link{font-size:12px;background:white;padding:13px 6px}
@media(min-width:1201px){.hero .wrap{width:min(1280px,calc(100% - 190px))}}
@media(max-width:1300px) and (min-width:1101px){header nav{gap:17px}header .brand small{font-size:22px}.header-phone strong{font-size:19px}}
@media(max-width:1100px){header{height:auto}.nav-wrap{flex-wrap:wrap;padding:16px 0 12px}header nav{order:3;width:100%;justify-content:center;gap:28px;border-top:1px solid #eee;padding-top:12px}.header-phone{margin-left:auto}.hero h1{font-size:36px}.hero .btn{gap:13px;padding:14px 18px;font-size:14px}.trust-bar .wrap>span{padding:0 17px;font-size:13px}}
@media(max-width:900px){.hero-inner{grid-template-columns:1.35fr 1fr}.hero .hero-foot{font-size:12px;margin-top:23px}.hero h1{font-size:32px}.hero-emblem{width:105px}.portrait-name{gap:8px}.portrait-name>img{width:66px}.portrait-caption{padding:12px 14px}.portrait-caption .portrait-name strong{font-size:21px}.portrait-caption .portrait-name small{font-size:12px}}
@media(max-width:700px){header .brand strong{font-size:25px}header .brand small{font-size:20px}header .brand-logo{width:44px;height:42px}header .nav-wrap{width:calc(100% - 32px);gap:12px}.header-phone span{font-size:12px}.header-phone strong{font-size:16px}header nav{justify-content:space-between;gap:12px}header nav a{font-size:12px}.hero-inner{display:block}.hero-copy{padding-bottom:25px}.hero-visual{width:340px;margin:0 auto;height:425px}.portrait{width:320px;height:425px}.hero-emblem{left:auto;right:0;top:30px;transform:none;width:90px}.trust-bar .wrap{flex-wrap:wrap;gap:12px 0}.trust-bar .wrap>span{padding:0 16px}.trust-bar .wrap>span:last-child{width:100%;text-align:center}.trust-bar .wrap>span:last-child:before{content:none}}
@media(max-width:450px){header .brand{gap:7px}header .brand strong{font-size:21px}header .brand small{font-size:17px}header .brand>span{gap:6px}.header-phone strong{font-size:14px}.hero h1{font-size:30px;letter-spacing:-1.6px}.hero .btn{padding:13px 15px;gap:9px;font-size:13px}.hero .btn svg{width:18px}.hero-visual{width:100%}.portrait{right:0;width:100%}.portrait-caption{right:0}}
@media(prefers-reduced-motion:reduce){.hero .btn,.hero .btn svg{transition:none}.quick-menu{will-change:auto}}

@media(min-width:1101px){header .nav-wrap{position:relative}header nav{position:absolute;left:50%;transform:translateX(-50%);margin-left:0}header .header-phone{margin-left:auto}}
@media(min-width:1101px) and (max-width:1199px){header nav{gap:14px}header nav a{font-size:13px}}

header .header-phone strong{font-size:28px;color:#c82026;font-weight:800;line-height:1.2}
@media(max-width:1200px){header .header-phone strong{font-size:25px}}
@media(max-width:700px){header .header-phone strong{font-size:21px}}
@media(max-width:450px){header .header-phone strong{font-size:17px}}

/* Oversized, faint emblem crossing the hero copy and portrait. */
.hero-emblem{width:min(76vw,760px);height:auto;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);opacity:.055;z-index:3}
@media(max-width:700px){.hero-emblem{width:125%;left:50%;right:auto;top:43%;transform:translate(-50%,-50%)}}
