body {
	background:#f8f8f8;
	background:url("/rsrc/img/bkg_tile_s.png");
	background-repeat: repeat; 
	font-family: "Inter",sans-serif,Segoe UI,Arial,Roboto,Helvetica Neue,Fira Sans,Ubuntu,Oxygen,Oxygen Sans,Cantarell,Droid Sans,Apple Color Emoji,Segoe UI Emoji,Segoe UI Emoji,Segoe UI Symbol,Lucida Grande;
	padding: 0px;
	margin:0px;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	background:
	}
a {
	color:#00f0ff;
	}
.img_profile {
	width: 48px;
	height: 48px;
	border-radius: 50%;
}
.head_parent {
	width:calc(100%);
	background:#fff;
	/* padding: 10px 10px; */
	line-height:16px;
	border-bottom:1px solid #aaaaaa;
	-webkit-box-shadow: 0px 4px 2px -2px rgba(0,0,0,0.2);
	-moz-box-shadow: 0px 4px 2px -2px rgba(0,0,0,0.2);
	box-shadow: 0 4px 2px -2px rgba(0, 0, 0, 0.2); 
	margin-right:-40px;
}
.head_photo {
	display: inline-block;
	vertical-align: middle;
	margin:10px;
}
.head_text {
	width:calc(55%);
	display: inline-block;
	vertical-align: middle;
	overflow:hidden; 
	white-space:nowrap; 
	text-overflow: ellipsis;
	margin:10px 0px 10px 0px;
}
.head_connect {
	display: inline-block;
	vertical-align: middle;
	float:right;
	margin-top:15px;
}
.head_name {
	font-size: 1em;
	font-weight:600;
	color:#000000;
}
.head_title {
	color:#888888;
	font-size: 0.7em;
}
.head_button {
	border:1px solid #0068c2;
	padding:4px 10px 5px 10px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	color:#0068c2;
	font-size:0.9em;
	font-weight:600;
	margin-top:10px;
	margin-right:20px;
	cursor:pointer;
}
.head_button:hover {
	border:1px solid #004282;
	background-color:#e5f4fd;
	color:#004282;
}
.landing {
	width:70%;
	background:url("/rsrc/img/landing_graphic.png");
	background-position: center right;
	background-position-y: center;
	background-repeat: no-repeat; 
	margin:30px auto 0px auto;
}
.intro {
	width:40%;
	padding:24px 18px 24px 24px;
	background: rgba(255, 255, 255, 1);
	border:1px solid #eee;
	-webkit-box-shadow: 3px 3px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 3px 3px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 3px 3px 5px 0px rgba(0,0,0,0.25);
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.greet {
	font-size:2.2em; 
	font-weight:bold;
	text-align:center;
	margin:0;
}
.greet_subtitle {
	text-align:center;
	font-size:1.2em;
	line-height:1.5em;
	margin-bottom:20px;
}
.greet_text {
	font-size:1em;
	line-height:1.6em;
}
.gptOpts {
	padding: 10px 10px;
	margin:auto;
	display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.gptGen {
	border:3px solid #0068c2;
	padding:15px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	width:calc(20%);
	display: inline-block;
	vertical-align: middle;
	margin-right:10px;
}
.gptAdv {
	border:3px solid #02c277;
	padding:15px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	width:calc(25%);
	display: inline-block;
	vertical-align: middle;
}
.titleGen {
	font-size:1.2em;
	color:#0068c2;
	font-weight:bold;
	margin:-8px 0px 5px 0px;
}
.titleAdv {
	font-size:1.4em;
	color:#02c277;
	font-weight:bold;
	margin:-8px 0px 5px 0px;
}
.normal {
	line-height:1.2em;
	font-size:1em;
	margin:0;
	text-align:left;
}
.smaller {
	display: block;
	font-size:0.8em;
	line-height:1em;
	margin:0;
	text-align:left;
}
.btnGen {
	background-color:#0068c2;
	padding:6px 0px 7px 0px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	color:#FFFFFF;
	font-size:0.9em;
	font-weight:600;
	margin:16px 0px -16px 0px;
}
.btnGen:hover, .btnGen:active {
  background-color: #004282;
  color: white;
}
.btnAdv {
	display:block;
	max-width:calc(50%);
	background-color:#0068c2;
	padding:5px 0px 4px 0px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	color:#FFFFFF;
	font-size:0.9em;
	font-weight:600;
	text-align:center;
	margin:auto;
	cursor:pointer;
	text-decoration: none;
}
.btnAdv:hover {
  background-color: #004382;
  color: white;
}
.codeText {
	display:inline-block;
	vertical-align: top;
	width:calc(40%);
}
.codeInput {
	display:inline-block;
	padding:10px;
	vertical-align: top;
	width:calc(45%);
	
}
.code_text {
	font-size:0.8em;
	line-height:1.4em;
}
.codeTextInput {
	padding:5px;
	border:1px solid #ccc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size:1.2em;
}
.codeTextInput::placeholder {
  font-size:1em;
  opacity: 0.5;
  color: #aaa;
}
.arrow {
	display:block;
	margin:auto;
	width: 0;
	height: 0;
	border-left: 16px solid transparent;
	border-right: 16px solid transparent;
	border-top: 20px solid #ccc; /* Creates the downward triangle */
	animation: moveBlink 2s infinite ease-in-out;
}
.lets-talk-btn {
    position: relative;
    display:block;
	max-width:calc(70%);
	margin:auto;
    align-items: center;
    justify-content: center;
    width: calc(70%);
    height: 40px;
    background-color: #007bff;
    color: white;
    font-size: 16px;
    font-weight: bold;
    border: none;
    border-radius: 20px;
    cursor: pointer;
    overflow: hidden;
    transition: width 0.3s ease, height 0.3s ease, background 0.3s ease;
	padding-top: 4px;
}

.lets-talk-btn:hover {
    background-color: #0056b3;
}

.lets-talk-btn.shrink {
    width: 50px;
    height: 40px;
}

.lets-talk-text {
    display: inline-block;
    transition: opacity 0.2s ease;
}
.let_talk_icon {
	width: 22px;
	height: 22px;
	vertical-align:middle;
	margin-left:5px;
}
.loading-dots {
    display: none;
    align-items: center;
    gap: 5px;
}

.loading-dots span {
    width: 8px;
    height: 8px;
    background-color: white;
    border-radius: 50%;
    display: inline-block;
    animation: bounce 1.4s infinite ease-in-out both;
}

.loading-dots span:nth-child(1) {
    animation-delay: -0.32s;
}
.loading-dots span:nth-child(2) {
    animation-delay: -0.16s;
}
.loading-dots span:nth-child(3) {
    animation-delay: 0s;
}

@keyframes bounce {
    0%, 80%, 100% {
        transform: scale(0);
        opacity: 0.3;
    }
    40% {
        transform: scale(1);
        opacity: 1;
    }
}
@keyframes moveBlink {
	0%, 100% {
		opacity: 1;
		transform: translateY(0);
	}
	50% {
		opacity: 0.3;
		transform: translateY(10px);
	}
}
@media screen and (max-device-width: 480px){
  body{
    -webkit-text-size-adjust: 100%;
  }
.head_title {
	color:#888888;
	font-size: 0.7em;
	overflow:hidden; 
	white-space:nowrap; 
	text-overflow: ellipsis;
}
.landing {
	width:100%;
	background-image:none;
	margin:auto;
	margin-top:20px; 
}
.intro {
	width:80%;
	margin: auto;
	padding-top:calc(10%);
}
.gptGen {
	width:calc(80%);
}
.gptAdv {
	width:calc(80%);
}
.normal {
	line-height:16px;
}
.lets-talk-btn  {
	width:calc(90%);
	max-width:calc(90%);
	font-size:1.2em;
}

}