:root {
    --pink: #F4B8C1;
    --pink-light: #F9CDD4;
    --pink-pale: #FDE4E8;
    --pink-soft: #FACDD5;
    --rose: #EFA4B0;
    --rose-deep: #E890A0;
    --blush: #FBD5DA;
    --cream: #FFF9F7;
    --ivory: #FFFCFB;
    --warm: #FFF0EE;
    --gold: #D4B896;
    --gold-light: #E0C9A8;
    --text: #5C4040;
    --text-soft: #7A5858;
    --text-muted: #B09090;
    --white: #FFFFFF;
}

* { margin:0; padding:0; box-sizing:border-box; }
html, body { width:100%; overflow-x:hidden; }
body {
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    color: var(--text);
    background: var(--cream);
    line-height: 1.8;
}

/* ===== ENVELOPE INTRO ===== */
.envelope-screen {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(160deg, var(--cream) 0%, var(--pink-pale) 50%, var(--warm) 100%);
    cursor: pointer;
    transition: opacity 1s ease, visibility 1s ease;
    overflow: hidden;
}
.envelope-screen.opened {
    opacity: 0; visibility: hidden; pointer-events: none;
}
/* Sparkles */
.env-sparkle {
    position: absolute;
    width: 5px; height: 5px;
    border-radius: 50%;
    background: var(--pink);
    box-shadow: 0 0 10px var(--pink), 0 0 20px var(--pink-light);
    animation: sparkle 2.5s ease-in-out infinite;
    opacity: 0;
}
@keyframes sparkle {
    0%, 100% { opacity:0; transform:scale(0.3) rotate(0deg); }
    50% { opacity:1; transform:scale(1.4) rotate(180deg); }
}
/* Star sparkles */
.env-star {
    position: absolute;
    opacity: 0;
    animation: starTwinkle 3s ease-in-out infinite;
}
.env-star svg { filter: drop-shadow(0 0 6px rgba(244,184,193,0.5)); }
@keyframes starTwinkle {
    0%, 100% { opacity:0; transform:scale(0.5) rotate(0deg); }
    50% { opacity:0.7; transform:scale(1) rotate(90deg); }
}
/* Floating bows & gifts */
.env-float {
    position: absolute;
    animation: envFloat linear infinite;
    opacity: 0;
    pointer-events: none;
}
.env-float img {
    width: 100%; height: 100%;
    object-fit: contain;
    mix-blend-mode: multiply;
}
@keyframes envFloat {
    0% { opacity:0; transform: translateY(100vh) rotate(0deg); }
    10% { opacity:0.5; }
    85% { opacity:0.3; }
    100% { opacity:0; transform: translateY(-120vh) rotate(360deg); }
}
/* Shimmer text */
.env-shimmer-text {
    background: linear-gradient(90deg, var(--text-muted) 0%, var(--text-muted) 35%, var(--pink) 50%, var(--text-muted) 65%, var(--text-muted) 100%);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: textShimmer 3s ease-in-out infinite;
}
@keyframes textShimmer {
    0%, 100% { background-position: 200% center; }
    50% { background-position: -200% center; }
}

