/* Editorial pages and service links, layered over the existing Sharkify theme. */
.seo-page{font-size:16px;line-height:1.8}
.seo-page main{min-width:0}
.seo-page .nav-inner{gap:28px}
.seo-page .nav-links{gap:22px}
.seo-hero{padding-top:35px;padding-bottom:65px;border-bottom:1px solid var(--line)}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:53px;color:#676a60;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.breadcrumb a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:#babeb0}
.breadcrumb a:hover{color:var(--orange);text-decoration-color:currentColor}
.breadcrumb [aria-current],.breadcrumb>span:last-child{color:var(--ink)}
.seo-hero>.eyebrow{margin-bottom:21px;color:#aa3712;font-size:11px;letter-spacing:.1em}
.seo-hero h1{max-width:23ch;font-size:clamp(36px,4.7vw,68px);line-height:1.13;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:break-word}
.seo-intro{max-width:77ch;margin-top:28px;font-size:18px;line-height:1.85;color:#5f6358;letter-spacing:-.018em}
.seo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:31px}
.seo-actions .button{max-width:100%;font-size:13px}
.seo-actions .text-link{font-size:13px}
.seo-meta{margin-top:22px;color:#696d61;font-size:12px;line-height:1.7}
.seo-meta a{text-decoration:underline;text-underline-offset:4px}
.seo-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:76px;align-items:start;padding-top:65px;padding-bottom:80px}
.seo-toc{position:sticky;top:112px;max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:6px 8px 14px 0}
.seo-toc h2{margin-bottom:19px;color:#65695e;font:600 11px/1.5 var(--body);letter-spacing:.12em;text-transform:uppercase}
.seo-toc nav{display:grid;border-left:1px solid #d8dbd0}
.seo-toc a{display:flex;align-items:center;min-height:44px;padding:10px 0 10px 17px;margin-left:-1px;border-left:2px solid transparent;color:#666b5e;font-size:12px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}
.seo-toc a:hover,.seo-toc a[aria-current="location"]{border-left-color:var(--orange);color:#aa3712;background:#fff9f5}
.seo-article{width:100%;max-width:810px;min-width:0;color:#4c5246;font-size:16px;line-height:1.9;overflow-wrap:break-word}
.seo-article>section{scroll-margin-top:116px}
.seo-article>section+section{margin-top:58px}
.seo-article h2{margin-bottom:22px;color:var(--ink);font-size:clamp(27px,2.6vw,35px);line-height:1.22;letter-spacing:-.042em;text-wrap:balance}
.seo-article h3{margin:28px 0 14px;color:var(--ink);font-size:23px;line-height:1.3;letter-spacing:-.025em}
.seo-article p+p,.seo-article p+ul,.seo-article p+ol,.seo-article ul+p,.seo-article ol+p{margin-top:20px}
.seo-article ul,.seo-article ol{margin:20px 0;padding-left:24px}
.seo-article li{padding-left:5px}
.seo-article li+li{margin-top:12px}
.seo-article li::marker{color:#ae3d17}
.seo-article strong{color:#2d3427;font-weight:600}
.seo-article a:not(.button){color:#a3310c;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.seo-article a:not(.button):hover{color:#6f2006;text-decoration-thickness:2px}
.seo-article table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:28px 0;font-size:14px;line-height:1.6}
.seo-article th,.seo-article td{text-align:left;vertical-align:top;padding:15px 18px;border:1px solid #dce0d3}
.seo-article th{background:#f3f5ed;color:#323b29;font-weight:600}
.seo-article img{display:block;max-width:100%;height:auto}
.seo-article .seo-faq{margin-top:64px;padding-top:36px;border-top:1px solid var(--line)}
.seo-faq details{border-bottom:1px solid var(--line)}
.seo-faq summary{display:flex;justify-content:space-between;align-items:center;gap:22px;min-height:64px;padding:20px 0;list-style:none;color:#2c3227;font-size:15px;font-weight:600;line-height:1.65;cursor:pointer}
.seo-faq summary::-webkit-details-marker{display:none}
.seo-faq summary::after{content:'+';flex:0 0 23px;font-size:25px;font-weight:400;line-height:1;text-align:center;color:#a43916}
.seo-faq details[open]>summary::after{content:'−'}
.seo-faq details p{padding:0 28px 22px 0;color:#606658;font-size:15px;line-height:1.85}
.seo-callout{margin-top:54px;padding:34px;border-radius:12px;background:#242a20;color:#e2e8da}
.seo-article .seo-callout h2{max-width:22ch;margin-bottom:15px;color:#fff;font-size:30px;line-height:1.25}
.seo-callout p{max-width:57ch;color:#d5decb;font-size:15px;line-height:1.8}
.seo-callout .button{margin-top:25px;max-width:100%;font-size:13px;color:#fff}
.seo-article .seo-callout a:not(.button){color:#ffb397}
.seo-related{padding-top:54px;padding-bottom:84px;border-top:1px solid var(--line)}
.seo-related>h2{max-width:30ch;margin-bottom:30px;font-size:clamp(29px,3.2vw,42px);line-height:1.2;letter-spacing:-.045em}
.seo-related>.eyebrow{margin-bottom:17px}
.seo-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.seo-card-grid>article{display:flex;min-width:0;border:1px solid #dbdfd2;border-radius:12px;background:white;overflow-wrap:break-word}
.seo-card-grid>article>a{display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0;padding:31px 27px;border-radius:11px}
.seo-card-grid>article>a:hover{background:#fff8f3}
.seo-card-grid>article:focus-within{border-color:#b64118}
.seo-card-grid>article>a>span{color:#9c3616;font-size:10px;font-weight:600;letter-spacing:.09em;line-height:1.6;text-transform:uppercase}
.seo-card-grid h3{margin-top:19px;color:#272d22;font-size:25px;line-height:1.3;letter-spacing:-.035em;text-wrap:balance}
.seo-card-grid p{margin-top:16px;color:#666c5d;font-size:13px;line-height:1.85}
.seo-card-grid>article>a::after{content:'↗';display:grid;place-items:center;width:35px;height:35px;margin-top:26px;border:1px solid #d0d6c5;border-radius:50%;color:#923311;font-size:20px;line-height:1}
.seo-card-grid>article>a:hover::after{border-color:#b8451e;background:#fff0e7}
.seo-services{background:#f7f8f3;border-block:1px solid #e8ebdf}
.seo-services .section-top h2{max-width:22ch}
.seo-services .section-aside{color:#666c5d}
.seo-footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px 25px;margin-top:26px}
.seo-footer-links a{display:inline-flex;align-items:center;min-height:44px;color:#626959;font-size:12px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#c4caba;overflow-wrap:anywhere}
.seo-footer-links a:hover{color:#9c3616;text-decoration-color:currentColor}
.seo-page :is(a,summary,button):focus-visible,.seo-card-grid a:focus-visible{outline:3px solid #b64018;outline-offset:4px}
.seo-page .seo-toc a:focus-visible{outline-offset:-3px}
@media(max-width:1050px){
  .seo-page .nav-inner{gap:20px}
  .seo-page .nav-links{gap:16px;font-size:11px}
  .seo-layout{grid-template-columns:195px minmax(0,1fr);gap:40px}
  .seo-card-grid{gap:16px}
  .seo-card-grid>article>a{padding:27px 23px}
  .seo-card-grid h3{font-size:23px}
}
@media(max-width:900px){
  .seo-page .nav-links{display:none}
  .seo-page .nav-inner{justify-content:space-between}
  .seo-hero{padding-bottom:46px}
  .seo-hero h1{font-size:clamp(36px,5.4vw,53px)}
  .seo-layout{grid-template-columns:minmax(0,1fr);gap:42px;padding-top:35px;padding-bottom:60px}
  .seo-toc{position:static;max-height:none;overflow:visible;padding:23px;border:1px solid #e1e5d9;border-radius:10px;background:#f8f9f5}
  .seo-toc h2{margin-bottom:12px}
  .seo-toc nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;border:0}
  .seo-toc a{margin:0;padding-left:13px}
  .seo-article{max-width:100%}
  .seo-related{padding-top:45px;padding-bottom:60px}
  .seo-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .seo-card-grid>article:last-child:nth-child(odd){grid-column:1/-1}
}
@media(max-width:600px){
  .seo-hero{padding-top:24px;padding-bottom:36px}
  .breadcrumb{margin-bottom:35px;font-size:11px;gap:7px 9px}
  .seo-hero>.eyebrow{font-size:10px;margin-bottom:18px}
  .seo-hero h1{max-width:100%;font-size:clamp(32px,8.2vw,46px);line-height:1.16;letter-spacing:-.045em}
  .seo-intro{margin-top:23px;font-size:16px;line-height:1.85}
  .seo-actions{align-items:flex-start;gap:20px;margin-top:26px}
  .seo-actions .button{font-size:12px;gap:14px;padding-inline:18px}
  .seo-actions .text-link{min-height:44px;font-size:12px}
  .seo-meta{font-size:11px;margin-top:18px}
  .seo-layout{gap:35px;padding-top:28px;padding-bottom:46px}
  .seo-toc{padding:21px 18px}
  .seo-toc nav{grid-template-columns:minmax(0,1fr)}
  .seo-toc a{font-size:12px;padding-block:10px}
  .seo-article{font-size:16px;line-height:1.85}
  .seo-article>section+section{margin-top:42px}
  .seo-article h2{font-size:28px;line-height:1.27;margin-bottom:19px}
  .seo-article h3{font-size:22px}
  .seo-article ul,.seo-article ol{padding-left:21px}
  .seo-article li{padding-left:3px}
  .seo-article .seo-faq{margin-top:45px;padding-top:30px}
  .seo-faq summary{font-size:14px;gap:15px;padding-block:18px}
  .seo-faq details p{font-size:14px;padding-right:0}
  .seo-callout{margin-top:37px;padding:26px 23px}
  .seo-article .seo-callout h2{font-size:27px}
  .seo-callout p{font-size:14px}
  .seo-callout .button{gap:13px;padding-inline:16px;font-size:12px}
  .seo-card-grid{grid-template-columns:minmax(0,1fr);gap:15px}
  .seo-card-grid>article>a{padding:27px}
  .seo-card-grid h3{font-size:25px}
  .seo-card-grid p{font-size:14px}
  .seo-related{padding-top:35px;padding-bottom:50px}
  .seo-related>h2{font-size:30px;margin-bottom:24px}
  .seo-footer-links{gap:4px 22px;margin-top:23px}
  .seo-footer-links a{font-size:11px}
  .seo-page .footer-top{gap:22px}
}
@media(prefers-reduced-motion:reduce){
  .seo-page *, .seo-page *::before, .seo-page *::after{animation:none!important;transition:none!important}
  .seo-page .button:hover{transform:none}
}
@media print{
  .seo-page .rdv-nav,.seo-page .seo-toc,.seo-page .seo-actions,.seo-page .seo-related,.seo-page .seo-callout,.seo-page .rdv-footer{display:none}
  .seo-page .wrap{width:100%}
  .seo-hero{padding-block:0 25px}
  .breadcrumb{margin-bottom:20px}
  .seo-hero h1{font-size:30pt}
  .seo-layout{display:block;padding-top:25px}
  .seo-article{max-width:none;font-size:11pt;color:#000}
  .seo-article h2{break-after:avoid;font-size:20pt}
  .seo-article p,.seo-article li{orphans:3;widows:3}
}
