@charset "UTF-8";
/* A clear promise, a calm portrait, and a restrained shippou texture. */
#hero{grid-template-columns:54% 46%;padding:106px 32px 24px;min-height:0;max-width:1500px;margin-inline:auto}
#hero .hero-left{padding:52px clamp(32px,4vw,64px);background:linear-gradient(125deg,#263f54,#34536b);justify-content:center}
#hero .hero-left::before{opacity:.11;background-size:100px 100px;mask-image:linear-gradient(140deg,transparent 8%,#000 100%)}
#hero .hero-left::after{display:none}
#hero .hero-left-content{width:100%}
#hero .hero-kicker{display:flex;align-items:center;gap:14px;margin:0 0 26px;color:#ecd9ad;font-size:14px;font-weight:500;line-height:1.8;letter-spacing:.09em}
#hero .hero-kicker::before{content:"";width:28px;height:1px;background:#c8ac76;flex-shrink:0}
#hero .hero-title{margin:0 0 26px;font-size:clamp(28px,2.9vw,43px);font-weight:400;line-height:1.65;letter-spacing:.025em;color:#fff}
#hero .hero-title>span{display:block;white-space:nowrap}
#hero .hero-title-emphasis{color:#eddbb4}
#hero .hero-copy{max-width:none;margin:0 0 24px;font-size:16px;line-height:1.95;font-weight:400;letter-spacing:.025em;color:#eef2f4}
#hero .hero-service-list{display:flex;flex-wrap:wrap;gap:8px 0;list-style:none;margin:0 0 30px;padding:18px 0 0;border-top:1px solid #c8ac764d;color:#eddfc2;font-size:13px;line-height:1.6;letter-spacing:.025em}
#hero .hero-service-list li{white-space:nowrap}
#hero .hero-service-list li+li::before{content:"";display:inline-block;height:.85em;border-left:1px solid #c8ac7680;margin-inline:12px;vertical-align:-.03em}
#hero .hero-cta-group{display:flex;flex-direction:row;align-items:center;gap:22px;flex-wrap:wrap}
#hero .hero-cta-primary{width:auto;min-width:190px;min-height:62px;box-sizing:border-box;padding:12px 20px;border:1px solid #dbc38d;box-shadow:0 4px 14px #142c3d24}
#hero .hero-cta-primary .cta-label-sm{font-size:12px;letter-spacing:.12em;margin-bottom:4px}
#hero .hero-cta-primary .cta-label-lg{font-size:14px;letter-spacing:.04em}
#hero .hero-cta-secondary{width:auto;min-width:0;min-height:44px;padding:8px 0;border:0;border-bottom:1px solid #c8ac7699;gap:14px;color:#f3e8d0;font-size:13px;letter-spacing:.015em;background:transparent}
#hero .hero-cta-secondary:hover{color:#fff;border-bottom-color:#fff;transform:none}
#hero .hero-cta-primary:focus-visible,#hero .hero-cta-secondary:focus-visible{outline:2px solid #fff;outline-offset:5px}
#hero .hero-right{min-height:0;aspect-ratio:auto;order:0}
#hero .hero-right img{object-position:48% center;filter:none}
#hero .hero-right-overlay{background:linear-gradient(90deg,#29465f0a,transparent 35%)!important}
@media(min-width:901px) and (max-width:1100px){
 #hero{padding-inline:24px;grid-template-columns:55% 45%}
 #hero .hero-left{padding:38px 28px}
 #hero .hero-title{font-size:28px}
 #hero .hero-cta-group{gap:15px}
 #hero .hero-cta-primary{min-width:174px;padding-inline:14px}
 #hero .hero-cta-secondary{font-size:12px;gap:8px}
}
@media(max-width:900px){
 #hero{grid-template-columns:1fr;padding:106px 24px 24px}
 #hero .hero-left{padding:38px 36px}
 #hero .hero-title{font-size:clamp(28px,4.8vw,40px)}
 #hero .hero-right{order:0;aspect-ratio:2/1;max-height:340px}
 #hero .hero-right img{object-position:center 43%}
}
@media(max-width:600px){
 #hero{padding:78px 16px 18px}
 #hero .hero-left{padding:28px 22px 30px}
 #hero .hero-kicker{font-size:12px;letter-spacing:.035em;gap:9px;margin-bottom:20px}
 #hero .hero-kicker::before{width:16px}
 #hero .hero-title{font-size:clamp(20px,6vw,32px);line-height:1.7;letter-spacing:0;margin-bottom:20px}
 #hero .hero-copy{font-size:15px;line-height:1.9;margin-bottom:20px}
 #hero .hero-service-list{font-size:12px;letter-spacing:0;padding-top:15px;margin-bottom:23px}
 #hero .hero-service-list li+li::before{margin-inline:7px}
 #hero .hero-cta-group{gap:12px;flex-direction:column;align-items:stretch}
 #hero .hero-cta-primary{width:100%;min-height:60px}
 #hero .hero-cta-secondary{align-self:center;min-height:40px;font-size:13px}
 #hero .hero-right{aspect-ratio:3/2;max-height:280px}
}
