@font-face{font-family:Manrope;src:url('/fonts/manrope-latin-wght-normal.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{font-family:Manrope,Arial,sans-serif;color:#172034;background:#eaf0f7;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;padding:28px 14px 48px;background:radial-gradient(circle at 15% 0%,#dce9f5 0,transparent 34%),#eaf0f7}
button,input{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.42}
button:focus-visible,input:focus-visible,video:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #3158ee;outline-offset:3px}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{letter-spacing:-.045em}
h1{font-size:clamp(32px,4.5vw,54px);line-height:1.07}
h2{font-size:clamp(27px,3.2vw,38px);line-height:1.12}
h3{font-size:clamp(20px,2.2vw,26px);line-height:1.2}
p{line-height:1.55}
[hidden]{display:none!important}
.studio{width:min(100%,1180px);margin:0 auto;background:#fff;border:1px solid #ccd9e8;border-radius:25px;overflow:hidden;box-shadow:0 20px 70px rgba(22,39,73,.12)}
.studio__header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(20px,4vw,45px);background:#101b31;color:#d8e2f6}
.studio__brand{color:#a0f0d0;text-decoration:none;font-size:15px;font-weight:850;letter-spacing:.08em}
.studio__tag{font-size:11px;font-weight:850;letter-spacing:.18em;text-align:right}
.studio__hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.8fr);align-items:center;gap:clamp(24px,4vw,52px);padding:clamp(28px,5vw,62px) clamp(20px,5vw,60px);background:radial-gradient(circle at 80% 4%,#35487c 0,transparent 32%),linear-gradient(145deg,#15233e,#101b31);color:#fff}
.studio__hero-copy{min-width:0}
.studio__step,.eyebrow{font-size:12px;font-weight:850;letter-spacing:.18em;color:#2753d3;text-transform:uppercase}
.studio__hero .studio__step{color:#9cecc9;margin-bottom:15px}
.studio__summary{max-width:620px;margin-top:22px;color:#d6deec;font-size:clamp(16px,1.65vw,20px)}
.studio__source{max-width:530px;margin-top:27px;padding-left:16px;border-left:3px solid #9cecc9;color:#c4d1e2;font-size:12px;line-height:1.5}
.studio__video-card{min-width:0;padding:12px;background:#223252;border:1px solid #63708e;border-radius:20px;box-shadow:0 24px 38px rgba(0,0,0,.16)}
.studio__video-top{display:flex;justify-content:space-between;gap:12px;padding:3px 4px 11px;color:#b0f0d6;font-size:10px;font-weight:850;letter-spacing:.14em}
.studio__video-card video{display:block;width:100%;aspect-ratio:16/9;border-radius:10px;background:#0e1930;object-fit:contain}
.studio__video-card p{padding:12px 5px 2px;color:#d5dfec;font-size:12px}
.studio__transcript{margin:9px 5px 3px;color:#d5dfec;font-size:12px;line-height:1.55}
.studio__transcript summary{width:max-content;max-width:100%;padding:4px 0;color:#a0f0d0;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.studio__transcript p{padding:8px 0 2px}
.studio__exercise{padding:clamp(28px,5vw,60px)}
.studio__exercise-head{max-width:700px;margin-bottom:27px}
.studio__exercise-head .studio__step{margin-bottom:10px}
.studio__exercise-head>p:last-child{margin-top:13px;color:#53637c;font-size:16px}
#exercise-content{display:grid;gap:25px}
.photo-frame{min-width:0;align-self:start;position:relative;overflow:hidden;background:#edf3f7;border:1px solid #d2dfec;border-radius:18px;box-shadow:0 15px 35px rgba(28,45,77,.1)}
.photo-frame img{display:block;width:100%;height:auto;max-width:100%}
.photo-frame__caption{position:relative;z-index:2;padding:10px 14px;background:#eef3f8;color:#435571;font-size:11px;font-weight:750;line-height:1.4}
.eyebrow{margin-bottom:10px}
.firstlook-layout{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.78fr);align-items:start;gap:25px}
.firstlook-frame{width:100%;max-width:760px}
.marker-layer{position:absolute;z-index:2;inset:0 0 38px;pointer-events:none}
.photo-marker{position:absolute;display:grid;place-items:center;width:39px;height:39px;padding:0;transform:translate(-50%,-50%);background:#a3f3d1;border:3px solid #fff;border-radius:50%;box-shadow:0 3px 16px rgba(8,21,41,.42);color:#132743;font-size:23px;font-weight:800;line-height:1;pointer-events:auto;transition:transform .18s,background .18s}
.photo-marker:hover,.photo-marker:focus-visible{transform:translate(-50%,-50%) scale(1.12);background:#fff}
.decision-panel,.plan-panel,.rooms-panel{min-width:0;padding:24px;background:#f2f6fb;border:1px solid #d9e3ee;border-radius:18px}
.decision-panel h3,.plan-panel h3,.rooms-panel h3{margin-bottom:18px}
.segments{display:flex;flex-wrap:wrap;gap:8px}
.segment{min-height:43px;padding:9px 15px;background:#fff;border:1px solid #b8c8dc;border-radius:11px;color:#172034;font-size:13px;font-weight:800;text-align:left;transition:background .18s,transform .18s,border-color .18s}
.segment:hover{transform:translateY(-2px);border-color:#3158ee}
.segment[aria-pressed=true]{background:#172b51;border-color:#172b51;color:#fff}
.decision-panel .segments{display:grid}
.decision-panel .segment{width:100%}
.result-card{margin-top:17px;padding:17px;background:#fff;border:1px solid #cfdbea;border-radius:13px;color:#2e4263;font-size:14px;line-height:1.55}
.result-card p+p{margin-top:6px}
.result-card strong{display:block;color:#172034}
.result-card strong:not(:first-child){margin-top:14px}
.result-card__label{display:inline-block;margin-bottom:8px;padding:5px 9px;border-radius:7px;font-size:10px;font-weight:850;letter-spacing:.09em}
.result-card__label.is-supported{background:#d6f4e7;color:#07523b}
.result-card__label.is-missing{background:#ffead9;color:#824316}
.marker-result{margin-top:16px;color:#435571;font-size:13px;font-weight:700}
.plan-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.82fr);gap:24px;align-items:start}
.plan-photo{max-width:680px}
.plan-panel{display:grid;align-content:start;gap:15px}
.plan-panel .eyebrow{margin:0}
.plan-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.plan-option,.room-tab,.audit-choice{min-height:48px;padding:10px 12px;background:#fff;border:1px solid #b8c8dc;border-radius:10px;color:#243a5a;font-size:13px;font-weight:800;text-align:left}
.plan-option:hover,.room-tab:hover,.audit-choice:hover{border-color:#3158ee}
.plan-option[aria-pressed=true],.room-tab[aria-pressed=true],.audit-choice[aria-pressed=true]{background:#172b51;border-color:#172b51;color:#fff}
.plan-panel .result-card{margin:0}
.button{min-height:43px;padding:10px 15px;border-radius:10px;font-size:13px;font-weight:850;transition:transform .18s,background .18s}
.button:hover{transform:translateY(-2px)}
.button--primary{background:#3158ee;border:1px solid #3158ee;color:#fff}
.button--primary:hover{background:#2145d1}
.button--secondary{background:#172b51;border:1px solid #172b51;color:#fff}
.button--quiet{background:#fff;border:1px solid #afbed2;color:#172b51}
.worksheet{margin-top:4px;padding:27px;background:#15233e;border:1px solid #344664;border-radius:20px;color:#fff}
.worksheet .eyebrow{color:#9cecc9}
.worksheet h3{margin-bottom:20px;max-width:620px}
.worksheet__name{display:grid;gap:7px;max-width:510px;color:#d8e2ef;font-size:13px;font-weight:800}
.worksheet input[type=text]{height:46px;padding:11px 13px;background:#fff;border:1px solid #c6d5e4;border-radius:9px;color:#172034;font-size:14px}
.worksheet__add{display:flex;gap:8px;max-width:680px;margin-top:15px}
.worksheet__add input{flex:1;min-width:0}
.worksheet__empty{margin-top:18px;color:#d5deed;font-size:14px}
.shot-list{display:grid;gap:8px;max-width:780px;margin:18px 0 0;padding:0;list-style:none}
.shot-list__item{display:flex;justify-content:space-between;gap:15px;align-items:center;min-height:51px;padding:10px 12px;background:#263858;border:1px solid #536987;border-radius:10px}
.shot-list__item label{display:flex;gap:11px;align-items:center;min-width:0;font-size:14px}
.shot-list__item input{width:20px;height:20px;accent-color:#9cecc9;flex:none}
.shot-list__item input:checked+span{text-decoration:line-through;color:#b1c0d2}
.shot-list__remove{flex:none;padding:6px 8px;background:transparent;border:0;color:#d8e2ef;font-size:12px;text-decoration:underline}
.worksheet__count{margin-top:12px;color:#b8c7d9;font-size:12px}
.worksheet__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}
.worksheet__actions .button--primary{background:#9cecc9;border-color:#9cecc9;color:#13253c}
.worksheet__state{min-height:20px;margin-top:12px;color:#c7f2df;font-size:12px}
.framing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.framing-card{min-width:0;padding:18px;background:#f2f6fb;border:1px solid #d9e3ee;border-radius:17px}
.framing-card h3{margin-bottom:15px}
.crop-stage,.exposure-stage{position:relative;overflow:hidden;background:#e4ebf3;border:1px solid #cad8e7;border-radius:13px}
.crop-stage img,.exposure-stage img{display:block;width:100%;height:auto}
.crop-stage img{transform-origin:31% 55%;transition:transform .45s}
.crop-stage.is-tight img{transform:scale(1.43)}
.crop-guides{position:absolute;z-index:2;inset:0 0 34px;display:flex;justify-content:space-around;pointer-events:none}
.crop-guides span{height:100%;width:2px;background:#a2f8d3;box-shadow:0 0 0 1px #14304b,0 0 9px #14304b}
.framing-card .segments{margin-top:13px}
.framing-card .button{margin-top:9px}
.framing-card__result{margin-top:12px;color:#354967;font-size:13px}
.exposure-stage__dark{filter:brightness(.54)}
.exposure-stage__original{position:absolute;top:0;left:0;clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}
.exposure-stage__labels{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;gap:10px;pointer-events:none}
.exposure-stage__labels span{padding:5px 7px;background:rgba(19,32,52,.78);border-radius:6px;color:#fff;font-size:9px;font-weight:850;letter-spacing:.05em}
.slider-label{display:flex;align-items:center;gap:12px;margin-top:16px;color:#293f60;font-size:13px;font-weight:850}
.slider-label input{flex:1;min-width:40px;accent-color:#3158ee}
.slider-label output{min-width:35px;text-align:right;font-size:12px}
.room-tabs{display:flex;flex-wrap:wrap;gap:8px}
.room-tab{min-width:110px;text-align:center}
.rooms-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.72fr);gap:24px;align-items:start}
.rooms-photo{max-width:720px}
.rooms-panel{display:grid;align-content:start;gap:15px}
.rooms-panel .eyebrow,.rooms-panel h3{margin:0}
.rooms-panel__evidence{min-height:81px;margin:0}
.rooms-panel .button{justify-self:start}
.rooms-panel__next{padding:14px 16px;background:#e0f7eb;border-left:4px solid #2d9b72;border-radius:5px;color:#264c3e;font-size:13px}
.gallery-intro{padding:19px 22px;background:#eaf5f1;border:1px solid #bee3d4;border-radius:12px}
.gallery-intro strong{font-size:14px}
.gallery-intro p{margin-top:5px;color:#40586a;font-size:13px}
.gallery-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;list-style:none;margin:0;padding:0}
.gallery-card{min-width:0;padding:7px;background:#fff;border:1px solid #cdd9e8;border-radius:13px;box-shadow:0 6px 16px rgba(32,48,78,.07)}
.gallery-card__image{position:relative;overflow:hidden;border-radius:8px}
.gallery-card__image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.gallery-card__rank{position:absolute;top:8px;left:8px;display:grid;place-items:center;width:30px;height:30px;background:#a5f1d1;border-radius:8px;color:#172034;font-size:12px;font-weight:850}
.gallery-card__body{display:grid;gap:3px;min-height:67px;padding:10px 4px 5px}
.gallery-card__body strong{font-size:14px}
.gallery-card__body span{color:#63718a;font-size:10px;line-height:1.35}
.gallery-card__controls{display:flex;gap:5px}
.gallery-card__controls button{flex:1;min-height:37px;padding:5px;background:#eff4fc;border:1px solid #bfcde0;border-radius:7px;color:#25416b;font-size:10px;font-weight:850}
.gallery-card__controls button:not(:disabled):hover{background:#dbe8ff}
.gallery-actions{display:flex;flex-wrap:wrap;gap:8px}
.gallery-note{padding:16px 18px;background:#f1f5fb;border-left:4px solid #3158ee;border-radius:7px;color:#334a6b;font-size:14px}
.publish-section{padding:23px;background:#f2f6fb;border:1px solid #d9e3ee;border-radius:17px}
.publish-section h3{margin-bottom:17px}
.cover-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cover-card{display:grid;overflow:hidden;padding:7px;background:#fff;border:2px solid #d1dce9;border-radius:13px;color:#172034;text-align:left}
.cover-card:hover{border-color:#3158ee}
.cover-card[aria-pressed=true]{border-color:#3158ee;box-shadow:0 0 0 3px rgba(49,88,238,.15)}
.cover-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:8px}
.cover-card__label{padding:10px 4px 1px;font-size:15px;font-weight:850}
.cover-card__mock{padding:0 4px 6px;color:#61728a;font-size:11px}
.cover-result{max-width:760px}
.audit-layout{display:grid;grid-template-columns:minmax(170px,.57fr) minmax(0,1.2fr) minmax(200px,.73fr);gap:15px;align-items:start}
.audit-choices{display:grid;gap:8px}
.audit-photo{max-width:600px}
.audit-result{margin:0}
.metrics__intro{max-width:740px;margin-bottom:17px;color:#53637c;font-size:14px}
.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.metric-set{display:grid;gap:10px;padding:17px;background:#fff;border:1px solid #d1dce9;border-radius:12px}
.metric-set>strong{font-size:17px}
.metric-set label{display:grid;grid-template-columns:1fr 100px;align-items:center;gap:8px;color:#465a75;font-size:13px}
.metric-set input{width:100%;height:39px;padding:7px 9px;border:1px solid #aebfd3;border-radius:7px;color:#172034}
.metric-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.metric-bars__group{padding:14px;background:#fff;border:1px solid #d1dce9;border-radius:11px}
.metric-bars__group strong{display:block;margin-bottom:10px;font-size:12px}
.metric-bars__line{display:grid;grid-template-columns:46px 1fr 44px;align-items:center;gap:8px;margin-top:7px;color:#53637c;font-size:11px}
.metric-bars__line b{text-align:right;color:#172034}
.metric-bars__line progress{width:100%;height:11px;accent-color:#3158ee}
.metric-bars__scale{display:block;margin-top:9px;color:#65768c;font-size:10px}
.metric-result{margin-top:14px;padding:14px;background:#172b51;border-radius:10px;color:#fff;font-size:13px}
@media(max-width:1050px){.firstlook-layout,.plan-layout,.rooms-layout{grid-template-columns:1fr}.decision-panel,.plan-panel,.rooms-panel{max-width:760px}.audit-layout{grid-template-columns:200px minmax(0,1fr)}.audit-result{grid-column:1/-1}.gallery-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){body{padding:0;background:#fff}.studio{border:0;border-radius:0;box-shadow:none}.studio__hero{grid-template-columns:1fr}.studio__video-card{max-width:540px}.framing-grid{grid-template-columns:1fr}.framing-card{max-width:700px}.audit-layout{grid-template-columns:1fr}.audit-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-result{grid-column:auto}.gallery-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.studio__header{padding:13px 16px}.studio__brand{font-size:12px}.studio__tag{font-size:9px;letter-spacing:.1em}.studio__hero{gap:25px;padding:27px 17px}.studio__summary{margin-top:14px}.studio__source{margin-top:18px}.studio__exercise{padding:28px 15px}.studio__exercise-head{margin-bottom:20px}.studio__exercise-head>p:last-child{font-size:14px}.decision-panel,.plan-panel,.rooms-panel,.worksheet,.publish-section{padding:17px}.firstlook-layout,.plan-layout,.rooms-layout,#exercise-content{gap:16px}.photo-marker{width:33px;height:33px;font-size:20px}.plan-options,.cover-cards,.metric-grid,.metric-bars{grid-template-columns:1fr}.worksheet__add{flex-wrap:wrap}.worksheet__add .button{width:100%}.gallery-list{grid-template-columns:1fr}.gallery-card__body{min-height:0;padding:10px 4px}.gallery-card__controls button{font-size:12px}.room-tab{flex:1;min-width:calc(50% - 4px)}.audit-choices{grid-template-columns:1fr}.metric-set label{grid-template-columns:1fr 95px}.exposure-stage__labels span{font-size:8px}.slider-label{flex-wrap:wrap}.slider-label input{order:3;flex-basis:100%}}
@media(max-width:370px){.studio__tag{max-width:130px}.segment{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media print{body{padding:0;background:#fff}.studio{border:0;box-shadow:none}.studio__header,.studio__hero,.studio__exercise-head,.plan-layout,.worksheet__add,.worksheet__actions,.worksheet__state{display:none!important}.studio__exercise{padding:0}.worksheet{margin:0;padding:0;background:#fff;border:0;color:#111}.worksheet .eyebrow{color:#111}.worksheet__name{color:#111}.worksheet input[type=text]{border:0;border-bottom:1px solid #777;border-radius:0}.shot-list__item{background:#fff;border:0;border-bottom:1px solid #aaa;color:#111}.shot-list__remove{display:none}.worksheet__count{color:#111}}
