
/**
 * SENSHIN "やわらかポップ" preset
 * Scoped entirely to body.ss-style-pop.
 * Brand green/orange remain the base; pastel accents make the site brighter
 * without changing content or information architecture.
 */

body.ss-style-pop{
  --ss-primary:#3d715b;
  --ss-primary-dark:#214f40;
  --ss-secondary:#6e9b87;
  --ss-leaf:#7da477;
  --ss-leaf-pale:#e6f3e8;
  --ss-cream:#fff7dc;
  --ss-sand:#f6e9c7;
  --ss-ink:#25312c;
  --ss-muted:#64706a;
  --ss-accent:#d95f32;
  --ss-accent-pale:#ffe5da;
  --ss-line:#dce7df;
  --ss-focus:#f4ca50;
  --ss-shadow:0 18px 44px rgba(46,88,70,.13);
  --ss-radius:26px;
  --ss-radius-small:16px;
  --ss-pop-yellow:#f6ca55;
  --ss-pop-yellow-pale:#fff1b9;
  --ss-pop-blue:#82c7d1;
  --ss-pop-blue-pale:#dff2f3;
  --ss-pop-pink:#e9958e;
  --ss-pop-pink-pale:#fbe3dc;
  --ss-pop-purple:#aa9bd2;
  --ss-pop-purple-pale:#eee9fb;
  background:#fffdf8;
}
body.ss-style-pop h1,
body.ss-style-pop h2,
body.ss-style-pop h3,
body.ss-style-pop h4{
  font-family:var(--ss-sans);
  font-weight:800;
  letter-spacing:.005em;
}
body.ss-style-pop .ss-eyebrow{
  letter-spacing:.13em;
  color:var(--ss-accent)!important;
}
body.ss-style-pop :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline-color:#285d4a;
  box-shadow:0 0 0 7px rgba(246,202,85,.52);
}

