
:root{--ink:#15100e;--charcoal:#211a16;--brown:#332720;--purple:#32213f;--deep-purple:#241b26;--gold:#d7b46a;--gold-soft:#f3dfaa;--white:#fffaf2;--muted:#d8cec0;--line:rgba(255,255,255,.14);--panel:rgba(255,255,255,.075);--panel2:rgba(255,255,255,.11);--shadow:0 22px 60px rgba(0,0,0,.30);--radius:22px;--max:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans JP",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 90% 0%,rgba(75,45,99,.36),transparent 430px),radial-gradient(circle at 5% 85%,rgba(56,38,29,.38),transparent 560px),linear-gradient(135deg,var(--ink),var(--charcoal) 48%,var(--deep-purple));color:var(--white);line-height:1.8;letter-spacing:.015em}body:before{content:"";position:fixed;inset:0;background:url('/assets/img/texture-washi.webp') center/420px auto;opacity:.055;pointer-events:none;z-index:-1}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}p{margin:0 0 1rem}ul{padding-left:1.2rem}.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:12px;top:12px;z-index:999;background:#fff;color:#111;padding:8px 12px;border-radius:8px}.site-header{position:sticky;top:0;z-index:50;background:rgba(17,12,10,.90);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.topbar{background:rgba(215,180,106,.12);border-bottom:1px solid rgba(215,180,106,.18)}.topbar-inner{max-width:var(--max);margin:0 auto;padding:5px 18px;font-size:12px;color:var(--gold-soft);font-weight:800}.header-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 18px}.brand{display:flex;align-items:center;gap:12px;min-width:220px}.brand-logo{width:180px;max-height:46px;object-fit:contain}.brand-text{display:none}.brand-title{font-size:18px;font-weight:900;letter-spacing:.05em;line-height:1.25}.brand-sub{font-size:11px;color:var(--muted);font-weight:700}.nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nav a{font-size:14px;font-weight:800;color:#f6efe5;padding:8px 10px;border-radius:999px}.nav a:hover,.nav a[aria-current="page"]{background:rgba(215,180,106,.15);color:var(--gold-soft)}.nav-toggle{display:none;border:1px solid var(--line);background:rgba(255,255,255,.08);color:#fff;border-radius:12px;padding:8px 11px;font-size:20px}.header-tel{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(215,180,106,.42);background:rgba(215,180,106,.12);color:var(--gold-soft);border-radius:999px;padding:8px 12px;font-weight:900;font-size:14px;white-space:nowrap}.hero{position:relative;padding:86px 18px 64px;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,10,9,.92) 0%,rgba(20,13,12,.72) 46%,rgba(36,27,38,.56) 100%),url('/assets/img/hero-hall.webp') center/cover;z-index:-1}.hero-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}.eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(215,180,106,.32);background:rgba(215,180,106,.12);color:var(--gold-soft);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:900}.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.18;margin:18px 0 18px;letter-spacing:.04em;text-shadow:0 5px 24px rgba(0,0,0,.42)}.hero-lead{font-size:18px;color:#f0e6d8;max-width:720px}.hero-card{border:1px solid var(--line);background:linear-gradient(150deg,rgba(255,255,255,.16),rgba(124,58,237,.13));border-radius:28px;padding:26px;box-shadow:var(--shadow);backdrop-filter:blur(8px)}.hero-card img{width:98px;height:98px;border-radius:26px;display:block;margin:0 auto 16px}.hero-card strong{display:block;text-align:center;font-size:20px}.hero-card dl{margin:18px 0 0;display:grid;gap:10px}.hero-card div{display:grid;grid-template-columns:92px 1fr;gap:10px;border-top:1px solid rgba(255,255,255,.11);padding-top:10px}.hero-card dt{color:var(--gold-soft);font-weight:900}.hero-card dd{margin:0;color:#fff}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 18px;font-weight:900;border:1px solid rgba(255,255,255,.18);transition:.15s transform,.15s filter}.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.btn-primary{background:linear-gradient(135deg,#a06a24,#d7b46a);color:#1d130b}.btn-secondary{background:rgba(255,255,255,.08);color:#fff}.emergency{background:rgba(0,0,0,.28);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px}.emergency-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.emergency strong{color:var(--gold-soft)}main section{padding:58px 18px}.wrap{max-width:var(--max);margin:0 auto}.section-head{margin-bottom:28px}.section-kicker{color:var(--gold-soft);font-weight:900;font-size:13px;letter-spacing:.12em}.section-title{font-size:clamp(27px,3vw,40px);line-height:1.35;margin:6px 0 10px}.section-lead{color:var(--muted);max-width:780px}.grid{display:grid;gap:18px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.align-center{align-items:center}.card{border:1px solid var(--line);background:linear-gradient(150deg,var(--panel2),rgba(0,0,0,.16));border-radius:var(--radius);padding:22px;box-shadow:0 14px 36px rgba(0,0,0,.16)}.card h3,.image-card h3{margin:0 0 8px;font-size:20px}.card p,.card li,.image-card p{color:#e6ddd2}.image-card{overflow:hidden;border:1px solid var(--line);background:linear-gradient(150deg,var(--panel2),rgba(0,0,0,.16));border-radius:var(--radius);box-shadow:0 14px 36px rgba(0,0,0,.16)}.image-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.image-card div{padding:18px}.badge{display:inline-flex;border-radius:999px;padding:4px 9px;background:rgba(215,180,106,.14);color:var(--gold-soft);font-size:12px;font-weight:900;margin-bottom:10px}.split-section{background:rgba(0,0,0,.16);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.photo-frame{margin:0;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:var(--shadow);background:rgba(0,0,0,.18)}.photo-frame img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover}.price-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:start}.price-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:rgba(0,0,0,.18)}.price-table th,.price-table td{padding:15px 16px;border-bottom:1px solid rgba(255,255,255,.10);vertical-align:top}.price-table th{text-align:left;background:rgba(215,180,106,.14);color:var(--gold-soft);font-weight:900}.price-table tr:last-child td{border-bottom:none}.price-table .amount{font-weight:950;color:#fff;white-space:nowrap}.note{font-size:13px;color:#d9d0c5;margin-top:14px}.steps{counter-reset:step;display:grid;gap:14px}.step{position:relative;padding:20px 20px 20px 72px;border:1px solid var(--line);background:rgba(255,255,255,.07);border-radius:18px}.step:before{counter-increment:step;content:counter(step);position:absolute;left:20px;top:22px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#1d130b;font-weight:900}.contact-box,.line-box,.map-box{border:1px solid rgba(215,180,106,.32);background:linear-gradient(135deg,rgba(215,180,106,.14),rgba(124,58,237,.12));border-radius:26px;padding:24px}.contact-list{display:grid;gap:12px}.contact-list a,.contact-list span{display:flex;gap:10px;align-items:center;padding:12px;border-radius:14px;background:rgba(0,0,0,.18);font-weight:800}.line-box{display:grid;grid-template-columns:72px 1fr 150px;gap:18px;align-items:center}.line-icon{width:72px;border-radius:18px}.line-qr{width:150px;background:#fff;border-radius:14px;padding:8px}.map-box h2{margin-top:0}.legal{max-width:900px}.legal h2{color:var(--gold-soft);border-top:1px solid var(--line);padding-top:18px}.site-footer{padding:34px 18px;border-top:1px solid var(--line);background:rgba(0,0,0,.26)}.footer-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end}.footer-nav{display:flex;gap:12px;flex-wrap:wrap;color:#d8cec0;font-weight:800;font-size:13px}.copy{color:#bfb5aa;font-size:12px;margin-top:12px}.breadcrumb{max-width:var(--max);margin:0 auto;padding:18px 18px 0;color:#cfc5b9;font-size:13px}.breadcrumb a{text-decoration:underline}.page-hero{padding:54px 18px 34px}.page-hero .wrap{border-bottom:1px solid var(--line);padding-bottom:28px}.page-hero h1{font-size:clamp(34px,4vw,52px);margin:10px 0}.faq details{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.07);padding:15px 17px}.faq details+details{margin-top:12px}.faq summary{font-weight:900;cursor:pointer;color:var(--gold-soft)}.admin-link{opacity:.55;font-size:12px}
.centered{text-align:center}.centered .section-lead{margin-left:auto;margin-right:auto}.ending-support{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(255,255,255,.035));border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.ending-intro{display:flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid rgba(215,180,106,.28);background:linear-gradient(135deg,rgba(215,180,106,.12),rgba(124,58,237,.10));border-radius:26px;padding:24px;margin-bottom:22px;box-shadow:0 14px 36px rgba(0,0,0,.18)}.ending-intro h3{margin:0 0 8px;font-size:24px;color:#fff}.ending-intro p{color:#eadfce;max-width:760px}.support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.support-card{position:relative;border:1px solid var(--line);background:linear-gradient(150deg,rgba(255,255,255,.11),rgba(0,0,0,.18));border-radius:22px;padding:20px 20px 18px;box-shadow:0 14px 34px rgba(0,0,0,.15)}.support-card h3{margin:8px 0 8px;font-size:20px}.support-card p{color:#eadfce}.support-card ul{margin:10px 0 0;padding-left:1.15rem;color:#e4d9ca;font-size:14px}.support-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#d7b46a,#8b5cf6);color:#1b120c;font-weight:950;box-shadow:0 8px 22px rgba(0,0,0,.22)}.support-note{margin-top:22px;border:1px solid rgba(215,180,106,.30);background:rgba(0,0,0,.22);border-radius:22px;padding:22px;text-align:center}.support-note h3{margin:0 0 8px;color:var(--gold-soft)}.support-note p{max-width:760px;margin:0 auto;color:#eadfce}@media(max-width:960px){.support-grid{grid-template-columns:1fr}.ending-intro{display:grid}.ending-intro .btn{width:100%}}
@media(max-width:960px){.header-inner{align-items:center}.brand-logo{width:150px}.nav-toggle{display:inline-block}.nav{display:none;position:absolute;left:14px;right:14px;top:88px;background:rgba(17,12,10,.96);border:1px solid var(--line);border-radius:18px;padding:10px}.nav.is-open{display:grid}.header-tel{font-size:13px}.hero-inner,.grid-3,.grid-2,.footer-inner,.price-layout{grid-template-columns:1fr}.hero{padding-top:52px}.hero-card div{grid-template-columns:1fr}.emergency-inner{display:grid}.price-table{font-size:14px}.price-table th,.price-table td{padding:12px 10px}.section-title{font-size:28px}.footer-inner{align-items:start}.line-box{grid-template-columns:1fr;text-align:center}.line-icon,.line-qr{margin:auto}}@media(max-width:520px){.topbar-inner{font-size:11px}.brand-logo{width:128px}.header-inner{gap:8px}.header-tel{display:none}.hero h1{font-size:34px}.hero-lead{font-size:16px}.btn{width:100%}.photo-frame img{min-height:210px}}@media print{body{background:#fff;color:#111}.site-header,.site-footer,.cta-row,.emergency{display:none}.card,.contact-box,.price-table,.image-card{box-shadow:none;border-color:#ccc;background:#fff;color:#111}}

/* v1.3 price cards and flow diagrams */
.price-hero .compact-cta{margin-top:20px}.price-overview-section{padding-top:32px}.plan-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.plan-card{border:1px solid rgba(255,255,255,.15);background:linear-gradient(150deg,rgba(255,255,255,.12),rgba(0,0,0,.22));border-radius:24px;padding:22px;box-shadow:0 16px 38px rgba(0,0,0,.18);display:flex;flex-direction:column;min-height:240px}.plan-card.featured{border-color:rgba(215,180,106,.48);background:linear-gradient(150deg,rgba(215,180,106,.16),rgba(124,58,237,.13),rgba(0,0,0,.24))}.plan-card.pet{border-color:rgba(139,92,246,.46)}.plan-label{display:inline-flex;align-self:flex-start;border-radius:999px;padding:5px 11px;background:rgba(124,58,237,.72);color:#fff;font-size:13px;font-weight:950;margin-bottom:14px}.plan-card h3{font-size:clamp(25px,2.6vw,34px);line-height:1.18;margin:0 0 12px;color:#fff}.plan-card h3 span{display:block;font-size:14px;color:#eadfce;margin-top:4px}.plan-card p{color:#e6ddd2;font-size:14px}.mini-link{margin-top:auto;display:inline-flex;justify-content:center;align-items:center;border:1px solid rgba(215,180,106,.34);background:rgba(215,180,106,.12);color:var(--gold-soft);font-weight:950;border-radius:999px;padding:9px 12px}.price-attention{margin:18px 0 0;color:#dfd2c3;font-size:14px;text-align:center}.plan-detail-section{padding-top:34px;padding-bottom:34px}.plan-detail-card{border:1px solid var(--line);background:linear-gradient(150deg,rgba(255,255,255,.10),rgba(0,0,0,.20));border-radius:28px;padding:26px;box-shadow:0 18px 46px rgba(0,0,0,.20)}.plan-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.plan-detail-head h2{font-size:clamp(27px,3vw,40px);margin:8px 0 8px}.plan-detail-head p{color:#eadfce;max-width:760px}.price-pill{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:190px;border-radius:999px;padding:13px 18px;background:linear-gradient(135deg,#7c3aed,#d7b46a);color:#1b120c;font-weight:950;text-align:center;box-shadow:0 12px 30px rgba(0,0,0,.25)}.flow-panel{border:1px solid rgba(215,180,106,.26);background:rgba(0,0,0,.20);border-radius:22px;padding:0;margin:16px 0 22px;overflow:hidden}.flow-panel summary{cursor:pointer;list-style:none;padding:15px 18px;font-weight:950;color:var(--gold-soft);background:rgba(215,180,106,.10)}.flow-panel summary::-webkit-details-marker{display:none}.flow-panel summary:after{content:'＋';float:right}.flow-panel[open] summary:after{content:'−'}.flow-image{margin:0;padding:18px;background:rgba(255,250,242,.96)}.flow-image img{display:block;width:100%;max-width:860px;margin:0 auto;border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.12)}.detail-grid{display:grid;grid-template-columns:1.3fr 1fr .85fr;gap:14px}.detail-box{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.065);border-radius:20px;padding:18px}.detail-box h3{margin:0 0 10px;color:var(--gold-soft);font-size:18px}.detail-box ul{margin:0;padding-left:1.1rem;color:#eadfce}.detail-box p{color:#eadfce}.included-list{columns:2;column-gap:24px}.pet-price-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 10px}.pet-price-list div{border:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.18);border-radius:18px;padding:14px}.pet-price-list strong{display:block;color:var(--gold-soft)}.pet-price-list span{display:block;color:#fff;font-weight:900}.price-note-section{padding-top:34px}@media(max-width:1020px){.plan-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}.plan-detail-head{display:grid}.price-pill{justify-content:flex-start;min-width:0}.included-list{columns:1}.pet-price-list{grid-template-columns:1fr}}@media(max-width:560px){.plan-card-grid{grid-template-columns:1fr}.plan-detail-card{padding:18px}.flow-image{padding:10px}.plan-card{min-height:auto}.price-pill{width:100%;justify-content:center}.pet-price-list div{padding:12px}}


/* v1.4 improved pricing cards and stylish flow */
.centered{text-align:center}.centered .section-lead{margin-left:auto;margin-right:auto}.price-overview-section{padding-top:32px}.plan-card-grid.v14{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.plan-card{position:relative;overflow:hidden;padding:24px;min-height:300px;border:1px solid rgba(255,255,255,.14);background:radial-gradient(circle at top right, rgba(124,58,237,.24), transparent 35%),linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,.26));}.plan-card::after{content:'';position:absolute;right:-20px;bottom:-20px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle, rgba(215,180,106,.16), transparent 70%);pointer-events:none}.plan-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.plan-badge{display:inline-flex;padding:6px 12px;border-radius:999px;background:rgba(215,180,106,.13);color:var(--gold-soft);font-size:12px;font-weight:900;border:1px solid rgba(215,180,106,.22)}.plan-code{font-size:12px;font-weight:950;color:#e8dcc8;letter-spacing:.12em}.plan-card .plan-label{background:rgba(124,58,237,.86);margin-bottom:12px}.plan-card h3{font-size:clamp(29px,3.2vw,40px);line-height:1.12;margin:0 0 14px}.plan-card h3 span{display:inline;font-size:.48em;margin-left:6px}.plan-points{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 16px;padding:0;list-style:none}.plan-points li{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);font-size:12px;font-weight:800;color:#efe5d8}.plan-card .mini-link{width:100%;padding:12px 14px;font-size:14px}.price-quick-note{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.price-quick-note div{padding:16px 18px;border-radius:20px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06)}.price-quick-note strong{display:block;color:var(--gold-soft);margin-bottom:8px}.price-quick-note span{color:#e9ddcf}.modern-plan-card{background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(0,0,0,.26));}.modern-head{align-items:center}.flow-summary-row{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.flow-summary-row span{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);font-size:13px;font-weight:900;color:#efe2d1}.flow-modern{margin:12px 0 22px;border:1px solid rgba(215,180,106,.22);border-radius:24px;overflow:hidden;background:linear-gradient(180deg, rgba(255,250,242,.98), rgba(245,240,232,.98));box-shadow:0 10px 26px rgba(0,0,0,.12)}.flow-modern-head{padding:18px 20px;border-bottom:1px solid rgba(40,30,20,.08);background:linear-gradient(135deg, rgba(124,58,237,.08), rgba(215,180,106,.12))}.flow-modern-head h3{margin:0 0 6px;color:#241b26;font-size:22px}.flow-modern-head p{margin:0;color:#4d4037}.flow-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}.flow-step-card{position:relative;padding:18px 16px 16px 72px;border-radius:18px;background:#fff;border:1px solid rgba(64,45,20,.08);box-shadow:0 8px 18px rgba(33,26,22,.06)}.flow-step-card::before{content:'';position:absolute;left:37px;top:58px;bottom:-14px;width:2px;background:linear-gradient(to bottom, rgba(124,58,237,.3), rgba(215,180,106,.08));}.flow-step-card:nth-last-child(-n+2)::before,.flow-steps.five-steps .flow-step-card:last-child::before{display:none}.step-no{position:absolute;left:18px;top:16px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#7c3aed,#d7b46a);color:#fff;font-weight:950;box-shadow:0 8px 16px rgba(89,49,138,.22)}.flow-step-card h4{margin:0 0 8px;color:#241b26;font-size:19px}.flow-step-card p{margin:0;color:#56463b;line-height:1.7;font-size:14px}.modern-pet-prices{margin:2px 0 12px}.modern-pet-prices div{background:rgba(255,255,255,.07)}
@media(max-width:1020px){.plan-card-grid.v14{grid-template-columns:1fr 1fr}.price-quick-note{grid-template-columns:1fr}.flow-steps{grid-template-columns:1fr}.flow-step-card::before{display:none}}
@media(max-width:680px){.plan-card-grid.v14{grid-template-columns:1fr}.plan-card{min-height:auto}.plan-card h3 span{display:block;margin-left:0;margin-top:4px}.flow-modern-head h3{font-size:20px}.flow-step-card{padding-left:66px}}


/* v1.5 plan photos, recommendation badges, CTAs and service card unification */
.plan-card-grid.v15{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.plan-card-grid.v15 .plan-card{padding:0;min-height:0;border-radius:28px}.plan-photo{margin:0;position:relative;height:190px;overflow:hidden;background:#1c1714}.plan-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.94) contrast(1.05)}.plan-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.06),rgba(0,0,0,.38))}.plan-card-body{padding:22px 24px 24px;display:flex;flex-direction:column;min-height:300px}.recommend-badge{position:absolute;z-index:3;right:16px;top:16px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:8px 13px;background:linear-gradient(135deg,#d7b46a,#fff1b8);color:#20140b;font-weight:950;font-size:13px;box-shadow:0 10px 24px rgba(0,0,0,.25)}.recommend-badge::before{content:'★';font-size:12px}.pet-badge{background:linear-gradient(135deg,#8b5cf6,#d7b46a);color:#fff}.card-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 12px}.btn-card{display:inline-flex;align-items:center;justify-content:center;border-radius:14px;padding:11px 12px;font-weight:950;font-size:13px;border:1px solid rgba(255,255,255,.16);transition:.15s transform,.15s filter}.btn-card:hover{transform:translateY(-1px);filter:brightness(1.08)}.btn-card.primary{background:linear-gradient(135deg,#a06a24,#d7b46a);color:#1d130b}.btn-card.secondary{background:rgba(255,255,255,.08);color:#fff}.plan-card-grid.v15 .mini-link{margin-top:auto}.service-card-section{padding-top:44px}.service-modern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-modern-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:28px;background:radial-gradient(circle at top right,rgba(124,58,237,.22),transparent 35%),linear-gradient(180deg,rgba(255,255,255,.11),rgba(0,0,0,.26));box-shadow:0 18px 46px rgba(0,0,0,.18)}.service-modern-card figure{margin:0;height:180px;overflow:hidden}.service-modern-card figure img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.94) contrast(1.04)}.service-modern-body{padding:20px;display:flex;min-height:260px;flex-direction:column}.service-modern-body h3{font-size:21px;margin:12px 0 8px}.service-modern-body p{color:#eadfce}.service-modern-body .card-cta-row{margin-top:auto}.service-ending-modern{padding-top:58px}.modern-intro{border:1px solid rgba(215,180,106,.28);background:linear-gradient(135deg,rgba(215,180,106,.13),rgba(124,58,237,.13));border-radius:28px}.vertical-cta{grid-template-columns:1fr;min-width:180px}.modern-support-grid .support-card{background:radial-gradient(circle at top right,rgba(124,58,237,.16),transparent 36%),linear-gradient(180deg,rgba(255,255,255,.1),rgba(0,0,0,.18));border-radius:24px}.modern-support-grid .support-icon{background:linear-gradient(135deg,#7c3aed,#d7b46a);color:#fff}
@media(max-width:1020px){.plan-card-grid.v15{grid-template-columns:1fr 1fr}.service-modern-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-modern-body{min-height:230px}}
@media(max-width:680px){.plan-card-grid.v15,.service-modern-grid{grid-template-columns:1fr}.plan-photo,.service-modern-card figure{height:170px}.plan-card-body,.service-modern-body{min-height:0}.card-cta-row{grid-template-columns:1fr}.recommend-badge{top:12px;right:12px}.vertical-cta{width:100%}}


/* v1.5.1 hard fix: force actual card layout for price and service pages */
.price-overview-section .plan-card-grid.v15{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(280px,1fr)) !important;
  gap:26px !important;
  align-items:stretch !important;
  width:100% !important;
  margin-top:28px !important;
}
.price-overview-section .plan-card-grid.v15 > .plan-card{
  display:flex !important;
  flex-direction:column !important;
  position:relative !important;
  overflow:hidden !important;
  padding:0 !important;
  min-height:0 !important;
  border-radius:30px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(0,0,0,.30)) !important;
  box-shadow:0 22px 55px rgba(0,0,0,.28) !important;
}
.price-overview-section .plan-card-grid.v15 > .plan-card.featured{
  border-color:rgba(215,180,106,.48) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.32),0 0 0 1px rgba(215,180,106,.12) inset !important;
}
.price-overview-section .plan-card-grid.v15 > .plan-card::after{display:none !important;}
.price-overview-section .plan-photo{
  display:block !important;
  width:100% !important;
  height:220px !important;
  margin:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
  background:#140f0c !important;
}
.price-overview-section .plan-photo img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
}
.price-overview-section .plan-card-body{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  padding:24px 26px 26px !important;
  min-height:330px !important;
}
.price-overview-section .plan-card-top{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:12px !important;
  margin:0 !important;
}
.price-overview-section .plan-card h3{
  margin:2px 0 6px !important;
  font-size:clamp(28px,3vw,40px) !important;
  line-height:1.15 !important;
  color:#fff !important;
}
.price-overview-section .plan-card h3 span{font-size:.52em !important;color:#eadfce !important;}
.price-overview-section .plan-card p{margin:0 !important;color:#eadfce !important;line-height:1.75 !important;}
.price-overview-section .plan-points{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:6px 0 10px !important;
  padding:0 !important;
  list-style:none !important;
}
.price-overview-section .plan-points li{
  list-style:none !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.13) !important;
  background:rgba(255,255,255,.08) !important;
  color:#efe5d8 !important;
  font-weight:800 !important;
  font-size:12px !important;
}
.price-overview-section .recommend-badge{
  position:absolute !important;
  top:16px !important;
  right:16px !important;
  z-index:5 !important;
}
.price-overview-section .card-cta-row,
.service-modern-card .card-cta-row{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  margin:12px 0 6px !important;
}
.price-overview-section .btn-card,
.service-modern-card .btn-card{
  text-decoration:none !important;
  text-align:center !important;
}
.price-overview-section .mini-link{
  margin-top:auto !important;
  width:100% !important;
}
.service-card-section .service-modern-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(250px,1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
  margin-top:26px !important;
}
.service-card-section .service-modern-card{
  display:flex !important;
  flex-direction:column !important;
  position:relative !important;
  overflow:hidden !important;
  border-radius:30px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(0,0,0,.28)) !important;
  box-shadow:0 22px 55px rgba(0,0,0,.24) !important;
}
.service-card-section .service-modern-card figure{
  display:block !important;
  width:100% !important;
  height:190px !important;
  margin:0 !important;
  overflow:hidden !important;
  background:#140f0c !important;
}
.service-card-section .service-modern-card figure img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
}
.service-card-section .service-modern-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
  min-height:270px !important;
  padding:22px !important;
}
.service-card-section .service-modern-body h3{
  margin:12px 0 8px !important;
  color:#fff !important;
}
.service-card-section .service-modern-body p{
  margin:0 0 14px !important;
  color:#eadfce !important;
  line-height:1.75 !important;
}
.service-card-section .service-modern-body .card-cta-row{margin-top:auto !important;}
@media(max-width:1020px){
  .service-card-section .service-modern-grid{grid-template-columns:repeat(2,minmax(250px,1fr)) !important;}
}
@media(max-width:760px){
  .price-overview-section .plan-card-grid.v15,
  .service-card-section .service-modern-grid{grid-template-columns:1fr !important;}
  .price-overview-section .plan-photo{height:190px !important;}
  .price-overview-section .plan-card-body{min-height:0 !important;padding:20px !important;}
  .service-card-section .service-modern-body{min-height:0 !important;}
  .price-overview-section .card-cta-row,
  .service-modern-card .card-cta-row{grid-template-columns:1fr !important;}
}


