/*
Theme Name: EcoSmile Energy V2 Child - Customer Revisions
Template: ecosmile-v2
Author: OpenAI
Description: V2の柄・余白・色・カード感を維持し、お客様打合せ分だけを反映する子テーマ
Version: 1.5.0
Text Domain: ecosmile-v2-child
*/
@import url("../ecosmile-v2/style.css");

/* v1.6 — fixed page visual system */
.ecosmile-inner-page{background:linear-gradient(180deg,#f7fbf8 0,#fff 260px);min-height:60vh}
.ecosmile-page-shell{margin:0}
.ecosmile-page-content{max-width:1180px;margin:0 auto;padding:54px 20px 90px}
.ecosmile-page-content .ecosmile-page>section{margin:0 0 34px;padding:34px;background:#fff;border:1px solid #e3eee7;border-radius:24px;box-shadow:0 14px 40px rgba(23,49,42,.06)}
.ecosmile-page-content .page-hero{position:relative;overflow:hidden;margin-bottom:42px!important;padding:58px 48px!important;background:linear-gradient(125deg,#e8fff0,#fff 55%,#fff0df)!important;border-color:#dcebe3!important}
.ecosmile-page-content .page-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-70px;top:-95px;background:rgba(255,205,62,.22)}
.ecosmile-page-content .page-hero>p:first-child{margin:0 0 7px;color:#14864a;font-size:13px;font-weight:900;letter-spacing:.18em}
.ecosmile-page-content .page-hero h1{position:relative;z-index:1;margin:0 0 14px;font-size:clamp(34px,5vw,54px);line-height:1.15;color:#17312a}
.ecosmile-page-content .page-hero p:last-child{position:relative;z-index:1;max-width:760px;margin:0;color:#52675f;line-height:1.9}
.ecosmile-page-content h2{margin:0 0 16px;padding-left:16px;border-left:5px solid #f6c928;color:#17312a;font-size:clamp(23px,3vw,31px);line-height:1.35}
.ecosmile-page-content h3{color:#17312a}.ecosmile-page-content p{line-height:1.9;color:#52675f}
.ecosmile-page-content img{max-width:100%;height:auto;border-radius:20px}
.ecosmile-page-content a:not(.sbi_photo):not(.sbi_header_link){transition:.2s ease}
.works-page #sb_instagram{margin-top:22px!important}
.works-page #sbi_images{border-radius:18px;overflow:hidden}
.works-page .sbi_photo{border-radius:14px;overflow:hidden}
/* v1.7 — bright fixed-page components */
.section-kicker{font-size:12px;font-weight:900;letter-spacing:.18em;color:#14864a;margin-bottom:8px}.service-grid,.price-grid,.company-values{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:26px}.service-card,.price-card,.company-values>div{padding:24px;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fff8);border:1px solid #dcebe3;box-shadow:0 10px 28px rgba(23,49,42,.06)}.service-card h3,.price-card h3{font-size:21px;margin:12px 0 8px}.service-card a{display:inline-block;margin-top:10px;color:#08763e;font-weight:900;text-decoration:none}.service-card img{width:100%;aspect-ratio:16/10;object-fit:cover;margin-bottom:10px}.service-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#fff1a8;color:#08763e;font-weight:900;font-size:19px}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}.check-grid span{padding:16px 18px;border-radius:14px;background:#f3fbf6;font-weight:800;color:#274c3e}.check-grid span:before{content:'✓';display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#f6c928;color:#17312a;margin-right:9px}.price-card>span{font-weight:900;color:#14864a}.price-card strong{display:block;margin:18px 0 8px;font-size:24px;color:#ef6b21}.flow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}.flow-grid>div{text-align:center;padding:22px;border-radius:18px;background:#f8fff9}.flow-grid b,.company-values b{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f6c928;color:#17312a}.faq-list{display:grid;gap:12px;margin-top:22px}.faq-list details{border:1px solid #dcebe3;border-radius:16px;background:#fff;overflow:hidden}.faq-list summary{cursor:pointer;padding:20px 54px 20px 22px;font-weight:900;color:#17312a;position:relative}.faq-list summary:before{content:'Q';color:#fff;background:#14864a;border-radius:50%;padding:4px 8px;margin-right:10px}.faq-list details p{padding:0 22px 20px;margin:0}.company-values{grid-template-columns:repeat(3,1fr)}.company-info dl{margin:22px 0 0}.company-info dl div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid #e4eee8}.company-info dt,.company-info dd{padding:16px;margin:0}.company-info dt{font-weight:900;background:#f3f8f5}.company-info a{color:#08763e;font-weight:900}.note{font-size:13px}.page-cta{display:flex!important;align-items:center;gap:22px;background:linear-gradient(110deg,#fff9c8,#e9fff0)!important;border-color:#f3df71!important}.page-cta img{width:90px!important;height:90px!important;object-fit:contain;border-radius:0!important}.page-cta>div{flex:1}.page-cta strong{font-size:22px;color:#17312a}.page-cta p{margin:4px 0}.cta-phone{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 22px;border-radius:999px;background:#f07824;color:#fff!important;text-decoration:none;font-size:20px;font-weight:900;white-space:nowrap}.page-hero-photo{min-height:310px;display:flex;align-items:center;background-image:linear-gradient(90deg,rgba(239,255,244,.97) 0%,rgba(255,255,255,.88) 52%,rgba(255,255,255,.15) 100%),var(--hero)!important;background-size:cover!important;background-position:center!important}.page-hero-photo>div{max-width:650px;position:relative;z-index:2}.work-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.work-category-grid span{text-align:center;padding:16px;border-radius:999px;background:#eefaf2;color:#08763e;font-weight:900}
@media(max-width:820px){.service-grid,.price-grid{grid-template-columns:repeat(2,1fr)}.company-values,.flow-grid{grid-template-columns:1fr}.page-cta{flex-wrap:wrap}.page-cta>div{min-width:55%}.work-category-grid{grid-template-columns:repeat(2,1fr)}.company-info dl div{grid-template-columns:110px 1fr}}
@media(max-width:520px){.service-grid,.price-grid,.check-grid{grid-template-columns:1fr}.page-cta{justify-content:center;text-align:center}.page-cta>div{flex-basis:100%}.cta-phone{width:100%}.page-hero-photo{min-height:270px}.work-category-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.ecosmile-page-content{padding:28px 16px 72px}.ecosmile-page-content .ecosmile-page>section{padding:24px 20px;border-radius:19px;margin-bottom:22px}.ecosmile-page-content .page-hero{padding:38px 24px!important;margin-bottom:26px!important}.ecosmile-page-content .page-hero:after{width:160px;height:160px}.ecosmile-page-content h2{font-size:25px}}
@media(max-width:480px){.ecosmile-page-content{padding-left:12px;padding-right:12px}.ecosmile-page-content .ecosmile-page>section{padding:21px 17px}.ecosmile-page-content .page-hero{padding:32px 20px!important}.ecosmile-page-content .page-hero h1{font-size:34px}}
.header-phone{margin-left:2px;text-align:right;line-height:1.15;white-space:nowrap}.header-phone small{display:block;font-size:9px;color:var(--muted);font-weight:700}.header-phone a{font-size:17px;color:var(--gd);font-weight:900}.v2-slider{position:relative;background:linear-gradient(125deg,#e9fff1,#fff 53%,#fff1e4)}.v2-slide{display:none;padding:68px 20px}.v2-slide.is-active{display:block}.v2-slide .heroin{min-height:430px}.v2-slide .hero-photo{background-size:cover;background-position:center}.v2-slide.s1 .hero-photo{background-image:url('assets/images/hero_v2_reference.jpg');background-position:center;background-size:cover}.v2-slide.s2 .hero-photo{background-image:url('assets/images/hero_combo.png')}.slider-dots{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:8px;z-index:5}.slider-dot{width:10px;height:10px;border:0;border-radius:50%;background:#b8cfc2;cursor:pointer}.slider-dot.is-active{background:var(--g)}.quick-wrap{max-width:1180px;margin:-18px auto 0;padding:0 20px;position:relative;z-index:8}.quick-links{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.quick-links a{background:#fff;border:1px solid #e1ebe5;box-shadow:0 8px 24px rgba(23,49,42,.07);padding:16px 10px;border-radius:15px;text-align:center;font-weight:900;font-size:13px}.quick-links a:hover{transform:translateY(-2px)}.trust-card{margin-top:24px;background:linear-gradient(125deg,#e9fff1,#fff 58%,#fff1e4);border:1px solid #dcebe3;border-radius:22px;padding:22px 26px;display:grid;grid-template-columns:105px 1fr;gap:22px;align-items:center}.trust-card img{width:92px;height:92px;border-radius:50%;object-fit:contain;background:#fff;border:1px solid #e0ebe4}.trust-card h3{margin:0 0 5px;font-size:21px}.trust-card p{margin:0;color:var(--muted);font-size:14px}.trust-card .trust-call{display:inline-block;margin-top:9px;color:var(--gd);font-weight:900}.photo-gas{background-image:url('assets/images/hero_gas.png')!important;background-position:70% center!important;background-size:cover!important}.photo-eco{background-image:url('assets/images/hero_combo.png')!important;background-position:72% center!important;background-size:cover!important}
@media(max-width:900px){.header-phone{display:none}.quick-links{grid-template-columns:repeat(2,1fr)}.quick-links a:last-child{grid-column:1/-1}}@media(max-width:820px){.v2-slide{padding:42px 20px}.v2-slide .heroin{min-height:auto}.quick-wrap{margin-top:12px}.trust-card{grid-template-columns:1fr;text-align:center}.trust-card img{margin:auto}}

/* V2 original-look preservation + responsive cleanup */
@media (min-width:821px){
  .floating{display:none!important}
  .v2-slider,.v2-slide,.heroin{overflow:visible}
  .v2-slide .hero-photo{min-width:0}
}
@media (max-width:820px){
  body{padding-bottom:74px}
  .floating{display:block!important;left:14px;right:14px;bottom:12px;width:auto;text-align:center;border-radius:14px;padding:13px 16px}
  .v2-slide{padding:38px 18px 34px}
  .v2-slide .heroin{grid-template-columns:1fr;gap:24px}
  .v2-slide .hero-photo{min-height:270px;border-radius:20px}
  .v2-slide h1{font-size:clamp(32px,10vw,45px)}
  .quick-links{grid-template-columns:1fr 1fr}
  .quick-links a{min-height:58px;display:grid;place-items:center}
}
@media (max-width:480px){
  .top{font-size:10px;padding:6px 8px}
  .brand b{font-size:14px}
  .brand img{width:38px;height:38px}
  .v2-slide .hero-photo{min-height:235px}
  .section{padding:50px 16px}
  .head h2{font-size:27px}
}

/* =========================================================
   v1.2 - Approved V2 screenshot is the fixed design baseline
   ========================================================= */
body{background:#fff}
.v2-exact-header{
  position:sticky;top:0;z-index:1000;background:#fff;
  border-bottom:1px solid #edf1ed;
}
.v2-exact-nav{
  max-width:1536px;margin:0 auto;height:92px;padding:0 48px;
  display:flex;align-items:center;gap:24px;
}
.v2-exact-brand{display:block;flex:0 0 370px}
.v2-exact-brand img{width:370px;height:86px;object-fit:cover;object-position:left center}
.v2-exact-slogan{font-size:15px;line-height:1.5;color:#1f2623;white-space:nowrap}
.v2-exact-links{margin-left:auto;display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700;white-space:nowrap}
.v2-exact-links a{padding:31px 0 22px;border-bottom:3px solid transparent}
.v2-exact-links a.active{color:#2f9b47;border-bottom-color:#2f9b47}
.v2-exact-contact{display:flex;align-items:center;gap:12px;margin-left:8px}
.v2-phone{display:flex;flex-direction:column;align-items:flex-end;line-height:1.05;color:#17823e;white-space:nowrap}
.v2-phone small{font-size:10px;font-weight:700}
.v2-phone strong{font-size:16px;letter-spacing:.01em}
.v2-contact-btn{background:#43a63e;color:#fff;padding:14px 20px;border-radius:28px;font-weight:900;white-space:nowrap}
.v2-menu-toggle{display:none;border:0;background:#fff;font-size:26px}

.v2-exact-slider{position:relative;background:#fff;overflow:hidden}
.v2-exact-slide{display:none}
.v2-exact-slide.is-active{display:block}
.v2-exact-desktop-image{width:100%;height:auto;display:block}
.v2-mobile-hero{display:none}

.exact-second{background:linear-gradient(135deg,#f7fcf8,#eef9f3 55%,#fff4e7);padding:38px 30px}
.v2-second-inner{max-width:1440px;margin:auto;min-height:650px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:38px}
.v2-second-copy{padding-left:60px}
.v2-second-pill{display:inline-block;padding:7px 13px;border-radius:999px;background:#daf4df;color:#23813a;font-size:13px;font-weight:900}
.v2-second-copy h2{font-size:56px;line-height:1.22;margin:18px 0;color:#20262a}
.v2-second-copy h2 em{font-style:normal;color:#f77c1f}
.v2-second-copy p{font-size:17px;color:#5f6863}
.v2-second-tel{display:inline-block;margin-top:16px;background:#f77c1f;color:#fff;border-radius:36px;padding:14px 24px;font-size:24px;font-weight:900}
.v2-second-inner img{width:100%;max-height:620px;object-fit:cover;border-radius:24px}

.v2-exact-dots{position:absolute;left:50%;bottom:15px;transform:translateX(-50%);display:flex;gap:9px;z-index:15}
.v2-exact-dot{width:11px;height:11px;border:0;border-radius:50%;background:#c8d6cd;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.v2-exact-dot.is-active{background:#3aa749}

/* Lower sections stay on V2 language */
#reason{padding-top:56px}
.floating{display:none!important}

/* PC: mobile-only fixed UI must never interfere */
@media (min-width:901px){
  body{padding-bottom:0!important}
  .floating,.v2-mobile-fixed,.mobile-popup{display:none!important}
}

/* Tablet */
@media (max-width:1200px){
  .v2-exact-nav{padding:0 24px;gap:14px}
  .v2-exact-brand{flex-basis:300px}
  .v2-exact-brand img{width:300px}
  .v2-exact-slogan{display:none}
  .v2-exact-links{gap:18px;font-size:13px}
  .v2-phone strong{font-size:14px}
}

/* Smartphone / narrow tablet */
@media (max-width:900px){
  .v2-exact-nav{height:68px;padding:0 16px}
  .v2-exact-brand{flex:1 1 auto}
  .v2-exact-brand img{width:250px;height:62px;object-fit:cover}
  .v2-exact-links,.v2-phone{display:none}
  .v2-contact-btn{font-size:12px;padding:10px 13px}
  .v2-menu-toggle{display:block}

  .v2-exact-desktop-image{display:none}
  .v2-mobile-hero{
    display:block;padding:24px 18px 26px;
    background:linear-gradient(145deg,#f7fff9,#fff 60%,#fff7eb);
  }
  .v2-mobile-copy h1{font-size:40px;line-height:1.18;margin:4px 0 12px;color:#24292d}
  .v2-mobile-copy h1 span{color:#f77c1f}
  .v2-mobile-kicker{font-weight:900;color:#257c39;margin:0}
  .v2-mobile-copy>p:not(.v2-mobile-kicker){font-size:15px;color:#505b55}
  .v2-mobile-badges{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
  .v2-mobile-badges span{border:2px solid #bfe8c9;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;background:#fff}
  .v2-mobile-cta{display:block;text-align:center;background:#ff7b18;color:#fff;padding:14px;border-radius:999px;font-weight:900;margin:14px 0 18px}
  .v2-mobile-photo{width:100%;border-radius:18px;aspect-ratio:16/10;object-fit:cover}
  .v2-mobile-cards{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}
  .v2-mobile-cards a{display:grid;place-items:center;text-align:center;min-height:72px;border-radius:14px;font-size:13px;font-weight:900;padding:8px;background:#f4faf6;border:1px solid #dfece3}
  .v2-mobile-cards a:nth-child(1),.v2-mobile-cards a:nth-child(5){background:#fff0f0}
  .v2-mobile-cards a:nth-child(2){background:#eef9e9}
  .v2-mobile-cards a:nth-child(3){background:#eaf8fc}
  .v2-mobile-cards a:nth-child(4){background:#fff8df}
  .v2-mobile-cards a:last-child{grid-column:1/-1}

  .exact-second{padding:24px 18px}
  .v2-second-inner{min-height:auto;grid-template-columns:1fr;gap:18px}
  .v2-second-copy{padding:0}
  .v2-second-copy h2{font-size:36px}
  .v2-second-inner img{max-height:330px}
  .v2-second-tel{font-size:20px}

  /* no fixed popup on desktop; mobile CTA sits in normal flow */
  .floating{display:none!important}
  body{padding-bottom:0!important}
}

@media (max-width:520px){
  .v2-exact-brand img{width:205px}
  .v2-contact-btn{display:none}
  .v2-mobile-copy h1{font-size:34px}
}

/* v1.3 — upper hero slider / lower service cards fixed */
.v13-slider{position:relative;width:100%;background:#f5faf6;overflow:hidden}
.v13-slide{display:none;width:100%}
.v13-slide.is-active{display:block}
.v13-slide>img{
  display:block;width:100%;height:auto;
  object-fit:contain;object-position:center;
}
.v13-slide:nth-child(2){position:relative;background:#edf8f1}
.v13-slide:nth-child(2)>img{
  width:100%;height:auto;max-height:none;object-fit:contain;
}
.v13-second-copy{
  position:absolute;left:7%;top:50%;transform:translateY(-50%);
  background:rgba(255,255,255,.91);padding:22px 28px;border-radius:18px;
  box-shadow:0 10px 30px rgba(0,0,0,.08)
}
.v13-second-copy span{display:block;color:#278743;font-weight:900;font-size:15px;margin-bottom:7px}
.v13-second-copy strong{display:block;font-size:clamp(25px,3vw,46px);line-height:1.25;color:#252b28}
.v13-tel{
  position:absolute;z-index:20;right:4.2%;top:24px;
  display:flex;flex-direction:column;align-items:center;
  background:rgba(255,255,255,.95);color:#198443;
  border:2px solid #46a95d;border-radius:999px;
  padding:8px 20px;box-shadow:0 6px 20px rgba(0,0,0,.12);
  line-height:1.05
}
.v13-tel small{font-size:11px;font-weight:800;margin-bottom:3px}
.v13-tel b{font-size:20px;letter-spacing:.02em}
.v13-dots{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);z-index:20;display:flex;gap:8px}
.v13-dot{width:11px;height:11px;border:0;border-radius:50%;background:#c9d4cc;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.v13-dot.is-active{background:#35a04c}
.v13-fixed-cards{width:100%;background:#fff}
.v13-fixed-cards img{display:block;width:100%;height:auto;object-fit:contain}

/* Prevent old hero layers from affecting this layout */
.v2-exact-slider,.v2-exact-dots{display:none!important}

@media(max-width:900px){
  .v13-tel{right:12px;top:12px;padding:7px 13px}
  .v13-tel small{font-size:9px}
  .v13-tel b{font-size:15px}
  .v13-second-copy{left:5%;right:5%;top:auto;bottom:35px;transform:none;padding:14px 16px}
  .v13-second-copy strong{font-size:25px}
  .v13-fixed-cards{overflow:hidden}
}
@media(max-width:520px){
  .v13-tel{padding:6px 10px}
  .v13-tel b{font-size:13px}
  .v13-tel small{display:none}
  .v13-second-copy strong{font-size:20px}
  .v13-second-copy span{font-size:11px}
}

/* =========================================================
   v1.4 - HERO / CARDS fully separated, slide ratios matched
   ========================================================= */
.v13-slider,.v13-fixed-cards{display:none!important}

.v14-slider{
  position:relative;
  width:100%;
  overflow:hidden;
  background:#f4faf6;
}
.v14-slide{
  display:none;
  width:100%;
}
.v14-slide.is-active{display:block}
.v14-slide img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1536 / 456;
  object-fit:contain;
  object-position:center;
  background:#f4faf6;
}
.v14-service-cards{
  width:100%;
  background:#fff;
  border-top:12px solid #fff; /* 明確な上下セパレート */
}
.v14-service-cards img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}

.v14-tel{
  position:absolute;
  top:18px;
  right:4%;
  z-index:25;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-decoration:none;
  background:rgba(255,255,255,.96);
  color:#188441;
  border:2px solid #4aaa61;
  border-radius:999px;
  padding:9px 20px;
  box-shadow:0 6px 18px rgba(0,0,0,.14);
  line-height:1.05;
}
.v14-tel small{font-size:11px;font-weight:800;margin-bottom:3px}
.v14-tel strong{font-size:21px;letter-spacing:.02em}

.v14-arrow{
  position:absolute;
  z-index:24;
  top:50%;
  transform:translateY(-50%);
  width:48px;height:48px;
  border:0;border-radius:50%;
  background:rgba(255,255,255,.92);
  box-shadow:0 4px 18px rgba(0,0,0,.12);
  font-size:38px;line-height:1;
  cursor:pointer;
}
.v14-arrow.prev{left:20px}
.v14-arrow.next{right:20px}

.v14-dots{
  position:absolute;
  z-index:24;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  display:flex;
  gap:8px;
}
.v14-dot{
  width:10px;height:10px;
  padding:0;border:0;border-radius:50%;
  background:#d5ddd7;
}
.v14-dot.is-active{background:#299848}

@media (min-width:901px){
  .floating,.mobile-popup,.mobile-fixed{display:none!important}
}

@media (max-width:900px){
  .v14-slide img{aspect-ratio:auto;width:100%;height:auto}
  .v14-tel{
    top:10px;right:10px;
    padding:7px 12px;
  }
  .v14-tel small{font-size:9px}
  .v14-tel strong{font-size:15px}
  .v14-arrow{width:38px;height:38px;font-size:30px}
  .v14-arrow.prev{left:10px}
  .v14-arrow.next{right:10px}
  .v14-service-cards{border-top-width:8px;overflow-x:auto}
  .v14-service-cards img{min-width:760px}
}

@media (max-width:520px){
  .v14-tel small{display:none}
  .v14-tel strong{font-size:13px}
  .v14-tel{padding:7px 10px}
}

/* v1.5 — Slide 1 Gas / Slide 2 EcoCute, identical slider ratio */
.v14-slide{
  aspect-ratio: 2048 / 384;
  background:#f4faf6;
}
.v14-slide img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.v14-slide:nth-child(2) img{
  object-position:center center;
}
@media (max-width:900px){
  .v14-slide{aspect-ratio:16/7}
  .v14-slide img{width:100%;height:100%;object-fit:cover}
}
@media (max-width:520px){
  .v14-slide{aspect-ratio:4/3}
  .v14-slide img{object-position:center center}
}

/* Smartphone hamburger side menu */
.v2-mobile-menu{display:none}
@media(max-width:900px){
  .v2-menu-toggle{position:relative;z-index:1002;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:12px;background:#f6c928;color:#17312a;font-size:27px;font-weight:900;cursor:pointer;box-shadow:0 5px 18px rgba(23,49,42,.12)}
  .v2-mobile-menu{display:block;position:fixed;inset:0;z-index:1000;background:rgba(14,38,31,.36);opacity:0;visibility:hidden;pointer-events:none;transition:.25s ease}
  .v2-mobile-menu__inner{position:absolute;top:0;right:0;width:min(84vw,340px);height:100%;padding:86px 22px 28px;background:linear-gradient(180deg,#fff 0%,#f5fff8 72%,#fff6c9 100%);box-shadow:-16px 0 40px rgba(23,49,42,.18);transform:translateX(105%);transition:.28s ease;overflow-y:auto}
  .v2-mobile-menu.is-open{opacity:1;visibility:visible;pointer-events:auto}
  .v2-mobile-menu.is-open .v2-mobile-menu__inner{transform:translateX(0)}
  .v2-mobile-menu__inner>a{display:flex;align-items:center;min-height:52px;padding:12px 14px;margin:0 0 8px;border-radius:14px;background:#fff;border:1px solid #e0eee5;color:#17312a;text-decoration:none;font-size:16px;font-weight:800;box-shadow:0 5px 16px rgba(23,49,42,.05)}
  .v2-mobile-menu__inner>a:after{content:'›';margin-left:auto;color:#14864a;font-size:24px;line-height:1}
  .v2-mobile-menu__inner .v2-mobile-phone{margin-top:18px;justify-content:center;background:linear-gradient(135deg,#ff8a00,#ff6600);border:0;color:#fff;font-size:19px}
  .v2-mobile-menu__inner .v2-mobile-phone:after{display:none}
}
