/* Kamiomi: real people, vivid pink, and an unmistakable closing scene. */
.kamiomi-personality{--union-pink:#cf196c;--union-bright:#ffabd0;--union-night:#092d26}
.kamiomi-personality .hero-v03 h1{letter-spacing:-.055em}
.kamiomi-personality .hero-object-v03{overflow:hidden}
.kamiomi-personality .hero-object-v03 img{animation:vehicle-settle 3.2s cubic-bezier(.2,.75,.2,1) both;transform-origin:60% 60%}
@keyframes vehicle-settle{from{transform:scale(1.045)}to{transform:scale(1)}}
.kamiomi-personality .about-v03{background:#ecece2;color:#173e31;padding-block:120px}
.kamiomi-personality .about-layout-v03{grid-template-columns:1fr 1fr;gap:80px}
.kamiomi-personality .about-v03 .v03-eyebrow{color:#46614e}
.kamiomi-personality .about-v03 h2{font-size:clamp(3.3rem,6.5vw,6rem);line-height:1.12;font-weight:850;letter-spacing:-.055em}
.kamiomi-personality .about-v03 h2 span{color:#be185f}
.kamiomi-personality .about-prose-v03{color:#455c4a}
.kamiomi-personality .about-v03 .v03-link{color:#173e31}
.kamiomi-personality .about-v03 :is(a,button):focus-visible{outline-color:#b51f60}
.kamiomi-personality .about-art-v03 img{border:1px solid #fff;box-shadow:0 2px 0 #fff,0 30px 50px #1d432028;transition:transform .55s cubic-bezier(.22,1,.36,1),box-shadow .55s}
.kamiomi-personality .about-art-v03 figcaption{color:#31573e;font-size:1.6rem}
/* The members become the dark central stage. The photos remain unaltered. */
.kamiomi-personality .members-v03{background:radial-gradient(ellipse at 80% 0,#204a35 0,transparent 45%),#092d26;color:#fff8e9;padding-block:120px}
.kamiomi-personality .members-v03 .v03-eyebrow{color:#ffb2d3}
.kamiomi-personality .members-v03 h2{font-size:clamp(2.5rem,4.8vw,4.4rem);font-weight:800;line-height:1.25}
.kamiomi-personality .members-v03 .section-note{color:#d4dfcf}
.kamiomi-personality .members-v03 .member-gallery{gap:32px}
.kamiomi-personality .members-v03 .member-v03{background:#173d30;border:1px solid #88ae843d;border-radius:32px;box-shadow:0 20px 50px #04150d26}
.kamiomi-personality .members-v03 .member-featured-v03{background:linear-gradient(135deg,#335332,#153c2f 65%);grid-template-columns:1fr 1fr;border-color:#b2c7a45c}
.kamiomi-personality .members-v03 .member-carousel{padding:24px 0 24px 24px}
.kamiomi-personality .members-v03 .member-portrait{background:#eeeadf}
.kamiomi-personality .members-v03 .member-card>.member-portrait{width:calc(100% - 40px);margin:20px 20px 0;border-radius:20px;aspect-ratio:1}
.kamiomi-personality .members-v03 .member-caption{padding:32px;gap:25px}
.kamiomi-personality .members-v03 .member-featured-v03 .member-caption{padding:36px;gap:30px}
.kamiomi-personality .members-v03 .member-role{font-size:.875rem;letter-spacing:.06em;color:#cadbc5}
.kamiomi-personality .members-v03 .member-identity h3{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:10px;font-size:2rem;line-height:1.25;color:#fff8e9}
.kamiomi-personality .members-v03 .member-identity h3 span{display:block;order:-1;font-family:Arial,Helvetica,sans-serif;font-weight:900;font-style:italic;letter-spacing:-.06em;font-size:clamp(2rem,5.2vw,4.2rem);line-height:1;color:#ffafd1;overflow-wrap:anywhere;max-width:100%}
.kamiomi-personality .members-v03 .member-featured-v03 .member-identity h3 span{font-size:clamp(3rem,6.7vw,6rem)}
.kamiomi-personality .members-v03 .member-quote{background:#fff8e9;border-color:#fff8e9;color:#103e2c;border-radius:28px 28px 28px 6px;font-weight:750;padding:24px;box-shadow:0 8px 18px #041d1229}
.kamiomi-personality .members-v03 .member-featured-v03 .member-quote{background:#ffd0e1;border-color:#ffe6ef;font-size:clamp(1.2rem,2.1vw,1.6rem)}
.kamiomi-personality .members-v03 .member-nomura .member-quote{font-size:clamp(1.75rem,3.2vw,2.6rem);letter-spacing:-.05em;line-height:1.5;background:#ffafd1;border-color:#ffc7de}
.kamiomi-personality .members-v03 .carousel-controls{border-color:#fff;background:linear-gradient(#fffaf1f7,#e6eddef2);box-shadow:0 2px 4px #0001,0 10px 20px #06271633,inset 0 1px 0 #fff}
.kamiomi-personality .members-v03 :is(button,a):focus-visible{outline-color:#ffafd1}
.kamiomi-personality .members-v03 .carousel-viewport:focus-visible{outline:3px solid #ffafd1;outline-offset:6px}
/* Vehicle imagery keeps its practical detail and picks up a quiet hover response. */
.kamiomi-personality .delivery-v03{background:#f4f1e7;padding-block:116px}
.kamiomi-personality .delivery-v03 .vehicle-photo{background:#e3e1d4;box-shadow:0 1px 0 #fff,0 14px 30px #12392115;overflow:hidden}
.kamiomi-personality .vehicle-photo img{transition:transform .65s cubic-bezier(.22,1,.36,1)}
.kamiomi-personality .delivery-v03 .vehicle-grid{grid-template-columns:1.25fr .875fr .875fr;align-items:stretch}
.kamiomi-personality .delivery-v03 .vehicle-grid .vehicle-photo{height:auto;aspect-ratio:1;max-height:none}
/* A vivid final invitation. Address and preparation notes stay in one stable surface. */
.contact-finale{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 80% 0,#f84998 0,transparent 57%),linear-gradient(135deg,#d62474,#b71659);padding:120px 0 128px;color:#fff8ec}
.contact-finale .contact-layout{grid-template-columns:1fr 1.02fr;gap:72px;align-items:center}
.contact-finale .eyebrow{color:#ffdfec;font:650 .875rem/1.7 system-ui;letter-spacing:.06em}
.contact-finale h2{font-size:clamp(2.6rem,4.7vw,4.6rem);font-weight:850;letter-spacing:-.055em;line-height:1.25;margin-top:28px}
.contact-finale .contact-description{font-size:1rem;color:#fff0f4;max-width:24em;line-height:1.9;margin-top:30px}
.contact-finale .contact-email{min-width:0;padding:36px;border:1px solid #fff9;border-radius:32px;background:linear-gradient(145deg,#fffaf2,#f6eddf);color:#133c2b;box-shadow:inset 0 1px 0 #fff,0 5px 10px #710b3224,0 26px 55px #65032235}
.contact-finale .contact-email-label{font-size:.875rem;font-weight:650;color:#4c6552;margin:0 0 26px}
.contact-finale .contact-email-link{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:0 0 28px;border:0;border-bottom:1px solid #183c3040;color:#133c2b;line-height:1.4;border-radius:0;max-width:100%;min-width:0;transition:color .18s}
.contact-finale .contact-email-link .email-address{flex:0 0 auto;max-width:100%}
.contact-finale .email-address{font-size:clamp(1.125rem,2.1vw,2rem);font-family:Arial,Helvetica,sans-serif;font-weight:750;letter-spacing:-.055em;overflow-wrap:anywhere;min-width:0}
.contact-finale .contact-email-link>span[aria-hidden]{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;border:1px solid #fff9;border-radius:50%;background:linear-gradient(#31694d,#15452e);color:#fff7e7;font:400 1.75rem/1 Arial;box-shadow:inset 0 1px 1px #ffffff80,0 5px 12px #09372335;transition:transform .2s,box-shadow .2s}
.contact-finale .contact-email-note{font-size:1rem;color:#4c6151;line-height:1.9;margin:24px 0 0}
.contact-finale .contact-email-link:active>span[aria-hidden]{transform:scale(.93)}
.contact-finale .contact-email-link:focus-visible{outline:3px solid #b51f60;outline-offset:8px}
/* The closing wordmark gets the entire width, with useful links kept distinct. */
.footer-finale{background:#082b23;color:#fff7e8;padding:68px 0 28px;overflow:hidden}
.footer-finale .footer-lead{display:flex;align-items:center;justify-content:space-between;gap:32px}
.footer-finale .footer-lead>p{font:750 .875rem/1.7 system-ui;letter-spacing:.12em}.footer-finale .footer-lead>p>span{color:#ffafd1}
.footer-finale .back-top{font-size:.875rem;color:#f4f2df;gap:18px}
.footer-finale .back-top>span{width:54px;height:54px;border-color:#bfd1b887;background:#ffffff0a;box-shadow:inset 0 1px 0 #ffffff30;transition:background .2s,transform .2s}
.footer-finale .footer-main{display:block;margin-top:50px}
.footer-finale .footer-brand{display:block;max-width:100%;width:max-content;line-height:1}
.footer-finale .footer-brand>.footer-wordmark{font-family:Georgia,'Times New Roman',serif;font-size:clamp(5rem,19vw,17rem);line-height:.95;font-weight:700;font-style:italic;letter-spacing:-.075em;white-space:normal}
.footer-finale .footer-dot{color:#ee4b94}
.footer-finale .footer-brand>small{display:block;font-size:.875rem;letter-spacing:.02em;line-height:1.7;margin-top:28px;color:#cfdecd}
.footer-finale .footer-bottom{margin-top:44px;padding-top:24px;border-color:#bfd1b830;color:#c2d0c0;font-size:.8125rem}
.footer-finale a:focus-visible{outline-color:#ffafd1}
@media(hover:hover) and (pointer:fine){
 .kamiomi-personality .about-art-v03:hover img{transform:rotateY(0) rotateZ(0) translateY(-5px);box-shadow:0 2px 0 #fff,0 40px 60px #1d432033}
 .kamiomi-personality .vehicle-photo:hover img{transform:scale(1.035)}
 .contact-finale .contact-email-link:hover{color:#b51f60}.contact-finale .contact-email-link:hover>span[aria-hidden]{transform:translate(2px,-2px);box-shadow:inset 0 1px 1px #fff8,0 8px 17px #09372340}
 .footer-finale .back-top:hover>span{transform:translateY(-3px);background:#ffffff20}
}
@media(max-width:1000px){.contact-finale .contact-layout{grid-template-columns:1fr;gap:42px}.contact-finale h2{font-size:clamp(2.8rem,6.8vw,4.8rem)}.contact-finale .contact-email{max-width:700px;width:100%}.contact-finale .email-address{font-size:clamp(1.125rem,3.4vw,2rem)}}
@media(max-width:800px){
 .kamiomi-personality .about-v03,.kamiomi-personality .members-v03,.kamiomi-personality .delivery-v03{padding-block:76px}
 .kamiomi-personality .about-layout-v03{grid-template-columns:1fr;gap:46px}.kamiomi-personality .about-v03 h2{font-size:clamp(3rem,14vw,4.7rem)}.kamiomi-personality .about-art-v03 figcaption{font-size:1.3rem}
 .kamiomi-personality .members-v03 h2{font-size:clamp(2rem,8.6vw,3rem)}.kamiomi-personality .members-v03 .member-gallery{gap:28px}
 .kamiomi-personality .members-v03 .member-v03{border-radius:28px}.kamiomi-personality .members-v03 .member-carousel{padding:16px 16px 0}
 .kamiomi-personality .members-v03 .member-card>.member-portrait{width:calc(100% - 32px);margin:16px 16px 0;border-radius:18px}
 .kamiomi-personality .members-v03 .member-caption,.kamiomi-personality .members-v03 .member-featured-v03 .member-caption{padding:25px 22px;gap:22px}
 .kamiomi-personality .members-v03 .member-identity h3{font-size:1.65rem;gap:12px}.kamiomi-personality .members-v03 .member-identity h3 span{font-size:clamp(2rem,10.1vw,4rem)}.kamiomi-personality .members-v03 .member-featured-v03 .member-identity h3 span{font-size:clamp(2.5rem,15vw,5.4rem)}
 .kamiomi-personality .members-v03 .member-quote,.kamiomi-personality .members-v03 .member-featured-v03 .member-quote{font-size:1.125rem;padding:22px;border-radius:24px 24px 24px 5px}.kamiomi-personality .members-v03 .member-nomura .member-quote{font-size:clamp(1.75rem,8.3vw,2.8rem)}
 .kamiomi-personality .delivery-v03 .vehicle-grid{grid-template-columns:1fr}.kamiomi-personality .delivery-v03 .vehicle-grid .vehicle-photo{aspect-ratio:4/3;max-height:520px}
 .contact-finale{padding:78px 0 84px}.contact-finale .contact-layout{gap:34px}.contact-finale h2{font-size:clamp(2.35rem,10.2vw,4rem);line-height:1.25}.contact-finale .contact-description{margin-top:26px}.contact-finale .contact-email{padding:26px 24px;border-radius:28px}
 .contact-finale .contact-email-link{gap:12px;flex-wrap:wrap;padding-bottom:24px}.contact-finale .email-address{font-size:clamp(1.125rem,5.3vw,1.6rem);letter-spacing:-.045em}.contact-finale .contact-email-link>span[aria-hidden]{width:48px;height:48px;font-size:1.5rem;margin-left:auto}.contact-finale .contact-email-label{margin-bottom:20px}.contact-finale .contact-email-note{margin-top:20px}
 .footer-finale{padding:48px 0 26px}.footer-finale .footer-lead{align-items:flex-start;gap:25px;flex-wrap:wrap}.footer-finale .back-top{width:auto;margin:0;font-size:.8125rem;gap:12px}.footer-finale .back-top>span{width:46px;height:46px}.footer-finale .footer-main{margin-top:40px}.footer-finale .footer-brand>.footer-wordmark{font-size:clamp(4.4rem,20vw,9rem)}.footer-finale .footer-brand>small{margin-top:22px}.footer-finale .footer-bottom{margin-top:32px;font-size:.8125rem}.footer-finale .footer-bottom>span{font-size:.8125rem}
}
@media(prefers-reduced-motion:reduce){.kamiomi-personality .hero-object-v03 img{animation:none;transform:none}.kamiomi-personality :is(.about-art-v03 img,.vehicle-photo img,.contact-email-link>span[aria-hidden],.back-top>span){transition:none!important;transform:none!important}}
html[data-motion=reduce] .kamiomi-personality .hero-object-v03 img{animation:none;transform:none}
html[data-motion=reduce] .kamiomi-personality :is(.about-art-v03 img,.vehicle-photo img,.contact-email-link>span[aria-hidden],.back-top>span){transition:none!important;transform:none!important}
@media(forced-colors:active){.contact-finale,.footer-finale,.contact-finale .contact-email,.kamiomi-personality .members-v03 .member-v03,.kamiomi-personality .members-v03 .member-quote{background:Canvas;color:CanvasText;border:1px solid ButtonText}.contact-finale .contact-email-link>span[aria-hidden]{background:ButtonFace;color:ButtonText;border-color:ButtonText}}
