/* seomelbourne.com — cases family stylesheet: declarations shared by every cases page (generated 2026-09-02, tranche 5 task 2). Chrome (nav/footer/modal) lives in chrome.css. */
html{scroll-behavior:smooth}
body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.7;-webkit-font-smoothing:antialiased}
body::after{content:'';position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:0.015;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit}
.ambient{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.ambient-orb{position:absolute;border-radius:50%;filter:blur(120px)}
.ambient-orb:nth-child(1){width:600px;height:600px;background:radial-gradient(circle, color-mix(in srgb, var(--ic) 12%, transparent), transparent 70%);top:-200px;left:-100px;animation:drift1 30s ease-in-out infinite}
.ambient-orb:nth-child(2){width:500px;height:500px;background:radial-gradient(circle, rgba(59,130,246,0.06), transparent 70%);top:40%;right:-200px;animation:drift2 35s ease-in-out infinite}
.ambient-orb:nth-child(3){width:400px;height:400px;background:radial-gradient(circle, rgba(139,92,246,0.05), transparent 70%);bottom:10%;left:30%;animation:drift3 28s ease-in-out infinite}
.case-hero{position:relative;z-index:2;padding:10rem 2rem 3rem}
.case-hero-inner{max-width:900px;margin:0 auto}
.back-link{display:inline-flex;align-items:center;gap:0.4rem;color:var(--text-dim);text-decoration:none;font-size:0.85rem;margin-bottom:2rem;transition:color 0.3s}
.back-link:hover{color:var(--primary)}
.hero-badge{display:inline-flex;align-items:center;gap:0.5rem;padding:0.35rem 0.9rem;background:color-mix(in srgb, var(--ic) 8%, transparent);border:1px solid color-mix(in srgb, var(--ic) 15%, transparent);border-radius:8px;font-size:0.7rem;font-weight:600;color:var(--ic);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:1.25rem}
.case-hero h1{font-family:var(--font-display);font-size:clamp(2.2rem, 5vw, 3.2rem);font-weight:800;line-height:1.08;letter-spacing:-0.03em;margin-bottom:1.25rem}
.case-hero h1 em{font-style:normal;color:var(--ic)}
.hero-meta{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:0.85rem;color:var(--text-dim)}
.hero-meta span{display:flex;align-items:center;gap:0.4rem}
.client-badge{display:inline-flex;align-items:center;gap:0.75rem;padding:0.5rem 1rem 0.5rem 0.5rem;background:var(--glass);border:1px solid var(--glass-border);border-radius:12px;margin-bottom:1.5rem}
.client-badge-text{font-family:var(--font-display);font-size:0.9rem;font-weight:700}
.stats-section{max-width:900px;margin:0 auto;padding:0 2rem 3rem}
.stats-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem}
.stat-card{position:relative;padding:1.75rem;background:var(--glass);border:1px solid var(--glass-border);border-radius:16px;text-align:center;overflow:hidden;transition:all 0.4s}
.stat-card:hover{border-color:color-mix(in srgb, var(--ic) 25%, transparent);transform:translateY(-3px)}
.stat-accent{position:absolute;top:0;left:0;right:0;height:3px;border-radius:3px 3px 0 0}
.stat-number{font-family:var(--font-display);font-size:2.5rem;font-weight:800;letter-spacing:-0.04em;line-height:1;margin-bottom:0.3rem}
.stat-label{font-size:0.85rem;font-weight:600;color:var(--text);margin-bottom:0.25rem}
.stat-desc{font-size:0.75rem;color:var(--text-dim);line-height:1.4}
.content{max-width:900px;margin:0 auto;padding:0 2rem;position:relative;z-index:2}
.cs-section{margin-bottom:4rem}
.section-marker{display:flex;align-items:center;gap:1rem;margin-bottom:1.75rem}
.section-num{font-family:var(--font-display);font-size:0.7rem;font-weight:700;color:var(--ic);background:color-mix(in srgb, var(--ic) 8%, transparent);border:1px solid color-mix(in srgb, var(--ic) 12%, transparent);width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;letter-spacing:0.02em;flex-shrink:0}
.section-title{font-family:var(--font-display);font-size:1.5rem;font-weight:800;letter-spacing:-0.02em}
.content p{margin-bottom:1.5rem;color:rgba(255,255,255,0.75);font-size:1.05rem;line-height:1.8}
.ba-grid{display:flex;flex-direction:column;gap:0.75rem;margin:2rem 0 0}
.ba-row{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center}
.ba-before{padding:1rem 1.25rem;border-radius:12px}
.ba-after{padding:1rem 1.25rem;border-radius:12px}
.ba-before{background:rgba(255,60,60,0.04);border:1px solid rgba(255,60,60,0.08)}
.ba-after{background:color-mix(in srgb, var(--ic) 4%, transparent);border:1px solid color-mix(in srgb, var(--ic) 10%, transparent)}
.ba-tag{display:inline-block;font-size:0.6rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;padding:0.15rem 0.45rem;border-radius:4px;margin-bottom:0.4rem}
.ba-tag-before{background:rgba(255,60,60,0.1);color:#ff6b6b}
.ba-tag-after{background:color-mix(in srgb, var(--ic) 12%, transparent);color:var(--ic)}
.ba-before p{font-size:0.85rem;color:rgba(255,255,255,0.6);margin:0;line-height:1.5}
.ba-after p{font-size:0.85rem;color:rgba(255,255,255,0.6);margin:0;line-height:1.5}
.ba-arrow{display:flex;align-items:center;justify-content:center}
.pillars-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem;margin-top:1.5rem}
.pillar-card{position:relative;padding:1.75rem;background:var(--glass);border:1px solid var(--glass-border);border-radius:16px;transition:all 0.4s;overflow:hidden}
.pillar-card:hover{border-color:color-mix(in srgb, var(--ic) 20%, transparent);transform:translateY(-3px)}
.pillar-num{position:absolute;top:1rem;right:1.25rem;font-family:var(--font-display);font-size:2.5rem;font-weight:800;color:rgba(255,255,255,0.03);line-height:1}
.pillar-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb, var(--ic) 8%, transparent);border:1px solid color-mix(in srgb, var(--ic) 12%, transparent);border-radius:12px;margin-bottom:0.75rem;color:var(--ic)}
.pillar-title{font-family:var(--font-display);font-size:0.95rem;font-weight:700;margin-bottom:0.5rem;color:var(--text)}
.pillar-desc{font-size:0.85rem;color:var(--text-muted);line-height:1.6;margin:0}
.quote-section{max-width:900px;margin:0 auto 3rem;padding:0 2rem}
.quote-card{position:relative;padding:2.5rem 3rem;background:linear-gradient(135deg, color-mix(in srgb, var(--ic) 4%, transparent), rgba(59,130,246,0.02));border:1px solid color-mix(in srgb, var(--ic) 12%, transparent);border-radius:20px;overflow:hidden}
.quote-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg, var(--ic), transparent)}
.quote-stars{color:#fbbf24;font-size:1.1rem;letter-spacing:0.1em;margin-bottom:1rem}
.quote-mark{position:absolute;top:1.5rem;left:2rem;font-size:5rem;color:color-mix(in srgb, var(--ic) 10%, transparent);font-family:Georgia, serif;line-height:1}
.quote-text{font-size:1.15rem;font-style:italic;color:rgba(255,255,255,0.8);line-height:1.75;margin-bottom:1.25rem;padding-left:1.5rem;position:relative;z-index:1}
.quote-footer{display:flex;align-items:center;gap:1rem;padding-left:1.5rem}
.quote-avatar{width:44px;height:44px;border-radius:12px;background:color-mix(in srgb, var(--ic) 12%, transparent);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:0.7rem;color:var(--ic)}
.quote-name{font-family:var(--font-display);font-weight:700;font-size:0.9rem}
.quote-role{font-size:0.8rem;color:var(--text-dim)}
.cta-section{max-width:900px;margin:0 auto 3rem;padding:0 2rem}
.cta-box{position:relative;overflow:hidden;background:linear-gradient(135deg, color-mix(in srgb, var(--ic) 5%, transparent), rgba(59,130,246,0.03));border:1px solid color-mix(in srgb, var(--ic) 12%, transparent);border-radius:24px;padding:3.5rem 3rem;text-align:center}
.cta-box::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--ic) 4%, transparent), transparent 50%);pointer-events:none}
.cta-box h2{font-family:var(--font-display);font-size:1.6rem;font-weight:800;margin-bottom:0.75rem;position:relative}
.cta-box p{color:var(--text-muted);max-width:450px;margin:0 auto 2rem;position:relative;font-size:1rem}
.cta-btn{display:inline-flex;align-items:center;gap:0.5rem;padding:1rem 2.25rem;background:linear-gradient(180deg, var(--ic) 0%, color-mix(in srgb, var(--ic) 80%, #000) 100%);color:#000;font-weight:700;font-size:1rem;border-radius:14px;text-decoration:none;transition:all 0.3s;position:relative;transform:translateY(-4px);box-shadow:0 4px 0 0 color-mix(in srgb, var(--ic) 40%, #000), 0 6px 20px color-mix(in srgb, var(--ic) 25%, transparent)}
.cta-btn:hover{transform:translateY(-6px);box-shadow:0 6px 0 0 color-mix(in srgb, var(--ic) 40%, #000), 0 12px 35px color-mix(in srgb, var(--ic) 35%, transparent)}
.more-section{max-width:900px;margin:0 auto;padding:0 2rem 3rem}
.more-section h2{font-family:var(--font-display);font-size:1.3rem;font-weight:700;margin-bottom:1.25rem}
.more-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:1rem}
.more-card{display:flex;flex-direction:column;gap:0.4rem;padding:1.25rem;background:var(--glass);border:1px solid var(--glass-border);border-radius:14px;text-decoration:none;transition:all 0.3s}
.more-card:hover{border-color:rgba(0,255,106,0.15);transform:translateY(-3px)}
.more-tag{display:inline-block;padding:0.15rem 0.5rem;font-size:0.65rem;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:0.04em;width:fit-content}
.more-card h3{font-family:var(--font-display);font-size:0.9rem;font-weight:700;line-height:1.3;color:var(--text)}
.more-card:hover h3{color:var(--primary)}
.more-stat{font-size:0.75rem;color:var(--text-dim)}
@media (max-width: 768px){.case-hero{padding:8rem 1.5rem 2rem}
.stats-section{padding-left:1.5rem;padding-right:1.5rem}
.content{padding-left:1.5rem;padding-right:1.5rem}
.quote-section{padding-left:1.5rem;padding-right:1.5rem}
.cta-section{padding-left:1.5rem;padding-right:1.5rem}
.more-section{padding-left:1.5rem;padding-right:1.5rem}
.stats-grid{grid-template-columns:1fr}
.pillars-grid{grid-template-columns:1fr}
.ba-row{grid-template-columns:1fr;gap:0.5rem}
.ba-arrow{transform:rotate(90deg)}
.more-grid{grid-template-columns:1fr}
.quote-card{padding:2rem 1.5rem}
.cta-box{padding:2.5rem 1.5rem}}
p a{color:#00ff6a;text-decoration:underline;text-decoration-color:rgba(0,255,106,0.3);text-underline-offset:3px;transition:color 0.2s,text-decoration-color 0.2s}
.faq-a a{color:#00ff6a;text-decoration:underline;text-decoration-color:rgba(0,255,106,0.3);text-underline-offset:3px;transition:color 0.2s,text-decoration-color 0.2s}
td a{color:#00ff6a;text-decoration:underline;text-decoration-color:rgba(0,255,106,0.3);text-underline-offset:3px;transition:color 0.2s,text-decoration-color 0.2s}
dd a{color:#00ff6a;text-decoration:underline;text-decoration-color:rgba(0,255,106,0.3);text-underline-offset:3px;transition:color 0.2s,text-decoration-color 0.2s}
article li a{color:#00ff6a;text-decoration:underline;text-decoration-color:rgba(0,255,106,0.3);text-underline-offset:3px;transition:color 0.2s,text-decoration-color 0.2s}
section li a:not(.nav-link){color:#00ff6a;text-decoration:underline;text-decoration-color:rgba(0,255,106,0.3);text-underline-offset:3px;transition:color 0.2s,text-decoration-color 0.2s}
p a:hover{color:#fff;text-decoration-color:#00ff6a}
.faq-a a:hover{color:#fff;text-decoration-color:#00ff6a}
td a:hover{color:#fff;text-decoration-color:#00ff6a}
dd a:hover{color:#fff;text-decoration-color:#00ff6a}
article li a:hover{color:#fff;text-decoration-color:#00ff6a}
section li a:not(.nav-link):hover{color:#fff;text-decoration-color:#00ff6a}
html{overflow-x:hidden!important}
body{overflow-x:hidden!important;max-width:100vw!important}
@media(max-width:768px){img{max-width:100%!important;height:auto!important}
video{max-width:100%!important;height:auto!important}
iframe{max-width:100%!important;height:auto!important}
embed{max-width:100%!important;height:auto!important}
pre{overflow-x:auto;max-width:100%}
code{overflow-x:auto;max-width:100%}}
.client-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:0.75rem;font-weight:800;background:color-mix(in srgb, var(--ic) 15%, transparent);color:var(--ic)}
@media(max-width:1024px){.harbour-cta-card{background:rgba(34,34,44,0.95)!important}
.glass{background:rgba(34,34,44,0.95)!important}
.card{background:rgba(34,34,44,0.95)!important}
.btn-primary .btn-glow{display:none!important}
.btn-secondary .btn-surface{box-shadow:none!important;transform:translateY(0)!important}
.client-logo-item img{filter:brightness(0) invert(1)!important}

.trust-section{content-visibility:auto;contain-intrinsic-size:auto 500px}
.services-section{content-visibility:auto;contain-intrinsic-size:auto 500px}
.guides-section{content-visibility:auto;contain-intrinsic-size:auto 500px}
.case-studies-section{content-visibility:auto;contain-intrinsic-size:auto 500px}
.faq-section{content-visibility:auto;contain-intrinsic-size:auto 500px}
.harbour-cta-section{content-visibility:auto;contain-intrinsic-size:auto 500px}
.process-section{content-visibility:auto;contain-intrinsic-size:auto 500px}}
@keyframes drift1{0%, 100% { transform: translate(0,0); } 50% { transform: translate(40px,60px); }}
@keyframes drift2{0%, 100% { transform: translate(0,0); } 50% { transform: translate(-50px,40px); }}
@keyframes drift3{0%, 100% { transform: translate(0,0); } 50% { transform: translate(60px,-40px); }}

/* related cards (tranche 7): same markup and rules as the guides' Related Industry Guides block */
.related-section{padding:3rem 0;border-top:1px solid rgba(245,245,245,0.1)}
.related-section>.container{display:block;max-width:900px;margin:0 auto;padding:0 2rem}
@media (max-width:768px){.related-section>.container{padding:0 1.5rem}}.related-section h2{border:none;padding:0;margin:0 0 1.5rem;font-size:1.3rem}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.related-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:rgba(14,24,38,0.6);border:1px solid rgba(245,245,245,0.08);border-radius:12px;text-decoration:none;transition:all 0.3s}.related-card:hover{border-color:rgba(0,255,106,0.15);transform:translateY(-3px)}.related-card-icon{width:48px;height:48px;border-radius:8px;background:rgba(245,245,245,0.05);display:flex;align-items:center;justify-content:center}.related-card-icon svg{width:28px;height:28px;stroke:#00ff6a;stroke-width:1.5;fill:none}.related-card-content h3{font-size:0.95rem;margin:0 0 0.2rem;color:#f5f5f5}.related-card-content span{font-size:0.8rem;color:rgba(245,245,245,0.3)}
@media(max-width:768px){.related-grid{grid-template-columns:1fr}}
