.seo-main { width:var(--page);max-width:1240px;margin:0 auto;padding-bottom:80px;overflow:visible; }
.seo-main > .breadcrumbs { width:100%; }
.seo-main > .breadcrumbs a { color:var(--ink); }
.seo-intro { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:56px;align-items:start;padding:44px 0 66px; }
.seo-intro > div { min-width:0; }
.seo-intro h1 { font-size:clamp(44px,5.6vw,76px);line-height:1.12;letter-spacing:-.055em;max-width:650px;margin:16px 0 26px;word-break:normal;overflow-wrap:normal;hyphens:none; }
.seo-intro h1 mark { display:block;width:fit-content;max-width:100%;box-sizing:border-box;margin-top:.16em;background:var(--yellow);padding:.04em .08em .08em;line-height:1.12; }
.seo-intro .seo-lead {font-size:19px;line-height:1.6;max-width:530px;}
.seo-promises {list-style:none;padding:0;display:grid;gap:12px;margin:28px 0 0;font-size:15px;}
.seo-promises li::before {content:'↗';font-weight:900;margin-right:12px;}
.seo-form-card {width:100%;min-width:0;padding:30px;background:#fff;border:2px solid var(--ink);box-shadow:7px 7px 0 var(--ink);}
.seo-form-card h2 {font-size:24px;margin:0 0 6px;letter-spacing:-.03em;}
.seo-form-card .seo-small {margin:0 0 24px;}
.seo-form {display:grid;gap:18px;}
.seo-field {display:grid;gap:8px;font-weight:700;font-size:14px;}
.seo-field input {width:100%;min-width:0;padding:14px;border:1px solid #777;border-radius:0;font:400 16px Arial,sans-serif;background:#fff;}
.seo-check {display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;}
.seo-check-detail {display:block;margin-top:6px;color:#57554f;font-size:14px;font-weight:400;}
.seo-check input {width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:#151515;}
.seo-small {font-size:13px;line-height:1.6;color:#57554f;}
.seo-small a {color:inherit;text-underline-offset:3px;}
.seo-form .button {width:100%;font-size:15px;}
.seo-form .button:disabled {opacity:.65;cursor:wait;transform:none;}
.seo-honeypot {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.seo-status {margin:0;font-size:14px;line-height:1.6;}
.seo-status:empty {display:none;}
.seo-status.is-error {color:#9e1c1c;}
.seo-status.is-loading::before {content:'';display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid #ccc;border-top-color:var(--ink);border-radius:50%;animation:seo-spin 1s linear infinite;}
@keyframes seo-spin {to {transform:rotate(360deg);}}
.seo-result {border-top:3px solid var(--ink);padding-top:32px;scroll-margin-top:120px;}
.seo-result[hidden], .seo-admin-report[hidden] {display:none;}
.seo-result-top {display:flex;gap:22px;justify-content:space-between;align-items:start;margin-bottom:24px;}
.seo-result h2 {font-size:clamp(30px,4vw,46px);line-height:1.1;letter-spacing:-.04em;margin:8px 0 12px;}
.seo-domain {overflow-wrap:anywhere;font-weight:700;}
.seo-stats {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--ink);margin:24px 0 16px;}
.seo-stat {padding:24px 20px;border-right:1px solid var(--ink);background:white;}
.seo-stat:last-child {border:0;background:var(--yellow);}
.seo-stat strong {display:block;font-size:42px;letter-spacing:-.045em;line-height:1.1;margin-bottom:9px;}
.seo-stat span {font-size:14px;line-height:1.5;}
.seo-note {background:#fff;border-left:4px solid var(--yellow);padding:16px 20px;font-size:14px;line-height:1.6;margin:18px 0 26px;}
.seo-priorities {background:#fff;border:2px solid var(--ink);padding:24px;margin:26px 0;}
.seo-priorities h3 {font-size:24px;line-height:1.2;letter-spacing:-.03em;margin:0 0 10px;}
.seo-priorities > p {margin:0;}
.seo-priority-list {display:grid;gap:20px;padding-left:25px;margin:24px 0 0;}
.seo-priority-list li {min-width:0;padding:0 0 20px 8px;border-bottom:1px solid #dedbd3;}
.seo-priority-list li:last-child {border:0;padding-bottom:0;}
.seo-priority-list li::marker {font-weight:800;}
.seo-priority-list h4 {font-size:18px;line-height:1.4;margin:0 0 6px;}
.seo-priority-list p {font-size:16px;line-height:1.6;margin:0 0 9px;}
.seo-priority-list .seo-small {font-size:14px;}
.seo-priority-button {font:700 14px Arial,sans-serif;border:1px solid var(--ink);background:var(--yellow);color:var(--ink);padding:11px 14px;cursor:pointer;max-width:100%;}
.seo-priority-button:focus-visible {outline:3px solid var(--ink);outline-offset:3px;}
.seo-fix-steps {font-size:14px;line-height:1.65;padding-left:21px;margin:14px 0 0;display:grid;gap:10px;}
.seo-report-search {margin:28px 0 18px;}
.seo-search-controls {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;}
.seo-search-controls label {display:grid;gap:9px;font-size:14px;font-weight:700;min-width:0;}
.seo-search-controls input {width:100%;min-width:0;border:1px solid #777;background:#fff;padding:13px;font:400 16px Arial,sans-serif;}
.seo-more {border:1px solid var(--ink);background:#fff;color:var(--ink);padding:11px 14px;cursor:pointer;font:700 14px Arial,sans-serif;}
.seo-more:focus-visible,.seo-search-controls input:focus-visible {outline:3px solid var(--ink);outline-offset:3px;}
.seo-table-pager {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 0 4px;}
.seo-table-pager .seo-small {margin:0;}
.seo-evidence {margin-top:15px;}
.seo-evidence ul {padding:0;list-style:none;display:grid;gap:12px;margin:10px 0 0;}
.seo-evidence strong,.seo-evidence-value {display:block;overflow-wrap:anywhere;}
.seo-evidence strong {margin-bottom:3px;}
.seo-filters {display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 18px;}
.seo-filter {font:700 13px Arial,sans-serif;border:1px solid #a8a59b;background:transparent;padding:12px 14px;cursor:pointer;}
.seo-filter[aria-pressed=true] {background:var(--ink);color:white;border-color:var(--ink);}
.seo-issue {border:1px solid #c5c2b8;background:#fff;margin-bottom:10px;scroll-margin-top:120px;}
.seo-issue summary {display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:21px 20px;cursor:pointer;list-style:none;}
.seo-issue summary::-webkit-details-marker {display:none;}
.seo-issue summary::after {content:'+';font-size:25px;line-height:1;grid-column:3;grid-row:1;}
.seo-issue[open] summary::after {content:'−';}
.seo-issue-title {display:block;font-size:16px;font-weight:750;line-height:1.4;}
.seo-issue-count {display:block;font-size:12px;color:#626059;margin-top:4px;}
.seo-severity {display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:7px 9px;font-weight:800;}
.seo-severity.critical {background:#fde7e4;color:#972b20;}
.seo-severity.warning {background:#fff0c8;color:#785100;}
.seo-severity.recommendation {background:#e9edfa;color:#374880;}
.seo-issue-body {padding:0 20px 24px;border-top:1px solid #e0ded7;}
.seo-explanation {display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-top:20px;}
.seo-explanation h3 {font-size:14px;margin:0 0 8px;}
.seo-explanation p {font-size:14px;line-height:1.65;margin:0;}
.seo-reference {font-size:12px;display:inline-block;margin:16px 0 22px;color:#56544e;}
.seo-table-wrap {width:100%;overflow-x:auto;}
.seo-table {border-collapse:collapse;width:100%;font-size:13px;text-align:left;}
.seo-result .seo-table {table-layout:fixed;}
.seo-table th {font-size:11px;text-transform:uppercase;letter-spacing:.04em;background:#f1f0eb;padding:12px;}
.seo-table td {padding:14px 12px;border-bottom:1px solid #dedbd3;vertical-align:top;line-height:1.5;}
.seo-table a {color:#171717;overflow-wrap:anywhere;text-underline-offset:3px;}
.seo-table td:first-child {width:45%;}
.seo-table .seo-small {display:block;margin-top:6px;}
.seo-passed {padding:20px 22px;background:#e7ede7;margin:24px 0;}
.seo-passed h3 {margin:0 0 14px;font-size:16px;}
.seo-passed ul {padding-left:20px;margin:0;display:grid;gap:10px;font-size:14px;line-height:1.5;}
.seo-coverage {border-top:1px solid #cbc8be;padding:22px 0;}
.seo-coverage summary {font-weight:700;cursor:pointer;}
.seo-coverage p {font-size:14px;line-height:1.7;}
.seo-help {display:flex;gap:30px;justify-content:space-between;align-items:center;background:var(--yellow);padding:32px;margin-top:32px;border:2px solid var(--ink);}
.seo-help h3 {font-size:26px;letter-spacing:-.035em;margin:0 0 8px;}
.seo-help p {margin:0;font-size:15px;line-height:1.6;max-width:600px;}
.seo-help a {flex-shrink:0;max-width:100%;text-align:center;white-space:normal;}
.seo-faq {border-top:1px solid var(--ink);padding-top:34px;max-width:850px;margin-top:28px;}
.seo-faq h2 {font-size:28px;letter-spacing:-.03em;}
.seo-faq details {border-bottom:1px solid #c9c5ba;padding:18px 0;}
.seo-faq summary {font-weight:700;cursor:pointer;line-height:1.5;}
.seo-faq p {font-size:15px;line-height:1.75;}
.seo-admin-header {padding:40px 0 24px;}
.seo-admin-header h1 {font-size:48px;letter-spacing:-.04em;margin:10px 0 20px;}
.seo-admin-actions {display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0;}
.seo-admin-actions button,.seo-row-actions button {cursor:pointer;border:1px solid #777;padding:9px 12px;background:#fff;font:700 12px Arial,sans-serif;}
.seo-row-actions {display:flex;gap:6px;flex-wrap:wrap;}
.seo-consent {font-weight:700;}
.seo-consent.yes {color:#22582f;}
.seo-admin-list {border:1px solid var(--ink);background:white;}
.seo-admin-list .seo-table {min-width:850px;}
.seo-admin-list .seo-table td:first-child {width:auto;}
.seo-admin-report {margin-top:40px;}
.seo-chapters {display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 30px;}
.seo-chapters a {color:var(--ink);background:var(--yellow);border:1px solid var(--ink);padding:11px 14px;text-decoration:none;font-size:14px;font-weight:700;}
#seo-findings,.seo-discovery {scroll-margin-top:140px;}
.seo-discovery {border-top:2px solid var(--ink);padding-top:30px;margin-top:32px;}
.seo-discovery h3 {font-size:clamp(23px,3vw,30px);line-height:1.25;letter-spacing:-.035em;margin:12px 0;}
.seo-ai-check {background:#fff;border:1px solid #c5c2b8;margin-bottom:9px;}
.seo-ai-check summary {cursor:pointer;padding:17px 20px;display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:15px;font-weight:700;}
.seo-ai-check summary::before {content:'+';font-size:21px;}
.seo-ai-check[open] summary::before {content:'−';}
.seo-ai-check summary > span:first-of-type {flex:1;}
.seo-ai-status {font-size:11px;background:#eae8e1;padding:6px 8px;flex-shrink:0;}
.seo-ai-status.pass {background:#e7ede7;color:#245432;}
.seo-ai-status.review {background:#fff0c8;color:#785100;}
.seo-ai-body {padding:0 20px 5px;border-top:1px solid #e0ded7;font-size:14px;line-height:1.65;overflow-wrap:anywhere;}
.seo-ai-body a {color:inherit;}
.seo-speed-actions {display:flex;flex-wrap:wrap;gap:12px;margin:20px 0;}
.seo-speed-actions a {text-decoration:none;line-height:1.5;}
.seo-speed-actions button:disabled {opacity:.65;cursor:wait;}
.seo-speed-scores {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px;}
.seo-speed-score {border:1px solid var(--ink);padding:20px;background:#fff;}
.seo-speed-score strong,.seo-speed-score span {display:block;}
.seo-speed-score strong {font-size:24px;margin-bottom:7px;}
.seo-speed-score span {font-size:14px;}
.seo-speed-output ul {display:grid;gap:12px;padding-left:22px;font-size:14px;line-height:1.6;}
@media(max-width:900px) {
 .seo-intro {grid-template-columns:1fr;gap:32px;padding-top:24px;}
 .seo-intro h1 {max-width:650px;}
 .seo-form-card {max-width:650px;}
 .seo-result {scroll-margin-top:20px;}
 .seo-issue {scroll-margin-top:20px;}
 .seo-help {align-items:start;flex-direction:column;gap:22px;}
 #seo-findings,.seo-discovery {scroll-margin-top:20px;}
}
@media(max-width:560px) {
 .seo-intro h1 {font-size:44px;}
 .seo-form-card {padding:22px 18px;box-shadow:4px 4px 0 var(--ink);}
 .seo-priorities {padding:20px 16px;}
 .seo-search-controls {grid-template-columns:minmax(0,1fr);}
 .seo-search-controls .seo-more {justify-self:start;}
 .seo-stats {grid-template-columns:1fr 1fr;}
 .seo-stat {padding:18px;border-bottom:1px solid var(--ink);}
 .seo-stat:nth-child(2) {border-right:0;}
 .seo-stat:nth-child(3) {border-bottom:0;}
 .seo-stat strong {font-size:34px;}
 .seo-result-top {flex-direction:column;gap:12px;}
 .seo-issue summary {grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:17px 14px;}
 .seo-issue summary::after {grid-column:2;grid-row:1 / 3;}
 .seo-severity {width:fit-content;grid-column:1;}
 .seo-issue-title-wrap {grid-column:1;}
 .seo-explanation {grid-template-columns:1fr;gap:18px;}
 .seo-issue-body {padding:0 14px 20px;}
 .seo-issue .seo-table th,.seo-issue .seo-table td {padding:10px 6px;}
 .seo-filter {padding:10px;font-size:12px;}
 .seo-help {padding:22px;}
 .seo-ai-check summary {flex-wrap:wrap;gap:9px;padding:15px 14px;}
 .seo-ai-check summary > span:first-of-type {flex-basis:80%;}
 .seo-ai-status {margin-left:22px;}
 .seo-ai-body {padding:0 14px 5px;}
 .seo-speed-scores {grid-template-columns:1fr 1fr;}
}
@media(prefers-reduced-motion:reduce) {.seo-status.is-loading::before {animation:none;}}

/* Result overview: score, evidence and explicit contact request. */
.seo-score{display:grid;grid-template-columns:210px 1fr;background:#111;color:#f3f1eb;margin:32px 0 0;border:2px solid #111;padding:36px;gap:38px}
.seo-score-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:start;aspect-ratio:1;border:2px solid #f5d90a;border-radius:50%;color:#f5d90a;text-align:center;gap:4px}
.seo-score-badge strong{font-size:76px;line-height:1;font-weight:900;letter-spacing:-5px}.seo-score-badge span{font-size:11px;font-weight:800;letter-spacing:1px}
.seo-score-overview h3{font-size:clamp(26px,3vw,40px);line-height:1.1;margin:0 0 16px}.seo-score-overview>p{line-height:1.6}.seo-score .seo-small{color:#c2c0b8}
.seo-score-reasons{list-style:none;padding:0;margin:24px 0}.seo-score-reasons li{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-top:1px solid #444;font-size:14px}.seo-score-reasons span{color:#f5d90a;white-space:nowrap}.seo-score-method{font-size:13px;line-height:1.6}.seo-score-method summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.seo-contact{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;padding:30px 36px;background:#f5d90a;border:2px solid #111;border-top:0;margin-bottom:36px}.seo-contact h3{font-size:26px;margin:6px 0 12px;line-height:1.15}.seo-contact p{margin:8px 0}.seo-contact-action{align-self:center}.seo-contact-action .button{width:100%;text-align:center;justify-content:center}.seo-contact-action .seo-small{font-size:12px;line-height:1.5}.seo-contact button:disabled{opacity:.75;cursor:default}
@media(max-width:700px){.seo-score{grid-template-columns:1fr;padding:24px;gap:24px}.seo-score-badge{width:170px;justify-self:center}.seo-score-badge strong{font-size:64px}.seo-score-reasons li{flex-direction:column;gap:5px}.seo-contact{grid-template-columns:1fr;padding:24px;gap:12px}}

.seo-contact-booking{margin-top:20px;padding-top:18px;border-top:1px solid #1114}.seo-contact-booking[hidden]{display:none}.seo-contact-booking .button{margin:10px 0 4px}.seo-contact-proof{grid-column:1/-1;border-top:1px solid #1114;padding-top:20px}.seo-contact-proof h4{font-size:20px;line-height:1.3;margin:8px 0}.seo-contact-proof p:not(.page-label){max-width:760px;font-size:15px;line-height:1.6}.seo-contact-proof a{display:inline-block;color:#111;text-decoration:underline;text-underline-offset:4px;font-weight:700;margin-top:8px}.seo-contact-action{min-width:0}.seo-contact-action .button{white-space:normal}

/* Compact overview; detailed evidence is available on demand. */
.seo-score{border-radius:16px 16px 0 0;grid-template-columns:180px minmax(0,1fr);gap:32px}
.seo-score-badge{width:180px}.seo-score-overview{min-width:0}
.seo-score-reasons strong{font-weight:600;line-height:1.5}
.seo-score-method[open]{margin-top:20px;padding-top:16px;border-top:1px solid #444}
.seo-score-method summary{padding:8px 0}.seo-score-method ul{padding-left:20px}
.seo-contact{border-radius:0 0 16px 16px;gap:20px 32px;margin-bottom:28px}
.seo-contact-proof{padding-top:12px;font-size:13px}.seo-contact-proof a{margin:0}
.seo-report-section{margin:12px 0;padding:0 24px;border:1px solid #d6d3cb;border-radius:12px;background:#fff;overflow:hidden}
.seo-report-section>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:24px 0;font-size:18px;font-weight:750;line-height:1.4;color:#111}
.seo-report-section>summary::-webkit-details-marker{display:none}
.seo-report-section>summary::after{content:'+';font-size:26px;font-weight:400;flex-shrink:0}
.seo-report-section[open]>summary::after{content:'−'}
.seo-report-section[open]{padding-bottom:24px}.seo-report-section[open]>summary{border-bottom:1px solid #e5e2da;margin-bottom:20px}
.seo-report-section>summary:focus-visible,.seo-score-method>summary:focus-visible{outline:2px solid #b59e00;outline-offset:4px}
.seo-passed>summary{cursor:pointer;font-weight:700;padding:8px 0}
@media(max-width:700px){.seo-score{grid-template-columns:1fr;gap:20px}.seo-score-badge{width:160px}.seo-report-section{padding:0 16px}.seo-report-section>summary{font-size:16px;padding:20px 0}.seo-contact{gap:16px}}

.seo-cta-form { display:grid; gap:14px; width:100%; }
.seo-cta-form[hidden] { display:none; }
.seo-cta-form label { display:grid; gap:8px; font-weight:700; }
.seo-cta-form textarea { width:100%; box-sizing:border-box; padding:12px; border:1px solid currentColor; border-radius:4px; font:inherit; background:#fff; color:#111; resize:vertical; }
.seo-cta-form p { overflow-wrap:anywhere; }
