/*
Theme Name: 247PID Studio
Author: 247PID
Description: A custom technical drafting website with editable WordPress pages and original drawing demonstrations.
Version: 1.1.2
Requires at least: 6.8
Requires PHP: 8.0
Text Domain: pid-studio
*/
:root{--navy:#0b2d4a;--red:#e63946;--ink:#16334b;--muted:#52677a;--pale:#f3f7fa;--line:#dbe5ec;--white:#fff;--radius:12px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;background:white}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--red)}.skip-link{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:1000}.skip-link:focus{top:10px}.site-header{height:90px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.97);z-index:50}.header-inner{max-width:1240px;margin:auto;padding:0 32px;height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;font-size:28px;font-weight:850;letter-spacing:-1.5px;display:flex;align-items:center;gap:9px;white-space:nowrap}.brand-mark{display:grid;grid-template-columns:repeat(2,6px);gap:3px;transform:rotate(-9deg)}.brand-mark i{height:6px;background:var(--red)}.brand span:last-child{color:var(--red)}.site-nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:650}.site-nav a{text-decoration:none}.site-nav a[aria-current=page]{color:var(--red)}.site-nav a:hover{color:var(--red)}.site-nav details{position:relative}.site-nav summary{cursor:pointer;list-style:none}.site-nav summary:after{content:'⌄';margin-left:7px}.site-nav details>div{position:absolute;background:white;border:1px solid var(--line);box-shadow:0 16px 40px #0b2d4a18;width:230px;top:40px;padding:12px;border-radius:8px}.site-nav details>div a{display:block;padding:10px}.menu-toggle{display:none;border:1px solid var(--line);background:white;border-radius:6px;padding:7px 12px}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--red);color:white;border:1px solid var(--red);padding:13px 23px;border-radius:5px;text-decoration:none;font-size:14px;font-weight:700;line-height:1.5;cursor:pointer;transition:transform .15s,background .15s}.button:hover,.wp-block-button__link:hover{background:#cf2635;color:white;transform:translateY(-1px)}.site-nav .button{font-size:12px;padding:11px 17px}.wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 20px}.secondary .wp-block-button__link,.button.secondary{background:transparent;color:var(--navy);border-color:#bacbd8}.secondary .wp-block-button__link:hover,.button.secondary:hover{background:var(--pale)}.content-wrap{max-width:1240px;margin:auto;padding:0 32px}.page-content>*,.project-page>section{margin:0}.section{padding:80px 0}.hero{padding:78px 0 66px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.hero h1{font-size:clamp(38px,4.5vw,66px);font-weight:780;line-height:1.06;letter-spacing:-2.7px;margin:18px 0 25px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;text-transform:uppercase;color:var(--red);margin:0 0 18px}.hero .lead{max-width:470px}.lead{font-size:18px;color:var(--muted);line-height:1.7;max-width:690px}.micro{font-size:12px;color:var(--muted)}h2{font-size:clamp(28px,3vw,41px);line-height:1.18;letter-spacing:-1.2px;margin:0 0 20px;font-weight:750}h3{font-size:22px;line-height:1.25;letter-spacing:-.5px;margin:14px 0}h4{font-size:17px}p{margin:0 0 18px}.section-heading{max-width:670px;margin-bottom:35px}.band{background:var(--navy);color:#fff;padding:24px 30px;border-radius:8px;display:flex;justify-content:space-between;gap:24px}.band p{margin:0;font-size:13px}.band p:before{content:'+';color:#ff7b85;margin-right:13px;font-size:18px}.wp-block-columns{display:flex;gap:25px}.wp-block-column{flex:1;min-width:0}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.card{background:var(--pale);border:1px solid var(--line);border-radius:var(--radius);padding:30px}.card .eyebrow{color:var(--muted)}.card p{color:var(--muted)}.card a{font-weight:700;font-size:14px;color:var(--navy)}.card-number{font-family:monospace;color:var(--red);font-size:14px}.pale{background:var(--pale);border-radius:var(--radius);padding:48px}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.steps{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.step{border-top:1px solid var(--line);padding-top:22px}.step:before{counter-increment:step;content:'0' counter(step);font-family:monospace;font-size:13px;color:var(--red)}.step h3{font-size:18px}.step p{font-size:14px;color:var(--muted)}.cta{background:var(--navy);color:white;border-radius:var(--radius);padding:45px 48px;display:flex;justify-content:space-between;align-items:center;gap:28px}.cta p{color:#c7d6e2;margin:0}.cta h2{font-size:32px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{font-weight:650;cursor:pointer}.faq details p{margin:16px 0;color:var(--muted);max-width:850px}.site-footer{margin-top:60px;background:var(--pale);border-top:1px solid var(--line);padding:55px 0 26px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-grid p{max-width:340px;font-size:14px;color:var(--muted);margin-top:15px}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:13px}.footer-links a{text-decoration:none}.footer-label{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;font-weight:700}.footer-bottom{border-top:1px solid var(--line);margin-top:35px;padding-top:20px;font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:25px}.drawing-shell{border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 18px 55px #0b2d4a0c;background:white}.drawing-top{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.9px;font-family:monospace}.drawing-top span:last-child{color:var(--red)}.compare-stage{position:relative;background:var(--navy);aspect-ratio:1.45;overflow:hidden}.compare-stage svg{width:100%;height:100%;display:block}.compare-after{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--wipe,50%)) 0 0)}.compare-divider{position:absolute;top:0;bottom:0;left:var(--wipe,50%);width:2px;background:white;pointer-events:none}.compare-divider:after{content:'↔';position:absolute;top:50%;left:-17px;background:white;color:var(--navy);border-radius:50%;width:36px;height:36px;display:grid;place-items:center;box-shadow:0 3px 12px #0003}.compare-controls{padding:16px 18px}.compare-controls label{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:650}.compare-controls input{width:100%;accent-color:var(--red);margin:12px 0 5px}.compare-controls .micro{margin:0}.compare-key{display:flex;justify-content:space-between;font-family:monospace;font-size:10px}.demo-caption{font-size:11px;color:var(--muted);margin:13px 0 0}.model-shell{border:1px solid var(--line);border-radius:10px;background:white;overflow:hidden}.model-toolbar{padding:12px 18px;display:flex;justify-content:space-between;gap:8px;font-size:10px;font-family:monospace;border-bottom:1px solid var(--line)}.model-canvas{display:block;width:100%;height:320px;background:linear-gradient(140deg,#eef4f8,#fff);touch-action:pan-y;cursor:grab}.model-controls{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}.small-button,.filter-button{border:1px solid var(--line);color:var(--navy);background:white;padding:8px 13px;border-radius:5px;font-size:12px;cursor:pointer}.small-button:hover,.filter-button:hover{border-color:var(--navy)}.model-readout{padding:0 16px 13px;font-size:11px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.filter-button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.portfolio-card{border:1px solid var(--line);border-radius:10px;overflow:hidden}.portfolio-card .portfolio-preview{background:var(--navy);height:230px;overflow:hidden}.portfolio-preview svg{width:100%;height:100%}.portfolio-card .portfolio-info{padding:25px}.portfolio-card h3{font-size:23px}.portfolio-card p{font-size:14px;color:var(--muted)}.badge{display:inline-block;font-size:10px;background:#edf3f7;border-radius:4px;padding:3px 8px;color:var(--muted)}.portfolio-card[hidden]{display:none}.quote-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:45px;align-items:start}.quote-panel{border:1px solid var(--line);border-radius:12px;padding:32px;background:white}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field.wide{grid-column:1/-1}.field label{font-size:13px;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid #b8c9d6;border-radius:5px;padding:11px 12px;color:var(--navy);background:white;min-width:0}.field textarea{min-height:145px;resize:vertical}.consent{font-size:12px;display:flex;gap:10px;align-items:flex-start;margin:22px 0}.consent input{margin-top:4px;accent-color:var(--red)}.notice{padding:16px 20px;border-radius:6px;background:#eef5f9;border-left:3px solid var(--navy);margin-bottom:20px;font-size:14px}.notice.error{background:#fff3f4;border-color:var(--red)}.notice.success{background:#edf7f1;border-color:#218254}.trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.quote-aside{background:var(--pale);padding:30px;border-radius:10px}.quote-aside h3{font-size:19px}.quote-aside ol{padding-left:20px;color:var(--muted);font-size:14px}.quote-aside li{margin:12px 0}.privacy-copy{font-size:14px;max-width:850px}.project-page{padding-top:65px}.project-content{max-width:850px}.project-content ul{padding-left:20px}.project-content .lead{margin-bottom:35px}.numbered{display:grid;grid-template-columns:1fr 1fr;gap:22px}.numbered .card h3{font-size:20px}.wp-block-list{padding-left:22px;color:var(--muted)}.wp-block-list li{margin:9px 0}.not-found{padding:100px 0}.screen-reader-text{position:absolute;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
@media(max-width:1050px){.site-nav{gap:16px}.header-inner,.content-wrap{padding-left:24px;padding-right:24px}.hero-grid{gap:30px}.hero h1{font-size:52px}.hero .lead{font-size:16px}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.site-header{height:76px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:22px 24px;box-shadow:0 12px 20px #0b2d4a12;align-items:stretch;flex-direction:column;gap:17px}.site-nav.open{display:flex}.site-nav details>div{position:static;margin-top:10px;box-shadow:none;width:100%}.hero-grid,.split,.quote-layout{grid-template-columns:1fr}.hero{padding:48px 0}.hero-grid{gap:32px}.hero h1{font-size:53px;max-width:600px}.hero .lead{font-size:18px;max-width:650px}.hero-visual{max-width:650px}.section{padding:50px 0}.band{flex-wrap:wrap;padding:22px}.cta{align-items:flex-start;flex-direction:column;padding:32px}.pale{padding:30px}.footer-grid{grid-template-columns:1.5fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.wp-block-columns{flex-direction:column}.quote-panel{padding:25px}.portfolio-card .portfolio-preview{height:200px}}
@media(max-width:520px){.header-inner,.content-wrap{padding-left:20px;padding-right:20px}.hero h1{font-size:44px;letter-spacing:-1.8px}.hero .lead{font-size:16px}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}.cards,.portfolio-grid,.numbered{grid-template-columns:1fr}.steps{gap:20px}.step h3{font-size:16px}.card{padding:25px}.section{padding:42px 0}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.quote-panel{padding:20px}.footer-bottom{flex-direction:column;gap:10px}.band{gap:13px}.model-canvas{height:270px}.drawing-top{padding:11px;font-size:9px}.compare-controls{padding:14px}.cta h2{font-size:28px}.wp-block-buttons{gap:10px}.wp-block-button__link{padding:12px 17px;font-size:13px}.lead{font-size:16px}.pale{padding:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.wp-block-group__inner-container{display:contents}.portfolio-preview img{width:100%;height:100%;object-fit:cover}.project-content>h1{font-size:clamp(35px,4vw,56px);line-height:1.12;letter-spacing:-1.8px;margin:20px 0}.model-canvas{touch-action:none}

.button,.wp-block-button__link{background:#cf2635;border-color:#cf2635}.eyebrow,.card-number{color:#c52636}.site-nav a[aria-current=page],.site-nav a:hover{color:#c52636}.admin-bar .site-header{top:32px}@media(max-width:782px){.admin-bar .site-header{top:46px}}

/* Refresh: supplied brand, promotion and accessible drawing controls. */
.brand-logo{display:block;width:250px;max-width:100%;height:auto;mix-blend-mode:multiply}.site-nav .button{max-width:275px;text-align:center}.footer-grid .brand{max-width:280px}.cta .micro{color:#cad9e4;margin-top:14px;font-size:12px;max-width:620px}.promotion-note{padding:18px 22px;background:var(--pale);border-left:3px solid var(--red);font-size:14px}.hero-copy>.micro{max-width:490px}.compare-stage{aspect-ratio:1498/1050;user-select:none}.compare-stage img{display:block;width:100%;height:100%;object-fit:contain}.compare-divider{width:2px;pointer-events:none;transform:translateX(-1px)}.compare-divider:after{display:none}.compare-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;border:0;border-radius:50%;background:white;color:var(--navy);box-shadow:0 2px 16px #0003;display:grid;place-items:center;cursor:ew-resize;font-size:24px;pointer-events:auto;touch-action:none;padding:0}.compare-stage:has(.compare-handle[aria-valuenow="0"]) .compare-handle{transform:translate(0,-50%)}.compare-stage:has(.compare-handle[aria-valuenow="100"]) .compare-handle{transform:translate(-100%,-50%)}.model-viewer{position:relative;width:100%;height:360px;background:#edf2f5}.model-viewer .model-canvas{width:100%;height:100%;position:absolute;inset:0;touch-action:none}.model-fallback{width:100%;height:100%}.model-fallback img{width:100%;height:100%;object-fit:contain}.model-ready .model-fallback{visibility:hidden}.model-readout{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:4px 16px 12px}.model-readout select{background:white;border:1px solid var(--line);border-radius:4px;padding:6px;font-size:12px;max-width:100%}.model-help{padding:0 16px 16px;margin:0}.document-detail svg{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:10px}.portfolio-card .portfolio-preview{height:auto;aspect-ratio:1.55}.portfolio-preview img{object-fit:contain}.portfolio-preview svg{display:block}.site-nav .button:hover{color:white}
@media(max-width:1100px){.site-header{height:86px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:86px;left:0;right:0;background:white;padding:22px 24px;box-shadow:0 12px 20px #0b2d4a12;align-items:stretch;flex-direction:column;gap:17px}.site-nav.open{display:flex}.site-nav details>div{position:static;margin-top:10px;box-shadow:none;width:100%}.site-nav .button{max-width:none}}
@media(max-width:520px){.brand-logo{width:210px}.header-inner{gap:12px}.model-viewer{height:290px}.model-toolbar{font-size:8px}.compare-controls .micro{font-size:11px}.compare-handle{width:40px;height:40px}.hero h1{font-size:42px}.cta .micro{font-size:11px}}
.page-content>.model-shell{max-width:940px;margin:0 auto}.page-content>.model-shell .model-viewer{height:440px}@media(max-width:520px){.page-content>.model-shell .model-viewer{height:310px}}
.page-content .section>.wp-block-group__inner-container>.model-shell{max-width:940px;margin:0 auto}.page-content .section>.wp-block-group__inner-container>.model-shell .model-viewer{height:440px}@media(max-width:520px){.page-content .section>.wp-block-group__inner-container>.model-shell .model-viewer{height:310px}}
