:root {
    --orange-dark: #bd4307;
    --orange-mid: #df7110;
    --orange-light: #f4a12b;
    --ink: #30363b;
    --muted: #6d747a;
    --line: #e9e5df;
    --warm: #fbfaf8;
    --white: #fff;
    --shadow: 0 18px 45px rgba(48,54,59,.09);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--ink); background:var(--warm); -webkit-font-smoothing:antialiased; }
a { color:inherit; }
.container { width:min(1160px, calc(100% - 40px)); margin:0 auto; }
.site-header { height:92px; display:flex; align-items:center; background:rgba(255,255,255,.92); border-bottom:1px solid rgba(48,54,59,.08); position:relative; z-index:5; }
.header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:block; width:270px; height:65px; overflow:hidden; }
.brand img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.08); }
.header-label { font-size:.88rem; font-weight:650; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.hero { min-height:470px; display:flex; align-items:center; position:relative; overflow:hidden; background:linear-gradient(120deg,#fff 0%,#fff 55%,#faf4ed 100%); border-bottom:1px solid var(--line); }
.hero-content { position:relative; z-index:2; padding:76px 0 84px; }
.eyebrow { margin:0 0 14px; color:var(--orange-mid); text-transform:uppercase; letter-spacing:.16em; font-size:.78rem; font-weight:800; }
h1 { max-width:800px; margin:0; font-size:clamp(2.8rem,6vw,5.25rem); line-height:.98; letter-spacing:-.055em; font-weight:780; }
h1 span { color:var(--orange-dark); }
.lead { max-width:690px; margin:27px 0 31px; font-size:clamp(1.08rem,2vw,1.3rem); line-height:1.65; color:var(--muted); }
.hero-link { display:inline-flex; gap:10px; align-items:center; text-decoration:none; font-weight:750; color:var(--orange-dark); }
.hero-link span { transition:transform .2s ease; }
.hero-link:hover span { transform:translateY(3px); }
.bridge-watermark { position:absolute; right:-50px; bottom:0; width:47%; height:85%; opacity:.065; transform:translateY(18%); }
.bridge-watermark span { position:absolute; bottom:0; width:48%; aspect-ratio:1.45; border:28px solid currentColor; border-bottom:0; border-radius:55% 55% 0 0; }
.bridge-watermark span:nth-child(1){left:0;color:var(--orange-dark)}
.bridge-watermark span:nth-child(2){left:27%;color:var(--orange-mid)}
.bridge-watermark span:nth-child(3){left:54%;color:var(--orange-light)}
.tools-section { padding:88px 0 105px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:50px; margin-bottom:38px; }
.section-heading h2 { margin:0; font-size:clamp(2rem,3.5vw,3rem); letter-spacing:-.035em; }
.section-heading > p { width:min(440px,100%); margin:0 0 3px; line-height:1.65; color:var(--muted); }
.tool-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.tool-card { --accent:var(--orange-mid); position:relative; min-height:340px; padding:30px; display:flex; flex-direction:column; text-decoration:none; background:var(--white); border:1px solid var(--line); border-radius:22px; box-shadow:0 4px 14px rgba(48,54,59,.035); overflow:hidden; transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.tool-card::before { content:""; position:absolute; left:0; top:0; width:100%; height:5px; background:var(--accent); }
.tool-card:hover { transform:translateY(-7px); box-shadow:var(--shadow); border-color:color-mix(in srgb,var(--accent) 28%,var(--line)); }
.tool-dark { --accent:var(--orange-dark); }
.tool-mid { --accent:var(--orange-mid); }
.tool-light { --accent:var(--orange-light); }
.card-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:42px; }
.tool-icon { width:58px; height:58px; display:grid; place-items:center; border-radius:16px; background:color-mix(in srgb,var(--accent) 10%,white); color:var(--accent); }
.tool-icon svg { width:29px; height:29px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.arrow { font-size:1.45rem; color:#a8abad; transition:transform .2s ease,color .2s ease; }
.tool-card:hover .arrow { color:var(--accent); transform:translate(2px,-2px); }
.tool-card h3 { margin:0 0 14px; font-size:1.6rem; letter-spacing:-.025em; }
.tool-card p { margin:0; line-height:1.65; color:var(--muted); }
.open-label { margin-top:auto; padding-top:28px; color:var(--accent); font-weight:750; }
.open-label span { display:inline-block; margin-left:4px; transition:transform .2s ease; }
.tool-card:hover .open-label span { transform:translateX(4px); }
footer { background:#30363b; color:#dfe1e2; }
.footer-inner { min-height:88px; display:flex; justify-content:space-between; align-items:center; gap:25px; font-size:.9rem; }
.footer-inner strong { color:#fff; }
@media (max-width:850px){ .tool-grid{grid-template-columns:1fr}.tool-card{min-height:280px}.section-heading{align-items:start;flex-direction:column;gap:18px}.bridge-watermark{width:75%;right:-25%;}.hero{min-height:430px} }
@media (max-width:560px){ .container{width:min(100% - 28px,1160px)}.site-header{height:78px}.brand{width:205px;height:54px}.header-label{display:none}.hero-content{padding:62px 0 68px}.hero{min-height:390px}.lead{margin:22px 0 26px}.tools-section{padding:62px 0 72px}.tool-card{padding:25px;border-radius:18px}.card-top{margin-bottom:30px}.footer-inner{padding:24px 0;align-items:flex-start;flex-direction:column;gap:8px;min-height:auto} }
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto}.tool-card,.arrow,.open-label span,.hero-link span{transition:none} }
.footer-links { display:flex; align-items:center; gap:10px; }
.footer-links a { color:#fff; text-decoration:none; }
.footer-links a:hover { text-decoration:underline; text-underline-offset:3px; }
.back-link { color:var(--orange-dark); font-weight:700; text-decoration:none; }
.back-link:hover { text-decoration:underline; text-underline-offset:3px; }
.legal-main { min-height:calc(100vh - 180px); padding:72px 0 90px; background:linear-gradient(135deg,#fff 0%,#fbfaf8 65%,#faf4ed 100%); }
.legal-container { max-width:900px; }
.legal-title { font-size:clamp(2.5rem,5vw,4.4rem); margin-bottom:34px; }
.legal-card { background:#fff; border:1px solid var(--line); border-radius:22px; padding:clamp(28px,5vw,52px); box-shadow:0 12px 35px rgba(48,54,59,.06); }
.legal-card h2 { margin:30px 0 10px; font-size:1.25rem; }
.legal-card h2:first-child { margin-top:0; }
.legal-card p { margin:0; line-height:1.75; color:var(--muted); }
.legal-card a { color:var(--orange-dark); font-weight:650; }
@media (max-width:560px){ .back-link{font-size:.9rem}.legal-main{padding:52px 0 65px}.legal-card{border-radius:18px}.footer-links{flex-wrap:wrap} }