/* v1.5.3 home price section unified */
.home-price-section{padding-top:10px}.home-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}.home-price-card{padding:22px 22px 20px;border-radius:28px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(0,0,0,.26));box-shadow:0 18px 38px rgba(0,0,0,.18)}.home-price-card.featured{border-color:rgba(215,180,106,.28);box-shadow:0 22px 44px rgba(0,0,0,.22)}.home-price-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.mini-badge{display:inline-flex;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#efe0d3;font-size:12px;font-weight:900}.mini-badge.rec{background:rgba(215,180,106,.16);border-color:rgba(215,180,106,.28);color:var(--gold-soft)}.mini-badge.pet{background:rgba(167,139,250,.18);border-color:rgba(167,139,250,.3);color:#efe5ff}.mini-code{font-size:12px;font-weight:900;letter-spacing:.12em;color:#dfd1c2}.home-price-card h3{margin:0 0 10px;font-size:28px;color:#fff}.home-price-amount{font-size:clamp(34px,3.4vw,52px);font-weight:950;line-height:1.05;margin-bottom:12px;color:#fff}.home-price-amount span{display:inline-block;font-size:.42em;margin-left:8px;color:#f0e5d8}.home-price-card p{margin:0 0 14px;color:#eadfd3;line-height:1.8}.home-price-card ul{margin:0;padding-left:20px;color:#efe2d6;display:grid;gap:8px}.home-price-card li::marker{color:var(--gold-soft)}
@media(max-width:860px){.home-price-grid{grid-template-columns:1fr}}



/* v1.6 white / kinari redesign */
:root{
  --ink:#211a16;
  --charcoal:#2b211b;
  --brown:#5a4635;
  --purple:#6f35b8;
  --deep-purple:#4a2878;
  --gold:#b88a3b;
  --gold-soft:#8c6427;
  --white:#fffaf2;
  --muted:#6f655c;
  --line:rgba(43,33,27,.12);
  --panel:rgba(255,255,255,.82);
  --panel2:#ffffff;
  --shadow:0 18px 45px rgba(60,45,30,.12);
}
html{background:#f7f3ec!important;}
body{
  color:#211a16!important;
  background:
    radial-gradient(circle at 90% 10%, rgba(111,53,184,.08), transparent 34%),
    radial-gradient(circle at 12% 22%, rgba(184,138,59,.10), transparent 30%),
    linear-gradient(180deg,#fffaf2 0%,#f7f3ec 45%,#f2ede5 100%)!important;
}
a{color:inherit}
.topbar{background:#f2eadf!important;color:#5c4b3f!important;border-bottom:1px solid rgba(43,33,27,.08)!important;}
.site-header{
  position:sticky!important;top:0!important;z-index:50!important;
  background:rgba(255,250,242,.94)!important;
  color:#211a16!important;
  border-bottom:1px solid rgba(43,33,27,.10)!important;
  box-shadow:0 8px 24px rgba(40,30,20,.08)!important;
  backdrop-filter:blur(12px)!important;
}
.header-inner{min-height:82px!important;}
.brand-logo{height:56px!important;width:auto!important;object-fit:contain!important;filter:none!important;opacity:1!important;}
.brand-title{color:#211a16!important}
.brand-sub{color:#6a5d52!important}
.nav a{
  color:#2a211b!important;
  background:transparent!important;
  border:1px solid transparent!important;
}
.nav a:hover,.nav a[aria-current="page"]{
  background:#efe5d6!important;
  border-color:rgba(184,138,59,.22)!important;
  color:#211a16!important;
}
.header-tel{
  color:#211a16!important;
  background:linear-gradient(135deg,#f7dfaa,#d9ad60)!important;
  border-color:rgba(184,138,59,.55)!important;
  box-shadow:0 10px 22px rgba(184,138,59,.18)!important;
}
.nav-toggle{color:#211a16!important;background:#fff!important;border:1px solid rgba(43,33,27,.16)!important;}
.hero{
  position:relative!important;
  background:linear-gradient(90deg,rgba(255,250,242,.96),rgba(255,250,242,.78)), var(--hero-bg, none)!important;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(255,250,242,.92),rgba(255,250,242,.68),rgba(255,250,242,.35))!important;
  pointer-events:none;
}
.hero>*{position:relative;z-index:1}
.hero h1,.page-hero h1{
  color:#211a16!important;
  text-shadow:none!important;
}
.hero-lead,.section-lead,.card p,.card li,.image-card p,.section-head p{
  color:#5f554c!important;
}
.hero-badge,.section-kicker{
  color:#8c6427!important;
}
.hero-badge{
  background:#fff7e8!important;border-color:rgba(184,138,59,.26)!important;
}
.hero-card{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(43,33,27,.12)!important;
  box-shadow:0 24px 60px rgba(45,36,30,.16)!important;
  color:#211a16!important;
}
.hero-card strong,.hero-card dd{color:#211a16!important}
.hero-card dt{color:#8c6427!important}
.hero-card div{border-top:1px solid rgba(43,33,27,.10)!important}
.btn-primary,.btn-card.primary{
  color:#211a16!important;background:linear-gradient(135deg,#c89134,#efd18a)!important;border-color:rgba(184,138,59,.3)!important;
}
.btn-secondary,.btn-card.secondary{
  color:#211a16!important;background:#fff!important;border:1px solid rgba(43,33,27,.16)!important;
}
.emergency,.split-section{
  background:#f2eadf!important;border-color:rgba(43,33,27,.08)!important;color:#211a16!important;
}
.emergency strong{color:#8c6427!important}
main section{background:transparent!important;}
.card,.image-card,.contact-box,.line-box,.map-box,.legal,.faq details,.photo-frame{
  background:#fff!important;
  border:1px solid rgba(43,33,27,.10)!important;
  box-shadow:0 14px 36px rgba(45,36,30,.10)!important;
  color:#211a16!important;
}
.card h3,.image-card h3,.section-title{color:#211a16!important}
.badge,.plan-label,.plan-badge,.mini-badge{
  background:#f3e7d2!important;
  color:#6d4e1d!important;
  border:1px solid rgba(184,138,59,.22)!important;
}
.page-hero .wrap{border-bottom:1px solid rgba(43,33,27,.10)!important;}
.breadcrumb{color:#6b6057!important}
.price-table{
  background:#fff!important;border:1px solid rgba(43,33,27,.10)!important;color:#211a16!important;
}
.price-table th{background:#f1e6d5!important;color:#5a3d16!important}
.price-table td{border-bottom:1px solid rgba(43,33,27,.09)!important}
.price-table .amount{color:#211a16!important}
.note{color:#6f655c!important}
.plan-card-grid.v15,.plan-card-grid.v14,.home-price-grid,.service-modern-grid{
  display:grid!important;
}
.plan-card-grid.v15,.plan-card-grid.v14{grid-template-columns:repeat(2,minmax(280px,1fr))!important;gap:26px!important;}
.plan-card,.home-price-card,.service-modern-card,.plan-detail-card{
  color:#211a16!important;
  background:#fff!important;
  border:1px solid rgba(43,33,27,.10)!important;
  box-shadow:0 18px 46px rgba(45,36,30,.12)!important;
}
.plan-card.featured,.home-price-card.featured{
  border-color:rgba(184,138,59,.38)!important;
  box-shadow:0 22px 54px rgba(184,138,59,.15)!important;
}
.plan-card::after{display:none!important}
.plan-photo{height:230px!important;background:#f2eadf!important}
.plan-photo img{filter:none!important}
.plan-card h3,.home-price-card h3,.service-modern-card h3,.plan-detail-head h2,.flow-modern-head h3,.detail-box h3{color:#211a16!important}
.plan-card h3 span,.home-price-amount span{color:#6d6258!important}
.plan-card p,.home-price-card p,.service-modern-card p,.detail-box p,.plan-detail-head p{color:#5f554c!important}
.plan-code,.mini-code{color:#8a7a68!important}
.plan-points li,.flow-summary-row span{
  color:#443a32!important;background:#f5efe7!important;border:1px solid rgba(43,33,27,.10)!important;
}
.recommend-badge{
  background:linear-gradient(135deg,#7e46bf,#9b6bd1)!important;color:#fff!important;
}
.price-quick-note div,.detail-box,.pet-price-list div{
  background:#fffaf4!important;border:1px solid rgba(43,33,27,.10)!important;color:#211a16!important;
}
.price-quick-note strong,.detail-box h3,.pet-price-list strong{color:#8c6427!important}
.price-quick-note span,.detail-box li,.pet-price-list span{color:#51473f!important}
.price-pill{
  background:linear-gradient(135deg,#f4d48b,#c89134)!important;color:#211a16!important;
}
.flow-modern{
  background:#fff!important;border:1px solid rgba(43,33,27,.10)!important;box-shadow:0 12px 28px rgba(45,36,30,.08)!important;
}
.flow-modern-head{background:linear-gradient(135deg,#fff7e8,#f1e5d6)!important;border-bottom:1px solid rgba(43,33,27,.08)!important}
.flow-modern-head p,.flow-step-card p{color:#5d5249!important}
.flow-step-card{background:#fffaf4!important;border-color:rgba(43,33,27,.10)!important}
.step-no{background:linear-gradient(135deg,#7c3aed,#b88a3b)!important;color:#fff!important}
.service-modern-grid{grid-template-columns:repeat(3,minmax(250px,1fr))!important;gap:24px!important}
.service-modern-card figure{background:#f2eadf!important}
.home-price-card ul,.plan-card ul,.detail-box ul{color:#4f453d!important}
.site-footer{
  color:#443a32!important;background:#eee5d9!important;border-top:1px solid rgba(43,33,27,.10)!important;
}
.footer-nav{color:#5d5148!important}
.admin-link{opacity:.55}
.contact-list a,.contact-list span{
  color:#211a16!important;background:#fffaf4!important;border:1px solid rgba(43,33,27,.08)!important;
}
.legal h2,.faq summary{color:#8c6427!important}
@media(max-width:900px){
  .nav{background:#fffaf2!important;border:1px solid rgba(43,33,27,.12)!important}
  .plan-card-grid.v15,.plan-card-grid.v14,.home-price-grid,.service-modern-grid{grid-template-columns:1fr!important}
  .hero::before{background:rgba(255,250,242,.88)!important}
}


/* v1.6.1 hero image restore */
.hero{background:transparent!important;}
.hero::before{display:none!important;}
.hero-bg{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:
    linear-gradient(90deg,rgba(255,250,242,.78) 0%,rgba(255,250,242,.60) 42%,rgba(255,250,242,.42) 100%),
    url('/assets/img/hero-hall.webp') center/cover no-repeat!important;
  opacity:1!important;
}
.hero-inner,.hero-copy,.hero-card{position:relative;z-index:1!important;}
.hero-card{background:rgba(255,255,255,.84)!important;}
@media(max-width:900px){
  .hero-bg{background:
    linear-gradient(180deg,rgba(255,250,242,.88) 0%,rgba(255,250,242,.72) 52%,rgba(255,250,242,.55) 100%),
    url('/assets/img/hero-hall.webp') center/cover no-repeat!important;}
}


/* v1.6.2 hero readability improve */
.hero-bg{
  background:
    linear-gradient(90deg,rgba(255,250,242,.92) 0%,rgba(255,250,242,.82) 34%,rgba(255,250,242,.62) 58%,rgba(255,250,242,.48) 100%),
    url('/assets/img/hero-hall.webp') center/cover no-repeat!important;
}
.hero-copy{
  background:rgba(255,250,242,.68);
  border:1px solid rgba(43,33,27,.10);
  box-shadow:0 16px 38px rgba(45,36,30,.08);
  backdrop-filter:blur(4px);
  border-radius:28px;
  padding:24px 28px;
}
.hero h1{line-height:1.14!important;}
.hero-lead{font-size:17px!important;line-height:1.95!important;color:#4f453d!important;}
@media(max-width:900px){
  .hero-bg{background:
    linear-gradient(180deg,rgba(255,250,242,.94) 0%,rgba(255,250,242,.84) 46%,rgba(255,250,242,.68) 100%),
    url('/assets/img/hero-hall.webp') center/cover no-repeat!important;}
  .hero-copy{padding:20px 18px;border-radius:22px;}
}


/* v1.7 expanded pages */
.area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.area-card{background:#fff;border:1px solid rgba(43,33,27,.10);box-shadow:0 14px 36px rgba(45,36,30,.10);border-radius:24px;padding:22px}.area-card.primary{border-color:rgba(184,138,59,.34);background:linear-gradient(135deg,#fff,#fff7e8)}.area-card h3{margin:0 0 8px;color:#211a16}.area-card p{margin:0;color:#5f554c}.company-table-card{background:#fff;border:1px solid rgba(43,33,27,.10);box-shadow:0 14px 36px rgba(45,36,30,.10);border-radius:24px;overflow:hidden}.company-table{width:100%;border-collapse:collapse}.company-table th,.company-table td{padding:16px 18px;border-bottom:1px solid rgba(43,33,27,.08);text-align:left;vertical-align:top}.company-table th{width:150px;background:#f3e7d2;color:#6d4e1d;font-weight:900}.company-table tr:last-child th,.company-table tr:last-child td{border-bottom:none}.compact-cta{margin-top:18px}.faq p{color:#5f554c;margin:12px 0 0}@media(max-width:900px){.area-grid{grid-template-columns:1fr}.company-table th,.company-table td{display:block;width:100%}.company-table th{border-bottom:none;padding-bottom:6px}.company-table td{padding-top:8px}}


/* v1.7.1 service readability fix */
.service-card-section .section-lead,
.service-ending-modern .section-lead{
  color:#564c44!important;
}
.service-card-section .service-modern-card{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,241,234,.98))!important;
  border:1px solid rgba(43,33,27,.10)!important;
  box-shadow:0 18px 40px rgba(45,36,30,.11)!important;
}
.service-card-section .service-modern-body{
  background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(250,246,240,.96))!important;
}
.service-card-section .service-modern-body h3{
  color:#211a16!important;
}
.service-card-section .service-modern-body p{
  color:#5a5047!important;
}
.service-card-section .service-modern-card figure::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(0,0,0,.02),rgba(0,0,0,.10));
  pointer-events:none;
}
.service-ending-modern .modern-intro{
  background:linear-gradient(135deg,rgba(255,248,238,.98),rgba(249,242,250,.95))!important;
  border:1px solid rgba(184,138,59,.20)!important;
  box-shadow:0 14px 34px rgba(45,36,30,.08)!important;
}
.service-ending-modern .modern-intro h3,
.service-ending-modern .support-card h3,
.service-ending-modern .support-note h3{
  color:#211a16!important;
}
.service-ending-modern .modern-intro p,
.service-ending-modern .support-card p,
.service-ending-modern .support-note p{
  color:#5b5148!important;
}
.service-ending-modern .support-card ul{
  color:#675c53!important;
}
.service-ending-modern .support-card li::marker{
  color:#b88a3b!important;
}
.service-ending-modern .modern-support-grid .support-card{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,241,234,.98))!important;
  border:1px solid rgba(43,33,27,.10)!important;
  box-shadow:0 16px 36px rgba(45,36,30,.10)!important;
}
.service-ending-modern .support-note{
  background:linear-gradient(180deg,rgba(248,243,236,.98),rgba(242,235,226,.98))!important;
  border:1px solid rgba(184,138,59,.20)!important;
  box-shadow:0 12px 28px rgba(45,36,30,.08)!important;
}
.service-ending-modern .vertical-cta .btn-card.secondary{
  background:#ffffff!important;
}


/* v1.7.2 service final polish */
.service-card-section{padding-top:54px!important;}
.service-card-section .section-head{margin-bottom:22px!important;}
.service-card-section .service-modern-grid{
  gap:28px!important;
  align-items:stretch!important;
}
.service-card-section .service-modern-card{
  border-radius:26px!important;
  overflow:hidden!important;
  transition:transform .18s ease, box-shadow .18s ease!important;
}
.service-card-section .service-modern-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 22px 48px rgba(45,36,30,.14)!important;
}
.service-card-section .service-modern-card figure{
  height:205px!important;
}
.service-card-section .service-modern-body{
  min-height:245px!important;
  padding:24px 24px 22px!important;
}
.service-card-section .service-modern-body h3{
  font-size:22px!important;
  line-height:1.35!important;
  margin:14px 0 10px!important;
}
.service-card-section .service-modern-body p{
  font-size:15.5px!important;
  line-height:1.9!important;
}
.service-card-section .plan-badge{
  width:100%!important;
  justify-content:flex-start!important;
  padding:8px 14px!important;
  border-radius:999px!important;
}
.service-card-section .card-cta-row{
  gap:12px!important;
  margin-top:auto!important;
}
.service-card-section .btn-card,
.service-ending-modern .btn-card{
  min-height:48px!important;
  border-radius:15px!important;
  font-size:14px!important;
  letter-spacing:.02em!important;
}
.service-ending-modern{padding-top:64px!important;}
.service-ending-modern .section-head{margin-bottom:28px!important;}
.service-ending-modern .modern-intro{
  align-items:center!important;
  padding:28px 30px!important;
  border-radius:28px!important;
  margin-bottom:28px!important;
}
.service-ending-modern .modern-intro h3{
  font-size:26px!important;
  line-height:1.35!important;
  margin-bottom:10px!important;
}
.service-ending-modern .modern-intro p{
  font-size:16px!important;
  line-height:2!important;
}
.service-ending-modern .vertical-cta{
  min-width:200px!important;
  gap:12px!important;
}
.service-ending-modern .modern-support-grid{
  gap:22px!important;
}
.service-ending-modern .support-card{
  padding:24px!important;
  border-radius:24px!important;
}
.service-ending-modern .support-icon{
  width:48px!important;
  height:48px!important;
  border-radius:15px!important;
  margin-bottom:10px!important;
  color:#fff!important;
}
.service-ending-modern .support-card h3{
  font-size:21px!important;
  line-height:1.4!important;
  margin:10px 0 10px!important;
}
.service-ending-modern .support-card p{
  font-size:15.5px!important;
  line-height:1.9!important;
}
.service-ending-modern .support-card ul{
  margin-top:14px!important;
  line-height:1.85!important;
}
.service-ending-modern .support-note{
  margin-top:28px!important;
  padding:28px!important;
  border-radius:26px!important;
}
.service-ending-modern .support-note h3{
  font-size:23px!important;
}
.service-ending-modern .support-note p{
  font-size:16px!important;
  line-height:2!important;
}
.service-card-section + .service-ending-modern{
  margin-top:12px!important;
}
@media(max-width:1020px){
  .service-card-section .service-modern-card figure{height:190px!important;}
  .service-card-section .service-modern-body{min-height:230px!important;}
}
@media(max-width:760px){
  .service-card-section{padding-top:36px!important;}
  .service-card-section .service-modern-grid{gap:18px!important;}
  .service-card-section .service-modern-card figure{height:180px!important;}
  .service-card-section .service-modern-body{padding:20px!important;min-height:0!important;}
  .service-card-section .service-modern-body h3{font-size:20px!important;}
  .service-card-section .card-cta-row{grid-template-columns:1fr!important;}
  .service-ending-modern .modern-intro{padding:22px!important;}
  .service-ending-modern .vertical-cta{min-width:0!important;width:100%!important;}
  .service-ending-modern .support-card{padding:20px!important;}
}


/* v1.7.3 price card readability fix */
.price-overview-section .plan-card{
  background:linear-gradient(180deg,#ffffff 0%,#f7f1ea 100%)!important;
  border:1px solid rgba(43,33,27,.10)!important;
  box-shadow:0 18px 42px rgba(45,36,30,.11)!important;
}
.price-overview-section .plan-card.featured{
  background:linear-gradient(180deg,#fffdf8 0%,#f8f0e4 100%)!important;
  border-color:rgba(184,138,59,.28)!important;
  box-shadow:0 20px 48px rgba(184,138,59,.16)!important;
}
.price-overview-section .plan-card.pet{
  border-color:rgba(124,58,237,.18)!important;
}
.price-overview-section .plan-photo::after{
  background:linear-gradient(to bottom,rgba(0,0,0,.03),rgba(0,0,0,.12))!important;
}
.price-overview-section .plan-card-body{
  background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(249,245,239,.98))!important;
}
.price-overview-section .plan-card-top .plan-badge{
  background:#f3e7d2!important;
  color:#6d4e1d!important;
  border:1px solid rgba(184,138,59,.22)!important;
}
.price-overview-section .plan-card-top .plan-code{
  color:#8a7a68!important;
}
.price-overview-section .plan-card .plan-label{
  background:linear-gradient(135deg,#8f62df,#7c3aed)!important;
  color:#fff!important;
}
.price-overview-section .plan-card h3{
  color:#211a16!important;
}
.price-overview-section .plan-card h3 span{
  color:#6d6258!important;
}
.price-overview-section .plan-card p{
  color:#5b5148!important;
}
.price-overview-section .plan-points li{
  background:#f5efe7!important;
  border:1px solid rgba(43,33,27,.10)!important;
  color:#4f453d!important;
}
.price-overview-section .btn-card.primary{
  background:linear-gradient(135deg,#c89233,#e2b95e)!important;
  color:#1d130b!important;
  border-color:rgba(184,138,59,.16)!important;
}
.price-overview-section .btn-card.secondary{
  background:#ffffff!important;
  color:#211a16!important;
  border:1px solid rgba(43,33,27,.10)!important;
}
.price-overview-section .mini-link{
  background:linear-gradient(180deg,#f2eadf,#ede2d3)!important;
  color:#8c6427!important;
  border:1px solid rgba(184,138,59,.22)!important;
}
.price-overview-section .price-quick-note strong{
  color:#8c6427!important;
}
.price-overview-section .price-quick-note span{
  color:#51473f!important;
}

/* v1.7.4 price luxury, larger text, mobile optimization */
.price-overview-section{
  background:
    radial-gradient(circle at 18% 10%, rgba(184,138,59,.10), transparent 30%),
    radial-gradient(circle at 88% 18%, rgba(111,53,184,.07), transparent 28%),
    linear-gradient(180deg,#fffaf2 0%,#f6efe6 100%);
}
.price-overview-section .section-head{
  max-width:920px;
  margin-inline:auto;
}
.price-overview-section .section-kicker{
  color:#8a6128!important;
  letter-spacing:.18em;
}
.price-overview-section .section-title{
  color:#211a16!important;
  letter-spacing:.02em;
}
.price-overview-section .section-lead{
  color:#51473f!important;
  font-size:18px!important;
  line-height:2!important;
}
.price-overview-section .plan-card-grid{
  gap:30px!important;
  align-items:stretch;
}
.price-overview-section .plan-card{
  border-radius:34px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,243,235,.99))!important;
  border:1px solid rgba(152,107,43,.22)!important;
  box-shadow:
    0 24px 58px rgba(45,36,30,.14),
    inset 0 1px 0 rgba(255,255,255,.86)!important;
  overflow:hidden;
}
.price-overview-section .plan-card.featured{
  background:
    linear-gradient(180deg,#fffefb 0%,#faf1e2 100%)!important;
  border:1px solid rgba(184,138,59,.38)!important;
  box-shadow:
    0 28px 66px rgba(128,91,35,.18),
    inset 0 1px 0 rgba(255,255,255,.94)!important;
}
.price-overview-section .plan-card.pet{
  background:
    linear-gradient(180deg,#ffffff 0%,#f7f1ec 100%)!important;
  border:1px solid rgba(124,58,237,.20)!important;
}
.price-overview-section .plan-photo{
  height:260px!important;
  background:#f2ece5!important;
}
.price-overview-section .plan-photo img{
  height:100%!important;
  object-fit:cover!important;
}
.price-overview-section .plan-photo::after{
  background:linear-gradient(to bottom,rgba(0,0,0,.00),rgba(0,0,0,.08))!important;
}
.price-overview-section .plan-card-body{
  padding:32px 32px 30px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.94),rgba(250,246,239,.99))!important;
}
.price-overview-section .plan-card-top{
  margin-bottom:20px!important;
}
.price-overview-section .plan-card-top .plan-badge{
  padding:9px 16px!important;
  font-size:14px!important;
  font-weight:900!important;
  background:#f4e7cf!important;
  color:#6d4d1f!important;
  border:1px solid rgba(184,138,59,.30)!important;
  box-shadow:0 6px 14px rgba(184,138,59,.10);
}
.price-overview-section .plan-card-top .plan-code{
  font-size:14px!important;
  letter-spacing:.16em!important;
  color:#7c6a56!important;
  font-weight:950!important;
}
.price-overview-section .plan-card .plan-label{
  padding:11px 18px!important;
  font-size:16px!important;
  font-weight:950!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#7c3aed,#9f67e8)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(124,58,237,.20);
}
.price-overview-section .plan-card h3{
  margin-top:20px!important;
  margin-bottom:18px!important;
  font-size:clamp(30px,3.1vw,46px)!important;
  line-height:1.18!important;
  letter-spacing:.01em!important;
  color:#211a16!important;
}
.price-overview-section .plan-card h3 span{
  font-size:.52em!important;
  color:#665a50!important;
  margin-left:8px!important;
}
.price-overview-section .plan-card p{
  font-size:18px!important;
  line-height:1.95!important;
  color:#514840!important;
  margin-bottom:22px!important;
}
.price-overview-section .plan-points{
  gap:10px!important;
  margin-bottom:26px!important;
}
.price-overview-section .plan-points li{
  padding:10px 14px!important;
  border-radius:999px!important;
  font-size:15px!important;
  font-weight:900!important;
  color:#443a32!important;
  background:#f3eadf!important;
  border:1px solid rgba(43,33,27,.10)!important;
}
.price-overview-section .plan-card-actions{
  gap:14px!important;
  margin-top:8px!important;
}
.price-overview-section .btn-card{
  min-height:58px!important;
  border-radius:18px!important;
  font-size:17px!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
}
.price-overview-section .btn-card.primary{
  background:linear-gradient(135deg,#b77a24,#e8c264)!important;
  color:#1d130b!important;
  box-shadow:0 12px 24px rgba(184,138,59,.18)!important;
}
.price-overview-section .btn-card.secondary{
  background:#fff!important;
  color:#211a16!important;
  border:1px solid rgba(43,33,27,.14)!important;
  box-shadow:0 10px 22px rgba(45,36,30,.08)!important;
}
.price-overview-section .mini-link{
  margin-top:16px!important;
  min-height:56px!important;
  border-radius:999px!important;
  font-size:17px!important;
  font-weight:950!important;
  background:linear-gradient(180deg,#f2e8d9,#eadbc7)!important;
  color:#76511f!important;
  border:1px solid rgba(184,138,59,.30)!important;
}
.price-overview-section .price-quick-note{
  padding:24px 26px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.86)!important;
  border:1px solid rgba(43,33,27,.10)!important;
  box-shadow:0 14px 34px rgba(45,36,30,.08)!important;
}
.price-overview-section .price-quick-note strong{
  font-size:18px!important;
  color:#7b551f!important;
}
.price-overview-section .price-quick-note span{
  font-size:17px!important;
  line-height:1.8!important;
  color:#4d433b!important;
}
@media(max-width:900px){
  .price-overview-section{padding-top:52px!important;}
  .price-overview-section .plan-card-grid{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .price-overview-section .plan-photo{
    height:220px!important;
  }
  .price-overview-section .plan-card{
    border-radius:28px!important;
  }
  .price-overview-section .plan-card-body{
    padding:26px 22px 24px!important;
  }
  .price-overview-section .plan-card h3{
    font-size:clamp(28px,8vw,38px)!important;
  }
  .price-overview-section .plan-card p{
    font-size:17px!important;
    line-height:1.9!important;
  }
  .price-overview-section .plan-card-actions{
    grid-template-columns:1fr!important;
  }
  .price-overview-section .btn-card,
  .price-overview-section .mini-link{
    width:100%!important;
    min-height:60px!important;
    font-size:17px!important;
  }
  .price-overview-section .plan-points{
    display:flex!important;
    flex-wrap:wrap!important;
  }
  .price-overview-section .price-quick-note{
    padding:22px 20px!important;
  }
}
@media(max-width:520px){
  .price-overview-section .section-title{
    font-size:clamp(34px,10vw,46px)!important;
  }
  .price-overview-section .section-lead{
    font-size:16px!important;
  }
  .price-overview-section .plan-photo{
    height:190px!important;
  }
  .price-overview-section .plan-card-body{
    padding:24px 18px 22px!important;
  }
  .price-overview-section .plan-card h3{
    font-size:32px!important;
  }
  .price-overview-section .plan-card h3 span{
    display:inline-block!important;
    margin-left:6px!important;
  }
  .price-overview-section .plan-card p{
    font-size:16px!important;
  }
  .price-overview-section .plan-card-top .plan-badge{
    font-size:13px!important;
  }
}


/* v1.7.5 ending and pet pages */
.ending-hero-card,.pet-hero-card{border:1px solid rgba(184,138,59,.18);background:linear-gradient(135deg,#fffdf8,#f6efe6);border-radius:32px;padding:28px;box-shadow:0 20px 46px rgba(45,36,30,.10)}
.ending-hero-card .section-title,.pet-hero-card .section-title{margin-top:8px}.ending-subhead,.pet-subhead{margin-top:54px}.ending-grid-readable .support-card{background:linear-gradient(180deg,#ffffff,#f8f1e8)!important;border:1px solid rgba(43,33,27,.10)!important;box-shadow:0 16px 36px rgba(45,36,30,.09)!important}.ending-grid-readable .support-card h3{color:#211a16!important}.ending-grid-readable .support-card p,.ending-grid-readable .support-card ul{color:#5b5148!important}.pet-main-photo img{object-fit:contain;background:#fff}.pet-price-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0 10px}.pet-price-card{background:linear-gradient(180deg,#fff,#f7efe4);border:1px solid rgba(43,33,27,.10);border-radius:26px;padding:24px;text-align:center;box-shadow:0 16px 36px rgba(45,36,30,.09)}.pet-price-card.featured{border-color:rgba(184,138,59,.32);box-shadow:0 18px 42px rgba(184,138,59,.14)}.pet-price-card span{display:inline-flex;padding:6px 14px;border-radius:999px;background:#f3e7d2;color:#7a551e;font-weight:900;font-size:14px}.pet-price-card strong{display:block;margin:14px 0 4px;color:#211a16;font-size:clamp(34px,4vw,52px);line-height:1}.pet-price-card p{color:#5b5148;font-weight:800;margin:0}.pet-note{text-align:center;margin-top:16px}.pet-flow{margin-top:18px}.pet-service-card .service-modern-body h3{color:#211a16!important}.pet-service-card .service-modern-body p{color:#5b5148!important}@media(max-width:900px){.pet-price-cards{grid-template-columns:1fr}.ending-hero-card,.pet-hero-card{padding:20px;border-radius:24px}.ending-subhead,.pet-subhead{margin-top:38px}}


/* v1.7.5.1 card bottom background fix */
.price-overview-section .plan-card{
  display:flex!important;
  flex-direction:column!important;
}
.price-overview-section .plan-card-body{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
.price-overview-section .plan-card .mini-link{
  margin-top:auto!important;
}


/* v1.7.6 resting/anchï fee addition */
.additional-fee-section{
  margin-top:32px;
  padding:28px;
  border-radius:30px;
  background:linear-gradient(135deg,#fffdf8,#f3eadf);
  border:1px solid rgba(184,138,59,.24);
  box-shadow:0 18px 44px rgba(45,36,30,.10);
}
.additional-fee-head{
  text-align:center;
  max-width:780px;
  margin:0 auto 22px;
}
.additional-fee-head h3{
  margin:8px 0 10px;
  font-size:clamp(28px,3vw,42px);
  color:#211a16;
}
.additional-fee-head p{
  margin:0;
  color:#5b5148;
  line-height:1.9;
  font-weight:700;
}
.fee-mini-card{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:22px;
  padding:24px;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(43,33,27,.10);
  box-shadow:0 14px 34px rgba(45,36,30,.08);
}
.fee-label{
  display:inline-flex;
  padding:8px 14px;
  border-radius:999px;
  background:#f3e7d2;
  color:#7b551f;
  font-weight:950;
  border:1px solid rgba(184,138,59,.22);
}
.fee-mini-card h4{
  margin:12px 0 8px;
  font-size:clamp(32px,4vw,54px);
  color:#211a16;
  line-height:1.05;
}
.fee-mini-card p{
  margin:0;
  color:#5b5148;
  line-height:1.85;
  font-weight:700;
}
.resting-service-card figure img{
  object-position:center center;
}
.service-price-note{
  display:inline-flex;
  align-self:flex-start;
  margin:8px 0 14px;
  padding:8px 14px;
  border-radius:999px;
  background:#f3e7d2;
  color:#7b551f;
  font-weight:950;
  border:1px solid rgba(184,138,59,.22);
}
@media(max-width:760px){
  .additional-fee-section{padding:22px 18px;border-radius:24px;}
  .fee-mini-card{grid-template-columns:1fr;padding:20px;}
  .fee-mini-card .btn-card{width:100%;min-height:56px;}
}


/* v1.7.7 price text/link fix */
.price-overview-section .plan-card h3{
  display:none!important;
}
.price-overview-section .plan-price{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:8px 12px!important;
  margin:20px 0 16px!important;
  color:#211a16!important;
  line-height:1.08!important;
  letter-spacing:.01em!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
.price-overview-section .plan-price .price-main{
  display:inline-block!important;
  font-size:clamp(34px,3.4vw,48px)!important;
  font-weight:950!important;
  color:#211a16!important;
  white-space:nowrap!important;
  max-width:100%!important;
}
.price-overview-section .plan-price .price-tax{
  display:inline-block!important;
  font-size:clamp(17px,1.6vw,23px)!important;
  font-weight:950!important;
  color:#5c5047!important;
  white-space:nowrap!important;
}
.price-overview-section .plan-price-inquiry .price-main{
  font-size:clamp(32px,3vw,44px)!important;
}
.price-overview-section .plan-card p{
  margin-top:0!important;
}
@media(max-width:900px){
  .price-overview-section .plan-price .price-main{
    font-size:clamp(31px,8vw,42px)!important;
  }
  .price-overview-section .plan-price .price-tax{
    font-size:18px!important;
  }
}
@media(max-width:520px){
  .price-overview-section .plan-price{
    display:block!important;
  }
  .price-overview-section .plan-price .price-main{
    display:block!important;
    white-space:normal!important;
    font-size:32px!important;
    line-height:1.15!important;
  }
  .price-overview-section .plan-price .price-tax{
    display:block!important;
    margin-top:6px!important;
  }
  .price-overview-section .plan-price-inquiry .price-main{
    font-size:30px!important;
  }
}

/* v1.7.8 price amount visibility final fix */
.price-overview-section .plan-card .plan-price,
.price-overview-section .plan-card .plan-price *,
.price-overview-section .plan-card .plan-label,
.price-overview-section .plan-card p,
.price-overview-section .plan-card li{
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}
.price-overview-section .plan-card .plan-price{
  display:flex !important;
  align-items:baseline !important;
  justify-content:flex-start !important;
  gap:8px 12px !important;
  margin:20px 0 18px !important;
  min-height:58px !important;
  color:#211a16 !important;
}
.price-overview-section .plan-card .plan-price .price-main,
.price-overview-section .plan-card .plan-price .price-tax{
  color:#211a16 !important;
  -webkit-text-fill-color:currentColor !important;
}
.price-overview-section .plan-card .plan-price .price-main{
  display:inline-block !important;
  font-size:clamp(44px,4.2vw,58px) !important;
  font-weight:950 !important;
  letter-spacing:0 !important;
  line-height:1.08 !important;
  white-space:nowrap !important;
}
.price-overview-section .plan-card .plan-price .price-tax{
  display:inline-block !important;
  font-size:clamp(18px,1.9vw,24px) !important;
  font-weight:900 !important;
  color:#5e5148 !important;
  white-space:nowrap !important;
}
.price-overview-section .plan-card .plan-price.plan-price-inquiry,
.price-overview-section .plan-card .plan-price-inquiry{
  min-height:auto !important;
}
.price-overview-section .plan-card .plan-price-inquiry .price-main{
  font-size:clamp(34px,3.5vw,48px) !important;
  white-space:normal !important;
}
.price-overview-section .plan-card .plan-price-inquiry .price-tax{
  font-size:clamp(18px,1.7vw,22px) !important;
}
@media (max-width: 900px){
  .price-overview-section .plan-card .plan-price .price-main{
    font-size:clamp(38px,8vw,52px) !important;
  }
}
@media (max-width: 520px){
  .price-overview-section .plan-card .plan-price{
    display:block !important;
    min-height:auto !important;
  }
  .price-overview-section .plan-card .plan-price .price-main{
    display:block !important;
    font-size:38px !important;
    white-space:normal !important;
  }
  .price-overview-section .plan-card .plan-price .price-tax{
    display:block !important;
    margin-top:6px !important;
    font-size:18px !important;
  }
  .price-overview-section .plan-card .plan-price-inquiry .price-main{
    font-size:32px !important;
  }
}


/* v1.7.8.1 price cards final confirmation */
/* Home price cards */
.home-price-section .home-price-card{
  background:linear-gradient(180deg,#ffffff 0%,#fbf6ee 100%) !important;
  border:1px solid rgba(43,33,27,.10) !important;
  box-shadow:0 18px 42px rgba(45,36,30,.10) !important;
}
.home-price-section .home-price-card.featured{
  border-color:rgba(184,138,59,.34) !important;
  box-shadow:0 20px 48px rgba(184,138,59,.14) !important;
}
.home-price-section .home-price-card h3,
.home-price-section .home-price-card p,
.home-price-section .home-price-card li,
.home-price-section .home-price-amount,
.home-price-section .home-price-amount span{
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  -webkit-text-fill-color:currentColor !important;
}
.home-price-section .home-price-card h3{
  color:#211a16 !important;
  font-size:30px !important;
  line-height:1.32 !important;
}
.home-price-section .home-price-card p{
  color:#5a5047 !important;
  font-size:16px !important;
  line-height:1.9 !important;
}
.home-price-section .home-price-card li{
  color:#4f453d !important;
  font-size:16px !important;
  line-height:1.75 !important;
  font-weight:700 !important;
}
.home-price-section .home-price-amount{
  display:block !important;
  margin:20px 0 14px !important;
  color:#211a16 !important;
  font-size:clamp(36px,3.7vw,52px) !important;
  font-weight:950 !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
  white-space:normal !important;
  word-break:keep-all !important;
}
.home-price-section .home-price-amount span{
  display:inline-block !important;
  margin-left:10px !important;
  color:#5e5148 !important;
  font-size:.45em !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}
.home-price-section .home-price-card:nth-child(3) .home-price-amount{
  font-size:clamp(30px,3vw,42px) !important;
}
.home-price-section .home-price-card:nth-child(3) .home-price-amount span{
  font-size:.52em !important;
}
.home-price-section .home-price-card.pet .home-price-amount{
  font-size:clamp(32px,3.2vw,46px) !important;
}

/* Price page plan cards */
.price-overview-section .plan-card .plan-price,
.price-overview-section .plan-card .plan-price *,
.price-overview-section .plan-card .plan-label,
.price-overview-section .plan-card p,
.price-overview-section .plan-card li{
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  -webkit-text-fill-color:currentColor !important;
}
.price-overview-section .plan-card .plan-price{
  display:block !important;
  margin:20px 0 18px !important;
  min-height:auto !important;
  color:#211a16 !important;
}
.price-overview-section .plan-card .plan-price .price-main{
  display:inline-block !important;
  color:#211a16 !important;
  font-size:clamp(42px,4.1vw,56px) !important;
  font-weight:950 !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
  white-space:normal !important;
}
.price-overview-section .plan-card .plan-price .price-tax{
  display:inline-block !important;
  margin-left:10px !important;
  color:#5e5148 !important;
  font-size:clamp(18px,1.8vw,24px) !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}
.price-overview-section .plan-card .plan-price-inquiry .price-main{
  font-size:clamp(34px,3.4vw,46px) !important;
}
.price-overview-section .plan-card.pet .plan-price .price-main{
  font-size:clamp(34px,3.4vw,48px) !important;
}

/* Button/link final check */
.home-price-section .btn,
.price-overview-section .btn-card,
.price-overview-section .mini-link{
  text-shadow:none !important;
  -webkit-text-fill-color:currentColor !important;
}

/* Mobile */
@media(max-width:680px){
  .home-price-section .home-price-card h3{
    font-size:26px !important;
  }
  .home-price-section .home-price-amount{
    font-size:36px !important;
  }
  .home-price-section .home-price-card.pet .home-price-amount{
    font-size:31px !important;
  }
  .home-price-section .home-price-amount span{
    display:block !important;
    margin:6px 0 0 !important;
    font-size:18px !important;
  }
  .price-overview-section .plan-card .plan-price .price-main{
    display:block !important;
    font-size:36px !important;
  }
  .price-overview-section .plan-card.pet .plan-price .price-main{
    font-size:31px !important;
  }
  .price-overview-section .plan-card .plan-price .price-tax{
    display:block !important;
    margin:6px 0 0 !important;
    font-size:18px !important;
  }
  .price-overview-section .plan-card .plan-price-inquiry .price-main{
    font-size:31px !important;
  }
}


/* v1.8 ending tool */
.ending-tool-hero{padding-bottom:34px}.ending-tool-hero-card{background:linear-gradient(135deg,#fffdf8,#f4eadc);border:1px solid rgba(184,138,59,.22);border-radius:34px;padding:32px;box-shadow:0 20px 48px rgba(45,36,30,.10)}.privacy-promises{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.privacy-promises span{display:inline-flex;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid rgba(43,33,27,.10);color:#6d4e1d;font-weight:950}.ending-tool-section{padding-top:32px}.tool-shell{display:grid;grid-template-columns:250px 1fr;gap:22px;align-items:start}.tool-progress{position:sticky;top:98px;background:#fff;border:1px solid rgba(43,33,27,.10);border-radius:26px;padding:18px;box-shadow:0 14px 34px rgba(45,36,30,.08)}.progress-title{font-weight:950;color:#211a16;margin-bottom:10px}.tool-progress ol{list-style:none;padding:0;margin:0;display:grid;gap:8px}.tool-progress button{width:100%;border:1px solid rgba(43,33,27,.08);background:#f8f2ea;color:#5b5148;border-radius:14px;padding:10px;text-align:left;font-weight:900;cursor:pointer}.tool-progress button span{display:inline-grid;place-items:center;width:26px;height:26px;margin-right:8px;border-radius:50%;background:#e9dac2;color:#6d4e1d}.tool-progress li.active button{background:linear-gradient(135deg,#7c3aed,#d7b46a);color:#fff}.tool-progress li.active button span{background:#fff;color:#6d4e1d}.tool-main-panel{background:#fff;border:1px solid rgba(43,33,27,.10);border-radius:30px;padding:26px;box-shadow:0 18px 42px rgba(45,36,30,.10)}.tool-alert{background:#fff7e8;border:1px solid rgba(184,138,59,.25);border-radius:22px;padding:18px;margin-bottom:22px}.tool-alert strong{color:#6d4e1d;font-size:20px}.tool-alert p{color:#5b5148;margin:4px 0 0;font-weight:700}.tool-step{display:none}.tool-step.active{display:block}.step-kicker{display:inline-flex;color:#7b551f;background:#f3e7d2;border:1px solid rgba(184,138,59,.22);border-radius:999px;padding:6px 12px;font-weight:950}.tool-step h2{font-size:clamp(30px,3.6vw,46px);line-height:1.25;color:#211a16;margin:14px 0 14px}.tool-step p{font-size:18px;color:#5b5148;line-height:1.9}.tool-step label{display:grid;gap:8px;color:#211a16;font-size:18px;font-weight:950;margin:18px 0}.tool-step input[type="text"],.tool-step input[type="tel"],.tool-step textarea{width:100%;border:2px solid rgba(43,33,27,.14);border-radius:18px;padding:16px;font-size:18px;line-height:1.7;color:#211a16;background:#fffdf8}.tool-step textarea{resize:vertical}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.choice-grid label,.sms-mode-box label{display:flex;align-items:center;gap:10px;margin:0;background:#f8f2ea;border:2px solid rgba(43,33,27,.10);border-radius:18px;padding:16px;font-size:18px;font-weight:950;color:#211a16}.choice-grid input,.sms-mode-box input{width:22px;height:22px;accent-color:#7c3aed}.point-box{margin-top:20px;padding:20px;border-radius:22px;background:#f8f2ea;border:1px solid rgba(43,33,27,.10)}.point-box h3{margin:0 0 8px;color:#211a16;font-size:22px}.point-box p,.point-box li{color:#5b5148;font-size:17px;line-height:1.9}.point-box.warning{background:#fff4e5;border-color:rgba(184,90,30,.22)}.sms-mode-box{border:1px solid rgba(43,33,27,.10);border-radius:22px;padding:16px;margin:18px 0;background:#fffdf8}.sms-mode-box legend{padding:0 8px;color:#211a16;font-weight:950;font-size:18px}.tool-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.btn-danger{background:#7f1d1d;color:#fff}.tool-nav-buttons{display:flex;justify-content:space-between;gap:12px;margin-top:28px;border-top:1px solid rgba(43,33,27,.10);padding-top:20px}.tool-nav-buttons .btn{min-width:160px;font-size:18px}.tool-promo-section{padding-top:34px}.tool-promo-card{display:flex;justify-content:space-between;align-items:center;gap:22px;background:linear-gradient(135deg,#fffdf8,#f4eadc);border:1px solid rgba(184,138,59,.22);border-radius:30px;padding:28px;box-shadow:0 18px 42px rgba(45,36,30,.10)}.tool-promo-card p{color:#5b5148;font-weight:700}@media(max-width:900px){.tool-shell{grid-template-columns:1fr}.tool-progress{position:static}.choice-grid,.tool-action-grid{grid-template-columns:1fr}.tool-main-panel{padding:20px}.tool-promo-card{display:grid}.tool-step h2{font-size:32px}.tool-step label,.choice-grid label,.sms-mode-box label{font-size:17px}}@media print{header,.site-footer,.breadcrumb,.tool-progress,.tool-nav-buttons,.tool-action-grid,.topbar,.nav-toggle,.header-tel{display:none!important}.ending-tool-section,.page-hero{padding:0!important}.tool-shell{display:block}.tool-main-panel,.ending-tool-hero-card{box-shadow:none!important;border:0!important}.tool-step{display:block!important;break-inside:avoid;margin-bottom:18px}.tool-alert{border:1px solid #ccc}.point-box{break-inside:avoid}body{background:#fff!important;color:#111!important}.tool-step input,.tool-step textarea{border:1px solid #999!important}}

/* v1.8.1 resting photo section */
.resting-photo-card{
  display:block!important;
  padding:0!important;
  overflow:hidden;
}
.resting-fee-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:28px 32px;
}
.resting-photo-grid{
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr;
  gap:0;
  border-top:1px solid rgba(43,33,27,.08);
}
.resting-photo-grid figure{
  position:relative;
  margin:0;
  min-height:210px;
  overflow:hidden;
  background:#eee6da;
}
.resting-photo-grid img{
  width:100%;
  height:100%;
  min-height:210px;
  object-fit:cover;
  display:block;
  filter:saturate(.96) contrast(1.02);
}
.resting-photo-grid figcaption{
  position:absolute;
  left:14px;
  bottom:12px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,248,236,.92);
  color:#332720;
  font-size:13px;
  font-weight:800;
  box-shadow:0 8px 22px rgba(0,0,0,.12);
}
.resting-service-card figure img{
  object-position:center center;
}
@media (max-width: 900px){
  .resting-fee-main{
    display:block;
    padding:24px 22px;
  }
  .resting-fee-main .btn-card{
    margin-top:18px;
    width:100%;
  }
  .resting-photo-grid{
    grid-template-columns:1fr;
  }
  .resting-photo-grid figure,
  .resting-photo-grid img{
    min-height:220px;
  }
}

/* v1.9 photo preparation support */
.photo-tool-hero .section-lead{max-width:880px}
.photo-tool-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:28px;align-items:start}
.photo-tool-panel,.photo-tool-side .point-box,.photo-tool-side .notice-box{background:rgba(255,255,255,.88);border:1px solid rgba(184,138,59,.18);border-radius:28px;box-shadow:0 18px 45px rgba(60,45,30,.10)}
.photo-tool-panel{padding:28px}.photo-tool-side{display:grid;gap:18px}.photo-tool-side .point-box,.photo-tool-side .notice-box{padding:22px}
.photo-tool-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:20px}.photo-tool-head h2{font-size:clamp(28px,3vw,42px);margin:.1em 0 .25em}.photo-tool-head p{color:#5d5147;margin:0;font-weight:700;line-height:1.8}.step-pill{display:grid;place-items:center;flex:0 0 auto;width:48px;height:48px;border-radius:999px;background:#d2a441;color:#211a16;font-weight:900;font-size:22px;box-shadow:0 10px 24px rgba(184,138,59,.25)}
.camera-box{position:relative;overflow:hidden;border-radius:28px;background:linear-gradient(135deg,#eee6db,#fffaf2);border:1px solid rgba(43,33,27,.12);min-height:560px;display:grid;place-items:center}.camera-box video,.camera-box img{width:100%;height:100%;max-height:72vh;object-fit:cover;display:block}.camera-box img{object-fit:contain;background:#f7f3ec}.camera-guide{position:absolute;inset:0;pointer-events:none;display:grid;place-items:center}.camera-guide .guide-face{position:absolute;width:34%;aspect-ratio:3/4;border:4px solid rgba(210,164,65,.85);border-radius:50% 50% 44% 44%;top:15%;box-shadow:0 0 0 999px rgba(0,0,0,.16)}.camera-guide .guide-shoulder{position:absolute;width:58%;height:23%;border:4px solid rgba(210,164,65,.65);border-top:none;border-radius:0 0 999px 999px;top:58%}.camera-guide p{position:absolute;bottom:20px;background:rgba(255,250,242,.92);border:1px solid rgba(184,138,59,.25);padding:10px 18px;border-radius:999px;font-weight:900;color:#4b3826}.tool-status{font-weight:900;color:#6b594b;background:#fbf4e8;border:1px solid rgba(184,138,59,.18);padding:14px 16px;border-radius:18px;margin:18px 0}.photo-tool-buttons{display:flex;flex-wrap:wrap;gap:12px}.photo-tool-buttons .btn{min-width:150px}.photo-tool-buttons button:disabled{opacity:.45;cursor:not-allowed}.tool-label{display:grid;gap:8px;font-weight:900;color:#3f332b;margin:14px 0}.tool-label input{font-size:18px;padding:14px 16px;border-radius:14px;border:1px solid rgba(43,33,27,.18);background:#fff;color:#211a16}.btn.wide{width:100%;justify-content:center}.notice-box h3,.point-box h3{margin-top:0}.notice-box p{line-height:1.9;color:#5d5147;font-weight:700}
@media(max-width:900px){.photo-tool-layout{grid-template-columns:1fr}.photo-tool-panel{padding:18px}.camera-box{min-height:460px}.photo-tool-buttons .btn{width:100%;justify-content:center}.photo-tool-side{gap:14px}}
@media(max-width:520px){.camera-box{min-height:420px;border-radius:20px}.photo-tool-head{display:block}.step-pill{margin-bottom:12px}.photo-tool-head h2{font-size:28px}.photo-tool-panel,.photo-tool-side .point-box,.photo-tool-side .notice-box{border-radius:22px}.camera-guide .guide-face{width:42%;top:14%}.camera-guide .guide-shoulder{width:70%;top:58%}}


/* v1.9.1 photo tool high-quality / senior-friendly refinements */
.tool-notice-card{align-items:flex-start}
.tool-notice-card .soft-list{margin:16px 0 0;padding-left:1.2em;line-height:1.9;font-weight:800;color:#4a3c31}
.tool-status[data-type="success"]{background:#f0fff4;border-color:#7ccf95;color:#143d22}
.tool-status[data-type="error"]{background:#fff0f0;border-color:#e6a0a0;color:#5a1717}
.tool-status[data-type="info"]{background:#fbf4e8;border-color:rgba(184,138,59,.22);color:#6b594b}
#photoVideo{transform:scaleX(-1)}
#photoPreview{image-rendering:auto}
.photo-tool-side .point-box p,.photo-tool-side .notice-box p{font-size:16px;line-height:1.95}
.photo-tool-side .point-box li{font-size:16px;line-height:1.85}
.camera-box{background:linear-gradient(135deg,#f1eadf,#fffaf2)}
.camera-guide p::after{content:"・胸から上も入れてください";display:block;font-size:12px;font-weight:800;color:#7a623e;margin-top:2px;text-align:center}
@media(max-width:520px){
  .photo-tool-side .point-box p,.photo-tool-side .notice-box p,.photo-tool-side .point-box li{font-size:17px}
  .tool-notice-card .soft-list{font-size:16px}
}


/* v1.9.3 photo tool stable native camera */
.native-camera-panel{
  width:100%;
  max-width:680px;
  min-height:360px;
  border-radius:24px;
  background:linear-gradient(180deg,#fffdf8,#f4eadc);
  border:1px solid rgba(184,138,59,.24);
  box-shadow:0 18px 42px rgba(45,36,30,.10);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:28px 22px;
  margin:0 auto;
}
.native-camera-icon{font-size:56px;line-height:1;margin-bottom:10px;}
.native-camera-title{font-size:22px;font-weight:900;color:#241a14;margin:0 0 8px;}
.native-camera-lead{font-size:16px;color:#5f554d;line-height:1.8;margin:0 0 18px;}
.native-file-label{display:inline-flex!important;align-items:center;justify-content:center;min-height:54px;cursor:pointer;}
.native-file-input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:.01;
  overflow:hidden;
  pointer-events:none;
}
#photoVideo,#photoPreview{
  width:100%;
  max-width:680px;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:22px;
  margin:0 auto;
}
#photoVideo{transform:scaleX(-1);background:#111;}
#photoPreview{background:#f8f1e8;box-shadow:0 16px 40px rgba(45,36,30,.12);}
@media(max-width:600px){
  .native-camera-panel{min-height:300px;padding:24px 18px;border-radius:20px;}
  .native-camera-title{font-size:20px;}
}

/* v1.9.4 photo tool UI stabilization */
.photo-tool-section [hidden]{display:none!important;}
.photo-camera-box{
  display:block;
  min-height:0!important;
  padding:0;
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
}
.native-camera-panel{
  max-width:620px;
  min-height:320px;
  margin:0 auto;
}
.native-camera-note{
  margin:14px 0 0;
  font-size:14px;
  line-height:1.7;
  color:#705d47;
  font-weight:800;
}
.browser-camera-wrap,
.photo-preview-wrap{
  position:relative;
  width:min(100%, 620px);
  margin:0 auto;
  border-radius:24px;
  background:#f6efe5;
  border:1px solid rgba(184,138,59,.22);
  overflow:hidden;
  box-shadow:0 16px 40px rgba(45,36,30,.12);
}
.browser-camera-wrap video,
.photo-preview-wrap img{
  width:100%;
  aspect-ratio:4/5;
  height:auto!important;
  max-height:none!important;
  object-fit:cover;
  display:block;
  border-radius:0!important;
  margin:0!important;
  box-shadow:none!important;
}
.photo-preview-wrap img{
  background:#f8f1e8;
}
.preview-caption{
  margin:0;
  padding:12px 14px 14px;
  font-size:14px;
  font-weight:900;
  color:#6b594b;
  text-align:center;
  background:#fffaf2;
}
.browser-camera-wrap .camera-guide{
  position:absolute;
  inset:0;
  display:block;
  pointer-events:none;
}
.browser-camera-wrap .guide-face{
  position:absolute;
  left:50%;
  top:12%;
  transform:translateX(-50%);
  width:43%;
  aspect-ratio:3/4;
  border:3px solid rgba(210,164,65,.88);
  border-radius:50% 50% 44% 44%;
  box-shadow:0 0 0 999px rgba(0,0,0,.10);
}
.browser-camera-wrap .guide-shoulder{
  position:absolute;
  left:50%;
  top:58%;
  transform:translateX(-50%);
  width:74%;
  height:22%;
  border:3px solid rgba(210,164,65,.68);
  border-top:0;
  border-radius:0 0 999px 999px;
}
.browser-camera-wrap .camera-guide p{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  margin:0;
  white-space:nowrap;
  background:rgba(255,250,242,.94);
  padding:9px 15px;
  border-radius:999px;
  font-weight:900;
  color:#4b3826;
  border:1px solid rgba(184,138,59,.25);
}
.browser-camera-details{
  margin-top:14px;
  border:1px solid rgba(184,138,59,.18);
  border-radius:18px;
  background:#fffaf2;
  padding:12px 14px;
}
.browser-camera-details summary{
  cursor:pointer;
  font-weight:900;
  color:#5d4933;
}
.browser-camera-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:12px;
}
@media(max-width:700px){
  .browser-camera-wrap,.photo-preview-wrap,.native-camera-panel{width:100%;max-width:100%;}
  .photo-tool-panel{padding:16px;}
}
