/* Shared page chrome for service and editorial pages. */
:root{--brand-green:#06c755;--brand-green-dark:#087f4b}
.brand{display:inline-flex!important;align-items:center;gap:9px;letter-spacing:-.025em}
.brand::before{content:"";width:27px;height:27px;flex:0 0 27px;background:url("../brand/urano-mark.svg") center/contain no-repeat}
.brand span{color:var(--brand-green)!important}
.brand:hover::before{transform:rotate(-4deg) scale(1.03)}
.brand::before{transition:transform .2s ease}
.brand.has-mark::before{display:none}
.brand.has-mark>span{color:inherit!important}
.brand.has-mark>span>span{color:var(--brand-green)!important}
.back{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border:1px solid rgba(210,210,215,.8);border-radius:999px;background:rgba(255,255,255,.72)}
.back:hover{border-color:rgba(6,199,85,.45);background:#fff}
footer{border-top:1px solid rgba(255,255,255,.12)}
.site-footer{padding:40px 0 36px;color:#d2d2d7;background:#1d1d1f;font-size:12px}
.site-footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:28px}
.site-footer strong{display:block;margin-bottom:9px;color:#fff;font-size:14px}
.site-footer p{margin:0;color:#aeaeb2;line-height:1.75}
.site-footer nav{display:block}
.site-footer h2{margin:0 0 9px;color:#fff;font-size:12px}
.site-footer ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}
.site-footer a{color:#d2d2d7;text-decoration:none}
.site-footer a:hover{color:#62e694}
.site-footer-meta{margin-top:26px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);color:#8e8e93;font-size:11px}
@media(max-width:760px){.brand::before{width:24px;height:24px;flex-basis:24px}.back{padding:0;border:0;background:transparent}}
@media(max-width:700px){.site-footer{padding:32px 0 28px}.site-footer-grid{grid-template-columns:1fr 1fr;gap:24px}.site-footer-grid>div:first-child{grid-column:1/-1}}

/* Shared visual system: keep every lower-level page aligned with the home page. */
:root{
  --bg:#f5f8f7;
  --surface:#fff;
  --surface-soft:#edf7f3;
  --surface-dark:#0f2a24;
  --text:#16211e;
  --muted:#5d6c67;
  --line:#d9e4e0;
  --line-strong:#b9cbc5;
  --green:#06c755;
  --green-dark:#05a546;
  --green-soft:#e8f9ee;
  --dark:#0f2a24;
  --brand-green:#06c755;
  --brand-green-dark:#05a546;
  --line-green:#06c755;
  --line-green-dark:#05a546;
  --line-green-soft:#e8f9ee;
}
body{
  background:var(--bg);
  color:var(--text);
  font-family:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;
  -webkit-font-smoothing:antialiased;
}
header{
  z-index:60;
  border-bottom-color:rgba(217,228,224,.92);
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(14px);
}
.header-inner{min-height:70px}
.brand{font-weight:800}
.back{
  min-height:42px;
  padding:9px 14px;
  border:1px solid var(--line-strong);
  border-radius:10px;
  color:var(--surface-dark);
  background:#fff;
  font-weight:700;
}
.back:hover{border-color:#86a99d;background:var(--surface-soft);color:var(--surface-dark)}
.hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:88px 0 74px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(118deg,#fff 0%,#fff 54%,#f4fcf7 100%);
}
.hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:540px;
  height:540px;
  right:-180px;
  top:-315px;
  border:1px solid rgba(6,199,85,.16);
  border-radius:50%;
  box-shadow:0 0 0 54px rgba(6,199,85,.035),0 0 0 108px rgba(6,199,85,.02);
}
.hero::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:420px;
  height:420px;
  right:-140px;
  top:-130px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(6,199,85,.16) 0%,rgba(6,199,85,.035) 48%,transparent 71%);
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  color:var(--green-dark);
  background:var(--green-soft);
  font-weight:700;
}
.eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}
.lead,.hero p,.head p,.card p,.card li,.feature p,.article p,.article li{color:var(--muted)}
.card,.toc,.callout,.checklist,.source,.feature{
  border-color:var(--line);
  border-radius:18px;
  box-shadow:0 1px 0 rgba(15,42,36,.02);
}
.card,.toc,.checklist,.source,.feature{background:var(--surface)}
.failure,.notice,.ai-note{
  border-left-color:var(--green);
  background:var(--surface-soft);
}
.callout{background:var(--green-soft);border-color:#c9efd6}
.tag,.price{color:var(--green-dark);background:var(--green-soft)}
.feature{background:var(--surface-soft)}
.btn{
  min-height:50px;
  padding:11px 20px;
  border-radius:12px;
  font-weight:700;
  transition:transform .16s ease,background .16s ease,border-color .16s ease;
}
.btn.primary,.btn-primary{color:#fff;background:var(--green);border-color:var(--green);box-shadow:0 8px 18px rgba(6,199,85,.2)}
.btn.primary:hover,.btn-primary:hover{color:#fff;background:var(--green-dark);border-color:var(--green-dark)}
.btn.secondary,.btn-secondary{color:var(--surface-dark);background:#fff;border-color:var(--line-strong)}
.btn.secondary:hover,.btn-secondary:hover{color:var(--surface-dark);background:var(--surface-soft);border-color:#86a99d}
.cta,.dark{background:var(--surface-dark)}
.site-footer,footer{background:var(--surface-dark)}
.site-footer{color:#d5e0dc}
.site-footer p{color:#bccbc6}
.site-footer a{color:#d5e0dc}
.site-footer-meta{color:#8fa49d}

@media(max-width:760px){
  .header-inner{min-height:62px}
  .hero{padding:58px 0 50px}
  .back{min-height:34px;padding:4px 0;border:0;background:transparent}
  .back:hover{background:transparent}
}
