@font-face{font-family:'Caveat';font-style:normal;font-weight:600;font-display:swap;src:url('vendor/caveat-latin-600.woff2') format('woff2')}body:has(#sv2) #header,body:has(#sv2) #footer{display:none}body:has(#sv2) #main,body:has(#sv2) #content{padding:0;max-width:none}#sv2{background:#111210;color:#dfdacd;font:15px/1.5 Arial,sans-serif;min-height:100vh;padding:20px clamp(18px,3vw,55px)}#sv2 *{box-sizing:border-box}#sv2 p{margin:0}#sv2 a{color:inherit;text-decoration:none}#sv2 .top{display:flex;align-items:center;justify-content:space-between;gap:22px;border-bottom:1px solid #39392f;padding-bottom:15px}#sv2 .logo{display:block;width:245px;height:76px;object-fit:contain}#sv2 .tools,#sv2 nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap}#sv2 nav{font-size:13px}#sv2 select{background:#20211c;color:#dfdacd;border:1px solid #56503e;border-radius:3px;font:13px Arial;padding:8px 28px 8px 10px;margin:0;height:auto;width:auto;box-shadow:none}#sv2 .intro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0 19px}#sv2 h1{font:600 clamp(26px,2.5vw,37px)/1.1 Arial;color:#e4c78e;margin:0 0 8px;letter-spacing:-.035em}#sv2 .quote{font-size:14px;color:#a8aa9f}#sv2 .filters{display:flex;gap:7px;flex-wrap:wrap}#sv2 button{background:transparent;border:1px solid #444438;border-radius:2px;color:#c8c4b7;padding:8px 13px;font:12px Arial;cursor:pointer;margin:0;min-height:36px;line-height:1.2;text-transform:none;letter-spacing:0}#sv2 button[aria-pressed=true]{background:#363024;border-color:#a58850;color:#edd3a3}#sv2 .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,285px),1fr));gap:16px;align-items:start}#sv2 .card{border:1px solid #3b3b31;background:#1c1d18;border-radius:3px;overflow:hidden;min-width:0}#sv2 .cover{width:100%;height:130px;display:block;object-fit:cover;object-position:top;background:#25271f}#sv2 .cover.conan{object-position:center}#sv2 .placeholder{height:8px;background:#30372b;font-size:0;color:transparent}#sv2 .copy{padding:16px}#sv2 .meta{display:flex;justify-content:space-between;gap:10px;font:10px Arial;letter-spacing:.09em;text-transform:uppercase;color:#aaa58f}#sv2 .status{color:#c8ae77}#sv2 h2{font:600 21px/1.15 Arial;color:#e2c58d;margin:12px 0 9px;letter-spacing:-.025em}#sv2 .desc{color:#b4b6aa;font-size:13px;min-height:39px}#sv2 .links{display:flex;gap:17px;margin-top:13px;font-size:12px;color:#ddc18c}#sv2 .links a{padding:4px 0;border-bottom:1px solid #5b513a}#sv2 .pending{font-size:12px;color:#8d9385;padding:4px 0}#sv2 footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0 2px;color:#8e9487;font-size:11px}#sv2 [hidden]{display:none!important}#sv2 a:focus-visible,#sv2 button:focus-visible,#sv2 select:focus-visible{outline:2px solid #e4c78e;outline-offset:4px}@media(max-width:950px){#sv2 .intro{align-items:start;flex-direction:column}#sv2 .tools{gap:12px}#sv2 nav{gap:15px}}@media(max-width:600px){#sv2 .top{align-items:start;flex-direction:column;gap:14px}#sv2 .logo{width:220px;height:68px}#sv2 .tools{width:100%;justify-content:space-between}#sv2 .intro{padding:20px 0}#sv2 .cover{height:140px}#sv2 footer{align-items:start;flex-direction:column}}#sv2 .visual{position:relative;aspect-ratio:16/9;overflow:hidden;background:#24281f}#sv2 .visual .cover{width:100%;height:100%;object-fit:cover;display:block}#sv2 .visual:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0009,transparent 32%,transparent 57%,#000c)}#sv2 .visual .meta{position:absolute;inset:12px 12px auto;z-index:1;margin:0;color:#f0e6d1;font-size:10px}#sv2 .visual .meta span{background:#141610df;padding:5px 7px;border:1px solid #ffffff26;border-radius:2px}#sv2 .visual .status{color:#ead1a0}#sv2 .visual .links{position:absolute;inset:auto 12px 11px;z-index:1;margin:0;gap:8px;flex-wrap:wrap}#sv2 .visual .links a{padding:7px 10px;background:#13150fea;border:1px solid #c7aa6d88;border-radius:2px;color:#f1d69f;min-height:34px}#sv2 .copy{padding:14px 16px 16px}#sv2 .copy h2{margin:0 0 8px}#sv2 .visual .placeholder{height:100%;background:linear-gradient(145deg,#2e3628,#1b2019);font-size:15px;color:#8b947f;display:flex;align-items:center;justify-content:center;padding:24px}#sv2 .no-image .visual{aspect-ratio:auto;min-height:78px}#sv2 .no-image .visual .placeholder{display:none}#sv2 .no-image .visual .links{bottom:8px}#sv2 .no-image .visual .meta{top:8px}#sv2 .no-image .visual:after{display:none}#sv2 .grid{align-items:stretch}#sv2 .pending{color:#aeb5a2}@media(max-width:600px){#sv2 .visual .cover{height:100%}}#sv2{--bg:#111210;--panel:#1c1d18;--line:#444034;--text:#dfdacd;--muted:#b4b6aa;--accent:#e4c78e;background:var(--bg);color:var(--text)}#sv2[data-theme=light]{--bg:#ece5d6;--panel:#e3dac7;--line:#bcb098;--text:#292d25;--muted:#565d4d;--accent:#705326;color-scheme:light}#sv2 .masthead4{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:30px;align-items:center;padding:6px 0 25px}#sv2 .masthead4 h1{font:600 clamp(40px,4.2vw,70px)/1.05 'Caveat','Segoe Print',cursive;letter-spacing:-.025em;color:var(--accent);margin:0 0 9px}#sv2 .masthead4 .quote{color:var(--muted)}#sv2 .brand4{justify-self:end;display:block}#sv2 .brand4 img{display:block;width:260px;height:100px;object-fit:cover;object-position:center}#sv2 .layout4{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:start}#sv2 .projects4{min-width:0}#sv2 .projects4 .filters{margin:0 0 18px}#sv2 .side4{position:sticky;top:48px;background:var(--panel);border:1px solid var(--line);padding:22px;border-radius:4px}#sv2 .side4 h2{font:600 22px/1.1 Arial;color:var(--accent);margin:0 0 20px}#sv2 .side4 nav{display:grid;gap:9px}#sv2 .side4 nav a{display:block;border:1px solid var(--line);padding:11px 13px;color:var(--text);font-size:13px}#sv2 .side4 nav a:hover{background:#b99a5c22}#sv2 .switches4{display:flex;gap:9px;margin-top:19px;padding-top:18px;border-top:1px solid var(--line)}#sv2 .switches4 button{min-width:61px;min-height:48px;padding:10px 13px;font:18px Arial;color:var(--accent);border-color:#9b7a41;background:#b99a5c22;border-radius:8px}#sv2 .switches4 #sv2-theme{flex:1;font-size:14px}#sv2 .card{background:var(--panel);border-color:var(--line)}#sv2 .copy h2{color:var(--accent)}#sv2 .desc{color:var(--muted)}#sv2 .filters button{color:var(--text);border-color:var(--line)}#sv2 .filters button[aria-pressed=true]{color:var(--accent);background:#b99a5c22;border-color:#a58850}#sv2 footer{color:var(--muted)}#sv2[data-theme=light] .no-image .visual{background:#d5cbb6}#sv2[data-theme=light] .pending{color:#535a49}#sv2[data-theme=light] .no-image .meta span{background:#eee6d5;color:#4d513e;border-color:#bcb098}#sv2 .grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr))}@media(max-width:850px){#sv2 .layout4{display:flex;flex-direction:column-reverse;gap:20px}#sv2 .projects4,#sv2 .side4{width:100%}#sv2 .side4{position:static;padding:13px;display:flex;align-items:center;gap:14px;justify-content:space-between}#sv2 .side4 h2{display:none}#sv2 .side4 nav{display:flex;flex-wrap:wrap;gap:7px}#sv2 .side4 nav a{padding:9px}#sv2 .switches4{margin:0;padding:0;border:0;flex-shrink:0}#sv2 .switches4 button{min-height:44px;min-width:47px;padding:8px}#sv2 .masthead4{grid-template-columns:minmax(0,1fr) 180px;gap:14px;padding-bottom:20px}#sv2 .brand4 img{width:180px;height:72px}}@media(max-width:520px){#sv2 .masthead4{grid-template-columns:minmax(0,1fr) 125px;align-items:start}#sv2 .brand4 img{width:125px;height:51px}#sv2 .masthead4 h1{font-size:39px}#sv2 .quote{font-size:12px}#sv2 .side4{align-items:stretch;flex-direction:column;gap:10px}#sv2 .side4 nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}#sv2 .side4 nav a{text-align:center;padding:8px 4px;font-size:11px}#sv2 .switches4{justify-content:flex-end}#sv2 .switches4 #sv2-theme{flex:0 1 auto;min-width:110px}}html:has(#sv2){scrollbar-width:none}html:has(#sv2)::-webkit-scrollbar,body:has(#sv2)::-webkit-scrollbar{display:none;width:0;height:0}#sv2 .masthead4 .quote{font:600 clamp(24px,2.2vw,31px)/1.18 'Caveat','Segoe Print',cursive;color:var(--muted)}#sv2 .drawer5{--admin:0px;position:fixed;top:var(--admin);left:0;right:0;z-index:99990;transform:translateY(-100%);transition:transform .22s ease;background:var(--panel);border-bottom:1px solid #a58a52;box-shadow:0 5px 24px #0004}body.admin-bar #sv2 .drawer5{--admin:32px}#sv2 .drawer5[data-tray-open=true]{transform:translateY(0)}#sv2 .tray5{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px clamp(18px,3vw,55px);min-height:82px}#sv2 .tray5 strong{color:var(--accent);letter-spacing:.12em;font-size:13px}#sv2 .tray5 .switches4{margin:0;padding:0;border:0}#sv2 .drawer5 .handle5{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:104px;min-height:28px;height:28px;padding:0;border:0;border-radius:0 0 18px 18px;background:var(--panel);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 9px #0002}#sv2 .handle5 span{display:block;width:58px;height:4px;border-radius:3px;background:#d6af66}#sv2 .scroll5{position:fixed;bottom:15px;left:50%;transform:translateX(-50%);z-index:9990;display:flex;gap:9px}#sv2 .scroll5 button{width:46px;height:46px;min-height:46px;padding:0;border:1px solid #a58a52;border-radius:50%;background:var(--panel);color:var(--accent);box-shadow:0 3px 14px #0004;display:flex;align-items:center;justify-content:center}#sv2 .scroll5 svg{width:23px;height:23px;stroke:currentColor;stroke-width:2;fill:none}#sv2 .scroll5 button:hover{background:var(--bg)}#sv2 footer{padding-bottom:60px}#sv2 .side4 h2{font-family:'Caveat','Segoe Print',cursive;font-size:32px}@media(max-width:782px){body.admin-bar #sv2 .drawer5{--admin:46px}}@media(max-width:520px){#sv2 .masthead4 .quote{font-size:24px}#sv2 .tray5{padding:12px 16px;gap:10px}#sv2 .tray5 strong{font-size:10px;max-width:100px}#sv2 .tray5 .switches4 button{min-height:44px}#sv2 .side4 h2{display:none}}@media(prefers-reduced-motion:reduce){#sv2 .drawer5{transition:none}}#sv2 .drawer5:not([data-tray-open=true]) .tray5{visibility:hidden}#sv2 .card{position:relative;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}#sv2[data-theme=light] .card{box-shadow:0 3px 8px #44351b0a,0 9px 22px #44351b12}#sv2 .card .cover{transition:transform .35s cubic-bezier(.2,.65,.3,1);transform-origin:center}#sv2 .primary6:after{content:'';position:absolute;inset:0;z-index:2;cursor:pointer}#sv2 .visual .links{z-index:3}#sv2 .visual .links a{position:relative}#sv2 .card[data-clickable=true]:focus-within{border-color:#b28b45;box-shadow:0 0 0 1px #b28b4577,0 9px 24px #0002}#sv2[data-theme=light] .card[data-clickable=true]:focus-within{box-shadow:0 0 0 1px #a27d3c66,0 12px 26px #44351b24}#sv2 .visual .links a:hover,#sv2 .visual .links a:focus-visible{background:#aa8544;color:#fff8e6;border-color:#d9b76c}@media(hover:hover) and (pointer:fine){#sv2 .card[data-clickable=true]:hover{transform:translateY(-3px);border-color:#b28b45;box-shadow:0 0 0 1px #b28b4544,0 12px 25px #0004}#sv2[data-theme=light] .card[data-clickable=true]:hover{box-shadow:0 0 0 1px #a27d3c44,0 14px 28px #44351b29}#sv2 .card[data-clickable=true]:hover .cover{transform:scale(1.035)}}@media(prefers-reduced-motion:reduce){#sv2 .card,#sv2 .card .cover{transition:none}#sv2 .card[data-clickable=true]:hover,#sv2 .card[data-clickable=true]:hover .cover{transform:none}}

body.savage-studio-site{margin:0;background:#111210}html[data-savage-theme="light"] body.savage-studio-site{background:#ece5d6}#sv2 .side4 nav ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}#sv2 .side4 nav li{list-style:none;margin:0}#sv2 .side4 nav li ul{margin:7px 0 0 12px}#sv2 .side4 nav a[aria-current="page"]{border-color:#b28b45;background:#b99a5c22;color:var(--accent)}#sv2 .side4 nav{display:block}#sv2 .shoplinks7{display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px;margin-top:16px;font-size:12px}#sv2 .page-title7{font:600 34px/1.15 'Caveat','Segoe Print',cursive;margin:0 0 20px;color:var(--accent)}#sv2 .pagebody7{max-width:1100px}#sv2 .story7{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:clamp(22px,3vw,38px);margin-bottom:20px}#sv2[data-theme=light] .story7{box-shadow:0 3px 8px #44351b0a,0 9px 22px #44351b12}#sv2 .story7 h2{font:600 29px/1.2 'Caveat','Segoe Print',cursive;color:var(--accent);margin:0 0 17px}#sv2 .story7 p{max-width:76ch;color:var(--muted);margin:0 0 16px;line-height:1.75}#sv2 .story7 p:last-child{margin-bottom:0}#sv2 .story7 a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}#sv2 .split7{display:grid;grid-template-columns:1fr 1fr;gap:20px}#sv2 .interests7{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}#sv2 .interests7 span{border:1px solid var(--line);border-radius:3px;padding:7px 11px;color:var(--accent);font-size:12px}#sv2 .wpcf7 label{display:block;color:var(--text);font-size:13px;margin-bottom:17px}#sv2 .wpcf7 input:not([type="submit"]):not([type="checkbox"]),#sv2 .wpcf7 textarea,#sv2 .wpcf7 select{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:3px;box-shadow:none;padding:11px;margin:7px 0 0}#sv2 .wpcf7 input[type="submit"]{background:#b28b45;color:#fff8e6;border:1px solid #b28b45;padding:12px 22px;border-radius:3px;font-size:13px;cursor:pointer}#sv2 .wpcf7 form{margin:0}#sv2 .wpcf7 textarea{max-height:190px;min-height:140px}#sv2 .wpcf7-response-output{color:var(--text)}#sv2 .faq7 details{border-top:1px solid var(--line);padding:14px 0}#sv2 .faq7 summary{cursor:pointer;color:var(--accent);font-size:14px}#sv2 .faq7 details p{font-size:13px;margin-top:12px}#sv2 .woocommerce,#sv2 .woocommerce-page,#sv2 .product-main,#sv2 .shop-container{background:transparent;color:var(--text)}#sv2 .woocommerce .row,#sv2 .shop-container .row{max-width:none}#sv2 .woocommerce a,#sv2 .woocommerce .price,#sv2 .product-title,#sv2 .woocommerce h1,#sv2 .woocommerce h2,#sv2 .woocommerce h3{color:var(--accent)}#sv2 .woocommerce label,#sv2 .woocommerce th,#sv2 .woocommerce td,#sv2 .woocommerce p{color:var(--text)}#sv2 .woocommerce input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),#sv2 .woocommerce textarea,#sv2 .woocommerce select{background:var(--panel);color:var(--text);border-color:var(--line);box-shadow:none}#sv2 .woocommerce .product-small .box-text{background:var(--panel);padding:14px}#sv2 .woocommerce .button,#sv2 .woocommerce button.button,#sv2 .single_add_to_cart_button{background:#a48449;color:#fff8e6;border-color:#a48449}#sv2 .woocommerce .woocommerce-info,#sv2 .woocommerce .woocommerce-message,#sv2 .woocommerce-checkout-review-order,#sv2 #payment{background:var(--panel);color:var(--text)}#sv2 .woocommerce .cart-empty{color:var(--text)}#sv2 .woocommerce .order-total,#sv2 .woocommerce .shop_table{border-color:var(--line)}#sv2 .generic7 p{color:var(--muted);line-height:1.7}#sv2 .generic7 h1,#sv2 .generic7 h2,#sv2 .generic7 h3{color:var(--accent)}@media(max-width:850px){#sv2 .side4 nav ul{display:flex;flex-wrap:wrap;gap:7px}#sv2 .side4{display:block}#sv2 .shoplinks7{margin-top:12px;padding-top:12px}#sv2 .split7{grid-template-columns:1fr}}@media(max-width:520px){#sv2 .side4 nav{display:block}#sv2 .side4 nav ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}#sv2 .story7{padding:22px}#sv2 .page-title7{font-size:31px}}



#sv2 #main{background:transparent;min-width:0}#sv2 .shop-toolbar7{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}#sv2 .shop-toolbar7 form{margin:0}#sv2 .shop-toolbar7 select{background:var(--panel);color:var(--text);border:1px solid var(--line);padding:9px 28px 9px 10px;width:auto;max-width:100%;height:auto}#sv2 .categories7{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}#sv2 .categories7 a{border:1px solid var(--line);padding:7px 11px;border-radius:3px;font-size:12px;color:var(--text)}#sv2 .woocommerce .products{margin:0 -8px}#sv2 .woocommerce .product-small{padding:0 8px 20px}#sv2 .woocommerce .box{background:var(--panel);border:1px solid var(--line);border-radius:3px;overflow:hidden}#sv2 .woocommerce .box-image img{object-fit:contain}#sv2 .woocommerce .price{color:var(--accent)}



/* One centred frame for all WordPress pages, including shop and account pages. */

#sv2>.masthead4,#sv2>.layout4,#sv2>footer{width:100%;max-width:1480px;margin-left:auto;margin-right:auto}

#sv2 .layout4{grid-template-columns:minmax(0,1fr) 240px;gap:28px}

#sv2 .pagebody7{width:100%;max-width:none}

#sv2 .story7{padding:0;margin:0 0 20px;border:0;border-radius:0;background:transparent;box-shadow:none}

#sv2[data-theme=light] .story7{box-shadow:none}

#sv2 .story7 p{max-width:none;line-height:1.6;margin-bottom:12px}

#sv2 .story7 h2{margin-bottom:10px}

#sv2 .page-title7{margin-bottom:12px}

#sv2 .project11 .eyebrow11{font-size:10px;letter-spacing:.11em;text-transform:uppercase;margin-bottom:5px;color:var(--muted)}

#sv2 .project11 .lead11{font:600 29px/1.15 'Caveat','Segoe Print',cursive;color:var(--accent);margin:0 0 14px}

#sv2 .project11 .gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 22px!important}

#sv2 .project11 .gallery-item{width:auto!important;max-width:none!important;padding:0!important;margin:0!important;float:none!important}

#sv2 .project11 .gallery-icon{margin:0;border:0}

#sv2 .project11 .gallery a{display:block;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--panel)}

#sv2 .project11 .gallery img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;border:0!important;transition:transform .2s}

#sv2 .project11 .gallery a:hover img{transform:scale(1.025)}

#sv2 .project11 .gallery a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

#sv2 .project11 .gallery br{display:none}

#sv2 .project11 .gallery-caption{display:none}

#sv2 .project11 .text11{display:grid;grid-template-columns:1fr 1fr;gap:26px;font-size:14px}

#sv2 .project11 .text11 p{margin:0 0 12px;line-height:1.6}

#sv2 .project11 h3{font:600 25px/1.15 'Caveat','Segoe Print',cursive;margin:0 0 9px;color:var(--accent)}

#sv2 .project11 .back11{margin-top:14px;font-size:12px}

@media(max-width:850px){#sv2 .layout4{display:flex;gap:18px}#sv2 .project11 .text11{gap:18px}}

@media(max-width:600px){#sv2 .project11 .text11{grid-template-columns:1fr;gap:12px}#sv2 .project11 .gallery{gap:8px;margin-bottom:16px!important}#sv2 .project11 .gallery img{aspect-ratio:1/1}#sv2 .project11 .lead11{font-size:25px}}

@media(prefers-reduced-motion:reduce){#sv2 .project11 .gallery img{transition:none}}


/* Reader controls: only the two WP Control text columns use this scale. */
#sv2{--sv-text-scale:1.25}
body.page-id-9821 #sv2 .project11 .text11{font-size:17.5px}
body.page-id-9821 #sv2 .project11 .text11 h3{font-size:31.25px}
#sv2 .tray5 .switches4{align-items:center;flex-wrap:wrap;justify-content:flex-end}
#sv2 .text-size13{display:flex;align-items:center;gap:5px;border-left:1px solid var(--line);padding-left:12px;margin-left:3px}
#sv2 .tray5 .text-size13 button{min-width:44px;min-height:44px;padding:8px;font-size:17px}
#sv2 .text-size13 output{min-width:44px;text-align:center;font:13px Arial;color:var(--text)}
#sv2 .text-size13 button:disabled{opacity:.4;cursor:default}
@media(max-width:600px){#sv2 .tray5 strong{display:none}#sv2 .tray5{justify-content:center;padding:10px 12px}#sv2 .tray5 .switches4{width:100%;justify-content:center;gap:7px}#sv2 .text-size13{padding-left:7px;margin-left:0}#sv2 .tray5 .switches4 #sv2-theme{min-width:90px}#sv2 .tray5 .text-size13 button{min-width:40px;padding:7px}}
#sv2 .project14 .intro14{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}
#sv2 .project14 p{font-size:15px;margin:0 0 12px;line-height:1.6}
#sv2 .project14 h3{font:600 26px/1.15 'Caveat','Segoe Print',cursive;margin:0 0 9px;color:var(--accent)}
#sv2 .project14 .lead14{font:600 29px/1.15 'Caveat','Segoe Print',cursive;color:var(--accent)}
#sv2 .project14 .gallery{margin:0 0 8px!important}
#sv2 .project14 .gallery-item{width:100%!important;max-width:none!important;margin:0;padding:0}
#sv2 .project14 .gallery img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--line)!important;border-radius:4px}
#sv2 .project14 .gallery-caption{display:none}
#sv2 .project14 .caption14{font-size:11px;color:var(--muted)}
#sv2 .project14 .details14{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:18px}
#sv2 .project14 .back14,#sv2 .project14 .tech14{font-size:12px;margin-top:12px}
@media(max-width:700px){#sv2 .project14 .intro14,#sv2 .project14 .details14{grid-template-columns:1fr;gap:16px}}

/* Consistent project section headings, matching WP Control. */
#sv2 .generic7 h3,#sv2 .project11 h3,#sv2 .project14 h3,#sv2 .pagebody7 .story7 h2{font-size:31.25px}

/* Shared reading size, matching WP Control at 100%. */
#sv2 .generic7{font-size:17.5px}
#sv2 .project11 .text11,#sv2 .pagebody7{font-size:17.5px}
#sv2 .pagebody7 .story7 p,#sv2 .faq7 details p,#sv2 .project14 .intro14 p,#sv2 .project14 .details14 p{font-size:17.5px}
#sv2 .app-phone19{object-fit:contain!important;object-position:center!important;padding:6px 28px;background:var(--panel)}

/* Let screenshots and transparent device images stand without gallery panels. */
#sv2 .project11 .gallery a,#sv2 .project14 .gallery a{border:0;border-radius:0;background:transparent;box-shadow:none}
body.savage-studio-site .mfp-figure::after{background:transparent;box-shadow:none;border:0}
body.savage-studio-site .mfp-img{background:transparent}

/* Fit the available viewport, including WordPress's admin toolbar offset. */
#sv2{box-sizing:border-box;min-height:100vh;min-height:100svh}
body.admin-bar #sv2{min-height:calc(100vh - 32px);min-height:calc(100svh - 32px)}
#sv2 .sidebar21{min-width:0;position:sticky;top:48px}
#sv2 .sidebar21 .side4{position:static}
#sv2 .site-credit21{display:block;width:auto;max-width:none;margin:0;padding:12px 2px 0;font-size:11px;line-height:1.5;color:var(--muted)}
@media(max-width:850px){#sv2 .sidebar21{position:static;width:100%}}
@media(max-width:782px){body.admin-bar #sv2{min-height:calc(100vh - 46px);min-height:calc(100svh - 46px)}}

/* Uniform portfolio cards; long descriptions end in an ellipsis after three lines. */
#sv2 .card .desc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.5;min-height:4.5em;max-height:4.5em}
#sv2 .card .copy h2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.15;min-height:2.3em}
html:has(#sv2){background:#ece5d6}
html[data-savage-theme=dark]:has(#sv2){background:#111210}

/* Restrained project metadata and warm light-theme actions. */
#sv2 .status-row27{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px!important;font:500 11px/1.3 Arial,sans-serif!important;letter-spacing:.04em!important;text-transform:none!important}
#sv2 .status-row27 span,#sv2 .card .meta span{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid var(--line);border-radius:99px;font:500 10px/1.2 Arial,sans-serif;letter-spacing:.035em;background:var(--panel);color:var(--text);box-shadow:none}
#sv2 .status-row27 span:first-child{color:var(--accent)}
#sv2[data-theme=light] .generic7 a.button,#sv2[data-theme=light] .generic7 button.button,#sv2[data-theme=light] .generic7 input[type=submit]{background:#ded1b5!important;color:#554323!important;border:1px solid #ab9060!important;border-radius:5px;box-shadow:0 2px 5px #59441e12;text-shadow:none;letter-spacing:.035em;font-weight:600}
#sv2[data-theme=light] .generic7 a.button:hover,#sv2[data-theme=light] .generic7 button.button:hover,#sv2[data-theme=light] .generic7 input[type=submit]:hover{background:#ceba90!important;color:#382b15!important;border-color:#846832!important}
#sv2[data-theme=light] .generic7 a.button:focus-visible{outline:2px solid #765b2c;outline-offset:3px}

/* Keep the real logo with the sticky navigation, preserving its original slot. */
#sv2 .logo-slot34{width:260px;height:100px;justify-self:end}
#sv2 .masthead4 h1 a{color:inherit;text-decoration:none;font:inherit;letter-spacing:inherit}
#sv2 .site-credit21{text-align:center}
@media(min-width:851px){#sv2 .brand4.is-sticky34{position:fixed;top:var(--logo-top34,48px);left:var(--logo-left34);width:var(--logo-width34,260px);height:100px;z-index:20}#sv2 .brand4.is-sticky34 img{width:100%;height:100%;object-fit:cover;object-position:center}}
@media(max-width:850px){#sv2 .logo-slot34{width:180px;height:72px}}
@media(max-width:520px){#sv2 .logo-slot34{width:125px;height:51px}}

/* A quiet outer frame and a header rule give the parchment a defined edge. */
#sv2::before{content:'';position:fixed;inset:10px;z-index:9980;pointer-events:none;border:1px solid #8b765145;border-radius:10px;box-shadow:0 0 0 10px #a58b5d18,inset 0 0 0 4px #a58b5d08}
body.admin-bar #sv2::before{top:42px}
#sv2[data-theme=dark]::before{border-color:#b99a5c30;box-shadow:0 0 0 10px #0002,inset 0 0 0 4px #b99a5c05}
#sv2>.masthead4{position:relative;border-bottom:1px solid var(--line);margin-bottom:22px;padding-bottom:24px}
#sv2>.masthead4::after{content:'';position:absolute;bottom:-1px;left:0;width:66px;height:3px;background:var(--accent);border-radius:2px}
@media(max-width:782px){body.admin-bar #sv2::before{top:56px}}
@media(max-width:600px){#sv2::before{inset:5px;border-radius:6px;box-shadow:0 0 0 5px #a58b5d18}body.admin-bar #sv2::before{top:51px}#sv2>.masthead4{margin-bottom:16px;padding-bottom:18px}}

/* Approved signature divider: uninterrupted rule, pulse, warrior, short flat tail. */
#sv2>.masthead4{border-bottom:0;padding-bottom:32px;margin-bottom:22px}
#sv2>.masthead4::after{display:none}
#sv2 .signature-line40{position:absolute;left:0;right:268px;bottom:-8px;height:90px;pointer-events:none;color:var(--accent)}
#sv2 .signature-line40>span{position:absolute;left:0;right:110px;bottom:15.17px;height:1px;background:currentColor}
#sv2 .signature-line40 svg{position:absolute;right:0;bottom:0;width:110.57px;height:90px;overflow:hidden;display:block}
@media(max-width:850px){#sv2 .signature-line40{right:194px;height:70px}#sv2 .signature-line40 svg{width:86px;height:70px}#sv2 .signature-line40>span{right:85.5px;bottom:11.8px}}
@media(max-width:520px){#sv2>.masthead4{padding-bottom:38px}#sv2 .signature-line40{right:139px;height:56px}#sv2 .signature-line40 svg{width:68.8px;height:56px}#sv2 .signature-line40>span{right:68.3px;bottom:9.44px}}

/* Keep the signature exactly 20px above the navigation in either scroll state. */
@media(min-width:851px){#sv2 .brand4{position:relative;top:var(--logo-offset41,0px)}#sv2 .brand4.is-sticky34{position:fixed;top:var(--logo-top34,48px)}}
/* Enlarge the pulse and warrior together, anchored on the existing baseline. */
#sv2 .signature-line40 svg{transform:scale(1,1.5);transform-origin:50% 83.14%}

/* The same repaired signature renders in black or white, keeping identical geometry. */
#sv2 .brand4 img,#sv2 .brand4.is-sticky34 img{object-fit:contain;object-position:center;filter:brightness(0)}
#sv2[data-theme=dark] .brand4 img{filter:brightness(0) invert(1)}

/* Original warrior proportions, stronger spaced pulses, and a red travelling signal. */
#sv2 .signature-line42{position:absolute;left:0;right:268px;bottom:-8px;height:170px;pointer-events:none;color:var(--accent)}
#sv2 .signature-line42 svg{display:block;width:100%;height:100%;overflow:visible}
#sv2 .signal42,#sv2 .warrior42{stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
#sv2 .signal-dot42{animation:red-dot42 .85s ease-in-out infinite}
#sv2 .warrior42{animation:warrior-beat42 12s linear infinite;animation-delay:var(--figure-delay42,11s)}
@keyframes red-dot42{0%,100%{opacity:.8;stroke:#ff1828;stroke-width:1}50%{opacity:1;stroke:#ff3540;stroke-width:4}}
@keyframes warrior-beat42{0%,7%,100%{stroke:var(--accent);filter:none}3%{stroke:#ff1728;filter:drop-shadow(0 0 5px #ff1424)}}
@media(max-width:850px){#sv2 .signature-line42{right:194px}}
@media(max-width:520px){#sv2 .signature-line42{right:139px;height:98.6px}}
@media(prefers-reduced-motion:reduce){#sv2 .signal-dot42{display:none}#sv2 .warrior42{animation:none}}

/* One shared animation clock drives contact and the figure's gold flash. */
#sv2 .signal-dot42{animation:none;stroke:#f4d18a;stroke-width:.5}
#sv2 .warrior42{animation:none}

/* Keep the two website screenshots aligned with their text columns. */
body.page-id-9937 #sv2 .website28 .gallery,body.page-id-9939 #sv2 .website28 .gallery{margin-left:0!important;margin-right:auto!important}
body.page-id-9937 #sv2 .website28 .gallery img,body.page-id-9939 #sv2 .website28 .gallery img{object-position:left center}

/* Remove the theme's list-item separators; the links have their own borders. */
#sv2 .side4 nav li,#sv2 .side4 nav li+li{border:0!important;box-shadow:none!important}

/* A brief comet tail and tiny sparks share the exact motion timeline. */
#sv2 .comet-trail47,#sv2 .signal-spark47,#sv2 .signal-core47{pointer-events:none}
@media(prefers-reduced-motion:reduce){#sv2 .comet-trail47,#sv2 .signal-spark47,#sv2 .signal-core47{display:none!important}}

#sv2 .signal-halo50,#sv2 .signal-exit50{pointer-events:none}
@media(prefers-reduced-motion:reduce){#sv2 .signal-halo50,#sv2 .signal-exit50{display:none!important}}

#sv2 .tray5 .music-control53{min-width:46px;width:46px;min-height:48px;padding:10px;display:flex;align-items:center;justify-content:center}
#sv2 .music-control53 svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#sv2 .music-control53 .music-slash53{display:none}
#sv2 .music-control53[data-music-state=off] .music-slash53{display:block}
#sv2 .music-control53[data-music-state=off]{opacity:.65}
#sv2 audio[hidden]{display:none!important}

/* Quiet project paging, independent of article typography. */
#sv2 .projects4{position:relative}
#sv2 .project-nav54{position:sticky;bottom:46vh;height:0;z-index:12;pointer-events:none;margin:0}
#sv2 .project-step54{position:absolute;bottom:0;width:34px;height:52px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--accent);opacity:.6;pointer-events:auto;transition:opacity .18s,box-shadow .18s;box-shadow:0 2px 10px #0000000c}
#sv2 .project-step54:hover,#sv2 .project-step54:focus-visible{opacity:1;box-shadow:0 3px 16px #00000020}
#sv2 .project-prev54{left:-43px}#sv2 .project-next54{right:-43px}
#sv2 .project-step54 svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#sv2 .project-tip54{position:absolute;top:60px;max-width:230px;width:max-content;padding:9px 12px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);font:14px/1.4 Arial,sans-serif;opacity:0;visibility:hidden;pointer-events:none}
#sv2 .project-prev54 .project-tip54{left:0}#sv2 .project-next54 .project-tip54{right:0}
#sv2 .project-tip54 small{display:block;opacity:.65;font-size:11px}
#sv2 .project-step54:hover .project-tip54,#sv2 .project-step54:focus-visible .project-tip54{opacity:1;visibility:visible}
#sv2 .side4 nav li.has-menu-icon54{position:relative}
#sv2 .side4 nav li.has-menu-icon54>a{padding-left:40px}
#sv2 .menu-icon54{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;fill:none;stroke:var(--accent);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;opacity:.78}
#sv2 .shoplinks7{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;text-align:center}
#sv2[data-theme="dark"] .brand4 img{opacity:0}
#sv2[data-theme="dark"] .brand4:after{content:"";position:absolute;inset:0;background:var(--accent);mask:url("signature-without-warrior.png") center/contain no-repeat;-webkit-mask:url("signature-without-warrior.png") center/contain no-repeat;pointer-events:none}
@media(max-width:1600px){#sv2 .project-prev54{left:-35px}#sv2 .project-next54{right:-26px}#sv2 .project-step54{width:27px}}
@media(max-width:850px){#sv2 .project-nav54{position:relative;bottom:auto;height:48px;display:flex;justify-content:space-between;gap:16px;margin-top:24px}#sv2 .project-step54{position:relative;left:auto;right:auto;bottom:auto;min-width:44px;height:44px;opacity:.85}#sv2 .project-tip54{display:none}}

@media(prefers-reduced-motion:no-preference){html:has(#sv2){scroll-behavior:smooth}}
#sv2 .brand4.is-sticky34{will-change:transform}#sv2 .sidebar21{contain:layout style}

#sv2.content-loading55 #main{cursor:progress}#sv2 #main:focus{outline:none}

/* Screenshots and transparent phone/book mockups sit directly on the page. */
#sv2 #main .gallery img,#sv2 #main .project11 img,#sv2 #main .project14 img,#sv2 #main .website28 img{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
#sv2 #main .gallery a,#sv2 #main .gallery .gallery-icon{border:0!important;box-shadow:none!important;background:transparent!important}

/* Keep the same column width when filtering down to one or two projects. */
#sv2 .grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,265px),1fr))}

/* Mobile: one full-width signature line, an identically sized logo in both themes,
   and the real WordPress navigation after the page content. */
@media(max-width:850px){
 #sv2 .layout4{flex-direction:column;align-items:stretch}
 #sv2 .layout4>.projects4{order:1;width:100%;min-width:0}
 #sv2 .layout4>.sidebar21{order:2;position:static;width:100%;margin-top:18px}
 #sv2>.masthead4{--mobile-logo:clamp(105px,29vw,180px);grid-template-columns:minmax(0,1fr) var(--mobile-logo);align-items:start;row-gap:12px;padding-bottom:108px;margin-bottom:20px}
 #sv2 .masthead4>div:first-child{display:contents}
 #sv2 .masthead4 h1{grid-column:1;grid-row:1}
 #sv2 .masthead4 .quote{grid-column:1/-1;grid-row:2}
 #sv2 .logo-slot34{grid-column:2;grid-row:1;align-self:start;justify-self:end;width:var(--mobile-logo);height:calc(var(--mobile-logo)/2.6)}
 #sv2 .brand4,#sv2 .brand4.is-sticky34{position:relative;inset:auto;top:0;display:block;width:100%;height:100%;z-index:auto;will-change:auto}
 #sv2 .brand4 img,#sv2 .brand4.is-sticky34 img{width:100%;height:100%;object-fit:contain}
 #sv2 .signature-line42{left:calc(-1 * clamp(18px,3vw,55px));right:calc(-1 * clamp(18px,3vw,55px));bottom:-8px;width:auto}
}
@media(min-width:521px) and (max-width:850px){#sv2>.masthead4{padding-bottom:175px}}
@media(max-width:520px){
 #sv2 .masthead4 h1{font-size:clamp(32px,8vw,39px);line-height:1.07;margin-top:3px}
 #sv2 .masthead4 .quote{font-size:24px;line-height:1.18}
}

/* One native sticky column: logo and navigation move together without a JS
   switch from relative to fixed positioning at the first scroll threshold. */
@media(min-width:851px){
 #sv2 .logo-placeholder87{width:260px;height:100px;justify-self:end}
 #sv2 .layout4>.sidebar21{margin-top:-120px;position:sticky;top:calc(var(--dock-admin87,0px) + 16px);contain:style;will-change:transform}
 #sv2 .sidebar21>.logo-slot34{width:260px;height:100px;margin:0 0 20px -20px}
 #sv2 .sidebar21 .brand4,#sv2 .sidebar21 .brand4.is-sticky34{position:relative;inset:auto;top:0;width:260px;height:100px;z-index:auto}
 #sv2 .sidebar21 .brand4 img{width:100%;height:100%;object-fit:contain}
}
