/* Shared Lights On finish: white, graphite and gold. */
:root{--gold-ink:#795b17;--gold-wash:#f4f5f5;--rule:#e1e4e5}
body{margin:0} .wrap{max-width:1240px}
.nav{background:#fff;position:relative}.nav .wrap{padding-block:10px}.brand-logo{height:96px}.links a{font-size:14px}
.btn{border-radius:8px;min-height:46px;line-height:1.3}.btn.gold{background:#14191c;border-color:#14191c;color:white}.btn.gold:hover{background:#30383c}
.tag{color:#795b17;letter-spacing:.13em;font-size:11px;line-height:1.7}
.hero{background:#f5f6f6}.hero .wrap{padding-block:46px}.hero h1{font-size:clamp(32px,4vw,52px);line-height:1.13;letter-spacing:-.045em;max-width:23ch}.hero .lede{line-height:1.75;max-width:65ch;font-size:17px}
.hero-copy .wrap{padding-block:54px 32px;gap:60px;align-items:center}.hero-copy h1{font-size:clamp(36px,4.3vw,62px);max-width:18ch;line-height:1.08}.hero-copy .tag{max-width:55ch}.hero-copy .lede-support{font-size:16px;line-height:1.75}.hero>.wrap:has(.hero-art){padding-block:0 36px}.hero-art{border-radius:12px;max-height:520px;object-fit:cover;object-position:center}
.band{padding-block:64px}.head{margin-bottom:28px}.head h2{font-size:clamp(28px,3vw,38px);line-height:1.2;max-width:29ch}.head p{font-size:16px;line-height:1.75}
.card,.result,.summary,.waiting{border-radius:12px;box-shadow:0 8px 28px #16212a06}.result,.summary{background:#f4f5f5;border-color:#dce1e3}.close{background:#f4f5f5}.card p{line-height:1.7}
input,textarea,select{border:1px solid #bac3c7;border-radius:7px;font:inherit;min-height:46px;padding:12px;color:#172126;background:#fff;width:100%}textarea{min-height:150px;resize:vertical}label{color:#46535b;font-size:12px;letter-spacing:.035em}
:focus-visible{outline:3px solid #8e701d;outline-offset:3px}#book{padding:28px;border:1px solid #dfe4e6;border-radius:14px;background:#fff;box-shadow:0 16px 40px #16212a08}.step-h{padding-top:20px}.step-h:first-child{padding-top:0}.lo-cal{border-radius:10px}.side{top:24px}
.inquiry-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.85fr);gap:40px;align-items:start}.inquiry-form{display:grid;gap:20px;padding:32px;border:1px solid var(--rule);border-radius:14px;box-shadow:0 16px 40px #16212a08}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px}.consent{display:flex;gap:10px;align-items:start;letter-spacing:0;font-size:14px;text-transform:none}.consent input{width:18px;height:18px;min-height:18px;flex:none;margin-top:3px}.inquiry-aside{display:grid;gap:22px}.inquiry-aside h2{font-size:24px}.inquiry-aside p{font-size:15px;line-height:1.8}.inquiry-aside img{width:100%;height:230px;object-fit:cover;border-radius:12px}.inquiry-form .error{color:#9b302c}.inquiry-receipt{padding:32px;border:1px solid #bdd5c7;border-radius:14px;background:#f1f7f3}.inquiry-receipt h2{font-size:28px}.inquiry-receipt p{margin-block:16px}
@media(max-width:820px){.hero-copy .wrap{gap:24px}.hero h1{max-width:26ch}.inquiry-layout{grid-template-columns:1fr}.brand-logo{height:auto;width:min(240px,calc(100vw - 150px))}.band{padding-block:38px}.hero .wrap{padding-block:32px}.hero>.wrap:has(.hero-art){padding-block:0 24px}.hero-art{max-height:320px}.inquiry-form,#book{padding:20px}.form-pair{grid-template-columns:1fr}.inquiry-aside img{height:200px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


.form-protection{min-width:0;max-width:100%;margin-block:14px}.form-protection-status{font-size:13px;line-height:1.6;color:#46535b}
/* Consistent, stationary portfolio cards; Pinnacle supplies the proportions. */
#frank-adderley{margin:0;scroll-margin-top:24px}.stack{gap:28px}.card:hover .device{transform:none}.device{transition:none}.gallery-feature{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.gallery-stage{padding-bottom:8%}.gallery-stage .laptop{padding:9px 9px 0}.gallery-stage .laptop img{width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;background:#111}
.gallery-phone{position:absolute;right:0;bottom:0;width:22%;padding:5px;border-radius:17px;background:#111;box-shadow:0 20px 35px -18px #10151980}.gallery-phone img{display:block;width:100%;height:auto;border-radius:12px;object-fit:contain;object-position:top}.gallery-phone a{border-radius:12px;overflow:hidden}
.lightson-stage{margin:0 0 5%;padding-bottom:7%}.preview-trigger{display:block;cursor:zoom-in;text-decoration:none;position:relative}.preview-trigger:focus-visible{outline:3px solid #997420;outline-offset:5px}.preview-trigger::after{content:'↗';position:absolute;right:10px;top:10px;background:#fffef5;color:#172126;border:1px solid #d9d3c3;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font:18px/1 sans-serif;box-shadow:0 2px 8px #0002}.gallery-phone .preview-trigger::after,.pip .preview-trigger::after{display:none}
#portfolio-preview{width:min(1200px,calc(100vw - 32px));height:calc(100dvh - 40px);max-height:calc(100dvh - 40px);max-width:none;padding:0;border:1px solid #62686b;border-radius:12px;background:#e6e8e8;color:#162126;overflow:hidden;box-shadow:0 28px 100px #0008}#portfolio-preview::backdrop{background:#0c1115d9}#portfolio-preview[open]{display:flex;flex-direction:column}.preview-toolbar{flex:none;display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:14px 18px;background:white;border-bottom:1px solid #ccd2d4}.preview-toolbar #preview-title{font:600 17px/1.3 var(--display);margin:0;flex:1}.preview-tabs{display:flex;gap:6px}.preview-tabs button,.preview-close{border:1px solid #b7c0c4;border-radius:6px;background:white;padding:10px 13px;cursor:pointer;font:600 13px/1.2 var(--display);min-height:42px}.preview-tabs button[aria-pressed="true"]{background:#182126;color:white;border-color:#182126}.preview-close{white-space:nowrap}.preview-scroll{overflow:auto;min-height:0;flex:1;overscroll-behavior:contain;padding:20px}.preview-scroll img{display:block;width:100%;height:auto;margin:auto;box-shadow:0 6px 24px #0002}.preview-scroll.mobile img{width:min(390px,100%)}
@media(max-width:860px){.gallery-feature{grid-template-columns:1fr}.gallery-stage{padding-bottom:13%}.gallery-phone{width:24%}#portfolio-preview{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.preview-toolbar{gap:10px;padding:12px}.preview-toolbar #preview-title{font-size:15px;flex-basis:calc(100% - 100px)}.preview-close{order:1}.preview-tabs{order:2;width:100%}.preview-scroll{padding:10px}.preview-tabs:empty{display:none}}

/* Keep the complete taller homepages inside slim frames, without black side bars. */
#frank-adderley .laptop,#life-after-quantum .laptop{width:83%;margin-inline:auto}#frank-adderley .laptop img,#life-after-quantum .laptop img{aspect-ratio:auto}#frank-adderley .laptop-base,#life-after-quantum .laptop-base{width:89%;margin-inline:auto}

/* One gallery system: equal cards, one common screen area and no metal runners. */
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:28px;margin-top:36px;align-items:stretch}
.portfolio-card{display:flex;flex-direction:column;gap:22px;padding:24px;border:1px solid var(--rule);border-radius:16px;background:#fff;min-width:0;box-sizing:border-box}
.portfolio-preview{position:relative;aspect-ratio:1.4;flex:none;width:100%;min-width:0}
.portfolio-monitor{position:absolute;left:0;right:0;top:0;border:7px solid #111;border-radius:12px;background:#111;overflow:hidden;box-shadow:0 10px 24px -15px #17212665}
.portfolio-monitor .preview-trigger img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;background:#111;border:0;border-radius:0;box-shadow:none}
.portfolio-companion{position:absolute;right:0;bottom:0;background:#111;border:5px solid #111;overflow:hidden;box-shadow:0 10px 22px -13px #17212685}
.portfolio-companion.phone{width:24%;border-radius:15px}.portfolio-companion.tablet{width:41%;border-radius:12px}
.portfolio-companion img{display:block;width:100%;height:auto;border:0;border-radius:0;box-shadow:none}.portfolio-companion .preview-trigger::after{display:none}
.portfolio-meta{display:flex;flex-direction:column;gap:12px;flex:1;min-width:0}.portfolio-meta>.tag{font-size:11px;line-height:1.6;min-height:3.2em;margin:0}.portfolio-meta h3{font-family:var(--display);font-size:25px;line-height:1.25;font-weight:700;min-height:2.5em;margin:0}.portfolio-meta p{font-size:15px;line-height:1.7;margin:0;color:var(--ink-2)}.portfolio-meta .mods{gap:8px 16px}.portfolio-meta .mods div{font-size:13px;line-height:1.55}.portfolio-meta .mods b{font-size:13px;line-height:1.6}.portfolio-meta>.row{margin-top:auto;padding-top:20px;min-height:50px;align-items:flex-end;align-content:flex-end}.portfolio-meta .pill{font-size:10px}.portfolio-meta .view{font-size:13px}.portfolio-card .preview-trigger::after{width:28px;height:28px;top:8px;right:8px}
@media(max-width:760px){.portfolio-grid{grid-template-columns:minmax(0,1fr);gap:24px}.portfolio-card{padding:18px;gap:20px}.portfolio-meta h3{font-size:23px}.portfolio-meta .mods{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-preview{aspect-ratio:1.4}.portfolio-meta>.tag{min-height:3.2em}}
/* Reserve the companion's own space so it cannot cover a portrait or the doorway attendant. */
.portfolio-monitor{right:auto;width:84%}.portfolio-companion.phone{width:22%}.portfolio-preview{aspect-ratio:1.55}.portfolio-meta>.tag{color:#795b17}
@media(max-width:760px){.portfolio-preview{aspect-ratio:1.55}}

/* The same quiet gold and graphite finish across the remaining page layouts. */
.hero:not(:has(.hero-copy)){background:linear-gradient(110deg,#f4f5f5,#faf8f1);border-bottom:1px solid #e2ddd0}
.audit{border-top:3px solid #b38a2e;box-shadow:0 12px 32px #16212a08}.audit .price-box{background:#f7f0df;border:1px solid #e5d6b3}.tier{border-top:3px solid #d7c28d}.tier.best{background:#172126;border-color:#172126;box-shadow:0 14px 36px #1721261c}.tier.best p,.tier.best .inc{color:#e4e8e9!important}.tier.best .price{color:#fff!important;font-size:42px}.tier.best .tag{color:#ead19a!important}.tier.best .pill{background:#ead19a;color:#172126}.tier.best .btn.gold{background:#ead19a;color:#172126;border-color:#ead19a}.tier.best .btn.gold:hover{background:#f0dcb1}.faq .card{border-left:3px solid #d3ba7a}
.article-opening{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center}.article-heading h1{font-size:clamp(30px,3.5vw,46px);max-width:28ch;line-height:1.16;letter-spacing:-.035em}.article-heading .lede{font-size:17px;line-height:1.75}.article-hero-art{margin:0}.article-hero-art img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #d9d5cb;box-shadow:0 18px 36px -22px #17212655}.post-meta{padding-top:16px;border-top:1px solid #d7d1c2;font-size:12px;line-height:1.7}.post-body .prose{max-width:740px}.prose .status-note{border-left:4px solid #b38a2e;background:#f8f4e9}.prose .faq-item{background:#fff;border-radius:9px}.posts{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.posts>.post-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.posts>.post-card:first-child>img{height:100%;min-height:320px;border:0;object-fit:cover}.posts>.post-card:first-child h2{font-size:clamp(24px,2.5vw,32px);line-height:1.25}.posts .post-card{padding:0;gap:0;box-shadow:0 10px 30px #16212a07}.posts .post-card:hover{transform:none}.posts .post-card .body{padding:26px;gap:14px}.posts .post-card time{color:#795b17}.profiles-header{align-items:center;padding-bottom:24px;border-bottom:1px solid var(--rule)}.profiles-header>a:first-child{margin-right:auto}.profiles-header img{width:260px;max-width:100%;height:auto}.profile{border-top:3px solid #d7c28d}
@media(max-width:820px){.article-opening{grid-template-columns:1fr;gap:28px}.article-heading h1{font-size:32px;max-width:30ch}.article-hero-art{max-width:620px}.posts{grid-template-columns:1fr}.posts>.post-card:first-child{grid-template-columns:1fr}.posts>.post-card:first-child>img{height:auto;min-height:0;aspect-ratio:16/9}.posts .post-card .body{padding:22px}.profiles-header img{width:230px}.tier.best .price{font-size:38px}}

/* Final direction: one centered lane on desktop and mobile. */
.portfolio-grid{grid-template-columns:minmax(0,1fr);max-width:1120px;margin-inline:auto;gap:28px}
.portfolio-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:center}
.portfolio-meta{align-self:stretch}.portfolio-preview{margin-inline:auto}
@media(max-width:900px){.portfolio-grid{max-width:680px}.portfolio-card{display:flex;flex-direction:column;gap:22px}.portfolio-preview{max-width:520px}.portfolio-meta{width:100%;flex:1}}

/* Dedicated Portfolio: two compact columns, with no global fixed card height. */
.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;max-width:none;gap:24px;margin-top:0}
.portfolio-card{display:flex;flex-direction:column;align-items:stretch;padding:20px;gap:16px}
.portfolio-preview{width:100%;max-width:none;margin:0;aspect-ratio:1.55}
.portfolio-meta{gap:8px;flex:1}.portfolio-meta>.tag{min-height:0;font-size:10px;line-height:1.6}.portfolio-meta h3{min-height:0;font-size:23px;line-height:1.25}.portfolio-meta>.row{min-height:0;padding-top:12px;align-content:end;align-items:end}
.portfolio-details{margin:2px 0}.portfolio-details summary{font:600 13px/1.6 var(--display);color:#795b17;cursor:pointer;padding:4px 0}.portfolio-details .mods{margin-top:10px}.portfolio-companion.phone{border-width:5px;width:22%}.portfolio-monitor{border-width:7px}
section.band{padding-block:44px}.head{margin-bottom:22px}.portfolio-page .hero .wrap{padding-block:28px}.portfolio-page section.band{padding-top:24px}.portfolio-section-title{font:600 18px/1.4 var(--display);margin:0 0 18px}.selected-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.selected-heading h2{font-size:clamp(26px,3vw,36px);line-height:1.2;margin:8px 0 0}.selected-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.selected-project{border:1px solid var(--rule);border-radius:12px;overflow:hidden;background:#fff}.selected-project>a{display:block;text-decoration:none;color:inherit}.selected-project img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;background:#111}.selected-project>a>div{padding:16px 18px;display:grid;gap:12px}.selected-project h3{font:600 19px/1.3 var(--display);margin:0}.selected-project a>div>span{font-size:13px;color:#795b17}.scrub{height:180vh;margin-bottom:24px}
@media(max-width:760px){.portfolio-grid{grid-template-columns:minmax(0,1fr);gap:20px}.portfolio-card{padding:18px;gap:14px}.portfolio-meta h3{font-size:22px}.selected-grid{grid-template-columns:1fr}.selected-heading{align-items:start;flex-direction:column;gap:16px}section.band{padding-block:30px}.scrub{height:160vh}.portfolio-page .hero .wrap{padding-block:24px}}
section.band{padding-block:32px}
@media(max-width:760px){section.band{padding-block:24px}}

/* Readable brand accents on the existing light surfaces. */
.hero h1 .g,.close h2 .g,.feed-track span i,.m .n{color:var(--gold-ink)}
td.no{color:#656b73}