.envelope {
    position: relative;
    width: clamp(260px, 65vw, 380px);
    height: clamp(180px, 45vw, 260px);
    perspective: 800px;
}
/* Body */
.env-body {
    position: absolute;
    bottom: 0; left: 0; right: 0; height: 70%;
    background: linear-gradient(145deg, #FDE8EC, #FACDD5, #FDE0E6);
    border-radius: 14px;
    box-shadow: 0 16px 56px rgba(244,184,193,0.25), 0 0 40px rgba(244,184,193,0.08);
    z-index: 2;
    border: none;
}
.envelope.anim .env-body {
    animation: bodyShimmer 1.5s ease-in-out 0.3s both;
}
@keyframes bodyShimmer {
    0% { box-shadow: 0 16px 56px rgba(244,184,193,0.25); }
    50% { box-shadow: 0 16px 56px rgba(244,184,193,0.5), 0 0 60px rgba(244,184,193,0.25); }
    100% { box-shadow: 0 16px 56px rgba(244,184,193,0.25); opacity: 0.8; }
}
/* Flap — single closed piece */
.env-flap {
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 50%;
    background: linear-gradient(180deg, #F4B8C1 0%, #F9CDD4 40%, #FACDD9 100%);
    border-radius: 12px 12px 0 0;
    clip-path: polygon(0 0, 100% 0, 100% 30%, 50% 100%, 0 30%);
    z-index: 3;
    transition: transform 1.2s cubic-bezier(0.4,0,0.2,1), opacity 0.8s ease 0.2s;
    transform-origin: top center;
}
.envelope.anim .env-flap {
    transform: rotateX(180deg);
    opacity: 0;
}
/* Wax seal */
.env-seal {
    position: absolute;
    top: 22%; left: 50%;
    transform: translateX(-50%);
    width: 72px; height: 72px;
    border-radius: 50%;
    z-index: 5;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(244,184,193,0.4), 0 0 40px rgba(244,184,193,0.12);
    transition: transform 0.8s cubic-bezier(0.4,0,0.2,1), opacity 0.5s ease;
    animation: sealGlow 2.5s ease-in-out infinite;
}
.env-seal img {
    width: 100%; height: 100%;
    object-fit: cover;
    mix-blend-mode: multiply;
}
.envelope.anim .env-seal { transform: translateX(-50%) scale(0) rotate(360deg); opacity:0; }
@keyframes sealGlow {
    0%, 100% { box-shadow: 0 4px 24px rgba(244,184,193,0.4); }
    50% { box-shadow: 0 4px 40px rgba(244,184,193,0.7), 0 0 60px rgba(244,184,193,0.2); }
}

/* Envelope scale-up on open */
.envelope.anim {
    animation: envZoom 2.5s cubic-bezier(0.22,1,0.36,1) 0.8s forwards;
}
@keyframes envZoom {
    0% { transform: scale(1); opacity: 1; }
    60% { transform: scale(1.8); opacity: 1; }
    100% { transform: scale(2.5); opacity: 0; }
}
/* Card inside */
.env-card {
    position: absolute;
    bottom: 10%; left: 50%;
    transform: translateX(-50%) translateY(0);
    width: 78%; height: 70%;
    background: var(--white);
    border-radius: 8px;
    z-index: 1;
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    gap: 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.04);
    transition: transform 1.5s cubic-bezier(0.22,1,0.36,1) 0.5s;
    border: 1px solid rgba(244,184,193,0.15);
}
.envelope.anim .env-card {
    transform: translateX(-50%) translateY(-75%);
}
.env-card-names {
    font-family: 'Great Vibes', cursive;
    font-size: clamp(22px, 5vw, 32px);
    color: var(--rose-deep);
}
.env-card-date {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(11px, 2.5vw, 14px);
    color: var(--text-muted);
    font-style: italic;
    letter-spacing: 0.1em;
}
/* Tap text */
.env-tap {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(14px, 3vw, 18px);
    font-style: italic;
    color: var(--text-muted);
    margin-top: clamp(40px, 8vw, 60px);
    animation: tapPulse 2.5s ease-in-out infinite;
    letter-spacing: 0.08em;
}
@keyframes tapPulse { 0%,100%{opacity:1;} 50%{opacity:0.35;} }

/* ===== VIDEO BG ===== */
.section_bg {
    position: fixed; inset: 0; z-index: 0; overflow: hidden;
}
.bg_img {
    width: 130%; height: 130%;
    object-fit: cover;
    position: absolute;
    top: -15%; left: -15%;
    filter: brightness(1.05) saturate(0.7) blur(5px) contrast(0.92);
    animation: fabricWave 20s ease-in-out infinite;
    image-rendering: auto;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform-origin: center center;
}
@keyframes fabricWave {
    0% { transform: translate(0, 0) scale(1) skewX(0deg); }
    15% { transform: translate(-2%, 1%) scale(1.03) skewX(0.5deg); }
    30% { transform: translate(1%, -2%) scale(1.05) skewX(-0.3deg); }
    45% { transform: translate(-1%, -1%) scale(1.02) skewX(0.4deg); }
    60% { transform: translate(2%, 1.5%) scale(1.04) skewX(-0.5deg); }
    75% { transform: translate(-1.5%, -0.5%) scale(1.03) skewX(0.2deg); }
    90% { transform: translate(0.5%, 1%) scale(1.01) skewX(-0.2deg); }
    100% { transform: translate(0, 0) scale(1) skewX(0deg); }
}

/* ===== SECTIONS ===== */
.flex_section {
    position: relative; z-index: 1;
    display: flex; flex-direction: column; align-items: center;
    padding: clamp(56px, 10vw, 100px) 24px;
    text-align: center;
    background: rgba(255, 249, 247, 0.6);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.flex_alt {
    background: rgba(253, 228, 232, 0.5);
}

.orn { display:flex; align-items:center; justify-content:center; gap:12px; padding:10px 0; }
.orn .ln { width:48px; height:1px; background:linear-gradient(90deg,transparent,var(--pink),transparent); }
.orn svg { width:16px; height:16px; color:var(--pink); opacity:0.6; filter:drop-shadow(0 0 6px rgba(244,184,193,0.4)); }

/* ===== 1. HERO ===== */
.first__section {
    position: relative; z-index: 1;
    min-height: 100vh;
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    text-align: center; padding: 48px 24px;
}
.first__title {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(11px, 2vw, 14px);
    letter-spacing: 0.5em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.75);
    margin-bottom: 32px;
    font-weight: 300;
}
.first__name_wrap { display:flex; flex-direction:column; align-items:center; gap: 0; }
.first__name_wrap span {
    font-family: 'Great Vibes', cursive;
    font-size: clamp(46px, 12vw, 90px);
    color: #fff;
    line-height: 1.1;
    text-shadow: 0 4px 28px rgba(0,0,0,0.1);
}
.first__name_wrap span:nth-child(2) {
    font-family: 'Great Vibes', cursive;
    font-size: clamp(24px, 5vw, 38px);
    font-weight: 400;
    opacity: 0.8;
    margin: 16px 0;
    color: var(--pink-light);
    text-shadow: 0 2px 12px rgba(244,184,193,0.3);
}
._date_full {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(26px, 5.5vw, 44px);
    font-weight: 300; font-style: italic;
    color: rgba(255,255,255,0.9);
    text-shadow: 0 3px 20px rgba(0,0,0,0.1);
    margin-top: 20px;
}

/* ===== 2. GREETING ===== */
.info__title {
    font-family: 'Great Vibes', cursive;
    font-size: clamp(34px, 7vw, 54px);
    color: var(--rose-deep); margin-bottom: 20px;
}
.info__content_wrap { max-width: 500px; }
.info__content_wrap p {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(16px, 2.2vw, 19px);
    color: var(--text-soft); font-style: italic;
    line-height: 2; margin-bottom: 10px;
}

/* ===== 3. TIMING ===== */
.timing__title {
    font-family: 'Great Vibes', cursive;
    font-size: clamp(34px, 7vw, 54px);
    color: var(--rose-deep); margin-bottom: 40px;
}
.timing__list { display:flex; flex-direction:column; gap:24px; max-width:400px; width:100%; }
.timing__item { display:flex; align-items:center; gap:16px; border-bottom:1px solid rgba(244,184,193,0.12); padding-bottom:18px; }
.timing__item:last-child { border-bottom:none; }
.tl-img { width:44px; height:44px; flex-shrink:0; border-radius:50%; background:var(--pink-pale); display:flex; align-items:center; justify-content:center; box-shadow:0 3px 14px rgba(244,184,193,0.18); }
.tl-img svg { width:22px; height:22px; color:var(--rose-deep); }
.tl-info-wrap { display:flex; align-items:baseline; gap:12px; }
.__time { font-family:'Playfair Display',serif; font-size:clamp(22px,4vw,28px); color:var(--rose-deep); flex-shrink:0; }
.__text { font-size:clamp(13px,1.8vw,15px); color:var(--text-soft); }

/* ===== 4. DRESSCODE ===== */
.dresscode__title {
    font-family: 'Great Vibes', cursive;
    font-size: clamp(34px, 7vw, 54px);
    color: var(--rose-deep); margin-bottom: 16px;
}
.dresscode__wrap { max-width:460px; margin-bottom:24px; }
.dresscode__wrap p { font-family:'Cormorant Garamond',serif; font-size:clamp(15px,2vw,17px); color:var(--text-soft); font-style:italic; line-height:1.9; margin-bottom:8px; }
.dresscode__list { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; margin-bottom:28px; }
.dresscode__item { width:clamp(40px,8vw,50px); height:clamp(40px,8vw,50px); border-radius:50%; border:3px solid var(--white); box-shadow:0 3px 16px rgba(244,184,193,0.2), 0 0 20px rgba(244,184,193,0.08); transition:transform 0.3s; }
.dresscode__item:hover { transform:scale(1.18); }
.dc-slider { display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:8px 0 16px; scrollbar-width:none; }
.dc-slider::-webkit-scrollbar { display:none; }
.dc-slide { flex-shrink:0; width:400px; scroll-snap-align:center; border-radius:14px; overflow:hidden; box-shadow:0 4px 20px rgba(244,184,193,0.1); transition:transform 0.3s; border:3px solid var(--white); }
.dc-slide:hover { transform:scale(1.03); }
.dc-slide img { width:400px; height:280px; object-fit:cover; display:block; }

/* ===== CALENDAR FLIP ===== */
.cal-flip {
    background: var(--white);
    border-radius: 20px;
    padding: 28px 24px;
    max-width: 340px;
    width: 100%;
    box-shadow: 0 12px 40px rgba(244,184,193,0.15), 0 0 40px rgba(244,184,193,0.05);
    border: 1px solid rgba(244,184,193,0.15);
}
.cal-header {
    font-family: 'Great Vibes', cursive;
    font-size: clamp(24px, 5vw, 32px);
    color: var(--rose-deep);
    margin-bottom: 16px;
}
.cal-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
}
.cal-dh {
    font-size: 10px;
    font-weight: 500;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding-bottom: 8px;
}
.cal-d {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(14px, 2.5vw, 18px);
    color: var(--text-soft);
    padding: 6px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s;
}
.cal-d.empty { visibility: hidden; }
.cal-d.active {
    background: transparent;
    color: var(--white);
    font-weight: 700;
    position: relative;
    z-index: 2;
    text-shadow: 0 1px 4px rgba(0,0,0,0.1);
}
.cal-d.active::before {
    content: '';
    position: absolute;
    width: 42px; height: 42px;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(135deg, #F4B8C1, #EFA4B0);
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E");
    mask-size: contain; -webkit-mask-size: contain;
    mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat;
    mask-position: center; -webkit-mask-position: center;
    z-index: -1;
    filter: drop-shadow(0 4px 12px rgba(244,184,193,0.5));
    animation: calPulse 2.5s ease-in-out infinite;
}
@keyframes calPulse {
    0%, 100% { box-shadow: 0 4px 16px rgba(244,184,193,0.35); }
    50% { box-shadow: 0 4px 28px rgba(244,184,193,0.55), 0 0 40px rgba(244,184,193,0.2); }
}
.cal-d:not(.empty):not(.active):hover {
    background: var(--pink-pale);
    transform: scale(1.12);
}

/* ===== 5. TIPS ===== */
.tips__title { font-family:'Great Vibes',cursive; font-size:clamp(34px,7vw,54px); color:var(--rose-deep); margin-bottom:16px; }
.tips__text_wrap { max-width:440px; margin-bottom:32px; }
.tips__text_wrap p { font-family:'Cormorant Garamond',serif; font-size:clamp(15px,2vw,17px); color:var(--text-soft); font-style:italic; line-height:1.9; }
.tips__list { display:flex; flex-direction:column; gap:28px; max-width:540px; width:100%; }
.tips__item { display:flex; gap:18px; text-align:left; align-items:flex-start; }
.__item_img { flex-shrink:0; width:56px; height:56px; display:flex; align-items:center; justify-content:center; background:var(--pink-pale); border-radius:50%; box-shadow:0 4px 20px rgba(244,184,193,0.25), 0 0 30px rgba(244,184,193,0.1); }
.__item_img svg { width:24px; height:24px; color:var(--rose-deep); }
._title { font-family:'Cormorant Garamond',serif; font-size:clamp(18px,2.5vw,22px); font-weight:500; color:var(--text); margin-bottom:4px; }
.__item__content_wrap p { font-size:clamp(13px,1.7vw,15px); color:var(--text-soft); line-height:1.8; margin-bottom:3px; }
.__item__link { margin-top:6px; }
.__item__link span { font-weight:500; color:var(--text); margin-right:8px; }
.__item__link a { color:var(--rose-deep); text-decoration:none; transition:color 0.3s; }
.__item__link a:hover { color:var(--mauve); text-decoration:underline; }

/* ===== 6. LOCATION ===== */
.location__title { font-family:'Great Vibes',cursive; font-size:clamp(34px,7vw,54px); color:var(--rose-deep); margin-bottom:20px; }
.location__wrap { display:flex; flex-direction:column; align-items:center; gap:14px; max-width:460px; margin-bottom:20px; }
.location__item p:first-child { font-family:'Cormorant Garamond',serif; font-size:clamp(17px,2.2vw,21px); font-weight:500; color:var(--text); margin-bottom:3px; }
.location__item p:last-child { font-size:clamp(13px,1.7vw,15px); color:var(--text-muted); line-height:1.7; }
.location__link { display:inline-flex; align-items:center; gap:8px; padding:12px 32px; border:1.5px solid var(--pink-light); border-radius:100px; color:var(--text-soft); font-family:'Cormorant Garamond',serif; font-size:15px; font-style:italic; text-decoration:none; transition:all 0.3s; }
.location__link:hover { background:var(--rose-deep); color:var(--white); border-color:var(--rose-deep); }
.location__img { max-width:540px; width:100%; border-radius:16px; overflow:hidden; box-shadow:0 8px 32px rgba(244,184,193,0.1); }
.location__img img { width:100%; height:auto; display:block; }

/* ===== 7. FORM ===== */
.form__title { font-family:'Great Vibes',cursive; font-size:clamp(34px,7vw,54px); color:var(--rose-deep); margin-bottom:8px; }
.form__text p { font-family:'Cormorant Garamond',serif; font-size:clamp(14px,1.8vw,16px); color:var(--text-soft); font-style:italic; margin-bottom:24px; }
.form { max-width:420px; width:100%; display:flex; flex-direction:column; gap:18px; }
.input__title { display:block; font-size:13px; color:var(--text-soft); margin-bottom:5px; text-align:left; }
.input_name, .form textarea { width:100%; padding:13px 18px; border:1.5px solid var(--pink-light); border-radius:12px; background:var(--white); font-family:'Cormorant Garamond',serif; font-size:15px; color:var(--text); outline:none; transition:border-color 0.3s,box-shadow 0.3s; }
.input_name:focus, .form textarea:focus { border-color:var(--rose-deep); box-shadow:0 0 0 3px rgba(212,161,154,0.15); }
.form textarea { resize:vertical; min-height:68px; }
.input_question { text-align:left; margin-bottom:8px; }
.radio_one,.radio_tree { margin-bottom:8px; }
.input__radio { display:none; }
.radio__title { display:inline-block; padding:10px 20px; border:1.5px solid var(--pink-light); border-radius:10px; font-size:14px; color:var(--text-soft); cursor:pointer; transition:all 0.3s; }
.input__radio:checked+.radio__title { background:var(--rose-deep); color:var(--white); border-color:var(--rose-deep); }
.radio__title:hover { border-color:var(--rose-deep); }
.btn__style { padding:13px 38px; border:none; border-radius:100px; background:linear-gradient(135deg,var(--rose),var(--rose-deep)); color:var(--white); font-family:'Cormorant Garamond',serif; font-size:16px; font-style:italic; cursor:pointer; transition:all 0.3s; box-shadow:0 4px 18px rgba(244,184,193,0.25); letter-spacing:0.04em; }
.btn__style:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(244,184,193,0.35); }
#formMsg { display:none; margin-top:16px; text-align:center; }

