/*
 * Theme Name: Photon Studio
 * Author: PhotonResins3D
 * Description: A bespoke material studio storefront with an interactive 3D sculpture and WooCommerce support.
 * Version: 1.0.2
 * Requires at least: 6.5
 * Requires PHP: 8.0
 * Text Domain: photon-studio
 * */
:root{--bg:#111310;--panel:#1b1e18;--ink:#f2f3e9;--muted:#afb5a5;--line:#34392e;--acid:#d7fa71;--orange:#ff8350;--radius:14px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--acid);outline-offset:5px}.shell{width:min(1380px,90%);margin:auto}.skip{position:absolute;left:-10000px}.skip:focus{left:20px;top:45px;background:var(--acid);color:#111;padding:12px;z-index:20}.notice{text-align:center;background:var(--acid);color:#263215;font:600 11px/1.4 ui-monospace,monospace;letter-spacing:1px;padding:9px 15px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:98px;border-bottom:1px solid var(--line)}.logo{display:flex;align-items:center;gap:11px;font-size:22px;font-weight:750;letter-spacing:-1px;text-decoration:none;white-space:nowrap}.logo-mark{width:30px;height:34px;display:block;background:var(--acid);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%,50% 50%,75% 37%,50% 25%,25% 37%,25% 63%,50% 76%,50% 50%,100% 25%)}.logo b{color:var(--acid);font-weight:inherit}.navigation{display:flex;gap:30px;font-size:13px}.navigation a{text-decoration:none;color:#c9cdbe}.navigation a:hover{color:var(--acid)}.header-action{border:1px solid #58604c;border-radius:50px;padding:10px 19px;font-size:12px;text-decoration:none}.eyebrow{font:500 11px/1.5 ui-monospace,monospace;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.eyebrow .dot{display:inline-block;width:6px;height:6px;background:var(--acid);border-radius:50%;margin-right:10px;vertical-align:2px}.hero{position:relative;display:grid;grid-template-columns:1.03fr 1fr;min-height:660px;align-items:center;padding:55px 0 45px}.hero-copy{z-index:2;pointer-events:none}.hero-copy a{pointer-events:auto}.hero h1{font-size:clamp(60px,6.4vw,96px);font-weight:650;line-height:.99;letter-spacing:-5px;margin:28px 0}.hero h1 em{font-style:normal;color:var(--acid)}.hero-copy p{font-size:16px;color:var(--muted);max-width:390px;margin:27px 0 32px}.buttons{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:15px 23px;background:var(--acid);border:1px solid var(--acid);color:#1b2510;font-size:13px;font-weight:650;text-decoration:none;border-radius:5px}.button:hover{background:#e2ff96}.text-link{font-size:13px;text-decoration:none;border-bottom:1px solid #69715b;padding-bottom:4px}.hero-scene{position:relative;height:560px;min-width:0;background:radial-gradient(ellipse at 55% 48%,#37432488,transparent 60%)}.scene-grid{position:absolute;inset:60% -5% 8%;background-image:linear-gradient(#73965326 1px,transparent 1px),linear-gradient(90deg,#73965326 1px,transparent 1px);background-size:36px 36px;transform:perspective(340px) rotateX(58deg);mask-image:radial-gradient(ellipse,#000,transparent 70%)}.orbit{position:absolute;width:84%;height:72%;left:8%;top:10%;border:1px solid #8da46829;border-radius:50%;transform:rotate(-28deg) scaleY(.65)}.orbit:before{content:'+';position:absolute;top:10%;left:12%;color:var(--acid);font:20px monospace}.scene-label{position:absolute;right:0;top:35px;font:10px ui-monospace,monospace;color:#86947a;letter-spacing:2px}.scene-label span{display:block;margin-top:5px;font-size:9px;color:#626e59}.sculpture{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y}.scene-controls{position:absolute;bottom:17px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:20px}.swatches{display:flex;gap:9px}.swatch{width:22px;height:22px;border-radius:50%;background:var(--swatch);border:3px solid var(--bg);box-shadow:0 0 0 1px transparent;padding:0}.swatch[aria-pressed=true]{box-shadow:0 0 0 1px var(--ink)}.motion{background:transparent;color:#b7c0aa;border:1px solid #46503a;border-radius:30px;font-size:10px;padding:7px 12px}.scene-caption{position:absolute;left:15px;bottom:75px;color:#8c9a7c;font:9px/1.6 ui-monospace,monospace;letter-spacing:1px}.hero-note{font-size:10px;color:#818975;margin-top:22px}.material-ticker{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#a1aa95;font:500 12px ui-monospace,monospace;letter-spacing:3px}.material-ticker i{font-style:normal;color:#687451}.materials{padding:90px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px}.section-heading h2,.manifesto h2{font-size:clamp(34px,4vw,55px);line-height:1.1;font-weight:550;letter-spacing:-2px;margin:13px 0 0}.section-heading p{max-width:320px;font-size:14px;color:var(--muted);margin:0}.material-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px}.material-card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#252a20,#191c16);position:relative;overflow:hidden;padding:25px;min-height:360px;text-decoration:none;transition:border-color .2s,transform .2s}.material-card:hover{border-color:#869c66;transform:translateY(-4px)}.material-card .eyebrow{font-size:9px;letter-spacing:1.5px}.material-card h3{position:absolute;bottom:26px;left:25px;margin:0;font-size:27px;font-weight:550;letter-spacing:-1px}.material-card small{position:absolute;bottom:12px;right:22px;font-size:11px;color:var(--muted)}.material-card .arrow{position:absolute;right:23px;top:22px;color:var(--acid);font-size:22px}.mini-spool{position:absolute;top:85px;left:calc(50% - 76px);width:145px;height:145px;border:14px solid #c8c7b3;border-radius:50%;background:repeating-radial-gradient(circle,#ffffff30 0 1px,#00000030 2px 3px),#bdcc69;transform:rotate(-20deg) skewY(-8deg);box-shadow:12px 17px 0 #636752,22px 35px 32px #0005}.mini-spool:after{content:'';position:absolute;inset:35%;border:7px solid #aaa995;border-radius:50%;background:#202a18}.mini-bottle{position:absolute;left:calc(50% - 46px);top:90px;width:93px;height:155px;border-radius:15px 15px 10px 10px;background:linear-gradient(90deg,#995126,#e88745,#a04b20);transform:rotate(14deg);box-shadow:14px 20px 25px #0004}.mini-bottle:before{content:'';position:absolute;left:19px;top:-20px;width:55px;height:24px;background:repeating-linear-gradient(90deg,#252b20 0 3px,#404b35 3px 5px);border-radius:4px}.mini-bottle:after{content:'PHOTON\A RESIN';white-space:pre;position:absolute;left:0;right:0;top:45px;padding:13px 10px;background:#e9edcf;color:#2f3628;font:750 13px/1.3 system-ui}.mini-stack{position:absolute;left:calc(50% - 75px);top:77px;width:150px;height:150px;border-radius:28px;background:repeating-linear-gradient(0deg,#ced5c430 0 2px,transparent 2px 7px),linear-gradient(135deg,#adbf96,#45523a);transform:rotate(-23deg) skew(8deg,8deg);box-shadow:10px 13px 0 #38482c,20px 26px 0 #2b3921,25px 38px 30px #0004}.material-card.resin{background:radial-gradient(ellipse at 50% 45%,#583521,#241e18 70%)}.material-card.engineering{background:radial-gradient(ellipse at 50% 40%,#374030,#1a2017 75%)}.catalogue{padding:10px 0 85px}.catalogue-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:0 0 22px;margin-bottom:25px}.filter{border:1px solid var(--line);background:transparent;color:var(--muted);font-size:12px;border-radius:30px;padding:8px 17px}.filter[aria-pressed=true]{color:var(--bg);background:var(--acid);border-color:var(--acid)}.catalogue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.catalogue-card{border-bottom:1px solid var(--line);padding:22px 0}.catalogue-card .eyebrow{font-size:9px}.catalogue-card h3{font-size:18px;font-weight:550;line-height:1.35;margin:12px 0}.catalogue-card .price{font-size:24px;letter-spacing:-1px}.catalogue-card .tax{font-size:10px;color:var(--muted);margin-left:7px;letter-spacing:0}.catalogue-card select{display:block;background:#1b2016;color:#d4d9cb;border:1px solid #4a5440;padding:9px 10px;border-radius:4px;margin-top:15px;width:100%;font-size:12px}.stock-note{font:10px ui-monospace,monospace;color:#a0ad8d;margin-top:14px}.count{margin-left:auto;color:var(--muted);font-size:11px}.manifesto{border-top:1px solid var(--line);padding:70px 0;display:grid;grid-template-columns:1fr 1fr;gap:60px}.manifesto h2 span{color:var(--acid)}.manifesto p{color:var(--muted);max-width:430px;font-size:15px}.manifesto dl{margin:0}.manifesto dl div{border-bottom:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:40px 1fr;gap:15px}.manifesto dt{color:var(--acid);font:12px ui-monospace,monospace;padding-top:5px}.manifesto dd{margin:0;font-size:15px}.manifesto dd span{display:block;color:var(--muted);font-size:12px;margin-top:5px}.closing{border:1px solid #414d33;border-radius:var(--radius);padding:45px;background:radial-gradient(ellipse at 90% 50%,#43532b55,transparent 65%);display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:70px}.closing h2{font-size:34px;font-weight:550;letter-spacing:-1px;margin:0 0 8px}.closing p{color:var(--muted);font-size:13px;margin:0}.site-footer{border-top:1px solid var(--line);padding:35px 0}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:30px}.site-footer small{font-size:10px;color:var(--muted)}.site-footer nav{display:flex;gap:22px;font-size:12px}.content-main{min-height:60vh;padding:65px 0}.content-main h1{font-size:42px;line-height:1.1}.content-main a{color:var(--acid)}.content-main input,.content-main textarea,.content-main select{background:#f6f7ef;color:#1a2115;padding:10px;border:1px solid #626e56;border-radius:4px}.woocommerce div.product .product_title{font-size:40px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--acid);color:#1d2710;padding:13px 20px;border-radius:4px}.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error{background:#e8eddf;color:#28321d}.woocommerce .woocommerce-info a,.woocommerce .woocommerce-message a{color:#28321d}.woocommerce ul.products li.product .price,.woocommerce div.product p.price{color:var(--acid)}.woocommerce table.shop_table{border-color:var(--line)}.woocommerce-checkout #payment{color:#222;background:#e8eddf}.woocommerce ul.products li.product h2{color:var(--ink)}.woocommerce .quantity .qty{width:5em}.woocommerce form .form-row label{color:var(--ink)}.woocommerce table.shop_table td{border-color:var(--line)}[hidden]{display:none!important}
@media(min-width:1500px){.hero h1{font-size:100px}}@media(max-width:1000px){.hero h1{font-size:67px;letter-spacing:-3px}.hero{min-height:560px}.hero-scene{height:460px}.catalogue-grid{grid-template-columns:repeat(3,1fr)}.navigation{gap:18px}.material-card{min-height:330px;padding:18px}.material-card h3{left:18px;font-size:24px}}@media(max-width:700px){.shell{width:90%}.site-header{min-height:80px}.logo{font-size:18px;gap:7px}.logo-mark{width:24px;height:29px}.navigation{gap:16px}.navigation a{font-size:11px}.header-action{display:none}.hero{grid-template-columns:1fr;padding:40px 0 20px}.hero h1{font-size:clamp(55px,12vw,82px);letter-spacing:-3px;margin:20px 0}.hero-copy p{font-size:14px;max-width:310px}.hero-scene{height:380px;margin-top:-5px}.scene-label{top:20px;font-size:9px}.scene-caption{left:0;font-size:8px;bottom:70px}.hero-note{max-width:300px}.material-ticker{font-size:10px;letter-spacing:1px;gap:8px}.material-ticker i:nth-of-type(2){display:none}.materials{padding:55px 0}.section-heading{display:block}.section-heading p{margin-top:18px}.section-heading h2{font-size:37px}.material-grid{grid-template-columns:1fr}.material-card{min-height:240px}.material-card h3{bottom:25px;font-size:30px}.mini-spool{left:auto;right:30px;top:45px;width:130px;height:130px}.mini-bottle{left:auto;right:57px;top:52px;height:130px;width:80px}.mini-stack{left:auto;right:45px;top:44px;width:120px;height:120px}.material-card small{bottom:20px}.catalogue-grid{grid-template-columns:repeat(2,1fr);gap:12px 20px}.catalogue-card h3{font-size:16px}.count{width:100%;margin:8px 0 0}.manifesto{grid-template-columns:1fr;gap:15px;padding:45px 0}.closing{display:block;padding:28px;margin-bottom:45px}.closing h2{font-size:28px}.closing .button{margin-top:23px}.footer-row{display:block}.site-footer nav{margin:22px 0}.site-footer small{display:block}.notice{font-size:9px;letter-spacing:.4px}.scene-controls{bottom:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Separate content pages and compact, wrapping mobile navigation. */
.navigation a[aria-current="page"]{color:var(--acid)}.page-heading{border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:35px}.page-heading h1{font-size:clamp(42px,6vw,76px);letter-spacing:-2px;line-height:1.05;margin:15px 0}.page-intro{max-width:760px}.page-intro h2{font-size:clamp(32px,4vw,52px);line-height:1.12;letter-spacing:-1px}.page-intro p{color:var(--muted);max-width:660px}.contact-note{border-left:3px solid var(--acid);padding:6px 28px;margin:35px 0}.contact-note h3{color:var(--ink)}.page-cta{margin:40px 0}.photon-page .catalogue{padding-top:10px}.photon-page .materials{padding-top:15px}@media(max-width:700px){.site-header{flex-wrap:wrap;padding:20px 0;gap:18px}.navigation{width:100%;justify-content:space-between;gap:14px}.navigation a{font-size:13px}.page-heading h1{letter-spacing:-1px}.site-footer nav{display:flex;flex-wrap:wrap;gap:16px}}

/* Client colour revision: neutral charcoal surfaces with warm orange accents. */
:root{--bg:#141416;--panel:#202023;--ink:#f3f1ed;--muted:#b7b4bb;--line:#3c3b42;--acid:#ffad79;--orange:#ff8350}
.notice{background:#242428;color:#dedbe2;border-bottom:1px solid #3c3b42}
.navigation a{color:#ccc9d1}.header-action{border-color:#626068}.eyebrow{color:var(--muted)}
.hero-scene{background:radial-gradient(ellipse at 55% 48%,#57515b55,transparent 62%)}
.scene-grid{background-image:linear-gradient(#b7b0bf20 1px,transparent 1px),linear-gradient(90deg,#b7b0bf20 1px,transparent 1px)}
.orbit{border-color:#b4abb929}.scene-label{color:#aaa2af}.scene-label span{color:#96909c}.scene-caption{color:#aaa2af}
.motion{color:#d0cbd5;border-color:#625b69;background:#141416aa}.hero-note{color:#aaa3ae}
.button,.content-main a.button{background:var(--acid);border-color:var(--acid);color:#291b13}.button:hover,.content-main a.button:hover{background:#ffc5a0;border-color:#ffc5a0}
.text-link{border-color:#86808d}.material-ticker{color:#b6afbf}.material-ticker i{color:#9d91a6}
.material-card,.material-card.engineering{background:linear-gradient(145deg,#2a292e,#1b1b1e)}.material-card.resin{background:radial-gradient(ellipse at 50% 45%,#493629,#211f22 75%)}.material-card:hover{border-color:#b79075}
.mini-spool{background:repeating-radial-gradient(circle,#ffffff30 0 1px,#00000030 2px 3px),#cb9472;box-shadow:12px 17px 0 #696269,22px 35px 32px #0005}.mini-spool:after{background:#242126}
.mini-stack{background:repeating-linear-gradient(0deg,#ddd4df30 0 2px,transparent 2px 7px),linear-gradient(135deg,#b7a6c2,#66556d);box-shadow:10px 13px 0 #514456,20px 26px 0 #3e3442,25px 38px 30px #0004}
.catalogue-card select{background:#242328;color:#e2dee7;border-color:#625b69}.stock-note{color:#b7aabd}
.closing{border-color:#50464a;background:radial-gradient(ellipse at 90% 50%,#80604b30,transparent 65%)}
.content-main input,.content-main textarea,.content-main select{background:#f4f1f5;color:#252127;border-color:#77707d}
.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error,.woocommerce-checkout #payment{background:#eeeaef;color:#29252d}
.woocommerce .woocommerce-info a,.woocommerce .woocommerce-message a{color:#29252d}
https://www.balegalog.co.za/