
:root{--ink:#2a2a25;--text:#47483f;--muted:#716f64;--amber:#9c6300;--line:#eae4d3;--yellow:#ffdc54;--yellow-hi:#ffe77d;--cream:#fff8dd;--white:#fff;--card:#fffefb;--shadow:0 22px 60px rgba(99,76,22,.07);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Hiragino Sans','Yu Gothic',Meiryo,sans-serif;color:var(--text);font-size:16px;line-height:1.85;background:#fff}a{text-underline-offset:4px;color:inherit}a:hover{color:#805300}button{font:inherit}a,button{touch-action:manipulation}:focus-visible{outline:3px solid #c28a00;outline-offset:4px}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{color:var(--ink);line-height:1.43;letter-spacing:-.035em}h1{font-size:clamp(2.3rem,6vw,4.55rem);margin:0 0 24px;font-weight:850}h2{font-size:clamp(1.65rem,3.5vw,2.6rem);margin:0 0 18px;font-weight:830}h3{font-size:1.22rem;margin:0 0 12px}p{margin:0 0 18px}.container{width:min(1140px,calc(100% - 44px));margin:0 auto}.muted{color:var(--muted)}.small{font-size:.88rem}.eyebrow{font-size:.79rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--amber);margin-bottom:17px}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #efd88f;background:#fff9df;border-radius:100px;padding:6px 14px;font-size:.83rem;font-weight:700;color:#775000}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#f6ba1e}.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(227,213,165,.64)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:inline-flex;align-items:center;gap:11px;white-space:nowrap;text-decoration:none!important;font-weight:850;letter-spacing:.01em;color:var(--ink);font-size:1.07rem}.sunmark{position:relative;width:37px;height:37px;border-radius:50%;display:inline-block;background:linear-gradient(135deg,#fff3af,#ffc43f);border:2px solid #e5b52e;box-shadow:0 0 0 5px rgba(255,223,116,.16);flex:0 0 auto}.sunmark:after{content:'';position:absolute;width:10px;height:10px;top:10px;left:10px;border-radius:50%;background:rgba(255,255,255,.82)}.header-nav{display:flex;align-items:center;gap:22px}.header-nav>a{font-size:.86rem;text-decoration:none;font-weight:740;color:#59564b}.header-nav>a:hover,.header-nav>a[aria-current=page]{color:#986100}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:12px 22px;border-radius:15px;text-decoration:none;font-weight:830;text-align:center;line-height:1.45;border:1px solid transparent;transition:transform .16s,background .16s;max-width:100%}.btn:hover{transform:translateY(-1px);color:inherit}.btn-primary{background:linear-gradient(105deg,#ffe87b,#ffd044);color:#29251d!important;border-color:#e4ba3a;box-shadow:0 10px 22px rgba(190,129,10,.1)}.btn-primary:hover{background:linear-gradient(105deg,#fff093,#ffc735)}.btn-quiet{background:#fff;color:var(--ink)!important;border-color:#e7dbb8}.btn-outline{background:transparent;border-color:#e0d4b1}.btn-small{min-height:42px;padding:9px 15px;border-radius:12px;font-size:.85rem}.header-mobile{display:none;min-width:44px;min-height:44px;border:1px solid var(--line);background:#fff;border-radius:12px;color:var(--ink);font-size:1.2rem}.mobile-nav{display:none;padding:10px 22px 22px;background:#fff;border-top:1px solid var(--line)}.mobile-nav a{display:block;text-decoration:none;padding:11px 4px;font-weight:740;border-bottom:1px solid #f1ede4}.mobile-nav.open{display:block}.hero-wrap{background:radial-gradient(circle at 80% 13%,rgba(255,209,52,.5),transparent 28%),linear-gradient(150deg,#fff1a4 0%,#fff8d8 28%,#fffefb 65%,#fff 100%);border-bottom:1px solid #f0e6c4}.hero{padding:93px 0 98px;display:grid;grid-template-columns:1.18fr .82fr;gap:55px;align-items:center}.hero .lead{font-size:1.19rem;line-height:1.9;max-width:590px;color:#46463d}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 23px}.meta-row{display:flex;gap:17px;flex-wrap:wrap;font-size:.87rem;color:#716d5d}.meta-row span:before{content:'✓';color:#956200;font-weight:900;margin-right:5px}.hero-visual{min-height:395px;border-radius:40px;position:relative;overflow:hidden;background:linear-gradient(155deg,#ffca48,#fff0a4 42%,#fffaf1 86%);box-shadow:var(--shadow);border:1px solid #f2d680}.hero-visual:before{content:'';position:absolute;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 30% 32%,#fff8da,#ffd75c 63%,#ffb937 100%);left:50%;top:38%;transform:translate(-50%,-50%);box-shadow:0 0 0 32px rgba(255,255,255,.18),0 0 0 70px rgba(255,255,255,.08)}.hero-visual:after{content:'';position:absolute;bottom:-12%;left:-17%;height:36%;width:134%;border-radius:50% 50% 0 0;background:#fffcf0;transform:rotate(-6deg)}.visual-note{position:absolute;z-index:2;bottom:36px;left:28px;right:28px;background:rgba(255,255,255,.91);border:1px solid rgba(255,255,255,.95);border-radius:22px;padding:23px;box-shadow:0 12px 35px rgba(111,80,8,.06)}.visual-note strong{display:block;font-size:1.3rem;color:var(--ink);line-height:1.5}.visual-note small{display:block;letter-spacing:.14em;color:#926000;font-weight:800;margin-bottom:6px}.section{padding:85px 0}.section.sm{padding:58px 0}.section.soft{background:#fffaf0}.section.yellow-wash{background:linear-gradient(135deg,#fff0aa 0%,#fff9dc 45%,#fff 100%)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:34px}.section-head p{max-width:550px;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 8px 35px rgba(60,52,16,.035)}.card.tint{background:#fffdf2;border-color:#efdfaa}.card .number{font-size:.87rem;font-weight:850;color:var(--amber);letter-spacing:.07em;margin-bottom:21px}.card p{font-size:.95rem;color:#595b53}.topics{display:flex;gap:11px;flex-wrap:wrap;margin-top:25px}.topic{background:#fff;border:1px solid #e8e0c7;border-radius:100px;padding:9px 17px;font-size:.91rem;color:#5c574d}.offer-card{display:flex;flex-direction:column;min-height:360px;position:relative}.offer-card .cta-bottom{margin-top:auto;padding-top:15px}.price{font-weight:850;font-size:clamp(2rem,4.3vw,2.6rem);color:var(--ink);line-height:1.2;letter-spacing:-.04em;margin:14px 0}.price small{font-size:.88rem;letter-spacing:0;color:#777063;font-weight:640}.price .subprice{font-size:.9rem;color:var(--muted);font-weight:650}.offer-card .mini{font-size:.87rem;font-weight:780;color:#916000;letter-spacing:.08em}.offer-card h3{font-size:1.5rem;margin-bottom:8px}.word-feature{background:linear-gradient(125deg,#ffe782,#fff2b6 54%,#fffaf1);border:1px solid #efce69;border-radius:32px;padding:clamp(26px,5vw,60px);display:grid;grid-template-columns:.5fr 1.5fr;gap:34px;align-items:center}.word-feature .quote{font-size:clamp(1.4rem,3.6vw,2.3rem);color:var(--ink);font-weight:850;line-height:1.65}.word-feature small{color:#846013;font-weight:780;letter-spacing:.1em}.journal-card{display:flex;flex-direction:column;text-decoration:none;min-height:235px}.journal-card h3{font-size:1.08rem;line-height:1.65;flex:1}.journal-card .date{color:var(--amber);font-size:.81rem;font-weight:740}.journal-card .article-link{color:#956000;font-size:.86rem;font-weight:780;margin-top:12px}.faq-list details{border-bottom:1px solid var(--line);padding:18px 0}.faq-list summary{font-weight:790;color:var(--ink);font-size:1.04rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}.faq-list summary::after{content:'＋';color:#9b6700}.faq-list details[open] summary::after{content:'−'}.faq-list details p{color:#5b5d53;margin:14px 0 2px}.footer{border-top:1px solid #eae5d5;background:#fffdf7;padding:56px 0 25px}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:45px}.footer-links{display:flex;flex-direction:column;gap:8px;font-size:.88rem}.footer-links a{text-decoration:none;color:#625d54}.footer-brand{margin-bottom:14px}.footer-bottom{border-top:1px solid var(--line);margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.78rem;color:var(--muted)}.page-hero{background:linear-gradient(155deg,#fff0a5,#fff9e2 38%,#fff 86%);padding:78px 0 65px;border-bottom:1px solid #f3e5bd}.page-hero h1{font-size:clamp(2.3rem,5vw,3.8rem)}.page-hero .lead{max-width:720px;font-size:1.16rem}.breadcrumb{font-size:.81rem;color:#827560;margin-bottom:23px}.breadcrumb a{color:#7b6300}.wide-copy{max-width:730px}.outline-row{display:grid;grid-template-columns:250px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.outline-row strong{color:var(--ink)}.notice{border:1px solid #ead9aa;background:#fff9df;padding:20px 24px;border-radius:16px;font-size:.92rem}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.process .card{padding:23px}.plan-card.highlight{border:2px solid #eac54a;background:linear-gradient(180deg,#fff9df,#fff 40%)}.plan-features{padding-left:1.1em;font-size:.93rem;margin:0 0 20px}.plan-features li{padding:3px 0}.table-wrap{overflow-x:auto}.price-table{border-collapse:collapse;width:100%;min-width:560px}.price-table th,.price-table td{padding:17px;border-bottom:1px solid #e8e1d0;text-align:left;vertical-align:top}.price-table th{background:#fff8da;color:#39352a}.price-table td:last-child{text-align:right;white-space:nowrap;font-weight:800}.kpi{font-size:2.3rem;color:#3f3e31;font-weight:850}.two-cta{display:flex;gap:12px;flex-wrap:wrap}.portrait-placeholder{min-height:330px;background:linear-gradient(155deg,#fff0af,#fffaf0);border:1px solid #ebda9f;border-radius:30px;display:grid;place-items:center;text-align:center;padding:32px}.portrait-placeholder .icon{font-size:3rem;display:block;margin-bottom:10px}.flag{font-size:.73rem;font-weight:840;color:#865e06;border:1px solid #dec776;background:#fff4ca;padding:3px 9px;border-radius:9px;display:inline-block}.mini-rule{border-left:3px solid #e6bc2f;padding-left:15px;color:#4b493f}.legal-placeholder{background:#fff9e4;color:#735500;padding:3px 8px;border-radius:6px}.divider{height:1px;background:var(--line);margin:30px 0}.subtle-link{color:#8d5e08;font-weight:780}.center{text-align:center}.max630{max-width:630px}.cta-band{padding:42px;border-radius:30px;background:linear-gradient(100deg,#ffe682,#fff2b7 65%,#fff9e4);border:1px solid #eccb62;display:flex;align-items:center;justify-content:space-between;gap:24px}.cta-band p{margin:0}.space-top{margin-top:28px}.space-bottom{margin-bottom:25px}
@media(max-width:990px){.header-nav{gap:12px}.header-nav>a{font-size:.77rem}.header-nav>.btn-small{font-size:.75rem}.hero{gap:22px}.hero-visual{min-height:360px}.process{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.container{width:min(100% - 32px,1140px)}.header-inner{min-height:69px}.header-nav{display:none}.header-mobile{display:block}.hero{padding:62px 0 68px;grid-template-columns:1fr}.hero-visual{min-height:370px}.hero-visual:before{width:265px;height:265px;top:33%}.visual-note{bottom:24px}.hero .lead{font-size:1.05rem}.section{padding:65px 0}.section-head{display:block}.section-head p{margin-top:8px}.split,.grid-2,.grid-3,.footer-grid,.word-feature{grid-template-columns:1fr}.word-feature{gap:8px}.footer-grid{gap:28px}.offer-card{min-height:0}.page-hero{padding:58px 0 48px}.process{grid-template-columns:1fr 1fr}.cta-band{display:block;padding:28px}.cta-band .btn{margin-top:20px}.outline-row{grid-template-columns:1fr;gap:3px}}
@media(max-width:440px){.container{width:calc(100% - 28px)}.logo{font-size:.96rem}.sunmark{width:32px;height:32px}.sunmark:after{top:8px;left:8px}.hero h1{font-size:2.36rem}.hero-actions .btn,.two-cta .btn{width:100%}.meta-row{gap:6px 15px}.card{padding:23px}.process{grid-template-columns:1fr}.footer-bottom{display:block}.word-feature{padding:25px}.price{font-size:2.1rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* Offline self-contained site navigation */
#site-content:focus{outline:none}
#reflection-view{width:100%;min-height:650px;border:none;display:block;background:#fff}
[data-page].hidden-page{display:none}

/* Daily reLIGHT WORD: same Japanese calendar day, same copy for every visitor. */
.visual-note .daily-word-date{display:inline-block;font-size:.72em;letter-spacing:0;margin-left:.45em;font-weight:650;white-space:nowrap}
.visual-note .daily-word-hint{display:block;font-size:.77rem;letter-spacing:0;line-height:1.5;margin-top:17px;color:#6f541b;font-weight:650}

/* v1.4: Product-page conversion design – retain bright yellow and white */
.sale-hero{position:relative}
.sale-hero .lead{max-width:740px}
.sale-overline{margin:18px 0 12px}
.sale-card{display:flex;flex-direction:column;min-width:0}
.sale-card h3{font-size:clamp(1.32rem,2.4vw,1.72rem)}
.sale-card .plan-features{margin-top:7px}
.sale-card .flag:last-child{align-self:flex-start;margin-top:auto}
.sale-secondary-price{margin-top:-6px;margin-bottom:18px;font-weight:730;color:#5d5542;font-size:.91rem}
.sale-fit{padding:18px 16px;margin:2px 0 18px;border-radius:14px;background:#fff8e4;border:1px solid #f0e4c4;line-height:1.7;font-size:.9rem}
.choice-foot{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-top:23px;padding:23px 25px;border-radius:16px;border:1px solid #e8debd;background:#fffdf5}
.choice-foot strong{color:var(--ink)}
.choice-foot span{flex:1 1 420px;font-size:.94rem}
.sale-label{font-size:.83rem!important;color:#93600a!important;font-weight:860;letter-spacing:.04em;margin-bottom:13px}
.sale-examples .card{display:flex;flex-direction:column}
.sale-examples .card .small{margin-top:auto;padding-top:5px}
.sale-steps .card{box-shadow:none}
.sale-ready{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.8fr);align-items:center;gap:30px;padding:35px;background:rgba(255,255,255,.8);border:1px solid #e7d393;border-radius:28px}
.sale-ready p{max-width:650px}
.sale-ready .two-cta{margin-top:24px}
.sale-ready-aside{background:#fffaf0;border:1px solid #eee0b5;border-radius:20px;padding:23px;min-width:0}
.sale-ready-aside h3{font-size:1.26rem}
.sale-ready-aside p:last-of-type{font-size:.94rem}
.sale-note{line-height:1.6;margin-bottom:0;margin-top:18px}
.sale-contract-card .plan-features{margin-top:20px}
.sale-partner-intro{align-items:start}
.sale-months .card{display:flex;flex-direction:column}
.sale-month-bottom{border-top:1px solid var(--line);padding-top:13px;margin-top:auto!important;color:#574c30!important;font-weight:670;font-size:.87rem!important}
.sale-fit-grid .plan-features{margin:8px 0 5px}
@media(max-width:760px){.sale-ready{grid-template-columns:1fr;padding:25px;gap:16px}.sale-card{min-height:auto}.sale-ready .two-cta .btn{width:100%}.choice-foot{padding:20px}}
@media(max-width:440px){.sale-ready{padding:22px}.sale-contract-card .price{font-size:1.94rem}}


/* Ver 1.5 — Home service cards are a single semantic link each. */
.offer-card-link{color:var(--text);text-decoration:none!important;cursor:pointer;touch-action:manipulation;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease,transform .18s ease;position:relative;outline-offset:5px;-webkit-tap-highlight-color:rgba(255,204,55,.26)}
.offer-card-link:visited{color:var(--text)}
.offer-card-link h3,.offer-card-link .price{color:var(--ink)}
.offer-card-link .btn{pointer-events:none}
.offer-card-link:focus-visible{outline:3px solid #bd7900;border-color:#d69e21;box-shadow:0 14px 42px rgba(164,112,7,.15);background:#fff9e3}
.offer-card-link:active{background:#fff3c8;border-color:#d2a020;box-shadow:0 4px 14px rgba(150,111,18,.12);transform:scale(.994)}
.offer-card-link:active .btn-primary{background:linear-gradient(105deg,#ffe278,#ffc62e)}
.offer-card-link:active .btn-quiet{background:#fff5d0;border-color:#d8ac44}
@media (hover:hover) and (pointer:fine){
  .offer-card-link:hover{color:var(--text);border-color:#d8a32e;background:#fff9e4;box-shadow:0 16px 42px rgba(156,112,14,.14);transform:translateY(-4px)}
  .offer-card-link:hover .btn-primary{background:linear-gradient(105deg,#fff199,#ffcd3d)}
  .offer-card-link:hover .btn-quiet{background:#fff0b9;border-color:#d3a642}
}
@media (prefers-reduced-motion:reduce){.offer-card-link{transition:none}.offer-card-link:hover,.offer-card-link:active{transform:none}}

/* Ver 1.6 — Journal cards behave like the service cards. */
a.journal-card{
 color:var(--text);cursor:pointer;touch-action:manipulation;
 transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
 outline-offset:5px;-webkit-tap-highlight-color:rgba(255,204,55,.26);
}
a.journal-card:visited{color:var(--text)}
a.journal-card h3{color:var(--ink)}
a.journal-card:focus-visible{
 outline:3px solid #bd7900;border-color:#d69e21;
 background:#fff9e3;box-shadow:0 14px 42px rgba(164,112,7,.15);
}
a.journal-card:active{
 background:#fff3c8;border-color:#d2a020;
 box-shadow:0 4px 14px rgba(150,111,18,.12);transform:scale(.994);
}
a.journal-card:active .article-link{color:#6c4600}
@media (hover:hover) and (pointer:fine){
 a.journal-card:hover{
  color:var(--text);background:#fff9e4;border-color:#d8a32e;
  box-shadow:0 16px 42px rgba(156,112,14,.14);transform:translateY(-4px);
 }
 a.journal-card:hover .article-link{color:#795000}
}
@media (prefers-reduced-motion:reduce){
 a.journal-card{transition:none}
 a.journal-card:hover,a.journal-card:active{transform:none}
}


/* --- MANAGER reLIGHT / cohesive brand system v1.7 --- */
:root{--ink:#262725;--amber:#9d6300;--line:#f0dfbd;--yellow:#ffdd63;--cream:#fff9e5;--card:#fffefa;--shadow:0 19px 62px rgba(156,107,17,.07)}
body{background:#fffefc}
.header{background:rgba(255,253,247,.96);border-bottom:1px solid #f1e4c4}
.header-inner{min-height:84px}
.logo{gap:8px;font-size:1rem;flex-shrink:0;line-height:1.05}
.brand-header-icon{height:57px;width:70px;object-fit:contain;mix-blend-mode:multiply;display:block;flex:0 0 auto}
.brand-header-type{display:flex;flex-direction:column;gap:5px;letter-spacing:0}
.brand-header-kicker{letter-spacing:.31em;font-weight:730;font-size:.53rem;color:#59564f}
.brand-header-type strong{color:#282823;font-size:1.39rem;letter-spacing:-.07em;font-weight:400;line-height:1}
.brand-header-type strong span{font-weight:880;letter-spacing:-.045em}
.header-nav{gap:18px}
.header-nav>a:not(.btn){font-size:.84rem}
.hero-wrap{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 79% 17%,rgba(255,212,95,.58),transparent 43%),linear-gradient(146deg,#fff4c6 0%,#fff9e5 37%,#fffefd 80%)}
.hero-wrap:before{content:"";pointer-events:none;position:absolute;width:830px;height:500px;border:95px solid rgba(255,194,52,.10);border-radius:50%;left:-370px;top:-260px;transform:rotate(-24deg);z-index:-1}
.hero-wrap:after{content:"";pointer-events:none;position:absolute;width:85%;height:160px;border-radius:60% 40% 0 0;background:linear-gradient(90deg,rgba(255,215,108,.16),rgba(255,255,255,.02));bottom:-110px;right:-10%;transform:rotate(-5deg);z-index:-1}
.hero{padding:93px 0 106px;grid-template-columns:1.05fr .95fr;gap:52px}
.hero h1{letter-spacing:-.05em;font-size:clamp(2.55rem,4.15vw,3.28rem)}
.hero .pill{background:rgba(255,255,255,.78);border-color:#eecf82}
.hero-visual{min-height:492px;border:1px solid #f0d796;border-radius:42px;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 52% 28%,rgba(255,251,218,.98),rgba(255,240,174,.8) 54%,rgba(255,246,213,.97) 100%);box-shadow:0 30px 70px rgba(125,91,9,.09)}
.hero-visual:before{content:"";position:absolute;width:670px;height:330px;left:-115px;top:152px;transform:rotate(-13deg);border:40px solid rgba(255,198,70,.19);border-radius:50%;background:transparent;box-shadow:none;pointer-events:none}
.hero-visual:after{content:"";position:absolute;bottom:-104px;left:-15%;width:135%;height:190px;background:rgba(255,255,255,.52);border-radius:55% 70% 0 0;transform:rotate(-7deg);z-index:0}
.hero-brand-icon{position:absolute;z-index:1;top:7px;left:50%;transform:translateX(-50%);width:min(82%,355px);height:307px;object-fit:contain;mix-blend-mode:multiply;filter:saturate(1.03)}
.visual-note{z-index:3;bottom:55px;left:25px;right:25px;padding:24px 25px;border-radius:25px;background:rgba(255,255,252,.94);box-shadow:0 20px 45px rgba(134,93,13,.08);backdrop-filter:blur(4px)}
.visual-note strong{font-size:clamp(1.06rem,2vw,1.32rem)}
.hero-visual-caption{z-index:3;position:absolute;bottom:15px;left:0;right:0;text-align:center;font-size:.78rem;letter-spacing:.13em;color:#8d6723;font-weight:700;margin:0}
.section.soft{background:linear-gradient(140deg,#fffaf0 0%,#fffcf7 62%,#fffefa 100%)}
.section.yellow-wash{position:relative;overflow:hidden;background:radial-gradient(ellipse at 88% 12%,rgba(255,212,96,.33),transparent 43%),linear-gradient(135deg,#fff4c8,#fff9e8 48%,#fffefa)}
.section.yellow-wash:after{content:"";position:absolute;right:-150px;bottom:-340px;width:560px;height:560px;border:52px solid rgba(255,210,90,.17);border-radius:50%;pointer-events:none}
.section.yellow-wash > .container{position:relative;z-index:1}
#plans{background:linear-gradient(180deg,#fffefc 0%,#fffefa 100%)}
#plans .offer-card{border-radius:30px;border-color:#ebddc2;background:linear-gradient(155deg,#fffefa,#fffcf4);padding:30px;min-height:515px;box-shadow:0 14px 35px rgba(102,69,17,.04)}
#plans .offer-card.tint{background:linear-gradient(160deg,#fffaf0 0%,#fffdf8 65%,white 100%);border-color:#eecf83}
.service-emblem{height:125px;min-height:125px;display:flex;align-items:center;justify-content:center;border-radius:22px;background:linear-gradient(135deg,rgba(255,242,191,.5),rgba(255,255,255,.75));margin-bottom:23px}
.service-emblem-img{height:125px;width:min(210px,90%);object-fit:contain;mix-blend-mode:multiply;display:block}
#plans .offer-card h3{font-size:1.55rem;letter-spacing:-.04em}
#plans .offer-card .mini{margin-bottom:6px}
#plans .offer-card .price{margin-top:14px}
#plans .offer-card .cta-bottom{padding-top:20px}
.page-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 81% 20%,rgba(255,211,94,.4),transparent 39%),linear-gradient(140deg,#fff1bb,#fff9e9 53%,#fff 100%)}
.page-hero:after{content:"";position:absolute;right:-90px;top:-320px;border:85px solid rgba(255,188,71,.13);height:640px;width:640px;border-radius:50%;z-index:-1}
.service-page-hero-layout{position:relative;min-height:300px;padding-right:295px}
.product-mark{position:absolute;right:0;top:12px;width:265px;height:250px;border-radius:34px;background:radial-gradient(circle at 55% 38%,#fff3c8,#fff9e7 73%,#fff 100%);border:1px solid #f4e3bf;display:flex;align-items:center;justify-content:center;box-shadow:0 15px 45px rgba(117,86,15,.05)}
.product-mark-img{width:245px;height:213px;object-fit:contain;mix-blend-mode:multiply}
.footer{background:linear-gradient(140deg,#fff9e8,#fffefa 43%,#fffefa);border-top:1px solid #f0dfb8}
.footer .brand-header-icon{height:66px;width:78px}
.footer .brand-header-type strong{font-size:1.52rem}
.offer-card-link{transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
.offer-card-link:hover{border-color:#e9b93d!important;box-shadow:0 22px 48px rgba(185,120,16,.12)!important}
.offer-card-link:active{transform:translateY(1px)}
@media (max-width:1040px){.header-nav{gap:12px}.header-nav>a:not(.btn){font-size:.78rem}.brand-header-icon{height:49px;width:61px}.hero{gap:28px}}
@media (max-width:850px){.hero{grid-template-columns:1fr;gap:30px;padding:67px 0 78px}.hero-visual{min-height:420px}.hero-brand-icon{top:-6px;height:276px}.service-page-hero-layout{padding-right:245px}.product-mark{width:210px;height:204px;top:24px}.product-mark-img{width:198px;height:184px}}
@media (max-width:620px){.page-hero h1{font-size:clamp(1.87rem,7.65vw,2.14rem)}.hero h1{font-size:clamp(1.86rem,7.8vw,2.3rem)}.brand-header-icon{width:60px;height:47px}.brand-header-type strong{font-size:1.24rem}.brand-header-kicker{font-size:.48rem}.header-inner{min-height:69px}.hero{padding:50px 0 67px}.hero-visual{min-height:405px;border-radius:28px}.hero-brand-icon{top:3px;width:85%;height:255px}.visual-note{bottom:49px;left:17px;right:17px;padding:18px;border-radius:18px}.hero-visual-caption{bottom:11px;font-size:.72rem}#plans .offer-card{min-height:0;padding:23px}.service-emblem{height:123px;margin-bottom:16px}.service-page-hero-layout{padding-right:0;padding-bottom:184px}.product-mark{top:auto;left:0;right:auto;bottom:1px;width:100%;height:166px;box-shadow:none}.product-mark-img{height:155px;width:195px}.page-hero{padding:56px 0 48px}.footer .brand-header-icon{width:70px;height:57px}}
@media (prefers-reduced-motion:reduce){.offer-card-link{transition:none}}


/* Brand lockups 1.8 — service identity, plan identity, bilingual secondary descriptor. */
.brand-lockup-type{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;text-align:center;line-height:1}
.brand-lockup-main,.plan-brand-wordmark{display:block;font-family:inherit;font-size:1.28rem;letter-spacing:-.072em;color:#2c2925;white-space:nowrap;line-height:1}
.light-prefix{font-weight:360}
.light-bold{font-weight:840}
.brand-lockup-sub,.plan-brand-service{display:block;font-size:.82rem;letter-spacing:.24em;font-weight:820;color:#aa730b;line-height:1.15;margin-left:.24em}
.brand-lockup-sub-partner,.partner-lettering{color:#777d16}
.brand-lockup-meta{display:block;color:#736b5b;font-size:.57rem;letter-spacing:.16em;font-weight:700;margin-top:7px}
#plans .service-emblem.brand-lockup-home{height:180px;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:9px 7px 15px;box-sizing:border-box}
#plans .brand-lockup-home .service-emblem-img{height:114px;max-height:114px;width:min(195px,85%);margin:0;object-fit:contain}
#plans .brand-lockup-home .brand-lockup-type{transform:translateY(-7px)}
#plans .brand-lockup-home .brand-lockup-main{font-size:1.35rem}
#plans .brand-lockup-home .brand-lockup-sub{font-size:.72rem;margin-top:5px}
#plans .branded-offer h3{font-size:1.35rem;letter-spacing:-.02em;line-height:1.4;margin-top:0}
.product-mark.product-brand-lockup{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:13px 10px;box-sizing:border-box}
.product-brand-lockup .product-mark-img{width:95%;max-width:235px;height:157px;object-fit:contain;flex:none}
.product-brand-lockup .brand-lockup-main{font-size:1.69rem}
.product-brand-lockup .brand-lockup-sub{font-size:.92rem;letter-spacing:.29em;margin-top:6px}
.product-brand-lockup .brand-lockup-meta{margin-top:7px;font-size:.59rem}
.plan-brand-lockup{max-width:100%;width:100%;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;padding:14px 8px 18px;margin:12px 0 24px;border-radius:24px;border:1px solid #f2e2b9;background:linear-gradient(150deg,#fff7d7 0%,#fffcf1 70%,#fff 100%);box-sizing:border-box}
.plan-brand-image{width:min(170px,86%);height:108px;object-fit:contain;display:block;mix-blend-mode:multiply}
.plan-brand-wordmark{font-size:1.55rem;margin-top:-4px}
.plan-brand-service{font-size:.77rem;margin-top:4px;letter-spacing:.30em}
.plan-brand-plan{display:inline-block;margin-top:11px;color:#785007;background:rgba(255,224,125,.42);border:1px solid #edcf85;border-radius:100px;padding:5px 15px;font-size:.71rem;font-weight:800;letter-spacing:.11em;line-height:1.2}
.plan-brand-partner{margin-top:0;margin-bottom:26px;min-height:205px;background:linear-gradient(150deg,#fffbec,#fffdf6)}
.plan-brand-partner .plan-brand-plan{color:#596015;border-color:#dadd9e;background:#fbfbe7}
#choices .sale-card .plan-brand-lockup+.sale-card h3{margin-top:0}
#choices .sale-card .plan-brand-lockup~h3{margin-top:0}
@media(max-width:850px){.product-brand-lockup .product-mark-img{height:119px;width:96%}.product-brand-lockup .brand-lockup-main{font-size:1.38rem}.product-brand-lockup .brand-lockup-sub{font-size:.77rem}}
@media(max-width:620px){
  #plans .service-emblem.brand-lockup-home{height:165px;min-height:165px}
  #plans .brand-lockup-home .service-emblem-img{height:103px}
  .service-page-hero-layout{padding-bottom:252px}
  .product-mark.product-brand-lockup{height:225px;padding:12px 15px;bottom:2px}
  .product-brand-lockup .product-mark-img{height:137px;max-width:200px}
  .product-brand-lockup .brand-lockup-main{font-size:1.50rem}
  .product-brand-lockup .brand-lockup-sub{font-size:.80rem;margin-top:5px}
  .product-brand-lockup .brand-lockup-meta{font-size:.55rem;margin-top:5px}
  .plan-brand-lockup{min-height:178px;padding:9px 8px 14px;margin:8px 0 20px}
  .plan-brand-image{height:100px;width:155px}
  .plan-brand-wordmark{font-size:1.37rem}
  .plan-brand-service{font-size:.7rem}
  .plan-brand-plan{margin-top:8px}
}
@media(prefers-reduced-motion:reduce){.plan-brand-lockup,.brand-lockup-home{transition:none}}


/* v1.9 – Consistent card feedback across SESSION and PARTNER.
   These detail cards are informative, not links. Preserve cursor:default;
   existing anchors/buttons inside cards retain their own interaction. */
.detail-effect-card{
  cursor:default;
  touch-action:manipulation;
  -webkit-tap-highlight-color:rgba(255,204,55,.24);
  transition:border-color .18s ease,background-color .18s ease,
             box-shadow .18s ease,transform .18s ease;
  transform:translateY(0);
}
/* Maintain the visible accent on SESSION 30's highlighted card. */
.detail-effect-card.plan-card.highlight{border-width:2px}
@media (hover:hover) and (pointer:fine){
  .detail-effect-card:hover{
    border-color:#d8a32e;
    background:#fff9e4;
    box-shadow:0 16px 42px rgba(156,112,14,.14);
    transform:translateY(-4px);
  }
}
.detail-effect-card:focus-within{
  border-color:#d8a32e;
  background:#fff9e4;
  box-shadow:0 14px 42px rgba(164,112,7,.15);
}
.detail-effect-card:active,.detail-effect-card.is-touch-active{
  border-color:#d2a020;
  background:#fff3c8;
  box-shadow:0 4px 14px rgba(150,111,18,.12);
  transform:scale(.994);
}
@media (prefers-reduced-motion:reduce){
  .detail-effect-card{transition:none}
  .detail-effect-card:hover,
  .detail-effect-card:active,
  .detail-effect-card.is-touch-active{transform:none}
}

/* v2.0 booking-ready: hidden until verified URL is provided. */
.booking-action-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:22px;min-height:44px}
.booking-action-row [hidden]{display:none!important}
.booking-action-row .btn{font-size:.96rem;min-height:46px;padding:11px 17px}
.booking-action-row .booking-pending{line-height:1.55}
@media (max-width:540px){.booking-action-row{flex-direction:column;align-items:stretch}.booking-action-row .btn{text-align:center;justify-content:center}}

/* v2.2: Keep the brand and layout; make prices and booking choices easier to scan. */
.card .price{font-size:clamp(2.1rem,3.2vw,2.65rem);line-height:1.2;color:var(--ink);margin:16px 0 12px;letter-spacing:-.04em}
.card .price small{display:inline-block;font-size:.82rem;font-weight:650;color:var(--muted);letter-spacing:0;margin-left:3px}
.card .sale-secondary-price{font-size:.88rem;line-height:1.6;margin:0 0 20px;color:#625b49}
.sale-secondary-amount{font-size:1.25rem;font-weight:850;color:var(--ink);margin:0 4px}
#choices .booking-action-row{margin-top:auto;padding-top:18px;gap:10px}
#choices .booking-action-row .btn{font-size:.9rem;padding:11px 15px}
.booking-context{font-size:.82rem;color:var(--muted);margin-top:16px;line-height:1.8}
.booking-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.booking-flow-item{padding:16px;border:1px solid var(--line);border-radius:16px;background:#fffef9}
.booking-flow-item strong{display:block;color:var(--ink);font-size:.95rem;line-height:1.6}
.booking-flow-item span{display:block;color:var(--muted);font-size:.83rem;line-height:1.75;margin-top:5px}
@media(max-width:620px){
 #choices .plan-brand-lockup{display:grid;grid-template-columns:70px minmax(0,1fr);grid-template-rows:auto auto auto;min-height:0;gap:2px 12px;padding:14px 18px;margin:12px 0 20px;text-align:left;justify-items:start;align-items:center;border-radius:18px}
 #choices .plan-brand-image{grid-column:1;grid-row:1/4;width:70px;height:78px;mix-blend-mode:multiply}
 #choices .plan-brand-wordmark{grid-column:2;grid-row:1;margin:0;font-size:1.3rem;line-height:1.25}
 #choices .plan-brand-service{grid-column:2;grid-row:2;margin:0;font-size:.62rem;letter-spacing:.28em;line-height:1.3}
 #choices .plan-brand-plan{grid-column:2;grid-row:3;margin:2px 0 0;padding:4px 10px;font-size:.63rem;line-height:1.2}
 .booking-flow{grid-template-columns:1fr;gap:10px}
 .booking-flow-item{padding:14px 16px}
 .booking-context{font-size:.8rem}
}

html{scroll-padding-top:110px}.reflection-explainer{max-width:800px;margin:0 auto;padding:0 24px 64px}.reflection-explainer h1{font-size:1.35rem}.reflection-explainer h2{font-size:1.1rem}.reflection-explainer p{font-size:.95rem}
