* {margin:0;padding:0;box-sizing:border-box;font-family:'Arial',sans-serif}

body {min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;background-color:#FFFFFF}

.container {flex-grow:1;display:flex;flex-direction:column;background:linear-gradient(to bottom,#A1C4FD 0%,#FFA07A 100%);background-size:contain;background-position:center;border-radius:16px;border:1px solid rgba(255,255,255,0.3);margin:20px;box-shadow:0 4px 6px rgba(0,0,0,0.1);overflow:hidden;min-height:400px;max-height:none;position:relative}

.background-image {position:absolute;top:0;left:0;width:100%;height:100%;background:url('dog.png') no-repeat;background-size:contain;background-position:right top;opacity:0.1;z-index:0}

@media screen and (min-height:600px) {.container,.background-image{background-size:contain}.container{background-position:center}.background-image{background-position:right top}}

@media screen and (min-height:1000px) {.container,.background-image{background-size:contain}.container{background-position:center}.background-image{background-position:right top}}

.hero {flex-grow:1;display:flex;flex-direction:column;justify-content:space-between;padding:40px;position:relative;z-index:1}

.hero h1 {font-size:24px;color:#FFFFFF;font-weight:bold;font-family:'Playfair Display',serif;margin:0}

.hero p {font-size:56px;color:#FFFFFF;max-width:600px;font-family:'Playfair Display',serif;margin:0;align-self:flex-start;padding:0;background:none;border:none;border-radius:0}

@media screen and (max-width:768px) {.hero h1{font-size:18px}.hero p{font-size:36px}.hero{padding:20px}.background-image{background-size:contain;background-position:right top}}

@media screen and (max-width:480px) {.hero h1{font-size:16px}.hero p{font-size:24px}.hero{padding:10px}.background-image{background-size:contain;background-position:right top}}

footer {padding:20px;color:#B0B0B0;font-family:'Playfair Display',serif;text-align:center;background-color:transparent}

footer p:first-child {margin-bottom:10px}