:root{--navy:#0a1f3c;--navy-soft:#14315c;--ink:#16233a;--muted:#5b6b84;--line:#e3e9f2;--bg:#ffffff;--bg-soft:#f5f8fc;--accent:#2563eb;--gold:#f5a623;--radius:14px;--maxw:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.site-header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:50}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}.brand{font-weight:800;font-size:17px;color:var(--navy);letter-spacing:-.01em;white-space:nowrap}.brand:hover{text-decoration:none}.brand span{color:var(--gold)}.main-nav{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.main-nav a{color:var(--ink);font-size:14px;font-weight:600;padding:8px 12px;border-radius:8px}.main-nav a:hover{background:var(--bg-soft);text-decoration:none}.hero{background:linear-gradient(180deg,var(--navy) 0,var(--navy-soft) 100%);color:#fff;padding:72px 0 56px;text-align:center}.hero h1{font-size:clamp(30px,5vw,48px);line-height:1.15;margin:0 auto 16px;max-width:820px;letter-spacing:-.02em}.hero p.lead{color:#c6d4ea;font-size:clamp(16px,2.2vw,19px);max-width:720px;margin:0 auto 32px}.stars{color:var(--gold);font-size:22px;letter-spacing:3px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;max-width:880px;margin:40px auto 0}.stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:18px 12px}.stat .num{font-size:28px;font-weight:800;color:#fff;display:block}.stat .label{font-size:13px;color:#b9c9e2}.section{padding:56px 0}.section.alt{background:var(--bg-soft)}.section h2{font-size:clamp(24px,3.6vw,34px);letter-spacing:-.02em;margin:0 0 8px;color:var(--navy)}.section .sub{color:var(--muted);max-width:720px;margin:0 0 32px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.eyebrow:after{content:"";width:20px;height:20px;background:linear-gradient(90deg,transparent 0 42%,var(--accent) 42% 100%),linear-gradient(0deg,transparent 0 42%,var(--accent) 42% 100%);border-radius:3px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s ease,transform .15s ease}.card:hover{box-shadow:0 8px 28px rgba(10,31,60,.1);transform:translateY(-2px)}.card a.card-link{color:inherit;display:flex;flex-direction:column;height:100%}.card a.card-link:hover{text-decoration:none}.card .thumb{aspect-ratio:16/9;object-fit:cover;width:100%;background:var(--bg-soft);display:block}.card .body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1 1}.card .tag{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.card h3{margin:0;font-size:17px;color:var(--navy);line-height:1.3}.card p{margin:0;font-size:14px;color:var(--muted)}.quote-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:14px}.quote-card blockquote{margin:0;font-size:15.5px;color:var(--ink)}.quote-card .who{display:flex;align-items:center;gap:12px}.quote-card .who img.portrait{width:48px;height:48px;border-radius:50%;object-fit:cover}.quote-card .who .name{font-weight:700;color:var(--navy);font-size:14.5px}.quote-card .who .meta{font-size:13px;color:var(--muted)}.quote-card img.signature{max-height:44px;width:auto;align-self:flex-start}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.gallery figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.gallery figure img{width:100%;display:block}.gallery figcaption{padding:12px 14px;font-size:13.5px;color:var(--ink);border-top:1px solid var(--line)}.gallery figcaption .type{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px;font-weight:700}.success-section{background:radial-gradient(circle at 20% 0,rgba(37,99,235,.12),transparent 34%),linear-gradient(180deg,#ffffff,#f4f8ff 48%,#ffffff);overflow:hidden}.success-head{text-align:center}.success-head .sub{margin-left:auto;margin-right:auto}.success-marquee{position:relative;display:grid;gap:18px;margin:8px 0 28px;padding:10px 0 6px}.success-marquee:after,.success-marquee:before{content:"";position:absolute;top:0;bottom:0;width:min(120px,12vw);z-index:2;pointer-events:none}.success-marquee:before{left:0;background:linear-gradient(90deg,#f6f9ff,transparent)}.success-marquee:after{right:0;background:linear-gradient(270deg,#f6f9ff,transparent)}.success-row{display:flex;width:max-content;gap:18px;animation:success-scroll 44s linear infinite}.success-row.reverse{animation-name:success-scroll-reverse;animation-duration:52s}.success-marquee:hover .success-row{animation-play-state:paused}.success-card{position:relative;flex:0 0 clamp(280px,32vw,420px);margin:0;border:1px solid rgba(37,99,235,.13);border-radius:22px;background:rgba(255,255,255,.78);overflow:hidden;box-shadow:0 16px 50px rgba(10,31,60,.1)}.success-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top left;transform:scale(1.01)}.success-card figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.7);box-shadow:0 10px 28px rgba(10,31,60,.12);color:var(--navy);font-weight:800;line-height:1.25;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.success-card figcaption span{display:block;color:var(--accent);font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px}.wall-more{max-width:980px;margin:0 auto}.wall-more summary{cursor:pointer;width:fit-content;margin:0 auto;padding:12px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:800;box-shadow:0 10px 30px rgba(10,31,60,.08)}.wall-more summary:hover{border-color:rgba(37,99,235,.3);text-decoration:none}.wall-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:24px}.wall-grid figure{margin:0;border-radius:18px;border:1px solid var(--line);background:#fff;overflow:hidden;box-shadow:0 12px 30px rgba(10,31,60,.08)}.wall-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:top left;display:block}@keyframes success-scroll{0%{transform:translateZ(0)}to{transform:translate3d(calc(-50% - 9px),0,0)}}@keyframes success-scroll-reverse{0%{transform:translate3d(calc(-50% - 9px),0,0)}to{transform:translateZ(0)}}.case-hero{background:var(--bg-soft);padding:48px 0}.case-hero .tag{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.case-hero h1{font-size:clamp(26px,4vw,40px);color:var(--navy);margin:8px 0 10px;letter-spacing:-.02em;max-width:860px}.case-hero p.desc{font-size:18px;color:var(--muted);max-width:760px;margin:0}.video-wrap{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:var(--navy);margin:32px 0}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.case-block{margin:28px 0}.case-block h2{font-size:20px;color:var(--navy);margin:0 0 8px}.case-block p{margin:0;color:var(--ink);max-width:780px}.breadcrumbs{font-size:13.5px;color:var(--muted);margin-bottom:12px}.btn{display:inline-block;background:var(--accent);color:#fff;font-weight:700;font-size:15px;padding:12px 22px;border-radius:10px}.btn:hover{background:#1d4fd7;text-decoration:none}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--navy)}.btn.ghost:hover{background:var(--bg-soft)}.review-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.review{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px}.review .stars{font-size:16px;letter-spacing:2px}.review p{margin:10px 0;font-size:14.5px}.review .review-title{margin:10px 0 4px;color:var(--navy);font-size:17px;line-height:1.35}.review .review-badge{display:inline-block;margin-top:8px;padding:2px 8px;border-radius:999px;background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:700}.review .review-no-text{color:var(--muted);font-style:italic}.review .who{font-size:13px;color:var(--muted);font-weight:600}.review .review-source{display:inline-block;margin-top:10px;font-size:13px;font-weight:700}.review .owner-reply{color:var(--muted);font-size:13px}.rating-summary{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:32px;flex-wrap:wrap}.rating-summary .big{font-size:44px;font-weight:800;color:var(--navy);line-height:1}.site-footer{background:var(--navy);color:#b9c9e2;padding:40px 0;margin-top:64px;font-size:14px}.site-footer a{color:#dce7f7}.site-footer .cols{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.site-footer .foot-nav{display:flex;gap:18px;flex-wrap:wrap}@media (max-width:640px){.site-header{position:static}.site-header .container{height:auto;flex-direction:column;align-items:flex-start;padding-top:10px;padding-bottom:10px}.main-nav{justify-content:flex-start}.main-nav a{padding:6px 8px}.hero{padding:48px 0 40px}.success-section{padding-top:44px}.success-card{flex-basis:82vw;border-radius:18px}.success-card figcaption{left:10px;right:10px;bottom:10px;padding:10px 12px;font-size:13px}.wall-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.success-row,.success-row.reverse{animation:none;width:auto;overflow-x:auto;padding:0 20px}}