/* ===== 8. LAST ===== */
.last__section { position:relative; z-index:1; min-height:55vh; display:flex; align-items:center; justify-content:center; }
.title_wrap { text-align:center; }
.last__title { font-family:'Great Vibes',cursive; color:#fff; text-shadow:0 4px 24px rgba(0,0,0,0.12); }
.last__title:first-child { font-size:clamp(16px,3vw,22px); opacity:0.8; margin-bottom:4px; }
.last__title:last-child { font-size:clamp(38px,9vw,68px); }

/* ===== FOOTER ===== */
.footer { position:relative; z-index:1; background:linear-gradient(135deg,#E890A0,#EFA4B0); color:rgba(255,252,250,0.5); padding:clamp(40px,6vw,60px) 24px clamp(24px,4vw,36px); text-align:center; }
.footer::before { display:none; }
.f-names { font-family:'Great Vibes',cursive; font-size:clamp(24px,5vw,36px); color:var(--white); margin-bottom:6px; }
.f-date { font-size:10px; letter-spacing:0.35em; color:rgba(255,252,250,0.3); margin-bottom:22px; }
.f-cd { display:flex; justify-content:center; gap:clamp(8px,2.5vw,22px); margin-bottom:22px; flex-wrap:nowrap; }
.f-ci { display:flex; flex-direction:column; align-items:center; gap:3px; }
.f-cn { font-family:'Playfair Display',serif; font-size:clamp(22px,5vw,34px); color:rgba(255,252,250,0.8); }
.f-cl { font-size:8px; letter-spacing:0.2em; text-transform:uppercase; color:rgba(255,252,250,0.25); }
.f-sep { font-size:18px; color:rgba(255,252,250,0.12); align-self:flex-start; margin-top:6px; }
.f-top { display:inline-flex; align-items:center; gap:7px; padding:10px 24px; border:1.5px solid rgba(255,252,250,0.15); border-radius:100px; background:transparent; color:rgba(255,252,250,0.45); font-family:'Cormorant Garamond',serif; font-size:13px; font-style:italic; cursor:pointer; transition:all 0.3s; margin-bottom:16px; }
.f-top:hover { background:rgba(255,252,250,0.06); border-color:var(--blush); color:rgba(255,252,250,0.7); }
.f-top svg { width:12px; height:12px; }
.f-copy { font-size:9px; color:rgba(255,252,250,0.15); letter-spacing:0.1em; }
.f-copy a { color:rgba(255,252,250,0.25); text-decoration:none; font-weight:500; transition:color 0.3s; }
.f-copy a:hover { color:var(--blush-light); }

/* ===== RESPONSIVE ===== */
@media(max-width:600px) { .tips__item { flex-direction:column; align-items:center; text-align:center; } }
@media(max-width:420px) { .flex_section { padding:44px 16px; } .first__section { padding:36px 16px; } }
