/* All-pass Chicken · entrepreneurial partnership homepage.
   Built with the existing warm brand design system.  */
:root { --warm-ivory:#fff8e9; --warm-gold:#ffd164; --warm-ink:#432819; --warm-muted:#745343; --warm-red:#bb2721; }
html { scroll-padding-top:95px; }
body { background:#fffaf1; }
.announcement { background:#432819; min-height:40px; }
.announcement a { color:#ffdf8b; }
.navlinks { gap:20px; }
.hero-recruit { background:#fff4d9; }
.hero-recruit .hero-inner { grid-template-columns:1.14fr .86fr; gap:4%; min-height:590px; padding-block:58px 70px; }
.hero-recruit .hero-copy { max-width:750px; }
.hero-recruit h1 { font-size:clamp(42px,4.25vw,69px); line-height:1.27; letter-spacing:-.022em; margin-bottom:25px; }
.hero-recruit .hero-lead { font-size:17px; max-width:39ch; margin-bottom:22px; line-height:1.95; color:#634532; }
.hero-recruit .hero-chips { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin-bottom:25px; }
.hero-chips span { font-size:13px; color:#784a27; font-weight:600; padding:4px 13px; border-radius:7px; background:#ffdfa0; }
.hero-recruit .hero-footnote { max-width:560px; font-size:12px; line-height:1.7; }
.hero-recruit .hero-art { height:480px; align-self:center; }
.hero-recruit .hero-photo { background:#ffdb78; border-radius:18px 18px 80px 18px; }
.hero-recruit .hero-image-note { left:-16px; bottom:25px; font-size:20px; }
.hero-recruit .hero-stamp { width:107px; height:107px; }
.hero-quick { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:0; padding-bottom:28px; }
.hero-quick a { position:relative; display:flex; flex-direction:column; align-items:flex-start; padding:17px 13px 8px 17px; min-height:90px; transition:background .18s ease; }
.hero-quick a + a { border-left:0; }
.hero-quick a:hover,.hero-quick a:focus-visible { background:#ffebbd; }
.hero-quick a > span:first-child { color:#966b4b; font-size:12px; margin-bottom:3px; }
.hero-quick strong { font:400 21px/1.35 var(--font-soft); color:#4b2818; }
.hero-quick a > span:last-child { position:absolute; right:9px; bottom:13px; color:#bd2925; font-size:18px; }
.hero-quick a:first-child strong { color:#bb2721; }

.partner-section { background:#fffcf5; padding-top:107px; }
.partner-section .franchise-intro { grid-template-columns:1.22fr .48fr; align-items:start; margin-bottom:62px; }
.partner-section .franchise-intro h2 { max-width:820px; font-size:clamp(38px,4.25vw,64px); }
.partner-section .franchise-intro p { max-width:62ch; }
.partner-section .cost-callout { background:#ffe0a0; border-radius:16px; padding:30px; }
.partner-section .cost-callout strong { font-size:clamp(64px,7vw,107px); }
.partner-section .cost-callout small { color:#6b3f29; }
.partner-promise { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:6%; margin-bottom:110px; }
.partner-promise img { display:block; width:100%; height:auto; border-radius:15px; }
.partner-promise-copy { max-width:480px; }
.partner-promise h3 { font-size:clamp(31px,3.5vw,49px); margin-bottom:20px; }
.partner-promise p { color:#745343; max-width:39ch; font-size:16px; }
.partner-modes { padding:48px 0 75px; background:#fff2d7; margin-inline:calc(-1 * max(0px,(100vw - min(1220px,calc(100vw - 80px)))/2)); }
.partner-modes-heading,.cooperation-list { width:min(1220px,calc(100% - 80px)); margin-inline:auto; }
.partner-modes-heading { display:grid; grid-template-columns:1fr .8fr; align-items:end; gap:5%; margin-bottom:33px; }
.partner-modes-heading h3 { font-size:clamp(32px,3.25vw,49px); margin:0; }
.partner-modes-heading p { margin:0; color:#745343; max-width:48ch; }
.cooperation-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:21px; }
.cooperation-item { padding:27px 25px 24px; background:#fffaf0; min-height:245px; border-radius:13px; display:flex; flex-direction:column; }
.cooperation-item .option-number { font-family:var(--font-soft); font-size:18px; color:#b72b25; }
.cooperation-item h4 { font-size:26px; margin:14px 0 11px; }
.cooperation-item p { margin:0; line-height:1.85; color:#795640; font-size:14px; }
.partner-section .franchise-tech { padding-top:75px; grid-template-columns:.76fr 1.24fr; gap:6%; }
.partner-section .tech-heading h3 { font-size:clamp(30px,3vw,47px); }
.partner-section .tech-heading .tech-note { font-size:12px; line-height:1.75; }
.partner-section .tech-item h4 { font-size:21px; }
.partner-section .tech-item .tech-symbol { background:#ffeac5; border:0; color:#9c2822; }
.partner-section .franchise-panel { margin-top:50px; background:#48291b; border-radius:16px; padding:53px 58px; }
.partner-section .panel-text h3 { font-size:clamp(29px,3.2vw,44px); }
.partner-section .panel-text p { max-width:42ch; }
.partner-section .btn-line { background:#08773a; }
.partner-section .btn-line:hover { background:#07622f; }
.partner-section .btn-phone { color:#ffe7c9; }

.order-section { background:#fff0cf; }
.order-section .menu-layout { grid-template-columns:.7fr 1.3fr; gap:6%; }
.order-section .menu-copy h2 { font-size:clamp(39px,4.1vw,62px); }
.order-section .menu-copy > p:not(.small-note) { max-width:33ch; }
.order-section .menu-board { background:#fffaf0; box-shadow:none; }
.order-section .menu-board figcaption { font-size:13px; }
.order-section .small-note { font-size:13px; }

.social-section { background:#c42c26; color:#fff8eb; padding-block:105px; }
.social-layout { display:grid; grid-template-columns:1.04fr .96fr; gap:8%; align-items:center; }
.social-section h2 { font-size:clamp(40px,4.4vw,65px); color:#fff8eb; }
.social-section h2 em { color:#ffe6aa; }
.social-copy p { max-width:48ch; color:#ffe8cf; line-height:1.95; }
.social-links { display:grid; gap:13px; }
.social-link { display:flex; align-items:center; gap:22px; padding:22px 23px; background:#fff8ed; color:#472718; border-radius:14px; transition:transform .2s ease,background .2s ease; }
.social-link:hover { transform:translateY(-3px); background:#fff0d3; }
.social-icon { display:grid; place-items:center; flex-shrink:0; border-radius:10px; width:64px; height:64px; color:#fff; background:#ad312d; font:700 19px/1 var(--font-body); }
.social-link.line .social-icon { background:#08773a; font-size:14px; }
.social-link-copy { display:flex; flex:1; flex-direction:column; gap:3px; }
.social-link-copy strong { font:400 22px/1.5 var(--font-soft); }
.social-link-copy small { font-size:13px; color:#79594a; }
.social-link > span:last-child { font-size:23px; color:#bd2925; }

.contact-section { background:#fffaf0; }
.contact-intro { display:grid; grid-template-columns:1.2fr .8fr; gap:7%; align-items:end; margin-bottom:43px; }
.contact-intro h2 { font-size:clamp(39px,4vw,64px); }
.contact-intro > div:first-child > p { color:#735342; max-width:55ch; font-size:16px; }
.contact-intro .store-info { border:0; background:transparent; padding:8px 0; border-radius:0; display:block; }
.contact-intro .store-info h3 { margin-bottom:9px; }
.contact-intro .store-info p { margin:7px 0 0; font-size:15px; }
.map-layout { display:grid; grid-template-columns:1.25fr .75fr; align-items:stretch; gap:30px; }
.map-frame { border-radius:15px; overflow:hidden; min-height:456px; background:#ead6ad; }
.map-frame iframe { display:block; width:100%; height:415px; border:0; background:#ead6ad; }
.map-fallback { font-size:12px; text-align:center; padding:9px 15px; margin:0; color:#604a3a; }
.map-side { display:flex; flex-direction:column; justify-content:center; padding:25px 15px; }
.map-side h3 { font-size:clamp(26px,2.65vw,38px); margin:0 0 15px; }
.map-side p { color:#735342; max-width:32ch; margin-bottom:28px; }
.map-side .btn { align-self:start; }
.contact-extra-links { margin-top:30px; display:flex; flex-wrap:wrap; gap:15px 25px; }
.contact-extra-links a { color:#aa2623; text-decoration:underline; text-underline-offset:4px; font-size:14px; font-weight:600; }

.story-section { background:#fff5df; }
.story-section .about-layout { grid-template-columns:1fr 1fr; gap:6%; }
.story-section h2 { font-size:clamp(36px,3.6vw,59px); }
.story-section .long-copy { max-width:44ch; white-space:pre-line; }
.story-section .about-figure img { width:100%; object-fit:cover; border-radius:15px; }
.story-section .about-figure figcaption { font-size:13px; margin-top:14px; }
.articles-section { padding-block:90px 110px; }
.articles-heading h2 { font-size:clamp(36px,3.5vw,55px); }

@media (max-width:1100px) {
  .hero-recruit .hero-inner { grid-template-columns:1.1fr .9fr; }
  .hero-recruit h1 { font-size:clamp(40px,4.5vw,60px); }
  .hero-quick strong { font-size:18px; }
  .partner-promise { gap:4%; }
  .contact-intro { grid-template-columns:1fr .8fr; }
}
@media (max-width:900px) {
  .hero-quick { grid-template-columns:repeat(3,1fr); }
  .hero-quick a { min-height:72px; }
  .hero-quick a:nth-child(4) { border-left:0; }
  .hero-recruit .hero-inner { grid-template-columns:1fr 1fr; gap:3%; }
  .hero-recruit .hero-art { height:370px; }
  .hero-recruit .hero-lead { font-size:15px; }
  .partner-section .franchise-intro { grid-template-columns:1fr; gap:22px; }
  .partner-section .cost-callout { max-width:400px; }
  .partner-promise { grid-template-columns:1fr; }
  .partner-promise img { max-width:740px; }
  .partner-modes { margin-inline:-25px; }
  .partner-modes-heading,.cooperation-list { width:calc(100% - 50px); }
  .partner-modes-heading { grid-template-columns:1fr; }
  .partner-section .franchise-tech { grid-template-columns:1fr; }
  .social-layout { gap:6%; }
  .contact-intro { grid-template-columns:1fr; }
  .map-layout { grid-template-columns:1fr 1fr; }
}
@media (max-width:700px) {
  .hero-recruit .hero-inner { grid-template-columns:1fr; min-height:0; padding-block:43px 47px; gap:23px; }
  .hero-recruit h1 { font-size:clamp(37px,8vw,53px); line-height:1.35; }
  .hero-recruit .hero-lead { max-width:45ch; font-size:15px; }
  .hero-recruit .hero-art { height:min(90vw,360px); max-width:440px; margin:10px auto; }
  .hero-recruit .hero-image-note { font-size:16px; left:-7px; }
  .hero-quick { grid-template-columns:repeat(2,1fr); gap:0; width:100%; padding:0 18px 15px; }
  .hero-quick a { border:0!important; border-top:0!important; padding-left:12px; min-height:73px; }
  .hero-quick strong { font-size:18px; }
  .partner-section { padding-top:75px; }
  .partner-section .franchise-intro h2 { font-size:clamp(35px,8vw,51px); }
  .partner-section .cost-callout strong { font-size:83px; }
  .partner-promise { margin-bottom:65px; }
  .partner-promise h3,.partner-modes-heading h3 { font-size:clamp(32px,7.4vw,45px); }
  .partner-modes { margin-inline:-19px; padding:45px 0; }
  .partner-modes-heading,.cooperation-list { width:calc(100% - 38px); }
  .cooperation-list { grid-template-columns:1fr; gap:11px; }
  .cooperation-item { min-height:0; padding:23px; }
  .cooperation-item h4 { margin-top:6px; }
  .partner-section .franchise-tech { padding-top:52px; }
  .partner-section .franchise-panel { margin-top:35px; padding:28px 23px; }
  .partner-section .franchise-panel .btn { white-space:normal; }
  .order-section .menu-layout { grid-template-columns:1fr; }
  .order-section .menu-copy h2 { font-size:clamp(35px,8vw,48px); }
  .social-section { padding-block:73px; }
  .social-layout { grid-template-columns:1fr; gap:28px; }
  .social-section h2 { font-size:clamp(38px,7.7vw,50px); }
  .social-link { padding:17px; gap:12px; }
  .social-icon { height:50px; width:50px; font-size:15px; }
  .social-link-copy strong { font-size:19px; }
  .social-link-copy small { font-size:12px; }
  .map-layout { grid-template-columns:1fr; gap:10px; }
  .map-frame { min-height:350px; }
  .map-frame iframe { height:330px; }
  .map-side { padding:19px 0; }
  .map-side p { max-width:50ch; }
  .story-section .about-layout { grid-template-columns:1fr; }
  .story-section h2 { font-size:clamp(36px,7.8vw,50px); }
}
@media (max-width:400px) {
  .hero-recruit h1 { font-size:36px; }
  .hero-recruit .hero-chips span { font-size:12px; }
  .hero-quick strong { font-size:17px; }
  .social-link-copy small { font-size:11px; }
  .map-side .btn { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; }
  .social-link:hover { transform:none; }
}


/* Refined title wrapping, better high-contrast panels and spacious tablet layout. */
.hero-recruit h1{font-size:clamp(48px,5vw,77px);line-height:1.22}
.partner-section .franchise-panel h3 em{color:#ffe1a7}
.partner-section .franchise-panel h3{color:#fff8e9}
.partner-section .tech-heading h3{font-size:clamp(29px,2.75vw,43px)}
.order-section .menu-copy h2{font-size:clamp(36px,3.6vw,56px)}
.map-frame{min-height:415px}
.map-frame iframe{height:415px}
@media(min-width:701px) and (max-width:900px){
 .hero-recruit .hero-inner{grid-template-columns:1fr;gap:35px;padding-top:60px}
 .hero-recruit .hero-copy{max-width:720px}
 .hero-recruit h1{font-size:clamp(51px,6.6vw,65px)}
 .hero-recruit .hero-lead{max-width:65ch}
 .hero-recruit .hero-art{height:430px;max-width:560px;margin-inline:auto}
 .order-section .menu-layout,.social-layout{grid-template-columns:1fr}
 .contact-intro{grid-template-columns:1fr}
 .map-layout{grid-template-columns:1fr}
 .map-side{padding:16px 0}
 .story-section .about-layout{grid-template-columns:1fr}
}
@media(max-width:700px){
 .hero-recruit h1{font-size:clamp(37px,9vw,51px)}
 .social-section h2{font-size:clamp(36px,7.6vw,49px)}
 .contact-intro h2{font-size:clamp(37px,7.8vw,50px)}
 .story-section h2{font-size:clamp(36px,7.6vw,49px)}
 .map-frame{min-height:330px}
 .map-frame iframe{height:330px}
}

/* Accessible utility copy and a grounded editorial tablet rhythm. */
.announcement,.announcement span,.announcement a,
.hero-recruit .hero-footnote,
.hero-quick a > span:first-child,
.partner-section .tech-heading .tech-note,
.partner-section .cost-callout > small,
.social-link-copy small,
.order-section .small-note,
.footer-bottom small,.footer-admin{font-size:13px}
.hero-quick a > span:first-child{color:#805033}
@media(min-width:701px) and (max-width:900px){
 .social-copy{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:end}
 .social-copy h2{font-size:clamp(37px,5vw,45px)}
}
@media(max-width:700px){
 .social-copy{display:block}
 .announcement{font-size:13px;gap:10px;line-height:1.5}
 .announcement span,.announcement a{font-size:13px}
}
@media(max-width:400px){
 .announcement{gap:7px;padding:6px}
 .announcement span,.announcement a,.social-link-copy small{font-size:13px}
}
