/* Level Up View — editorial public website */
:root{--luv-paper:#f1ede6;--luv-ink:#222c2b;--luv-gold:#9a7950;--luv-rule:#bfb5a7;}
.luv-page{background:var(--luv-paper);color:var(--luv-ink);cursor:auto;}
.luv-page *{box-sizing:border-box;}
.luv-page #nav{opacity:1;visibility:visible;transform:none;pointer-events:auto;background:linear-gradient(#0008,transparent);color:#fff;padding-bottom:25px;}
.luv-page #nav.nav-paper{background:#f1ede6ef;color:var(--luv-ink);backdrop-filter:blur(12px);}
#nav .menu-open{background:none;border:0;color:inherit;cursor:pointer;font-size:11px;letter-spacing:.13em;padding:8px 0 8px 12px;}
.skip-link{position:fixed;top:-80px;left:16px;z-index:50;background:var(--luv-paper);color:var(--luv-ink);padding:14px;}.skip-link:focus{top:12px;}
.site-menu{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;border:0;background:var(--luv-paper);color:var(--luv-ink);padding:35px 6vw;overflow:auto;overscroll-behavior:contain;}
.site-menu::backdrop{background:#1c2824aa;backdrop-filter:blur(8px);}
.menu-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--luv-rule);padding-bottom:25px;gap:20px;}
.menu-close{background:none;border:0;color:inherit;padding:10px;cursor:pointer;}
.menu-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:7vw;padding:30px 0;}
.menu-grid a{font:normal clamp(23px,3vw,42px)/1.2 'Marcellus',Georgia,serif;padding:15px 0;display:flex;justify-content:space-between;border-bottom:1px solid #bfb5a750;text-decoration:none;gap:20px;}
.menu-grid a span{color:var(--luv-gold);font-size:20px;}.menu-grid a[aria-current]{color:var(--luv-gold);}
.menu-bottom{font-size:11px;letter-spacing:.14em;padding-bottom:20px;}
.luv-hero{position:relative;min-height:720px;height:92svh;max-height:1200px;overflow:hidden;background:#182522;color:#fff;}
.luv-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.luv-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101b1bba,transparent 90%),linear-gradient(0deg,#0009,transparent 70%);}
.luv-hero-copy{position:absolute;left:6vw;right:6vw;bottom:15%;max-width:960px;}
.luv-hero-copy>.mono{font-size:11px;letter-spacing:.16em;}
.luv-hero h1{font:normal clamp(44px,6.4vw,98px)/1.02 'Marcellus',Georgia,serif;letter-spacing:-.025em;margin:25px 0;}
.hero-description{font:normal clamp(17px,1.6vw,23px)/1.6 Arial,sans-serif;max-width:620px;margin:0 0 28px;}
.hero-credit{position:absolute;bottom:25px;right:6vw;left:6vw;text-align:right;font-size:9px;letter-spacing:.11em;}
.luv-section{padding:90px 6vw;position:relative;}
.luv-section h2,.image-essay h2{font:normal clamp(32px,4vw,60px)/1.13 'Marcellus',Georgia,serif;letter-spacing:-.025em;margin:20px 0 30px;}
.luv-section h3{font:normal clamp(22px,2.2vw,31px)/1.22 'Marcellus',Georgia,serif;margin:25px 0 16px;}
.luv-section p,.luv-card p,.image-essay p{font:normal 16px/1.75 Arial,sans-serif;max-width:780px;}
.eyebrow{display:block;font-size:10px;letter-spacing:.13em;color:var(--luv-gold);margin-bottom:15px;}
.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;align-items:start;}
.intro-grid .lead{font-size:clamp(18px,1.65vw,24px);padding-top:16px;line-height:1.7;}
.text-link{display:inline-block;text-decoration:none;font:11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.09em;border-bottom:1px solid currentColor;padding:12px 0;color:inherit;}
.button-link{display:inline-block;font:11px/1.5 'IBM Plex Mono',monospace;letter-spacing:.08em;border:1px solid currentColor;text-decoration:none;padding:18px 28px;color:inherit;background:transparent;cursor:pointer;}
.text-link:hover,.button-link:hover{color:var(--luv-gold);}.button-link:focus-visible,.menu-open:focus-visible{outline:2px solid currentColor;outline-offset:5px;}
.luv-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 5vw;}
.luv-card{border-top:1px solid var(--luv-rule);padding-top:22px;}.luv-card>.mono{color:var(--luv-gold);font-size:11px;}.luv-card p{max-width:520px;}
.image-essay{display:grid;grid-template-columns:1.1fr 1fr;background:#263b35;color:var(--luv-paper);min-height:580px;}
.image-essay>img{width:100%;height:100%;object-fit:cover;max-height:760px;min-height:580px;}
.image-essay>div{align-self:center;padding:70px 6vw;}.image-essay .mono{font-size:10px;color:#d7c6a8;}
.philosophy-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:6vw;align-items:center;}
.connection-graphic{width:100%;height:auto;color:var(--luv-gold);overflow:visible;}
.trace-line{stroke-dasharray:1600;stroke-dashoffset:1600;transition:stroke-dashoffset 2.6s ease;}.seen .trace-line{stroke-dashoffset:0;}
.signal-orbit{transform-origin:380px 200px;animation:signal-orbit 40s linear infinite;}@keyframes signal-orbit{to{transform:rotate(360deg);}}
.diagram-note{text-align:center;font-size:9px;color:var(--luv-gold);letter-spacing:.08em;}
.luv-cta{border-top:1px solid var(--luv-rule);display:flex;justify-content:space-between;align-items:center;gap:30px;}.luv-cta h2{max-width:750px;}.luv-cta a{flex-shrink:0;}
.luv-footer{position:relative;min-height:700px;color:#fff;background:#17251f;overflow:hidden;}
.footer-photo{position:absolute;inset:0;background:linear-gradient(#0006,#000b),url('./assets/project-photos/night-pavilion.jpg') center/cover;}
.footer-inner{position:relative;padding:110px 6vw 35px;}.footer-inner>.mono{font-size:10px;letter-spacing:.15em;}
.footer-inner h2{font:normal clamp(42px,5.5vw,85px)/1.1 'Marcellus',Georgia,serif;margin:35px 0 60px;letter-spacing:-.02em;}
.footer-paths{display:flex;flex-wrap:wrap;gap:30px 50px;padding-bottom:70px;}.footer-paths a{font:18px/1.5 Arial,sans-serif;border-bottom:1px solid #fff8;text-decoration:none;}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;border-top:1px solid #fff5;padding-top:30px;font-size:9px;letter-spacing:.08em;}
.compare-controls{display:flex;gap:12px;margin:28px 0;}.compare-controls button,.step-tabs button{background:transparent;border:1px solid var(--luv-rule);color:var(--luv-ink);padding:14px 18px;font:12px Arial,sans-serif;cursor:pointer;}
.compare-controls button[aria-pressed=true],.step-tabs button[aria-selected=true]{background:var(--luv-ink);color:var(--luv-paper);border-color:var(--luv-ink);}
.comparison-note{max-width:750px!important;color:#53625c;}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;}.compare-grid figure{margin:0;min-width:0;}
.compare-image{aspect-ratio:4/3;background:#273a35;overflow:hidden;}.compare-image img{width:100%;height:100%;object-fit:cover;}.compare-grid figcaption{font-size:9px;letter-spacing:.1em;padding:20px 0;}
.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 25px;margin-top:45px;}.photo-gallery figure{margin:0;}.photo-gallery img{width:100%;height:auto;display:block;}.photo-gallery figcaption{padding-top:16px;font-size:9px;letter-spacing:.1em;}
.photo-gallery figure:nth-child(3){grid-column:1/-1;}.photo-gallery figure:nth-child(3) img{max-height:730px;object-fit:cover;}
.project-feature a{display:grid;grid-template-columns:1.2fr 1fr;text-decoration:none;gap:5vw;align-items:center;}.project-feature img{width:100%;height:550px;object-fit:cover;}.project-feature .mono{font-size:10px;color:var(--luv-gold);}
.faq{margin-top:35px;max-width:960px;}.faq details{border-top:1px solid var(--luv-rule);padding:22px 0;}.faq summary{cursor:pointer;font:20px/1.5 'Marcellus',Georgia,serif;}.faq details p{margin:18px 0 0;}
.roadmap{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:35px;}.roadmap li{border-top:1px solid var(--luv-rule);padding-top:22px;}.roadmap .mono{font-size:10px;color:var(--luv-gold);}
.status-note{font:13px/1.7 Arial,sans-serif!important;color:#5c6a63;max-width:850px!important;border-left:2px solid var(--luv-gold);padding:10px 0 10px 20px;margin-top:30px;}
.field-strip{display:flex;flex-wrap:wrap;gap:10px;margin:35px 0;}.field-strip span{border:1px solid var(--luv-rule);padding:12px;font:11px monospace;}
.formula-panel{background:#22352e;color:var(--luv-paper);padding:35px;margin-top:65px;}.formula-panel>.mono{font-size:10px;color:#d6bb8e;}.formula-panel p{font-family:monospace;font-size:clamp(13px,1.5vw,20px);}.formula-panel small{display:block;font:13px/1.6 Arial,sans-serif;max-width:700px;}.formula-panel hr{border:0;border-top:1px solid #ffffff40;margin:25px 0;}
.report-preview{background:#fcfaf6;padding:45px 5vw;max-width:1000px;border:1px solid var(--luv-rule);box-shadow:0 15px 60px #302e2610;}.report-mast{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;border-bottom:1px solid var(--luv-rule);padding-bottom:24px;}.report-mast .mono{font-size:10px;}.report-preview dl>div{display:grid;grid-template-columns:160px 1fr;gap:25px;padding:16px 0;border-top:1px solid #bbb5aa55;font:14px/1.6 Arial,sans-serif;}.report-preview dd{margin:0;}
.workflow-demo{display:grid;grid-template-columns:270px 1fr;gap:5vw;}.step-tabs{display:flex;flex-direction:column;gap:12px;}.step-tabs button{text-align:left;}.step-panel{border-top:1px solid var(--luv-rule);padding:25px 0;}.step-panel>.mono{font-size:11px;color:var(--luv-gold);}.step-panel .connection-graphic{max-width:520px;max-height:270px;}
.brief-section{display:grid;grid-template-columns:1.5fr 1fr;gap:6vw;}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}.form-grid label{display:flex;flex-direction:column;gap:10px;font:13px Arial,sans-serif;}.form-grid .full{grid-column:1/-1;}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--luv-rule);background:#f9f6f0;color:var(--luv-ink);padding:15px;font:16px/1.4 Arial,sans-serif;border-radius:0;}.form-grid textarea{resize:vertical;}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{outline:2px solid var(--luv-gold);outline-offset:2px;}.brief-section button{margin-top:30px;}.brief-section aside{border-top:1px solid var(--luv-rule);padding-top:25px;}.brief-section aside>.mono{font-size:10px;color:var(--luv-gold);}.brief-section aside h3{font-size:38px;}.legal-copy{max-width:1100px;}
.luv-section.seen .connection-graphic{opacity:1;}[hidden]{display:none!important;}
.home-study{background:#e7dfd2;display:grid;grid-template-columns:1fr auto;gap:4vw;align-items:end;}.home-study .intro-grid{grid-column:1/-1;}
.potential-section{display:grid;grid-template-columns:minmax(240px,.62fr) minmax(0,1.4fr);gap:28px;align-items:stretch;padding-top:25px;}
.potential-controls{display:flex;flex-direction:column;border-top:1px solid var(--luv-rule);}.potential-controls button{appearance:none;background:transparent;border:0;border-bottom:1px solid var(--luv-rule);padding:18px 8px;text-align:left;display:grid;grid-template-columns:35px 1fr;gap:3px;cursor:pointer;color:inherit;transition:background .25s,color .25s,padding .25s;}.potential-controls button span{grid-row:span 2;color:var(--luv-gold);font:10px monospace;padding-top:4px;}.potential-controls button b{font:normal 20px/1.15 'Marcellus',Georgia,serif;}.potential-controls button small{font:12px/1.4 Arial,sans-serif;color:#607069;}.potential-controls button[aria-pressed=true],.potential-controls button:hover{background:var(--luv-ink);color:var(--luv-paper);padding-left:16px;}.potential-controls button[aria-pressed=true] small,.potential-controls button:hover small{color:#e7dfd2;}
.potential-scene{position:relative;min-height:560px;margin:0;overflow:hidden;background:#233731;}.potential-scene img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.03);transition:transform 1s ease,filter .7s ease;}.potential-scene[data-potential-scene=water] img{object-position:center;}.potential-scene[data-potential-scene=shade] img{object-position:66% 50%;transform:scale(1.08);filter:saturate(.65) brightness(.86);}.potential-scene[data-potential-scene=fire] img{filter:saturate(.55) brightness(.55) sepia(.15);transform:scale(1.07);}.potential-scene[data-potential-scene=planting] img{object-position:25% center;transform:scale(1.1);filter:saturate(1.14) contrast(1.04);}.potential-scene[data-potential-scene=light] img{filter:saturate(.45) brightness(.43) sepia(.2);transform:scale(1.04);}.potential-overlay{position:absolute;inset:0;padding:35px;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(0deg,#102019d9,transparent 67%);color:#fff;}.potential-label{font:10px monospace;letter-spacing:.14em;color:#e6c691;margin-bottom:15px;}.potential-overlay strong{font:normal clamp(34px,4vw,58px)/1.05 'Marcellus',Georgia,serif;max-width:600px;}.potential-overlay p{font:16px/1.65 Arial,sans-serif;max-width:560px;margin:18px 0 0;}
.material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;}.material-card{position:relative;margin:0;min-height:520px;overflow:hidden;background:#1c2c27;color:var(--luv-paper);}.material-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.74);transition:transform .7s ease,filter .5s ease;}.material-card:hover>img{transform:scale(1.055);filter:brightness(.58) saturate(.8);}.material-card>div{position:absolute;inset:auto 0 0;padding:30px;background:linear-gradient(transparent,#13211ce6 40%);}.material-card .mono{font-size:10px;color:#e4c590;}.material-card h3{margin:12px 0 7px;font-size:31px;}.material-card p{margin:0;font-size:14px;line-height:1.6;}.detail-principles{background:#223731;color:var(--luv-paper);}.detail-principles .eyebrow{color:#ddc08c;}.detail-principles .lead{font-size:clamp(19px,2vw,28px);line-height:1.6;max-width:850px;}
@media(max-width:800px){.luv-hero{min-height:650px;}.intro-grid,.philosophy-grid,.brief-section{grid-template-columns:1fr;gap:25px;}.intro-grid .lead{padding-top:0;}.image-essay{grid-template-columns:1fr;}.image-essay>img{min-height:0;height:450px;}.image-essay>div{padding:55px 6vw;}.luv-cta{flex-direction:column;align-items:flex-start;}.workflow-demo{grid-template-columns:1fr;}.step-tabs{display:grid;grid-template-columns:repeat(3,1fr);}.project-feature a{grid-template-columns:1fr;}.project-feature img{height:400px;}}
@media(max-width:620px){#nav .links{display:none;}.luv-hero{height:90svh;min-height:640px;}.luv-hero-copy{bottom:14%;}.luv-hero h1{font-size:44px;}.hero-description{font-size:17px;}.hero-credit{font-size:8px;text-align:left;}.luv-section{padding:60px 6vw;}.luv-cards,.compare-grid,.photo-gallery,.roadmap,.material-grid{grid-template-columns:1fr;}.menu-grid{grid-template-columns:1fr;padding-top:20px;}.menu-grid a{font-size:25px;padding:12px 0;}.menu-top{font-size:10px;}.photo-gallery figure:nth-child(3){grid-column:auto;}.photo-gallery{gap:30px;}.luv-footer{min-height:650px;}.footer-inner{padding:80px 6vw 30px;}.footer-paths{flex-direction:column;align-items:flex-start;gap:20px;padding-bottom:40px;}.footer-inner h2{font-size:42px;}.form-grid{grid-template-columns:1fr;}.form-grid .full{grid-column:auto;}.report-preview{padding:30px 6vw;}.report-preview dl>div{grid-template-columns:1fr;gap:6px;}.step-tabs button{font-size:11px;padding:12px 8px;}.image-essay>img{height:360px;}.home-study,.potential-section{grid-template-columns:1fr;}.potential-scene{min-height:460px;}.material-card{min-height:440px;}}
@media(prefers-reduced-motion:reduce){.signal-orbit{animation:none;}.trace-line{stroke-dashoffset:0;transition:none;}html{scroll-behavior:auto;}}

/* Local material lens — original drawing geometry is preserved. */
.material-layer {opacity:0;transition:opacity .38s ease;pointer-events:none;}
.material-figure.is-material-active .material-layer {opacity:1;}
.material-figure {cursor:crosshair;touch-action:pan-y;outline-offset:6px;}
.material-figure:focus-visible {outline:1px solid var(--luv-gold);}
.material-hint,.luv-section .material-hint {font:8px/1.6 'IBM Plex Mono',monospace;letter-spacing:.08em;margin-top:14px;color:var(--luv-gold);}
.material-study .project {display:block;padding:25px 0;margin:0;border:0;}
.material-study .p-fig {max-width:1000px;margin:0 auto;}
.material-figure .real-fire {transform-origin:330px 205px;animation:fire-breathe 1.5s ease-in-out infinite alternate;}
@keyframes fire-breathe {from{opacity:.88;transform:scale(.97);}to{opacity:1;transform:scale(1.02);}}
.material-layer .water-ripple {animation:water-shimmer 3s ease-in-out infinite alternate;}
@keyframes water-shimmer {to{opacity:.45;transform:translateY(1px);}}
@media(prefers-reduced-motion:reduce){.material-layer{transition:none;}.material-figure .real-fire,.material-layer .water-ripple{animation:none;}}