/* Header */
body.ss-style-pop .ss-site-header{
  background:rgba(255,253,247,.97);
  border-bottom:4px solid var(--ss-pop-yellow);
}
body.ss-style-pop .ss-utility{border-bottom-color:#f4ead0}
body.ss-style-pop .ss-primary-nav a::after{
  height:4px;
  bottom:3px;
  border-radius:999px;
  background:var(--ss-pop-yellow);
}
body.ss-style-pop .ss-header-cta{
  background:var(--ss-pop-yellow);
  color:var(--ss-primary-dark);
  box-shadow:0 7px 0 #dfad34,0 12px 26px rgba(78,75,40,.12);
}
body.ss-style-pop .ss-header-cta:hover{transform:translateY(-2px);box-shadow:0 9px 0 #dfad34,0 15px 28px rgba(78,75,40,.14)}
body.ss-style-pop .ss-primary-nav .sub-menu{
  border-radius:20px;
  border-width:2px;
}

/* Hero */
body.ss-style-pop .ss-hero{
  background:linear-gradient(135deg,#2c624e,#4b806a);
}
body.ss-style-pop .ss-hero::before,
body.ss-style-pop .ss-hero::after{
  content:"";
  position:absolute;
  z-index:1;
  border-radius:50%;
  pointer-events:none;
}
body.ss-style-pop .ss-hero::before{
  width:180px;height:180px;right:6vw;top:8%;
  background:rgba(246,202,85,.88);
  mix-blend-mode:screen;
}
body.ss-style-pop .ss-hero::after{
  width:110px;height:110px;right:20vw;top:26%;
  background:rgba(130,199,209,.54);
}
body.ss-style-pop .ss-hero__media::after{
  background:linear-gradient(90deg,rgba(28,73,58,.88) 0%,rgba(39,91,72,.67) 42%,rgba(39,91,72,.18) 76%,rgba(39,91,72,.05) 100%);
}
body.ss-style-pop .ss-hero h1{
  text-shadow:0 3px 22px rgba(13,48,37,.28);
}
body.ss-style-pop .ss-hero .ss-eyebrow{color:#ffe379!important}
body.ss-style-pop .ss-hero .ss-button--primary,
body.ss-style-pop .ss-actions .ss-button--primary{
  background:var(--ss-pop-yellow);
  color:var(--ss-primary-dark);
  border-color:var(--ss-pop-yellow);
  box-shadow:0 7px 0 #dcae39;
}
body.ss-style-pop .ss-hero .ss-button--ghost{
  background:rgba(255,255,255,.92);
  color:var(--ss-primary-dark);
  border-color:#fff;
}

/* Shared sections */
body.ss-style-pop .ss-section--cream{
  background:
    radial-gradient(circle at 9% 18%,rgba(246,202,85,.24) 0 70px,transparent 71px),
    radial-gradient(circle at 92% 78%,rgba(130,199,209,.18) 0 90px,transparent 91px),
    var(--ss-cream);
}
body.ss-style-pop .ss-section--dark{
  background:
    radial-gradient(circle at 95% 15%,rgba(246,202,85,.15) 0 110px,transparent 111px),
    radial-gradient(circle at 5% 85%,rgba(130,199,209,.12) 0 90px,transparent 91px),
    var(--ss-primary-dark);
}
body.ss-style-pop .ss-heading h2{
  position:relative;
  display:inline-block;
}
body.ss-style-pop .ss-heading h2::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-9px;
  width:52px;
  height:7px;
  border-radius:999px;
  background:var(--ss-pop-yellow);
}

/* Page heading */
body.ss-style-pop .ss-page-hero,
body.ss-style-pop .ss-page-heading{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 30%,rgba(130,199,209,.32) 0 88px,transparent 89px),
    radial-gradient(circle at 76% 105%,rgba(246,202,85,.36) 0 118px,transparent 119px),
    #fff7df;
}
body.ss-style-pop .ss-page-hero::before{
  content:"";
  position:absolute;
  width:62px;height:62px;
  right:20%;
  top:16px;
  border:11px solid rgba(233,149,142,.35);
  border-radius:50%;
}
body.ss-style-pop .ss-page-hero h1,
body.ss-style-pop .ss-page-heading h1{
  color:var(--ss-primary-dark);
}

/* Buttons & links */
body.ss-style-pop .ss-button,
body.ss-style-pop .ss-header-cta{
  border-radius:999px;
}
body.ss-style-pop .ss-button--primary{
  background:var(--ss-primary);
  box-shadow:0 6px 0 #285743,0 12px 24px rgba(39,84,66,.12);
}
body.ss-style-pop .ss-button--primary:hover{box-shadow:0 8px 0 #285743,0 15px 26px rgba(39,84,66,.14)}
body.ss-style-pop .ss-button--outline{
  border-width:2px;
  background:#fffdf8;
}
body.ss-style-pop .ss-text-link{
  border-bottom:3px solid rgba(246,202,85,.8);
}

/* Primary action cards */
body.ss-style-pop .ss-action-card{
  min-height:255px;
  border-width:2px;
  border-color:transparent;
  box-shadow:0 10px 0 rgba(54,101,81,.08);
}
body.ss-style-pop .ss-action-card:nth-child(4n+1){background:var(--ss-pop-yellow-pale);border-color:#f1d26f}
body.ss-style-pop .ss-action-card:nth-child(4n+2){background:var(--ss-pop-blue-pale);border-color:#a9d9dc}
body.ss-style-pop .ss-action-card:nth-child(4n+3){background:var(--ss-pop-pink-pale);border-color:#efb5a5}
body.ss-style-pop .ss-action-card:nth-child(4n){background:var(--ss-leaf-pale);border-color:#b9d6be}
body.ss-style-pop .ss-action-card:hover{
  transform:translateY(-7px) rotate(-.35deg);
  box-shadow:0 14px 0 rgba(54,101,81,.10),var(--ss-shadow);
}
body.ss-style-pop .ss-action-card::after{
  width:38px;height:38px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#fff;
  color:var(--ss-primary-dark);
  font-weight:800;
}

/* Age navigation */
body.ss-style-pop .ss-age-nav{gap:15px}
body.ss-style-pop .ss-age-nav a{
  border-width:2px;
  border-color:transparent;
  border-radius:24px;
  box-shadow:0 8px 0 rgba(45,86,68,.07);
}
body.ss-style-pop .ss-age-nav a:nth-child(5n+1){background:var(--ss-pop-yellow-pale)}
body.ss-style-pop .ss-age-nav a:nth-child(5n+2){background:var(--ss-pop-blue-pale)}
body.ss-style-pop .ss-age-nav a:nth-child(5n+3){background:var(--ss-pop-pink-pale)}
body.ss-style-pop .ss-age-nav a:nth-child(5n+4){background:var(--ss-leaf-pale)}
body.ss-style-pop .ss-age-nav a:nth-child(5n){background:var(--ss-pop-purple-pale)}
body.ss-style-pop .ss-age-nav a:hover{transform:translateY(-6px) rotate(.4deg);border-color:rgba(61,113,91,.28)}

/* Content cards */
body.ss-style-pop .ss-card,
body.ss-style-pop .ss-status-card,
body.ss-style-pop .ss-faq-item,
body.ss-style-pop .ss-contact-card,
body.ss-style-pop .ss-inquiry-form{
  border-width:2px;
  border-color:#dfeadf;
  box-shadow:0 10px 0 rgba(45,86,68,.055);
}
body.ss-style-pop .ss-card>img,
body.ss-style-pop .ss-card>.ss-slot-image{
  border-radius:24px 24px 0 0;
}
body.ss-style-pop .ss-media-card{
  border:5px solid #fff;
  box-shadow:0 11px 0 rgba(45,86,68,.08);
}
body.ss-style-pop .ss-media-card:nth-child(3n+1){outline:4px solid var(--ss-pop-yellow-pale)}
body.ss-style-pop .ss-media-card:nth-child(3n+2){outline:4px solid var(--ss-pop-blue-pale)}
body.ss-style-pop .ss-media-card:nth-child(3n){outline:4px solid var(--ss-pop-pink-pale)}

/* Steps */
body.ss-style-pop .ss-steps li>span{
  width:58px;height:58px;
  background:var(--ss-pop-yellow);
  color:var(--ss-primary-dark);
  box-shadow:0 5px 0 #dfb13e;
}
body.ss-style-pop .ss-steps li:nth-child(even)>span{
  background:var(--ss-pop-blue);
  box-shadow:0 5px 0 #63adb8;
}

/* Callouts, notices, FAQ */
body.ss-style-pop .ss-callout{
  border-left:0;
  border:2px solid #f0d97f;
  border-radius:18px;
  background:#fff4c9;
  box-shadow:0 7px 0 rgba(219,183,71,.12);
}
body.ss-style-pop .ss-important{
  background:#fffdf8;
}
body.ss-style-pop .ss-important-notice>span{
  background:var(--ss-pop-yellow);
  color:var(--ss-primary-dark);
}
body.ss-style-pop .ss-faq-filter{
  border-width:2px;
}
body.ss-style-pop .ss-faq-filter[aria-pressed="true"]{
  background:var(--ss-pop-yellow);
  border-color:var(--ss-pop-yellow);
  color:var(--ss-primary-dark);
}
body.ss-style-pop .ss-faq-item summary::before{
  background:var(--ss-pop-yellow-pale);
  color:var(--ss-primary-dark);
}

/* Instagram */
body.ss-style-pop .ss-instagram-feature{
  position:relative;
}
body.ss-style-pop .ss-instagram-feature:nth-of-type(odd){
  background:#fffdf8;
}
body.ss-style-pop .ss-instagram-feature .ss-instagram-heading-row{
  padding:24px;
  border-radius:24px;
  background:rgba(255,255,255,.76);
}

/* Forms */
body.ss-style-pop .ss-inquiry-field input[type=text],
body.ss-style-pop .ss-inquiry-field input[type=email],
body.ss-style-pop .ss-inquiry-field input[type=tel],
body.ss-style-pop .ss-inquiry-field select,
body.ss-style-pop .ss-inquiry-field textarea{
  border-width:2px;
  border-radius:15px;
}
body.ss-style-pop .ss-inquiry-consent{
  background:var(--ss-pop-blue-pale);
  border-radius:16px;
}
body.ss-style-pop .ss-inquiry-submit .ss-button{
  background:var(--ss-pop-yellow);
  color:var(--ss-primary-dark);
  box-shadow:0 6px 0 #dfad34;
}

/* Access map */
body.ss-style-pop .ss-access-map{
  background:#fff9e9;
}
body.ss-style-pop .ss-access-map__frame{
  border:5px solid #fff;
  box-shadow:0 10px 0 rgba(45,86,68,.08);
}
body.ss-style-pop .ss-access-map__place{
  border-width:2px;
}
body.ss-style-pop .ss-access-map__place:nth-child(1){background:var(--ss-pop-yellow-pale)}
body.ss-style-pop .ss-access-map__place:nth-child(2){background:var(--ss-pop-blue-pale)}
body.ss-style-pop .ss-access-map__place:nth-child(3){background:var(--ss-pop-pink-pale)}

/* Footer stays calm but gains a cheerful top accent */
body.ss-style-pop .ss-site-footer{
  position:relative;
}
body.ss-style-pop .ss-site-footer::before{
  content:"";
  display:block;
  height:9px;
  background:linear-gradient(90deg,var(--ss-pop-yellow) 0 25%,var(--ss-pop-blue) 25% 50%,var(--ss-pop-pink) 50% 75%,#9cc786 75%);
}

/* Mobile */
@media(max-width:760px){
  body.ss-style-pop .ss-site-header{border-bottom-width:3px}
  body.ss-style-pop .ss-hero::before{width:100px;height:100px;right:-18px;top:8%}
  body.ss-style-pop .ss-hero::after{width:64px;height:64px;right:18%;top:25%}
  body.ss-style-pop .ss-page-hero::before{display:none}
  body.ss-style-pop .ss-action-card:hover,
  body.ss-style-pop .ss-age-nav a:hover{transform:none}
}
