/* RUUD Web security: open layouts, warm metal, readable reports. */
.security-page { --sec-green:#a6cbb0; --sec-red:#ecaaa0; --sec-amber:#e4c17e; --sec-blue:#abc5dc; --sec-rule:#ffffff1b; }
.studio .security-page .overline { font-size:14px; color:#c5baa4; margin-bottom:20px; }
.security-page .sec-mono { font-family:Consolas,monospace; font-size:13px; letter-spacing:.015em; overflow-wrap:anywhere; }
.studio .security-page .sec-small { font-size:14px; line-height:1.7; color:var(--studio-muted); }
.security-page :is(.sec-full-grid,.sec-portal-layout,.sec-score-layout,.sec-test-layout) > * { min-width:0; }
.security-hero { padding:48px 0 0; overflow:hidden; }
.security-hero-grid { display:grid; grid-template-columns:1.14fr 1fr; align-items:center; gap:25px; }
.studio .security-hero h1 { font-size:clamp(46px,5.25vw,78px); letter-spacing:-.055em; margin:0 0 27px; line-height:1.08; }
.security-hero-copy { position:relative; z-index:1; padding:28px 0 42px; }
.security-hero-copy > p { max-width:545px; font-size:18px; line-height:1.8; }
.security-hero-copy .sec-actions { gap:14px 24px; margin-top:29px; }
.studio .security-hero-copy .sec-hero-note { font-size:13px; margin:19px 0 0; color:#aaa69f; }
.security-visual { width:116%; margin:-20px -8% 0; pointer-events:none; }
.security-visual img { display:block; width:100%; height:auto; mask-image:radial-gradient(ellipse 55% 55% at 50% 48%,#000 50%,transparent 94%); }
.sec-page-nav { display:flex; align-items:center; gap:40px; border-top:1px solid var(--sec-rule); }
.sec-page-nav a { display:flex; align-items:center; justify-content:space-between; gap:30px; text-decoration:none; padding:22px 0; font-size:14px; color:#c1bfb9; }
.sec-page-nav a:hover { color:var(--studio-gold); }
.sec-page-nav a > span { color:var(--studio-gold); }
.studio .security-test { padding:74px 0 82px; border-block:1px solid var(--sec-rule); background:#101113; }
.security-test-heading { display:flex; align-items:end; justify-content:space-between; gap:70px; margin-bottom:42px; }
.studio .security-test-heading h2 { font-size:clamp(36px,3.7vw,52px); margin:0; }
.security-test-heading > p { max-width:410px; font-size:16px; margin:0; line-height:1.8; }
.sec-test-layout { display:grid; grid-template-columns:minmax(0,1fr) 285px; align-items:center; gap:55px; }
.security-input-panel { margin:0; padding:0; }
.security-page label { display:block; font-size:14px; font-weight:500; margin-bottom:11px; color:var(--studio-text); }
.security-input-row { display:flex; align-items:center; gap:10px; padding:6px; border:1px solid #b9a47466; border-radius:9px; background:#ffffff03; }
.security-input-row:focus-within { border-color:var(--studio-gold); }
.security-page input:not([type=checkbox]),.security-page select { width:100%; min-width:0; border:1px solid #ffffff30; border-radius:6px; background:#0f1013; color:var(--studio-text); padding:14px 16px; font-size:16px; }
.security-page .security-input-row input { flex:1; border:0; background:transparent; padding:12px 5px; font-size:21px; border-radius:0; }
.sec-address-icon { color:var(--studio-gold); font-size:23px; margin-left:12px; }
.studio .security-page .security-input-row .btn { white-space:nowrap; min-height:52px; padding:13px 18px; gap:15px; font-size:15px; border-radius:5px; }
.studio .security-page .security-input-note { margin:14px 0 0; max-width:660px; color:#aaa9a4; font-size:13px; line-height:1.8; }
.sec-test-includes { border-left:1px solid var(--sec-rule); padding-left:30px; }
.sec-test-includes .detail-kicker { margin-bottom:12px; }
.sec-test-includes ul,.sec-deliverables { list-style:none; padding:0; margin:0; }
.sec-test-includes li { font-size:14px; color:#cbc8c0; padding:5px 0; }
.sec-test-includes li::before,.sec-deliverables li::before { content:'✓'; color:var(--studio-gold); margin-right:12px; }
.studio .security-page .sec-error { color:#f2b8b0; border-left:2px solid #cc756e; padding:14px 18px; background:#c2595010; margin-top:20px; }
.studio .security-page .sec-notice { border-left:2px solid #b9a474; padding:12px 18px; margin-top:22px; font-size:14px; line-height:1.8; color:#d7d2c6; }
.security-page button:disabled { opacity:.55; cursor:default; }
.sec-progress { display:flex; align-items:center; gap:22px; padding:27px 0; margin-top:30px; border-block:1px solid var(--sec-rule); }
.sec-progress p { font-size:14px; margin:5px 0 0; }
.sec-progress > .sec-mono { margin-left:auto; }
.sec-spinner { flex:0 0 25px; height:25px; border:2px solid #ecd08f22; border-top-color:var(--studio-gold); border-radius:50%; animation:sec-spin 1.1s linear infinite; }
@keyframes sec-spin { to { transform:rotate(360deg); } }
.sec-result { margin-top:65px; scroll-margin-top:125px; }
.sec-result-top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; border-bottom:1px solid var(--sec-rule); padding-bottom:22px; margin-bottom:36px; }
.studio .security-page .sec-result-top .overline { margin:0; }
.sec-score-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:55px; }
.sec-score-block { text-align:center; border-right:1px solid var(--sec-rule); padding-right:40px; }
.studio .sec-score-block h3 { margin:18px 0 8px; font-size:18px; letter-spacing:-.02em; }
.sec-score-block .sec-mono { color:var(--studio-muted); }
.sec-score-ring { position:relative; width:185px; height:185px; margin:auto; }
.sec-score-ring svg { width:100%; height:100%; transform:rotate(-90deg); fill:none; stroke:var(--studio-gold); stroke-width:4; stroke-linecap:round; }
.sec-score-ring .sec-ring-bg { stroke:#ffffff15; }
.sec-score-ring > div { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.sec-score-ring strong { font-size:66px; line-height:1; font-weight:500; letter-spacing:-.06em; font-variant-numeric:tabular-nums; }
.sec-score-ring span { font-size:13px; color:var(--studio-muted); margin-top:10px; }
.studio .sec-score-copy h2 { font-size:32px; margin:0 0 15px; }
.sec-score-copy > p { max-width:720px; font-size:16px; line-height:1.8; }
.sec-score-copy strong { font-size:14px; font-weight:500; color:#d8cfba; }
.sec-score-copy ul { padding-left:18px; margin:10px 0 23px; }
.sec-score-copy li { padding:4px 0; font-size:15px; color:#d6d3cb; }
.sec-score-copy li::marker { color:var(--studio-gold); }
.sec-score-copy li small { color:var(--studio-muted); margin-left:9px; white-space:nowrap; font-size:12px; }
.sec-actions { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.studio .security-page .sec-actions .btn { min-height:48px; font-size:14px; padding:12px 17px; gap:18px; }
.studio .security-page .text-link { font-size:15px; }
.sec-result-next { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:40px; border-block:1px solid #ecd08f38; padding:30px 0; margin:42px 0 65px; }
.sec-result-next .detail-kicker { margin-bottom:10px; }
.studio .sec-result-next h3 { font-size:25px; margin:0 0 12px; }
.sec-result-next p { font-size:15px; max-width:690px; margin:0; }
.sec-next-actions { display:flex; flex-direction:column; align-items:center; gap:9px; }
.studio .sec-result-next .btn { font-size:15px; min-height:50px; }
.sec-finding-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:27px; }
.studio .security-page .sec-finding-heading .overline { font-size:13px; margin-bottom:12px; }
.studio .sec-finding-heading h3,.studio .sec-finding-heading h2 { font-size:31px; margin:0; }
.sec-finding-heading > p { max-width:360px; margin:0; }
.sec-filters { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-block:1px solid var(--sec-rule); margin-bottom:20px; }
.studio .sec-filters button { display:flex; flex-direction:column; align-items:start; justify-content:center; gap:4px; min-height:96px; border:0; border-bottom:2px solid transparent; border-radius:0; color:var(--studio-muted); background:transparent; padding:17px 22px; font-size:13px; text-align:left; transition:background .15s,color .15s; }
.sec-filters button + button { border-left:1px solid var(--sec-rule); }
.sec-filters button strong { font-size:28px; line-height:1.2; font-weight:500; letter-spacing:-.025em; font-variant-numeric:tabular-nums; color:#e6e2d9; }
.studio .sec-filters button[aria-pressed=true] { border-bottom-color:var(--studio-gold); background:#ecd08f08; color:var(--studio-gold); }
.sec-filters button:hover { background:#ffffff04; }
.sec-filter-toolbar { display:flex; align-items:center; justify-content:space-between; gap:25px; margin:24px 0; }
.sec-filter-toolbar p { margin:0; }
.sec-filter-toolbar label { display:flex; align-items:center; gap:13px; margin:0; font-size:12px; color:var(--studio-muted); }
.security-page .sec-filter-toolbar select { width:auto; font-size:13px; padding:10px 32px 10px 12px; min-height:42px; }
.sec-findings { border-top:1px solid var(--sec-rule); }
.sec-finding { border-bottom:1px solid var(--sec-rule); }
.sec-finding > summary { display:grid; grid-template-columns:87px minmax(0,1fr) 24px; align-items:center; gap:20px; list-style:none; cursor:pointer; padding:22px 0; font-size:16px; font-weight:500; line-height:1.6; }
.sec-finding > summary::-webkit-details-marker { display:none; }
.sec-finding > summary:hover { color:var(--studio-gold); }
.sec-expand { text-align:right; font-size:23px; font-weight:300; }
.sec-finding[open] > summary .sec-expand { transform:rotate(45deg); }
.sec-severity { display:inline-block; color:#b7bcc7; font-size:11px; font-weight:500; letter-spacing:.015em; text-align:left; white-space:nowrap; }
.sec-severity::before { content:''; display:inline-block; width:5px; height:5px; background:currentColor; border-radius:50%; vertical-align:middle; margin:0 7px 2px 0; }
.severity-critical,.severity-high { color:var(--sec-red); }
.severity-medium { color:var(--sec-amber); }
.severity-low { color:var(--sec-blue); }
.severity-pass { color:var(--sec-green); }
.sec-finding-body { padding:0 30px 27px 107px; max-width:970px; }
.studio .sec-finding-body h3 { font-size:14px; letter-spacing:0; font-weight:600; margin:20px 0 8px; }
.sec-finding-body p { font-size:15px; line-height:1.85; overflow-wrap:anywhere; }
.sec-remedy { border-left:2px solid #bba473; padding:1px 20px; margin:24px 0; }
.sec-remedy h3 { margin-top:0; }
.sec-remedy p { margin-bottom:0; }
.sec-technical { margin-top:20px; }
.sec-technical summary,.sec-method summary { cursor:pointer; font-size:14px; color:var(--studio-text); padding:10px 0; line-height:1.7; }
.sec-technical p,.sec-technical dl { font:13px/1.8 Consolas,monospace; color:var(--studio-muted); overflow-wrap:anywhere; }
.sec-technical dl { display:grid; grid-template-columns:180px minmax(0,1fr); gap:5px 20px; }
.sec-technical dd { margin:0; }
.studio .sec-finding-body .text-link { font-size:13px; margin-top:15px; }
.sec-method { margin:30px 0 0; padding:15px 0; border-bottom:1px solid var(--sec-rule); }
.sec-method p { font-size:14px; line-height:1.85; margin-top:14px; max-width:900px; }
.sec-remediation,.sec-subscription { display:grid; grid-template-columns:.95fr 1.05fr; gap:85px; padding-top:65px; margin-top:65px; border-top:1px solid var(--sec-rule); }
.studio .sec-remediation h3,.studio .sec-subscription h3 { font-size:clamp(30px,3.2vw,46px); line-height:1.15; margin:0; }
.sec-remediation p,.sec-subscription p { max-width:540px; font-size:16px; line-height:1.9; }
.sec-remediation > div + div,.sec-subscription > div + div { padding-top:5px; }
.studio .security-full { padding-block:90px; }
.sec-full-grid { display:grid; grid-template-columns:1.12fr 1fr; gap:100px; }
.studio .sec-full-grid h2 { font-size:clamp(36px,3.85vw,55px); line-height:1.13; }
.sec-full-copy > p { max-width:570px; font-size:16px; line-height:1.85; }
.sec-deliverables { margin:25px 0 33px; }
.sec-deliverables li { font-size:14px; line-height:1.75; padding:8px 0; }
.sec-full-order { display:flex; align-items:center; flex-wrap:wrap; gap:22px 32px; border-top:1px solid var(--sec-rule); padding-top:25px; }
.studio .security-page .sec-price { color:var(--studio-gold); font-size:21px; letter-spacing:-.02em; margin:0; }
.sec-price span { display:block; font-size:12px; letter-spacing:0; color:var(--studio-muted); margin-top:7px; }
.sec-process-wrap { border-left:1px solid var(--sec-rule); padding-left:55px; }
.sec-process-wrap > .detail-kicker { margin:3px 0 32px; }
.sec-process { list-style:none; margin:0; padding:0; }
.sec-process li { display:grid; grid-template-columns:32px minmax(0,1fr); gap:23px; position:relative; padding-bottom:32px; }
.sec-process li::before { content:''; position:absolute; left:15px; top:38px; bottom:7px; width:1px; background:linear-gradient(#a3906950,#ffffff12); }
.sec-process li:last-child { padding-bottom:0; }
.sec-process li:last-child::before { content:none; }
.sec-process li > span { display:grid; place-items:center; border:1px solid #ecd08f45; border-radius:50%; color:#dec794; width:32px; height:32px; font-size:12px; font-variant-numeric:tabular-nums; }
.studio .sec-process h3 { font-size:20px; line-height:1.4; margin:1px 0 9px; }
.sec-process p { font-size:14px; line-height:1.8; margin:0; }
.studio .security-portal { border-block:1px solid var(--sec-rule); background:#101113; padding-block:85px; }
.sec-portal-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; }
.studio .sec-portal-intro h2 { font-size:clamp(38px,4.3vw,61px); }
.sec-portal-intro > p { max-width:390px; font-size:16px; line-height:1.9; }
.sec-portal-access { padding-top:8px; }
.sec-login-send { display:flex; align-items:center; gap:20px; flex-wrap:wrap; margin-top:20px; }
.studio .sec-login-send .btn { font-size:14px; min-height:50px; }
.studio .security-page .sec-cooldown { color:#dcc797; font-size:13px; font-variant-numeric:tabular-nums; margin:15px 0 0; }
#security-code-form { margin-top:27px; padding-top:27px; border-top:1px solid var(--sec-rule); }
#security-code-form > p { margin-top:13px; }
#security-code { letter-spacing:.2em; }
.sec-portal-card { border-top:1px solid var(--sec-rule); padding:40px 0 0; margin-top:45px; }
.sec-portal-card > h3 { font-size:30px; overflow-wrap:anywhere; }
.sec-portal-card > p,.sec-portal-card > details p { max-width:870px; font-size:15px; line-height:1.9; }
.sec-form-row { display:flex; align-items:center; gap:14px; }
.sec-form-row .btn { flex-shrink:0; }
.sec-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; max-width:850px; margin:25px 0; }
.sec-account-line { display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:15px; padding-bottom:23px; border-bottom:1px solid var(--sec-rule); }
.sec-account-line strong { display:block; overflow-wrap:anywhere; margin-top:4px; font-weight:500; }
.sec-account-line > div { min-width:0; }
.sec-account-line button { flex-shrink:0; }
.security-page button.text-link { background:none; color:inherit; border:0; border-bottom:1px solid #ffffff40; }
.sec-history { display:grid; gap:0; margin:20px 0; }
.sec-history button { display:block; width:100%; font-size:15px; text-align:left; padding:17px 0; border:0; border-bottom:1px solid var(--sec-rule); color:var(--studio-text); background:transparent; overflow-wrap:anywhere; }
.sec-history button:hover { color:var(--studio-gold); }
.sec-history button span { display:block; font-size:12px; color:var(--studio-muted); margin-top:4px; }
.sec-verification-tabs { display:flex; gap:9px; flex-wrap:wrap; margin:24px 0; }
.sec-verification-tabs button { border:1px solid var(--sec-rule); background:transparent; color:var(--studio-text); padding:10px 16px; border-radius:4px; font-size:14px; }
.sec-verification-tabs button[aria-pressed=true] { border-color:#bca36f; color:var(--studio-gold); }
.sec-code-row { display:flex; gap:15px; align-items:center; padding:15px; border:1px solid var(--sec-rule); border-radius:4px; margin:10px 0 20px; background:#0c0d11; max-width:920px; }
.sec-code-row code { display:block; white-space:pre-wrap; overflow-wrap:anywhere; min-width:0; flex:1; font-size:13px; color:var(--studio-gold); }
.sec-code-row button { background:#252629; color:var(--studio-text); border:1px solid var(--sec-rule); border-radius:3px; font-size:13px; padding:8px 13px; }
.sec-authorization { margin-top:30px; padding-top:25px; border-top:1px solid var(--sec-rule); max-width:870px; }
.sec-authorization label { display:flex; align-items:flex-start; gap:13px; font-size:14px; font-weight:400; line-height:1.85; }
.sec-authorization input { width:20px; height:20px; flex-shrink:0; margin-top:4px; accent-color:var(--studio-gold); }
.sec-authorization .btn { margin-top:17px; }
.sec-state { display:inline-block; padding:6px 10px; font-size:12px; color:var(--studio-gold); border:1px solid #ecd08f35; border-radius:4px; margin-bottom:20px; }
.sec-scope-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px; }
.sec-scope-grid article { border-top:1px solid var(--sec-rule); padding-top:24px; }
.studio .sec-scope-grid h3 { font-size:25px; margin:22px 0 17px; }
.sec-scope-grid p { font-size:15px; line-height:1.9; }
.studio .sec-web-report h1 { font-size:clamp(42px,5vw,66px); margin:35px 0 20px; }
.sec-report-summary { display:grid; grid-template-columns:220px minmax(0,1fr); align-items:center; gap:60px; margin:60px 0 40px; padding-block:35px; border-block:1px solid var(--sec-rule); }
.sec-report-number { font-size:85px; letter-spacing:-.065em; color:var(--studio-gold); }
.sec-report-number small { font-size:21px; letter-spacing:-.01em; color:var(--studio-muted); }
.studio .sec-report-summary h2 { font-size:32px; }
.sec-report-summary p { font-size:16px; }
.sec-report-nav { display:flex; flex-wrap:wrap; gap:35px; padding:0 0 25px; margin-bottom:50px; font-size:14px; }
.sec-report-method { padding-top:65px; max-width:950px; }
.studio .sec-report-method h2 { font-size:36px; }
.sec-report-method > p { font-size:16px; line-height:1.85; }

/* The homepage services share the open contact layout, without an enclosing card. */
.studio .home-service { border-top:1px solid #ffffff18; background:transparent; }
.studio .home-service-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:start; }
.studio .home-service-copy { padding-top:20px; }
.studio .home-service-copy h2 { font-size:clamp(42px,4.7vw,67px); line-height:1.12; }
.home-service-copy > p { max-width:400px; line-height:1.9; }
.studio .home-service .website-review { margin:0; padding:20px 0 0; border:0; background:transparent; box-shadow:none; max-width:530px; width:100%; justify-self:end; }
.studio .home-service .website-review h3 { font-size:28px; margin:0 0 28px; }
.studio .home-service .website-review label { font-size:14px; }
.studio .home-service .website-review .btn { width:auto; min-height:53px; font-size:15px; padding:14px 22px; margin-top:19px; }
.studio .home-service .website-review > p,.studio .home-service-note { font-size:13px; line-height:1.8; margin-top:16px; }
.security-home-note { max-width:530px; padding-top:20px; justify-self:end; }
.studio .security-home-note h3 { font-size:31px; margin:0 0 24px; }
.security-home-note > p { font-size:16px; line-height:1.9; }
.security-home-note .btn { margin-top:14px; }

@media(min-width:1001px) and (max-width:1200px) {
  .studio .site-nav { gap:18px; }
  .studio .site-nav>a { font-size:14px; }
}
@media(max-width:1100px) {
  .sec-test-layout { grid-template-columns:minmax(0,1fr) 255px; gap:30px; }
  .sec-test-includes { padding-left:23px; }
  .sec-full-grid,.sec-portal-layout,.sec-remediation,.sec-subscription,.studio .home-service-layout { gap:45px; }
  .sec-process-wrap { padding-left:30px; }
  .sec-score-layout { grid-template-columns:215px minmax(0,1fr); gap:30px; }
  .sec-score-block { padding-right:25px; }
  .sec-score-ring { width:165px; height:165px; }
  .security-hero-grid { grid-template-columns:1.2fr 1fr; }
  .sec-result-next { gap:25px; }
  .sec-test-layout .security-input-row { flex-wrap:wrap; }
  .sec-test-layout .security-input-row input { width:calc(100% - 55px); }
  .sec-test-layout .security-input-row .btn { width:100%; }
}
@media(max-width:760px) {
  .security-hero { padding-top:20px; }
  .security-hero-grid { grid-template-columns:minmax(0,1fr); gap:0; }
  .security-hero-copy { padding-block:25px 0; }
  .studio .security-hero h1 { font-size:clamp(41px,9.3vw,62px); }
  .security-hero-copy > p { font-size:16px; max-width:560px; }
  .security-hero-copy .sec-actions { align-items:flex-start; gap:12px 22px; }
  .security-visual { width:100%; max-width:470px; margin:-15px auto -30px; }
  .security-visual img { max-height:270px; object-fit:contain; mask-image:radial-gradient(ellipse 55% 59% at 50% 46%,#000 50%,transparent 94%); }
  .sec-page-nav { gap:0; justify-content:space-between; }
  .sec-page-nav a { font-size:12px; gap:8px; padding:18px 0; }
  .sec-page-nav a > span { display:none; }
  .studio .security-test { padding-block:48px 55px; }
  .security-test-heading { flex-direction:column; align-items:flex-start; gap:18px; margin-bottom:27px; }
  .security-test-heading > p { font-size:15px; max-width:none; }
  .sec-test-layout { grid-template-columns:minmax(0,1fr); gap:25px; }
  .sec-test-includes { border:0; padding:0; }
  .sec-test-includes .detail-kicker { display:none; }
  .sec-test-includes ul { display:flex; gap:7px 22px; flex-wrap:wrap; }
  .sec-test-includes li { font-size:12px; padding:0; }
  .sec-test-includes li::before { margin-right:7px; }
  .security-page .security-input-row input { font-size:20px; padding-block:10px; }
  .sec-result { margin-top:42px; }
  .sec-result-top { margin-bottom:28px; gap:8px; }
  .sec-score-layout { grid-template-columns:minmax(0,1fr); gap:25px; }
  .sec-score-block { display:flex; gap:25px; align-items:center; text-align:left; padding:0 0 25px; border-right:0; border-bottom:1px solid var(--sec-rule); }
  .sec-score-ring { width:132px; height:132px; margin:0; flex-shrink:0; }
  .sec-score-ring strong { font-size:49px; }
  .sec-score-ring span { font-size:12px; margin-top:6px; }
  .studio .sec-score-block h3 { margin:0 0 10px; font-size:19px; }
  .sec-score-copy > p { font-size:15px; }
  .studio .sec-score-copy h2 { font-size:28px; }
  .sec-result-next { grid-template-columns:minmax(0,1fr); gap:24px; margin:32px 0 42px; padding:27px 0; }
  .studio .sec-result-next h3 { font-size:24px; }
  .sec-next-actions { align-items:start; }
  .sec-next-actions .btn { width:100%; }
  .sec-next-actions .text-link { align-self:center; }
  .sec-finding-heading { flex-direction:column; align-items:start; gap:14px; }
  .studio .sec-finding-heading h3,.studio .sec-finding-heading h2 { font-size:28px; }
  .sec-finding-heading > p { max-width:none; }
  .sec-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .studio .sec-filters button { min-height:86px; padding:14px 16px; font-size:12px; }
  .sec-filters button:nth-child(3) { border-left:0; }
  .sec-filters button:nth-child(n+3) { border-top:1px solid var(--sec-rule); }
  .sec-filters button strong { font-size:26px; }
  .sec-filter-toolbar { flex-direction:column; align-items:stretch; gap:12px; margin:20px 0; }
  .sec-filter-toolbar label { justify-content:space-between; gap:10px; }
  .security-page .sec-filter-toolbar select { max-width:69%; }
  .sec-finding > summary { grid-template-columns:minmax(0,1fr) 22px; gap:7px 15px; font-size:15px; padding:18px 0; }
  .sec-finding > summary .sec-severity { grid-column:1; font-size:11px; }
  .sec-finding > summary > span:nth-child(2) { grid-column:1; }
  .sec-finding > summary .sec-expand { grid-column:2; grid-row:1 / 3; }
  .sec-finding-body { padding:0 0 22px; }
  .sec-technical dl { grid-template-columns:1fr; gap:4px; }
  .sec-technical dd { margin-bottom:9px; }
  .sec-remediation,.sec-subscription { grid-template-columns:1fr; gap:23px; padding-top:40px; margin-top:40px; }
  .studio .sec-remediation h3,.studio .sec-subscription h3 { font-size:35px; }
  .sec-remediation p,.sec-subscription p { font-size:15px; }
  .studio .security-full,.studio .security-portal { padding-block:55px; }
  .sec-full-grid,.sec-portal-layout,.studio .home-service-layout { grid-template-columns:minmax(0,1fr); gap:35px; }
  .studio .sec-full-grid h2 { font-size:37px; }
  .sec-full-copy > p { font-size:15px; }
  .sec-full-order { gap:22px; }
  .sec-full-order .btn { width:100%; }
  .sec-process-wrap { padding:30px 0 0; border-left:0; border-top:1px solid var(--sec-rule); }
  .sec-process li { gap:19px; padding-bottom:28px; }
  .studio .sec-process h3 { font-size:20px; }
  .sec-portal-intro > p { max-width:530px; }
  .sec-portal-access { padding:0; }
  .sec-form-row { flex-direction:column; align-items:stretch; }
  .sec-form-grid { grid-template-columns:1fr; gap:18px; }
  .sec-login-send { gap:13px; }
  .sec-login-send .btn { width:100%; }
  .sec-portal-card { padding-top:30px; margin-top:30px; }
  .sec-verification-tabs { gap:8px; }
  .sec-verification-tabs button { font-size:12px; padding:10px; }
  .sec-progress { flex-wrap:wrap; gap:15px; }
  .sec-progress > div { flex:1; }
  .sec-progress > .sec-mono { margin-left:40px; }
  .sec-scope-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .sec-scope-grid article { padding-top:22px; }
  .studio .sec-scope-grid h3 { margin:17px 0 13px; }
  .sec-report-summary { grid-template-columns:1fr; gap:18px; padding-block:25px; margin-top:35px; }
  .sec-report-number { font-size:70px; }
  .sec-report-nav { gap:15px 25px; }
  .studio .home-service-copy { padding-top:0; }
  .studio .home-service-copy h2 { font-size:42px; }
  .home-service-copy > p { max-width:540px; }
  .studio .home-service .website-review,.security-home-note { padding-top:0; max-width:none; justify-self:stretch; }
  .studio .home-service .website-review .btn { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .sec-spinner { animation:none; } }