.new-site { color:#241b32; background:#fff; min-height:100vh; font-family:'DM Sans',sans-serif; }
.new-site *, .new-site *::before, .new-site *::after { box-sizing:border-box; }
.new-site a { text-decoration:none; }
.site-wrap { width:min(100% - 48px,1180px); margin:0 auto; }
.new-header { position:relative; z-index:20; background:#211330; color:#fff; }
.header-grid { min-height:82px; display:grid; grid-template-columns:178px minmax(0,1fr) auto; align-items:center; gap:20px; }
.new-brand,.footer-about>a,.new-site .rasppy-logo,.app-shell .rasppy-logo,.login-card .rasppy-logo { display:block; width:178px; height:auto; overflow:visible; position:relative; flex:none; border-radius:0; }
.new-site .rasppy-logo img,.app-shell .rasppy-logo img,.login-card .rasppy-logo img { display:block; width:100%; height:auto; max-width:100%; position:static; }
.new-site .rasppy-logo { background:transparent; }
.new-site .rasppy-logo-negative svg { display:block; width:100%; height:auto; overflow:visible; }
.desktop-nav { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:3px 13px; }
.desktop-nav a { color:#ded5e7; font-size:12px; font-weight:700; padding:8px 1px; white-space:nowrap; }
.desktop-nav a:hover,.desktop-nav a.current { color:#ff80c0; }
.header-actions { display:flex; align-items:center; justify-content:flex-end; gap:16px; }
.header-login { color:#fff; font-size:12px; white-space:nowrap; font-weight:700; }
.cart-link { color:#fff; display:flex; align-items:center; gap:3px; }
.cart-link span:last-child { min-width:18px; text-align:center; border-radius:50%; color:#fff; background:#d01987; font-size:11px; font-weight:700; }
.mobile-menu { display:none; position:relative; }
.mobile-menu summary { display:flex; cursor:pointer; list-style:none; }
.mobile-menu-panel { position:absolute; right:0; top:36px; width:210px; border-radius:16px; background:#fff; box-shadow:0 18px 45px #18072430; padding:12px; display:grid; gap:2px; }
.mobile-menu-panel a { padding:10px 12px; color:#321d46; font-weight:700; border-radius:8px; }
.mobile-menu-panel a:hover { background:#f9e6f4; }
.site-hero { position:relative; overflow:hidden; background:linear-gradient(115deg,#231035 0%,#38114d 48%,#82126f 100%); color:#fff; }
.hero-layout { position:relative; z-index:1; min-height:550px; display:grid; grid-template-columns:47% 53%; align-items:center; padding:56px 0 96px; }
.hero-message { position:relative; z-index:2; max-width:560px; }
.hero-label,.section-kicker { display:inline-block; text-transform:uppercase; letter-spacing:.14em; font-weight:800; font-size:11px; color:#b82a87; }
.hero-label { color:#ff9fd2; }
.hero-message h1 { margin:17px 0 20px; font-family:Manrope,sans-serif; font-size:clamp(43px,5vw,69px); line-height:1.08; letter-spacing:-.045em; }
.hero-message h1 em { font-style:normal; color:#ff81bd; }
.hero-message p { max-width:510px; color:#f2e9f4; line-height:1.7; font-size:17px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.site-button { appearance:none; border:1px solid transparent; border-radius:11px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:13px 19px; min-height:48px; font-weight:800; font-size:13px; cursor:pointer; transition:transform .2s,box-shadow .2s; font-family:inherit; }
.site-button:hover { transform:translateY(-2px); box-shadow:0 10px 25px #180f262b; }
.site-button .material-symbols-rounded { font-size:19px; }
.site-button.light { color:#a70b70; background:#fff; }
.site-button.ghost { color:#fff; border-color:#ffffff75; background:#ffffff12; }
.site-button.primary { color:#fff; background:linear-gradient(110deg,#b5167d,#d32082); }
.site-button.outline { color:#a20d70; border-color:#d6a9c6; background:#fff; }
.hero-image { display:block; width:112%; max-width:none; height:auto; margin-left:-4%; object-fit:contain; mix-blend-mode:normal; mask-image:none; }
.hero-wave { position:absolute; display:block; bottom:-1px; left:0; width:100%; height:96px; }
.site-section { padding:84px 0; }
.soft-section { background:#fcf7fb; }
.section-intro { display:grid; grid-template-columns:1fr minmax(260px,420px); gap:40px; align-items:end; margin-bottom:30px; }
.section-intro h2,.split-feature h2 { font-family:Manrope,sans-serif; font-size:clamp(30px,3vw,43px); line-height:1.15; letter-spacing:-.035em; margin:10px 0 0; }
.section-intro p,.split-feature p { color:#6e6476; line-height:1.7; margin:0; }
.idea-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.idea-card,.new-plan,.process-grid>div { display:block; border:1px solid #eee5ee; background:#fff; border-radius:20px; padding:27px; box-shadow:0 16px 40px #3c1a3910; }
.idea-card { color:#271a32; min-height:228px; transition:transform .2s,border-color .2s; }
.idea-card:hover { transform:translateY(-4px); border-color:#cb70af; }
.idea-card { overflow:hidden; padding-top:0; }
.idea-card::before { content:''; display:block; height:190px; margin:0 -27px 22px; background-color:#fbf1fa; background-repeat:no-repeat; background-position:center; background-size:contain; }
.idea-card:nth-child(1)::before { background-image:url('assets/visual-hosting.png'); }
.idea-card:nth-child(2)::before { background-image:url('assets/visual-cloud.png'); }
.idea-card:nth-child(3)::before { background-image:url('assets/visual-email-domain.png'); }
.idea-card:nth-child(4)::before { background-image:url('assets/visual-digital-projects.png'); }
.idea-card:nth-child(5)::before { background-image:url('assets/visual-systems.png'); }
.idea-card:nth-child(6)::before { background-image:url('assets/visual-apps.png'); }
.idea-card .idea-icon { display:none; }
.idea-card h3 { margin-top:0; }
.idea-icon,.benefit-icon { display:inline-flex; justify-content:center; align-items:center; width:48px; height:48px; border-radius:14px; background:#f9dcec; color:#b20e77; }
.idea-card h3 { margin:20px 0 5px; font-size:20px; }
.idea-card p { margin:0 0 20px; color:#6e6476; line-height:1.5; }
.idea-more { color:#b10d77; font-weight:800; display:flex; align-items:center; gap:5px; font-size:13px; }
.idea-more .material-symbols-rounded { font-size:18px; }
.split-feature { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:70px; }
.split-feature p { margin:18px 0 25px; }
.feature-steps { display:grid; gap:11px; }
.feature-steps>div { display:grid; grid-template-columns:54px 1fr; gap:1px 13px; align-items:start; background:#fff; border:1px solid #efdeeb; border-radius:14px; padding:19px; }
.feature-steps span { grid-row:span 2; font-weight:800; color:#b30f78; font-size:22px; }
.feature-steps p { margin:4px 0 0; font-size:13px; }
.bottom-callout { color:#fff; background:linear-gradient(115deg,#3c173c,#811462 65%,#a21479); padding:51px 0; }
.callout-grid { display:grid; grid-template-columns:1fr auto; gap:30px; align-items:center; }
.callout-grid span { color:#ffc4e4; text-transform:uppercase; font-size:11px; letter-spacing:.12em; font-weight:800; }
.callout-grid h2 { margin:8px 0; font-family:Manrope,sans-serif; font-size:30px; }
.callout-grid p { margin:0; color:#f7ddec; }
.callout-actions { display:grid; justify-items:end; gap:11px; }
.callout-text { color:#fff; font-weight:700; font-size:13px; }
.new-footer { background:#fff; padding:55px 0 22px; }
.footer-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; }
.footer-grid>div { display:flex; flex-direction:column; align-items:flex-start; gap:12px; min-width:0; }
.footer-grid strong { font-size:14px; margin-bottom:2px; }
.footer-grid a:not(.footer-about>a) { color:#6d6274; font-size:13px; }
.footer-grid a:hover { color:#b5167d; }
.footer-about p { font-weight:700; line-height:1.55; color:#4b3952; }
.footer-bottom { border-top:1px solid #eee7ec; display:flex; justify-content:space-between; gap:20px; padding-top:21px; margin-top:32px; font-size:12px; color:#776d7d; }
.detail-hero { background:linear-gradient(115deg,#fdf1f9,#f5effb); padding:80px 0 73px; }
.detail-hero h1 { max-width:750px; font:800 clamp(39px,4.5vw,58px)/1.12 Manrope,sans-serif; letter-spacing:-.04em; margin:15px 0; }
.detail-hero p { max-width:700px; font-size:17px; line-height:1.7; color:#695d71; margin:0 0 25px; }
.benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.benefit-grid>div { display:flex; align-items:center; gap:15px; font-size:14px; border-right:1px solid #eee0eb; }
.benefit-grid>div:last-child { border:0; }
.plans-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.new-plan { display:flex; flex-direction:column; min-height:350px; }
.plan-topline { display:flex; justify-content:space-between; gap:10px; color:#a21573; text-transform:uppercase; letter-spacing:.1em; font-size:10px; font-weight:800; }
.plan-topline b { background:#f9d8eb; color:#aa116e; border-radius:100px; padding:5px 8px; letter-spacing:0; }
.new-plan h3 { margin:18px 0 7px; font:800 23px/1.2 Manrope,sans-serif; }
.plan-lead { color:#6e6476; font-size:13px; line-height:1.5; min-height:37px; margin:0; }
.plan-price { min-height:60px; margin:17px 0 0; display:flex; flex-wrap:wrap; align-items:baseline; column-gap:7px; }
.plan-price small { width:100%; font-size:11px; color:#6e6476; }
.plan-price strong { font-size:29px; letter-spacing:-.03em; }
.plan-price span { color:#6e6476; font-size:12px; }
.plan-annual { margin:-3px 0 15px; color:#a11773; font-size:12px; }
.cycle-chooser { display:grid; gap:5px; margin:0 0 15px; color:#6e6476; font-size:12px; font-weight:700; }
.cycle-chooser select { width:100%; border:1px solid #decbd9; border-radius:9px; padding:9px; color:#35213d; background:#fff; font:inherit; }
.new-plan ul { margin:0 0 25px; padding:0; list-style:none; display:grid; gap:9px; }
.new-plan li { display:flex; align-items:center; gap:9px; color:#5f5366; font-size:13px; }
.new-plan li .material-symbols-rounded { font-size:17px; color:#c42182; }
.new-plan .site-button { margin-top:auto; width:100%; }
.domain-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr); gap:23px; align-items:start; }
.domain-box,.domain-aside,.cart-summary,.cart-row,.idea-form { border:1px solid #eee0eb; border-radius:21px; background:#fff; padding:30px; box-shadow:0 15px 40px #3c1a390d; }
.domain-box h2 { font:800 29px/1.2 Manrope,sans-serif; margin:0 0 25px; }
.domain-form label,.idea-form label { display:grid; gap:9px; font-weight:800; font-size:13px; }
.domain-form>div { display:flex; gap:10px; margin-top:10px; }
.domain-form input,.idea-form input,.idea-form textarea { min-width:0; width:100%; border:1px solid #d9cbd8; border-radius:10px; padding:13px 15px; background:#fff; color:#21132c; font:inherit; }
.domain-form input:focus,.idea-form input:focus,.idea-form textarea:focus { outline:2px solid #d2248b; outline-offset:1px; }
.domain-form input { flex:1; }
.domain-aside h3 { font-size:21px; margin:15px 0 10px; }
.domain-aside p { line-height:1.65; color:#6e6476; }
.fine-print { color:#7a7180; font-size:12px; line-height:1.5; }
.domain-feedback { margin-top:21px; border-radius:12px; padding:19px; background:#f7f1fa; }
.domain-feedback.possibly_available { background:#edf9f2; }
.domain-feedback.registered { background:#fff0f2; }
.domain-feedback strong { font-size:18px; }
.domain-feedback p { color:#594f61; line-height:1.5; }
.domain-feedback a { color:#b41278; font-weight:800; }
.domain-purchase-modal { width:min(100% - 32px,620px); max-height:min(90vh,720px); overflow:auto; margin:auto; border:1px solid #ead8e7; border-radius:24px; padding:30px; color:#26162d; background:#fff; box-shadow:0 30px 95px #190d2a66; }
.domain-purchase-modal::backdrop { background:#1e1029b8; backdrop-filter:blur(4px); }
.domain-modal-top { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.domain-modal-close { display:grid; place-items:center; width:39px; height:39px; border:1px solid #e9dbe8; border-radius:50%; background:#fff; color:#402c46; cursor:pointer; }
.domain-purchase-modal h2 { margin:16px 0 12px; font:800 clamp(23px,4vw,31px)/1.2 Manrope,sans-serif; }
.domain-purchase-modal>p { color:#5c5264; line-height:1.6; }
.domain-modal-steps { display:grid; gap:11px; margin:21px 0; }
.domain-modal-steps>div { display:flex; gap:14px; align-items:start; padding:14px 16px; border-radius:13px; background:#fbf5fa; }
.domain-modal-steps span { color:#b5167d; font-weight:800; }
.domain-modal-steps p { margin:0; line-height:1.5; }
.domain-modal-actions { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:16px; }
.process-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.process-grid span { color:#b5167d; font-weight:800; font-size:24px; }
.process-grid h3 { margin:14px 0 8px; }
.process-grid p { color:#6e6476; line-height:1.5; margin:0; }
.idea-form { max-width:690px; margin:auto; display:grid; gap:20px; }
.idea-form .honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.idea-form .site-button { justify-self:start; }
.idea-success { text-align:center; padding:40px 15px; }
.idea-success>.material-symbols-rounded { font-size:48px; color:#189d5b; }
.cart-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:22px; align-items:start; }
.cart-row { display:flex; justify-content:space-between; gap:20px; margin-bottom:12px; }
.cart-row h3 { margin:7px 0; }
.cart-row p { margin:0; font-size:13px; color:#746979; }
.cart-row>div:last-child { display:grid; align-content:start; justify-items:end; gap:12px; white-space:nowrap; }
.remove-cart { border:0; background:none; color:#a61873; text-decoration:underline; cursor:pointer; }
.cart-summary h2 { margin-top:0; }
.cart-summary p { color:#6e6476; line-height:1.55; }
.cart-summary .site-button { width:100%; }
.cart-empty { padding:25px; }
.story-section { background:#fff; }
.story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.story-card { border:1px solid #eee2ed; border-radius:20px; padding:29px; background:#fff; box-shadow:0 12px 35px #3c1a390c; }
.story-icon { width:52px; height:52px; display:flex; align-items:center; justify-content:center; border-radius:16px; background:#fae3f0; color:#ae1678; }
.story-card h3 { margin:20px 0 10px; font:800 20px/1.3 Manrope,sans-serif; }
.story-card p { margin:0; color:#6e6476; line-height:1.65; font-size:14px; }
.comparison-section { background:#fcf7fb; }
.comparison-scroll { overflow-x:auto; border:1px solid #eadce8; border-radius:19px; background:#fff; box-shadow:0 16px 40px #3c1a390c; }
.comparison-table { width:100%; min-width:680px; border-collapse:collapse; text-align:left; }
.comparison-table th,.comparison-table td { padding:18px 20px; border-bottom:1px solid #f0e8ef; font-size:14px; }
.comparison-table thead th { background:#481c4b; color:#fff; font-weight:800; }
.comparison-table thead th:first-child { border-top-left-radius:18px; }
.comparison-table thead th:last-child { border-top-right-radius:18px; }
.comparison-table tbody th { color:#49384e; font-weight:800; }
.comparison-table tbody td { color:#655b6d; }
.comparison-table tbody tr:last-child th,.comparison-table tbody tr:last-child td { border-bottom:0; }
.journey-section { background:linear-gradient(120deg,#32113e,#611455); color:#fff; }
.journey-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1fr); gap:70px; align-items:start; }
.journey-layout .section-kicker { color:#ffb6dc; }
.journey-layout h2,.faq-layout h2 { font:800 clamp(30px,3vw,42px)/1.16 Manrope,sans-serif; letter-spacing:-.035em; margin:12px 0 16px; }
.journey-layout>div:first-child p { color:#ead8e9; line-height:1.65; }
.journey-list { display:grid; gap:12px; }
.journey-list>div { display:grid; grid-template-columns:52px 1fr; gap:14px; padding:22px; background:#ffffff12; border:1px solid #ffffff25; border-radius:15px; }
.journey-list span { color:#ffadd9; font-size:22px; font-weight:800; }
.journey-list h3 { margin:0 0 7px; font-size:17px; }
.journey-list p { margin:0; color:#ead8e9; line-height:1.55; font-size:14px; }
.faq-section { background:#fff; }
.faq-layout { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1fr); gap:65px; align-items:start; }
.faq-layout>div:first-child p { line-height:1.65; color:#6e6476; margin-bottom:22px; }
.faq-items { display:grid; gap:10px; }
.faq-items details { border:1px solid #eadce8; border-radius:12px; background:#fff; }
.faq-items summary { cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 21px; color:#33233d; font-weight:800; list-style:none; }
.faq-items summary::-webkit-details-marker { display:none; }
.faq-items details[open] summary .material-symbols-rounded { transform:rotate(180deg); }
.faq-items details p { color:#65596b; line-height:1.65; margin:0; padding:0 21px 19px; font-size:14px; }
.visual-story-section { overflow:hidden; background:#fff; }
.visual-story-reverse { background:#fcf7fb; }
.visual-story { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(36px,6vw,86px); align-items:center; }
.visual-story-reverse .visual-story-art { order:2; }
.visual-story-art { position:relative; min-width:0; display:grid; place-items:center; min-height:330px; background:radial-gradient(ellipse at center,#f5ddf1 0%,#faf1f9 45%,transparent 73%); }
.visual-story-art img { display:block; width:112%; max-width:670px; height:auto; object-fit:contain; filter:drop-shadow(0 21px 23px #4c1b4233); }
.visual-story-copy h2 { margin:13px 0 18px; font:800 clamp(30px,3vw,43px)/1.15 Manrope,sans-serif; letter-spacing:-.035em; }
.visual-story-copy p { margin:0; color:#64586d; font-size:16px; line-height:1.75; }
.visual-story-copy ul { display:grid; gap:13px; list-style:none; padding:0; margin:24px 0 27px; }
.visual-story-copy li { display:flex; align-items:flex-start; gap:10px; color:#46394c; font-size:14px; line-height:1.5; }
.visual-story-copy li .material-symbols-rounded { flex:none; color:#b6137b; font-size:20px; }
.app-shell .rasppy-logo,.login-card .rasppy-logo { background:transparent; }
.app-shell .brand,.login-card .brand { display:inline-block; width:178px; height:auto; padding:0; overflow:visible; border-radius:0; background:none; box-shadow:none; font-size:0; line-height:0; }
@media(max-width:1100px) { .desktop-nav { gap:3px 8px; } .desktop-nav a { font-size:11px; } .header-grid { grid-template-columns:178px minmax(0,1fr) auto; gap:10px; } }
@media(max-width:850px) { .desktop-nav { display:none; } .mobile-menu { display:block; } .header-grid { grid-template-columns:1fr auto; } .hero-layout { grid-template-columns:1fr 1fr; } .hero-image { width:125%; margin-left:-12%; } .hero-message h1 { font-size:clamp(38px,6vw,55px); } .footer-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:650px) { .site-wrap { width:min(100% - 32px,1180px); } .header-login { display:none; } .header-grid { min-height:75px; } .hero-layout { min-height:0; grid-template-columns:1fr; padding:55px 0 110px; } .hero-message h1 { font-size:42px; } .hero-message p { font-size:15px; } .hero-image { width:105%; margin:15px 0 -28px -2%; } .hero-wave { height:62px; } .site-section { padding:62px 0; } .section-intro,.split-feature,.domain-layout,.cart-layout,.callout-grid,.journey-layout,.faq-layout { grid-template-columns:1fr; gap:21px; } .idea-grid,.plans-grid,.benefit-grid,.process-grid,.story-grid { grid-template-columns:1fr; } .benefit-grid>div { border-right:0; padding-bottom:12px; border-bottom:1px solid #eee0eb; } .callout-actions { justify-items:start; } .footer-bottom { flex-direction:column; gap:5px; } .domain-form>div { flex-direction:column; } .detail-hero { padding:64px 0; } }
@media(max-width:650px) { .visual-story { grid-template-columns:1fr; gap:18px; } .visual-story-art { min-height:210px; } .visual-story-art img { width:100%; max-width:450px; } .visual-story-reverse .visual-story-art { order:0; } .visual-story-copy h2 { font-size:32px; } }
