Eon-Blossom-31B / README.md
Vortex5's picture
Update README.md
03ce461 verified
|
Raw
History Blame Contribute Delete
29.3 kB
---
base_model:
- LatitudeGames/Equinox-31B
- zerofata/G4-MeroMero-v2-31B
- Darkhn/Gemma-4-31B-Animus-V15.0
- ReadyArt/gemma-4-31B-it-scotoma-2
library_name: transformers
tags:
- mergekit
- merge
- roleplay
- storytelling
license: apache-2.0
new_version: Cyclone-Labs/Eon-Blossom-V2-31B
---
<section class="card">
<figure class="media">
<img src="https://cdn-uploads.huggingface.co/production/uploads/6669a3a617b838fda45637b8/41sPr8OzLXrOFScs3UMf-.png" alt="Eon-Blossom-31B artwork">
</figure>
<div class="body">
<div class="side side-left" aria-hidden="true">
<span class="leaf leaf-a"></span>
<span class="leaf leaf-b"></span>
<span class="leaf leaf-c"></span>
<span class="bud bud-a"></span>
<span class="bud bud-b"></span>
</div>
<div class="side side-right" aria-hidden="true">
<span class="leaf leaf-a"></span>
<span class="leaf leaf-b"></span>
<span class="leaf leaf-c"></span>
<span class="bud bud-a"></span>
<span class="bud bud-b"></span>
</div>
<header class="header">
<div class="ornament" aria-hidden="true">
<span></span>
<i></i>
<b></b>
<i></i>
<span></span>
</div>
<div class="flower" aria-hidden="true">
<span class="petal petal-a"></span>
<span class="petal petal-b"></span>
<span class="petal petal-c"></span>
<span class="petal petal-d"></span>
<span class="petal petal-e"></span>
<span class="petal petal-f"></span>
<span class="petal petal-g"></span>
<span class="petal petal-h"></span>
<span class="flower-center"></span>
</div>
<h1>Eon-Blossom-31B</h1>
<div class="title-line" aria-hidden="true">
<span></span>
<i></i>
<b></b>
<i></i>
<span></span>
</div>
<p class="subtitle">
A blossom born beyond the end of time.
</p>
</header>
<section class="panel">
<div class="heading">
<span></span>
<i></i>
<h2>Overview</h2>
<i></i>
<span></span>
</div>
<div class="ghost ghost-left" aria-hidden="true">
<span></span>
</div>
<div class="ghost ghost-right" aria-hidden="true">
<span></span>
</div>
<p class="text">
<strong>Eon-Blossom-31B</strong> was created by combining
<a href="https://huggingface.co/LatitudeGames/Equinox-31B">Equinox-31B</a>,
<a href="https://huggingface.co/ReadyArt/gemma-4-31B-it-scotoma-2">gemma-4-31B-it-scotoma-2</a>,
<a href="https://huggingface.co/zerofata/G4-MeroMero-v2-31B">G4-MeroMero-v2-31B</a>,
and
<a href="https://huggingface.co/Darkhn/Gemma-4-31B-Animus-V15.0">Gemma-4-31B-Animus-V15.0</a>
using a custom merge method.
</p>
<div class="divider" aria-hidden="true">
<span></span>
<i></i>
<b></b>
<i></i>
<span></span>
</div>
<details class="details">
<summary>
<span class="details-title">Merge Configuration</span>
<span class="toggle" aria-hidden="true"></span>
</summary>
<pre><code>models:
- model: LatitudeGames/Equinox-31B
- model: ReadyArt/gemma-4-31B-it-scotoma-2
- model: zerofata/G4-MeroMero-v2-31B
- model: Darkhn/Gemma-4-31B-Animus-V15.0
merge_method: hcve
chat_template: auto
parameters:
tol: 1.0e-9
max_iter: 1000
exhaustive: true
dtype: float32
out_dtype: bfloat16
tokenizer:
source: zerofata/G4-MeroMero-v2-31B</code></pre>
</details>
</section>
<section class="panel use-panel">
<div class="heading use-heading">
<span></span>
<i></i>
<h2>Intended Use</h2>
<i></i>
<span></span>
</div>
<div class="grid">
<article class="item">
<div class="mark" aria-hidden="true">
<span class="mark-petal mark-a"></span>
<span class="mark-petal mark-b"></span>
<span class="mark-petal mark-c"></span>
<span class="mark-petal mark-d"></span>
<span class="mark-ring"></span>
<span class="mark-center"></span>
</div>
<div class="copy">
<h3>Roleplay</h3>
<p>Character-driven interaction, personas, dialogue, emotional scenes, and long-form roleplay.</p>
</div>
</article>
<article class="item">
<div class="mark" aria-hidden="true">
<span class="mark-petal mark-a"></span>
<span class="mark-petal mark-b"></span>
<span class="mark-petal mark-c"></span>
<span class="mark-petal mark-d"></span>
<span class="mark-ring"></span>
<span class="mark-center"></span>
</div>
<div class="copy">
<h3>Creative Writing</h3>
<p>Fiction, dialogue, atmosphere, descriptive writing, stylistic drafting, and imaginative prose.</p>
</div>
</article>
<article class="item">
<div class="mark" aria-hidden="true">
<span class="mark-petal mark-a"></span>
<span class="mark-petal mark-b"></span>
<span class="mark-petal mark-c"></span>
<span class="mark-petal mark-d"></span>
<span class="mark-ring"></span>
<span class="mark-center"></span>
</div>
<div class="copy">
<h3>Storytelling</h3>
<p>Long-form narratives, worldbuilding, continuity, evolving characters, and multi-character plots.</p>
</div>
</article>
<article class="item">
<div class="mark" aria-hidden="true">
<span class="mark-petal mark-a"></span>
<span class="mark-petal mark-b"></span>
<span class="mark-petal mark-c"></span>
<span class="mark-petal mark-d"></span>
<span class="mark-ring"></span>
<span class="mark-center"></span>
</div>
<div class="copy">
<h3>Interactive Fiction</h3>
<p>Branching narratives, scenario play, character interaction, and continuously evolving stories.</p>
</div>
</article>
</div>
</section>
<footer class="footer">
<div class="footer-line"></div>
<div class="footer-mark" aria-hidden="true">
<span></span>
</div>
<div class="footer-name">
Cyclone Labs
</div>
<div class="footer-mark" aria-hidden="true">
<span></span>
</div>
<div class="footer-line footer-line-right"></div>
</footer>
</div>
</section>
<style>
.card,
.card * {
box-sizing: border-box;
}
.card {
--black: #030405;
--black-soft: #070908;
--night: #0a0e0b;
--night-light: #101611;
--green-dark: #102017;
--green: #294234;
--green-light: #789080;
--plum-dark: #1a111c;
--plum: #533858;
--plum-light: #896d8d;
--silver-dark: #737c76;
--silver: #a5aba7;
--silver-light: #d5d8d6;
--flower: #bda8c0;
--flower-light: #e2d7e4;
--text: #bdc1be;
--text-soft: #989f9a;
--ivory: #e7e8e6;
position: relative;
isolation: isolate;
width: 100%;
max-width: 1472px;
margin: 48px auto;
overflow: hidden;
color: var(--text);
font-family:
Candara,
"Gill Sans",
"Trebuchet MS",
sans-serif;
border: 1px solid rgba(157, 172, 162, 0.13);
border-radius: 2px;
background:
radial-gradient(
ellipse at 50% 0%,
rgba(91, 72, 96, 0.12),
transparent 29%
),
radial-gradient(
ellipse at 18% 48%,
rgba(36, 68, 48, 0.08),
transparent 34%
),
radial-gradient(
ellipse at 82% 68%,
rgba(69, 46, 74, 0.07),
transparent 32%
),
linear-gradient(
180deg,
#080a09 0%,
#050706 42%,
#030504 100%
);
box-shadow:
inset 0 0 0 1px rgba(224, 231, 226, 0.012),
inset 0 0 170px rgba(0, 0, 0, 0.54);
}
.card::before {
content: "";
position: absolute;
z-index: 0;
inset: 0;
pointer-events: none;
background:
radial-gradient(
circle at 11% 18%,
rgba(212, 218, 214, 0.09) 0 1px,
transparent 2px
),
radial-gradient(
circle at 81% 13%,
rgba(212, 218, 214, 0.07) 0 1px,
transparent 2px
),
radial-gradient(
circle at 74% 35%,
rgba(186, 158, 191, 0.08) 0 1px,
transparent 2px
),
radial-gradient(
circle at 24% 65%,
rgba(159, 181, 166, 0.07) 0 1px,
transparent 2px
);
}
.card::after {
content: "";
position: absolute;
z-index: 0;
top: 0;
left: 50%;
width: 72%;
height: 430px;
transform: translateX(-50%);
pointer-events: none;
background:
radial-gradient(
ellipse at 50% 0%,
rgba(176, 154, 183, 0.05),
transparent 68%
);
}
.media {
position: relative;
z-index: 2;
width: 100%;
margin: 0;
padding: 0;
overflow: hidden;
background: #000;
}
.media img {
display: block;
width: 100%;
max-width: 100%;
height: auto;
margin: 0;
border: 0;
}
.media::before {
content: "";
position: absolute;
z-index: 2;
inset: 0;
pointer-events: none;
background:
linear-gradient(
90deg,
rgba(0, 0, 0, 0.20),
transparent 20%,
transparent 80%,
rgba(0, 0, 0, 0.20)
),
linear-gradient(
180deg,
transparent 55%,
rgba(4, 6, 5, 0.28)
);
}
.media::after {
content: "";
position: absolute;
z-index: 3;
left: 0;
right: 0;
bottom: 0;
height: 2px;
pointer-events: none;
background:
linear-gradient(
90deg,
transparent,
rgba(78, 111, 90, 0.24) 16%,
rgba(179, 191, 183, 0.50) 50%,
rgba(97, 76, 102, 0.25) 84%,
transparent
);
}
.body {
position: relative;
z-index: 1;
padding:
clamp(24px, 3vw, 38px)
clamp(42px, 5.4vw, 76px)
clamp(44px, 5vw, 70px);
background:
radial-gradient(
ellipse at 50% 0%,
rgba(64, 83, 69, 0.07),
transparent 28%
);
}
.body::before {
content: "";
position: absolute;
inset: 14px;
pointer-events: none;
border:
1px solid rgba(158, 175, 163, 0.045);
clip-path:
polygon(
0 17px,
17px 0,
calc(100% - 17px) 0,
100% 17px,
100% calc(100% - 17px),
calc(100% - 17px) 100%,
17px 100%,
0 calc(100% - 17px)
);
}
.side {
position: absolute;
z-index: 1;
top: 44px;
bottom: 44px;
width: 38px;
pointer-events: none;
}
.side-left {
left: 5px;
}
.side-right {
right: 5px;
transform: scaleX(-1);
}
.side::before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 17px;
width: 1px;
background:
linear-gradient(
180deg,
transparent,
rgba(98, 127, 107, 0.10) 8%,
rgba(120, 147, 129, 0.32) 30%,
rgba(100, 128, 108, 0.27) 70%,
rgba(98, 127, 107, 0.08) 92%,
transparent
);
}
.side::after {
content: "";
position: absolute;
top: 20%;
left: 17px;
width: 14px;
height: 58%;
border-left:
1px solid rgba(107, 137, 116, 0.16);
border-radius:
60% 0 0 60%;
}
.leaf {
position: absolute;
width: 13px;
height: 25px;
border:
1px solid rgba(121, 148, 129, 0.16);
border-radius:
100% 0 100% 0;
background:
linear-gradient(
135deg,
rgba(62, 99, 75, 0.16),
transparent
);
}
.leaf-a {
top: 23%;
left: 17px;
transform: rotate(28deg);
}
.leaf-b {
top: 48%;
left: 3px;
transform:
scaleX(-1)
rotate(28deg);
}
.leaf-c {
top: 70%;
left: 17px;
transform: rotate(31deg);
}
.bud {
position: absolute;
width: 9px;
height: 14px;
border:
1px solid rgba(173, 150, 178, 0.18);
border-radius:
50% 50% 45% 45%;
background:
rgba(92, 68, 97, 0.12);
}
.bud-a {
top: 34%;
left: 12px;
}
.bud-b {
top: 62%;
left: 12px;
}
.header {
position: relative;
z-index: 3;
text-align: center;
padding: 2px 0 58px;
}
.ornament {
display: flex;
align-items: center;
justify-content: center;
width: min(790px, 76%);
margin: 0 auto 28px;
}
.ornament span {
flex: 1;
height: 1px;
background:
linear-gradient(
90deg,
transparent,
rgba(127, 151, 136, 0.26)
);
}
.ornament span:last-child {
transform: scaleX(-1);
}
.ornament i {
width: 7px;
height: 7px;
margin: 0 10px;
transform: rotate(45deg);
border:
1px solid rgba(173, 187, 178, 0.25);
background:
rgba(62, 88, 71, 0.10);
}
.ornament b {
width: 54px;
height: 2px;
margin: 0 12px;
background:
linear-gradient(
90deg,
transparent,
rgba(192, 174, 197, 0.55),
transparent
);
}
.flower {
position: relative;
width: 96px;
height: 96px;
margin: 0 auto 24px;
pointer-events: none;
}
.petal {
position: absolute;
top: 50%;
left: 50%;
width: 22px;
height: 42px;
margin: -41px 0 0 -11px;
transform-origin: 11px 41px;
border:
1px solid rgba(198, 183, 202, 0.31);
border-radius:
52% 52% 47% 47% / 75% 75% 28% 28%;
background:
radial-gradient(
ellipse at 50% 24%,
rgba(217, 199, 220, 0.20),
rgba(109, 81, 115, 0.11) 48%,
transparent 75%
);
box-shadow:
inset 0 0 8px rgba(215, 202, 219, 0.035);
}
.petal-a { transform: rotate(0deg); }
.petal-b { transform: rotate(45deg); }
.petal-c { transform: rotate(90deg); }
.petal-d { transform: rotate(135deg); }
.petal-e { transform: rotate(180deg); }
.petal-f { transform: rotate(225deg); }
.petal-g { transform: rotate(270deg); }
.petal-h { transform: rotate(315deg); }
.flower-center {
position: absolute;
top: 50%;
left: 50%;
width: 21px;
height: 21px;
transform:
translate(-50%, -50%);
border:
1px solid rgba(215, 203, 219, 0.43);
border-radius:
50%;
background:
radial-gradient(
circle,
rgba(181, 159, 187, 0.38),
rgba(75, 53, 80, 0.45) 58%,
rgba(10, 12, 11, 0.90)
);
}
.flower-center::before {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 6px;
height: 6px;
transform:
translate(-50%, -50%)
rotate(45deg);
background:
#c1b1c5;
}
.header h1 {
display: inline-block;
max-width: 100%;
margin: 0;
white-space: nowrap;
color: var(--ivory);
font-family:
Perpetua,
"Baskerville Old Face",
Baskerville,
Georgia,
serif;
font-size:
clamp(1.45rem, 3.8vw, 3.4rem);
font-weight: 600;
line-height: 1;
letter-spacing: 0.065em;
text-transform: uppercase;
text-shadow:
0 2px 6px rgba(0, 0, 0, 0.55);
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
.header h1 {
background:
linear-gradient(
180deg,
#eff1ef 0%,
#cbd0cc 28%,
#9ca8a0 52%,
#b9a4bc 76%,
#e3dce4 100%
);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
color: transparent;
}
}
.title-line {
display: flex;
align-items: center;
justify-content: center;
width: min(620px, 61%);
margin: 25px auto 16px;
}
.title-line span {
flex: 1;
height: 1px;
background:
linear-gradient(
90deg,
transparent,
rgba(116, 145, 126, 0.36)
);
}
.title-line span:last-child {
transform: scaleX(-1);
}
.title-line i {
width: 7px;
height: 7px;
margin: 0 7px;
transform: rotate(45deg);
border:
1px solid rgba(180, 190, 184, 0.25);
}
.title-line b {
width: 29px;
height: 2px;
margin: 0 8px;
background:
linear-gradient(
90deg,
rgba(77, 104, 87, 0.15),
rgba(194, 179, 198, 0.48),
rgba(77, 104, 87, 0.15)
);
}
.subtitle {
max-width: 720px;
margin: 0 auto;
color: #8f9992;
font-family:
Perpetua,
Baskerville,
Georgia,
serif;
font-size:
clamp(0.90rem, 1.3vw, 1.05rem);
font-style: italic;
line-height: 1.6;
letter-spacing: 0.075em;
}
.panel {
position: relative;
z-index: 3;
margin-bottom: 30px;
padding:
clamp(34px, 4.2vw, 52px);
overflow: hidden;
border:
1px solid rgba(132, 151, 138, 0.11);
clip-path:
polygon(
14px 0,
calc(100% - 14px) 0,
100% 14px,
100% calc(100% - 14px),
calc(100% - 14px) 100%,
14px 100%,
0 calc(100% - 14px),
0 14px
);
background:
radial-gradient(
ellipse at 12% 0%,
rgba(56, 88, 67, 0.09),
transparent 32%
),
radial-gradient(
ellipse at 89% 100%,
rgba(84, 57, 88, 0.07),
transparent 34%
),
linear-gradient(
90deg,
rgba(5, 8, 6, 0.98),
rgba(10, 14, 11, 0.98) 50%,
rgba(5, 8, 6, 0.98)
);
box-shadow:
inset 0 0 0 1px rgba(221, 228, 223, 0.01),
inset 0 0 70px rgba(0, 0, 0, 0.15);
}
.panel::before {
content: "";
position: absolute;
top: 0;
left: 14px;
width: 190px;
height: 1px;
background:
linear-gradient(
90deg,
rgba(167, 184, 173, 0.41),
transparent
);
}
.panel::after {
content: "";
position: absolute;
right: 14px;
bottom: 0;
width: 190px;
height: 1px;
background:
linear-gradient(
270deg,
rgba(148, 126, 152, 0.33),
transparent
);
}
.heading {
position: relative;
z-index: 4;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
width: 100%;
margin: 0 auto 28px;
}
.heading span {
flex: 1;
max-width: 180px;
height: 1px;
background:
linear-gradient(
90deg,
transparent,
rgba(119, 147, 128, 0.38)
);
}
.heading span:last-child {
transform: scaleX(-1);
}
.heading i {
width: 7px;
height: 7px;
flex: 0 0 auto;
transform: rotate(45deg);
border:
1px solid rgba(177, 190, 181, 0.24);
}
.heading h2 {
flex: 0 0 auto;
margin: 0 8px;
color: #d2d6d3;
font-family:
Perpetua,
"Baskerville Old Face",
Baskerville,
Georgia,
serif;
font-size:
clamp(1.4rem, 2.5vw, 2.08rem);
font-weight: 600;
line-height: 1;
letter-spacing: 0.105em;
text-align: center;
text-transform: uppercase;
}
.ghost {
position: absolute;
width: 130px;
height: 130px;
pointer-events: none;
opacity: 0.09;
}
.ghost-left {
top: 6px;
left: -28px;
transform: rotate(-18deg);
}
.ghost-right {
right: -24px;
bottom: -25px;
transform:
rotate(22deg)
scale(0.85);
}
.ghost::before,
.ghost::after,
.ghost span::before,
.ghost span::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 34px;
height: 76px;
margin: -72px 0 0 -17px;
transform-origin: 17px 72px;
border:
1px solid rgba(192, 201, 195, 0.55);
border-radius:
52% 52% 44% 44%;
}
.ghost::before {
transform: rotate(0deg);
}
.ghost::after {
transform: rotate(90deg);
}
.ghost span::before {
transform: rotate(45deg);
}
.ghost span::after {
transform: rotate(135deg);
}
.text {
position: relative;
z-index: 3;
max-width: 1210px;
margin: 0 auto 28px;
color: var(--text);
font-size:
clamp(1.03rem, 1.3vw, 1.16rem);
line-height: 1.82;
text-align: left;
overflow-wrap: anywhere;
}
.text strong {
color: var(--ivory);
font-weight: 700;
}
.text a {
color: #b7c2bb;
font-weight: 600;
text-decoration: none;
border-bottom:
1px solid rgba(111, 143, 121, 0.25);
}
.text a:hover {
color: #e5ebe7;
border-bottom-color:
rgba(162, 184, 169, 0.56);
}
.divider {
position: relative;
z-index: 3;
display: flex;
align-items: center;
justify-content: center;
width:
min(660px, 72%);
margin:
28px auto;
}
.divider span {
flex: 1;
height: 1px;
background:
linear-gradient(
90deg,
transparent,
rgba(100, 130, 110, 0.28)
);
}
.divider span:last-child {
transform: scaleX(-1);
}
.divider i {
width: 6px;
height: 6px;
margin: 0 7px;
transform: rotate(45deg);
border:
1px solid rgba(159, 174, 164, 0.22);
}
.divider b {
position: relative;
width: 22px;
height: 22px;
margin: 0 8px;
border:
1px solid rgba(152, 132, 156, 0.28);
border-radius:
50%;
}
.divider b::before {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 7px;
height: 7px;
transform:
translate(-50%, -50%)
rotate(45deg);
border:
1px solid rgba(191, 178, 194, 0.35);
}
.details {
position: relative;
z-index: 3;
width: 100%;
overflow: hidden;
border:
1px solid rgba(112, 139, 120, 0.13);
background:
#050806;
}
.details summary {
position: relative;
display: flex;
align-items: center;
justify-content: space-between;
min-height:
59px;
padding:
14px 22px;
cursor: pointer;
list-style: none;
color: #c4cac6;
border-left:
2px solid rgba(104, 142, 116, 0.52);
background:
linear-gradient(
90deg,
rgba(35, 61, 43, 0.16),
rgba(6, 9, 7, 0.98) 36%
);
}
.details summary::-webkit-details-marker {
display: none;
}
.details-title {
font-family:
Perpetua,
Baskerville,
Georgia,
serif;
font-size: 0.96rem;
font-weight: 600;
letter-spacing: 0.095em;
text-transform: uppercase;
}
.toggle {
position: relative;
flex: 0 0 auto;
width: 25px;
height: 25px;
margin-left: 16px;
border:
1px solid rgba(145, 166, 151, 0.22);
border-radius:
50%;
background:
rgba(43, 69, 51, 0.11);
}
.toggle::before {
content: "";
position: absolute;
top: 7px;
left: 8px;
width: 7px;
height: 7px;
border-right:
1px solid rgba(195, 207, 199, 0.72);
border-bottom:
1px solid rgba(195, 207, 199, 0.72);
transform:
rotate(45deg);
transition:
transform 0.18s ease,
top 0.18s ease;
}
.details[open] .toggle::before {
top: 10px;
transform: rotate(225deg);
}
.details pre {
margin: 0;
padding:
clamp(21px, 2.8vw, 32px);
overflow-x: auto;
color: #abb9b0;
font-family:
"Lucida Console",
Monaco,
"DejaVu Sans Mono",
monospace;
font-size:
clamp(0.80rem, 0.96vw, 0.90rem);
line-height: 1.68;
white-space: pre;
border-top:
1px solid rgba(101, 130, 110, 0.10);
background:
linear-gradient(
90deg,
#040605,
#080c09 50%,
#040605
);
}
.details code {
color: inherit;
font-family: inherit;
}
.use-panel {
padding:
clamp(29px, 3.5vw, 40px)
clamp(25px, 4vw, 46px)
clamp(30px, 3.5vw, 42px);
}
.use-heading {
margin-bottom: 25px;
}
.use-heading h2 {
font-size:
clamp(1.3rem, 2.25vw, 1.82rem);
}
.grid {
position: relative;
z-index: 3;
display: grid;
grid-template-columns:
repeat(2, minmax(0, 1fr));
gap: 10px;
width:
min(1120px, 100%);
margin:
0 auto;
}
.item {
position: relative;
display: grid;
grid-template-columns:
42px minmax(0, 1fr);
align-items:
start;
min-width:
0;
padding:
15px 16px 14px 10px;
border:
1px solid rgba(113, 140, 121, 0.09);
background:
linear-gradient(
135deg,
rgba(32, 55, 39, 0.10),
rgba(5, 8, 6, 0.10) 52%
);
}
.item::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 52px;
height: 1px;
background:
linear-gradient(
90deg,
rgba(128, 156, 137, 0.38),
transparent
);
}
.mark {
position: relative;
width: 38px;
height: 42px;
margin-top:
1px;
pointer-events:
none;
}
.mark-petal {
position: absolute;
top: 50%;
left: 50%;
width: 9px;
height: 17px;
margin:
-16px 0 0 -4.5px;
transform-origin:
4.5px 16px;
border:
1px solid rgba(132, 165, 143, 0.38);
border-radius:
55% 55% 45% 45% / 72% 72% 32% 32%;
background:
linear-gradient(
180deg,
rgba(122, 157, 135, 0.33),
rgba(45, 80, 57, 0.19) 54%,
rgba(10, 18, 13, 0.10)
);
}
.mark-a {
transform:
rotate(0deg);
}
.mark-b {
transform:
rotate(90deg);
}
.mark-c {
transform:
rotate(180deg);
}
.mark-d {
transform:
rotate(270deg);
}
.mark-ring {
position: absolute;
top: 50%;
left: 50%;
width: 15px;
height: 15px;
transform:
translate(-50%, -50%);
border:
1px solid rgba(165, 182, 170, 0.31);
border-radius:
50%;
background:
radial-gradient(
circle,
rgba(65, 94, 75, 0.28),
rgba(11, 18, 13, 0.78) 68%
);
}
.mark-center {
position: absolute;
top: 50%;
left: 50%;
width: 7px;
height: 7px;
transform:
translate(-50%, -50%);
border:
1px solid rgba(181, 196, 186, 0.42);
border-radius:
50%;
background:
radial-gradient(
circle,
#172119 0%,
#090d0a 63%,
#020302 100%
);
}
.copy {
min-width: 0;
padding:
0 0 0 4px;
}
.item h3 {
margin:
0 0 5px;
color:
#ced4d0;
font-family:
Perpetua,
Baskerville,
Georgia,
serif;
font-size:
clamp(0.95rem, 1.25vw, 1.08rem);
font-weight: 600;
line-height: 1.2;
letter-spacing: 0.055em;
text-transform: uppercase;
}
.item p {
margin: 0;
color: var(--text-soft);
font-size:
clamp(0.84rem, 0.97vw, 0.94rem);
line-height: 1.48;
overflow-wrap: normal;
word-break: normal;
}
.item:hover {
border-color:
rgba(130, 160, 140, 0.16);
background:
linear-gradient(
135deg,
rgba(42, 70, 51, 0.13),
rgba(7, 10, 8, 0.10) 55%
);
}
.item:hover h3 {
color:
#e5e9e6;
}
.item:hover .mark-petal {
border-color:
rgba(148, 181, 159, 0.50);
background:
linear-gradient(
180deg,
rgba(137, 172, 149, 0.40),
rgba(50, 88, 63, 0.23) 54%,
rgba(10, 18, 13, 0.10)
);
}
.footer {
position: relative;
z-index: 3;
display: flex;
align-items: center;
justify-content: center;
width:
min(880px, 80%);
margin:
48px auto 2px;
}
.footer-line {
flex: 1;
height: 1px;
background:
linear-gradient(
90deg,
transparent,
rgba(102, 131, 112, 0.26),
rgba(165, 151, 169, 0.13)
);
}
.footer-line-right {
transform:
scaleX(-1);
}
.footer-mark {
position: relative;
flex:
0 0 auto;
width:
18px;
height:
18px;
margin:
0 9px;
border:
1px solid rgba(155, 174, 161, 0.20);
border-radius:
50%;
}
.footer-mark::before,
.footer-mark::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width:
4px;
height:
11px;
margin:
-10px 0 0 -2px;
transform-origin:
2px 10px;
border:
1px solid rgba(180, 162, 184, 0.24);
border-radius:
50%;
}
.footer-mark::after {
transform:
rotate(90deg);
}
.footer-name {
flex:
0 0 auto;
margin:
0 12px;
color:
rgba(163, 176, 167, 0.68);
font-family:
Perpetua,
Baskerville,
Georgia,
serif;
font-size:
0.76rem;
font-weight:
600;
letter-spacing:
0.27em;
text-transform:
uppercase;
white-space:
nowrap;
}
@media (max-width: 900px) {
.body {
padding:
44px 29px 48px;
}
.side {
display:
none;
}
.header {
padding-bottom:
50px;
}
.panel {
padding:
32px 25px;
}
.use-panel {
padding:
29px 24px 31px;
}
}
@media (max-width: 700px) {
.card {
margin:
24px auto;
}
.body {
padding:
34px 15px 39px;
}
.body::before {
inset:
7px;
}
.header {
padding:
1px 0 42px;
}
.ornament {
width:
84%;
margin-bottom:
23px;
}
.ornament i {
width:
5px;
height:
5px;
margin:
0 6px;
}
.ornament b {
width:
31px;
margin:
0 7px;
}
.flower {
width:
70px;
height:
70px;
margin-bottom:
19px;
}
.petal {
width:
16px;
height:
30px;
margin:
-29px 0 0 -8px;
transform-origin:
8px 29px;
}
.flower-center {
width:
16px;
height:
16px;
}
.header h1 {
font-size:
clamp(0.98rem, 5vw, 1.62rem);
letter-spacing:
0.03em;
}
.title-line {
width:
76%;
margin-top:
19px;
}
.subtitle {
max-width:
90%;
font-size:
0.80rem;
letter-spacing:
0.045em;
}
.panel {
padding:
27px 17px;
margin-bottom:
25px;
}
.heading {
gap:
6px;
margin-bottom:
23px;
}
.heading span {
max-width:
43px;
}
.heading i {
width:
5px;
height:
5px;
}
.heading h2 {
margin:
0 4px;
font-size:
1.18rem;
letter-spacing:
0.07em;
}
.text {
margin-bottom:
24px;
font-size:
0.97rem;
line-height:
1.7;
}
.divider {
width:
86%;
margin:
25px auto;
}
.details summary {
min-height:
54px;
padding:
12px 15px;
}
.details-title {
font-size:
0.82rem;
letter-spacing:
0.065em;
}
.toggle {
width:
21px;
height:
21px;
}
.toggle::before {
top:
6px;
left:
7px;
width:
6px;
height:
6px;
}
.details[open] .toggle::before {
top:
8px;
}
.details pre {
padding:
18px 14px;
font-size:
0.70rem;
}
.use-panel {
padding:
25px 15px 26px;
}
.use-heading {
margin-bottom:
20px;
}
.grid {
grid-template-columns:
1fr;
gap:
8px;
}
.item {
grid-template-columns:
38px minmax(0, 1fr);
padding:
12px 13px 12px 8px;
}
.mark {
width:
34px;
height:
38px;
}
.mark-petal {
width:
8px;
height:
15px;
margin:
-14px 0 0 -4px;
transform-origin:
4px 14px;
}
.mark-ring {
width:
13px;
height:
13px;
}
.mark-center {
width:
6px;
height:
6px;
}
.item h3 {
font-size:
0.93rem;
}
.item p {
font-size:
0.84rem;
line-height:
1.43;
}
.footer {
width:
91%;
margin-top:
39px;
}
.footer-mark {
width:
14px;
height:
14px;
margin:
0 6px;
}
.footer-name {
margin:
0 8px;
font-size:
0.65rem;
letter-spacing:
0.18em;
}
}
</style>