@charset "UTF-8";
.hero {
position: relative; isolation: isolate;   
display: flex; align-items: center;
min-height: calc(100vh - 150px); padding: 60px 0 44px;
--carve-w: 385px;                          
}
.hero-grid {
display: grid; grid-template-columns: 1fr var(--carve-w); align-items: center; gap: 24px;
width: 100%;
min-height: calc(var(--carve-w) * 22 / 19);
}
.hero-copy { text-align: left; }
.hero .eyebrow { margin: 0 0 16px; animation: fade .8s ease-out .12s 1 both; }
.hero-headline {
font-family: var(--font-display); font-weight: 700; font-size: var(--display);
line-height: 1.06; letter-spacing: .01em; margin: 0; max-width: 22ch;
color: var(--fg); text-shadow: var(--glow-rest); text-wrap: balance;
animation: fade .8s ease-out .2s 1 both;
}
html[lang="el"] .hero-headline { max-width: 24ch; }
.lede {
max-width: 44ch; margin: 18px 0 0; color: var(--muted); font-size: var(--step-0);
animation: fade .8s ease-out .3s 1 both;
}
.hero-quotes {
--quote-size: calc(var(--step-0) * .88);
display: grid; max-width: 48ch; margin: 16px 0 0;
font-size: var(--quote-size);
animation: fade .8s ease-out .3s 1 both;
}
.hero-quotes-label { display: none; }
.hero-quote {
grid-area: 1 / 1; margin: 0; opacity: 0; visibility: hidden;
transition: opacity .9s ease, visibility 0s linear .9s;
}
.hero-quote.is-on { opacity: 1; visibility: visible; transition: opacity .9s ease; }
.hero-quote blockquote { margin: 0; font-size: var(--quote-size); line-height: 1.5; color: var(--muted); }
.hero-quote figcaption {
margin: 7px 0 0; font-size: var(--step--1); font-weight: 600; color: var(--label-ink);
text-transform: uppercase; letter-spacing: .14em;
}
.hero-quote-open { display: block; color: inherit; text-decoration: none; }
.hero-quote-open:hover blockquote, .hero-quote-open:focus-visible blockquote { color: var(--fg); }
.hero-quote-open figcaption::after {
content: "→" / ""; color: var(--accent-ink);
display: inline-block; margin-inline-start: .5em;
animation: quote-arrow-nudge 3.5s ease-in-out infinite;
}
.hero-quote-open:hover figcaption, .hero-quote-open:focus-visible figcaption { color: var(--accent-ink); }
.hero-quote-open:hover figcaption::after, .hero-quote-open:focus-visible figcaption::after {
animation: none; transform: translateX(4px); transition: transform .2s ease;
}
@keyframes quote-arrow-nudge {
0%, 62%, 100% { transform: translateX(0); }
74% { transform: translateX(5px); }
86% { transform: translateX(0); }
}
.quote-dialog {
margin: auto; padding: 0; border: 1px solid var(--line); border-radius: var(--radius);
background: var(--panel); max-width: min(420px, calc(100vw - 32px));
overflow: hidden;   
}
.quote-dialog::backdrop { background: rgba(12, 10, 7, .6); }
.qd-cover { display: block; width: 100%; height: auto; }   
.qd-body { padding: 20px 22px 22px; }
.qd-meta { margin: 0; font-size: var(--step--1); color: var(--label-ink); text-transform: uppercase; letter-spacing: .14em; }
.qd-title { margin: 8px 0 0; font-family: var(--font-display); font-weight: 700; font-size: var(--step-1); color: var(--fg); }
.qd-summary { margin: 10px 0 0; font-size: var(--step-0); line-height: 1.55; color: var(--muted); }
.qd-actions { margin-top: 20px; display: flex; gap: 12px; }
.qd-actions form { margin: 0; flex: 1; display: flex; }
.qd-actions form .btn, .qd-actions > .btn { flex: 1; width: 100%; text-align: center; }
.tagline {
margin: 18px 0 0; font-size: var(--step-1); letter-spacing: .04em; color: var(--muted);
font-family: var(--font-display); font-weight: 400;
animation: fade .8s ease-out .38s 1 both;
}
.tagline .ig { color: var(--accent-ink); font-weight: 600; }
.actions {
margin-top: 28px; display: flex; gap: 14px; flex-wrap: wrap;
animation: fade .8s ease-out .46s 1 both;
}
.hero-vid {
position: absolute; inset: 0; width: 100%; height: 100%;
object-fit: cover; z-index: -2; pointer-events: none;          
}
.hero-vid-marble { display: none; }                                  
:root[data-theme="light"] .hero-vid-fire   { display: none; }
:root[data-theme="light"] .hero-vid-marble { display: block; }
.hero-scrim { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
:root[data-theme="dark"]  .hero-scrim { background: linear-gradient(90deg, rgba(21,18,14,.92) 0%, rgba(21,18,14,.6) 36%, rgba(21,18,14,.12) 68%, transparent 100%); }
:root[data-theme="light"] .hero-scrim { background: linear-gradient(90deg, rgba(239,233,220,.9) 0%, rgba(239,233,220,.55) 40%, rgba(239,233,220,.08) 74%, transparent 100%); }
.hero-flame { display: flex; justify-content: center; align-items: center; }
:root[data-theme="dark"] .hero-flame { display: none; }
.hero .carve-live, .hero .carve-static { animation: torch-in 1s ease-out .4s 1 both; }
.hero .carve-live {
width: var(--carve-w); aspect-ratio: 19 / 22; object-fit: cover;
filter: url(#torch-groove);
}
.hero .carve-static {
display: none; width: 152px; height: 330px; mix-blend-mode: hard-light;
}
.carve-defs { position: absolute; width: 0; height: 0; }
.scrollcue {
position: absolute; bottom: 18px; left: 50%; transform: translateX(-50%);
display: flex; flex-direction: column; align-items: center; gap: 8px;
color: var(--muted); font-size: var(--step--1); letter-spacing: .3em; text-transform: uppercase;
animation: fade .8s ease-out .55s 1 both;
}
.scrollcue::after {
content: ""; width: 7px; height: 7px;
border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
transform: rotate(45deg); animation: cue-bob 1.8s ease-in-out infinite;
}
@media (max-width: 768px) {
.hero { min-height: calc(100svh - var(--nav-h)); padding: 24px 0 32px; --carve-w: 240px; }
.hero-grid { grid-template-columns: 1fr; gap: 16px; min-height: 0; }
.hero-copy { display: flex; flex-direction: column; align-items: flex-start; text-align: left; width: 100%; }
.hero .eyebrow { margin: 0 0 12px; }
.hero-headline { max-width: 16ch; font-size: clamp(2rem, 8.4vw, 2.5rem); }
.hero .tagline { order: 1; margin-top: 16px; }
.hero .actions { order: 2; width: 100%; margin-top: 24px; flex-direction: column; align-items: stretch; gap: 12px; }
.hero .actions .btn { width: 100%; text-align: center; }
.hero-quotes-label {
display: block; order: 3; margin: 28px 0 0;
font-size: var(--step--1); font-weight: 600; letter-spacing: .2em;
text-transform: uppercase; color: var(--label-ink);
}
.hero-quotes { order: 3; max-width: 42ch; margin-top: 28px; }
.hero-quotes-label + .hero-quotes { margin-top: 6px; }
.hero-vid { object-position: 68% 18%; }
:root[data-theme="dark"] .hero-scrim {
background: linear-gradient(180deg, rgba(21,18,14,.5) 0%, rgba(21,18,14,.68) 46%, rgba(21,18,14,.9) 100%);
}
:root[data-theme="light"] .hero-scrim {
background: linear-gradient(180deg, rgba(239,233,220,.55) 0%, rgba(239,233,220,.72) 46%, rgba(239,233,220,.92) 100%);
}
.hero-flame { order: -1; justify-content: center; }
.hero .carve-static { width: 96px; height: 208px; }
.scrollcue { display: none; }
}
.embers { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 5; }
.ember {
position: absolute; bottom: -14px; width: 5px; height: 5px; border-radius: 50%;
background: radial-gradient(circle at 50% 50%, var(--gold), var(--ember) 60%, transparent 72%);
box-shadow: 0 0 7px 1px var(--ember); opacity: 0;
animation: ember-rise var(--dur, 12s) linear var(--delay, 0s) infinite;
will-change: transform, opacity;
}
.ember:nth-child(1)  { left: 5%;  --dur: 12s; --delay: -1s;  --x: 10px;  --peak: .7; }
.ember:nth-child(2)  { left: 14%; --dur: 15s; --delay: -7s;  --x: -8px;  --peak: .5; width: 4px; height: 4px; }
.ember:nth-child(3)  { left: 23%; --dur: 10s; --delay: -3s;  --x: 14px;  --peak: .8; width: 6px; height: 6px; }
.ember:nth-child(4)  { left: 32%; --dur: 13s; --delay: -9s;  --x: -12px; --peak: .45; width: 3px; height: 3px; }
.ember:nth-child(5)  { left: 41%; --dur: 16s; --delay: -5s;  --x: 6px;   --peak: .6; }
.ember:nth-child(6)  { left: 50%; --dur: 11s; --delay: -12s; --x: -6px;  --peak: .75; width: 4px; height: 4px; }
.ember:nth-child(7)  { left: 59%; --dur: 14s; --delay: -2s;  --x: 12px;  --peak: .5; width: 6px; height: 6px; }
.ember:nth-child(8)  { left: 68%; --dur: 9s;  --delay: -8s;  --x: -10px; --peak: .8; width: 3px; height: 3px; }
.ember:nth-child(9)  { left: 77%; --dur: 13s; --delay: -4s;  --x: 8px;   --peak: .6; }
.ember:nth-child(10) { left: 86%; --dur: 17s; --delay: -10s; --x: -14px; --peak: .45; width: 4px; height: 4px; }
.ember:nth-child(11) { left: 93%; --dur: 12s; --delay: -6s;  --x: 10px;  --peak: .7; width: 5px; height: 5px; }
.ember:nth-child(12) { left: 38%; --dur: 18s; --delay: -14s; --x: -4px;  --peak: .4; width: 3px; height: 3px; }
.cost { padding-top: 44px; }
.cost-lede { margin: -12px 0 40px; color: var(--muted); font-size: var(--step-1); line-height: 1.45; }
.cost-tabs { display: grid; grid-template-columns: minmax(230px, 5fr) 7fr; align-items: stretch; border-top: 1px solid var(--hair); }
.cost-radio { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.cost-tab { grid-column: 1; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 16px; cursor: pointer; color: var(--muted); font-family: var(--font-display); font-weight: 600; font-size: var(--step-0); letter-spacing: .03em; line-height: 1.25; border-block-end: 1px solid var(--hair); border-inline-start: 2px solid transparent; border-inline-end: 1px solid var(--hair); transition: color .18s ease, background-color .18s ease, border-color .18s ease; }
.cost-tab[for="cost-t5"] { border-block-end: 0; }
.cost-tab::after { content: ""; flex: none; width: 7px; height: 7px; border-right: 1.5px solid currentColor; border-top: 1.5px solid currentColor; transform: rotate(45deg); opacity: .4; transition: opacity .18s ease, transform .18s ease; }
.cost-tab:hover { color: var(--label-ink); background: var(--bg-2); }
.cost-tab:hover::after { opacity: .85; }
.cost-panel { grid-column: 2; grid-row: 1 / span 5; align-self: center; display: none; margin: 0; padding: 6px 4px 6px 32px; list-style: none; counter-reset: cost; }
.cost-panel li { position: relative; counter-increment: cost; margin: 0 0 13px; padding-inline-start: 28px; color: var(--muted); font-size: var(--step-0); line-height: 1.5; }
.cost-panel li:last-child { margin-bottom: 0; }
.cost-panel li::before { content: counter(cost); position: absolute; inset-inline-start: 0; top: 0; min-width: 16px; color: var(--label-ink); font-family: var(--font-display); font-weight: 700; font-size: var(--step-0); line-height: 1.5; font-variant-numeric: tabular-nums; }
.cost-tabs:has(#cost-t1:checked) .cost-tab[for="cost-t1"],
.cost-tabs:has(#cost-t2:checked) .cost-tab[for="cost-t2"],
.cost-tabs:has(#cost-t3:checked) .cost-tab[for="cost-t3"],
.cost-tabs:has(#cost-t4:checked) .cost-tab[for="cost-t4"],
.cost-tabs:has(#cost-t5:checked) .cost-tab[for="cost-t5"] { color: var(--label-ink); background: var(--bg-2); border-inline-start-color: var(--bronze); }
.cost-tabs:has(#cost-t1:checked) .cost-tab[for="cost-t1"]::after,
.cost-tabs:has(#cost-t2:checked) .cost-tab[for="cost-t2"]::after,
.cost-tabs:has(#cost-t3:checked) .cost-tab[for="cost-t3"]::after,
.cost-tabs:has(#cost-t4:checked) .cost-tab[for="cost-t4"]::after,
.cost-tabs:has(#cost-t5:checked) .cost-tab[for="cost-t5"]::after { opacity: 1; }
.cost-tabs:has(#cost-t1:checked) #cost-p1,
.cost-tabs:has(#cost-t2:checked) #cost-p2,
.cost-tabs:has(#cost-t3:checked) #cost-p3,
.cost-tabs:has(#cost-t4:checked) #cost-p4,
.cost-tabs:has(#cost-t5:checked) #cost-p5 { display: block; }
.cost-tabs:has(#cost-t1:focus-visible) .cost-tab[for="cost-t1"],
.cost-tabs:has(#cost-t2:focus-visible) .cost-tab[for="cost-t2"],
.cost-tabs:has(#cost-t3:focus-visible) .cost-tab[for="cost-t3"],
.cost-tabs:has(#cost-t4:focus-visible) .cost-tab[for="cost-t4"],
.cost-tabs:has(#cost-t5:focus-visible) .cost-tab[for="cost-t5"] { outline: 2px solid var(--bronze); outline-offset: -2px; }
@media (min-width: 761px) {
.cost-tabs:not(:has(.cost-radio:checked)) #cost-p1 { display: block; }
.cost-tabs:not(:has(.cost-radio:checked)) .cost-tab[for="cost-t1"] {
color: var(--label-ink); background: var(--bg-2); border-inline-start-color: var(--bronze);
}
.cost-tabs:not(:has(.cost-radio:checked)) .cost-tab[for="cost-t1"]::after { opacity: 1; }
}
.cost-bridge { margin: 40px 0 0; color: var(--muted); font-size: var(--step-1); line-height: 1.45; }
@media (max-width: 760px) {
.cost-tabs { display: block; border-block-end: 1px solid var(--hair); }
.cost-tab { border-inline-end: 0; }
.cost-tab[for="cost-t5"] { border-block-end: 1px solid var(--hair); }   
.cost-tab::after { transform: rotate(135deg); }                          
.cost-panel { grid-column: auto; grid-row: auto; align-self: auto; padding: 2px 0 18px 18px; }
.cost-tabs:has(#cost-t1:checked) .cost-tab[for="cost-t1"]::after,
.cost-tabs:has(#cost-t2:checked) .cost-tab[for="cost-t2"]::after,
.cost-tabs:has(#cost-t3:checked) .cost-tab[for="cost-t3"]::after,
.cost-tabs:has(#cost-t4:checked) .cost-tab[for="cost-t4"]::after,
.cost-tabs:has(#cost-t5:checked) .cost-tab[for="cost-t5"]::after { transform: rotate(315deg); }
.cost-tabs:has(#cost-t1:checked) .cost-tab[for="cost-t1"],
.cost-tabs:has(#cost-t2:checked) .cost-tab[for="cost-t2"],
.cost-tabs:has(#cost-t3:checked) .cost-tab[for="cost-t3"],
.cost-tabs:has(#cost-t4:checked) .cost-tab[for="cost-t4"],
.cost-tabs:has(#cost-t5:checked) .cost-tab[for="cost-t5"] { border-block-end-color: transparent; }
}
.offers { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--hair); border: 1px solid var(--hair); border-radius: 4px; overflow: hidden; }
.offer { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 14px; row-gap: 10px; padding: 28px 26px; background: var(--bg); transition: background-color .25s ease; }
#molten-grad .ms0 { stop-color: var(--ember); }
#molten-grad .ms1 { stop-color: var(--gold); }
#molten-grad .ms2 { stop-color: var(--bronze); }
.offer-icon { grid-column: 1; grid-row: 1; width: 32px; height: 32px; fill: none; stroke: url(#molten-grad) var(--ember); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; transition: filter .25s ease, transform .25s ease; }
.offer h3 { grid-column: 2; grid-row: 1; margin: 0; letter-spacing: .02em; }
.offer p { grid-column: 1 / -1; grid-row: 2; margin: 0; color: var(--muted); font-size: var(--step--1); }
.offer:hover { background: var(--bg-2); }
.offer:hover .offer-icon { filter: drop-shadow(0 0 5px var(--ember)); transform: translateY(-1px); }
@media (max-width: 880px) { .offers { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .offers { grid-template-columns: 1fr; } }
.forge-cta { text-align: center; margin: 34px 0 0; }
@media (prefers-reduced-motion: reduce) {
.offer, .offer-icon { transition: none; }
.offer:hover .offer-icon { transform: none; }
}
.proof-more { text-align: center; margin-top: 38px; }
.steps { list-style: none; margin: 0 0 46px; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.step { padding-top: 14px; border-top: 2px solid var(--hair); display: grid; grid-template-columns: auto 1fr; column-gap: 10px; row-gap: 6px; align-items: baseline; }
.step-n { font-family: var(--font-display); font-size: var(--step-1); color: var(--accent-ink); letter-spacing: .04em; }
.step h3 { margin: 0; letter-spacing: .02em; }
.step p { grid-column: 1 / -1; margin: 0; color: var(--muted); font-size: var(--step--1); }
@media (max-width: 860px) { .steps { grid-template-columns: repeat(2, 1fr); gap: 26px; } }
@media (max-width: 460px) { .steps { grid-template-columns: 1fr; } }
.about .wrap { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(28px, 5vw, 56px); align-items: center; }
.about-text { min-width: 0; }
.about-lede { margin: 0; color: var(--muted); font-size: var(--step-0); }
.about-more { margin: 24px 0 0; }
.about-figure { margin: 0; position: relative; isolation: isolate; }
.about-photo { display: block; width: 100%; height: auto; border: 1px solid var(--hair); border-radius: 0; filter: saturate(.85); }
.about-figure::after {
content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
border-radius: 6px;
background: var(--bronze); mix-blend-mode: multiply; opacity: .42;
}
:root[data-theme="light"] .about-figure::after { opacity: .34; }
@media (max-width: 760px) { .about .wrap { grid-template-columns: 1fr; gap: 28px; } }
.faq-section .head { align-items: center; text-align: center; }
.faq { max-width: 40rem; margin-inline: auto; font-size: var(--step-0); }
.faq details { border-top: 1px solid var(--line); }
.faq details:last-child { border-bottom: 1px solid var(--line); }
.faq summary { list-style: none; cursor: pointer; position: relative; padding: 20px 42px 20px 0; font-family: var(--font-display); font-size: var(--step-1); color: var(--fg); }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: ""; position: absolute; right: 6px; top: 26px; width: 9px; height: 9px; border-right: 2px solid var(--bronze); border-bottom: 2px solid var(--bronze); transform: rotate(45deg); transition: transform .2s ease; }
.faq summary:focus-visible { outline: 2px solid var(--accent-ink); outline-offset: 4px; }
.faq details[open] summary { color: var(--accent-ink); }
.faq details[open] summary::after { transform: rotate(225deg); border-color: var(--ember); }
.faq-a { padding: 0 42px 22px 0; }
.faq-a p { margin: 0; color: var(--muted); font-size: var(--step-0); }
@keyframes torch-in {
0%   { opacity: 0; transform: translateY(14px) scale(.96); }
100% { opacity: 1; transform: none; }
}
@keyframes fade {
from { opacity: 0; transform: translateY(8px); }
to   { opacity: 1; transform: none; }
}
@keyframes ember-rise {
0%   { transform: translate(0, 0) scale(1); opacity: 0; }
12%  { opacity: var(--peak, .6); }
85%  { opacity: calc(var(--peak, .6) * .28); }
100% { transform: translate(var(--x, 8px), -90vh) scale(.3); opacity: 0; }
}
@keyframes cue-bob {
0%, 100% { translate: 0 0; }
50%      { translate: 0 4px; }
}
@media (prefers-reduced-motion: reduce) {
.hero .eyebrow, .hero-headline, .tagline, .lede, .hero-quotes, .actions, .scrollcue, .scrollcue::after,
.hero .carve-live, .hero .carve-static { animation: none !important; }
.embers, .hero-vid, .hero .carve-live { display: none; }
.hero .carve-static { display: block; }
.faq summary::after { transition: none; }
.hero-quote { transition: none; }
}
