/* みんカレ LP final design — isolated to mc3- sections.
   Existing hero / analytics / authentication / booking runtime are deliberately untouched. */
:root{--mc3-navy:#111c3b;--mc3-blue:#0867f7;--mc3-muted:#5a7192;--mc3-border:#e4efff;--mc3-shadow:0 12px 32px -22px rgba(18,83,167,.31)}
body.leading-normal{background:#f4faff!important;background-image:radial-gradient(circle at 76% 6%,#e5f3ff 0,transparent 29%),linear-gradient(#f5fbff,#f3f9ff)!important}
.mc3-shell{max-width:1390px;width:calc(100% - 60px);margin:0 auto;border:1px solid #e8f2fc;border-radius:21px;padding:18px 22px;background:#fff;box-shadow:0 16px 34px -28px #5d97da}
.mc3-shell *{box-sizing:border-box}
.mc3-shell h2,.mc3-shell h3,.mc3-shell h4{margin:0;color:#122141;font-family:Inter,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif!important;letter-spacing:-.036em;font-weight:900}
.mc3-shell p{margin:0}
.mc3-shell a{transition:filter .16s,transform .16s}
.mc3-shell a:hover{filter:brightness(.94)}
.mc3-heading{display:flex;flex-direction:column;gap:5px;margin-bottom:16px}
.mc3-heading h2{font-size:clamp(22px,2vw,31px);line-height:1.24}
.mc3-heading p{font-size:13px;color:#6c7e99;font-weight:600;line-height:1.55}
.mc3-heading-inline{display:flex;flex-direction:row;align-items:baseline;gap:18px;flex-wrap:wrap}
.mc3-between{display:flex;flex-direction:row;justify-content:space-between;align-items:end;gap:20px}
.mc3-between a{font-size:12px;font-weight:900;color:var(--mc3-blue);white-space:nowrap}
.mc3-kicker{font-size:12px;color:#0968f7;font-weight:900;line-height:1.5;margin-bottom:5px!important}
.mc3-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mc3-feature{display:flex;flex-direction:column;min-height:148px;padding:17px 19px 16px;border:1px solid #ebf2fd;background:linear-gradient(#fff,#fdfefe);border-radius:15px;color:inherit;text-decoration:none!important;box-shadow:var(--mc3-shadow)}
.mc3-feature-head{display:flex;align-items:center;justify-content:space-between;min-height:43px;margin-bottom:9px}
.mc3-google-icon{display:inline-grid;place-items:center;width:38px;height:38px;font-size:22px;font-weight:900;color:#1964e9;background:linear-gradient(90deg,#5d9be8 18%,#f7f9ff 18%,#fff 78%,#f6b347 78%);border-radius:9px;border-bottom:5px solid #33b06a}
.mc3-line-logo{width:42px!important;height:42px!important;object-fit:contain!important;display:block!important;filter:none!important;border:0!important;transform:none!important}
.mc3-feature-symbol{display:grid;place-items:center;width:40px;height:40px;background:#2674f5;color:white;border-radius:10px;font-size:28px;font-weight:900}
.mc3-people-icon{font-size:0;position:relative;background:transparent}
.mc3-people-icon::before{content:"";position:absolute;width:12px;height:12px;background:#1776f7;border-radius:50%;top:4px;left:14px;box-shadow:-14px 6px #1776f7,14px 6px #1776f7}
.mc3-people-icon::after{content:"";position:absolute;width:21px;height:15px;border-radius:11px 11px 3px 3px;background:#1776f7;top:18px;left:10px;box-shadow:-14px 4px 0 -3px #1776f7,14px 4px 0 -3px #1776f7}
.mc3-feature-arrow{font-size:26px;background:#edf5ff;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;line-height:1;color:#2176fa}
.mc3-feature h3{font-size:clamp(14px,1.25vw,18px);line-height:1.38;margin:0 0 7px}
.mc3-feature p{font-size:12px;line-height:1.65;color:#536883;font-weight:600}
.mc3-detail-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:12px;margin-top:14px}
.mc3-detail{border-radius:17px;border:1px solid #eaf2fc;background:#fff;display:grid;grid-template-columns:1fr 1fr;min-height:245px;gap:8px;align-items:center;padding:20px 17px;box-shadow:var(--mc3-shadow);overflow:hidden}
.mc3-detail h3{font-size:clamp(22px,2.1vw,31px);line-height:1.13;margin-bottom:9px}
.mc3-detail-body{font-size:12px;font-weight:600;color:#546985;line-height:1.7;margin-bottom:15px!important}
.mc3-checks{display:grid;gap:9px;list-style:none;padding:0;margin:0}
.mc3-checks li{font-size:12px;color:#4c617b;line-height:1.5;padding-left:22px;position:relative;font-weight:700}
.mc3-checks li:before{content:'✓';display:grid;place-items:center;position:absolute;left:0;top:0;width:17px;height:17px;background:#1680ff;color:#fff;border-radius:50%;font-size:11px;font-weight:900}
.mc3-detail-visual{position:relative;display:flex;justify-content:center;align-items:center;min-height:221px}
.mc3-tiny-callout{position:absolute;top:0;color:#1472ed!important;font-size:11px;font-weight:900}
.mc3-grid-demo{border:1px solid #e2edfc;background:#fff;border-radius:13px;box-shadow:0 12px 28px -22px #2c6dcb;width:min(100%,267px);padding:14px 8px 10px;margin-top:15px}
.mc3-grid-title{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#142c51;margin-bottom:12px}.mc3-grid-title span{font-size:20px;color:#1d72ed}.mc3-grid-title strong{font-weight:900}
.mc3-availability-matrix{display:grid;grid-template-columns:39px repeat(7,minmax(0,1fr));gap:0;text-align:center;color:#246ff7;font-size:12px;font-weight:850}
.mc3-availability-matrix>span,.mc3-availability-matrix>b,.mc3-availability-matrix>i{border-right:1px solid #edf2fb;border-bottom:1px solid #edf2fb;min-width:0;display:flex;align-items:center;justify-content:center;height:22px}
.mc3-availability-matrix>span{display:flex;flex-direction:column;height:33px;font-size:10px;color:#2d4771;font-weight:900}
.mc3-availability-matrix span small{font-size:8px;line-height:1.1}
.mc3-availability-matrix b{font-size:9px;color:#3e5577}
.mc3-availability-matrix i{font-style:normal;font-weight:900}
.mc3-availability-matrix i:nth-child(8n + 7){color:#2784ff}
.mc3-availability-matrix i:nth-child(8n + 8){color:#9baabe}
.mc3-availability-matrix i.mc3-picked{background:#1671f5;color:white;border-radius:5px}
.mc3-grid-legend{font-size:8px;color:#7184a0;margin-top:7px!important;text-align:center}
.mc3-reserve-phone{width:190px;max-width:100%;background:#fff;border:1px solid #dceafb;border-radius:13px;padding:9px 10px;box-shadow:0 12px 29px -17px #3e7bd1}
.mc3-reserve-brand{display:flex;align-items:center;gap:4px;color:#14264b;font-size:10px;font-weight:900;padding-bottom:12px}
.mc3-reserve-brand img{width:19px;height:19px;object-fit:contain}.mc3-reserve-brand span{margin-left:auto;font-size:13px;color:#295493}
.mc3-reserve-phone h4{font-size:12px;margin-bottom:12px!important}
.mc3-reserve-choice{background:#fff;border:1px solid #e8eff9;color:#617391;font-size:9px;font-weight:750;padding:7px 5px;margin-bottom:5px;border-radius:7px;white-space:nowrap}
.mc3-reserve-choice span{color:#1d75fa;font-size:13px;margin-right:4px}
.mc3-choice-active{background:#e8f2ff;border-color:#8bc4ff;color:#006afa}
.mc3-choice-off,.mc3-choice-off span{color:#e45d65}
.mc3-reserve-button{display:block;text-align:center;background:#1271f7;color:white;padding:9px 3px;border-radius:7px;font-size:9px;font-weight:900;margin-top:9px}
.mc3-anchor{scroll-margin-top:90px;display:block}
.mc3-scenes{background:#e5f3ff!important;margin-top:12px;padding:16px 22px 14px}
.mc3-scene-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.mc3-scene{min-height:126px;background:#fff;border:1px solid #e5effb;border-radius:14px;padding:13px;position:relative;overflow:hidden}
.mc3-scene h3{font-size:14px;margin-bottom:6px;line-height:1.3}
.mc3-scene p{font-size:11px;line-height:1.6;color:#60738f;max-width:57%;font-weight:650}
.mc3-scene img{width:49%;height:auto;position:absolute;right:-5px;bottom:-2px;max-height:109px;object-fit:contain;object-position:bottom;mask-image:linear-gradient(90deg,transparent 0,#000 22%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%)}
.mc3-problems{padding:16px 22px}
.mc3-before-after{display:grid;grid-template-columns:1fr 50px 1.22fr;gap:10px;align-items:center}
.mc3-before,.mc3-after{background:linear-gradient(#f6faff,#edf6ff);border-radius:16px;padding:13px 18px;min-height:131px}
.mc3-before h3,.mc3-after h3{font-size:14px;margin-bottom:8px}
.mc3-after h3{color:#006cff}
.mc3-before ul,.mc3-after ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.mc3-before li,.mc3-after li{position:relative;background:#fff;border-radius:7px;font-size:11px;font-weight:700;line-height:1.4;color:#536987;padding:4px 7px 4px 26px}
.mc3-before li:before{content:'×';position:absolute;left:6px;background:#a5b4c8;color:white;border-radius:50%;width:14px;height:14px;display:grid;place-items:center;font-weight:900}
.mc3-after li:before{content:'✓';position:absolute;left:6px;background:#1680ff;color:white;border-radius:50%;width:14px;height:14px;display:grid;place-items:center;font-weight:900}
.mc3-forward{text-align:center;font-size:35px;color:#0a71f8;font-weight:900}
.mc3-after{display:grid;grid-template-columns:1fr 155px;align-items:end;position:relative;padding-right:0;overflow:hidden}
.mc3-after img{width:155px;max-height:130px;object-fit:contain;object-position:bottom;align-self:end;mask-image:linear-gradient(90deg,transparent 0,#000 22%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%)}
.mc3-pricing{display:flex;align-items:center;justify-content:space-between;background:#f3f8ff!important;padding:13px 22px;gap:20px}
.mc3-pricing h2{font-size:17px;margin-bottom:3px}.mc3-pricing p:not(.mc3-kicker){font-size:11px;color:#60748c}
.mc3-plan-link{background:white;border:1px solid #bcdaff;color:#0b6afa;border-radius:10px;padding:10px 17px;font-weight:900;white-space:nowrap;font-size:12px}
.mc3-faq{padding:12px 22px}.mc3-faq .mc3-heading{margin-bottom:9px}
.mc3-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px}
.mc3-faq details{background:#fff;border:1px solid #e1edfb;border-radius:9px;font-size:11px;font-weight:750;color:#182b50}
.mc3-faq summary{list-style:none;cursor:pointer;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:9px}
.mc3-faq summary::-webkit-details-marker{display:none}
.mc3-faq summary:after{content:'+';font-size:17px;color:#1d7bf8;font-weight:700;line-height:1}
.mc3-faq details[open] summary:after{content:'−'}
.mc3-faq details p{font-size:11px;color:#576b87;line-height:1.6;padding:0 12px 12px}
body main>section.mc3-cta:last-child{background:linear-gradient(100deg,#e5f4ff,#f4faff,#dff0ff)!important;border-radius:19px!important;max-width:1390px!important;margin:12px auto 24px!important}
.mc3-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px}
.mc3-cta p{font-size:11px;color:#1477fa;font-weight:900}
.mc3-cta h2{font-size:clamp(21px,2.5vw,29px);line-height:1.25}
.mc3-cta-action{display:flex;flex-direction:column;align-items:stretch;min-width:300px;gap:5px}
.mc3-cta-action a{display:block;text-align:center;border-radius:12px;background:linear-gradient(105deg,#248aff,#0058ee);color:#fff!important;font-size:14px;font-weight:900;padding:11px 18px;box-shadow:0 12px 22px -17px #0863e1}
.mc3-cta-action small{text-align:center;color:#7488a2;font-size:9px}
@media(max-width:1099px){.mc3-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mc3-detail-grid{grid-template-columns:1fr}.mc3-detail{grid-template-columns:1fr 1fr}.mc3-scenes,.mc3-shell{width:calc(100% - 32px)}.mc3-scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mc3-scene{min-height:135px}}
@media(max-width:680px){.mc3-shell{padding:15px 13px;width:calc(100% - 18px);border-radius:15px}.mc3-heading-inline{gap:4px}.mc3-heading h2{font-size:22px}.mc3-feature-grid{gap:8px}.mc3-feature{padding:12px;min-height:156px}.mc3-feature h3{font-size:13px}.mc3-feature p{font-size:10.5px}.mc3-detail{padding:14px;grid-template-columns:1fr;gap:12px}.mc3-detail h3{font-size:24px}.mc3-detail-body{font-size:13px}.mc3-detail-visual{min-height:235px}.mc3-detail-visual .mc3-grid-demo{width:min(100%,310px)}.mc3-scene-grid{gap:8px}.mc3-scene{min-height:155px;padding:10px}.mc3-scene h3{font-size:12px}.mc3-scene p{font-size:10px;max-width:80%}.mc3-scene img{width:75%;max-height:90px;opacity:.9}.mc3-before-after{grid-template-columns:1fr}.mc3-forward{font-size:23px;transform:rotate(90deg)}.mc3-after{grid-template-columns:1fr 100px}.mc3-after img{width:108px}.mc3-pricing,.mc3-cta{flex-direction:column;align-items:stretch}.mc3-cta-action{min-width:0}.mc3-faq-grid{grid-template-columns:1fr}.mc3-between{align-items:flex-start}.mc3-between a{font-size:10px}.mc3-scenes{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.mc3-shell a{transition:none}}
/* Override only legacy page-wide section skins; the existing hero is untouched. */
body #features.mc3-features,body #faq.mc3-faq{background:#fff!important}
body #pricing.mc3-pricing{background:#f3f8ff!important}

html,body{overflow-x:clip!important}
/* Align the approved two-phone hero artwork below the fixed navigation at desktop widths. */
@media(min-width:1241px){
 .mc-v2-hero{min-height:462px!important}
 .mc-v2-main{min-height:450px!important}
 .mc-v2-copy{transform:translateY(34px)!important}
 .mc-v2-goal-art,.mc-v2-goal-logo-overlay{top:-15px!important}
 .mc-v2-goal-line{top:81px!important}
 .mc-v2-goal-art{mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 100%)}
}