/* Page-only styling for the AI Maturity and Build Your AI System tools. */
.skip-link{position:absolute;left:-9999px;top:10px;z-index:500;padding:8px 14px;border-radius:999px;background:var(--orange);color:var(--white);}
.skip-link:focus{left:16px;}
.tool-page{background:var(--white);}
.tool-hero{
  position:relative;
  min-height:560px;
  padding:178px 0 92px;
  overflow:hidden;
  color:var(--white);
  background:
    radial-gradient(620px 360px at 82% 18%,rgba(225,53,17,.28),transparent 68%),
    radial-gradient(520px 420px at 8% 88%,rgba(28,50,79,.7),transparent 72%),
    linear-gradient(135deg,#0d1d32 0%,#14233b 58%,#1b2943 100%);
}
.tool-hero::before{
  content:"";
  position:absolute;
  inset:-20%;
  pointer-events:none;
  opacity:.55;
  background:
    linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.06) 42.2%,transparent 42.5%),
    linear-gradient(32deg,transparent 0 57%,rgba(225,53,17,.12) 57.2%,transparent 57.5%),
    radial-gradient(circle at 72% 42%,rgba(255,255,255,.12) 0 1px,transparent 2px);
  background-size:auto,auto,42px 42px;
  transform:rotate(-4deg);
  animation:toolGridDrift 18s ease-in-out infinite alternate;
}
.tool-hero::after{
  content:"";
  position:absolute;
  width:480px;
  height:480px;
  right:-140px;
  top:-200px;
  border:1px solid rgba(255,122,77,.22);
  border-radius:50%;
  box-shadow:0 0 0 40px rgba(225,53,17,.05),0 0 0 80px rgba(225,53,17,.035);
  pointer-events:none;
  animation:toolOrbit 15s linear infinite;
}
@keyframes toolGridDrift{from{transform:rotate(-4deg) translate3d(-12px,0,0)}to{transform:rotate(-1deg) translate3d(18px,12px,0)}}
@keyframes toolOrbit{to{transform:rotate(360deg)}}
.tool-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);align-items:center;gap:72px;}
.tool-hero h1{max-width:760px;margin-bottom:20px;color:var(--white);font-size:clamp(42px,6vw,76px);line-height:1.03;letter-spacing:-.055em;}
.tool-hero p{max-width:650px;margin-bottom:30px;color:rgba(255,255,255,.76);font-size:17px;line-height:1.7;}
.tool-hero .hero-actions{position:relative;z-index:1;}
.maturity-rings,.orbital-core{position:relative;z-index:1;margin:auto;}
.maturity-rings{
  width:min(350px,80vw);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  background:radial-gradient(circle,rgba(225,53,17,.3),rgba(20,35,59,.18) 43%,transparent 44%),rgba(255,255,255,.04);
  box-shadow:0 0 0 22px rgba(255,255,255,.035),0 0 0 56px rgba(225,53,17,.06),0 30px 80px rgba(0,0,0,.24);
  animation:toolFloat 6s ease-in-out infinite;
}
.maturity-rings::before,.maturity-rings::after{
  content:"";
  position:absolute;
  inset:15%;
  border:1px solid rgba(255,122,77,.62);
  border-radius:50%;
  transform:rotate(35deg) scaleX(.8);
}
.maturity-rings::after{inset:28%;border-color:rgba(255,255,255,.22);transform:rotate(-48deg) scaleY(.72);}
.maturity-rings span{
  position:absolute;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  color:var(--white);
  background:var(--orange);
  font:800 12px 'Manrope',sans-serif;
  box-shadow:0 0 22px rgba(225,53,17,.65);
}
.maturity-rings span:nth-child(1){top:12%;left:27%}
.maturity-rings span:nth-child(2){top:25%;right:13%}
.maturity-rings span:nth-child(3){bottom:20%;right:17%}
.maturity-rings span:nth-child(4){bottom:11%;left:28%}
.maturity-rings span:nth-child(5){top:45%;left:8%}
.maturity-rings b{color:rgba(255,255,255,.74);font:800 13px 'Manrope',sans-serif;letter-spacing:.16em;}
@keyframes toolFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}
.orbital-core{
  width:min(310px,75vw);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:radial-gradient(circle,rgba(225,53,17,.32) 0 12%,rgba(225,53,17,.08) 13% 27%,transparent 28%),rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.2);
  box-shadow:0 0 0 22px rgba(255,255,255,.035),0 0 0 58px rgba(225,53,17,.05),0 30px 80px rgba(0,0,0,.24);
  animation:toolFloat 6s ease-in-out infinite;
}
.orbital-core::before,.orbital-core::after{content:"";position:absolute;inset:14%;border:1px solid rgba(255,122,77,.55);border-radius:50%;transform:rotate(22deg) scaleX(.72);}
.orbital-core::after{inset:27%;border-color:rgba(255,255,255,.2);transform:rotate(-54deg) scaleY(.7);}
.orbital-core span{color:var(--white);font:800 42px 'Manrope',sans-serif;letter-spacing:-.08em;}
.orbital-core b{position:absolute;bottom:23%;color:rgba(255,255,255,.74);font:800 11px 'Manrope',sans-serif;letter-spacing:.14em;}
.orbital-core i{position:absolute;width:10px;height:10px;border-radius:50%;background:#ff7a4d;box-shadow:0 0 14px #ff7a4d;}
.orbital-core i:nth-of-type(1){top:18%;right:22%}.orbital-core i:nth-of-type(2){bottom:19%;left:19%}.orbital-core i:nth-of-type(3){top:42%;left:9%}
.assessment-shell,.interactive-tool,.builder-result{
  position:relative;
  border:1px solid var(--glass-dark-border);
  border-radius:var(--radius-lg);
  background:linear-gradient(135deg,rgba(20,35,59,.98),rgba(14,29,49,.98));
  box-shadow:var(--glass-dark-shadow);
  overflow:hidden;
}
.assessment-shell::before,.interactive-tool::before,.builder-result::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg,rgba(225,53,17,.12),transparent 30%,transparent 70%,rgba(255,255,255,.04));
}
.assessment-shell>*,.interactive-tool>* ,.builder-result>*{position:relative;z-index:1;}
.assessment-shell{padding:52px;}
.assessment-shell .section-head{margin-bottom:36px;}
.assessment-shell .section-head h2{color:var(--white);}
.assessment-shell .section-head p{color:var(--text-on-dark-soft);}
.maturity-form{display:grid;gap:14px;}
.maturity-q{
  padding:22px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--radius-sm);
  background:rgba(255,255,255,.045);
  transition:border-color .3s ease,transform .3s var(--ease),background .3s ease;
}
.maturity-q:focus-within,.maturity-q:hover{border-color:rgba(225,53,17,.48);background:rgba(225,53,17,.08);transform:translateY(-2px);}
.maturity-q h3{margin-bottom:14px;color:var(--white);font-size:17px;font-weight:700;}
.maturity-q>div{display:flex;flex-wrap:wrap;gap:9px;}
.maturity-q button{
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  padding:10px 14px;
  color:rgba(255,255,255,.72);
  background:rgba(255,255,255,.07);
  font:600 12px 'Manrope',sans-serif;
  transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s var(--ease-spring);
}
.maturity-q button:hover,.maturity-q button.selected{color:var(--white);background:var(--orange);border-color:var(--orange);transform:translateY(-2px);box-shadow:0 8px 18px rgba(225,53,17,.2);}
.assessment-result{
  margin-top:22px;
  padding:28px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius-md);
  background:rgba(10,23,40,.58);
}
.result-label,.builder-result-head span{display:block;color:#ff9f84;font:800 11px 'Manrope',sans-serif;letter-spacing:.14em;text-transform:uppercase;}
.assessment-result h3{margin:8px 0 14px;color:var(--white);font-size:28px;}
.assessment-result p,.builder-result p{color:var(--text-on-dark-soft);font-size:15px;line-height:1.7;}
.maturity-meter{height:10px;margin-bottom:18px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden;}
.maturity-meter span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),#ff8a63);box-shadow:0 0 18px rgba(225,53,17,.6);transition:width .65s var(--ease);}
.maturity-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.maturity-actions span{padding:9px 12px;border:1px solid rgba(225,53,17,.28);border-radius:10px;background:rgba(225,53,17,.1);color:rgba(255,255,255,.8);font-size:12px;}
.assessment-result .section-actions,.builder-result .section-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px;}
.assessment-result .btn-outline,.builder-result .btn-outline{color:var(--white);border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.08);}
.assessment-result .btn-outline:hover,.builder-result .btn-outline:hover{background:var(--white);color:var(--navy);}
.assessment-result button:disabled{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none;}
.interactive-tool{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:34px;padding:48px;}
.tool-copy h2{margin-bottom:14px;color:var(--white);font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;}
.tool-copy p{max-width:520px;color:var(--text-on-dark-soft);line-height:1.7;}
.tool-note{margin-top:22px;padding:14px 16px;border-left:3px solid var(--orange);border-radius:0 12px 12px 0;background:rgba(225,53,17,.1);color:rgba(255,255,255,.66);font-size:12px;}
.builder-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start;}
.builder-form label{display:flex;flex-direction:column;gap:8px;color:var(--text-on-dark-soft);font:700 11px 'Manrope',sans-serif;letter-spacing:.08em;text-transform:uppercase;}
.builder-form select{
  width:100%;
  min-height:50px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  outline:none;
  color:var(--white);
  background:rgba(255,255,255,.08);
  font:500 14px 'Inter',sans-serif;
  transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
.builder-form select:focus{border-color:var(--orange);box-shadow:0 0 0 5px rgba(225,53,17,.14);transform:translateY(-2px);}
.builder-form select option{color:var(--navy);}
.builder-form .btn{grid-column:1/-1;justify-self:start;margin-top:7px;border:0;}
.builder-result{margin-top:18px;padding:34px 48px;background:linear-gradient(135deg,rgba(28,50,79,.98),rgba(20,35,59,.98));}
.builder-result-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.12);}
.builder-result-head strong{color:var(--white);font:800 26px/1.2 'Manrope',sans-serif;letter-spacing:-.035em;}
.architecture-chain{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:24px 0;}
.architecture-chain span{padding:10px 12px;border:1px solid rgba(225,53,17,.3);border-radius:10px;background:rgba(225,53,17,.11);color:rgba(255,255,255,.84);font:700 12px 'Manrope',sans-serif;}
.architecture-chain .architecture-arrow{display:block;width:18px;height:18px;flex:0 0 18px;overflow:visible;}
.builder-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px;}
.builder-result-grid>div{padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.05);}
.builder-result-grid small{display:block;margin-bottom:8px;color:#ff9f84;font:800 10px 'Manrope',sans-serif;letter-spacing:.1em;text-transform:uppercase;}
.builder-result-grid strong{color:var(--white);font:700 14px/1.4 'Manrope',sans-serif;}
.tool-page .section-pad:not(.tool-hero){padding-top:100px;padding-bottom:100px;}
.tool-page footer{margin-top:0;}
@media(max-width:900px){
  .tool-hero-grid,.interactive-tool{grid-template-columns:1fr;gap:38px;}
  .tool-hero{padding-top:158px;}
  .tool-hero-visual{order:-1;}
  .maturity-rings,.orbital-core{width:min(260px,70vw);}
}
@media(max-width:720px){
  .tool-hero{min-height:0;padding:140px 0 70px;}
  .tool-hero h1{font-size:clamp(38px,12vw,58px);}
  .tool-hero p{font-size:15px;}
  .assessment-shell,.interactive-tool{padding:26px 20px;border-radius:24px;}
  .maturity-q{padding:18px;}
  .maturity-q>div{display:grid;}
  .maturity-q button{text-align:left;}
  .assessment-result{padding:22px 18px;}
  .assessment-result .section-actions,.builder-result .section-actions{display:grid;}
  .assessment-result .btn,.builder-result .btn{justify-content:center;}
  .builder-form{grid-template-columns:1fr;}
  .builder-form .btn{grid-column:auto;width:100%;justify-content:center;}
  .builder-result{padding:24px 20px;border-radius:24px;}
  .builder-result-head strong{font-size:22px;}
  .builder-result-grid{grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){
  .tool-hero::before,.tool-hero::after,.maturity-rings,.orbital-core{animation:none;}
}

/* Match the shared page-header rhythm without letting the tool hero grow into empty space. */
.tool-hero-grid>div:first-child{text-align:center;}
.tool-hero-grid>div:first-child h1,.tool-hero-grid>div:first-child p{margin-left:auto;margin-right:auto;}
.tool-hero-grid>div:first-child .hero-actions{justify-content:center;}
.tool-hero h1{font-size:var(--page-hero-title-size);line-height:1.08;letter-spacing:-.02em;}

/* Keep tool pages on the same header-to-hero rhythm as the image-based pages. */
.tool-page .tool-hero{height:var(--page-hero-height);min-height:520px;max-height:620px;margin-top:var(--site-header-height);padding:0;display:flex;align-items:stretch;}
.tool-page .tool-hero>.wrap{width:100%;height:100%;display:flex;align-items:center;}
.tool-page .tool-hero p{font-size:15.5px;line-height:1.7;}
@media(max-width:720px){
  .tool-page .tool-hero{height:var(--page-hero-height);min-height:0;max-height:none;margin-top:var(--site-header-height);}
  .tool-page .tool-hero>.wrap{padding-left:18px;padding-right:18px;}
}
