/*
Theme Name: AQUAGIFT Shop
Template: kadence
Description: Kadence child theme for AQUAGIFT WooCommerce shop. Brand styling + LP layout.
Version: 0.2.0
*/

:root{
  --ag-navy:#0a2740; --ag-navy-soft:#143a59; --ag-blue:#0e6db0; --ag-blue-br:#1488c9;
  --ag-teal:#13a6c4; --ag-cyan:#e8f3fa; --ag-ink:#13293b; --ag-ink-soft:#436073;
  --ag-line:#d9e6ef; --ag-tint:#f3f8fc; --ag-tint2:#eaf3f9;
  --ag-sh-sm:0 1px 2px rgba(13,41,59,.06),0 4px 14px rgba(13,41,59,.06);
  --ag-sh-md:0 10px 34px rgba(10,39,64,.12);
  --ag-r:14px;
}

/* ===== WooCommerce 購入サマリーをブランド色に ===== */
.woocommerce div.product .price,
.woocommerce div.product span.price{ color:var(--ag-blue); font-weight:800; }
.woocommerce div.product form.cart .button.single_add_to_cart_button,
.woocommerce a.button.alt, .woocommerce button.button.alt{
  background:linear-gradient(135deg,var(--ag-blue-br),var(--ag-teal)) !important;
  color:#fff !important; border:none !important; border-radius:12px !important;
  padding:16px 28px !important; font-weight:700 !important; font-size:16px !important;
  box-shadow:0 10px 26px rgba(19,166,196,.32) !important; transition:transform .15s,box-shadow .15s;
}
.woocommerce div.product form.cart .button.single_add_to_cart_button:hover{ transform:translateY(-2px); }
.woocommerce div.product form.cart .variations select{
  border:1.5px solid var(--ag-line); border-radius:12px; padding:13px 16px; font-weight:700; color:var(--ag-navy);
}

/* ===== LP 本文（説明を購入欄の下に全幅表示） ===== */
.aelp{ max-width:1120px; margin:8px auto 0; padding:0 20px; color:var(--ag-ink); line-height:1.85;
  font-family:"Zen Kaku Gothic New","Noto Sans JP",system-ui,sans-serif; }
.aelp-sec{ padding:clamp(40px,6vw,72px) 0; border-top:1px solid var(--ag-line); }
.aelp-sec:first-child{ border-top:none; }
.aelp-eyebrow{ display:inline-block; color:var(--ag-blue); font-weight:700; font-size:13px; letter-spacing:.16em; margin-bottom:12px; }
.aelp-title{ color:var(--ag-navy); font-weight:900; font-size:clamp(22px,3.4vw,34px); line-height:1.4; margin:0 0 14px; }
.aelp-lead{ color:var(--ag-ink-soft); font-size:clamp(15px,1.7vw,17px); max-width:46em; margin:0 0 8px; }

/* feature list */
.aelp-flist{ display:grid; gap:16px; margin:24px 0; }
.aelp-fl{ background:var(--ag-tint); border:1px solid var(--ag-line); border-radius:var(--ag-r); padding:18px 20px; }
.aelp-fl h4{ color:var(--ag-navy); font-size:16px; margin:0 0 4px; }
.aelp-fl p{ color:var(--ag-ink-soft); font-size:14.5px; margin:0; }
@media(min-width:760px){ .aelp-flist{ grid-template-columns:repeat(3,1fr); } }

