/* section shells */
section{padding:60px 0;}
.sec-head{text-align:center;max-width:680px;margin:0 auto 40px;}
.kick{color:var(--red);font-weight:800;font-size:14px;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;}
.sec-head h2{font-size:clamp(28px,4.6vw,38px);margin-bottom:10px;}
.sec-head p{color:var(--slate);font-size:17px;}

/* audience cards */
.who{background:linear-gradient(180deg,var(--paper),#fff);}
.who-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.who-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 20px;transition:transform .2s ease,box-shadow .2s ease;}
.who-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(27,27,31,.08);}
.who-ic{width:52px;height:52px;border-radius:14px;background:var(--cream);display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:14px;}
.who-card h3{font-size:18px;margin-bottom:6px;}
.who-card p{color:var(--slate);font-size:14.5px;}

/* composition */
.comp-table{max-width:860px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 14px 40px rgba(27,27,31,.06);}
.comp-row{display:grid;grid-template-columns:.9fr 1.6fr;gap:0;border-bottom:1px solid var(--line);}
.comp-row:last-child{border-bottom:none;}
.comp-row:nth-child(even){background:var(--paper);}
.comp-c{padding:18px 22px;font-weight:700;display:flex;align-items:center;gap:10px;}
.comp-c .d{width:9px;height:9px;border-radius:50%;background:var(--red);flex:0 0 9px;}
.comp-d{padding:18px 22px;color:var(--slate);font-size:15.5px;border-right:1px solid var(--line);}
.how-take{max-width:860px;margin:26px auto 0;background:var(--cream);border:1px solid var(--line);border-radius:18px;padding:24px 26px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.how-take .htic{width:56px;height:56px;border-radius:16px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;flex:0 0 56px;}
.how-take h3{font-size:19px;margin-bottom:3px;}
.how-take p{color:var(--slate);font-size:15px;}

/* mechanism + steps */
.mech{background:linear-gradient(180deg,#fff,var(--paper));}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:960px;margin:0 auto;}
.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 22px;position:relative;transition:transform .2s ease,box-shadow .2s ease;}
.step:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(27,27,31,.08);}
.step .num{position:absolute;top:-16px;inset-inline-start:22px;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--red),var(--red-deep));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;box-shadow:0 8px 18px rgba(208,30,30,.3);}
.step h3{font-size:18px;margin:14px 0 6px;}
.step p{color:var(--slate);font-size:15px;}

/* reviews */
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.rev{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 22px;}
.stars{color:#F2B01E;font-size:16px;letter-spacing:2px;margin-bottom:10px;}
.rev p{color:var(--slate);font-size:15px;margin-bottom:16px;}
.rev .who-r{display:flex;align-items:center;gap:12px;}
.rev .av{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--red-soft),var(--red));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;flex:0 0 44px;}
.rev .nm{font-weight:700;font-size:15px;}
.rev .ct{color:#7A736C;font-size:13px;}

/* faq */
.faq{max-width:820px;margin:0 auto;}
.qa{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden;}
.qa button{width:100%;text-align:start;background:none;border:none;padding:19px 22px;font-family:inherit;font-size:17px;font-weight:700;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;}
.qa .ico{flex:0 0 26px;width:26px;height:26px;border-radius:8px;background:var(--cream);color:var(--red);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;transition:transform .25s ease;}
.qa.open .ico{transform:rotate(45deg);}
.qa .ans{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.qa .ans p{padding:0 22px 19px;color:var(--slate);font-size:15.5px;}

/* order */
.order{background:linear-gradient(180deg,var(--cream) 0%,#fff 100%);}
.order-card{max-width:940px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 24px 60px rgba(27,27,31,.10);display:grid;grid-template-columns:.92fr 1.08fr;}
.oc-left{background:linear-gradient(160deg,var(--red) 0%,var(--red-deep) 100%);color:#fff;padding:36px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.oc-left .pill{background:rgba(255,255,255,.18);padding:7px 15px;border-radius:30px;font-weight:700;font-size:13.5px;margin-bottom:16px;}
.oc-left .pw{width:min(210px,60%);}
.oc-left .pw img{width:100%;filter:drop-shadow(0 20px 30px rgba(0,0,0,.32));}
.oc-left .pr-old{opacity:.72;text-decoration:line-through;font-size:17px;font-weight:600;margin-top:14px;}
.oc-left .pr{font-size:42px;font-weight:800;line-height:1;}
.oc-left .pr small{font-size:19px;}
.oc-right{padding:0;}
.oc-right iframe{border:0;width:100%;display:block;background:#fff;min-height:470px;}

/* footer */
footer.site{background:#fff;border-top:1px solid var(--line);padding:36px 0;}
.foot{display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center;}
.foot .brand{font-size:20px;}
.foot .disc{color:#7A736C;font-size:13px;max-width:680px;line-height:1.7;}
.foot .cr{color:#7A736C;font-size:13px;}



.no-js .reveal{opacity:1;transform:none;}
