/*
Theme Name: Sharifov Prototype
Description: A portable, editable WordPress block theme for the Sharifov internal design prototype.
Version: 1.1.0
Requires at least: 6.6
Requires PHP: 7.4
Author: SEOTec
Text Domain: sharifov-prototype
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Native WordPress blocks, with a compact editorial grid and local SVG artwork.
   All ordinary text, images, links and buttons remain in editable blocks. */
:root {
  --sh-navy:var(--wp--preset--color--navy,#142b40);
  --sh-ink:var(--wp--preset--color--ink,#172d43);
  --sh-paper:var(--wp--preset--color--paper,#f6f5f1);
  --sh-white:var(--wp--preset--color--white,#fff);
  --sh-mist:var(--wp--preset--color--mist,#edf1f4);
  --sh-line:var(--wp--preset--color--line,#dce1e5);
  --sh-muted:var(--wp--preset--color--muted,#596575);
  --sh-brass:var(--wp--preset--color--brass,#c7a572);
  --sh-serif:var(--wp--preset--font-family--serif,Georgia,"Times New Roman",serif);
  --sh-sans:var(--wp--preset--font-family--sans,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif);
}
*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:20px; }
body { margin:0; }
img { max-width:100%; height:auto; }
a { text-underline-offset:.2em; }
a:focus-visible,button:focus-visible { outline:3px solid var(--sh-brass); outline-offset:5px; }
h1,h2,h3,h4,p { overflow-wrap:break-word; }
h1,h2,h3,h4 { font-family:var(--sh-serif); font-weight:400; }
.wp-site-blocks > *, .wp-block-template-part, .front-main { margin-block-start:0; }
.front-main.wp-block-group,.front-main > .wp-block-post-content { max-width:none; padding:0; margin:0; }
.front-main > .wp-block-post-content > * { max-width:none; margin-block:0; }
.front-main :where([class*="s2-"]) > *, .s2-topbar :where([class*="s2-"]) > *, .s2-header :where([class*="s2-"]) > *, .s2-footer :where([class*="s2-"]) > * { margin-block-start:0; }
.s2-container { width:min(1180px,calc(100% - 80px)); max-width:1180px; margin-inline:auto; }
.s2-wide { width:min(1320px,calc(100% - 64px)); max-width:1320px; margin-inline:auto; }
.s2-section { padding-block:44px; }
.s2-eyebrow { margin:0 0 8px; color:#786b60; font:500 12px/1.5 var(--sh-sans); letter-spacing:.07em; text-transform:uppercase; }
.s2-demo-note { margin:12px 0 0; font:400 10px/1.6 var(--sh-sans); letter-spacing:.02em; color:var(--sh-muted); }
.s2-section h2,.s2-about h2,.s2-results h2,.s2-insights h2,.s2-cta h2 { font-size:clamp(28px,2.45vw,35px); line-height:1.16; letter-spacing:-.025em; margin:0; }
.s2-icon { flex:0 0 38px; width:38px; margin:0; }
.s2-icon img { width:38px; height:38px; object-fit:contain; display:block; }
.s2-item-title { color:var(--sh-ink); font-size:13px; line-height:1.3; font-weight:600; margin:0 0 4px; }
.s2-item-copy { font-size:12px; line-height:1.45; color:var(--sh-muted); margin:0; }
.s2-heading-row { display:flex; gap:24px; align-items:flex-end; justify-content:space-between; }
.s2-section-heading { margin-bottom:22px; }
.s2-view-link { font-size:12px; line-height:1.5; white-space:nowrap; margin:0 0 3px; font-weight:600; }
.s2-view-link a,.s2-card-link a { text-decoration:none; }
.s2-view-link a:hover,.s2-card-link a:hover { text-decoration:underline; }
.wp-block-buttons { gap:14px; }
.wp-block-button .wp-block-button__link {
  border:1px solid var(--sh-brass); border-radius:0; padding:13px 23px;
  background:var(--sh-brass); color:var(--sh-navy); font:600 12px/1.35 var(--sh-sans);
  text-decoration:none; transition:background-color .15s,color .15s,border-color .15s;
}
.wp-block-button .wp-block-button__link:hover { background:#ddc49b; border-color:#ddc49b; color:var(--sh-navy); }
.wp-block-button.is-style-outline .wp-block-button__link { background:transparent; border-color:currentColor; color:inherit; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background:var(--sh-white); border-color:var(--sh-white); color:var(--sh-navy); }
.wp-block-button.is-style-light .wp-block-button__link { background:var(--sh-white); border-color:var(--sh-white); color:var(--sh-navy); }
.wp-block-button.is-style-light .wp-block-button__link:hover { background:var(--sh-paper); border-color:var(--sh-paper); }
.wp-block-button.is-style-text-link .wp-block-button__link { background:none; padding:4px 0; border:0; border-bottom:1px solid var(--sh-brass); color:inherit; }
.wp-block-button.is-style-text-link .wp-block-button__link:hover { background:none; color:#8e6237; }

/* Contact strip and the owner-editable native Navigation block. */
.s2-topbar { background:var(--sh-navy); color:#e5eaf0; }
.s2-topbar-inner,.s2-topbar-left,.s2-topbar-right { display:flex; align-items:center; }
.s2-topbar-inner { min-height:36px; justify-content:space-between; gap:18px; }
.s2-topbar-left { gap:30px; }
.s2-topbar-right { gap:23px; }
.s2-topbar p { margin:0; font-size:10px; line-height:1.4; }
.s2-topbar a { text-decoration:none; }
.s2-topbar-cta { margin:0; }
.s2-topbar-cta .wp-block-button__link { padding:12px 23px; font-size:10px; text-transform:uppercase; letter-spacing:.025em; }
.s2-header { background:var(--sh-white); border-bottom:1px solid var(--sh-line); position:relative; z-index:10; }
.s2-header-inner { min-height:75px; display:flex; align-items:center; justify-content:space-between; gap:35px; }
.s2-brand { display:flex; align-items:center; gap:12px; flex:0 1 auto; min-width:0; }
.s2-logo-icon { margin:0; width:48px; flex:0 0 48px; }
.s2-logo-icon img { display:block; width:48px; height:48px; object-fit:contain; }
.s2-brand-name { margin:0; font:400 19px/1.17 var(--sh-serif); letter-spacing:-.015em; }
.s2-brand-name a { text-decoration:none; }
.s2-brand-tagline { display:block; margin-top:5px; font:500 9px/1.5 var(--sh-sans); letter-spacing:.16em; }
.s2-nav { flex-shrink:0; }
.s2-nav .wp-block-navigation__container { gap:25px; }
.s2-nav .wp-block-navigation-item__content { text-decoration:none; font-size:12px; font-weight:600; padding:8px 0; }
.s2-nav .wp-block-navigation-item__content:hover { color:#8e6237; }
.s2-nav .current-menu-item > .wp-block-navigation-item__content { text-decoration:underline; text-decoration-color:var(--sh-brass); text-underline-offset:8px; }

/* Hero is live text over an independent, decorative SVG architectural scene. */
.s2-hero { background:var(--sh-navy); color:var(--sh-white); position:relative; isolation:isolate; overflow:hidden; }
.s2-hero-bg,.s2-cta-bg { position:absolute; inset:0; width:100%; height:100%; margin:0; z-index:-2; }
.s2-hero-bg img,.s2-cta-bg img { width:100%; height:100%; object-fit:cover; display:block; }
.s2-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,24,38,.83) 0%,rgba(8,24,38,.7) 34%,rgba(8,24,38,.28) 68%,rgba(8,24,38,.1) 100%); z-index:-1; pointer-events:none; }
.s2-hero-content { padding-top:49px; padding-bottom:38px; min-height:438px; position:relative; }
.s2-hero .s2-eyebrow { color:#dfc08f; margin:0 0 12px; font-size:12px; }
.s2-hero-title { max-width:700px; margin:0 0 15px; font-size:clamp(39px,3.6vw,52px); line-height:1.04; letter-spacing:-.018em; text-wrap:balance; }
.s2-hero-lead { font-size:23px; line-height:1.35; margin:0 0 16px; max-width:700px; }
.s2-hero-body { color:#e4e9ee; max-width:585px; font-size:15px; line-height:1.6; margin:0 0 24px; }
.s2-hero-buttons { margin:0; align-items:center; }
.s2-hero-buttons .wp-block-button__link { min-height:46px; display:flex; align-items:center; text-transform:uppercase; letter-spacing:.025em; }
.s2-hero-buttons .is-style-outline .wp-block-button__link { text-transform:none; color:var(--sh-white); }
.s2-hero .s2-demo-note { color:#c6d0d9; font-size:9px; margin:12px 0 0; }

/* Four concise trust statements. */
.s2-trust-strip { background:var(--sh-mist); border-bottom:1px solid #e5e9ec; }
.s2-trust-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; padding-block:23px; }
.s2-trust-item { display:flex; gap:15px; align-items:center; min-width:0; padding:0 22px; border-right:1px solid #b7c1cb; }
.s2-trust-item:first-child { padding-left:0; }
.s2-trust-item:last-child { border:0; padding-right:0; }
.s2-trust-item > .wp-block-group { min-width:0; }

/* Practice cards retain independent Image, Heading, Paragraph and Link blocks. */
.s2-practices { background:var(--sh-white); padding-top:31px; padding-bottom:32px; }
.s2-practice-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:17px; }
.s2-practice-card.is-style-sharifov-card { border:1px solid var(--sh-line); background:var(--sh-white); box-shadow:0 3px 9px rgba(20,43,64,.065); padding:0; min-height:0; min-width:0; display:flex; flex-direction:column; }
.s2-card-image { margin:0; width:100%; }
.s2-card-image img { display:block; width:100%; height:auto; aspect-ratio:1.98; object-fit:cover; }
.s2-card-body { padding:18px 19px 19px; flex:1; display:flex; flex-direction:column; align-items:flex-start; }
.s2-card-body h3 { font-size:21px; line-height:1.2; letter-spacing:-.02em; margin:0 0 10px; }
.s2-card-body > p:not(.s2-card-link) { font-size:13px; line-height:1.5; color:var(--sh-muted); margin:0 0 17px; }
.s2-card-link { margin:auto 0 0; padding-top:0; color:#875d34; font-size:12px; font-weight:600; line-height:1.5; }

/* About: an unmistakably generic silhouette, real editable copy and values. */
.s2-about { background:var(--sh-paper); }
.s2-about-grid { display:grid; grid-template-columns:40% 42% 18%; min-height:325px; }
.s2-about-portrait { background:#35424a; position:relative; min-height:325px; color:var(--sh-white); overflow:hidden; isolation:isolate; }
.s2-attorney-image { position:absolute; inset:0; margin:0; width:100%; height:100%; z-index:-1; }
.s2-attorney-image img { display:block; width:62%; height:100%; object-fit:cover; object-position:center top; }
.s2-attorney-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(22,38,48,.18) 15%,rgba(22,38,48,.12) 35%,#35424a 69%); pointer-events:none; }
.s2-attorney-caption { width:47%; margin-left:auto; padding:63px 28px 25px 5px; position:relative; }
.s2-quote { font:400 22px/1.2 var(--sh-serif); margin:0 0 22px; }
.s2-quote-label { font-size:11px; line-height:1.65; color:#d7dce0; margin:0; padding-top:12px; border-top:1px solid #b8c1c6; max-width:180px; }
.s2-quote-role { font-size:10px; line-height:1.5; color:#d7dce0; margin:9px 0 0; }
.s2-about-copy { padding:28px 36px; align-self:center; }
.s2-about-copy .s2-eyebrow { margin-bottom:8px; }
.s2-about-copy h2 { font-size:31px; margin:0 0 15px; }
.s2-about-copy > p:not(.s2-eyebrow):not(.s2-demo-note) { font-size:13px; line-height:1.55; color:var(--sh-muted); margin:0 0 12px; }
.s2-about-copy .s2-demo-note { margin:10px 0 0; font-size:9px; }
.s2-about-copy .wp-block-buttons { margin:17px 0 0; }
.s2-about-copy .wp-block-button__link { padding:11px 22px; }
.s2-about-values { border-left:1px solid var(--sh-line); align-self:center; text-align:center; padding:12px 22px; }
.s2-about-values p { font-size:11px; line-height:1.65; text-transform:uppercase; letter-spacing:.035em; color:#677285; margin:0; }
.s2-about-values p + p { margin-top:23px; padding-top:23px; position:relative; }
.s2-about-values p + p::before { content:""; position:absolute; top:0; left:calc(50% - 12px); width:24px; height:1px; background:#aeb7bf; }

/* Demo data is labelled beside the values, never exposed as rating schema. */
.s2-results { position:relative; isolation:isolate; overflow:hidden; background:var(--sh-navy); color:var(--sh-white); padding:31px 0 32px; text-align:center; }
.s2-results-watermark { position:absolute; inset:auto auto -26px 0; width:310px; height:300px; margin:0; opacity:.12; z-index:-1; }
.s2-results-watermark img { height:100%; width:100%; object-fit:contain; object-position:left bottom; display:block; }
.s2-results .s2-eyebrow { color:#dfc08f; margin-bottom:4px; }
.s2-results h2 { font-size:31px; }
.s2-results .s2-demo-note { color:#c5d0d9; font-size:10px; margin:8px 0 0; }
.s2-metrics-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:21px; gap:0; }
.s2-metric { padding:0 35px; border-right:1px solid #556574; min-width:0; }
.s2-metric:last-child { border:0; }
.s2-metric-number { color:#d5b584; font:400 39px/1.05 var(--sh-serif); margin:0 0 5px; }
.s2-metric-label { font-size:14px; line-height:1.4; margin:0 0 10px; }
.s2-metric-copy { font-size:12px; line-height:1.55; color:#d0d8de; max-width:250px; margin:0 auto; }

.s2-reasons { padding:21px 0 26px; background:var(--sh-mist); }
.s2-reasons-title { font-size:12px; line-height:1.5; font-weight:500; letter-spacing:.035em; text-align:center; text-transform:uppercase; margin:0 0 19px; }
.s2-reasons-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; }
.s2-reason-item { display:flex; align-items:flex-start; gap:15px; min-width:0; }
.s2-reason-item + .s2-reason-item { border-left:1px solid #d4dce3; padding-left:24px; }
.s2-reason-item .s2-icon { flex-basis:41px; width:41px; }
.s2-reason-item .s2-icon img { width:41px; height:41px; }

/* Static, honest testimonial samples: no invented names, rating stars or slider. */
.s2-testimonials { background:var(--sh-white); padding-top:33px; padding-bottom:31px; }
.s2-testimonials h2 { margin:0 0 20px; font-size:31px; }
.s2-testimonial-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px; }
.s2-testimonial-card { border:1px solid var(--sh-line); padding:18px 24px 20px; min-width:0; display:flex; flex-direction:column; }
.s2-quote-mark { font:400 46px/.75 var(--sh-serif); color:var(--sh-navy); height:25px; margin:0; }
.s2-testimonial-copy { font-size:13px; line-height:1.55; font-style:italic; color:var(--sh-muted); margin:0 0 15px; }
.s2-testimonial-label { font:500 10px/1.5 var(--sh-sans); letter-spacing:.07em; color:#8d683e; text-transform:uppercase; padding-top:11px; border-top:1px solid #e6e9ec; margin:auto 0 0; }
.s2-testimonials .s2-demo-note { text-align:center; margin:12px 0 0; }

/* Compact article preview strip. */
.s2-insights { background:var(--sh-mist); padding:25px 0; }
.s2-insights-layout { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,2fr); gap:28px; align-items:center; }
.s2-insights-intro h2 { font-size:29px; margin:0 0 10px; }
.s2-insights-intro > p:not(.s2-eyebrow):not(.s2-card-link) { font-size:12px; line-height:1.5; color:var(--sh-muted); margin:0 0 11px; max-width:330px; }
.s2-insights-intro .s2-eyebrow { font-size:11px; margin-bottom:5px; }
.s2-insight-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.s2-insight-card { display:grid; grid-template-columns:38% minmax(0,1fr); background:var(--sh-white); min-width:0; border:1px solid #e6eaed; }
.s2-insight-image { width:100%; height:100%; margin:0; }
.s2-insight-image img { display:block; width:100%; height:100%; min-height:161px; object-fit:cover; }
.s2-insight-copy { padding:13px 10px; min-width:0; display:flex; flex-direction:column; }
.s2-insight-date { font:400 9px/1.4 var(--sh-sans); color:#727c88; margin:0 0 9px; }
.s2-insight-copy h3 { font:600 12px/1.42 var(--sh-sans); letter-spacing:-.01em; margin:0 0 15px; }
.s2-insight-copy .s2-card-link { font-size:10px; margin:auto 0 0; }
.s2-insight-preview { margin:auto 0 0; }
.s2-insight-preview summary { color:#875d34; font:600 10px/1.5 var(--sh-sans); cursor:pointer; list-style:none; padding-block:4px; }
.s2-insight-preview summary::-webkit-details-marker { display:none; }
.s2-insight-preview summary:hover { text-decoration:underline; }
.s2-insight-preview summary:focus-visible { outline:2px solid var(--sh-brass); outline-offset:4px; }
.s2-insight-preview[open] summary { margin-bottom:9px; }
.s2-insight-preview p { margin:0; padding-top:9px; border-top:1px solid var(--sh-line); color:var(--sh-muted); font-size:11px; line-height:1.6; }

.s2-cta { position:relative; isolation:isolate; overflow:hidden; background:var(--sh-navy); color:var(--sh-white); }
.s2-cta::after { content:""; position:absolute; inset:0; background:rgba(10,29,45,.55); z-index:-1; }
.s2-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:45px; min-height:172px; padding:25px 80px; }
.s2-cta-copy h2 { font-size:38px; margin:0 0 10px; }
.s2-cta-copy p { color:#e5e9ee; font-size:14px; line-height:1.5; margin:0; }
.s2-cta-actions { flex-shrink:0; text-align:center; }
.s2-cta-actions .wp-block-buttons { justify-content:center; }
.s2-cta-actions .wp-block-button__link { text-transform:uppercase; font-size:11px; }
.s2-cta-phone { font-size:15px; line-height:1.4; margin:12px 0 0; }
.s2-cta-phone a { text-decoration:none; }
.s2-cta-actions .s2-demo-note { color:#c3ced6; font-size:9px; margin:5px 0 0; }

.s2-footer { background:#0c2031; color:#e7ecf0; padding:30px 0 21px; border-top:1px solid #415060; }
.s2-footer-grid { display:grid; grid-template-columns:2.1fr 1.1fr 1fr 1.2fr; gap:45px; }
.s2-footer .s2-brand { margin:0 0 16px; }
.s2-footer .s2-brand-name { font-size:16px; }
.s2-footer .s2-brand-tagline { font-size:8px; letter-spacing:.12em; }
.s2-footer .s2-logo-icon { width:42px; flex-basis:42px; }
.s2-footer .s2-logo-icon img { width:42px; height:42px; }
.s2-footer-grid > .wp-block-group:first-child > p { max-width:360px; color:#c6d0d8; font-size:11px; line-height:1.65; margin:0 0 10px; }
.s2-footer-column h3 { font:600 12px/1.4 var(--sh-sans); margin:1px 0 13px; }
.s2-footer-column p { font-size:11px; line-height:1.6; color:#c6d0d8; margin:0 0 4px; }
.s2-footer a { text-decoration:none; }
.s2-footer a:hover { text-decoration:underline; color:var(--sh-brass); }
.s2-footer-bottom { border-top:1px solid #354655; padding-top:16px; margin-top:23px; display:flex; justify-content:space-between; gap:25px; align-items:flex-start; }
.s2-footer-bottom p { margin:0; font-size:9px; line-height:1.6; color:#b6c2cc; }
.s2-footer-bottom p:last-child { text-align:right; max-width:490px; }
.s2-footer-disclaimer { margin:12px 0 0; color:#aabac6; font-size:9px; line-height:1.6; max-width:1000px; }

/* Basic templates and earlier reusable content remain readable. */
.document-main { padding:60px 32px 80px; min-height:52vh; }
.document-main > * { max-width:780px; margin-inline:auto; }
.document-main h1 { margin-top:0; }
.post-card { padding:30px 0; border-bottom:1px solid var(--sh-line); }
.post-navigation { display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; margin-top:40px; }
.wp-block-query-pagination { margin-top:30px; }
.section-inner { width:min(1180px,calc(100% - 80px)); margin-inline:auto; }
.section { padding-block:54px; }
.eyebrow { font:500 12px/1.5 var(--sh-sans); letter-spacing:.07em; text-transform:uppercase; }
.is-style-sharifov-card { padding:26px; border:1px solid var(--sh-line); }

@media (min-width:1600px) {
  .s2-about-grid { grid-template-columns:minmax(0,1fr) minmax(0,640px) minmax(0,260px); }
  .s2-about-copy { padding-inline:42px; }
}
@media (max-width:1199px) {
  .s2-container { width:calc(100% - 64px); }
  .s2-wide { width:calc(100% - 48px); }
  .s2-header-inner { gap:23px; }
  .s2-brand-name { font-size:17px; }
  .s2-brand-tagline { font-size:8px; }
  .s2-nav .wp-block-navigation__container { gap:19px; }
  .s2-nav .wp-block-navigation-item__content { font-size:11px; }
  .s2-trust-item { gap:11px; padding-inline:16px; }
  .s2-trust-item .s2-icon { width:32px; flex-basis:32px; }
  .s2-trust-item .s2-icon img { width:32px; height:32px; }
  .s2-item-title { font-size:12px; }
  .s2-item-copy { font-size:11px; }
  .s2-practice-grid { gap:13px; }
  .s2-card-body { padding:16px 14px; }
  .s2-card-body h3 { font-size:19px; }
  .s2-card-body > p:not(.s2-card-link) { font-size:12px; }
  .s2-about-grid { grid-template-columns:38% 44% 18%; }
  .s2-about-copy { padding:27px; }
  .s2-about-copy h2 { font-size:28px; }
  .s2-attorney-caption { width:49%; padding-right:16px; }
  .s2-quote { font-size:19px; }
  .s2-about-values { padding-inline:15px; }
  .s2-about-values p { font-size:10px; }
  .s2-reasons-grid { gap:20px; }
  .s2-reason-item { gap:11px; }
  .s2-reason-item + .s2-reason-item { padding-left:18px; }
  .s2-reason-item .s2-icon { width:34px; flex-basis:34px; }
  .s2-reason-item .s2-icon img { width:34px; height:34px; }
  .s2-insights-layout { grid-template-columns:minmax(0,1fr) minmax(0,2.4fr); gap:23px; }
  .s2-insights-intro h2 { font-size:25px; }
  .s2-insight-grid { gap:11px; }
  .s2-insight-card { grid-template-columns:minmax(0,1fr); }
  .s2-insight-image { height:83px; }
  .s2-insight-image img { min-height:0; object-position:center; }
  .s2-insight-copy { padding:11px 12px; }
  .s2-insight-copy h3 { min-height:50px; margin-bottom:10px; }
  .s2-cta-inner { padding-inline:38px; }
  .s2-footer-grid { gap:28px; }
  .s2-footer .s2-brand-name { font-size:14px; }
}
@media (max-width:1050px) {
  .s2-practice-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
  .s2-card-image img { aspect-ratio:2.2; }
  .s2-card-body { padding:19px; }
  .s2-card-body h3 { font-size:22px; }
  .s2-card-body > p:not(.s2-card-link) { font-size:13px; }
  .s2-about-grid { grid-template-columns:42% 58%; }
  .s2-about-values { grid-column:1/-1; border-left:0; border-top:1px solid var(--sh-line); display:flex; justify-content:center; align-items:center; gap:35px; padding:18px 30px; }
  .s2-about-values p { flex:1; max-width:260px; font-size:11px; }
  .s2-about-values p + p { padding-top:0; padding-left:35px; margin:0; border-left:1px solid #bdc4cb; }
  .s2-about-values p + p::before { display:none; }
  .s2-attorney-caption { padding-top:65px; }
}
@media (max-width:900px) {
  .s2-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none!important; }
  .s2-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display:flex!important; padding:9px; }
  .s2-nav .wp-block-navigation__responsive-container.is-menu-open { background:var(--sh-white)!important; color:var(--sh-ink)!important; padding:30px; }
  .s2-nav .is-menu-open .wp-block-navigation__responsive-container-content { align-items:flex-start!important; padding-top:65px; }
  .s2-nav .is-menu-open .wp-block-navigation__container { gap:17px!important; align-items:flex-start!important; }
  .s2-nav .is-menu-open .wp-block-navigation-item__content { font-size:24px; font-weight:400; }
  .s2-nav .wp-block-navigation__responsive-container-close { padding:9px; }
  .s2-topbar-left { gap:17px; }
  .s2-topbar-right { gap:15px; }
  .s2-topbar-right > p { display:none; }
  .s2-hero-title { max-width:590px; font-size:46px; }
  .s2-hero-content { min-height:415px; }
  .s2-hero-body { max-width:520px; }
  .s2-trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:23px; }
  .s2-trust-item { padding-left:0; padding-right:22px; }
  .s2-trust-item:nth-child(2n) { border:0; padding-left:25px; padding-right:0; }
  .s2-trust-item .s2-item-title { font-size:13px; }
  .s2-trust-item .s2-item-copy { font-size:12px; }
  .s2-reasons-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px 32px; }
  .s2-reason-item + .s2-reason-item { padding:0; border:0; }
  .s2-reason-item .s2-item-title { font-size:13px; }
  .s2-reason-item .s2-item-copy { font-size:12px; }
  .s2-testimonial-card { padding:18px; }
  .s2-testimonial-copy { font-size:12px; }
  .s2-insights-layout { display:block; }
  .s2-insights-intro { margin-bottom:20px; }
  .s2-insights-intro > p:not(.s2-eyebrow):not(.s2-card-link) { max-width:560px; }
  .s2-insight-card { grid-template-columns:35% minmax(0,1fr); }
  .s2-insight-image { height:100%; }
  .s2-insight-copy h3 { min-height:0; }
  .s2-cta-inner { padding:28px 0; gap:25px; }
  .s2-cta-copy h2 { font-size:33px; }
  .s2-cta-copy p { font-size:12px; }
  .s2-footer-grid { grid-template-columns:1.5fr 1fr; gap:26px 55px; }
  .s2-footer .s2-brand-name { font-size:17px; }
}
@media (max-width:680px) {
  .s2-container,.section-inner { width:calc(100% - 40px); }
  .s2-wide { width:calc(100% - 40px); }
  .s2-topbar-inner { min-height:32px; gap:8px; }
  .s2-topbar-left > p:nth-child(n+2) { display:none; }
  .s2-topbar p { font-size:9px; }
  .s2-topbar-cta .wp-block-button__link { font-size:9px; padding:10px 13px; }
  .s2-header-inner { min-height:75px; gap:14px; }
  .s2-brand { gap:8px; }
  .s2-logo-icon { width:39px; flex-basis:39px; }
  .s2-logo-icon img { width:39px; height:39px; }
  .s2-brand-name { font-size:15px; }
  .s2-brand-tagline { font-size:7px; letter-spacing:.09em; margin-top:4px; }
  .s2-hero-content { padding:39px 0 32px; min-height:0; }
  .s2-hero-bg img { object-position:65% center; }
  .s2-hero::after { background:rgba(8,24,38,.73); }
  .s2-hero-title { font-size:clamp(35px,6.7vw,43px); line-height:1.08; max-width:570px; margin-bottom:16px; }
  .s2-hero .s2-eyebrow { font-size:10px; margin-bottom:14px; letter-spacing:.055em; }
  .s2-hero-lead { font-size:20px; margin-bottom:16px; }
  .s2-hero-body { font-size:14px; max-width:510px; margin-bottom:24px; }
  .s2-hero-buttons { gap:12px; }
  .s2-hero-buttons .wp-block-button__link { font-size:11px; padding:13px 18px; }
  .s2-hero .s2-demo-note { max-width:420px; font-size:9px; }
  .s2-trust-grid { padding-block:22px; gap:22px 18px; }
  .s2-trust-item,.s2-trust-item:nth-child(2n) { border:0; padding:0; gap:10px; align-items:flex-start; }
  .s2-trust-item .s2-item-title { font-size:12px; }
  .s2-trust-item .s2-item-copy { font-size:11px; }
  .s2-trust-item .s2-icon { flex-basis:28px; width:28px; }
  .s2-trust-item .s2-icon img { width:28px; height:28px; }
  .s2-practices { padding-block:31px; }
  .s2-heading-row { display:block; }
  .s2-section h2,.s2-about h2,.s2-results h2,.s2-insights h2 { font-size:29px; }
  .s2-view-link { margin:13px 0 0; font-size:11px; }
  .s2-practice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .s2-card-body { padding:16px; }
  .s2-card-body h3 { font-size:21px; }
  .s2-card-body > p:not(.s2-card-link) { font-size:12px; }
  .s2-card-image img { aspect-ratio:1.7; }
  .s2-about-grid { display:block; }
  .s2-about-portrait { min-height:330px; }
  .s2-attorney-image img { object-position:center top; }
  .s2-attorney-caption { max-width:280px; padding:65px 30px 25px 0; }
  .s2-quote { font-size:25px; }
  .s2-quote-label { font-size:11px; }
  .s2-about-copy { padding:31px 25px; }
  .s2-about-copy > p:not(.s2-eyebrow):not(.s2-demo-note) { font-size:14px; }
  .s2-about-values { gap:15px; padding:20px; }
  .s2-about-values p { font-size:9px; }
  .s2-about-values p + p { padding-left:15px; }
  .s2-results { padding:31px 0; }
  .s2-metrics-grid { gap:0; margin-top:25px; }
  .s2-metric { padding:0 15px; }
  .s2-metric-number { font-size:34px; }
  .s2-metric-label { font-size:12px; }
  .s2-metric-copy { font-size:11px; line-height:1.5; }
  .s2-results-watermark { width:250px; opacity:.09; }
  .s2-reasons { padding:25px 0; }
  .s2-reasons-title { font-size:11px; max-width:380px; margin-inline:auto; }
  .s2-reasons-grid { gap:24px 20px; }
  .s2-reason-item { gap:10px; }
  .s2-reason-item .s2-icon { width:30px; flex-basis:30px; }
  .s2-reason-item .s2-icon img { width:30px; height:30px; }
  .s2-reason-item .s2-item-title { font-size:12px; }
  .s2-reason-item .s2-item-copy { font-size:11px; }
  .s2-testimonial-grid { grid-template-columns:minmax(0,1fr); gap:15px; }
  .s2-testimonial-card { padding:23px; }
  .s2-testimonial-copy { font-size:14px; }
  .s2-testimonial-label { font-size:10px; }
  .s2-testimonials .s2-demo-note { text-align:left; }
  .s2-insights { padding:30px 0; }
  .s2-insights-intro { margin-bottom:22px; }
  .s2-insight-grid { grid-template-columns:minmax(0,1fr); gap:15px; }
  .s2-insight-card { grid-template-columns:31% minmax(0,1fr); }
  .s2-insight-image { min-height:132px; }
  .s2-insight-copy { padding:16px 19px; }
  .s2-insight-copy h3 { font-size:15px; max-width:320px; margin-bottom:13px; }
  .s2-insight-date { font-size:10px; }
  .s2-insight-copy .s2-card-link,.s2-insight-preview summary { font-size:11px; }
  .s2-insight-preview p { font-size:12px; }
  .s2-cta-inner { display:block; padding-block:34px; }
  .s2-cta-copy h2 { font-size:35px; }
  .s2-cta-copy p { font-size:14px; }
  .s2-cta-actions { margin-top:25px; text-align:left; }
  .s2-cta-actions .wp-block-buttons { justify-content:flex-start; }
  .s2-cta-phone { margin-top:14px; }
  .s2-footer { padding-block:30px 22px; }
  .s2-footer-grid { grid-template-columns:1fr 1fr; gap:25px 24px; }
  .s2-footer-grid > .wp-block-group:first-child { grid-column:1/-1; }
  .s2-footer-column h3 { font-size:13px; }
  .s2-footer-column p { font-size:12px; }
  .s2-footer-grid > .wp-block-group:first-child > p { font-size:12px; }
  .s2-footer-bottom { display:block; margin-top:27px; }
  .s2-footer-bottom p:last-child { text-align:left; margin-top:10px; }
  .document-main { padding:40px 22px 55px; }
}
@media (max-width:420px) {
  .s2-container,.s2-wide,.section-inner { width:calc(100% - 36px); }
  .s2-brand-name { font-size:13px; }
  .s2-brand-tagline { font-size:6px; letter-spacing:.065em; }
  .s2-logo-icon { width:34px; flex-basis:34px; }
  .s2-logo-icon img { width:34px; height:34px; }
  .s2-header-inner { min-height:68px; gap:7px; }
  .s2-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { padding:6px; }
  .s2-hero-title { font-size:36px; }
  .s2-hero-lead { font-size:18px; }
  .s2-hero-buttons { align-items:stretch; flex-direction:column; max-width:325px; }
  .s2-hero-buttons .wp-block-button { width:100%; }
  .s2-hero-buttons .wp-block-button__link { justify-content:center; width:100%; }
  .s2-trust-grid { column-gap:16px; }
  .s2-trust-item { gap:8px; }
  .s2-trust-item .s2-icon { width:24px; flex-basis:24px; }
  .s2-trust-item .s2-icon img { width:24px; height:24px; }
  .s2-trust-item .s2-item-title { font-size:11px; }
  .s2-trust-item .s2-item-copy { font-size:10px; }
  .s2-practice-grid { grid-template-columns:minmax(0,1fr); }
  .s2-card-image img { aspect-ratio:2.15; }
  .s2-card-body { padding:20px 22px; }
  .s2-card-body h3 { font-size:25px; }
  .s2-card-body > p:not(.s2-card-link) { font-size:14px; }
  .s2-card-link { font-size:12px; }
  .s2-about-portrait { min-height:300px; }
  .s2-attorney-caption { padding-top:56px; padding-right:20px; width:48%; }
  .s2-quote { font-size:21px; }
  .s2-about-copy { padding-inline:22px; }
  .s2-about-values { gap:10px; padding-inline:17px; }
  .s2-about-values p { font-size:8px; }
  .s2-about-values p + p { padding-left:10px; }
  .s2-metrics-grid { grid-template-columns:minmax(0,1fr); gap:23px; }
  .s2-metric { border-right:0; padding:0 20px 23px; border-bottom:1px solid #4a5a6a; }
  .s2-metric:last-child { border:0; padding-bottom:0; }
  .s2-metric-number { font-size:40px; }
  .s2-metric-label { font-size:14px; }
  .s2-metric-copy { font-size:12px; max-width:280px; }
  .s2-reasons-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
  .s2-reason-item { align-items:center; gap:17px; }
  .s2-reason-item .s2-icon { width:36px; flex-basis:36px; }
  .s2-reason-item .s2-icon img { width:36px; height:36px; }
  .s2-reason-item .s2-item-title { font-size:13px; }
  .s2-reason-item .s2-item-copy { font-size:12px; }
  .s2-footer-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .s2-footer-grid > .wp-block-group:first-child { grid-column:auto; }
  .s2-footer .s2-brand-name { font-size:15px; }
}
@media (max-width:350px) {
  .s2-container,.s2-wide,.section-inner { width:calc(100% - 28px); }
  .s2-brand-name { font-size:12px; }
  .s2-brand-tagline { font-size:5.5px; }
  .s2-logo-icon { width:30px; flex-basis:30px; }
  .s2-logo-icon img { width:30px; height:30px; }
  .s2-hero-title { font-size:32px; }
  .s2-hero-lead { font-size:17px; }
  .s2-hero-body { font-size:13px; }
  .s2-trust-grid { grid-template-columns:minmax(0,1fr); gap:18px; }
  .s2-trust-item .s2-item-title { font-size:13px; }
  .s2-trust-item .s2-item-copy { font-size:12px; }
  .s2-trust-item .s2-icon { width:29px; flex-basis:29px; }
  .s2-trust-item .s2-icon img { width:29px; height:29px; }
  .s2-attorney-caption { width:48%; }
  .s2-quote { font-size:19px; }
  .s2-quote-label { font-size:10px; }
  .s2-footer .s2-brand-name { font-size:13px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .wp-block-button .wp-block-button__link { transition:none; }
}