/* who box */
.aelp-who{ background:#fff; border:1px solid var(--ag-line); border-left:4px solid var(--ag-teal); border-radius:var(--ag-r); padding:20px 24px; margin-top:20px; box-shadow:var(--ag-sh-sm); }
.aelp-who h4{ color:var(--ag-navy); font-size:15px; margin:0 0 10px; }
.aelp-who ul{ margin:0; padding-left:1.1em; }
.aelp-who li{ color:var(--ag-ink-soft); font-size:14.5px; margin:6px 0; }

/* compare table */
.aelp-tablewrap{ overflow-x:auto; border-radius:16px; box-shadow:var(--ag-sh-md); border:1px solid var(--ag-line); margin:24px 0 16px; background:#fff; }
.aelp-cmp{ width:100%; border-collapse:collapse; min-width:640px; }
.aelp-cmp thead th{ background:var(--ag-navy); color:#fff; font-weight:700; padding:16px 14px; text-align:center; font-size:15px; border-left:1px solid rgba(255,255,255,.1); }
.aelp-cmp thead th:first-child{ background:var(--ag-navy-soft); text-align:left; }
.aelp-cmp thead th span{ display:block; font-weight:400; font-size:11px; color:#9fc4d8; margin-top:3px; }
.aelp-cmp tbody th{ background:var(--ag-tint2); color:var(--ag-navy); text-align:left; padding:14px; font-size:13.5px; white-space:nowrap; }
.aelp-cmp tbody td{ padding:14px; text-align:center; border-left:1px solid var(--ag-line); border-top:1px solid var(--ag-line); font-size:14.5px; }
.aelp-cmp tbody td b{ font-size:20px; color:var(--ag-navy); }
.aelp-cmp tbody tr:nth-child(even) td,.aelp-cmp tbody tr:nth-child(even) th{ background:#fafcfe; }
.aelp-pr{ color:var(--ag-blue); font-weight:800; font-size:17px; }
.aelp-guide{ display:flex; flex-wrap:wrap; gap:12px; }
.aelp-guide span{ background:#fff; border:1px solid var(--ag-line); border-radius:30px; padding:8px 15px; font-size:13px; color:var(--ag-ink-soft); }
.aelp-guide b{ color:var(--ag-blue); }

/* feature cards */
.aelp-cards{ display:grid; gap:14px; margin:24px 0; }
@media(min-width:640px){ .aelp-cards{ grid-template-columns:repeat(2,1fr); } }
.aelp-card{ background:#fff; border:1px solid var(--ag-line); border-radius:var(--ag-r); padding:20px; box-shadow:var(--ag-sh-sm); }
.aelp-card .aelp-n{ color:var(--ag-teal); font-weight:800; font-size:13px; letter-spacing:.1em; }
.aelp-card h4{ color:var(--ag-navy); font-size:16px; margin:6px 0; }
.aelp-card p{ color:var(--ag-ink-soft); font-size:13.5px; margin:0; }
.aelp-note{ background:linear-gradient(135deg,var(--ag-navy),#0c3458); color:#fff; border-radius:16px; padding:28px; }
.aelp-note p{ font-size:18px; font-weight:700; line-height:1.6; margin:0; }
.aelp-by{ display:flex; align-items:center; gap:12px; margin-top:18px; }
.aelp-av{ width:44px; height:44px; border-radius:50%; background:linear-gradient(150deg,var(--ag-blue),var(--ag-teal)); display:grid; place-items:center; font-weight:900; }
.aelp-by b{ display:block; font-size:14px; } .aelp-by small{ color:#9fc4d8; font-size:12px; }

/* tips */
.aelp-tips{ display:grid; gap:14px; margin:24px 0; }
@media(min-width:760px){ .aelp-tips{ grid-template-columns:repeat(3,1fr); } }
.aelp-tip{ background:#fff; border:1px solid var(--ag-line); border-radius:var(--ag-r); padding:20px; box-shadow:var(--ag-sh-sm); }
.aelp-num{ display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:var(--ag-teal); color:#fff; font-weight:800; margin-bottom:10px; }
.aelp-tip h4{ color:var(--ag-navy); font-size:15px; margin:0 0 5px; } .aelp-tip p{ color:var(--ag-ink-soft); font-size:13.5px; margin:0; }

/* faq */
.aelp-faq{ max-width:780px; }
.aelp-faq details{ background:#fff; border:1px solid var(--ag-line); border-radius:12px; margin-bottom:10px; box-shadow:var(--ag-sh-sm); }
.aelp-faq summary{ cursor:pointer; padding:18px 22px; font-weight:700; color:var(--ag-navy); font-size:15.5px; list-style:none; }
.aelp-faq summary::-webkit-details-marker{ display:none; }
.aelp-faq summary::before{ content:"Q "; color:var(--ag-blue); font-weight:800; }
.aelp-faq details[open] summary{ border-bottom:1px solid var(--ag-line); }
.aelp-faq div{ padding:16px 22px; color:var(--ag-ink-soft); font-size:14.5px; }

/* ===== 特定商取引法に基づく表記 ===== */
.ag-tokusho{ max-width:860px; margin:0 auto; }
.ag-tokusho-table{ width:100%; border-collapse:collapse; background:#fff;
  border:1px solid var(--ag-line); border-radius:var(--ag-r); overflow:hidden; box-shadow:var(--ag-sh-sm); }
.ag-tokusho-table th, .ag-tokusho-table td{ text-align:left; vertical-align:top;
  padding:16px 20px; border-bottom:1px solid var(--ag-line); font-size:14.5px; line-height:1.8; }
.ag-tokusho-table tr:last-child th, .ag-tokusho-table tr:last-child td{ border-bottom:none; }
.ag-tokusho-table th{ width:30%; background:var(--ag-tint); color:var(--ag-navy);
  font-weight:700; white-space:nowrap; }
.ag-tokusho-table td{ color:var(--ag-ink-soft); }
.ag-tokusho-table td strong{ color:var(--ag-navy); display:inline-block; margin-top:2px; }
.ag-tokusho-table a{ color:var(--ag-blue); font-weight:700; }
@media(max-width:600px){
  .ag-tokusho-table th, .ag-tokusho-table td{ display:block; width:auto; white-space:normal; }
  .ag-tokusho-table th{ border-bottom:none; padding-bottom:4px; }
  .ag-tokusho-table td{ padding-top:4px; }
}

/* ===== フッター 法務リンクバー ===== */
.ag-legal-bar{ background:var(--ag-navy); color:#cfe0ec; padding:18px 20px; }
.ag-legal-inner{ max-width:1100px; margin:0 auto; display:flex; flex-wrap:wrap;
  align-items:center; justify-content:center; gap:10px 22px; font-size:13.5px; }
.ag-legal-menu{ list-style:none; display:flex; flex-wrap:wrap; gap:10px 22px; margin:0; padding:0; }
.ag-legal-menu a{ color:#cfe0ec; text-decoration:none; }
.ag-legal-menu a:hover{ color:#fff; text-decoration:underline; }
.ag-legal-copy{ color:#8fb0c7; }
