/* SavorIP public-first homepage refinement v4.3.3 */
.mobile-hero-signature{display:none}
.core-entry-card{grid-template-columns:auto minmax(0,1fr) 104px auto;overflow:hidden}
.core-entry-card img{width:104px;height:86px;object-fit:cover;border-radius:14px;border:1px solid rgba(231,199,115,.28)}
.core-entry-card.is-primary img{border-color:rgba(7,31,24,.2)}

@media (min-width:981px){
  .hero-inner{min-height:700px;padding-top:calc(var(--header-height) + 52px);padding-bottom:42px;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)}
  .hero h1{font-size:clamp(3.4rem,5.3vw,6.5rem);line-height:1.02}
  .hero-lead{margin-top:24px;max-width:690px;line-height:1.75}
  .hero-actions{margin-top:28px}
  .hero-facts{margin-top:30px}
  .hero-visual{min-height:610px}
  .hero-character{width:min(38vw,500px);right:1%;bottom:-6px}
  .savori-card{bottom:24px}
  .core-entry{padding-top:30px}
}

@media (max-width:760px){
  :root{--mobile-tabbar-height:60px}
  body{padding-bottom:0!important}
  html{scroll-padding-top:78px}
  main>section{scroll-margin-top:78px}
  .site-header{height:72px}
  .header-inner{min-height:72px;padding-inline:16px}
  .brand-mark{width:43px;height:43px;border-radius:12px}
  .brand-copy strong{font-size:1.02rem;letter-spacing:.1em}
  .brand-copy small{display:none}
  .language-select-wrap{display:none}
  .hero{min-height:0}
  .hero-inner{display:block!important;width:100%!important;min-height:0!important;padding:88px 0 22px!important}
  .hero-copy{width:100%!important;max-width:none!important;padding:0 16px!important}
  .hero .eyebrow{font-size:.62rem;margin-bottom:12px}
  .hero h1{position:relative;z-index:4;width:100%!important;max-width:none!important;font-size:2.12rem!important;line-height:1.08!important;letter-spacing:-.045em!important}
  .mobile-hero-signature{position:relative;z-index:5;display:grid;grid-template-columns:68px minmax(0,1fr) 26px;align-items:center;gap:11px;height:84px;margin-top:16px;padding:7px 11px 7px 7px;overflow:hidden;border:1px solid rgba(231,195,118,.34);border-radius:20px;background:linear-gradient(105deg,rgba(5,39,30,.98),rgba(17,62,48,.9));box-shadow:0 15px 32px rgba(0,0,0,.2)}
  .mobile-hero-portrait{display:block;width:68px;height:68px;overflow:hidden;border:2px solid rgba(231,195,118,.72);border-radius:16px;background:#0b3026}
  .mobile-hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 18%;transform:scale(1.24)}
  .mobile-hero-signature-copy{display:block;min-width:0}
  .mobile-hero-signature-copy small{display:block;color:#e7c376;font-size:.5rem;font-weight:800;letter-spacing:.13em}
  .mobile-hero-signature-copy strong{display:block;margin-top:3px;color:#fff;font-family:var(--serif);font-size:1rem;line-height:1.15}
  .mobile-hero-signature-copy em{display:block;margin-top:4px;color:rgba(255,255,255,.62);font-size:.64rem;font-style:normal;line-height:1.3}
  .mobile-hero-signature>b{display:grid;width:26px;height:26px;place-items:center;color:#e7c376;border:1px solid rgba(231,195,118,.42);border-radius:50%;font-family:var(--serif);font-size:.78rem}
  .hero-lead{position:relative;z-index:4;width:100%!important;max-width:none!important;margin-top:14px!important;font-size:.78rem!important;line-height:1.5!important;padding-right:0}
  .hero-actions{position:relative;z-index:5;display:block!important;margin-top:17px!important}
  .hero-actions .button{min-height:49px!important;width:100%!important;font-size:.86rem}
  .hero-actions .button-ghost{display:none}
  .hero-facts{display:none}
  .hero-visual{display:none!important}
  .savori-card,.hero-floating-tag{display:none}
  .scroll-cue{display:none}
  .core-entry{padding:16px 0 20px!important}
  .core-entry .section-shell{width:auto!important;margin-left:14px!important;margin-right:14px!important}
  .core-entry-heading{margin-bottom:10px}
  .core-entry-heading .section-kicker{font-size:.62rem;margin-bottom:5px}
  .core-entry-heading h2{font-size:1.22rem;line-height:1.16;letter-spacing:-.035em}
  .core-entry-grid{gap:8px!important}
  .core-entry-card{grid-template-columns:20px minmax(0,1fr) 58px 18px;height:92px!important;min-height:92px!important;padding:10px 10px!important;gap:8px;border-radius:15px!important}
  .core-entry-card>span{align-self:start;padding-top:4px}
  .core-entry-card strong{font-size:.94rem;line-height:1.22;margin-bottom:3px}
  .core-entry-card p{font-size:.69rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .core-entry-card img{width:58px;height:58px;border-radius:10px}
  .core-entry-card>b{font-size:1.15rem}
  .experience-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;overflow:visible!important;scroll-snap-type:none!important;padding-inline:0!important}
  .experience-card{width:100%!important;min-width:0!important;min-height:330px!important;scroll-snap-align:none!important}
  .experience .section-heading{padding-top:4px}
  .experience .section-heading h2{font-size:clamp(1.9rem,9vw,2.5rem);line-height:1.12}
  .brand-transition,.real-art,.experience,.creative-support-home,.savori-section,.connection,.journey,.business-engine,.store-section,.faq,.closing{overflow-x:clip;min-height:0!important}
  .brand-transition,.real-art,.experience,.creative-support-home,.savori-section,.connection,.journey,.business-engine,.store-section,.faq{padding-top:54px!important;padding-bottom:54px!important}
  .section-heading{margin-bottom:26px!important}
  .real-art-grid,.savori-layout,.store-layout,.faq-layout{gap:28px!important}
  .connection-stage{margin-top:30px!important;min-height:0!important}
  .connection-image{min-height:250px!important}
  .journey-steps{margin-top:30px!important}
  .store-visual{min-height:260px!important;height:260px!important;margin-top:0!important}
  .store-device{width:min(244px,76%)!important;height:254px!important;max-height:254px!important;border-width:6px!important;border-radius:24px!important}
  .store-device img{height:100%!important;max-height:none!important;object-position:center 18%!important;border-radius:18px!important}
  .store-seal{transform:scale(.78);transform-origin:left bottom}
  .faq-layout{gap:24px!important}
  .mobile-tabbar{display:none!important}
  .back-to-top{bottom:18px}
  .closing{padding-bottom:52px}
  .brand-transition{padding-top:34px!important}
}

@media (max-width:390px){
  .hero h1{font-size:2rem!important}
  .hero-lead{font-size:.77rem!important;line-height:1.48!important}
  .mobile-hero-signature{grid-template-columns:64px minmax(0,1fr) 24px;height:80px}
  .mobile-hero-portrait{width:64px;height:64px}
  .core-entry-card{grid-template-columns:20px minmax(0,1fr) 56px 17px}
  .core-entry-card img{width:56px;height:56px}
}
